From 205735c23db87d78d17d5c9a05007347f73a1202 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Thu, 18 Jun 2020 15:36:34 -0400 Subject: [PATCH 01/85] Progress from our work session defining the diff interface --- .../components/diff/v2/CaptureManagerPage.js | 16 ++++- .../ui/src/components/loaders/ApiLoader.js | 9 ++- workspaces/ui/src/contexts/CaptureContext.js | 53 +++++++++++++++ .../ui/src/contexts/DiffServiceContext.js | 11 ++++ .../ui/src/contexts/SpecServiceContext.js | 22 ++++++- .../ui/src/entrypoints/testing-sessions.js | 19 +++++- .../src/services/diff/ExampleDiffService.ts | 66 +++++++++++++++++++ workspaces/ui/src/services/diff/index.ts | 34 ++++++++++ 8 files changed, 223 insertions(+), 7 deletions(-) create mode 100644 workspaces/ui/src/contexts/CaptureContext.js create mode 100644 workspaces/ui/src/contexts/DiffServiceContext.js create mode 100644 workspaces/ui/src/services/diff/ExampleDiffService.ts create mode 100644 workspaces/ui/src/services/diff/index.ts diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index 5eedb3b335..8f2502728b 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -23,7 +23,10 @@ import { TrafficSessionStore, } from '../../../contexts/TrafficSessionContext'; import { GenericContextFactory } from '../../../contexts/GenericContextFactory'; -import { useSpecService } from '../../../contexts/SpecServiceContext'; +import { + useServices, + useSpecService, +} from '../../../contexts/SpecServiceContext'; import { useRouterPaths } from '../../../RouterPaths'; import { RfcContext } from '../../../contexts/RfcContext'; import { JsonHelper, lengthScala, mapScala } from '@useoptic/domain'; @@ -45,6 +48,7 @@ import { } from '../../../theme'; import { AddOpticLink } from '../../support/Links'; import { debugDump } from '../../../utilities/debug-dump'; +import { CaptureContext } from '../../../contexts/CaptureContext'; const useStyles = makeStyles((theme) => ({ container: { @@ -294,6 +298,16 @@ Not setup yet? Follow the [Getting Started Tutorial](${AddOpticLink}) /> ); +function CaptureDiffWrapper2(props) { + const { captureId } = props.match.params; + + return ( + +
asdf
+
+ ); +} + function CaptureDiffWrapper(props) { const { captureId } = props.match.params; const baseUrl = useBaseUrl(); diff --git a/workspaces/ui/src/components/loaders/ApiLoader.js b/workspaces/ui/src/components/loaders/ApiLoader.js index 24a4d65d0f..49869b0aa2 100644 --- a/workspaces/ui/src/components/loaders/ApiLoader.js +++ b/workspaces/ui/src/components/loaders/ApiLoader.js @@ -7,6 +7,7 @@ import { InitialRfcCommandsStore } from '../../contexts/InitialRfcCommandsContex import EventEmitter from 'events'; export function ApiSpecServiceLoader(props) { + const { diffServiceFactory, captureServiceFactory } = props; const debugData = useMockData(); const [service, setService] = useState(null); @@ -46,6 +47,8 @@ export function ApiSpecServiceLoader(props) { { @@ -89,6 +93,8 @@ export function LocalCliSpecServiceLoader(props) { { + const captureService = captureServiceFactory(specService, captureId); + async function task() { + //@TODO: handle error + //@TODO:getConfig for ignoreRequests config + debugger; + const config = await captureService.startDiff(); + const diffServiceForCapture = diffServiceFactory(specService, config); + setDiffService(diffServiceForCapture); + } + + task(); + }); + + if (!diffService) { + return
loading...
; + } + + const value = { + diffService, + restart, + }; + + return ( + + {props.children} + + ); +} diff --git a/workspaces/ui/src/contexts/DiffServiceContext.js b/workspaces/ui/src/contexts/DiffServiceContext.js new file mode 100644 index 0000000000..068814a263 --- /dev/null +++ b/workspaces/ui/src/contexts/DiffServiceContext.js @@ -0,0 +1,11 @@ +import * as React from 'react'; +import { useContext } from 'react'; + +export const DiffServiceContext = React.createContext(); + +export function useDiffServiceContext() { + const { diffServiceFactory } = useContext(DiffServiceContext); + return { + diffServiceFactory, + }; +} diff --git a/workspaces/ui/src/contexts/SpecServiceContext.js b/workspaces/ui/src/contexts/SpecServiceContext.js index b0802899a7..485096d8fa 100644 --- a/workspaces/ui/src/contexts/SpecServiceContext.js +++ b/workspaces/ui/src/contexts/SpecServiceContext.js @@ -30,11 +30,20 @@ class SpecServiceStore extends React.Component { } render() { - const { specService } = this.props; + const { + specService, + captureServiceFactory, + diffServiceFactory, + } = this.props; const { enabledFeatures } = this.state; - + const value = { + specService, + captureServiceFactory, + diffServiceFactory, + enabledFeatures, + }; return ( - + {this.props.children} ); @@ -46,6 +55,12 @@ function useSpecService() { return specService; } +function useServices() { + const { specService, diffServiceFactory, captureServiceFactory } = useContext( + SpecServiceContext + ); +} + function useEnabledFeatures() { const specContext = useContext(SpecServiceContext); @@ -62,5 +77,6 @@ export { SpecServiceContext, SpecServiceStore, useSpecService, + useServices, useEnabledFeatures, }; diff --git a/workspaces/ui/src/entrypoints/testing-sessions.js b/workspaces/ui/src/entrypoints/testing-sessions.js index 3bd2b014a4..2606ec187a 100644 --- a/workspaces/ui/src/entrypoints/testing-sessions.js +++ b/workspaces/ui/src/entrypoints/testing-sessions.js @@ -7,6 +7,10 @@ import { } from '../contexts/MockDataContext'; import { ApiRoutes } from '../routes'; import { Provider as BaseUrlContext } from '../contexts/BaseUrlContext'; +import { + ExampleCaptureService, + ExampleDiffService, +} from '../services/diff/ExampleDiffService'; export default function TestingSessions(props) { const match = useRouteMatch(); @@ -17,10 +21,23 @@ export default function TestingSessions(props) { exampleSessionCollection: 'example-sessions', }); + const captureServiceFactory = (specService, captureId) => { + debugger; + return new ExampleCaptureService(specService, captureId); + }; + + const diffServiceFactory = (specService, config) => { + debugger; + return new ExampleDiffService(specService, config); + }; + return ( - + diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts new file mode 100644 index 0000000000..4b92e6fe8e --- /dev/null +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -0,0 +1,66 @@ +import { + ICaptureService, + IDiffService, + IListDiffsResponse, + IListUnrecognizedUrlsResponse, + ILoadInteractionResponse, + IRfcCommand, + IStartDiffResponse, +} from './index'; +import { IHttpInteraction } from '@useoptic/domain-types'; +import { ISpecService } from '@useoptic/cli-client/build/spec-service-client'; +import { captureId } from '../../components/loaders/ApiLoader'; +import { + cachingResolversAndRfcStateFromEvents, + normalizedDiffFromRfcStateAndInteractions, +} from '@useoptic/domain-utilities'; +export class ExampleCaptureService implements ICaptureService { + async startDiff( + ignoreRequests: string[], + additionalCommands: IRfcCommand[] + ): Promise { + return { + loadDiffUrl: '', + loadUnrecognizedUrlsUrl: '', + notificationUrl: '', + }; + } +} + +export class ExampleDiffService implements IDiffService { + constructor(private specService: ISpecService) {} + + async listDiffs(): Promise { + const interactions = await this.specService.listCapturedSamples(captureId); + const events = await this.specService.listEvents(); + const { resolvers, rfcState } = cachingResolversAndRfcStateFromEvents( + JSON.parse(events) + ); + const diffs = normalizedDiffFromRfcStateAndInteractions( + resolvers, + rfcState, + interactions + ); + return { + diffs, + }; + } + + async listUnrecognizedUrls(): Promise { + return Promise.resolve({ + urls: [], + }); + } + + async loadInteraction( + interactionPointer: string + ): Promise { + const interactions = await this.specService.listCapturedSamples(captureId); + const interaction = interactions.find( + (x: IHttpInteraction) => x.uuid === interactionPointer + ); + return { + interaction, + }; + } +} diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts new file mode 100644 index 0000000000..9188e8860b --- /dev/null +++ b/workspaces/ui/src/services/diff/index.ts @@ -0,0 +1,34 @@ +import { IHttpInteraction } from '@useoptic/domain-types'; + +export interface ICaptureService { + startDiff( + ignoreRequests: string[], + additionalCommands: IRfcCommand[] + ): Promise; +} + +export interface IDiffService { + // backend + loadInteraction( + interactionPointer: string + ): Promise; + listDiffs(): Promise; + listUnrecognizedUrls(): Promise; +} + +export interface IRfcCommand {} +export interface IStartDiffResponse { + notificationUrl: string; + loadDiffUrl: string; + loadUnrecognizedUrlsUrl: string; +} +export interface ILoadInteractionResponse { + interaction: IHttpInteraction; +} +export interface IListDiffsResponse { + diffs: any[]; +} + +export interface IListUnrecognizedUrlsResponse { + urls: any[]; +} From b56c95110afdbab1ca158961c632b0bc1b4dcda4 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Fri, 19 Jun 2020 15:37:27 -0400 Subject: [PATCH 02/85] capture manager page now works off of the new interface --- .../com/useoptic/ux/DiffResultHelper.scala | 75 ++++ workspaces/domain/src/index.ts | 1 + .../components/diff/v2/CaptureManagerPage.js | 345 ++++++++---------- workspaces/ui/src/contexts/CaptureContext.js | 32 +- .../ui/src/contexts/SpecServiceContext.js | 6 + .../ui/src/entrypoints/testing-sessions.js | 2 - .../src/services/diff/ExampleDiffService.ts | 60 ++- workspaces/ui/src/services/diff/index.ts | 9 + 8 files changed, 317 insertions(+), 213 deletions(-) create mode 100644 core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala new file mode 100644 index 0000000000..fea3e12319 --- /dev/null +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -0,0 +1,75 @@ +package com.useoptic.ux + +import com.useoptic.contexts.requests.Commands.PathComponentId +import com.useoptic.contexts.rfc.RfcState +import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff +import com.useoptic.diff.interactions.{InteractionDiffResult, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers, Resolvers, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, SpecRoot, UnmatchedRequestBodyContentType, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseStatusCode} +import com.useoptic.logging.Logger +import com.useoptic.types.capture.HttpInteraction + +import scala.scalajs.js.annotation.{JSExport, JSExportAll} + +@JSExportAll +case class NewEndpoint(path: String, method: String, pathId: Option[PathComponentId], count: Int) +@JSExportAll +case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Vector[InteractionDiffResult], interactionPointers: Seq[String]) { + def count = diffs.size +} + +@JSExport +@JSExportAll +object DiffResultHelper { + def diffCount(diffs: InteractionsGroupedByDiff): Int = diffs.keys.size + def unmatchedUrls(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { + diffs.collect { + case (newUrl: UnmatchedRequestUrl, interactions) => NewEndpoint(interactions.head.request.path, interactions.head.request.method, None, interactions.size) + case (newMethod: UnmatchedRequestMethod, interactions) => { + val location = getLocationForDiff(newMethod, interactions, rfcState) + NewEndpoint(interactions.head.request.path, interactions.head.request.method, Some(location.get._1), interactions.size) + } + } + }.toVector.sortBy(i => (i.method + i.path)) + + def endpointDiffs(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { + diffs.filterNot { + case (a: UnmatchedRequestUrl, _) => true + case (a: UnmatchedRequestMethod, _) => true + case _ => false + }.flatMap { + case (diff, interactions) => getLocationForDiff(diff, interactions, rfcState).map(location => { + EndpointDiffs(location._2, location._1, diffs.keys.toVector, interactions.map(_.uuid)) + }) + }.groupBy(i => (i.pathId, i.method)).map { + case ((path, method), diffs) => EndpointDiffs(method, path, diffs.flatMap(_.diffs).toVector, diffs.flatMap(_.interactionPointers).toVector.distinct) + } + }.toVector.sortBy(_.diffs.size).reverse + + + def getLocationForDiff(diff: InteractionDiffResult, interactions: Seq[HttpInteraction], rfcState: RfcState): Option[(PathComponentId, String, InteractionDiffResult)] = (diff, interactions) match { + case (_: UnmatchedRequestUrl, interactions) => None + case (d: InteractionDiffResult, interactions) => { + d.requestsTrail match { + case SpecRoot() => None + case SpecPath(pathId) => Some(pathId, interactions.head.request.method, d) + case SpecRequestRoot(requestId) => { + val request = rfcState.requestsState.requests(requestId).requestDescriptor + Some(request.pathComponentId, request.httpMethod, d) + } + case SpecRequestBody(requestId) => { + val request = rfcState.requestsState.requests(requestId).requestDescriptor + Some(request.pathComponentId, request.httpMethod, d) + } + case SpecResponseRoot(responseId) => { + val response = rfcState.requestsState.responses(responseId).responseDescriptor + Some(response.pathId, response.httpMethod, d) + } + case SpecResponseBody(responseId) => { + val response = rfcState.requestsState.responses(responseId).responseDescriptor + Some(response.pathId, response.httpMethod, d) + } + } + } + case _ => None + } + +} diff --git a/workspaces/domain/src/index.ts b/workspaces/domain/src/index.ts index 7893a7dd2d..8d26619ccb 100644 --- a/workspaces/domain/src/index.ts +++ b/workspaces/domain/src/index.ts @@ -97,3 +97,4 @@ export const StableHashableWrapper = export const DiffManagerFacade = opticEngine.com.useoptic.DiffManagerFacade(); export const DiffPreviewer = opticEngine.com.useoptic.ux.DiffPreviewer; export const DiffHelpers = opticEngine.com.useoptic.diff.helpers.DiffHelpers(); +export const DiffResultHelper = opticEngine.com.useoptic.ux.DiffResultHelper(); diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index 8f2502728b..ceab20fb64 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -48,7 +48,11 @@ import { } from '../../../theme'; import { AddOpticLink } from '../../support/Links'; import { debugDump } from '../../../utilities/debug-dump'; -import { CaptureContext } from '../../../contexts/CaptureContext'; +import { + CaptureContext, + CaptureStateStore, + useCaptureContext, +} from '../../../contexts/CaptureContext'; const useStyles = makeStyles((theme) => ({ container: { @@ -298,206 +302,175 @@ Not setup yet? Follow the [Getting Started Tutorial](${AddOpticLink}) /> ); -function CaptureDiffWrapper2(props) { +function CaptureDiffWrapper(props) { const { captureId } = props.match.params; + const classes = useStyles(); return ( - -
asdf
-
+ + + + + + ); } -function CaptureDiffWrapper(props) { - const { captureId } = props.match.params; - const baseUrl = useBaseUrl(); +function CaptureDiffStates() { const classes = useStyles(); - const specService = useSpecService(); + const { stats } = useCaptureContext(); + //also available + // stats.captureCompleted + // stats.processed + return ( +
+ + Optic observed{' '} + , + yielding in and{' '} + + . + +
+ ); +} + +function EndpointDiffs(props) { + const { captureId } = props; + const classes = useStyles(); + const { endpointDiffs } = useCaptureContext(); const history = useHistory(); - const [alphabetize, setAlphabetize] = useState(true); - const { ignoredDiffs } = useContext(IgnoreDiffContext); - const { rfcService, rfcId, queries } = useContext(RfcContext); - const rfcState = rfcService.currentState(rfcId); - const shapesResolvers = queries.shapesResolvers(); - const { captures } = useContext(AllCapturesContext); - if (captures.length === 0) { - return empty; - } + const baseUrl = useBaseUrl(); + //also available + // stats.captureCompleted + // stats.processed return ( - <> - - No Capture} - > - - {({ diffManager }) => { - diffManager.updatedRfcState(rfcState, shapesResolvers); - diffManager.clearEndpointFilter(); - - const ignoredAsSeq = JsonHelper.jsArrayToSeq(ignoredDiffs); - const stats = diffManager.stats(ignoredAsSeq); - const allUnmatchedPaths = JsonHelper.seqToJsArray( - diffManager.allUnmatchedPaths - ); - const newUrls = diffManager.unmatchedUrls( - alphabetize, - ignoredAsSeq - ); - const endpointDiffs = diffManager.endpointDiffs( - ignoredAsSeq, - /* filter ouunmatched URLs */ true + + + + {endpointDiffs.map((i) => { + const to = `${baseUrl}/diffs/${captureId}/paths/${i.pathId}/methods/${i.method}`; + return ( + + + {({ endpointDescriptor }) => ( + +
+ + {endpointDescriptor.purpose} + + +
+ + 0}> + + + 0}> + + + 0}> + + + +
+ )} +
+
); + })} +
+
+
+ ); +} + +function UnrecognizedUrls(props) { + const { captureId } = props; + const classes = useStyles(); + const history = useHistory(); + const { unrecognizedUrls } = useCaptureContext(); + const baseUrl = useBaseUrl(); + + const allUnmatchedPaths = unrecognizedUrls.map((i) => i.url); + return ( + 0}> + + + {unrecognizedUrls.map((i) => { return ( - <> -
- - Optic observed{' '} - - , yielding in{' '} - and{' '} - { + const { pathId, method } = result; + const to = `${baseUrl}/diffs/${captureId}/paths/${pathId}/methods/${method}`; + history.push(to); + }} + > + +
+ +
+ + - . -
-
- 0}> - - - {mapScala(endpointDiffs)((i) => { - const to = `${baseUrl}/diffs/${captureId}/paths/${i.pathId}/methods/${i.method}`; - return ( - - - {({ endpointDescriptor }) => ( - -
- - {endpointDescriptor.purpose} - - -
- - 0}> - - - 0}> - - - 0}> - - - -
- )} -
-
- ); - })} -
-
-
- - 0}> - - - {mapScala(newUrls)((i) => { - return ( - { - const { pathId, method } = result; - const to = `${baseUrl}/diffs/${captureId}/paths/${pathId}/methods/${method}`; - history.push(to); - }} - > - -
- -
- - - -
-
- ); - })} -
-
-
- - + + + ); - }} -
-
- + })} + + + ); } diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index b968eb8ff0..51a493129f 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -5,36 +5,47 @@ import { useServices } from './SpecServiceContext'; export const CaptureContext = React.createContext(null); export function useCaptureContext() { - const { diffServiceFactory } = useContext(CaptureContext); - return { - diffServiceFactory, - }; + return useContext(CaptureContext); } export function CaptureStateStore(props) { const { captureId } = props; const [diffService, setDiffService] = useState(null); + + // diff state + const [endpointDiffs, setEndpointDiffs] = useState([]); + const [unrecognizedUrls, setUnrecognizedUrls] = useState([]); + const [stats, setStats] = useState({}); + const { specService, captureServiceFactory, diffServiceFactory, } = useServices(); - function restart() { - debugger; + + async function restart() { + if (diffService) { + diffService.loadStats().then(setStats); + diffService.listDiffs().then(setEndpointDiffs); + diffService.listUnrecognizedUrls().then(setUnrecognizedUrls); + } } useEffect(() => { const captureService = captureServiceFactory(specService, captureId); async function task() { //@TODO: handle error //@TODO:getConfig for ignoreRequests config - debugger; const config = await captureService.startDiff(); const diffServiceForCapture = diffServiceFactory(specService, config); setDiffService(diffServiceForCapture); } - task(); - }); + }, [captureId]); + + useEffect(() => { + restart(); + return () => {}; + }, [diffService]); if (!diffService) { return
loading...
; @@ -43,6 +54,9 @@ export function CaptureStateStore(props) { const value = { diffService, restart, + endpointDiffs, + unrecognizedUrls, + stats, }; return ( diff --git a/workspaces/ui/src/contexts/SpecServiceContext.js b/workspaces/ui/src/contexts/SpecServiceContext.js index 485096d8fa..bb683154ae 100644 --- a/workspaces/ui/src/contexts/SpecServiceContext.js +++ b/workspaces/ui/src/contexts/SpecServiceContext.js @@ -59,6 +59,12 @@ function useServices() { const { specService, diffServiceFactory, captureServiceFactory } = useContext( SpecServiceContext ); + + return { + specService, + diffServiceFactory, + captureServiceFactory, + }; } function useEnabledFeatures() { diff --git a/workspaces/ui/src/entrypoints/testing-sessions.js b/workspaces/ui/src/entrypoints/testing-sessions.js index 2606ec187a..7bd775c38d 100644 --- a/workspaces/ui/src/entrypoints/testing-sessions.js +++ b/workspaces/ui/src/entrypoints/testing-sessions.js @@ -22,12 +22,10 @@ export default function TestingSessions(props) { }); const captureServiceFactory = (specService, captureId) => { - debugger; return new ExampleCaptureService(specService, captureId); }; const diffServiceFactory = (specService, config) => { - debugger; return new ExampleDiffService(specService, config); }; diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index 4b92e6fe8e..1635963848 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -4,6 +4,7 @@ import { IListDiffsResponse, IListUnrecognizedUrlsResponse, ILoadInteractionResponse, + ILoadStatsResponse, IRfcCommand, IStartDiffResponse, } from './index'; @@ -14,6 +15,7 @@ import { cachingResolversAndRfcStateFromEvents, normalizedDiffFromRfcStateAndInteractions, } from '@useoptic/domain-utilities'; +import { DiffResultHelper, ScalaJSHelpers } from '@useoptic/domain/build'; export class ExampleCaptureService implements ICaptureService { async startDiff( ignoreRequests: string[], @@ -28,28 +30,45 @@ export class ExampleCaptureService implements ICaptureService { } export class ExampleDiffService implements IDiffService { - constructor(private specService: ISpecService) {} + private readonly diffsPromise: Promise; + + constructor(private specService: ISpecService) { + async function computeInitialDiff() { + const capture = await specService.listCapturedSamples(captureId); + const events = await specService.listEvents(); + const { resolvers, rfcState } = cachingResolversAndRfcStateFromEvents( + JSON.parse(events) + ); + const diffs = normalizedDiffFromRfcStateAndInteractions( + resolvers, + rfcState, + capture.samples + ); + return { + diffs, + rfcState, + resolvers, + }; + } + this.diffsPromise = computeInitialDiff(); + } async listDiffs(): Promise { - const interactions = await this.specService.listCapturedSamples(captureId); - const events = await this.specService.listEvents(); - const { resolvers, rfcState } = cachingResolversAndRfcStateFromEvents( - JSON.parse(events) - ); - const diffs = normalizedDiffFromRfcStateAndInteractions( - resolvers, - rfcState, - interactions + const { diffs, rfcState } = await this.diffsPromise; + const endpointDiffs = ScalaJSHelpers.toJsArray( + DiffResultHelper.endpointDiffs(diffs, rfcState) ); - return { - diffs, - }; + return endpointDiffs; } async listUnrecognizedUrls(): Promise { - return Promise.resolve({ - urls: [], - }); + const { diffs, rfcState } = await this.diffsPromise; + + const urls = ScalaJSHelpers.toJsArray( + DiffResultHelper.unmatchedUrls(diffs, rfcState) + ); + + return Promise.resolve(urls); } async loadInteraction( @@ -63,4 +82,13 @@ export class ExampleDiffService implements IDiffService { interaction, }; } + + async loadStats(): Promise { + const capture = await this.specService.listCapturedSamples(captureId); + return Promise.resolve({ + totalInteractions: capture.samples.length, + processed: capture.samples.length, + captureCompleted: true, + }); + } } diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 9188e8860b..6a9c338580 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -14,9 +14,17 @@ export interface IDiffService { ): Promise; listDiffs(): Promise; listUnrecognizedUrls(): Promise; + loadStats(): Promise; } export interface IRfcCommand {} + +export interface ILoadStatsResponse { + totalInteractions: number; + processed: number; + captureCompleted: boolean; +} + export interface IStartDiffResponse { notificationUrl: string; loadDiffUrl: string; @@ -27,6 +35,7 @@ export interface ILoadInteractionResponse { } export interface IListDiffsResponse { diffs: any[]; + rfcState: any; } export interface IListUnrecognizedUrlsResponse { From 0bb2fccbf72cd495a3429bf8eed798455a3373f5 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Mon, 22 Jun 2020 12:51:06 -0400 Subject: [PATCH 03/85] End-end with a few small issues with diff sorting --- .../main/scala/com/useoptic/JsonHelper.scala | 1 + .../scala/com/useoptic/ScalaJSHelpers.scala | 7 + .../useoptic/contexts/rfc/RfcService.scala | 2 +- .../com/useoptic/ux/DiffResultHelper.scala | 212 +++++++- ...teractionsGroupedByDiffSerialization.scala | 23 + workspaces/domain-utilities/src/index.ts | 44 +- .../ui/public/example-sessions/todos.json | 480 ++++++++++++++++++ .../ui/src/components/diff/v2/DiffContext.js | 50 +- .../src/components/diff/v2/DiffHelperCard.js | 13 +- .../ui/src/components/diff/v2/DiffHooks.js | 91 ++++ .../ui/src/components/diff/v2/DiffPageNew.js | 292 ++++++----- .../ui/src/components/diff/v2/DiffPreview.js | 118 +++-- .../components/diff/v2/DiffReviewExpanded.js | 82 ++- workspaces/ui/src/contexts/CaptureContext.js | 28 +- .../ui/src/entrypoints/testing-sessions.js | 4 +- .../src/services/diff/ExampleDiffService.ts | 102 +++- workspaces/ui/src/services/diff/index.ts | 16 + 17 files changed, 1296 insertions(+), 269 deletions(-) create mode 100644 core/optic/shared/src/main/scala/com/useoptic/ux/InteractionsGroupedByDiffSerialization.scala create mode 100644 workspaces/ui/public/example-sessions/todos.json create mode 100644 workspaces/ui/src/components/diff/v2/DiffHooks.js diff --git a/core/optic/js/src/main/scala/com/useoptic/JsonHelper.scala b/core/optic/js/src/main/scala/com/useoptic/JsonHelper.scala index ef3422de04..7c0ff831aa 100644 --- a/core/optic/js/src/main/scala/com/useoptic/JsonHelper.scala +++ b/core/optic/js/src/main/scala/com/useoptic/JsonHelper.scala @@ -53,6 +53,7 @@ object JsonHelper { def jsArrayToSeq(x: js.Array[Any]): Seq[Any] = { x.toSeq } + def jsArrayToVector(x: js.Array[Any]): Vector[Any] = { x.toVector } diff --git a/core/optic/js/src/main/scala/com/useoptic/ScalaJSHelpers.scala b/core/optic/js/src/main/scala/com/useoptic/ScalaJSHelpers.scala index 5a4aabd7d0..c923971f8d 100644 --- a/core/optic/js/src/main/scala/com/useoptic/ScalaJSHelpers.scala +++ b/core/optic/js/src/main/scala/com/useoptic/ScalaJSHelpers.scala @@ -1,6 +1,9 @@ package com.useoptic +import com.useoptic.contexts.rfc.Events.RfcEvent +import com.useoptic.ddd.{AggregateId, EventStore} +import com.useoptic.serialization.EventSerialization import io.circe.Json import scala.scalajs.js @@ -49,4 +52,8 @@ object ScalaJSHelpers { def getJson(j: Json): js.Any = convertJsonToJs(j) + def eventsJsArray(events: Vector[RfcEvent]): js.Any = { + convertJsonToJs(EventSerialization.toJson(events)) + } + } diff --git a/core/optic/shared/src/main/scala/com/useoptic/contexts/rfc/RfcService.scala b/core/optic/shared/src/main/scala/com/useoptic/contexts/rfc/RfcService.scala index de98d19fc3..6c1cdf4b1f 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/contexts/rfc/RfcService.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/contexts/rfc/RfcService.scala @@ -4,7 +4,7 @@ import com.useoptic.contexts.rfc.Commands.RfcCommand import com.useoptic.contexts.rfc.Events.RfcEvent import com.useoptic.ddd._ import com.useoptic.logging.Logger -import com.useoptic.serialization.CommandSerialization +import com.useoptic.serialization.{CommandSerialization, EventSerialization} import scala.scalajs.js.annotation.{JSExport, JSExportAll} import scala.util.Try diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index fea3e12319..11a86ab57a 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -2,74 +2,238 @@ package com.useoptic.ux import com.useoptic.contexts.requests.Commands.PathComponentId import com.useoptic.contexts.rfc.RfcState +import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff -import com.useoptic.diff.interactions.{InteractionDiffResult, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers, Resolvers, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, SpecRoot, UnmatchedRequestBodyContentType, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseStatusCode} -import com.useoptic.logging.Logger -import com.useoptic.types.capture.HttpInteraction +import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescription, DiffDescriptionInterpreters} +import com.useoptic.diff.interactions.{BodyUtilities, InteractionDiffResult, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers, Resolvers, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, SpecRoot, UnmatchedRequestBodyContentType, UnmatchedRequestBodyShape, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseBodyShape, UnmatchedResponseStatusCode} +import com.useoptic.diff.shapes.ShapeDiffResult +import com.useoptic.diff.shapes.resolvers.ShapesResolvers +import com.useoptic.types.capture.{Body, HttpInteraction} import scala.scalajs.js.annotation.{JSExport, JSExportAll} -@JSExportAll -case class NewEndpoint(path: String, method: String, pathId: Option[PathComponentId], count: Int) -@JSExportAll -case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Vector[InteractionDiffResult], interactionPointers: Seq[String]) { - def count = diffs.size -} - @JSExport @JSExportAll object DiffResultHelper { - def diffCount(diffs: InteractionsGroupedByDiff): Int = diffs.keys.size + def unmatchedUrls(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { diffs.collect { case (newUrl: UnmatchedRequestUrl, interactions) => NewEndpoint(interactions.head.request.path, interactions.head.request.method, None, interactions.size) case (newMethod: UnmatchedRequestMethod, interactions) => { - val location = getLocationForDiff(newMethod, interactions, rfcState) - NewEndpoint(interactions.head.request.path, interactions.head.request.method, Some(location.get._1), interactions.size) + val location = getLocationForDiff(newMethod, rfcState) + NewEndpoint(interactions.head.request.path, interactions.head.request.method, Some(location.get.pathId), interactions.size) } } }.toVector.sortBy(i => (i.method + i.path)) + def diffsForPathAndMethod(allEndpointDiffs: Seq[EndpointDiffs], pathId: PathComponentId, method: String, ignoredDiffs: Seq[DiffResult]): Map[InteractionDiffResult, Seq[String]] = { + allEndpointDiffs.find(i => i.method == method && i.pathId == pathId) + .map(i => i.diffs) + .getOrElse(Map.empty) + } + def endpointDiffs(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { diffs.filterNot { case (a: UnmatchedRequestUrl, _) => true case (a: UnmatchedRequestMethod, _) => true case _ => false }.flatMap { - case (diff, interactions) => getLocationForDiff(diff, interactions, rfcState).map(location => { - EndpointDiffs(location._2, location._1, diffs.keys.toVector, interactions.map(_.uuid)) + case (diff, interactions) => getLocationForDiff(diff, rfcState).map(location => { + EndpointDiffs(location.pathId, location.method, Map(diff -> interactions.map(i => i.uuid))) }) }.groupBy(i => (i.pathId, i.method)).map { - case ((path, method), diffs) => EndpointDiffs(method, path, diffs.flatMap(_.diffs).toVector, diffs.flatMap(_.interactionPointers).toVector.distinct) + case ((path, method), diffs) => { + val diffsForTHisOne = diffs.flatMap(_.diffs).toMap + println(s"NEW ENDPOINT DIFF for ${method} ${path} ${diffsForTHisOne.size}") + EndpointDiffs(method, path, diffsForTHisOne) + } } }.toVector.sortBy(_.diffs.size).reverse + def diffCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.size + + def newRegionDiffs(diffs: Map[InteractionDiffResult, Seq[String]]): Seq[NewRegionDiff] = { + val newRegions = diffs.filterKeys { + case _: UnmatchedRequestBodyContentType => true + case _: UnmatchedResponseBodyContentType => true + case _: UnmatchedResponseStatusCode => true + case _ => false + } + + newRegions.map{ case (_diff, _interactionPointers) => { + val _inRequest = _diff match { + case _:UnmatchedRequestBodyContentType => true + case _:UnmatchedResponseBodyContentType => false + case _:UnmatchedResponseStatusCode => false + } + new NewRegionDiff { + override val diff = _diff + override val interactionPointers: Seq[String] = _interactionPointers + override val inRequest: Boolean = _inRequest + override val inResponse: Boolean = !_inRequest + override val contentType: Option[String] = _diff match { + case d: UnmatchedRequestBodyContentType => d.interactionTrail.responseBodyContentTypeOption() + case d: UnmatchedResponseBodyContentType => d.interactionTrail.responseBodyContentTypeOption() + case d: UnmatchedResponseStatusCode => d.interactionTrail.responseBodyContentTypeOption() + case _ => None + } + override val statusCode: Option[Int] = _diff match { + case d: UnmatchedResponseStatusCode => Some(d.interactionTrail.statusCode()) + case _ => None + } + } + }}.toVector + } + + def bodyDiffs(diffs: Map[InteractionDiffResult, Seq[String]]): Seq[BodyDiff] = { + val bodyRegions = diffs.filterKeys { + case _: UnmatchedRequestBodyShape => true + case _: UnmatchedResponseBodyShape => true + case _ => false + } + + bodyRegions.map { case (_diff, _interactionPointers) => { + val _inRequest = _diff match {case _: UnmatchedRequestBodyShape => true; case _ => false} + val _inResponse = _diff match {case _: UnmatchedResponseBodyShape => true; case _ => false} + + val _location = if (_inRequest) Seq("Request Body", _diff.interactionTrail.requestContentType()) else + Seq(s"${_diff.interactionTrail.statusCode()} Response", "Body", _diff.interactionTrail.responseBodyContentTypeOption().getOrElse("")) + + new BodyDiff { + override val diff = _diff + override val location = _location + override val interactionPointers = _interactionPointers + override val inRequest: Boolean = _inRequest + override val inResponse: Boolean = _inResponse + } + }}.toVector + } - def getLocationForDiff(diff: InteractionDiffResult, interactions: Seq[HttpInteraction], rfcState: RfcState): Option[(PathComponentId, String, InteractionDiffResult)] = (diff, interactions) match { - case (_: UnmatchedRequestUrl, interactions) => None - case (d: InteractionDiffResult, interactions) => { + + case class DiffLocation(pathId: PathComponentId, method: String) + def getLocationForDiff(diff: InteractionDiffResult, rfcState: RfcState): Option[DiffLocation] = (diff) match { + case (_: UnmatchedRequestUrl) => None + case (d: InteractionDiffResult) => { d.requestsTrail match { case SpecRoot() => None - case SpecPath(pathId) => Some(pathId, interactions.head.request.method, d) + case SpecPath(pathId) => d.interactionTrail.httpMethod().flatMap(method => Some(DiffLocation(pathId, method))) case SpecRequestRoot(requestId) => { val request = rfcState.requestsState.requests(requestId).requestDescriptor - Some(request.pathComponentId, request.httpMethod, d) + Some(DiffLocation(request.pathComponentId, request.httpMethod)) } case SpecRequestBody(requestId) => { val request = rfcState.requestsState.requests(requestId).requestDescriptor - Some(request.pathComponentId, request.httpMethod, d) + Some(DiffLocation(request.pathComponentId, request.httpMethod)) } case SpecResponseRoot(responseId) => { val response = rfcState.requestsState.responses(responseId).responseDescriptor - Some(response.pathId, response.httpMethod, d) + Some(DiffLocation(response.pathId, response.httpMethod)) } case SpecResponseBody(responseId) => { val response = rfcState.requestsState.responses(responseId).responseDescriptor - Some(response.pathId, response.httpMethod, d) + Some(DiffLocation(response.pathId, response.httpMethod)) } } } case _ => None } + def descriptionFromDiff(diff: InteractionDiffResult, rfcState: RfcState, anInteraction: HttpInteraction): DiffDescription = { + val descriptionInterpreters = new DiffDescriptionInterpreters(rfcState) + descriptionInterpreters.interpret(diff, anInteraction) + } + + def previewDiff(bodyDiff: BodyDiff, anInteraction: HttpInteraction, currentRfcState: RfcState): Option[SideBySideRenderHelper] = { + val simulatedDiffPreviewer = new DiffPreviewer(currentRfcState) + val diff = bodyDiff.diff.asInstanceOf[InteractionDiffResult] + //@todo review this interface + def previewForBodyAndDiff(body: Body) = { + simulatedDiffPreviewer.previewDiff( + BodyUtilities.parseBody(body), + Some(diff.shapeDiffResultOption.get.shapeTrail.rootShapeId), + Set(diff.shapeDiffResultOption).flatten, + Set.empty) + } + + previewForBodyAndDiff(if (bodyDiff.inRequest) anInteraction.request.body else anInteraction.response.body) + } + + def previewBody(body: Body, currentRfcState: RfcState): Option[SideBySideRenderHelper] = { + val simulatedDiffPreviewer = new DiffPreviewer(currentRfcState) + simulatedDiffPreviewer.previewBody(body) + } + + def suggestionsForDiff(bodyDiff: BodyDiff, anInteraction: HttpInteraction, currentRfcState: RfcState): Seq[InteractiveDiffInterpretation] = { + val resolvers = ShapesResolvers.newResolver(currentRfcState) + val basicInterpreter = new DefaultInterpreters(resolvers, currentRfcState) + basicInterpreter.interpret(bodyDiff.diff, Vector(anInteraction)) + } + + +} + + +// Helper Classes +@JSExportAll +case class NewEndpoint(path: String, method: String, pathId: Option[PathComponentId], count: Int) +@JSExportAll +case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[InteractionDiffResult, Seq[String]]) { + def count = diffs.keys.size +} + + +@JSExportAll +abstract class NewRegionDiff { + val diff: DiffResult + val interactionPointers: Seq[String] + val inRequest: Boolean + val inResponse: Boolean + val contentType: Option[String] + val statusCode: Option[Int] + + def firstInteractionPointer: String = interactionPointers.head + def interactionsCount: Int = interactionPointers.size + + def previewBodyRender(currentInteraction: HttpInteraction): Option[SideBySideRenderHelper] = { + val body = if (inRequest) { + currentInteraction.request.body + } else { + currentInteraction.response.body + } + new DiffPreviewer(null, null).previewBody(body) + } + + def previewShapeRender(rfcState: RfcState, interactions: Vector[HttpInteraction], inferPolymorphism: Boolean): Option[ShapeOnlyRenderHelper] = { + val diffPreviewer = new DiffPreviewer(ShapesResolvers.newResolver(rfcState), rfcState) + + def getBody(i: HttpInteraction) = { + if (inRequest) { + i.request.body + } else { + i.response.body + } + } + + val firstInteraction = interactions.head + + if (inferPolymorphism) { + val bodies = interactions.map(getBody).flatMap(BodyUtilities.parseBody) + val preview = diffPreviewer.shapeOnlyFromShapeBuilder(bodies) + preview.map(_._2) + } else { + diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten).map(_._2) + } + } +} + +@JSExportAll +abstract class BodyDiff { + val diff: InteractionDiffResult + val location: Seq[String] + val interactionPointers: Seq[String] + val inRequest: Boolean + val inResponse: Boolean + + def firstInteractionPointer: String = interactionPointers.head + def interactionsCount: Int = interactionPointers.size } diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/InteractionsGroupedByDiffSerialization.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/InteractionsGroupedByDiffSerialization.scala new file mode 100644 index 0000000000..3a42717725 --- /dev/null +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/InteractionsGroupedByDiffSerialization.scala @@ -0,0 +1,23 @@ +package com.useoptic.ux + +import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff +import com.useoptic.diff.interactions.InteractionDiffResult +import com.useoptic.types.capture.HttpInteraction +import io.circe.Json +import io.circe._ +import io.circe.generic.auto._ +import io.circe.syntax._ + +import scala.scalajs.js.annotation.{JSExport, JSExportAll} + +@JSExport +@JSExportAll +object InteractionsGroupedByDiffSerialization { + case class InteractionsGroupedByDiffJson(diff: InteractionDiffResult, interactionPointers: Seq[String]) + def toJson(interactionsGroupedByDiff: InteractionsGroupedByDiff, toPointer: HttpInteraction => String): Json = { + val allDiffs = interactionsGroupedByDiff.map { + case (diff, interactions) => InteractionsGroupedByDiffJson(diff, interactions.map(toPointer)).asJson + } + Json.fromValues(allDiffs) + } +} diff --git a/workspaces/domain-utilities/src/index.ts b/workspaces/domain-utilities/src/index.ts index 24dbd25e2e..d317f5497a 100644 --- a/workspaces/domain-utilities/src/index.ts +++ b/workspaces/domain-utilities/src/index.ts @@ -21,12 +21,54 @@ export function universeFromEvents(events: any[]) { }; } -export function cachingResolversAndRfcStateFromEvents(events: any[]) { +export function universeFromEventsAndAdditionalCommands( + events: any[], + commandsContext: any, + commands: any[] +) { + const { contexts } = opticEngine.com.useoptic; + const { RfcServiceJSFacade } = contexts.rfc; + const rfcServiceFacade = RfcServiceJSFacade(); + const eventStore = rfcServiceFacade.makeEventStore(); + const rfcId = 'testRfcId'; + const eventsAsJson = opticEngine.EventSerialization.fromJs(events); + //process the initial events + eventStore.append(rfcId, eventsAsJson); + const rfcService = rfcServiceFacade.makeRfcService(eventStore); + //tack on the additional commands + rfcService.handleCommands(rfcId, commandsContext, ...commands); + const rfcState = rfcService.currentState(rfcId); + return { + rfcState, + eventStore, + rfcId, + rfcService, + }; +} + +export function cachingResolversAndRfcStateFromEvents( + events: any[], + extraCommands: any[] +) { const { rfcState } = universeFromEvents(events); const resolvers = opticEngine.ShapesResolvers.newCachingResolver(rfcState); return { resolvers, rfcState }; } +export function cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + events: any[], + commandsContext: any, + additionalCommands: any[] +) { + const { rfcState } = universeFromEventsAndAdditionalCommands( + events, + commandsContext, + additionalCommands + ); + const resolvers = opticEngine.ShapesResolvers.newCachingResolver(rfcState); + return { resolvers, rfcState }; +} + export function rfcStateFromEvents(events: any[]) { const { rfcState } = universeFromEvents(events); return rfcState; diff --git a/workspaces/ui/public/example-sessions/todos.json b/workspaces/ui/public/example-sessions/todos.json new file mode 100644 index 0000000000..a31c1358de --- /dev/null +++ b/workspaces/ui/public/example-sessions/todos.json @@ -0,0 +1,480 @@ +{ + "events": [ + { + "PathComponentAdded": { + "pathId": "path_ynIxTwZeam", + "parentPathId": "root", + "name": "todos", + "eventContext": { + "clientId": "anonymous", + "clientSessionId": "2dac8498-2e2c-47df-b46e-9e3c6532f833", + "clientCommandBatchId": "849615a9-7cf7-44dd-b2a6-037f035e09bc", + "createdAt": "2020-06-21T14:16:36.014Z" + } + } + }, + { + "ContributionAdded": { + "id": "path_ynIxTwZeam.POST", + "key": "purpose", + "value": "Create Todo", + "eventContext": { + "clientId": "anonymous", + "clientSessionId": "2dac8498-2e2c-47df-b46e-9e3c6532f833", + "clientCommandBatchId": "849615a9-7cf7-44dd-b2a6-037f035e09bc", + "createdAt": "2020-06-21T14:16:36.018Z" + } + } + }, + { + "ContributionAdded": { + "id": "path_ynIxTwZeam.GET", + "key": "purpose", + "value": "Get Todos", + "eventContext": { + "clientId": "anonymous", + "clientSessionId": "2dac8498-2e2c-47df-b46e-9e3c6532f833", + "clientCommandBatchId": "6e380af4-fc6e-4158-a620-85b425cf4e54", + "createdAt": "2020-06-21T14:16:43.707Z" + } + } + }, + { + "PathParameterAdded": { + "pathId": "path_YbfNjsHZzT", + "parentPathId": "path_ynIxTwZeam", + "name": "id", + "eventContext": null + } + }, + { + "ShapeAdded": { + "shapeId": "shape_gVIdoRBD7X", + "baseShapeId": "$string", + "parameters": { + "DynamicParameterList": { + "shapeParameterIds": [] + } + }, + "name": "", + "eventContext": null + } + }, + { + "PathParameterShapeSet": { + "pathId": "path_YbfNjsHZzT", + "shapeDescriptor": { + "shapeId": "shape_gVIdoRBD7X", + "isRemoved": false + }, + "eventContext": null + } + }, + { + "ContributionAdded": { + "id": "path_YbfNjsHZzT.PATCH", + "key": "purpose", + "value": "Update todo by Id", + "eventContext": { + "clientId": "anonymous", + "clientSessionId": "2dac8498-2e2c-47df-b46e-9e3c6532f833", + "clientCommandBatchId": "d41c5140-18fd-4452-868f-0b671fd07044", + "createdAt": "2020-06-21T14:16:55.311Z" + } + } + } + ], + "session": { + "samples": [ + { + "uuid": "8eff95b1-4f6d-4d3c-ba71-5e3792780ce4", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 502, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "fa0def96-abf8-41a7-ba1f-7fd09c509090", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 502, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "1c0b722f-107c-4082-abe7-f3cdd1d92475", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAEaNQgAEgoKBHRhc2sSAggCEg0KB2R1ZURhdGUSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAhomCAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAIaJggAEgoKBHRhc2sSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggC", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "2488a433-85f6-4b1f-bd80-23c2c46a5c87", + "request": { + "host": "localhost", + "method": "PATCH", + "path": "/todos/5exvbk000", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBA==", + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAI=", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "1c47baf2-0b1d-43a1-a5c5-64f9249801a5", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAEaNQgAEgoKBHRhc2sSAggCEg0KB2R1ZURhdGUSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAhomCAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAIaJggAEgoKBHRhc2sSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggC", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "a5eaf726-5548-4e37-8bc8-d5fb2accb2e9", + "request": { + "host": "localhost", + "method": "POST", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBA==", + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAI=", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "e930e3f5-a006-46d8-85ae-447ce3150906", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAEaNQgAEgoKBHRhc2sSAggCEg0KB2R1ZURhdGUSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAhomCAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAIaJggAEgoKBHRhc2sSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAg==", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "75f97fe4-4b0c-47e3-834f-ba991dd525a7", + "request": { + "host": "localhost", + "method": "PATCH", + "path": "/todos/5exvbk000", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBA==", + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAI=", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "a3af782f-8e44-4e17-806d-025c8fb0a4fd", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAEaNQgAEgoKBHRhc2sSAggCEg0KB2R1ZURhdGUSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAhomCAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAIaJggAEgoKBHRhc2sSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAg==", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + } + ], + "metadata": {} + }, + "examples": {} +} diff --git a/workspaces/ui/src/components/diff/v2/DiffContext.js b/workspaces/ui/src/components/diff/v2/DiffContext.js index 1a37dac861..161a1c0ad1 100644 --- a/workspaces/ui/src/components/diff/v2/DiffContext.js +++ b/workspaces/ui/src/components/diff/v2/DiffContext.js @@ -1,47 +1,53 @@ import React from 'react'; -import {GenericContextFactory} from '../../../contexts/GenericContextFactory'; -import {withRequestTabsContext} from '../../docs/ContentTabs'; +import { GenericContextFactory } from '../../../contexts/GenericContextFactory'; +import { withRequestTabsContext } from '../../docs/ContentTabs'; const { Context: DiffContext, - withContext: withDiffContext + withContext: withDiffContext, } = GenericContextFactory(); - class _DiffContextStore extends React.Component { - state = { selectedDiff: null, selectedInterpretation: null, - isFinishing: false + isFinishing: false, }; + componentDidUpdate(prevProps, prevState, snapshot) { + if (prevProps.diffId !== this.props.diffId) { + this.setState({ + selectedDiff: null, + selectedInterpretation: null, + }); + } + } render() { const { - endpointDiffManger, setSuggestionToPreview, acceptSuggestion, acceptedSuggestions, - setTabTo + setTabTo, + diffsForThisEndpoint, } = this.props; const setSelectedDiff = (diff) => { - this.setState({selectedDiff: diff || null, selectedInterpretation: null}) + this.setState({ + selectedDiff: diff || null, + selectedInterpretation: null, + }); }; + const setSelectedInterpretation = (interpretation) => { setSuggestionToPreview(interpretation); - this.setState({selectedInterpretation: interpretation}); + this.setState({ selectedInterpretation: interpretation }); }; // const setIsFinishing = (bool) => this.setState({isFinishing: bool}); const context = { - endpointDiffManger, - // regions, - // getDiffDescription, - // getInteractionsForDiff, - //selected diff + diffsForThisEndpoint, selectedDiff: this.state.selectedDiff, setSelectedDiff, isFinishing: this.state.isFinishing, @@ -53,7 +59,7 @@ class _DiffContextStore extends React.Component { exampleInteractions: [], selectedInterpretation: null, selectedInterpretationIndex: null, - isFinishing: false + isFinishing: false, }); }, reset: () => { @@ -63,14 +69,14 @@ class _DiffContextStore extends React.Component { exampleInteractions: [], selectedInterpretation: null, selectedInterpretationIndex: null, - isFinishing: false + isFinishing: false, }); }, selectedInterpretation: this.state.selectedInterpretation, setSelectedInterpretation, acceptSuggestion, - acceptedSuggestions + acceptedSuggestions, }; return ( @@ -81,10 +87,6 @@ class _DiffContextStore extends React.Component { } } -const DiffContextStore = withRequestTabsContext(_DiffContextStore) +const DiffContextStore = withRequestTabsContext(_DiffContextStore); -export { - DiffContext, - withDiffContext, - DiffContextStore -}; +export { DiffContext, withDiffContext, DiffContextStore }; diff --git a/workspaces/ui/src/components/diff/v2/DiffHelperCard.js b/workspaces/ui/src/components/diff/v2/DiffHelperCard.js index 9c7afb35e1..008986e263 100644 --- a/workspaces/ui/src/components/diff/v2/DiffHelperCard.js +++ b/workspaces/ui/src/components/diff/v2/DiffHelperCard.js @@ -11,6 +11,8 @@ import Button from '@material-ui/core/Button'; import { DiffContext } from './DiffContext'; import { CompareEquality, mapScala } from '@useoptic/domain'; import { IgnoreDiffContext } from './DiffPageNew'; +import { useDiffDescription, useSuggestionsForDiff } from './DiffHooks'; +import { diff } from 'react-ace'; const useStyles = makeStyles((theme) => ({ root: { @@ -51,7 +53,7 @@ const useStyles = makeStyles((theme) => ({ export const DiffHelperCard = (props) => { const classes = useStyles(); - const { inRequest, inResponse } = props; + const { inRequest, inResponse, description, currentInteraction } = props; const { selectedInterpretation, setSelectedDiff, @@ -60,6 +62,9 @@ export const DiffHelperCard = (props) => { acceptSuggestion, clearPreview, } = useContext(DiffContext); + + const suggestions = useSuggestionsForDiff(selectedDiff, currentInteraction); + const showIt = (selectedDiff && selectedDiff.inRequest && inRequest) || (selectedDiff.inResponse && inResponse); @@ -68,14 +73,12 @@ export const DiffHelperCard = (props) => { return null; } - const suggestions = selectedDiff.suggestions; - return (
- {selectedDiff.description.summary} + {description.summary}
@@ -85,7 +88,7 @@ export const DiffHelperCard = (props) => { - {mapScala(suggestions)((suggestion, n) => { + {suggestions.map((suggestion, n) => { return ( { + const getDescription = async () => { + setDescription((await diffService.loadDescription(diff)) || null); + }; + getDescription(); + }, [diff.toString()]); + + return description; +} + +export function useInteractionWithPointer(pointer) { + const { diffService } = useCaptureContext(); + const [interaction, setInteraction] = useState(null); + const [interactionScala, setInteractionScala] = useState(null); + + useEffect(() => { + const getInteraction = async () => { + if (pointer) { + const interaction = + (await diffService.loadInteraction(pointer)).interaction || null; + setInteraction(interaction); + setInteractionScala(JsonHelper.fromInteraction(interaction)); + } else { + setInteraction(null); + setInteractionScala(null); + } + }; + getInteraction(); + }, [pointer]); + + if (interaction && interactionScala) { + return { interaction, interactionScala }; + } +} + +export function useSuggestionsForDiff(diff, currentInteraction) { + const { diffService } = useCaptureContext(); + const [suggestions, setSuggestions] = useState([]); + + useEffect(() => { + const getSuggestions = async () => { + if (diff) { + setSuggestions( + await diffService.listSuggestions(diff, currentInteraction) + ); + } else { + setSuggestions([]); + } + }; + getSuggestions(); + }, [diff.toString()]); + + return suggestions; +} + +export function useInitialBodyPreview( + diff, + currentInteraction, + inferPolymorphism = false +) { + const { diffService } = useCaptureContext(); + + const [preview, setPreview] = useState(null); + + useEffect(() => { + const getInitialPreview = async () => { + if (diff && currentInteraction) { + setPreview( + await diffService.loadInitialPreview( + diff, + currentInteraction, + inferPolymorphism + ) + ); + } else { + setPreview(null); + } + }; + getInitialPreview(); + }, [diff.toString(), currentInteraction]); + + return preview; +} diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 9b4501ae98..0afd4fa81a 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -14,7 +14,12 @@ import { import { DiffContextStore, withDiffContext } from './DiffContext'; import { withRfcContext } from '../../../contexts/RfcContext'; import LinearProgress from '@material-ui/core/LinearProgress'; -import { Facade, opticEngine, RfcCommandContext } from '@useoptic/domain'; +import { + DiffResultHelper, + Facade, + opticEngine, + RfcCommandContext, +} from '@useoptic/domain'; import SimulatedCommandContext from '../SimulatedCommandContext'; import { primary } from '../../../theme'; import uuidv4 from 'uuid/v4'; @@ -28,6 +33,10 @@ import { PathAndMethod } from './PathAndMethod'; import { useBaseUrl } from '../../../contexts/BaseUrlContext'; import { usePageTitle } from '../../Page'; import { track } from '../../../Analytics'; +import { + CaptureStateStore, + useCaptureContext, +} from '../../../contexts/CaptureContext'; const { diff, JsonHelper } = opticEngine.com.useoptic; const { helpers } = diff; @@ -77,21 +86,23 @@ function DiffPageNew(props) { const baseUrl = useBaseUrl(); const { pathId, method, captureId } = props.match.params; return ( - - + } > - - - + } + > + + + + ); } @@ -118,13 +129,13 @@ function _DiffPageContent(props) { const { history, endpointDescriptor, - endpointDiffManger, classes, initialEventStore, rfcId, acceptedSuggestions, acceptSuggestion, selectedDiff, + diffsForThisEndpoint, clientId, clientSessionId, reset, @@ -183,7 +194,16 @@ function _DiffPageContent(props) { history.push(`${baseUrl}/diffs/${captureId}`); } - const diffRegions = endpointDiffManger.diffRegions; + const newRegions = jsonHelper.seqToJsArray( + DiffResultHelper.newRegionDiffs(diffsForThisEndpoint) + ); + + const bodyDiffs = jsonHelper.seqToJsArray( + DiffResultHelper.bodyDiffs(diffsForThisEndpoint) + ); + + const hasNewRegions = newRegions.length > 0; + const diffCount = DiffResultHelper.diffCount(diffsForThisEndpoint); return ( @@ -198,46 +218,48 @@ function _DiffPageContent(props) {
- + {hasNewRegions && ( + + )} - {!diffRegions.hasNewRegions && ( + {!hasNewRegions && ( <> - + {selectedDiff && } )} - {/**/} - - {/**/} - - {endpointDiffManger.diffCount !== 0 && ( - - )} - - + {/*/!**!/*/} + + {/*/!**!/*/} + + {/*{endpointDiffManger.diffCount !== 0 && (*/} + {/* */} + {/*)}*/} + + {/**/}
)} @@ -304,98 +326,96 @@ function flatten(acc, array) { return [...acc, ...array]; } -const InnerDiffWrapper = withTrafficSessionContext( - withRfcContext(function InnerDiffWrapperBase(props) { - const { - eventStore, - initialEventStore, - rfcService, - rfcId, - cachedQueryResults, - diffManager, - pathId, - method, - } = props; - const { isLoading, session } = props; - const { children } = props; - const { - setSuggestionToPreview, - setAcceptedSuggestions, - acceptedSuggestions, - suggestionToPreview, - ignoredDiffs, - resetIgnored, - resetAccepted, - } = props; - - if (isLoading) { - return ; - } - const rfcState = rfcService.currentState(rfcId); - const { shapesResolvers } = cachedQueryResults; - diffManager.updateEndpointFilter(pathId, method, true); - diffManager.updatedRfcState(rfcState, shapesResolvers); - - const ignored = jsonHelper.jsArrayToSeq(ignoredDiffs); - - const endpointDiffManger = diffManager.managerForPathAndMethod( - pathId, - method, - ignored - ); +const InnerDiffWrapper = function (props) { + const { isLoading, session } = props; + const { children } = props; + const { + endpointDiffs, + updatedAdditionalCommands, + diffId, + } = useCaptureContext(); + const { + setSuggestionToPreview, + setAcceptedSuggestions, + setSelectedDiff, + acceptedSuggestions, + suggestionToPreview, + ignoredDiffs, + resetIgnored, + resetAccepted, + pathId, + method, + } = props; + + if (isLoading) { + return ; + } - const simulatedCommands = suggestionToPreview - ? jsonHelper.seqToJsArray(suggestionToPreview.commands) - : []; - - global.opticDebug.diffContext = { - samples: session ? session.samples : [], - samplesSeq: jsonHelper.jsArrayToSeq( - (session ? session.samples : []).map((x) => - jsonHelper.fromInteraction(x) - ) - ), - // diffResults, - acceptedSuggestions, - suggestionToPreview, - // regions, - // getInteractionsForDiff, - // interpreter, - // interpretationsForDiffAndInteraction, - simulatedCommands, - eventStore, - initialEventStore, - rfcState, - opticEngine, - StableHasher, - }; - /* + const simulatedCommands = suggestionToPreview + ? jsonHelper.seqToJsArray(suggestionToPreview.commands) + : []; + + const diffsForThisEndpoint = DiffResultHelper.diffsForPathAndMethod( + jsonHelper.jsArrayToSeq(endpointDiffs), + pathId, + method, + jsonHelper.jsArrayToSeq(ignoredDiffs) + ); + + // global.opticDebug.diffContext = { + // samples: session ? session.samples : [], + // samplesSeq: jsonHelper.jsArrayToSeq( + // (session ? session.samples : []).map((x) => + // jsonHelper.fromInteraction(x) + // ) + // ), + // // diffResults, + // acceptedSuggestions, + // suggestionToPreview, + // // regions, + // // getInteractionsForDiff, + // // interpreter, + // // interpretationsForDiffAndInteraction, + // simulatedCommands, + // eventStore, + // initialEventStore, + // rfcState, + // opticEngine, + // StableHasher, + // }; + /* const converter = new opticDebug.diffContext.opticEngine.com.useoptic.CoverageReportConverter(opticDebug.diffContext.StableHasher) const report = opticDebug.diffContext.opticEngine.com.useoptic.diff.helpers.CoverageHelpers().getCoverage(opticDebug.diffContext.rfcState, opticDebug.diffContext.samples) converter.toJs(report) - */ + */ - return ( - { - resetIgnored(); - resetAccepted(); - }} - acceptSuggestion={(...suggestions) => { - if (suggestions) { - setAcceptedSuggestions([...acceptedSuggestions, ...suggestions]); - setSuggestionToPreview(null); - } - }} - acceptedSuggestions={acceptedSuggestions} - > - {children} - - ); - }) -); + return ( + { + resetIgnored(); + resetAccepted(); + }} + acceptSuggestion={(...suggestions) => { + if (suggestions) { + const updatedSuggestions = [...acceptedSuggestions, ...suggestions]; + setAcceptedSuggestions(updatedSuggestions); + setSuggestionToPreview(null); + const simulatedCommands = updatedSuggestions + .map((x) => jsonHelper.seqToJsArray(x.commands)) + .reduce(flatten, []); + updatedAdditionalCommands(simulatedCommands); + } + }} + acceptedSuggestions={acceptedSuggestions} + > + {children} + + ); + // }) +}; class _CaptureSessionInlineContext extends React.Component { render() { diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 92381dc78f..04f223e36d 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -51,6 +51,13 @@ import FormGroup from '@material-ui/core/FormGroup'; import FormControlLabel from '@material-ui/core/FormControlLabel'; import Switch from '@material-ui/core/Switch'; import { LightTooltip } from '../../tooltips/LightTooltip'; +import { useCaptureContext } from '../../../contexts/CaptureContext'; +import LinearProgress from '@material-ui/core/LinearProgress'; +import { + useDiffDescription, + useInitialBodyPreview, + useInteractionWithPointer, +} from './DiffHooks'; const useStyles = makeStyles((theme) => ({ root: { @@ -202,7 +209,7 @@ const removal = ( export function DiffCursor(props) { const classes = useStyles(); const { diffs } = props; - const diffCount = lengthScala(diffs); + const diffCount = diffs.length; const { selectedDiff, setSelectedDiff } = useContext(DiffContext); @@ -210,12 +217,14 @@ export function DiffCursor(props) { useEffect(() => { if (selectedDiff === null && diffCount > 0) { - setSelectedDiff(headOrUndefined(diffs)); + setSelectedDiff(diffs[0]); setShowAllDiffs(false); } }, [selectedDiff, diffCount]); const DiffItem = ({ diff, button }) => { + const description = useDiffDescription(diff); + return ( - - {diff.description.title} - + {description && ( + + {description.title} + {/*{diff.toString()}*/} + + )} ); @@ -248,7 +260,7 @@ export function DiffCursor(props) { Choose a diff to review - {mapScala(diffs)((diff, n) => ( + {diffs.map((diff, n) => ( ))} @@ -329,7 +341,7 @@ function _NewRegions(props) { const [showExpanded, setShowExpanded] = useState(false); const [inferPolymorphism, setInferPolymorphism] = React.useState(false); - if (lengthScala(newRegions) === 0) { + if (newRegions.length === 0) { return null; } @@ -350,23 +362,24 @@ function _NewRegions(props) { isDeselected(diffBlock) ).map((i) => i.diff); ignoreDiff(...allIgnored); - const allApproved = filterScala(newRegions)( - (diffBlock) => !isDeselected(diffBlock) - ).map((i) => { - return i.suggestion(inferPolymorphism); - }); + const allApproved = newRegions + .filter((diffBlock) => !isDeselected(diffBlock)) + .map((i) => { + return i.suggestion(inferPolymorphism); + }); acceptSuggestion(...allApproved); }; const ignoreAll = () => { - const allIgnored = mapScala(newRegions)((i) => i.diff); + const allIgnored = newRegions.map((i) => i.diff); ignoreDiff(...allIgnored); }; const PreviewNewBodyRegion = ({ diff, inferPolymorphism }) => { const isChecked = !isDeselected(diff); - const { interactions } = diff; - const length = lengthScala(interactions); + const length = diff.interactionsCount; + + console.log('new bodies? ', diff.diff.toString()); const [interactionIndex, setInteractionIndex] = React.useState(1); @@ -374,12 +387,27 @@ function _NewRegions(props) { setInteractionIndex(1); }, [diff]); - const currentInteraction = getIndex(interactions)(interactionIndex - 1); - const preview = getOrUndefined(diff.previewRender(currentInteraction)); - const shapePreview = getOrUndefined( - diff.previewShape(currentInteraction, inferPolymorphism) + const currentInteractionPointer = getIndex(diff.interactionPointers)( + interactionIndex - 1 + ); + + const currentInteraction = useInteractionWithPointer( + currentInteractionPointer + ); + + const initialBody = useInitialBodyPreview( + diff, + currentInteraction && currentInteraction.interactionScala, + inferPolymorphism ); + if (!currentInteraction || !initialBody) { + return ; + } + + const bodyPreview = getOrUndefined(initialBody.bodyPreview); + const shapePreview = getOrUndefined(initialBody.shapePreview); + return ( <> @@ -399,7 +427,7 @@ function _NewRegions(props) { getOrUndefined(diff.contentType) || 'No Body' }` } - secondary={`Observed ${diff.count} times`} + secondary={`Observed ${diff.interactionsCount} times`} primaryTypographyProps={{ style: { fontSize: 14 } }} secondaryTypographyProps={{ style: { fontSize: 12 } }} /> @@ -425,7 +453,7 @@ function _NewRegions(props) { })} >
- {preview && ( + {bodyPreview && ( @@ -439,7 +467,7 @@ function _NewRegions(props) { } > - + )} @@ -465,27 +493,31 @@ function _NewRegions(props) { ); }; - const newRequests = mapScala(newRegions)((diff) => { - if (diff.inRequest) { - return ( - - ); - } - }).filter((i) => !!i); - - const newResponses = mapScala(newRegions)((diff) => { - if (diff.inResponse) { - return ( - - ); - } - }).filter((i) => !!i); + const newRequests = newRegions + .map((diff) => { + if (diff.inRequest) { + return ( + + ); + } + }) + .filter((i) => !!i); + + const newResponses = newRegions + .map((diff) => { + if (diff.inResponse) { + return ( + + ); + } + }) + .filter((i) => !!i); const copy = newResponses.length > 0 && diff --git a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js index 5ce6347978..25e4348b04 100644 --- a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js +++ b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js @@ -4,6 +4,7 @@ import Typography from '@material-ui/core/Typography'; import Pagination from '@material-ui/lab/Pagination'; import { DiffPreviewer, + DiffResultHelper, getIndex, getOrUndefined, JsonHelper, @@ -21,6 +22,8 @@ import { DiffHelperCard } from './DiffHelperCard'; import SimulatedCommandContext from '../SimulatedCommandContext'; import { BreadcumbX } from './DiffPreview'; import { primary } from '../../../theme'; +import { useDiffDescription, useInteractionWithPointer } from './DiffHooks'; +import LinearProgress from '@material-ui/core/LinearProgress'; const useStyles = makeStyles((theme) => ({ root: { @@ -67,14 +70,15 @@ const useStyles = makeStyles((theme) => ({ export default (props) => { const classes = useStyles(); const { diff } = props; - const { description, interactions } = diff; + + const description = useDiffDescription(diff); const { selectedInterpretation } = useContext(DiffContext); const { rfcId, rfcService, cachedQueryResults, eventStore } = useContext( RfcContext ); - const length = lengthScala(interactions); + const length = diff.interactionsCount; const [interactionIndex, setInteractionIndex] = React.useState(1); @@ -85,9 +89,22 @@ export default (props) => { const currentRfcState = rfcService.currentState(rfcId); const { shapesResolvers } = cachedQueryResults; - const currentInteraction = getIndex(interactions)(interactionIndex - 1); - const { method, path } = currentInteraction.request; - const diffPreviewer = new DiffPreviewer(shapesResolvers, currentRfcState); + const currentInteractionPointer = getIndex(diff.interactionPointers)( + interactionIndex - 1 + ); + + const currentInteraction = useInteractionWithPointer( + currentInteractionPointer + ); + + if (!currentInteraction || !description) { + return ; + } + + const { interaction, interactionScala } = currentInteraction; + + const { method, path } = interactionScala.request; + return (
@@ -113,7 +130,7 @@ export default (props) => {
- + { location={[ `Request Body`, getOrUndefined( - currentInteraction.request.body.contentType + interactionScala.request.body.contentType ), ]} /> @@ -149,15 +166,17 @@ export default (props) => { rfcId ); - const preview = diff.previewRender( - currentInteraction, - toOption(currentRfcState) + const preview = DiffResultHelper.previewDiff( + diff, + interactionScala, + currentRfcState ); + return ( ); @@ -170,8 +189,9 @@ export default (props) => { @@ -180,7 +200,13 @@ export default (props) => { })()} } - right={} + right={ + + } />
@@ -188,7 +214,7 @@ export default (props) => {
- + { @@ -223,15 +249,16 @@ export default (props) => { const currentRfcState = rfcService.currentState( rfcId ); - const preview = diff.previewRender( - currentInteraction, - toOption(currentRfcState) + const preview = DiffResultHelper.previewDiff( + diff, + interactionScala, + currentRfcState ); return ( ); @@ -244,8 +271,9 @@ export default (props) => { @@ -254,7 +282,13 @@ export default (props) => { })()} } - right={} + right={ + + } />
diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 51a493129f..18448fc5af 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -1,6 +1,8 @@ import * as React from 'react'; import { useContext, useEffect, useState } from 'react'; import { useServices } from './SpecServiceContext'; +import { RfcContext } from './RfcContext'; +import { ScalaJSHelpers } from '@useoptic/domain'; export const CaptureContext = React.createContext(null); @@ -10,12 +12,17 @@ export function useCaptureContext() { export function CaptureStateStore(props) { const { captureId } = props; + const [diffService, setDiffService] = useState(null); + const [additionalCommands, setAdditionalCommands] = useState([]); + + const { eventStore, rfcId } = useContext(RfcContext); // diff state const [endpointDiffs, setEndpointDiffs] = useState([]); const [unrecognizedUrls, setUnrecognizedUrls] = useState([]); const [stats, setStats] = useState({}); + const [diffId, setDiffId] = useState(''); const { specService, @@ -28,6 +35,7 @@ export function CaptureStateStore(props) { diffService.loadStats().then(setStats); diffService.listDiffs().then(setEndpointDiffs); diffService.listUnrecognizedUrls().then(setUnrecognizedUrls); + setDiffId(diffService.diffId()); } } useEffect(() => { @@ -35,12 +43,20 @@ export function CaptureStateStore(props) { async function task() { //@TODO: handle error //@TODO:getConfig for ignoreRequests config - const config = await captureService.startDiff(); - const diffServiceForCapture = diffServiceFactory(specService, config); + const config = await captureService.startDiff( + ScalaJSHelpers.eventsJsArray(eventStore.listEvents(rfcId)), + [], + setAdditionalCommands + ); + const diffServiceForCapture = diffServiceFactory( + specService, + additionalCommands, + config + ); setDiffService(diffServiceForCapture); } task(); - }, [captureId]); + }, [captureId, additionalCommands]); useEffect(() => { restart(); @@ -51,9 +67,15 @@ export function CaptureStateStore(props) { return
loading...
; } + const updatedAdditionalCommands = (additionalCommands) => { + setAdditionalCommands(additionalCommands); + }; + const value = { diffService, restart, + updatedAdditionalCommands, + diffId, endpointDiffs, unrecognizedUrls, stats, diff --git a/workspaces/ui/src/entrypoints/testing-sessions.js b/workspaces/ui/src/entrypoints/testing-sessions.js index 7bd775c38d..aec3add97a 100644 --- a/workspaces/ui/src/entrypoints/testing-sessions.js +++ b/workspaces/ui/src/entrypoints/testing-sessions.js @@ -25,8 +25,8 @@ export default function TestingSessions(props) { return new ExampleCaptureService(specService, captureId); }; - const diffServiceFactory = (specService, config) => { - return new ExampleDiffService(specService, config); + const diffServiceFactory = (specService, additionalCommands, config) => { + return new ExampleDiffService(specService, additionalCommands, config); }; return ( diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index 1635963848..8bc26f1fca 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -1,7 +1,9 @@ import { ICaptureService, IDiffService, + IGetDescriptionResponse, IListDiffsResponse, + IListSuggestionsResponse, IListUnrecognizedUrlsResponse, ILoadInteractionResponse, ILoadStatsResponse, @@ -13,14 +15,25 @@ import { ISpecService } from '@useoptic/cli-client/build/spec-service-client'; import { captureId } from '../../components/loaders/ApiLoader'; import { cachingResolversAndRfcStateFromEvents, + cachingResolversAndRfcStateFromEventsAndAdditionalCommands, normalizedDiffFromRfcStateAndInteractions, } from '@useoptic/domain-utilities'; -import { DiffResultHelper, ScalaJSHelpers } from '@useoptic/domain/build'; +import { + DiffResultHelper, + JsonHelper, + RfcCommandContext, + ScalaJSHelpers, +} from '@useoptic/domain/build'; +import uuidv4 from 'uuid/v4'; + export class ExampleCaptureService implements ICaptureService { async startDiff( + events: any[], ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise { + debugger; + return { loadDiffUrl: '', loadUnrecognizedUrlsUrl: '', @@ -32,12 +45,27 @@ export class ExampleCaptureService implements ICaptureService { export class ExampleDiffService implements IDiffService { private readonly diffsPromise: Promise; - constructor(private specService: ISpecService) { + constructor( + private specService: ISpecService, + private additionalCommands: IRfcCommand[] + ) { async function computeInitialDiff() { const capture = await specService.listCapturedSamples(captureId); const events = await specService.listEvents(); - const { resolvers, rfcState } = cachingResolversAndRfcStateFromEvents( - JSON.parse(events) + + const commandContext = new RfcCommandContext( + 'simulated', + 'simulated', + 'simulated' + ); + + const { + resolvers, + rfcState, + } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + JSON.parse(events), + commandContext, + additionalCommands ); const diffs = normalizedDiffFromRfcStateAndInteractions( resolvers, @@ -52,6 +80,10 @@ export class ExampleDiffService implements IDiffService { } this.diffsPromise = computeInitialDiff(); } + private _diffId: string = uuidv4(); + diffId(): string { + return this._diffId; + } async listDiffs(): Promise { const { diffs, rfcState } = await this.diffsPromise; @@ -74,8 +106,8 @@ export class ExampleDiffService implements IDiffService { async loadInteraction( interactionPointer: string ): Promise { - const interactions = await this.specService.listCapturedSamples(captureId); - const interaction = interactions.find( + const capture = await this.specService.listCapturedSamples(captureId); + const interaction = capture.samples.find( (x: IHttpInteraction) => x.uuid === interactionPointer ); return { @@ -91,4 +123,62 @@ export class ExampleDiffService implements IDiffService { captureCompleted: true, }); } + + async loadDescription(diff: any): Promise { + const { rfcState } = await this.diffsPromise; + const interaction = await this.loadInteraction( + diff.firstInteractionPointer + ); + if (interaction.interaction) { + return DiffResultHelper.descriptionFromDiff( + diff.diff, + rfcState, + JsonHelper.fromInteraction(interaction.interaction) + ); + } else { + return null; + } + } + + async listSuggestions( + diff: any, + interaction: any + ): Promise { + const { rfcState } = await this.diffsPromise; + return ScalaJSHelpers.toJsArray( + DiffResultHelper.suggestionsForDiff(diff, interaction, rfcState) + ); + } + + async loadInitialPreview( + diff: any, + currentInteraction: any, + inferPolymorphism: boolean + ) { + const { rfcState } = await this.diffsPromise; + const bodyPreview = diff.previewBodyRender(currentInteraction); + + let interactions = []; + if (inferPolymorphism) { + interactions = await Promise.all( + ScalaJSHelpers.toJsArray(diff.interactionPointers).map(async (i) => { + const { interaction } = await this.loadInteraction(i); + return JsonHelper.fromInteraction(interaction); + }) + ); + } else { + interactions = [currentInteraction]; + } + + const shapePreview = diff.previewShapeRender( + rfcState, + JsonHelper.jsArrayToVector(interactions), + inferPolymorphism + ); + + return { + bodyPreview, + shapePreview, + }; + } } diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 6a9c338580..4f02e4a404 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -2,12 +2,14 @@ import { IHttpInteraction } from '@useoptic/domain-types'; export interface ICaptureService { startDiff( + events: any[], ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise; } export interface IDiffService { + diffId(): string; // backend loadInteraction( interactionPointer: string @@ -15,6 +17,17 @@ export interface IDiffService { listDiffs(): Promise; listUnrecognizedUrls(): Promise; loadStats(): Promise; + // frontend for now + loadDescription(diff: any): Promise; + listSuggestions( + diff: any, + interaction: any + ): Promise; + loadInitialPreview( + diff: any, + currentInteraction: any, + inferPolymorphism: boolean + ); } export interface IRfcCommand {} @@ -41,3 +54,6 @@ export interface IListDiffsResponse { export interface IListUnrecognizedUrlsResponse { urls: any[]; } + +export interface IGetDescriptionResponse {} +export interface IListSuggestionsResponse {} From d6d290980cabf6510895397a420b7189a3ee4337 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Mon, 22 Jun 2020 18:12:35 -0400 Subject: [PATCH 04/85] working poc --- .../com/useoptic/ux/DiffResultHelper.scala | 40 +++++++++++++++---- .../ui/src/components/diff/v2/DiffPageNew.js | 35 ++++++++-------- .../ui/src/components/diff/v2/DiffPreview.js | 39 ++++++++++++------ .../components/diff/v2/DiffReviewExpanded.js | 3 ++ workspaces/ui/src/contexts/CaptureContext.js | 2 +- .../src/services/diff/ExampleDiffService.ts | 5 +-- 6 files changed, 83 insertions(+), 41 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index 11a86ab57a..f9373c71d1 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -1,6 +1,7 @@ package com.useoptic.ux import com.useoptic.contexts.requests.Commands.PathComponentId +import com.useoptic.contexts.rfc.Commands.RfcCommand import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff @@ -39,17 +40,17 @@ object DiffResultHelper { case _ => false }.flatMap { case (diff, interactions) => getLocationForDiff(diff, rfcState).map(location => { - EndpointDiffs(location.pathId, location.method, Map(diff -> interactions.map(i => i.uuid))) + EndpointDiffs(location.method, location.pathId, Map(diff -> interactions.map(i => i.uuid))) }) }.groupBy(i => (i.pathId, i.method)).map { case ((path, method), diffs) => { val diffsForTHisOne = diffs.flatMap(_.diffs).toMap - println(s"NEW ENDPOINT DIFF for ${method} ${path} ${diffsForTHisOne.size}") EndpointDiffs(method, path, diffsForTHisOne) } } }.toVector.sortBy(_.diffs.size).reverse + def interactionsWithDiffsCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.flatMap(_._2).toSet.size def diffCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.size def newRegionDiffs(diffs: Map[InteractionDiffResult, Seq[String]]): Seq[NewRegionDiff] = { @@ -79,10 +80,11 @@ object DiffResultHelper { } override val statusCode: Option[Int] = _diff match { case d: UnmatchedResponseStatusCode => Some(d.interactionTrail.statusCode()) + case d: UnmatchedResponseBodyContentType => Some(d.interactionTrail.statusCode()) case _ => None } } - }}.toVector + }}.toVector.sortBy(_.statusCode) } def bodyDiffs(diffs: Map[InteractionDiffResult, Seq[String]]): Seq[BodyDiff] = { @@ -184,7 +186,7 @@ case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[Int @JSExportAll abstract class NewRegionDiff { - val diff: DiffResult + val diff: InteractionDiffResult val interactionPointers: Seq[String] val inRequest: Boolean val inResponse: Boolean @@ -203,7 +205,7 @@ abstract class NewRegionDiff { new DiffPreviewer(null, null).previewBody(body) } - def previewShapeRender(rfcState: RfcState, interactions: Vector[HttpInteraction], inferPolymorphism: Boolean): Option[ShapeOnlyRenderHelper] = { + def previewShapeRender(rfcState: RfcState, interactions: Vector[HttpInteraction], inferPolymorphism: Boolean): PreviewShapeAndCommands = { val diffPreviewer = new DiffPreviewer(ShapesResolvers.newResolver(rfcState), rfcState) def getBody(i: HttpInteraction) = { @@ -216,14 +218,31 @@ abstract class NewRegionDiff { val firstInteraction = interactions.head - if (inferPolymorphism) { + val result = if (inferPolymorphism) { val bodies = interactions.map(getBody).flatMap(BodyUtilities.parseBody) val preview = diffPreviewer.shapeOnlyFromShapeBuilder(bodies) - preview.map(_._2) + preview.map(i => PreviewShapeAndCommands(Some(i._2), toSuggestion(Vector(interactions.head), rfcState, inferPolymorphism).headOption)) } else { - diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten).map(_._2) + diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten) + .map(i => PreviewShapeAndCommands(Some(i._2), toSuggestion(interactions, rfcState, inferPolymorphism).headOption)) } + + result.getOrElse(PreviewShapeAndCommands(None, None)) } + + + def toSuggestion(interactions: Vector[HttpInteraction], currentRfcState: RfcState, inferPolymorphism: Boolean): Seq[InteractiveDiffInterpretation] = { + val resolvers = ShapesResolvers.newResolver(currentRfcState) + val basicInterpreter = new DefaultInterpreters(resolvers, currentRfcState) + if (inferPolymorphism) { + basicInterpreter.interpret(diff, interactions) + } else { + basicInterpreter.interpret(diff, interactions.head) + } + } + + override def toString: PathComponentId = diff.toString + interactionPointers.toString() + } @JSExportAll @@ -234,6 +253,11 @@ abstract class BodyDiff { val inRequest: Boolean val inResponse: Boolean + override def toString: PathComponentId = diff.toString + interactionPointers.toString() + def firstInteractionPointer: String = interactionPointers.head def interactionsCount: Int = interactionPointers.size } + +@JSExportAll +case class PreviewShapeAndCommands(shape: Option[ShapeOnlyRenderHelper], suggestion: Option[InteractiveDiffInterpretation]) diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 0afd4fa81a..1357c4ca8f 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -204,6 +204,9 @@ function _DiffPageContent(props) { const hasNewRegions = newRegions.length > 0; const diffCount = DiffResultHelper.diffCount(diffsForThisEndpoint); + const interactionsWithDiffsCount = DiffResultHelper.interactionsWithDiffsCount( + diffsForThisEndpoint + ); return ( @@ -243,23 +246,21 @@ function _DiffPageContent(props) { {/*/!* region={endpointDiffManger.diffRegions.responseRegions}*!/*/} {/*/!* title="Response Body Diffs"/>*!/*/} - {/*{endpointDiffManger.diffCount !== 0 && (*/} - {/* */} - {/*)}*/} - - {/**/} + {diffCount !== 0 && ( + + )} + +
)} diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 04f223e36d..b3cea6e0d4 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -220,7 +220,7 @@ export function DiffCursor(props) { setSelectedDiff(diffs[0]); setShowAllDiffs(false); } - }, [selectedDiff, diffCount]); + }, [diffs.join((i) => i.toString())]); const DiffItem = ({ diff, button }) => { const description = useDiffDescription(diff); @@ -337,6 +337,8 @@ function _NewRegions(props) { } = props; const classes = useStyles(); + const { diffService } = useCaptureContext(); + const [deselected, setDeselected] = useState([]); const [showExpanded, setShowExpanded] = useState(false); const [inferPolymorphism, setInferPolymorphism] = React.useState(false); @@ -357,16 +359,31 @@ function _NewRegions(props) { } }; - const onApply = () => { - const allIgnored = filterScala(newRegions)((diffBlock) => - isDeselected(diffBlock) - ).map((i) => i.diff); + const onApply = async () => { + const allIgnored = newRegions + .map((diffBlock) => isDeselected(diffBlock)) + .map((i) => i.diff); + ignoreDiff(...allIgnored); - const allApproved = newRegions - .filter((diffBlock) => !isDeselected(diffBlock)) - .map((i) => { - return i.suggestion(inferPolymorphism); - }); + const allApproved = await Promise.all( + newRegions + .filter((diffBlock) => !isDeselected(diffBlock)) + .map(async (i) => { + //@todo this is messy and doubles the compute + const { interaction } = await diffService.loadInteraction( + i.firstInteractionPointer + ); + + const { suggestion } = await diffService.loadInitialPreview( + i, + JsonHelper.fromInteraction(interaction), + inferPolymorphism + ); + + return getOrUndefined(suggestion); + }) + ).filter((i) => Boolean(i)); + acceptSuggestion(...allApproved); }; @@ -379,8 +396,6 @@ function _NewRegions(props) { const isChecked = !isDeselected(diff); const length = diff.interactionsCount; - console.log('new bodies? ', diff.diff.toString()); - const [interactionIndex, setInteractionIndex] = React.useState(1); useEffect(() => { diff --git a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js index 25e4348b04..6705c96bff 100644 --- a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js +++ b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js @@ -71,6 +71,9 @@ export default (props) => { const classes = useStyles(); const { diff } = props; + const ds = diff.toString(); + console.log('diff string ', ds); + const description = useDiffDescription(diff); const { selectedInterpretation } = useContext(DiffContext); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 18448fc5af..e109ab9dc3 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -46,7 +46,7 @@ export function CaptureStateStore(props) { const config = await captureService.startDiff( ScalaJSHelpers.eventsJsArray(eventStore.listEvents(rfcId)), [], - setAdditionalCommands + additionalCommands ); const diffServiceForCapture = diffServiceFactory( specService, diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index 8bc26f1fca..b71da0abb4 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -32,8 +32,6 @@ export class ExampleCaptureService implements ICaptureService { ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise { - debugger; - return { loadDiffUrl: '', loadUnrecognizedUrlsUrl: '', @@ -178,7 +176,8 @@ export class ExampleDiffService implements IDiffService { return { bodyPreview, - shapePreview, + shapePreview: shapePreview.shape, + suggestion: shapePreview.suggestion, }; } } From ac0ef9a69a5119811c6be7dbfa986e6aecbc020a Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Tue, 23 Jun 2020 09:07:40 -0400 Subject: [PATCH 05/85] temp fix for reset --- .../scala/com/useoptic/ux/DiffResultHelper.scala | 15 +++++++-------- .../ui/src/components/diff/v2/DiffPageNew.js | 1 + .../ui/src/components/diff/v2/DiffPreview.js | 2 +- .../ui/src/services/diff/ExampleDiffService.ts | 11 +++++++---- 4 files changed, 16 insertions(+), 13 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index f9373c71d1..8bcf627669 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -12,6 +12,7 @@ import com.useoptic.diff.shapes.resolvers.ShapesResolvers import com.useoptic.types.capture.{Body, HttpInteraction} import scala.scalajs.js.annotation.{JSExport, JSExportAll} +import scala.util.Try @JSExport @JSExportAll @@ -140,10 +141,10 @@ object DiffResultHelper { case _ => None } - def descriptionFromDiff(diff: InteractionDiffResult, rfcState: RfcState, anInteraction: HttpInteraction): DiffDescription = { + def descriptionFromDiff(diff: InteractionDiffResult, rfcState: RfcState, anInteraction: HttpInteraction): Option[DiffDescription] = Try { val descriptionInterpreters = new DiffDescriptionInterpreters(rfcState) descriptionInterpreters.interpret(diff, anInteraction) - } + }.toOption def previewDiff(bodyDiff: BodyDiff, anInteraction: HttpInteraction, currentRfcState: RfcState): Option[SideBySideRenderHelper] = { val simulatedDiffPreviewer = new DiffPreviewer(currentRfcState) @@ -218,16 +219,14 @@ abstract class NewRegionDiff { val firstInteraction = interactions.head - val result = if (inferPolymorphism) { + if (inferPolymorphism) { val bodies = interactions.map(getBody).flatMap(BodyUtilities.parseBody) val preview = diffPreviewer.shapeOnlyFromShapeBuilder(bodies) - preview.map(i => PreviewShapeAndCommands(Some(i._2), toSuggestion(Vector(interactions.head), rfcState, inferPolymorphism).headOption)) + PreviewShapeAndCommands(preview.map(_._2), toSuggestion(Vector(interactions.head), rfcState, inferPolymorphism).headOption) } else { - diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten) - .map(i => PreviewShapeAndCommands(Some(i._2), toSuggestion(interactions, rfcState, inferPolymorphism).headOption)) + val preview = diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten) + PreviewShapeAndCommands(preview.map(_._2), toSuggestion(interactions, rfcState, inferPolymorphism).headOption) } - - result.getOrElse(PreviewShapeAndCommands(None, None)) } diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 1357c4ca8f..38dd48dda9 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -396,6 +396,7 @@ converter.toJs(report) diffsForThisEndpoint={diffsForThisEndpoint} setSuggestionToPreview={setSuggestionToPreview} reset={() => { + updatedAdditionalCommands([]); resetIgnored(); resetAccepted(); }} diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index b3cea6e0d4..69209ba484 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -382,7 +382,7 @@ function _NewRegions(props) { return getOrUndefined(suggestion); }) - ).filter((i) => Boolean(i)); + ); acceptSuggestion(...allApproved); }; diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index b71da0abb4..aea49fb6ed 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -25,6 +25,7 @@ import { ScalaJSHelpers, } from '@useoptic/domain/build'; import uuidv4 from 'uuid/v4'; +import { getOrUndefined } from '@useoptic/domain'; export class ExampleCaptureService implements ICaptureService { async startDiff( @@ -128,10 +129,12 @@ export class ExampleDiffService implements IDiffService { diff.firstInteractionPointer ); if (interaction.interaction) { - return DiffResultHelper.descriptionFromDiff( - diff.diff, - rfcState, - JsonHelper.fromInteraction(interaction.interaction) + return getOrUndefined( + DiffResultHelper.descriptionFromDiff( + diff.diff, + rfcState, + JsonHelper.fromInteraction(interaction.interaction) + ) ); } else { return null; From 731b563422cd9ccf8ccc0970bf9068814860dfa8 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Tue, 23 Jun 2020 13:19:11 -0400 Subject: [PATCH 06/85] Test cases --- ...rovided to an optional object.managed.json | 512 ++++++++ ...d is provided the wrong shape.managed.json | 411 ++++++ ...as an array with any contents.managed.json | 512 ++++++++ ...is provided as an empty array.managed.json | 512 ++++++++ ...d in a required nested object.managed.json | 512 ++++++++ ... in an optional nested object.managed.json | 512 ++++++++ ...rovided to an optional object.managed.json | 512 ++++++++ ...y field has no items, no diff.managed.json | 487 +++++++ ...ired array field has no items.managed.json | 487 +++++++ ...ired array field is an object.managed.json | 487 +++++++ ...rings provided with an object.managed.json | 487 +++++++ ...rovided to an optional object.managed.json | 512 ++++++++ ...ield is provided as an object.managed.json | 411 ++++++ .../an extra field is provided.managed.json | 411 ++++++ ...an optional field is ommitted.managed.json | 512 ++++++++ ...onal object field is ommitted.managed.json | 512 ++++++++ ...ld is null, suggests nullable.managed.json | 487 +++++++ ...required object field is null.managed.json | 487 +++++++ ...ired object field is ommitted.managed.json | 487 +++++++ ...with a missing required field.managed.json | 487 +++++++ ...eld is provided with an array.managed.json | 487 +++++++ ...provided with concrete values.managed.json | 214 ++++ ...wn is provided with no values.managed.json | 214 ++++ ...titem is provided a sub array.managed.json | 536 ++++++++ ...s provided an empty sub array.managed.json | 536 ++++++++ ...vided an sub array of numbers.managed.json | 536 ++++++++ ...em is provided with no values.managed.json | 536 ++++++++ ...ne matching and one primitive.managed.json | 536 ++++++++ ...ed with one matching, no diff.managed.json | 536 ++++++++ ...is provided with one matching.managed.json | 536 ++++++++ ... does not match expected type.managed.json | 411 ++++++ ... does not match expected type.managed.json | 411 ++++++ ...ff expected for basic objects.managed.json | 411 ++++++ ...f expected for nested objects.managed.json | 556 ++++++++ ...rovided to an optional object.managed.json | 454 +++++++ .../a known field is missing.managed.json | 118 +- ...d is provided the wrong shape.managed.json | 153 +++ ...is provided as an empty array.managed.json | 121 ++ ...d in a required nested object.managed.json | 99 ++ ...y field has no items, no diff.managed.json | 4 + ...ired array field has no items.managed.json | 4 + .../an extra field is provided.managed.json | 77 ++ ...ld is null, suggests nullable.managed.json | 105 ++ ...required object field is null.managed.json | 105 ++ ...ired object field is ommitted.managed.json | 105 ++ ...with a missing required field.managed.json | 116 ++ ...provided with concrete values.managed.json | 79 ++ ...wn is provided with no values.managed.json | 4 + ...s provided an empty sub array.managed.json | 207 +++ ...em is provided with no values.managed.json | 4 + ...ed with one matching, no diff.managed.json | 4 + ...is provided with one matching.managed.json | 4 + ...ff expected for basic objects.managed.json | 4 + ...f expected for nested objects.managed.json | 4 + ... in an optional nested object.managed.json | 85 ++ ...ired array field is an object.managed.json | 279 ++++ ...rings provided with an object.managed.json | 284 +++++ ...ield is provided as an object.managed.json | 273 ++++ ... does not match expected type.managed.json | 174 +++ ... does not match expected type.managed.json | 174 +++ ...array is provided with object.managed.json | 228 ++++ ...omitted in an optional object.managed.json | 292 +++++ ...omitted in an optional object.managed.json | 292 +++++ ...omitted in an optional object.managed.json | 512 ++++++++ ...array is provided with object.managed.json | 214 ++++ ...omitted in an optional object.managed.json | 512 ++++++++ .../scala/com/useoptic/ux/RenderHelper.scala | 9 +- .../end_to_end/DiffUseCasesSpec.scala | 269 +++- .../snapshot_task/EndEndDiffTask.scala | 55 +- .../snapshot_task/SnapShotDriverFixture.scala | 52 +- yarn.lock | 1127 +---------------- 71 files changed, 21640 insertions(+), 1155 deletions(-) create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a different set of keys is provided to an optional object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a known field is provided the wrong shape.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided as an array with any contents.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided as an empty array.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided in a required nested object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided in an optional nested object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a primitive type is provided to an optional object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field has no items, no diff.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field has no items.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field is an object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field of strings provided with an object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an array type is provided to an optional object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an extra field is provided as an object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an extra field is provided.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an optional field is ommitted.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an optional object field is ommitted.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is null, suggests nullable.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is null.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is ommitted.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is provided with a missing required field.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is provided with an array.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array unknown is provided with concrete values.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array unknown is provided with no values.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided a sub array.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided an empty sub array.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided an sub array of numbers.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with no values.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching and one primitive.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching, no diff.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/field is array of strings, and 1 item does not match expected type.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/field is array of strings, and > 1 items does not match expected type.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/no diff expected for basic objects.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/no diff expected for nested objects.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a different set of keys is provided to an optional object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a known field is provided the wrong shape.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a new field is provided as an empty array.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a new field is provided in a required nested object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a required array field has no items, no diff.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a required array field has no items.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an extra field is provided.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is null, suggests nullable.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is null.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is ommitted.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is provided with a missing required field.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array unknown is provided with concrete values.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array unknown is provided with no values.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided an empty sub array.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with no values.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with one matching, no diff.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with one matching.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/no diff expected for basic objects.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/no diff expected for nested objects.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a new field is provided in an optional nested object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a required array field is an object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a required array field of strings provided with an object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/an extra field is provided as an object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/field is array of strings, and 1 item does not match expected type.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/field is array of strings, and > 1 items does not match expected type.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/root array is provided with object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/required fields are omitted in an optional object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/when keys are omitted in an optional object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/required fields are omitted in an optional object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/root array is provided with object.managed.json create mode 100644 core/domain-snapshots/events-interactions-diff-interpretation-ui-render/when keys are omitted in an optional object.managed.json diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a different set of keys is provided to an optional object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a different set of keys is provided to an optional object.managed.json new file mode 100644 index 0000000000..19fc7e261d --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a different set of keys is provided to an optional object.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{\"foo\":\"bar\",\"twelve\":12}}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{\"foo\":\"bar\",\"twelve\":12}}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a known field is provided the wrong shape.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a known field is provided the wrong shape.managed.json new file mode 100644 index 0000000000..54fa5b5211 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a known field is provided the wrong shape.managed.json @@ -0,0 +1,411 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_9", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_5", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_5", + "parameterDescriptor" : { + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_8", + "name" : "cities", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_8", + "name" : "firstName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "lastName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_8", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":\"not a number\",\"cities\":[\"San Fransisco\",\"New York\",\"Durham\"]}", + "asText" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":\"not a number\",\"cities\":[\"San Fransisco\",\"New York\",\"Durham\"]}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided as an array with any contents.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided as an array with any contents.managed.json new file mode 100644 index 0000000000..73a81b7e89 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided as an array with any contents.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"array\":[1,2,3]}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"array\":[1,2,3]}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided as an empty array.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided as an empty array.managed.json new file mode 100644 index 0000000000..d4d0622578 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided as an empty array.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"array\":[]}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"array\":[]}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided in a required nested object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided in a required nested object.managed.json new file mode 100644 index 0000000000..6d48149968 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided in a required nested object.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"motto\":\"Experientia Docet\",\"city\":\"San Fransisco\",\"population\":830000}}}", + "asText" : "{\"location\":{\"principality\":{\"motto\":\"Experientia Docet\",\"city\":\"San Fransisco\",\"population\":830000}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided in an optional nested object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided in an optional nested object.managed.json new file mode 100644 index 0000000000..37dba8f32c --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a new field is provided in an optional nested object.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{\"format\":\"DMS\",\"lat\":\"37.7749° N\",\"long\":\"122.4194° W\"}}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{\"format\":\"DMS\",\"lat\":\"37.7749° N\",\"long\":\"122.4194° W\"}}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a primitive type is provided to an optional object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a primitive type is provided to an optional object.managed.json new file mode 100644 index 0000000000..ba65cba574 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a primitive type is provided to an optional object.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":\"N/A\"}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":\"N/A\"}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field has no items, no diff.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field has no items, no diff.managed.json new file mode 100644 index 0000000000..2ae65786d1 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field has no items, no diff.managed.json @@ -0,0 +1,487 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_7", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_7", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4", + "name" : "last", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_10", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_10", + "name" : "rivals", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_9", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_10", + "name" : "stats", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[],\"stats\":{\"rank\":1}}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[],\"stats\":{\"rank\":1}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field has no items.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field has no items.managed.json new file mode 100644 index 0000000000..2ae65786d1 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field has no items.managed.json @@ -0,0 +1,487 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_7", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_7", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4", + "name" : "last", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_10", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_10", + "name" : "rivals", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_9", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_10", + "name" : "stats", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[],\"stats\":{\"rank\":1}}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[],\"stats\":{\"rank\":1}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field is an object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field is an object.managed.json new file mode 100644 index 0000000000..8823cfedc2 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field is an object.managed.json @@ -0,0 +1,487 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_7", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_7", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4", + "name" : "last", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_10", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_10", + "name" : "rivals", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_9", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_10", + "name" : "stats", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":{\"nemesis\":\"Brad\"},\"stats\":{\"rank\":1}}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":{\"nemesis\":\"Brad\"},\"stats\":{\"rank\":1}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field of strings provided with an object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field of strings provided with an object.managed.json new file mode 100644 index 0000000000..639ac1a1b2 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/a required array field of strings provided with an object.managed.json @@ -0,0 +1,487 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_7", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_7", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4", + "name" : "last", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_10", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_10", + "name" : "rivals", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_9", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_10", + "name" : "stats", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[{\"food\":\"rice\"},{\"food\":\"cookies\"}],\"stats\":{\"rank\":1}}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[{\"food\":\"rice\"},{\"food\":\"cookies\"}],\"stats\":{\"rank\":1}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an array type is provided to an optional object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an array type is provided to an optional object.managed.json new file mode 100644 index 0000000000..79912a58af --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an array type is provided to an optional object.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":[1,2,3]}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":[1,2,3]}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an extra field is provided as an object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an extra field is provided as an object.managed.json new file mode 100644 index 0000000000..b79363d5bd --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an extra field is provided as an object.managed.json @@ -0,0 +1,411 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_9", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_5", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_5", + "parameterDescriptor" : { + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_8", + "name" : "cities", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_8", + "name" : "firstName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "lastName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_8", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",\"New York\",\"Durham\"],\"favoriteColor\":{\"first\":\"orange\",\"second\":\"red\"}}", + "asText" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",\"New York\",\"Durham\"],\"favoriteColor\":{\"first\":\"orange\",\"second\":\"red\"}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an extra field is provided.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an extra field is provided.managed.json new file mode 100644 index 0000000000..246c0166c8 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an extra field is provided.managed.json @@ -0,0 +1,411 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_9", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_5", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_5", + "parameterDescriptor" : { + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_8", + "name" : "cities", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_8", + "name" : "firstName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "lastName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_8", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",\"New York\",\"Durham\"],\"favoriteColor\":\"Syracuse-Orange\"}", + "asText" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",\"New York\",\"Durham\"],\"favoriteColor\":\"Syracuse-Orange\"}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an optional field is ommitted.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an optional field is ommitted.managed.json new file mode 100644 index 0000000000..b7832e7131 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an optional field is ommitted.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"]}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"]}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an optional object field is ommitted.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an optional object field is ommitted.managed.json new file mode 100644 index 0000000000..b7832e7131 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an optional object field is ommitted.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"]}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"]}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is null, suggests nullable.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is null, suggests nullable.managed.json new file mode 100644 index 0000000000..2af7ebd938 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is null, suggests nullable.managed.json @@ -0,0 +1,487 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_7", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_7", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4", + "name" : "last", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_10", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_10", + "name" : "rivals", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_9", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_10", + "name" : "stats", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"],\"stats\":null}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"],\"stats\":null}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is null.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is null.managed.json new file mode 100644 index 0000000000..2af7ebd938 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is null.managed.json @@ -0,0 +1,487 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_7", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_7", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4", + "name" : "last", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_10", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_10", + "name" : "rivals", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_9", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_10", + "name" : "stats", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"],\"stats\":null}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"],\"stats\":null}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is ommitted.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is ommitted.managed.json new file mode 100644 index 0000000000..bb83509cfc --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is ommitted.managed.json @@ -0,0 +1,487 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_7", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_7", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4", + "name" : "last", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_10", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_10", + "name" : "rivals", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_9", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_10", + "name" : "stats", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"]}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"]}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is provided with a missing required field.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is provided with a missing required field.managed.json new file mode 100644 index 0000000000..d163dd3f8b --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is provided with a missing required field.managed.json @@ -0,0 +1,487 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_7", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_7", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4", + "name" : "last", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_10", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_10", + "name" : "rivals", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_9", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_10", + "name" : "stats", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"],\"stats\":{}}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"],\"stats\":{}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is provided with an array.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is provided with an array.managed.json new file mode 100644 index 0000000000..3462259ff4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/an required object field is provided with an array.managed.json @@ -0,0 +1,487 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_7", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_7", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4", + "name" : "last", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_10", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_10", + "name" : "rivals", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_9", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_10", + "name" : "stats", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"],\"stats\":[12,34]}", + "asText" : "{\"name\":{\"first\":\"Bob\",\"last\":\"C\"},\"rivals\":[\"user1\",\"user2\",\"user3\"],\"stats\":[12,34]}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array unknown is provided with concrete values.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array unknown is provided with concrete values.managed.json new file mode 100644 index 0000000000..be4fabd47b --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array unknown is provided with concrete values.managed.json @@ -0,0 +1,214 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "events", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_1", + "parameterDescriptor" : { + "shapeId" : "shape_4", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$unknown", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_3", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/events", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "[1,2,3,4,5]", + "asText" : "[1,2,3,4,5]" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array unknown is provided with no values.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array unknown is provided with no values.managed.json new file mode 100644 index 0000000000..7bf96e17d4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array unknown is provided with no values.managed.json @@ -0,0 +1,214 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "events", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_1", + "parameterDescriptor" : { + "shapeId" : "shape_4", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$unknown", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_3", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/events", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "[]", + "asText" : "[]" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided a sub array.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided a sub array.managed.json new file mode 100644 index 0000000000..a3df47b5ae --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided a sub array.managed.json @@ -0,0 +1,536 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "people", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_9", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_20", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_9", + "parameterDescriptor" : { + "shapeId" : "shape_20", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_18", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$oneOf", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_18", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_12" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_14", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_15", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_16", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_18", + "name" : "colors", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_16" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_17", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_18", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_17" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_19", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_7", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_11" + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_8", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_10" + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_15", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_14" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_15" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_19", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_18" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_19", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/people", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "[[123]]", + "asText" : "[[123]]" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided an empty sub array.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided an empty sub array.managed.json new file mode 100644 index 0000000000..b3b59395ae --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided an empty sub array.managed.json @@ -0,0 +1,536 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "people", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_9", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_20", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_9", + "parameterDescriptor" : { + "shapeId" : "shape_20", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_18", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$oneOf", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_18", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_12" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_14", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_15", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_16", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_18", + "name" : "colors", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_16" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_17", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_18", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_17" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_19", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_7", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_11" + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_8", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_10" + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_15", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_14" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_15" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_19", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_18" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_19", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/people", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "[[]]", + "asText" : "[[]]" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided an sub array of numbers.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided an sub array of numbers.managed.json new file mode 100644 index 0000000000..19824751a5 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided an sub array of numbers.managed.json @@ -0,0 +1,536 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "people", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_9", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_20", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_9", + "parameterDescriptor" : { + "shapeId" : "shape_20", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_18", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$oneOf", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_18", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_12" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_14", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_15", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_16", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_18", + "name" : "colors", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_16" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_17", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_18", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_17" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_19", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_7", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_11" + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_8", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_10" + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_15", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_14" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_15" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_19", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_18" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_19", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/people", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "[[1,2,3]]", + "asText" : "[[1,2,3]]" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with no values.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with no values.managed.json new file mode 100644 index 0000000000..6a74700db6 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with no values.managed.json @@ -0,0 +1,536 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "people", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_9", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_20", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_9", + "parameterDescriptor" : { + "shapeId" : "shape_20", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_18", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$oneOf", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_18", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_12" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_14", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_15", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_16", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_18", + "name" : "colors", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_16" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_17", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_18", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_17" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_19", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_7", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_11" + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_8", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_10" + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_15", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_14" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_15" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_19", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_18" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_19", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/people", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "[]", + "asText" : "[]" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching and one primitive.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching and one primitive.managed.json new file mode 100644 index 0000000000..b4551d9204 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching and one primitive.managed.json @@ -0,0 +1,536 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "people", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_9", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_20", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_9", + "parameterDescriptor" : { + "shapeId" : "shape_20", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_18", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$oneOf", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_18", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_12" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_14", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_15", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_16", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_18", + "name" : "colors", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_16" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_17", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_18", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_17" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_19", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_7", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_11" + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_8", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_10" + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_15", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_14" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_15" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_19", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_18" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_19", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/people", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "[{\"name\":\"joe\",\"age\":\"thirty\",\"colors\":[\"red\",\"green\",\"yellow\"]},\"hello\"]", + "asText" : "[{\"name\":\"joe\",\"age\":\"thirty\",\"colors\":[\"red\",\"green\",\"yellow\"]},\"hello\"]" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching, no diff.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching, no diff.managed.json new file mode 100644 index 0000000000..63b5dafec8 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching, no diff.managed.json @@ -0,0 +1,536 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "people", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_9", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_20", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_9", + "parameterDescriptor" : { + "shapeId" : "shape_20", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_18", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$oneOf", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_18", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_12" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_14", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_15", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_16", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_18", + "name" : "colors", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_16" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_17", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_18", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_17" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_19", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_7", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_11" + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_8", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_10" + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_15", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_14" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_15" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_19", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_18" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_19", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/people", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "[{\"name\":\"joe\",\"age\":\"thirty\",\"colors\":[\"red\",\"green\",\"yellow\"]}]", + "asText" : "[{\"name\":\"joe\",\"age\":\"thirty\",\"colors\":[\"red\",\"green\",\"yellow\"]}]" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching.managed.json new file mode 100644 index 0000000000..63b5dafec8 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/array with object listitem is provided with one matching.managed.json @@ -0,0 +1,536 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "people", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_9", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_20", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_9", + "parameterDescriptor" : { + "shapeId" : "shape_20", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_18", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$oneOf", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_18", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_12" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_14", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_15", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_16", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_18", + "name" : "colors", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_16" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_17", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_18", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_17" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_19", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_7", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_11" + } + }, + "consumingParameterId" : "parameter_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterAdded" : { + "shapeParameterId" : "parameter_8", + "shapeId" : "shape_12", + "name" : "", + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_12", + "providerDescriptor" : { + "NoProvider" : { + + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_10" + } + }, + "consumingParameterId" : "parameter_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_15", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_14" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_15" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_19", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_18" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_19", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/people", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "[{\"name\":\"joe\",\"age\":\"thirty\",\"colors\":[\"red\",\"green\",\"yellow\"]}]", + "asText" : "[{\"name\":\"joe\",\"age\":\"thirty\",\"colors\":[\"red\",\"green\",\"yellow\"]}]" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/field is array of strings, and 1 item does not match expected type.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/field is array of strings, and 1 item does not match expected type.managed.json new file mode 100644 index 0000000000..9fc844c8cf --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/field is array of strings, and 1 item does not match expected type.managed.json @@ -0,0 +1,411 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_9", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_5", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_5", + "parameterDescriptor" : { + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_8", + "name" : "cities", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_8", + "name" : "firstName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "lastName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_8", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",17584,\"Boston\"]}", + "asText" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",17584,\"Boston\"]}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/field is array of strings, and > 1 items does not match expected type.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/field is array of strings, and > 1 items does not match expected type.managed.json new file mode 100644 index 0000000000..773f645659 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/field is array of strings, and > 1 items does not match expected type.managed.json @@ -0,0 +1,411 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_9", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_5", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_5", + "parameterDescriptor" : { + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_8", + "name" : "cities", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_8", + "name" : "firstName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "lastName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_8", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",17584,\"Boston\",16573,\"Chicago\"]}", + "asText" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",17584,\"Boston\",16573,\"Chicago\"]}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/no diff expected for basic objects.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/no diff expected for basic objects.managed.json new file mode 100644 index 0000000000..13117af478 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/no diff expected for basic objects.managed.json @@ -0,0 +1,411 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "users", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":userId", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_9", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "PathComponentAdded" : { + "pathId" : "path_3", + "parentPathId" : "path_2", + "name" : "profile", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_5", + "pathId" : "path_3", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_5", + "parameterDescriptor" : { + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_3", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "age", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_8", + "name" : "cities", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_8", + "name" : "firstName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "lastName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_8", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/users/1234/profile", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",\"New York\",\"Durham\"]}", + "asText" : "{\"firstName\":\"Aidan\",\"lastName\":\"C\",\"age\":26,\"cities\":[\"San Fransisco\",\"New York\",\"Durham\"]}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/no diff expected for nested objects.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/no diff expected for nested objects.managed.json new file mode 100644 index 0000000000..2adf46ef7d --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/no diff expected for nested objects.managed.json @@ -0,0 +1,556 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000}}}" + } + } + }, + "tags" : [ + ] + }, + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{\"lat\":\"37.7749° N\",\"long\":\"122.4194° W\"}}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{\"lat\":\"37.7749° N\",\"long\":\"122.4194° W\"}}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a different set of keys is provided to an optional object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a different set of keys is provided to an optional object.managed.json new file mode 100644 index 0000000000..8a0106c613 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a different set of keys is provided to an optional object.managed.json @@ -0,0 +1,454 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "coordinates" + } + }, + { + "JsonObjectKey" : { + "key" : "lat" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_6" + } + }, + { + "OptionalTrail" : { + + } + }, + { + "OptionalItemTrail" : { + "innerShapeId" : "shape_5" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_2", + "fieldShapeId" : "shape_3" + } + } + ] + } + } + } + } + }, + "title" : "'lat' in the 200 Response body is missing", + "suggestions" : [ + { + "title" : "Make field 'lat' optional", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_1" + } + } + } + } + ] + }, + { + "title" : "Remove field 'lat'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_2" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),Some(shape_5),List(),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long))),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve))),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),$string,None,\"bar\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),$number,None,12,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"foo\" : \"bar\",\n \"twelve\" : 12\n }\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"foo\" : \"bar\",\n \"twelve\" : 12\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,parameter_4,shape_6,{\n \"foo\" : \"bar\",\n \"twelve\" : 12\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),foo,\"bar\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),lat,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),shape_3,Set(UnmatchedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6), OptionalTrail(), OptionalItemTrail(shape_5), ObjectFieldTrail(parameter_2,shape_3))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),long,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),shape_4,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),twelve,12,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set())), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set()), SpecField(population,parameter_5,shape_7,Set())),Set())), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set())),Set())))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "coordinates" + } + }, + { + "JsonObjectKey" : { + "key" : "long" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_6" + } + }, + { + "OptionalTrail" : { + + } + }, + { + "OptionalItemTrail" : { + "innerShapeId" : "shape_5" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_3", + "fieldShapeId" : "shape_4" + } + } + ] + } + } + } + } + }, + "title" : "'long' in the 200 Response body is missing", + "suggestions" : [ + { + "title" : "Make field 'long' optional", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_2", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_2" + } + } + } + } + ] + }, + { + "title" : "Remove field 'long'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_3" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),Some(shape_5),List(),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long))),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve))),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),$string,None,\"bar\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),$number,None,12,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"foo\" : \"bar\",\n \"twelve\" : 12\n }\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"foo\" : \"bar\",\n \"twelve\" : 12\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,parameter_4,shape_6,{\n \"foo\" : \"bar\",\n \"twelve\" : 12\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),foo,\"bar\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),lat,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),shape_3,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),long,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),shape_4,Set(UnmatchedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6), OptionalTrail(), OptionalItemTrail(shape_5), ObjectFieldTrail(parameter_3,shape_4))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),twelve,12,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set())), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set()), SpecField(population,parameter_5,shape_7,Set())),Set())), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set())),Set())))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "coordinates" + } + }, + { + "JsonObjectKey" : { + "key" : "foo" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_6" + } + } + ] + } + } + } + } + }, + "title" : "'foo' observed in the 200 Response body", + "suggestions" : [ + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),Some(shape_5),List(),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long))),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve))),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),$string,None,\"bar\",Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),$number,None,12,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"foo\" : \"bar\",\n \"twelve\" : 12\n }\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"foo\" : \"bar\",\n \"twelve\" : 12\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,parameter_4,shape_6,{\n \"foo\" : \"bar\",\n \"twelve\" : 12\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),foo,\"bar\",Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),lat,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),shape_3,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),long,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),shape_4,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),twelve,12,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6))))))), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6)))))), SpecField(population,parameter_5,shape_7,Set())),Set())), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set())),Set())))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "coordinates" + } + }, + { + "JsonObjectKey" : { + "key" : "twelve" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_6" + } + } + ] + } + } + } + } + }, + "title" : "'twelve' observed in the 200 Response body", + "suggestions" : [ + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),Some(shape_5),List(),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long))),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve))),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),$string,None,\"bar\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),$number,None,12,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"foo\" : \"bar\",\n \"twelve\" : 12\n }\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"foo\" : \"bar\",\n \"twelve\" : 12\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,parameter_4,shape_6,{\n \"foo\" : \"bar\",\n \"twelve\" : 12\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(foo)),foo,\"bar\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),lat,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),shape_3,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),long,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),shape_4,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),twelve,12,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6))))))), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(twelve)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6)))))), SpecField(population,parameter_5,shape_7,Set())),Set())), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set())),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a known field is missing.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a known field is missing.managed.json index 06e204718b..cf9c37d3d5 100644 --- a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a known field is missing.managed.json +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a known field is missing.managed.json @@ -1,47 +1,105 @@ { "diffs" : [ { - "UnmatchedResponseBodyShape" : { - "interactionTrail" : { - "path" : [ - { - "ResponseBody" : { - "contentType" : "application/json", - "statusCode" : 200 + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "firstName" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_8", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_3", + "fieldShapeId" : "shape_6" + } + } + ] } } - ] - }, - "requestsTrail" : { - "SpecResponseBody" : { - "responseId" : "response_1" } - }, - "shapeDiffResult" : { - "UnmatchedShape" : { - "jsonTrail" : { - "path" : [ - { - "JsonObjectKey" : { - "key" : "firstName" + } + }, + "title" : "'firstName' in the 200 Response body is missing", + "suggestions" : [ + { + "title" : "Make field 'firstName' optional", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$optionalInner" } } - ] + } }, - "shapeTrail" : { - "rootShapeId" : "shape_8", - "path" : [ - { - "ObjectFieldTrail" : { + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { "fieldId" : "parameter_3", - "fieldShapeId" : "shape_6" + "shapeId" : "shape_1" } } - ] + } } - } + ] + }, + { + "title" : "Remove field 'firstName'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_3" + } + } + ] } - } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_8),List(List(JsonObjectKey(age)), List(JsonObjectKey(cities)), List(JsonObjectKey(lastName))),List(List(JsonObjectKey(firstName))),List(),Set())), (List(JsonObjectKey(age)),ExamplePrimitive(List(JsonObjectKey(age)),$number,Some(shape_2),26,Set())), (List(JsonObjectKey(cities)),ExampleArray(List(JsonObjectKey(cities)),Some(shape_5),Some(shape_4),Vector(List(JsonObjectKey(cities), JsonArrayItem(0)), List(JsonObjectKey(cities), JsonArrayItem(1)), List(JsonObjectKey(cities), JsonArrayItem(2))),Set())), (List(JsonObjectKey(cities), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(0)),$string,Some(shape_4),\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(1)),$string,Some(shape_4),\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(2)),$string,Some(shape_4),\"Durham\",Set())), (List(JsonObjectKey(lastName)),ExamplePrimitive(List(JsonObjectKey(lastName)),$string,Some(shape_7),\"C\",Set())))", + "Vector((List(JsonObjectKey(age)),KnownExampleField(List(JsonObjectKey(age)),age,parameter_1,shape_2,26,Set())), (List(JsonObjectKey(cities)),KnownExampleField(List(JsonObjectKey(cities)),cities,parameter_2,shape_5,[\n \"San Fransisco\",\n \"New York\",\n \"Durham\"\n],Set())), (List(JsonObjectKey(firstName)),MissingExampleField(List(JsonObjectKey(firstName)),firstName,List(JsonObjectKey(firstName)),shape_6,Set(UnmatchedShape(List(JsonObjectKey(firstName)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_3,shape_6))))))), (List(JsonObjectKey(lastName)),KnownExampleField(List(JsonObjectKey(lastName)),lastName,parameter_4,shape_7,\"C\",Set())))", + "Vector((List(JsonObjectKey(cities), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(0)),0,\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(1)),1,\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(2)),2,\"Durham\",Set())))", + "Vector((shape_2,SpecPrimitive(shape_2,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecArray(shape_5,shape_4,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_4),Some(shape_4)))),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set(UnmatchedShape(List(JsonObjectKey(firstName)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_3,shape_6))))))), (shape_7,SpecPrimitive(shape_7,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(age,parameter_1,shape_2,Set()), SpecField(cities,parameter_2,shape_5,Set()), SpecField(firstName,parameter_3,shape_6,Set(UnmatchedShape(List(JsonObjectKey(firstName)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_3,shape_6)))))), SpecField(lastName,parameter_4,shape_7,Set())),Set())))" + ] } ] } \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a known field is provided the wrong shape.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a known field is provided the wrong shape.managed.json new file mode 100644 index 0000000000..ae453e5edd --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a known field is provided the wrong shape.managed.json @@ -0,0 +1,153 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "age" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_8", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_1", + "fieldShapeId" : "shape_2" + } + } + ] + } + } + } + } + }, + "title" : "'age' in the 200 Response body was not a number", + "suggestions" : [ + { + "title" : "Allow field 'age' to be either a number or String", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_1", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "parameter_1" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_1" + } + } + } + } + ] + }, + { + "title" : "Change shape to String", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_3" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_8),List(List(JsonObjectKey(age)), List(JsonObjectKey(cities)), List(JsonObjectKey(firstName)), List(JsonObjectKey(lastName))),List(),List(),Set())), (List(JsonObjectKey(age)),ExamplePrimitive(List(JsonObjectKey(age)),$string,None,\"not a number\",Set(UnmatchedShape(List(JsonObjectKey(age)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_1,shape_2))))))), (List(JsonObjectKey(cities)),ExampleArray(List(JsonObjectKey(cities)),Some(shape_5),Some(shape_4),Vector(List(JsonObjectKey(cities), JsonArrayItem(0)), List(JsonObjectKey(cities), JsonArrayItem(1)), List(JsonObjectKey(cities), JsonArrayItem(2))),Set())), (List(JsonObjectKey(cities), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(0)),$string,Some(shape_4),\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(1)),$string,Some(shape_4),\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(2)),$string,Some(shape_4),\"Durham\",Set())), (List(JsonObjectKey(firstName)),ExamplePrimitive(List(JsonObjectKey(firstName)),$string,Some(shape_6),\"Aidan\",Set())), (List(JsonObjectKey(lastName)),ExamplePrimitive(List(JsonObjectKey(lastName)),$string,Some(shape_7),\"C\",Set())))", + "Vector((List(JsonObjectKey(age)),KnownExampleField(List(JsonObjectKey(age)),age,parameter_1,shape_2,\"not a number\",Set(UnmatchedShape(List(JsonObjectKey(age)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_1,shape_2))))))), (List(JsonObjectKey(cities)),KnownExampleField(List(JsonObjectKey(cities)),cities,parameter_2,shape_5,[\n \"San Fransisco\",\n \"New York\",\n \"Durham\"\n],Set())), (List(JsonObjectKey(firstName)),KnownExampleField(List(JsonObjectKey(firstName)),firstName,parameter_3,shape_6,\"Aidan\",Set())), (List(JsonObjectKey(lastName)),KnownExampleField(List(JsonObjectKey(lastName)),lastName,parameter_4,shape_7,\"C\",Set())))", + "Vector((List(JsonObjectKey(cities), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(0)),0,\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(1)),1,\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(2)),2,\"Durham\",Set())))", + "Vector((shape_2,SpecPrimitive(shape_2,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set(UnmatchedShape(List(JsonObjectKey(age)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_1,shape_2))))))), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecArray(shape_5,shape_4,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_4),Some(shape_4)))),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecPrimitive(shape_7,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(age,parameter_1,shape_2,Set(UnmatchedShape(List(JsonObjectKey(age)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_1,shape_2)))))), SpecField(cities,parameter_2,shape_5,Set()), SpecField(firstName,parameter_3,shape_6,Set()), SpecField(lastName,parameter_4,shape_7,Set())),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a new field is provided as an empty array.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a new field is provided as an empty array.managed.json new file mode 100644 index 0000000000..948739473b --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a new field is provided as an empty array.managed.json @@ -0,0 +1,121 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "array" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + } + ] + } + } + } + } + }, + "title" : "'array' observed in the 200 Response body", + "suggestions" : [ + { + "title" : "Add array", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$unknown", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "array", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_3" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates))),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(array))),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(array)),ExampleArray(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(array)),None,None,Vector(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"array\" : [\n ]\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"array\" : [\n ]\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(array)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(array)),array,[\n],Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(array)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),shape_6,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set())), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set()), SpecField(population,parameter_5,shape_7,Set())),Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(array)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8))))))), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(array)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8))))))),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a new field is provided in a required nested object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a new field is provided in a required nested object.managed.json new file mode 100644 index 0000000000..751351b082 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a new field is provided in a required nested object.managed.json @@ -0,0 +1,99 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "motto" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + } + ] + } + } + } + } + }, + "title" : "'motto' observed in the 200 Response body", + "suggestions" : [ + { + "title" : "Add motto", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "motto", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_1" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates))),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(motto))),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(motto)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(motto)),$string,None,\"Experientia Docet\",Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(motto)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"motto\" : \"Experientia Docet\",\n \"city\" : \"San Fransisco\",\n \"population\" : 830000\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"motto\" : \"Experientia Docet\",\n \"city\" : \"San Fransisco\",\n \"population\" : 830000\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),shape_6,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(motto)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(motto)),motto,\"Experientia Docet\",Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(motto)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set())), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set()), SpecField(population,parameter_5,shape_7,Set())),Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(motto)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8))))))), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(motto)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8))))))),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a required array field has no items, no diff.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a required array field has no items, no diff.managed.json new file mode 100644 index 0000000000..dd1f569ec4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a required array field has no items, no diff.managed.json @@ -0,0 +1,4 @@ +{ + "diffs" : [ + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a required array field has no items.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a required array field has no items.managed.json new file mode 100644 index 0000000000..dd1f569ec4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/a required array field has no items.managed.json @@ -0,0 +1,4 @@ +{ + "diffs" : [ + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an extra field is provided.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an extra field is provided.managed.json new file mode 100644 index 0000000000..cec88c2dec --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an extra field is provided.managed.json @@ -0,0 +1,77 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "favoriteColor" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_8", + "path" : [ + ] + } + } + } + } + }, + "title" : "'favoriteColor' observed in the 200 Response body", + "suggestions" : [ + { + "title" : "Add favoriteColor", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "favoriteColor", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_1" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_8),List(List(JsonObjectKey(age)), List(JsonObjectKey(cities)), List(JsonObjectKey(firstName)), List(JsonObjectKey(lastName))),List(),List(List(JsonObjectKey(favoriteColor))),Set())), (List(JsonObjectKey(age)),ExamplePrimitive(List(JsonObjectKey(age)),$number,Some(shape_2),26,Set())), (List(JsonObjectKey(cities)),ExampleArray(List(JsonObjectKey(cities)),Some(shape_5),Some(shape_4),Vector(List(JsonObjectKey(cities), JsonArrayItem(0)), List(JsonObjectKey(cities), JsonArrayItem(1)), List(JsonObjectKey(cities), JsonArrayItem(2))),Set())), (List(JsonObjectKey(cities), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(0)),$string,Some(shape_4),\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(1)),$string,Some(shape_4),\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(2)),$string,Some(shape_4),\"Durham\",Set())), (List(JsonObjectKey(favoriteColor)),ExamplePrimitive(List(JsonObjectKey(favoriteColor)),$string,None,\"Syracuse-Orange\",Set(UnspecifiedShape(List(JsonObjectKey(favoriteColor)),ShapeTrail(shape_8,List()))))), (List(JsonObjectKey(firstName)),ExamplePrimitive(List(JsonObjectKey(firstName)),$string,Some(shape_6),\"Aidan\",Set())), (List(JsonObjectKey(lastName)),ExamplePrimitive(List(JsonObjectKey(lastName)),$string,Some(shape_7),\"C\",Set())))", + "Vector((List(JsonObjectKey(age)),KnownExampleField(List(JsonObjectKey(age)),age,parameter_1,shape_2,26,Set())), (List(JsonObjectKey(cities)),KnownExampleField(List(JsonObjectKey(cities)),cities,parameter_2,shape_5,[\n \"San Fransisco\",\n \"New York\",\n \"Durham\"\n],Set())), (List(JsonObjectKey(favoriteColor)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor)),favoriteColor,\"Syracuse-Orange\",Set(UnspecifiedShape(List(JsonObjectKey(favoriteColor)),ShapeTrail(shape_8,List()))))), (List(JsonObjectKey(firstName)),KnownExampleField(List(JsonObjectKey(firstName)),firstName,parameter_3,shape_6,\"Aidan\",Set())), (List(JsonObjectKey(lastName)),KnownExampleField(List(JsonObjectKey(lastName)),lastName,parameter_4,shape_7,\"C\",Set())))", + "Vector((List(JsonObjectKey(cities), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(0)),0,\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(1)),1,\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(2)),2,\"Durham\",Set())))", + "Vector((shape_2,SpecPrimitive(shape_2,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecArray(shape_5,shape_4,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_4),Some(shape_4)))),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecPrimitive(shape_7,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(age,parameter_1,shape_2,Set()), SpecField(cities,parameter_2,shape_5,Set()), SpecField(firstName,parameter_3,shape_6,Set()), SpecField(lastName,parameter_4,shape_7,Set())),Set(UnspecifiedShape(List(JsonObjectKey(favoriteColor)),ShapeTrail(shape_8,List()))))))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is null, suggests nullable.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is null, suggests nullable.managed.json new file mode 100644 index 0000000000..8c670df087 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is null, suggests nullable.managed.json @@ -0,0 +1,105 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "stats" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_9" + } + } + ] + } + } + } + } + }, + "title" : "'stats' in the 200 Response body was not a Object", + "suggestions" : [ + { + "title" : "Make field 'stats' nullable", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$nullable", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_9" + } + }, + "consumingParameterId" : "$nullableInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_1" + } + } + } + } + ] + }, + { + "title" : "Remove field 'stats'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_6" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(name)), List(JsonObjectKey(rivals)), List(JsonObjectKey(stats))),List(),List(),Set())), (List(JsonObjectKey(name)),ExampleObject(List(JsonObjectKey(name)),Some(shape_4),List(List(JsonObjectKey(name), JsonObjectKey(first)), List(JsonObjectKey(name), JsonObjectKey(last))),List(),List(),Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(first)),$string,Some(shape_2),\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(last)),$string,Some(shape_3),\"C\",Set())), (List(JsonObjectKey(rivals)),ExampleArray(List(JsonObjectKey(rivals)),Some(shape_7),Some(shape_6),Vector(List(JsonObjectKey(rivals), JsonArrayItem(0)), List(JsonObjectKey(rivals), JsonArrayItem(1)), List(JsonObjectKey(rivals), JsonArrayItem(2))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(0)),$string,Some(shape_6),\"user1\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(1)),$string,Some(shape_6),\"user2\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(2)),$string,Some(shape_6),\"user3\",Set())), (List(JsonObjectKey(stats)),ExamplePrimitive(List(JsonObjectKey(stats)),$nullable,None,null,Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))))", + "Vector((List(JsonObjectKey(name)),KnownExampleField(List(JsonObjectKey(name)),name,parameter_3,shape_4,{\n \"first\" : \"Bob\",\n \"last\" : \"C\"\n},Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(first)),first,parameter_1,shape_2,\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(last)),last,parameter_2,shape_3,\"C\",Set())), (List(JsonObjectKey(rivals)),KnownExampleField(List(JsonObjectKey(rivals)),rivals,parameter_4,shape_7,[\n \"user1\",\n \"user2\",\n \"user3\"\n],Set())), (List(JsonObjectKey(stats)),KnownExampleField(List(JsonObjectKey(stats)),stats,parameter_6,shape_9,null,Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))))", + "Vector((List(JsonObjectKey(rivals), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(0)),0,\"user1\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(1)),1,\"user2\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(2)),2,\"user3\",Set())))", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(name,parameter_3,shape_4,Set()), SpecField(rivals,parameter_4,shape_7,Set()), SpecField(stats,parameter_6,shape_9,Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecObject(shape_4,List(SpecField(first,parameter_1,shape_2,Set()), SpecField(last,parameter_2,shape_3,Set())),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecArray(shape_7,shape_6,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_6),Some(shape_6)))),Set())), (shape_8,SpecPrimitive(shape_8,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_9,SpecObject(shape_9,List(SpecField(rank,parameter_5,shape_8,Set())),Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is null.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is null.managed.json new file mode 100644 index 0000000000..8c670df087 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is null.managed.json @@ -0,0 +1,105 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "stats" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_9" + } + } + ] + } + } + } + } + }, + "title" : "'stats' in the 200 Response body was not a Object", + "suggestions" : [ + { + "title" : "Make field 'stats' nullable", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$nullable", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_9" + } + }, + "consumingParameterId" : "$nullableInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_1" + } + } + } + } + ] + }, + { + "title" : "Remove field 'stats'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_6" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(name)), List(JsonObjectKey(rivals)), List(JsonObjectKey(stats))),List(),List(),Set())), (List(JsonObjectKey(name)),ExampleObject(List(JsonObjectKey(name)),Some(shape_4),List(List(JsonObjectKey(name), JsonObjectKey(first)), List(JsonObjectKey(name), JsonObjectKey(last))),List(),List(),Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(first)),$string,Some(shape_2),\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(last)),$string,Some(shape_3),\"C\",Set())), (List(JsonObjectKey(rivals)),ExampleArray(List(JsonObjectKey(rivals)),Some(shape_7),Some(shape_6),Vector(List(JsonObjectKey(rivals), JsonArrayItem(0)), List(JsonObjectKey(rivals), JsonArrayItem(1)), List(JsonObjectKey(rivals), JsonArrayItem(2))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(0)),$string,Some(shape_6),\"user1\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(1)),$string,Some(shape_6),\"user2\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(2)),$string,Some(shape_6),\"user3\",Set())), (List(JsonObjectKey(stats)),ExamplePrimitive(List(JsonObjectKey(stats)),$nullable,None,null,Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))))", + "Vector((List(JsonObjectKey(name)),KnownExampleField(List(JsonObjectKey(name)),name,parameter_3,shape_4,{\n \"first\" : \"Bob\",\n \"last\" : \"C\"\n},Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(first)),first,parameter_1,shape_2,\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(last)),last,parameter_2,shape_3,\"C\",Set())), (List(JsonObjectKey(rivals)),KnownExampleField(List(JsonObjectKey(rivals)),rivals,parameter_4,shape_7,[\n \"user1\",\n \"user2\",\n \"user3\"\n],Set())), (List(JsonObjectKey(stats)),KnownExampleField(List(JsonObjectKey(stats)),stats,parameter_6,shape_9,null,Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))))", + "Vector((List(JsonObjectKey(rivals), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(0)),0,\"user1\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(1)),1,\"user2\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(2)),2,\"user3\",Set())))", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(name,parameter_3,shape_4,Set()), SpecField(rivals,parameter_4,shape_7,Set()), SpecField(stats,parameter_6,shape_9,Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecObject(shape_4,List(SpecField(first,parameter_1,shape_2,Set()), SpecField(last,parameter_2,shape_3,Set())),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecArray(shape_7,shape_6,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_6),Some(shape_6)))),Set())), (shape_8,SpecPrimitive(shape_8,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_9,SpecObject(shape_9,List(SpecField(rank,parameter_5,shape_8,Set())),Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is ommitted.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is ommitted.managed.json new file mode 100644 index 0000000000..f7828e5929 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is ommitted.managed.json @@ -0,0 +1,105 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "stats" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_9" + } + } + ] + } + } + } + } + }, + "title" : "'stats' in the 200 Response body is missing", + "suggestions" : [ + { + "title" : "Make field 'stats' optional", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_9" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_1" + } + } + } + } + ] + }, + { + "title" : "Remove field 'stats'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_6" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(name)), List(JsonObjectKey(rivals))),List(List(JsonObjectKey(stats))),List(),Set())), (List(JsonObjectKey(name)),ExampleObject(List(JsonObjectKey(name)),Some(shape_4),List(List(JsonObjectKey(name), JsonObjectKey(first)), List(JsonObjectKey(name), JsonObjectKey(last))),List(),List(),Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(first)),$string,Some(shape_2),\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(last)),$string,Some(shape_3),\"C\",Set())), (List(JsonObjectKey(rivals)),ExampleArray(List(JsonObjectKey(rivals)),Some(shape_7),Some(shape_6),Vector(List(JsonObjectKey(rivals), JsonArrayItem(0)), List(JsonObjectKey(rivals), JsonArrayItem(1)), List(JsonObjectKey(rivals), JsonArrayItem(2))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(0)),$string,Some(shape_6),\"user1\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(1)),$string,Some(shape_6),\"user2\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(2)),$string,Some(shape_6),\"user3\",Set())))", + "Vector((List(JsonObjectKey(name)),KnownExampleField(List(JsonObjectKey(name)),name,parameter_3,shape_4,{\n \"first\" : \"Bob\",\n \"last\" : \"C\"\n},Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(first)),first,parameter_1,shape_2,\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(last)),last,parameter_2,shape_3,\"C\",Set())), (List(JsonObjectKey(rivals)),KnownExampleField(List(JsonObjectKey(rivals)),rivals,parameter_4,shape_7,[\n \"user1\",\n \"user2\",\n \"user3\"\n],Set())), (List(JsonObjectKey(stats)),MissingExampleField(List(JsonObjectKey(stats)),stats,List(JsonObjectKey(stats)),shape_9,Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))))", + "Vector((List(JsonObjectKey(rivals), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(0)),0,\"user1\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(1)),1,\"user2\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(2)),2,\"user3\",Set())))", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(name,parameter_3,shape_4,Set()), SpecField(rivals,parameter_4,shape_7,Set()), SpecField(stats,parameter_6,shape_9,Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecObject(shape_4,List(SpecField(first,parameter_1,shape_2,Set()), SpecField(last,parameter_2,shape_3,Set())),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecArray(shape_7,shape_6,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_6),Some(shape_6)))),Set())), (shape_8,SpecPrimitive(shape_8,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_9,SpecObject(shape_9,List(SpecField(rank,parameter_5,shape_8,Set())),Set(UnmatchedShape(List(JsonObjectKey(stats)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9))))))))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is provided with a missing required field.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is provided with a missing required field.managed.json new file mode 100644 index 0000000000..f99fb2b3d0 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/an required object field is provided with a missing required field.managed.json @@ -0,0 +1,116 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "stats" + } + }, + { + "JsonObjectKey" : { + "key" : "rank" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_5", + "fieldShapeId" : "shape_8" + } + } + ] + } + } + } + } + }, + "title" : "'rank' in the 200 Response body is missing", + "suggestions" : [ + { + "title" : "Make field 'rank' optional", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_8" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_1" + } + } + } + } + ] + }, + { + "title" : "Remove field 'rank'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_5" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(name)), List(JsonObjectKey(rivals)), List(JsonObjectKey(stats))),List(),List(),Set())), (List(JsonObjectKey(name)),ExampleObject(List(JsonObjectKey(name)),Some(shape_4),List(List(JsonObjectKey(name), JsonObjectKey(first)), List(JsonObjectKey(name), JsonObjectKey(last))),List(),List(),Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(first)),$string,Some(shape_2),\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(last)),$string,Some(shape_3),\"C\",Set())), (List(JsonObjectKey(rivals)),ExampleArray(List(JsonObjectKey(rivals)),Some(shape_7),Some(shape_6),Vector(List(JsonObjectKey(rivals), JsonArrayItem(0)), List(JsonObjectKey(rivals), JsonArrayItem(1)), List(JsonObjectKey(rivals), JsonArrayItem(2))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(0)),$string,Some(shape_6),\"user1\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(1)),$string,Some(shape_6),\"user2\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(2)),$string,Some(shape_6),\"user3\",Set())), (List(JsonObjectKey(stats)),ExampleObject(List(JsonObjectKey(stats)),Some(shape_9),List(),List(List(JsonObjectKey(stats), JsonObjectKey(rank))),List(),Set())))", + "Vector((List(JsonObjectKey(name)),KnownExampleField(List(JsonObjectKey(name)),name,parameter_3,shape_4,{\n \"first\" : \"Bob\",\n \"last\" : \"C\"\n},Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(first)),first,parameter_1,shape_2,\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(last)),last,parameter_2,shape_3,\"C\",Set())), (List(JsonObjectKey(rivals)),KnownExampleField(List(JsonObjectKey(rivals)),rivals,parameter_4,shape_7,[\n \"user1\",\n \"user2\",\n \"user3\"\n],Set())), (List(JsonObjectKey(stats)),KnownExampleField(List(JsonObjectKey(stats)),stats,parameter_6,shape_9,{\n \n},Set())), (List(JsonObjectKey(stats), JsonObjectKey(rank)),MissingExampleField(List(JsonObjectKey(stats), JsonObjectKey(rank)),rank,List(JsonObjectKey(stats), JsonObjectKey(rank)),shape_8,Set(UnmatchedShape(List(JsonObjectKey(stats), JsonObjectKey(rank)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9), ObjectFieldTrail(parameter_5,shape_8))))))))", + "Vector((List(JsonObjectKey(rivals), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(0)),0,\"user1\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(1)),1,\"user2\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(2)),2,\"user3\",Set())))", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(name,parameter_3,shape_4,Set()), SpecField(rivals,parameter_4,shape_7,Set()), SpecField(stats,parameter_6,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecObject(shape_4,List(SpecField(first,parameter_1,shape_2,Set()), SpecField(last,parameter_2,shape_3,Set())),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecArray(shape_7,shape_6,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_6),Some(shape_6)))),Set())), (shape_8,SpecPrimitive(shape_8,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set(UnmatchedShape(List(JsonObjectKey(stats), JsonObjectKey(rank)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9), ObjectFieldTrail(parameter_5,shape_8))))))), (shape_9,SpecObject(shape_9,List(SpecField(rank,parameter_5,shape_8,Set(UnmatchedShape(List(JsonObjectKey(stats), JsonObjectKey(rank)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_6,shape_9), ObjectFieldTrail(parameter_5,shape_8))))))),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array unknown is provided with concrete values.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array unknown is provided with concrete values.managed.json new file mode 100644 index 0000000000..550f3587af --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array unknown is provided with concrete values.managed.json @@ -0,0 +1,79 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonArrayItem" : { + "index" : 0 + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_3", + "path" : [ + ] + } + } + } + } + }, + "title" : "Shape at index 0 observed in the 200 Response body", + "suggestions" : [ + { + "title" : "Set the shape", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$number", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_1" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleArray(List(),None,None,Vector(List(JsonArrayItem(0)), List(JsonArrayItem(1)), List(JsonArrayItem(2)), List(JsonArrayItem(3)), List(JsonArrayItem(4))),Set())), (List(JsonArrayItem(0)),ExamplePrimitive(List(JsonArrayItem(0)),$number,None,1,Set(UnspecifiedShape(List(JsonArrayItem(0)),ShapeTrail(shape_3,List()))))), (List(JsonArrayItem(1)),ExamplePrimitive(List(JsonArrayItem(1)),$number,None,2,Set())), (List(JsonArrayItem(2)),ExamplePrimitive(List(JsonArrayItem(2)),$number,None,3,Set())), (List(JsonArrayItem(3)),ExamplePrimitive(List(JsonArrayItem(3)),$number,None,4,Set())), (List(JsonArrayItem(4)),ExamplePrimitive(List(JsonArrayItem(4)),$number,None,5,Set())))", + "Vector()", + "Vector((List(JsonArrayItem(0)),ExampleItem(List(JsonArrayItem(0)),0,1,Set())), (List(JsonArrayItem(1)),ExampleItem(List(JsonArrayItem(1)),1,2,Set())), (List(JsonArrayItem(2)),ExampleItem(List(JsonArrayItem(2)),2,3,Set())), (List(JsonArrayItem(3)),ExampleItem(List(JsonArrayItem(3)),3,4,Set())), (List(JsonArrayItem(4)),ExampleItem(List(JsonArrayItem(4)),4,5,Set())))", + "Vector((shape_2,SpecPrimitive(shape_2,$unknown,RenderName(List()),Set())), (shape_3,SpecArray(shape_3,shape_2,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_2),Some(shape_2)))),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array unknown is provided with no values.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array unknown is provided with no values.managed.json new file mode 100644 index 0000000000..dd1f569ec4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array unknown is provided with no values.managed.json @@ -0,0 +1,4 @@ +{ + "diffs" : [ + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided an empty sub array.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided an empty sub array.managed.json new file mode 100644 index 0000000000..8c6ac0c66b --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided an empty sub array.managed.json @@ -0,0 +1,207 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonArrayItem" : { + "index" : 0 + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_19", + "path" : [ + { + "ListItemTrail" : { + "listShapeId" : "shape_19", + "itemShapeId" : "shape_18" + } + } + ] + } + } + } + } + }, + "title" : "shape at index 0 in the 200 Response body was not a Object", + "suggestions" : [ + { + "title" : "Allow shape at index 0 to be either a Object or List", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$unknown", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_1", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_18" + } + }, + "consumingParameterId" : "parameter_1" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_19", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_1" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + }, + { + "title" : "Change shape to List", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_6", + "baseShapeId" : "$unknown", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_19", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_7" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleArray(List(),Some(shape_19),Some(shape_18),Vector(List(JsonArrayItem(0))),Set())), (List(JsonArrayItem(0)),ExampleArray(List(JsonArrayItem(0)),None,None,Vector(),Set())))", + "Vector()", + "Vector((List(JsonArrayItem(0)),ExampleItem(List(JsonArrayItem(0)),0,[\n],Set(UnmatchedShape(List(JsonArrayItem(0)),ShapeTrail(shape_19,List(ListItemTrail(shape_19,shape_18))))))))", + "Vector((shape_10,SpecPrimitive(shape_10,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_11,SpecPrimitive(shape_11,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_12,SpecOneOf(shape_12,RenderName(List(NameComponent(,modifier,, ,Some(shape_11),Some(shape_11)), NameComponent(or ,modifier,,Some(shape_10),Some(shape_10)))),List(shape_11, shape_10),Set())), (shape_14,SpecPrimitive(shape_14,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_15,SpecArray(shape_15,shape_14,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_14),Some(shape_14)))),Set())), (shape_16,WrappedType(shape_16,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_15),None))),shape_15,Set())), (shape_17,SpecPrimitive(shape_17,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_18,SpecObject(shape_18,List(SpecField(age,parameter_4,shape_12,Set()), SpecField(colors,parameter_5,shape_16,Set()), SpecField(name,parameter_6,shape_17,Set())),Set(UnmatchedShape(List(JsonArrayItem(0)),ShapeTrail(shape_19,List(ListItemTrail(shape_19,shape_18))))))), (shape_19,SpecArray(shape_19,shape_18,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_18),Some(shape_18)))),Set(UnmatchedShape(List(JsonArrayItem(0)),ShapeTrail(shape_19,List(ListItemTrail(shape_19,shape_18))))))))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with no values.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with no values.managed.json new file mode 100644 index 0000000000..dd1f569ec4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with no values.managed.json @@ -0,0 +1,4 @@ +{ + "diffs" : [ + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with one matching, no diff.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with one matching, no diff.managed.json new file mode 100644 index 0000000000..dd1f569ec4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with one matching, no diff.managed.json @@ -0,0 +1,4 @@ +{ + "diffs" : [ + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with one matching.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with one matching.managed.json new file mode 100644 index 0000000000..dd1f569ec4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/array with object listitem is provided with one matching.managed.json @@ -0,0 +1,4 @@ +{ + "diffs" : [ + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/no diff expected for basic objects.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/no diff expected for basic objects.managed.json new file mode 100644 index 0000000000..dd1f569ec4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/no diff expected for basic objects.managed.json @@ -0,0 +1,4 @@ +{ + "diffs" : [ + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/no diff expected for nested objects.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/no diff expected for nested objects.managed.json new file mode 100644 index 0000000000..dd1f569ec4 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/no diff expected for nested objects.managed.json @@ -0,0 +1,4 @@ +{ + "diffs" : [ + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a new field is provided in an optional nested object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a new field is provided in an optional nested object.managed.json new file mode 100644 index 0000000000..47cd8dff1c --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a new field is provided in an optional nested object.managed.json @@ -0,0 +1,85 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "coordinates" + } + }, + { + "JsonObjectKey" : { + "key" : "format" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_6" + } + } + ] + } + } + } + } + }, + "title" : "'format' observed in the 200 Response body", + "suggestions" : [ + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),Some(shape_5),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long))),List(),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(format))),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(format)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(format)),$string,None,\"DMS\",Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(format)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),$string,Some(shape_3),\"37.7749° N\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),$string,Some(shape_4),\"122.4194° W\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"format\" : \"DMS\",\n \"lat\" : \"37.7749° N\",\n \"long\" : \"122.4194° W\"\n }\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \"format\" : \"DMS\",\n \"lat\" : \"37.7749° N\",\n \"long\" : \"122.4194° W\"\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,parameter_4,shape_6,{\n \"format\" : \"DMS\",\n \"lat\" : \"37.7749° N\",\n \"long\" : \"122.4194° W\"\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(format)),UnexpectedExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(format)),format,\"DMS\",Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(format)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),lat,parameter_2,shape_3,\"37.7749° N\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),long,parameter_3,shape_4,\"122.4194° W\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(format)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6))))))), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set(UnspecifiedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(format)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6)))))), SpecField(population,parameter_5,shape_7,Set())),Set())), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set())),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a required array field is an object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a required array field is an object.managed.json new file mode 100644 index 0000000000..4320a7998e --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a required array field is an object.managed.json @@ -0,0 +1,279 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "rivals" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_7" + } + } + ] + } + } + } + } + }, + "title" : "'rivals' in the 200 Response body was not a List", + "suggestions" : [ + { + "title" : "Allow field 'rivals' to be either a List or Object", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_3", + "name" : "nemesis", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_2" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_1", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_7" + } + }, + "consumingParameterId" : "parameter_1" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_1" + } + } + } + } + ] + }, + { + "title" : "Change shape to Object", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_5", + "name" : "nemesis", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_4" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_5" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(name)), List(JsonObjectKey(rivals)), List(JsonObjectKey(stats))),List(),List(),Set())), (List(JsonObjectKey(name)),ExampleObject(List(JsonObjectKey(name)),Some(shape_4),List(List(JsonObjectKey(name), JsonObjectKey(first)), List(JsonObjectKey(name), JsonObjectKey(last))),List(),List(),Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(first)),$string,Some(shape_2),\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(last)),$string,Some(shape_3),\"C\",Set())), (List(JsonObjectKey(rivals)),ExampleObject(List(JsonObjectKey(rivals)),None,List(),List(),List(List(JsonObjectKey(rivals), JsonObjectKey(nemesis))),Set())), (List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),$string,None,\"Brad\",Set())), (List(JsonObjectKey(stats)),ExampleObject(List(JsonObjectKey(stats)),Some(shape_9),List(List(JsonObjectKey(stats), JsonObjectKey(rank))),List(),List(),Set())), (List(JsonObjectKey(stats), JsonObjectKey(rank)),ExamplePrimitive(List(JsonObjectKey(stats), JsonObjectKey(rank)),$number,Some(shape_8),1,Set())))", + "Vector((List(JsonObjectKey(name)),KnownExampleField(List(JsonObjectKey(name)),name,parameter_3,shape_4,{\n \"first\" : \"Bob\",\n \"last\" : \"C\"\n},Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(first)),first,parameter_1,shape_2,\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(last)),last,parameter_2,shape_3,\"C\",Set())), (List(JsonObjectKey(rivals)),KnownExampleField(List(JsonObjectKey(rivals)),rivals,parameter_4,shape_7,{\n \"nemesis\" : \"Brad\"\n},Set(UnmatchedShape(List(JsonObjectKey(rivals)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7))))))), (List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),UnexpectedExampleField(List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),nemesis,\"Brad\",Set())), (List(JsonObjectKey(stats)),KnownExampleField(List(JsonObjectKey(stats)),stats,parameter_6,shape_9,{\n \"rank\" : 1\n},Set())), (List(JsonObjectKey(stats), JsonObjectKey(rank)),KnownExampleField(List(JsonObjectKey(stats), JsonObjectKey(rank)),rank,parameter_5,shape_8,1,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(name,parameter_3,shape_4,Set()), SpecField(rivals,parameter_4,shape_7,Set(UnmatchedShape(List(JsonObjectKey(rivals)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7)))))), SpecField(stats,parameter_6,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecObject(shape_4,List(SpecField(first,parameter_1,shape_2,Set()), SpecField(last,parameter_2,shape_3,Set())),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecArray(shape_7,shape_6,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_6),Some(shape_6)))),Set())), (shape_8,SpecPrimitive(shape_8,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_9,SpecObject(shape_9,List(SpecField(rank,parameter_5,shape_8,Set())),Set())))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "rivals" + } + }, + { + "JsonObjectKey" : { + "key" : "nemesis" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_7" + } + } + ] + } + } + } + } + }, + "title" : "'nemesis' observed in the 200 Response body", + "suggestions" : [ + { + "title" : "Set the shape", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(name)), List(JsonObjectKey(rivals)), List(JsonObjectKey(stats))),List(),List(),Set())), (List(JsonObjectKey(name)),ExampleObject(List(JsonObjectKey(name)),Some(shape_4),List(List(JsonObjectKey(name), JsonObjectKey(first)), List(JsonObjectKey(name), JsonObjectKey(last))),List(),List(),Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(first)),$string,Some(shape_2),\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(last)),$string,Some(shape_3),\"C\",Set())), (List(JsonObjectKey(rivals)),ExampleObject(List(JsonObjectKey(rivals)),None,List(),List(),List(List(JsonObjectKey(rivals), JsonObjectKey(nemesis))),Set())), (List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),$string,None,\"Brad\",Set(UnspecifiedShape(List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7))))))), (List(JsonObjectKey(stats)),ExampleObject(List(JsonObjectKey(stats)),Some(shape_9),List(List(JsonObjectKey(stats), JsonObjectKey(rank))),List(),List(),Set())), (List(JsonObjectKey(stats), JsonObjectKey(rank)),ExamplePrimitive(List(JsonObjectKey(stats), JsonObjectKey(rank)),$number,Some(shape_8),1,Set())))", + "Vector((List(JsonObjectKey(name)),KnownExampleField(List(JsonObjectKey(name)),name,parameter_3,shape_4,{\n \"first\" : \"Bob\",\n \"last\" : \"C\"\n},Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(first)),first,parameter_1,shape_2,\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(last)),last,parameter_2,shape_3,\"C\",Set())), (List(JsonObjectKey(rivals)),KnownExampleField(List(JsonObjectKey(rivals)),rivals,parameter_4,shape_7,{\n \"nemesis\" : \"Brad\"\n},Set())), (List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),UnexpectedExampleField(List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),nemesis,\"Brad\",Set())), (List(JsonObjectKey(stats)),KnownExampleField(List(JsonObjectKey(stats)),stats,parameter_6,shape_9,{\n \"rank\" : 1\n},Set())), (List(JsonObjectKey(stats), JsonObjectKey(rank)),KnownExampleField(List(JsonObjectKey(stats), JsonObjectKey(rank)),rank,parameter_5,shape_8,1,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(name,parameter_3,shape_4,Set()), SpecField(rivals,parameter_4,shape_7,Set(UnspecifiedShape(List(JsonObjectKey(rivals), JsonObjectKey(nemesis)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7)))))), SpecField(stats,parameter_6,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecObject(shape_4,List(SpecField(first,parameter_1,shape_2,Set()), SpecField(last,parameter_2,shape_3,Set())),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecArray(shape_7,shape_6,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_6),Some(shape_6)))),Set())), (shape_8,SpecPrimitive(shape_8,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_9,SpecObject(shape_9,List(SpecField(rank,parameter_5,shape_8,Set())),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a required array field of strings provided with an object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a required array field of strings provided with an object.managed.json new file mode 100644 index 0000000000..7f3438f740 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/a required array field of strings provided with an object.managed.json @@ -0,0 +1,284 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "rivals" + } + }, + { + "JsonArrayItem" : { + "index" : 0 + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_7" + } + }, + { + "ListItemTrail" : { + "listShapeId" : "shape_7", + "itemShapeId" : "shape_6" + } + } + ] + } + } + } + } + }, + "title" : "shape at index 0 in the 200 Response body was not a string", + "suggestions" : [ + { + "title" : "Allow shape at index 0 to be either a string or Object", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_3", + "name" : "food", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_2" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_1", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "parameter_1" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_1" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + }, + { + "title" : "Change shape to Object", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_5", + "name" : "food", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_4" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(name)), List(JsonObjectKey(rivals)), List(JsonObjectKey(stats))),List(),List(),Set())), (List(JsonObjectKey(name)),ExampleObject(List(JsonObjectKey(name)),Some(shape_4),List(List(JsonObjectKey(name), JsonObjectKey(first)), List(JsonObjectKey(name), JsonObjectKey(last))),List(),List(),Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(first)),$string,Some(shape_2),\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(last)),$string,Some(shape_3),\"C\",Set())), (List(JsonObjectKey(rivals)),ExampleArray(List(JsonObjectKey(rivals)),Some(shape_7),Some(shape_6),Vector(List(JsonObjectKey(rivals), JsonArrayItem(0)), List(JsonObjectKey(rivals), JsonArrayItem(1))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0)),ExampleObject(List(JsonObjectKey(rivals), JsonArrayItem(0)),None,List(),List(),List(List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),$string,None,\"rice\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExampleObject(List(JsonObjectKey(rivals), JsonArrayItem(1)),None,List(),List(),List(List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food)),$string,None,\"cookies\",Set())), (List(JsonObjectKey(stats)),ExampleObject(List(JsonObjectKey(stats)),Some(shape_9),List(List(JsonObjectKey(stats), JsonObjectKey(rank))),List(),List(),Set())), (List(JsonObjectKey(stats), JsonObjectKey(rank)),ExamplePrimitive(List(JsonObjectKey(stats), JsonObjectKey(rank)),$number,Some(shape_8),1,Set())))", + "Vector((List(JsonObjectKey(name)),KnownExampleField(List(JsonObjectKey(name)),name,parameter_3,shape_4,{\n \"first\" : \"Bob\",\n \"last\" : \"C\"\n},Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(first)),first,parameter_1,shape_2,\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(last)),last,parameter_2,shape_3,\"C\",Set())), (List(JsonObjectKey(rivals)),KnownExampleField(List(JsonObjectKey(rivals)),rivals,parameter_4,shape_7,[\n {\n \"food\" : \"rice\"\n },\n {\n \"food\" : \"cookies\"\n }\n],Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),UnexpectedExampleField(List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),food,\"rice\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food)),UnexpectedExampleField(List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food)),food,\"cookies\",Set())), (List(JsonObjectKey(stats)),KnownExampleField(List(JsonObjectKey(stats)),stats,parameter_6,shape_9,{\n \"rank\" : 1\n},Set())), (List(JsonObjectKey(stats), JsonObjectKey(rank)),KnownExampleField(List(JsonObjectKey(stats), JsonObjectKey(rank)),rank,parameter_5,shape_8,1,Set())))", + "Vector((List(JsonObjectKey(rivals), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(0)),0,{\n \"food\" : \"rice\"\n},Set(UnmatchedShape(List(JsonObjectKey(rivals), JsonArrayItem(0)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7), ListItemTrail(shape_7,shape_6))))))), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(1)),1,{\n \"food\" : \"cookies\"\n},Set())))", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(name,parameter_3,shape_4,Set()), SpecField(rivals,parameter_4,shape_7,Set()), SpecField(stats,parameter_6,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecObject(shape_4,List(SpecField(first,parameter_1,shape_2,Set()), SpecField(last,parameter_2,shape_3,Set())),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set(UnmatchedShape(List(JsonObjectKey(rivals), JsonArrayItem(0)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7), ListItemTrail(shape_7,shape_6))))))), (shape_7,SpecArray(shape_7,shape_6,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_6),Some(shape_6)))),Set(UnmatchedShape(List(JsonObjectKey(rivals), JsonArrayItem(0)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7), ListItemTrail(shape_7,shape_6))))))), (shape_8,SpecPrimitive(shape_8,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_9,SpecObject(shape_9,List(SpecField(rank,parameter_5,shape_8,Set())),Set())))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "rivals" + } + }, + { + "JsonArrayItem" : { + "index" : 0 + } + }, + { + "JsonObjectKey" : { + "key" : "food" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_7" + } + }, + { + "ListItemTrail" : { + "listShapeId" : "shape_7", + "itemShapeId" : "shape_6" + } + } + ] + } + } + } + } + }, + "title" : "'food' observed in the 200 Response body", + "suggestions" : [ + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(name)), List(JsonObjectKey(rivals)), List(JsonObjectKey(stats))),List(),List(),Set())), (List(JsonObjectKey(name)),ExampleObject(List(JsonObjectKey(name)),Some(shape_4),List(List(JsonObjectKey(name), JsonObjectKey(first)), List(JsonObjectKey(name), JsonObjectKey(last))),List(),List(),Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(first)),$string,Some(shape_2),\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),ExamplePrimitive(List(JsonObjectKey(name), JsonObjectKey(last)),$string,Some(shape_3),\"C\",Set())), (List(JsonObjectKey(rivals)),ExampleArray(List(JsonObjectKey(rivals)),Some(shape_7),Some(shape_6),Vector(List(JsonObjectKey(rivals), JsonArrayItem(0)), List(JsonObjectKey(rivals), JsonArrayItem(1))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0)),ExampleObject(List(JsonObjectKey(rivals), JsonArrayItem(0)),None,List(),List(),List(List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),$string,None,\"rice\",Set(UnspecifiedShape(List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7), ListItemTrail(shape_7,shape_6))))))), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExampleObject(List(JsonObjectKey(rivals), JsonArrayItem(1)),None,List(),List(),List(List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food))),Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food)),ExamplePrimitive(List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food)),$string,None,\"cookies\",Set())), (List(JsonObjectKey(stats)),ExampleObject(List(JsonObjectKey(stats)),Some(shape_9),List(List(JsonObjectKey(stats), JsonObjectKey(rank))),List(),List(),Set())), (List(JsonObjectKey(stats), JsonObjectKey(rank)),ExamplePrimitive(List(JsonObjectKey(stats), JsonObjectKey(rank)),$number,Some(shape_8),1,Set())))", + "Vector((List(JsonObjectKey(name)),KnownExampleField(List(JsonObjectKey(name)),name,parameter_3,shape_4,{\n \"first\" : \"Bob\",\n \"last\" : \"C\"\n},Set())), (List(JsonObjectKey(name), JsonObjectKey(first)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(first)),first,parameter_1,shape_2,\"Bob\",Set())), (List(JsonObjectKey(name), JsonObjectKey(last)),KnownExampleField(List(JsonObjectKey(name), JsonObjectKey(last)),last,parameter_2,shape_3,\"C\",Set())), (List(JsonObjectKey(rivals)),KnownExampleField(List(JsonObjectKey(rivals)),rivals,parameter_4,shape_7,[\n {\n \"food\" : \"rice\"\n },\n {\n \"food\" : \"cookies\"\n }\n],Set())), (List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),UnexpectedExampleField(List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),food,\"rice\",Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food)),UnexpectedExampleField(List(JsonObjectKey(rivals), JsonArrayItem(1), JsonObjectKey(food)),food,\"cookies\",Set())), (List(JsonObjectKey(stats)),KnownExampleField(List(JsonObjectKey(stats)),stats,parameter_6,shape_9,{\n \"rank\" : 1\n},Set())), (List(JsonObjectKey(stats), JsonObjectKey(rank)),KnownExampleField(List(JsonObjectKey(stats), JsonObjectKey(rank)),rank,parameter_5,shape_8,1,Set())))", + "Vector((List(JsonObjectKey(rivals), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(0)),0,{\n \"food\" : \"rice\"\n},Set())), (List(JsonObjectKey(rivals), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(rivals), JsonArrayItem(1)),1,{\n \"food\" : \"cookies\"\n},Set())))", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(name,parameter_3,shape_4,Set()), SpecField(rivals,parameter_4,shape_7,Set()), SpecField(stats,parameter_6,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecObject(shape_4,List(SpecField(first,parameter_1,shape_2,Set()), SpecField(last,parameter_2,shape_3,Set())),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set(UnspecifiedShape(List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7), ListItemTrail(shape_7,shape_6))))))), (shape_7,SpecArray(shape_7,shape_6,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_6),Some(shape_6)))),Set(UnspecifiedShape(List(JsonObjectKey(rivals), JsonArrayItem(0), JsonObjectKey(food)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_4,shape_7), ListItemTrail(shape_7,shape_6))))))), (shape_8,SpecPrimitive(shape_8,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_9,SpecObject(shape_9,List(SpecField(rank,parameter_5,shape_8,Set())),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/an extra field is provided as an object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/an extra field is provided as an object.managed.json new file mode 100644 index 0000000000..1b6e2e66db --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/an extra field is provided as an object.managed.json @@ -0,0 +1,273 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "favoriteColor" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_8", + "path" : [ + ] + } + } + } + } + }, + "title" : "'favoriteColor' observed in the 200 Response body", + "suggestions" : [ + { + "title" : "Add favoriteColor", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_3", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_1" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3", + "name" : "second", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_2" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_8", + "name" : "favoriteColor", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_3" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_8),List(List(JsonObjectKey(age)), List(JsonObjectKey(cities)), List(JsonObjectKey(firstName)), List(JsonObjectKey(lastName))),List(),List(List(JsonObjectKey(favoriteColor))),Set())), (List(JsonObjectKey(age)),ExamplePrimitive(List(JsonObjectKey(age)),$number,Some(shape_2),26,Set())), (List(JsonObjectKey(cities)),ExampleArray(List(JsonObjectKey(cities)),Some(shape_5),Some(shape_4),Vector(List(JsonObjectKey(cities), JsonArrayItem(0)), List(JsonObjectKey(cities), JsonArrayItem(1)), List(JsonObjectKey(cities), JsonArrayItem(2))),Set())), (List(JsonObjectKey(cities), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(0)),$string,Some(shape_4),\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(1)),$string,Some(shape_4),\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(2)),$string,Some(shape_4),\"Durham\",Set())), (List(JsonObjectKey(favoriteColor)),ExampleObject(List(JsonObjectKey(favoriteColor)),None,List(),List(),List(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)), List(JsonObjectKey(favoriteColor), JsonObjectKey(second))),Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),$string,None,\"orange\",Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),ExamplePrimitive(List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),$string,None,\"red\",Set())), (List(JsonObjectKey(firstName)),ExamplePrimitive(List(JsonObjectKey(firstName)),$string,Some(shape_6),\"Aidan\",Set())), (List(JsonObjectKey(lastName)),ExamplePrimitive(List(JsonObjectKey(lastName)),$string,Some(shape_7),\"C\",Set())))", + "Vector((List(JsonObjectKey(age)),KnownExampleField(List(JsonObjectKey(age)),age,parameter_1,shape_2,26,Set())), (List(JsonObjectKey(cities)),KnownExampleField(List(JsonObjectKey(cities)),cities,parameter_2,shape_5,[\n \"San Fransisco\",\n \"New York\",\n \"Durham\"\n],Set())), (List(JsonObjectKey(favoriteColor)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor)),favoriteColor,{\n \"first\" : \"orange\",\n \"second\" : \"red\"\n},Set(UnspecifiedShape(List(JsonObjectKey(favoriteColor)),ShapeTrail(shape_8,List()))))), (List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),first,\"orange\",Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),second,\"red\",Set())), (List(JsonObjectKey(firstName)),KnownExampleField(List(JsonObjectKey(firstName)),firstName,parameter_3,shape_6,\"Aidan\",Set())), (List(JsonObjectKey(lastName)),KnownExampleField(List(JsonObjectKey(lastName)),lastName,parameter_4,shape_7,\"C\",Set())))", + "Vector((List(JsonObjectKey(cities), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(0)),0,\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(1)),1,\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(2)),2,\"Durham\",Set())))", + "Vector((shape_2,SpecPrimitive(shape_2,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecArray(shape_5,shape_4,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_4),Some(shape_4)))),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecPrimitive(shape_7,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(age,parameter_1,shape_2,Set()), SpecField(cities,parameter_2,shape_5,Set()), SpecField(firstName,parameter_3,shape_6,Set()), SpecField(lastName,parameter_4,shape_7,Set())),Set(UnspecifiedShape(List(JsonObjectKey(favoriteColor)),ShapeTrail(shape_8,List()))))))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "favoriteColor" + } + }, + { + "JsonObjectKey" : { + "key" : "first" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_8", + "path" : [ + ] + } + } + } + } + }, + "title" : "'first' observed in the 200 Response body", + "suggestions" : [ + { + "title" : "Add first", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "first", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_4" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_8),List(List(JsonObjectKey(age)), List(JsonObjectKey(cities)), List(JsonObjectKey(firstName)), List(JsonObjectKey(lastName))),List(),List(List(JsonObjectKey(favoriteColor))),Set())), (List(JsonObjectKey(age)),ExamplePrimitive(List(JsonObjectKey(age)),$number,Some(shape_2),26,Set())), (List(JsonObjectKey(cities)),ExampleArray(List(JsonObjectKey(cities)),Some(shape_5),Some(shape_4),Vector(List(JsonObjectKey(cities), JsonArrayItem(0)), List(JsonObjectKey(cities), JsonArrayItem(1)), List(JsonObjectKey(cities), JsonArrayItem(2))),Set())), (List(JsonObjectKey(cities), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(0)),$string,Some(shape_4),\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(1)),$string,Some(shape_4),\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(2)),$string,Some(shape_4),\"Durham\",Set())), (List(JsonObjectKey(favoriteColor)),ExampleObject(List(JsonObjectKey(favoriteColor)),None,List(),List(),List(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)), List(JsonObjectKey(favoriteColor), JsonObjectKey(second))),Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),$string,None,\"orange\",Set(UnspecifiedShape(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),ShapeTrail(shape_8,List()))))), (List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),ExamplePrimitive(List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),$string,None,\"red\",Set())), (List(JsonObjectKey(firstName)),ExamplePrimitive(List(JsonObjectKey(firstName)),$string,Some(shape_6),\"Aidan\",Set())), (List(JsonObjectKey(lastName)),ExamplePrimitive(List(JsonObjectKey(lastName)),$string,Some(shape_7),\"C\",Set())))", + "Vector((List(JsonObjectKey(age)),KnownExampleField(List(JsonObjectKey(age)),age,parameter_1,shape_2,26,Set())), (List(JsonObjectKey(cities)),KnownExampleField(List(JsonObjectKey(cities)),cities,parameter_2,shape_5,[\n \"San Fransisco\",\n \"New York\",\n \"Durham\"\n],Set())), (List(JsonObjectKey(favoriteColor)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor)),favoriteColor,{\n \"first\" : \"orange\",\n \"second\" : \"red\"\n},Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),first,\"orange\",Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),second,\"red\",Set())), (List(JsonObjectKey(firstName)),KnownExampleField(List(JsonObjectKey(firstName)),firstName,parameter_3,shape_6,\"Aidan\",Set())), (List(JsonObjectKey(lastName)),KnownExampleField(List(JsonObjectKey(lastName)),lastName,parameter_4,shape_7,\"C\",Set())))", + "Vector((List(JsonObjectKey(cities), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(0)),0,\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(1)),1,\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(2)),2,\"Durham\",Set())))", + "Vector((shape_2,SpecPrimitive(shape_2,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecArray(shape_5,shape_4,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_4),Some(shape_4)))),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecPrimitive(shape_7,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(age,parameter_1,shape_2,Set()), SpecField(cities,parameter_2,shape_5,Set()), SpecField(firstName,parameter_3,shape_6,Set()), SpecField(lastName,parameter_4,shape_7,Set())),Set(UnspecifiedShape(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),ShapeTrail(shape_8,List()))))))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "favoriteColor" + } + }, + { + "JsonObjectKey" : { + "key" : "second" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_8", + "path" : [ + ] + } + } + } + } + }, + "title" : "'second' observed in the 200 Response body", + "suggestions" : [ + { + "title" : "Add second", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_5", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "second", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_5" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_8),List(List(JsonObjectKey(age)), List(JsonObjectKey(cities)), List(JsonObjectKey(firstName)), List(JsonObjectKey(lastName))),List(),List(List(JsonObjectKey(favoriteColor))),Set())), (List(JsonObjectKey(age)),ExamplePrimitive(List(JsonObjectKey(age)),$number,Some(shape_2),26,Set())), (List(JsonObjectKey(cities)),ExampleArray(List(JsonObjectKey(cities)),Some(shape_5),Some(shape_4),Vector(List(JsonObjectKey(cities), JsonArrayItem(0)), List(JsonObjectKey(cities), JsonArrayItem(1)), List(JsonObjectKey(cities), JsonArrayItem(2))),Set())), (List(JsonObjectKey(cities), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(0)),$string,Some(shape_4),\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(1)),$string,Some(shape_4),\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(2)),$string,Some(shape_4),\"Durham\",Set())), (List(JsonObjectKey(favoriteColor)),ExampleObject(List(JsonObjectKey(favoriteColor)),None,List(),List(),List(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)), List(JsonObjectKey(favoriteColor), JsonObjectKey(second))),Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),ExamplePrimitive(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),$string,None,\"orange\",Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),ExamplePrimitive(List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),$string,None,\"red\",Set(UnspecifiedShape(List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),ShapeTrail(shape_8,List()))))), (List(JsonObjectKey(firstName)),ExamplePrimitive(List(JsonObjectKey(firstName)),$string,Some(shape_6),\"Aidan\",Set())), (List(JsonObjectKey(lastName)),ExamplePrimitive(List(JsonObjectKey(lastName)),$string,Some(shape_7),\"C\",Set())))", + "Vector((List(JsonObjectKey(age)),KnownExampleField(List(JsonObjectKey(age)),age,parameter_1,shape_2,26,Set())), (List(JsonObjectKey(cities)),KnownExampleField(List(JsonObjectKey(cities)),cities,parameter_2,shape_5,[\n \"San Fransisco\",\n \"New York\",\n \"Durham\"\n],Set())), (List(JsonObjectKey(favoriteColor)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor)),favoriteColor,{\n \"first\" : \"orange\",\n \"second\" : \"red\"\n},Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor), JsonObjectKey(first)),first,\"orange\",Set())), (List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),UnexpectedExampleField(List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),second,\"red\",Set())), (List(JsonObjectKey(firstName)),KnownExampleField(List(JsonObjectKey(firstName)),firstName,parameter_3,shape_6,\"Aidan\",Set())), (List(JsonObjectKey(lastName)),KnownExampleField(List(JsonObjectKey(lastName)),lastName,parameter_4,shape_7,\"C\",Set())))", + "Vector((List(JsonObjectKey(cities), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(0)),0,\"San Fransisco\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(1)),1,\"New York\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(2)),2,\"Durham\",Set())))", + "Vector((shape_2,SpecPrimitive(shape_2,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecArray(shape_5,shape_4,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_4),Some(shape_4)))),Set())), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecPrimitive(shape_7,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(age,parameter_1,shape_2,Set()), SpecField(cities,parameter_2,shape_5,Set()), SpecField(firstName,parameter_3,shape_6,Set()), SpecField(lastName,parameter_4,shape_7,Set())),Set(UnspecifiedShape(List(JsonObjectKey(favoriteColor), JsonObjectKey(second)),ShapeTrail(shape_8,List()))))))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/field is array of strings, and 1 item does not match expected type.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/field is array of strings, and 1 item does not match expected type.managed.json new file mode 100644 index 0000000000..01454e6f0f --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/field is array of strings, and 1 item does not match expected type.managed.json @@ -0,0 +1,174 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "cities" + } + }, + { + "JsonArrayItem" : { + "index" : 0 + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_8", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_2", + "fieldShapeId" : "shape_5" + } + }, + { + "ListItemTrail" : { + "listShapeId" : "shape_5", + "itemShapeId" : "shape_4" + } + } + ] + } + } + } + } + }, + "title" : "shape at index 0 in the 200 Response body was not a string", + "suggestions" : [ + { + "title" : "Allow shape at index 0 to be either a string or String", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_1", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "parameter_1" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_1" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + }, + { + "title" : "Change shape to String", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_8),List(List(JsonObjectKey(age)), List(JsonObjectKey(cities)), List(JsonObjectKey(firstName)), List(JsonObjectKey(lastName))),List(),List(),Set())), (List(JsonObjectKey(age)),ExamplePrimitive(List(JsonObjectKey(age)),$number,Some(shape_2),26,Set())), (List(JsonObjectKey(cities)),ExampleArray(List(JsonObjectKey(cities)),Some(shape_5),Some(shape_4),Vector(List(JsonObjectKey(cities), JsonArrayItem(0)), List(JsonObjectKey(cities), JsonArrayItem(1)), List(JsonObjectKey(cities), JsonArrayItem(2))),Set())), (List(JsonObjectKey(cities), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(0)),$string,Some(shape_4),\"San Fransisco\",Set(UnmatchedShape(List(JsonObjectKey(cities), JsonArrayItem(0)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_2,shape_5), ListItemTrail(shape_5,shape_4))))))), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(1)),$number,None,17584,Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(2)),$string,Some(shape_4),\"Boston\",Set())), (List(JsonObjectKey(firstName)),ExamplePrimitive(List(JsonObjectKey(firstName)),$string,Some(shape_6),\"Aidan\",Set())), (List(JsonObjectKey(lastName)),ExamplePrimitive(List(JsonObjectKey(lastName)),$string,Some(shape_7),\"C\",Set())))", + "Vector((List(JsonObjectKey(age)),KnownExampleField(List(JsonObjectKey(age)),age,parameter_1,shape_2,26,Set())), (List(JsonObjectKey(cities)),KnownExampleField(List(JsonObjectKey(cities)),cities,parameter_2,shape_5,[\n \"San Fransisco\",\n 17584,\n \"Boston\"\n],Set())), (List(JsonObjectKey(firstName)),KnownExampleField(List(JsonObjectKey(firstName)),firstName,parameter_3,shape_6,\"Aidan\",Set())), (List(JsonObjectKey(lastName)),KnownExampleField(List(JsonObjectKey(lastName)),lastName,parameter_4,shape_7,\"C\",Set())))", + "Vector((List(JsonObjectKey(cities), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(0)),0,\"San Fransisco\",Set(UnmatchedShape(List(JsonObjectKey(cities), JsonArrayItem(0)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_2,shape_5), ListItemTrail(shape_5,shape_4))))))), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(1)),1,17584,Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(2)),2,\"Boston\",Set())))", + "Vector((shape_2,SpecPrimitive(shape_2,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set(UnmatchedShape(List(JsonObjectKey(cities), JsonArrayItem(0)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_2,shape_5), ListItemTrail(shape_5,shape_4))))))), (shape_5,SpecArray(shape_5,shape_4,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_4),Some(shape_4)))),Set(UnmatchedShape(List(JsonObjectKey(cities), JsonArrayItem(0)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_2,shape_5), ListItemTrail(shape_5,shape_4))))))), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecPrimitive(shape_7,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(age,parameter_1,shape_2,Set()), SpecField(cities,parameter_2,shape_5,Set()), SpecField(firstName,parameter_3,shape_6,Set()), SpecField(lastName,parameter_4,shape_7,Set())),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/field is array of strings, and > 1 items does not match expected type.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/field is array of strings, and > 1 items does not match expected type.managed.json new file mode 100644 index 0000000000..ce76c6fdde --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/field is array of strings, and > 1 items does not match expected type.managed.json @@ -0,0 +1,174 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "cities" + } + }, + { + "JsonArrayItem" : { + "index" : 0 + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_8", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_2", + "fieldShapeId" : "shape_5" + } + }, + { + "ListItemTrail" : { + "listShapeId" : "shape_5", + "itemShapeId" : "shape_4" + } + } + ] + } + } + } + } + }, + "title" : "shape at index 0 in the 200 Response body was not a string", + "suggestions" : [ + { + "title" : "Allow shape at index 0 to be either a string or String", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_1", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "parameter_1" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_1" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + }, + { + "title" : "Change shape to String", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_8),List(List(JsonObjectKey(age)), List(JsonObjectKey(cities)), List(JsonObjectKey(firstName)), List(JsonObjectKey(lastName))),List(),List(),Set())), (List(JsonObjectKey(age)),ExamplePrimitive(List(JsonObjectKey(age)),$number,Some(shape_2),26,Set())), (List(JsonObjectKey(cities)),ExampleArray(List(JsonObjectKey(cities)),Some(shape_5),Some(shape_4),Vector(List(JsonObjectKey(cities), JsonArrayItem(0)), List(JsonObjectKey(cities), JsonArrayItem(1)), List(JsonObjectKey(cities), JsonArrayItem(2)), List(JsonObjectKey(cities), JsonArrayItem(3)), List(JsonObjectKey(cities), JsonArrayItem(4))),Set())), (List(JsonObjectKey(cities), JsonArrayItem(0)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(0)),$string,Some(shape_4),\"San Fransisco\",Set(UnmatchedShape(List(JsonObjectKey(cities), JsonArrayItem(0)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_2,shape_5), ListItemTrail(shape_5,shape_4))))))), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(1)),$number,None,17584,Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(2)),$string,Some(shape_4),\"Boston\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(3)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(3)),$number,None,16573,Set())), (List(JsonObjectKey(cities), JsonArrayItem(4)),ExamplePrimitive(List(JsonObjectKey(cities), JsonArrayItem(4)),$string,Some(shape_4),\"Chicago\",Set())), (List(JsonObjectKey(firstName)),ExamplePrimitive(List(JsonObjectKey(firstName)),$string,Some(shape_6),\"Aidan\",Set())), (List(JsonObjectKey(lastName)),ExamplePrimitive(List(JsonObjectKey(lastName)),$string,Some(shape_7),\"C\",Set())))", + "Vector((List(JsonObjectKey(age)),KnownExampleField(List(JsonObjectKey(age)),age,parameter_1,shape_2,26,Set())), (List(JsonObjectKey(cities)),KnownExampleField(List(JsonObjectKey(cities)),cities,parameter_2,shape_5,[\n \"San Fransisco\",\n 17584,\n \"Boston\",\n 16573,\n \"Chicago\"\n],Set())), (List(JsonObjectKey(firstName)),KnownExampleField(List(JsonObjectKey(firstName)),firstName,parameter_3,shape_6,\"Aidan\",Set())), (List(JsonObjectKey(lastName)),KnownExampleField(List(JsonObjectKey(lastName)),lastName,parameter_4,shape_7,\"C\",Set())))", + "Vector((List(JsonObjectKey(cities), JsonArrayItem(0)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(0)),0,\"San Fransisco\",Set(UnmatchedShape(List(JsonObjectKey(cities), JsonArrayItem(0)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_2,shape_5), ListItemTrail(shape_5,shape_4))))))), (List(JsonObjectKey(cities), JsonArrayItem(1)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(1)),1,17584,Set())), (List(JsonObjectKey(cities), JsonArrayItem(2)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(2)),2,\"Boston\",Set())), (List(JsonObjectKey(cities), JsonArrayItem(3)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(3)),3,16573,Set())), (List(JsonObjectKey(cities), JsonArrayItem(4)),ExampleItem(List(JsonObjectKey(cities), JsonArrayItem(4)),4,\"Chicago\",Set())))", + "Vector((shape_2,SpecPrimitive(shape_2,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set(UnmatchedShape(List(JsonObjectKey(cities), JsonArrayItem(0)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_2,shape_5), ListItemTrail(shape_5,shape_4))))))), (shape_5,SpecArray(shape_5,shape_4,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_4),Some(shape_4)))),Set(UnmatchedShape(List(JsonObjectKey(cities), JsonArrayItem(0)),ShapeTrail(shape_8,List(ObjectFieldTrail(parameter_2,shape_5), ListItemTrail(shape_5,shape_4))))))), (shape_6,SpecPrimitive(shape_6,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_7,SpecPrimitive(shape_7,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(age,parameter_1,shape_2,Set()), SpecField(cities,parameter_2,shape_5,Set()), SpecField(firstName,parameter_3,shape_6,Set()), SpecField(lastName,parameter_4,shape_7,Set())),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/root array is provided with object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/root array is provided with object.managed.json new file mode 100644 index 0000000000..8f2efafdeb --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/pending/root array is provided with object.managed.json @@ -0,0 +1,228 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_3", + "path" : [ + ] + } + } + } + } + }, + "title" : "shape in the 200 Response body was not a List", + "suggestions" : [ + { + "title" : "Allow shape to be either a or Object", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_3", + "name" : "foo", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_2" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_1", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_1", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + } + ] + }, + { + "title" : "Change shape to Object", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_5", + "name" : "foo", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_4" + } + } + } + }, + { + "SetBaseShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "shape_5" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),None,List(),List(),List(List(JsonObjectKey(foo))),Set())), (List(JsonObjectKey(foo)),ExamplePrimitive(List(JsonObjectKey(foo)),$string,None,\"bar\",Set())))", + "Vector((List(JsonObjectKey(foo)),UnexpectedExampleField(List(JsonObjectKey(foo)),foo,\"bar\",Set())))", + "Vector()", + "Vector((shape_2,SpecPrimitive(shape_2,$unknown,RenderName(List()),Set())), (shape_3,SpecArray(shape_3,shape_2,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_2),Some(shape_2)))),Set())))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnspecifiedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "foo" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_3", + "path" : [ + ] + } + } + } + } + }, + "title" : "'foo' observed in the 200 Response body", + "suggestions" : [ + { + "title" : "Set the shape", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_6", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),None,List(),List(),List(List(JsonObjectKey(foo))),Set())), (List(JsonObjectKey(foo)),ExamplePrimitive(List(JsonObjectKey(foo)),$string,None,\"bar\",Set(UnspecifiedShape(List(JsonObjectKey(foo)),ShapeTrail(shape_3,List()))))))", + "Vector((List(JsonObjectKey(foo)),UnexpectedExampleField(List(JsonObjectKey(foo)),foo,\"bar\",Set())))", + "Vector()", + "Vector((shape_2,SpecPrimitive(shape_2,$unknown,RenderName(List()),Set())), (shape_3,SpecArray(shape_3,shape_2,RenderName(List(NameComponent(List of ,ListColor,,Some(shape_2),Some(shape_2)))),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/required fields are omitted in an optional object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/required fields are omitted in an optional object.managed.json new file mode 100644 index 0000000000..33878e66b5 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/required fields are omitted in an optional object.managed.json @@ -0,0 +1,292 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "coordinates" + } + }, + { + "JsonObjectKey" : { + "key" : "lat" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_6" + } + }, + { + "OptionalTrail" : { + + } + }, + { + "OptionalItemTrail" : { + "innerShapeId" : "shape_5" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_2", + "fieldShapeId" : "shape_3" + } + } + ] + } + } + } + } + }, + "title" : "'lat' in the 200 Response body is missing", + "suggestions" : [ + { + "title" : "Make field 'lat' optional", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_1" + } + } + } + } + ] + }, + { + "title" : "Remove field 'lat'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_2" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),Some(shape_5),List(),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long))),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \n }\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,parameter_4,shape_6,{\n \n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),lat,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),shape_3,Set(UnmatchedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6), OptionalTrail(), OptionalItemTrail(shape_5), ObjectFieldTrail(parameter_2,shape_3))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),long,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),shape_4,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set())), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set()), SpecField(population,parameter_5,shape_7,Set())),Set())), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set())),Set())))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "coordinates" + } + }, + { + "JsonObjectKey" : { + "key" : "long" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_6" + } + }, + { + "OptionalTrail" : { + + } + }, + { + "OptionalItemTrail" : { + "innerShapeId" : "shape_5" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_3", + "fieldShapeId" : "shape_4" + } + } + ] + } + } + } + } + }, + "title" : "'long' in the 200 Response body is missing", + "suggestions" : [ + { + "title" : "Make field 'long' optional", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_2", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_2" + } + } + } + } + ] + }, + { + "title" : "Remove field 'long'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_3" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),Some(shape_5),List(),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long))),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \n }\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,parameter_4,shape_6,{\n \n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),lat,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),shape_3,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),long,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),shape_4,Set(UnmatchedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6), OptionalTrail(), OptionalItemTrail(shape_5), ObjectFieldTrail(parameter_3,shape_4))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set())), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set()), SpecField(population,parameter_5,shape_7,Set())),Set())), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set())),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/when keys are omitted in an optional object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/when keys are omitted in an optional object.managed.json new file mode 100644 index 0000000000..33878e66b5 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/outputs/when keys are omitted in an optional object.managed.json @@ -0,0 +1,292 @@ +{ + "diffs" : [ + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "coordinates" + } + }, + { + "JsonObjectKey" : { + "key" : "lat" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_6" + } + }, + { + "OptionalTrail" : { + + } + }, + { + "OptionalItemTrail" : { + "innerShapeId" : "shape_5" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_2", + "fieldShapeId" : "shape_3" + } + } + ] + } + } + } + } + }, + "title" : "'lat' in the 200 Response body is missing", + "suggestions" : [ + { + "title" : "Make field 'lat' optional", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_1" + } + } + } + } + ] + }, + { + "title" : "Remove field 'lat'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_2" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),Some(shape_5),List(),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long))),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \n }\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,parameter_4,shape_6,{\n \n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),lat,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),shape_3,Set(UnmatchedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6), OptionalTrail(), OptionalItemTrail(shape_5), ObjectFieldTrail(parameter_2,shape_3))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),long,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),shape_4,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set())), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set()), SpecField(population,parameter_5,shape_7,Set())),Set())), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set())),Set())))" + ] + }, + { + "diff" : { + "UnmatchedResponseBodyShape" : { + "interactionTrail" : { + "path" : [ + { + "ResponseBody" : { + "contentType" : "application/json", + "statusCode" : 200 + } + } + ] + }, + "requestsTrail" : { + "SpecResponseBody" : { + "responseId" : "response_1" + } + }, + "shapeDiffResult" : { + "UnmatchedShape" : { + "jsonTrail" : { + "path" : [ + { + "JsonObjectKey" : { + "key" : "location" + } + }, + { + "JsonObjectKey" : { + "key" : "principality" + } + }, + { + "JsonObjectKey" : { + "key" : "coordinates" + } + }, + { + "JsonObjectKey" : { + "key" : "long" + } + } + ] + }, + "shapeTrail" : { + "rootShapeId" : "shape_10", + "path" : [ + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_7", + "fieldShapeId" : "shape_9" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_6", + "fieldShapeId" : "shape_8" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_4", + "fieldShapeId" : "shape_6" + } + }, + { + "OptionalTrail" : { + + } + }, + { + "OptionalItemTrail" : { + "innerShapeId" : "shape_5" + } + }, + { + "ObjectFieldTrail" : { + "fieldId" : "parameter_3", + "fieldShapeId" : "shape_4" + } + } + ] + } + } + } + } + }, + "title" : "'long' in the 200 Response body is missing", + "suggestions" : [ + { + "title" : "Make field 'long' optional", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_2", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetFieldShape" : { + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_2" + } + } + } + } + ] + }, + { + "title" : "Remove field 'long'", + "commandsJson" : [ + { + "RemoveField" : { + "fieldId" : "parameter_3" + } + } + ] + } + ], + "preview" : [ + "Vector((List(),ExampleObject(List(),Some(shape_10),List(List(JsonObjectKey(location))),List(),List(),Set())), (List(JsonObjectKey(location)),ExampleObject(List(JsonObjectKey(location)),Some(shape_9),List(List(JsonObjectKey(location), JsonObjectKey(principality))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality)),Some(shape_8),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population))),List(),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),$string,Some(shape_2),\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),ExampleObject(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),Some(shape_5),List(),List(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)), List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long))),List(),Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),ExamplePrimitive(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),$number,Some(shape_7),830000,Set())))", + "Vector((List(JsonObjectKey(location)),KnownExampleField(List(JsonObjectKey(location)),location,parameter_7,shape_9,{\n \"principality\" : {\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \n }\n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality)),principality,parameter_6,shape_8,{\n \"city\" : \"San Fransisco\",\n \"population\" : 830000,\n \"coordinates\" : {\n \n }\n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(city)),city,parameter_1,shape_2,\"San Fransisco\",Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates)),coordinates,parameter_4,shape_6,{\n \n},Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),lat,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(lat)),shape_3,Set())), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),MissingExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),long,List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),shape_4,Set(UnmatchedShape(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(coordinates), JsonObjectKey(long)),ShapeTrail(shape_10,List(ObjectFieldTrail(parameter_7,shape_9), ObjectFieldTrail(parameter_6,shape_8), ObjectFieldTrail(parameter_4,shape_6), OptionalTrail(), OptionalItemTrail(shape_5), ObjectFieldTrail(parameter_3,shape_4))))))), (List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),KnownExampleField(List(JsonObjectKey(location), JsonObjectKey(principality), JsonObjectKey(population)),population,parameter_5,shape_7,830000,Set())))", + "Vector()", + "Vector((shape_10,SpecObject(shape_10,List(SpecField(location,parameter_7,shape_9,Set())),Set())), (shape_2,SpecPrimitive(shape_2,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_3,SpecPrimitive(shape_3,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_4,SpecPrimitive(shape_4,$string,RenderName(List(NameComponent(String,StringColor,,None,None))),Set())), (shape_5,SpecObject(shape_5,List(SpecField(lat,parameter_2,shape_3,Set()), SpecField(long,parameter_3,shape_4,Set())),Set())), (shape_6,WrappedType(shape_6,$optional,RenderName(List(NameComponent(,modifier, (optional),Some(shape_5),None))),shape_5,Set())), (shape_7,SpecPrimitive(shape_7,$number,RenderName(List(NameComponent(Number,NumberColor,,None,None))),Set())), (shape_8,SpecObject(shape_8,List(SpecField(city,parameter_1,shape_2,Set()), SpecField(coordinates,parameter_4,shape_6,Set()), SpecField(population,parameter_5,shape_7,Set())),Set())), (shape_9,SpecObject(shape_9,List(SpecField(principality,parameter_6,shape_8,Set())),Set())))" + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/required fields are omitted in an optional object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/required fields are omitted in an optional object.managed.json new file mode 100644 index 0000000000..8227819e63 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/required fields are omitted in an optional object.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{}}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{}}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/root array is provided with object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/root array is provided with object.managed.json new file mode 100644 index 0000000000..e1221953ae --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/root array is provided with object.managed.json @@ -0,0 +1,214 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "events", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_1", + "parameterDescriptor" : { + "shapeId" : "shape_4", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_1", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$unknown", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$list", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "$listItem" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_3", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/events", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"foo\":\"bar\"}", + "asText" : "{\"foo\":\"bar\"}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/when keys are omitted in an optional object.managed.json b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/when keys are omitted in an optional object.managed.json new file mode 100644 index 0000000000..8227819e63 --- /dev/null +++ b/core/domain-snapshots/events-interactions-diff-interpretation-ui-render/when keys are omitted in an optional object.managed.json @@ -0,0 +1,512 @@ +{ + "events" : [ + { + "PathComponentAdded" : { + "pathId" : "path_1", + "parentPathId" : "root", + "name" : "locations", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "PathParameterAdded" : { + "pathId" : "path_2", + "parentPathId" : "path_1", + "name" : ":city", + "eventContext" : null + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_11", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : null + } + }, + { + "PathParameterShapeSet" : { + "pathId" : "path_2", + "shapeDescriptor" : { + "shapeId" : "shape_11", + "isRemoved" : false + }, + "eventContext" : null + } + }, + { + "RequestParameterAddedByPathAndMethod" : { + "parameterId" : "parameter_8", + "pathId" : "path_2", + "httpMethod" : "GET", + "parameterLocation" : "query", + "name" : "queryString", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_12", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestParameterShapeSet" : { + "parameterId" : "parameter_8", + "parameterDescriptor" : { + "shapeId" : "shape_12", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "RequestAdded" : { + "requestId" : "request_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseAddedByPathAndMethod" : { + "responseId" : "response_1", + "pathId" : "path_2", + "httpMethod" : "GET", + "httpStatusCode" : 200, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_10", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_9", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_8", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_8", + "name" : "city", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_3", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_3" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_6", + "baseShapeId" : "$optional", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_8", + "name" : "coordinates", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_4", + "shapeId" : "shape_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "shape_7", + "baseShapeId" : "$number", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_8", + "name" : "population", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_5", + "shapeId" : "shape_7" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_9", + "name" : "principality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_6", + "shapeId" : "shape_8" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_10", + "name" : "location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_7", + "shapeId" : "shape_9" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeParameterShapeSet" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_4", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "$optionalInner" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ResponseBodySet" : { + "responseId" : "response_1", + "bodyDescriptor" : { + "httpContentType" : "application/json", + "shapeId" : "shape_10", + "isRemoved" : false + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } + ], + "interpretations" : [ + { + "uuid" : "id", + "request" : { + "host" : "example.com", + "method" : "GET", + "path" : "/locations/sf", + "query" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : null, + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + } + } + }, + "response" : { + "statusCode" : 200, + "headers" : { + "shapeHashV1Base64" : null, + "asJsonString" : null, + "asText" : null + }, + "body" : { + "contentType" : "application/json", + "value" : { + "shapeHashV1Base64" : null, + "asJsonString" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{}}}}", + "asText" : "{\"location\":{\"principality\":{\"city\":\"San Fransisco\",\"population\":830000,\"coordinates\":{}}}}" + } + } + }, + "tags" : [ + ] + } + ] +} \ No newline at end of file diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/RenderHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/RenderHelper.scala index 4cd19d12c5..f569f13ee6 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/RenderHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/RenderHelper.scala @@ -80,6 +80,13 @@ class SideBySideRenderHelper(val exampleShapes: Map[ExampleShapeId, ExampleShape RenderShape(exampleArray.exampleArrayId, exampleArray.baseShapeId, s.getSpecShape(exampleArray.specArrayId), Seq.empty, items, Json.arr(), exampleArray.diffs) } + def toJson: Json = { + Json.fromValues(Seq( + Json.fromString(exampleShapes.toVector.sortBy(_._1).toString), + Json.fromString(exampleFields.toVector.sortBy(_._1).toString), + Json.fromString(exampleItems.toVector.sortBy(_._1).toString), + Json.fromString(specShapes.toVector.sortBy(_._1).toString))) + } } @JSExportAll @@ -169,7 +176,7 @@ case class RenderItem(exampleItemId: ExampleItemId, index: Int, exampleShape: Re case class RenderField(fieldName: String, example: Option[Json], exampleShape: Option[RenderShape], specShape: Option[RenderSpecBase], display: String, diffs: Set[DiffResult]) extends Renderable @JSExportAll -trait RenderSpecBase { +sealed trait RenderSpecBase { def baseShapeId: String def isObject = baseShapeId == ObjectKind.baseShapeId def isOptional = baseShapeId == OptionalKind.baseShapeId diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/DiffUseCasesSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/DiffUseCasesSpec.scala index 3508c0689d..8856ad9d5f 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/DiffUseCasesSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/DiffUseCasesSpec.scala @@ -1,5 +1,6 @@ package com.useoptic.end_to_end +import com.useoptic.diff.shapes.JsonTrailPathComponent.JsonObject import com.useoptic.dsa.OpticIds import com.useoptic.end_to_end.fixtures.InteractionHelpers._ import com.useoptic.end_to_end.snapshot_task.{EndEndDiffTask, TestDataHelper} @@ -9,6 +10,8 @@ import io.circe.literal._ class DiffUseCasesSpec extends EndEndDiffTask { + //////////////////////////////////////////////////////////////////////////////////// + /// Basic Objects val personInteraction = newInteraction("GET", "/users/1234/profile", 200, responseBody = json"""{ "firstName": "Aidan", "lastName": "C", "age": 26, "cities": ["San Fransisco", "New York", "Durham"]}""") @@ -19,17 +22,271 @@ class DiffUseCasesSpec extends EndEndDiffTask { interactions = Vector(personInteraction)) } + when("no diff expected for basic objects", () => EndEndDiffTask.Input(baselineEvents._1, { + Vector(personInteraction) + })) - println(baselineEvents._1) when("a known field is missing", () => EndEndDiffTask.Input(baselineEvents._1, Vector( - personInteraction.forkResponseBody(json => { - val obj = json.asObject.get.remove("firstName") - Json.fromJsonObject(obj) - }) - ))) + personInteraction.forkResponseBody(json => { + val obj = json.asObject.get.remove("firstName") + Json.fromJsonObject(obj) + }) + ))) + when("a known field is provided the wrong shape", () => EndEndDiffTask.Input(baselineEvents._1, Vector( + personInteraction.forkResponseBody(json => { + Json.fromJsonObject(json.asObject.get.add("age", Json.fromString("not a number"))) + }) + ))) + when("an extra field is provided", () => EndEndDiffTask.Input(baselineEvents._1, Vector( + personInteraction.forkResponseBody(json => { + Json.fromJsonObject(json.asObject.get.add("favoriteColor", Json.fromString("Syracuse-Orange"))) + }) + ))) + + /// there should only be one diff, "add favorite color" that creates the initial shape. + when_KNOWN_ISSUE("an extra field is provided as an object", () => EndEndDiffTask.Input(baselineEvents._1, Vector( + personInteraction.forkResponseBody(json => { + Json.fromJsonObject(json.asObject.get.add("favoriteColor", json"""{ "first": "orange", "second": "red"}""")) + }) + ))) + + //Diff is wrong, Shape at index 0 when at index 1, suggestion is either "a string or String" + when_KNOWN_ISSUE("field is array of strings, and 1 item does not match expected type", () => EndEndDiffTask.Input(baselineEvents._1, Vector( + personInteraction.forkResponseBody(json => { + Json.fromJsonObject(json.asObject.get.add("cities", Json.fromValues(Seq( + Json.fromString("San Fransisco"), + Json.fromInt(17584), + Json.fromString("Boston"), + )))) + }) + ))) + + //Diff is wrong. Shape at index 0 when at index 2 and 4, suggestion is either "a string or String" + when_KNOWN_ISSUE("field is array of strings, and > 1 items does not match expected type", () => EndEndDiffTask.Input(baselineEvents._1, Vector( + personInteraction.forkResponseBody(json => { + Json.fromJsonObject(json.asObject.get.add("cities", Json.fromValues(Seq( + Json.fromString("San Fransisco"), + Json.fromInt(17584), + Json.fromString("Boston"), + Json.fromInt(16573), + Json.fromString("Chicago"), + )))) + }) + ))) + + + //////////////////////////////////////////////////////////////////////////////////// + /// Nested Objects with Optionals + val firstCityInteraction = newInteraction("GET", "/locations/sf", 200, + responseBody = json"""{ "location": { "principality": { "city": "San Fransisco", "population": 830000 } } }""") + + val secondCityInteraction = newInteraction("GET", "/locations/sf", 200, + responseBody = json"""{ "location": { "principality": { "city": "San Fransisco", "population": 830000, "coordinates": {"lat": "37.7749° N", "long": "122.4194° W"} } } }""") + + val baselineCityEvents = { + implicit val ids = OpticIds.newDeterministicIdGenerator + new TestDataHelper("root-shape-is-object").learnBaselineEvents( + path = Vector("locations", ":city"), + interactions = Vector(firstCityInteraction, secondCityInteraction)) + } + + when("no diff expected for nested objects", () => EndEndDiffTask.Input(baselineCityEvents._1, { + Vector(firstCityInteraction, secondCityInteraction) + })) + + + + when("a new field is provided in a required nested object", () => EndEndDiffTask.Input(baselineCityEvents._1, { + Vector(firstCityInteraction.forkResponseBody(j => { + json"""{ "location": { "principality": { "motto": "Experientia Docet", "city": "San Fransisco", "population": 830000 } } }""" + })) + })) + + + // suggestions is empty, it should give you the ability to add the field + when_KNOWN_ISSUE("a new field is provided in an optional nested object", () => EndEndDiffTask.Input(baselineCityEvents._1, { + Vector(secondCityInteraction.forkResponseBody(j => { + json"""{ "location": { "principality": { "city": "San Fransisco", "population": 830000, "coordinates": {"format": "DMS", "lat": "37.7749° N", "long": "122.4194° W"} } } }""" + })) + })) + + when("a new field is provided as an empty array", () => EndEndDiffTask.Input(baselineCityEvents._1, { + Vector(secondCityInteraction.forkResponseBody(j => { + json"""{ "location": { "principality": { "city": "San Fransisco", "population": 830000, "array": [] } } }""" + })) + })) + + // diff issue, json path casting + when_KNOWN_ISSUE("a new field is provided as an array with any contents", () => EndEndDiffTask.Input(baselineCityEvents._1, { + Vector(secondCityInteraction.forkResponseBody(j => { + json"""{ "location": { "principality": { "city": "San Fransisco", "population": 830000, "array": [1,2,3] } } }""" + })) + })) + + // cannot transform diff crash! + when_KNOWN_ISSUE("a primitive type is provided to an optional object", () => EndEndDiffTask.Input(baselineCityEvents._1, { + Vector(firstCityInteraction.forkResponseBody(j => { + json"""{ "location": { "principality": { "city": "San Fransisco", "population": 830000, "coordinates": "N/A" } } }""" + })) + })) + + // cannot transform diff crash! + when_KNOWN_ISSUE("an array type is provided to an optional object", () => EndEndDiffTask.Input(baselineCityEvents._1, { + Vector(firstCityInteraction.forkResponseBody(j => { + json"""{ "location": { "principality": { "city": "San Fransisco", "population": 830000, "coordinates": [1,2,3] } } }""" + })) + })) + + // cannot transform diff crash! + when_KNOWN_ISSUE("required fields are omitted in an optional object", () => EndEndDiffTask.Input(baselineCityEvents._1, { + Vector(firstCityInteraction.forkResponseBody(j => { + json"""{ "location": { "principality": { "city": "San Fransisco", "population": 830000, "coordinates": { } } } }""" + })) + })) + + + //////////////////////////////////////////////////////////////////////////////////// + ///Optional Objects/Fields and Arrays + val personWithStats = newInteraction("GET", "/users/1234/profile", 200, + responseBody = json"""{"name":{"first":"Bob","last":"C"},"rivals":["user1","user2","user3"],"stats":{"rank":1}}""") + + val baselinePWSEvents = { + implicit val ids = OpticIds.newDeterministicIdGenerator + new TestDataHelper("root-shape-is-object-with-keys").learnBaselineEvents( + path = Vector("users", ":userId", "profile"), + interactions = Vector(personWithStats)) + } + + when("an required object field is ommitted", () => EndEndDiffTask.Input(baselinePWSEvents._1, { + Vector(personWithStats.forkResponseBody(j => { + json"""{"name":{"first":"Bob","last":"C"},"rivals":["user1","user2","user3"]}""" + })) + })) + + when("an required object field is null, suggests nullable", () => EndEndDiffTask.Input(baselinePWSEvents._1, { + Vector(personWithStats.forkResponseBody(j => { + json"""{"name":{"first":"Bob","last":"C"},"rivals":["user1","user2","user3"], "stats": null}""" + })) + })) + + when("an required object field is provided with a missing required field", () => EndEndDiffTask.Input(baselinePWSEvents._1, { + Vector(personWithStats.forkResponseBody(j => { + json"""{"name":{"first":"Bob","last":"C"},"rivals":["user1","user2","user3"], "stats": {} }""" + })) + })) + + // diff error -> JsonArrayItem issue + when_KNOWN_ISSUE("an required object field is provided with an array", () => EndEndDiffTask.Input(baselinePWSEvents._1, { + Vector(personWithStats.forkResponseBody(j => { + json"""{"name":{"first":"Bob","last":"C"},"rivals":["user1","user2","user3"], "stats": [12,34] }""" + })) + })) + + when("a required array field has no items, no diff", () => EndEndDiffTask.Input(baselinePWSEvents._1, { + Vector(personWithStats.forkResponseBody(j => { + json"""{"name":{"first":"Bob","last":"C"},"rivals":[],"stats":{"rank":1}}""" + })) + })) + + // improper diff, should allow you to change the ListItem to an object (with initial shape) or a one of, second diff "food" observed should not exist + when_KNOWN_ISSUE("a required array field of strings provided with an object", () => EndEndDiffTask.Input(baselinePWSEvents._1, { + Vector(personWithStats.forkResponseBody(j => { + json"""{"name":{"first":"Bob","last":"C"},"rivals":[{"food": "rice"}, {"food": "cookies"}],"stats":{"rank":1}}""" + })) + })) + + // improper diff + suggestions, tries to add 'nemesis' before parent set to object + when_KNOWN_ISSUE("a required array field is an object", () => EndEndDiffTask.Input(baselinePWSEvents._1, { + Vector(personWithStats.forkResponseBody(j => { + json"""{"name":{"first":"Bob","last":"C"},"rivals":{"nemesis": "Brad"},"stats":{"rank":1}}""" + })) + })) + + + //////////////////////////////////////////////////////////////////////////////////// + /// Arrays + val emptyArray = newInteraction("GET", "/events", 200, + responseBody = json"""[]""") + + val baselineArrayEvents = { + implicit val ids = OpticIds.newDeterministicIdGenerator + new TestDataHelper("root-shape-is-array").learnBaselineEvents( + path = Vector("events"), + interactions = Vector(emptyArray)) + } + + + when("array unknown is provided with no values", () => EndEndDiffTask.Input(baselineArrayEvents._1, { + Vector(emptyArray.forkResponseBody(j => { + json"""[]""" + })) + })) + + + // foo should not get a diff, only first diff (one of array or object is valid) + when_KNOWN_ISSUE("root array is provided with object", () => EndEndDiffTask.Input(baselineArrayEvents._1, { + Vector(emptyArray.forkResponseBody(j => { + json"""{"foo": "bar"}""" + })) + })) + + + when("array unknown is provided with concrete values", () => EndEndDiffTask.Input(baselineArrayEvents._1, { + Vector(emptyArray.forkResponseBody(j => { + json"""[1,2,3,4,5]""" + })) + })) + + + val objectArray = newInteraction("GET", "/people", 200, + responseBody = json"""[{"name": "joe", "age": "thirty", "colors": ["red", "green", "yellow"]}, {"name": "joe", "age": 45}]""") + + val baselineObjectArrayEvents = { + implicit val ids = OpticIds.newDeterministicIdGenerator + new TestDataHelper("root-shape-is-array").learnBaselineEvents( + path = Vector("people"), + interactions = Vector(objectArray)) + } + + when("array with object listitem is provided with no values", () => EndEndDiffTask.Input(baselineObjectArrayEvents._1, { + Vector(objectArray.forkResponseBody(j => { + json"""[]""" + })) + })) + + // diff error + when_KNOWN_ISSUE("array with object listitem is provided with one matching and one primitive", () => EndEndDiffTask.Input(baselineObjectArrayEvents._1, { + Vector(objectArray.forkResponseBody(j => { + json"""[{"name": "joe", "age": "thirty", "colors": ["red", "green", "yellow"]}, "hello"]""" + })) + })) + + + when("array with object listitem is provided with one matching, no diff", () => EndEndDiffTask.Input(baselineObjectArrayEvents._1, { + Vector(objectArray.forkResponseBody(j => { + json"""[{"name": "joe", "age": "thirty", "colors": ["red", "green", "yellow"]}]""" + })) + })) + + when("array with object listitem is provided an empty sub array", () => EndEndDiffTask.Input(baselineObjectArrayEvents._1, { + Vector(objectArray.forkResponseBody(j => { + json"""[[]]""" + })) + })) + + + //diff error! + when_KNOWN_ISSUE("array with object listitem is provided an sub array of numbers", () => EndEndDiffTask.Input(baselineObjectArrayEvents._1, { + Vector(objectArray.forkResponseBody(j => { + json"""[[1,2,3]]""" + })) + })) + + + // todo! Nullables, Unknown conversions runSuite } diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/EndEndDiffTask.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/EndEndDiffTask.scala index fd454acbde..146ad967c0 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/EndEndDiffTask.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/EndEndDiffTask.scala @@ -3,14 +3,17 @@ package com.useoptic.end_to_end.snapshot_task import com.useoptic.contexts.rfc.Commands.RfcCommand import com.useoptic.contexts.rfc.Events.RfcEvent import com.useoptic.contexts.rfc.{RfcCommandContext, RfcService, RfcServiceJSFacade} +import com.useoptic.diff.InteractiveDiffInterpretation import com.useoptic.diff.helpers.DiffHelpers -import com.useoptic.diff.interactions.InteractionDiffResult +import com.useoptic.diff.interactions.{InteractionDiffResult, ShapeRelatedDiff, UnmatchedRequestBodyContentType, UnmatchedRequestBodyShape, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseBodyShape, UnmatchedResponseStatusCode} +import com.useoptic.diff.interactions.interpretations.BasicInterpretations +import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescription, DiffDescriptionInterpreters} import com.useoptic.diff.shapes.resolvers.ShapesResolvers import com.useoptic.dsa.OpticIds -import com.useoptic.end_to_end.snapshot_task.EndEndDiffTask.{DiffOutput, Input} +import com.useoptic.end_to_end.snapshot_task.EndEndDiffTask.{DiffOutput, DiffWithDescriptionAndUX, Input, SuggestionSlim} import com.useoptic.serialization.{CommandSerialization, EventSerialization, InteractionSerialization} -import com.useoptic.types.capture.HttpInteraction -import com.useoptic.ux.SideBySideRenderHelper +import com.useoptic.types.capture.{HttpInteraction, JsonLikeFrom} +import com.useoptic.ux.{DiffPreviewer, SideBySideRenderHelper} import io.circe.Json import io.circe._ import io.circe.generic.auto._ @@ -19,7 +22,10 @@ import io.circe.syntax._ object EndEndDiffTask { case class Input(events: Vector[RfcEvent], interpretations: Vector[HttpInteraction]) - case class DiffOutput(diffs: Set[InteractionDiffResult]) + + case class SuggestionSlim(title: String, commandsJson: Json) + case class DiffWithDescriptionAndUX(diff: InteractionDiffResult, title: String, suggestions: Vector[SuggestionSlim], preview: Option[Json]) + case class DiffOutput(diffs: Vector[DiffWithDescriptionAndUX]) } class EndEndDiffTask @@ -37,18 +43,51 @@ class EndEndDiffTask } override def deserializeOutput(json: Json): EndEndDiffTask.DiffOutput = json.as[EndEndDiffTask.DiffOutput].right.get + override def summary(input: Input, result: DiffOutput): String = { + (result.diffs.map(i => { + s"${i.title} || suggestions: ${i.suggestions.map(_.title).toString}" + })).mkString("\n") + } + override def transform(input: EndEndDiffTask.Input): EndEndDiffTask.DiffOutput = { + implicit val ids = OpticIds.newDeterministicIdGenerator val eventStore = RfcServiceJSFacade.makeEventStore() val rfcId = "testRfcId" eventStore.append(rfcId, input.events) - implicit val ids = OpticIds.newDeterministicIdGenerator val rfcService = new RfcService(eventStore) val rfcState = rfcService.currentState(rfcId) val shapesResolvers = ShapesResolvers.newResolver(rfcState) - val diffs = DiffHelpers.diffAll(shapesResolvers, rfcState, input.interpretations) + val diffs = DiffHelpers.groupByNormalizedDiffs(shapesResolvers, rfcState, input.interpretations).toVector.sortBy(_.toString) + + + DiffOutput(diffs.map(i => { + val (diff, interactions) = i + + val interpret = new DiffDescriptionInterpreters(rfcState) + val description = interpret.interpret(diff, interactions.head) + + val previewer = new DiffPreviewer(rfcState) + + val preview = diff match { + case diff: ShapeRelatedDiff => diff match { + case UnmatchedRequestBodyShape(interactionTrail, requestsTrail, shapeDiffResult) => { + previewer.previewDiff(interactions.head.request.body.jsonOption.flatMap(JsonLikeFrom.json), Some(shapeDiffResult.shapeTrail.rootShapeId), Set(shapeDiffResult), Set.empty) + } + case UnmatchedResponseBodyShape(interactionTrail, requestsTrail, shapeDiffResult) => { + previewer.previewDiff(interactions.head.response.body.jsonOption.flatMap(JsonLikeFrom.json), Some(shapeDiffResult.shapeTrail.rootShapeId), Set(shapeDiffResult), Set.empty) + } + } + case _ => None + } + + val basicInterpreter = new DefaultInterpreters(shapesResolvers, rfcState) + val suggestions = basicInterpreter.interpret(diff, interactions.head).map(i => { + SuggestionSlim(i.action, CommandSerialization.toJson(i.commands)) + }) - DiffOutput(diffs) + DiffWithDescriptionAndUX(diff, description.title, suggestions.toVector, preview.map(_.toJson)) + })) } } diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/SnapShotDriverFixture.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/SnapShotDriverFixture.scala index c969780f9b..a472ef33bf 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/SnapShotDriverFixture.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/SnapShotDriverFixture.scala @@ -5,6 +5,8 @@ import io.circe._ import io.circe.parser._ import org.scalatest.{BeforeAndAfterAll, WordSpec} +import scala.util.Try + abstract class SnapShotDriverFixture[InputJson, OutputJson](folderSlug: String, snapshotName: String) extends WordSpec with BeforeAndAfterAll { private val md = java.security.MessageDigest.getInstance("SHA-1") @@ -22,6 +24,21 @@ abstract class SnapShotDriverFixture[InputJson, OutputJson](folderSlug: String, inputFile.writeText(serializeInput(block()).spaces2) } + private val knownIssues = scala.collection.mutable.ListBuffer[String]() + + def when_KNOWN_ISSUE(staticName: String, block: () => InputJson) = { + knownIssues.append(staticName) + when(staticName, block) + } + + + private var only: Option[String] = None + + def whenOnly(staticName: String, block: () => InputJson) = { + when(staticName, block) + only = Some(staticName) + } + setEnv("TESTS_ARE_RUNNING", "TRUE") def serializeOutput(output: OutputJson): Json @@ -33,44 +50,55 @@ abstract class SnapShotDriverFixture[InputJson, OutputJson](folderSlug: String, def transform(input: InputJson): OutputJson def compare(result: OutputJson, snapshot: OutputJson) : Boolean = result == snapshot + def summary(input: InputJson, result: OutputJson): String = "" def runSuite = { s"${snapshotName} snapshot tests" should { - println(snapshotDirectory.list) - snapshotDirectory.list.filter(_.isRegularFile).foreach { case file => - s"${file.nameWithoutExtension}" should { + println("Snapshot Results "+ snapshotName) + snapshotDirectory.list.filter(i => + i.isRegularFile && (only.isEmpty || only.contains(i.nameWithoutExtension))) + .foreach { case file => + s"${file.nameWithoutExtension}" should { var input: Option[InputJson] = None - var output: Option[OutputJson] = None - + var output: Try[OutputJson] = null s"input should deserialize properly" in { - println(file) input = Some(deserializeInput(parse(file.contentAsString).right.get)) } s"input yields valid output" in { - output = Some(transform(input.get)) + output = Try(transform(input.get)) + assert(output.isSuccess, if (output.isFailure) "Failed to transform: "+ output.failed.get.getMessage.toString else "") } s"Matches Snapshot" in { - - if (output.isDefined) { + if (output.isSuccess) { + if (!knownIssues.contains(file.nameWithoutExtension)) { + println("THIS IS A KNOWN ISSUE:") + } val dir = snapshotOutputDirectory dir.createIfNotExists(asDirectory = true) val snapshot = dir / file.name if (snapshot.exists) { val snapshotValue = deserializeOutput(parse(snapshot.contentAsString).right.get) assert(compare(output.get, snapshotValue), s"(${dir.name} / ${file.name}) snapshot does not match") + println(s" - PASSED: ${file.nameWithoutExtension}") + val s = summary(input.get, output.get) + if (s.nonEmpty) { + println(s) + } } else { val pendingDirectory = dir / "pending" pendingDirectory.createIfNotExists(asDirectory = true) val pendingSnapshot = pendingDirectory / file.name - println(s"A pending snapshot has been written. To approve move it out of the pending folder${pendingSnapshot}") + println(s" - PENDING: ${file.nameWithoutExtension}. To approve move it out of the pending folder") + val s = summary(input.get, output.get) + if (s.nonEmpty) { + println(s) + } pendingSnapshot.write(serializeOutput(output.get).spaces2) assert(false, "Pending Snapshot. Must be approved before test will pass") } - } else { - assert(false, "Transform failed") } } } diff --git a/yarn.lock b/yarn.lock index 6896523a4b..e674fd7f12 100644 --- a/yarn.lock +++ b/yarn.lock @@ -414,27 +414,13 @@ "@babel/helper-create-regexp-features-plugin" "^7.8.8" "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-async-generators@^7.8.0", "@babel/plugin-syntax-async-generators@^7.8.4": +"@babel/plugin-syntax-async-generators@^7.8.0": version "7.8.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-bigint@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" - integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-class-properties@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.8.3.tgz#6cb933a8872c8d359bfde69bbeaae5162fd1e8f7" - integrity sha512-UcAyQWg2bAN647Q+O811tG9MrJ38Z10jjhQdKNAL8fsyPzE3cCN/uT+f55cFVY4aGO4jqJAvmqsuY3GQDwAoXg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-syntax-decorators@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.8.3.tgz#8d2c15a9f1af624b0025f961682a9d53d3001bda" @@ -456,7 +442,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-json-strings@^7.8.0", "@babel/plugin-syntax-json-strings@^7.8.3": +"@babel/plugin-syntax-json-strings@^7.8.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== @@ -470,14 +456,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.8.3.tgz#3995d7d7ffff432f6ddc742b47e730c054599897" - integrity sha512-Zpg2Sgc++37kuFl6ppq2Q7Awc6E6AIW671x5PY8E/f7MCIyPPGK/EoeZXvvY3P42exZ3Q4/t3YOzP/HiN79jDg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - -"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.0", "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": +"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== @@ -491,21 +470,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.8.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3": +"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.8.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-optional-catch-binding@^7.8.0", "@babel/plugin-syntax-optional-catch-binding@^7.8.3": +"@babel/plugin-syntax-optional-catch-binding@^7.8.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-optional-chaining@^7.8.0", "@babel/plugin-syntax-optional-chaining@^7.8.3": +"@babel/plugin-syntax-optional-chaining@^7.8.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== @@ -1043,7 +1022,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/template@^7.3.3", "@babel/template@^7.4.0", "@babel/template@^7.8.3", "@babel/template@^7.8.6": +"@babel/template@^7.4.0", "@babel/template@^7.8.3", "@babel/template@^7.8.6": version "7.8.6" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b" integrity sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg== @@ -1067,7 +1046,7 @@ globals "^11.1.0" lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.0", "@babel/types@^7.9.5", "@babel/types@^7.9.6": +"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.0", "@babel/types@^7.9.5", "@babel/types@^7.9.6": version "7.9.6" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.6.tgz#2c5502b427251e9de1bd2dff95add646d95cc9f7" integrity sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA== @@ -1076,11 +1055,6 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== - "@cnakazawa/watch@^1.0.3": version "1.0.4" resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" @@ -1273,22 +1247,6 @@ dependencies: "@hapi/hoek" "^9.0.0" -"@istanbuljs/load-nyc-config@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" - integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== - dependencies: - camelcase "^5.3.1" - find-up "^4.1.0" - get-package-type "^0.1.0" - js-yaml "^3.13.1" - resolve-from "^5.0.0" - -"@istanbuljs/schema@^0.1.2": - version "0.1.2" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" - integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== - "@jest/console@^24.7.1", "@jest/console@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.9.0.tgz#79b1bc06fb74a8cfb01cbdedf945584b1b9707f0" @@ -1298,17 +1256,6 @@ chalk "^2.0.1" slash "^2.0.0" -"@jest/console@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.0.1.tgz#62b3b2fa8990f3cbffbef695c42ae9ddbc8f4b39" - integrity sha512-9t1KUe/93coV1rBSxMmBAOIK3/HVpwxArCA1CxskKyRiv6o8J70V8C/V3OJminVCTa2M0hQI9AWRd5wxu2dAHw== - dependencies: - "@jest/types" "^26.0.1" - chalk "^4.0.0" - jest-message-util "^26.0.1" - jest-util "^26.0.1" - slash "^3.0.0" - "@jest/core@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.9.0.tgz#2ceccd0b93181f9c4850e74f2a9ad43d351369c4" @@ -1343,39 +1290,6 @@ slash "^2.0.0" strip-ansi "^5.0.0" -"@jest/core@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.0.1.tgz#aa538d52497dfab56735efb00e506be83d841fae" - integrity sha512-Xq3eqYnxsG9SjDC+WLeIgf7/8KU6rddBxH+SCt18gEpOhAGYC/Mq+YbtlNcIdwjnnT+wDseXSbU0e5X84Y4jTQ== - dependencies: - "@jest/console" "^26.0.1" - "@jest/reporters" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-changed-files "^26.0.1" - jest-config "^26.0.1" - jest-haste-map "^26.0.1" - jest-message-util "^26.0.1" - jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-resolve-dependencies "^26.0.1" - jest-runner "^26.0.1" - jest-runtime "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" - jest-watcher "^26.0.1" - micromatch "^4.0.2" - p-each-series "^2.1.0" - rimraf "^3.0.0" - slash "^3.0.0" - strip-ansi "^6.0.0" - "@jest/environment@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.9.0.tgz#21e3afa2d65c0586cbd6cbefe208bafade44ab18" @@ -1386,15 +1300,6 @@ "@jest/types" "^24.9.0" jest-mock "^24.9.0" -"@jest/environment@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.0.1.tgz#82f519bba71959be9b483675ee89de8c8f72a5c8" - integrity sha512-xBDxPe8/nx251u0VJ2dFAFz2H23Y98qdIaNwnMK6dFQr05jc+Ne/2np73lOAx+5mSBO/yuQldRrQOf6hP1h92g== - dependencies: - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" - "@jest/fake-timers@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.9.0.tgz#ba3e6bf0eecd09a636049896434d306636540c93" @@ -1404,26 +1309,6 @@ jest-message-util "^24.9.0" jest-mock "^24.9.0" -"@jest/fake-timers@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.0.1.tgz#f7aeff13b9f387e9d0cac9a8de3bba538d19d796" - integrity sha512-Oj/kCBnTKhm7CR+OJSjZty6N1bRDr9pgiYQr4wY221azLz5PHi08x/U+9+QpceAYOWheauLP8MhtSVFrqXQfhg== - dependencies: - "@jest/types" "^26.0.1" - "@sinonjs/fake-timers" "^6.0.1" - jest-message-util "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" - -"@jest/globals@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.0.1.tgz#3f67b508a7ce62b6e6efc536f3d18ec9deb19a9c" - integrity sha512-iuucxOYB7BRCvT+TYBzUqUNuxFX1hqaR6G6IcGgEqkJ5x4htNKo1r7jk1ji9Zj8ZMiMw0oB5NaA7k5Tx6MVssA== - dependencies: - "@jest/environment" "^26.0.1" - "@jest/types" "^26.0.1" - expect "^26.0.1" - "@jest/reporters@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.9.0.tgz#86660eff8e2b9661d042a8e98a028b8d631a5b43" @@ -1451,38 +1336,6 @@ source-map "^0.6.0" string-length "^2.0.0" -"@jest/reporters@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.0.1.tgz#14ae00e7a93e498cec35b0c00ab21c375d9b078f" - integrity sha512-NWWy9KwRtE1iyG/m7huiFVF9YsYv/e+mbflKRV84WDoJfBqUrNRyDbL/vFxQcYLl8IRqI4P3MgPn386x76Gf2g== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.2.4" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.0" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.0.2" - jest-haste-map "^26.0.1" - jest-resolve "^26.0.1" - jest-util "^26.0.1" - jest-worker "^26.0.0" - slash "^3.0.0" - source-map "^0.6.0" - string-length "^4.0.1" - terminal-link "^2.0.0" - v8-to-istanbul "^4.1.3" - optionalDependencies: - node-notifier "^7.0.0" - "@jest/source-map@^24.3.0", "@jest/source-map@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.9.0.tgz#0e263a94430be4b41da683ccc1e6bffe2a191714" @@ -1492,15 +1345,6 @@ graceful-fs "^4.1.15" source-map "^0.6.0" -"@jest/source-map@^26.0.0": - version "26.0.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.0.0.tgz#fd7706484a7d3faf7792ae29783933bbf48a4749" - integrity sha512-S2Z+Aj/7KOSU2TfW0dyzBze7xr95bkm5YXNUqqCek+HE0VbNNSNzrRwfIi5lf7wvzDTSS0/ib8XQ1krFNyYgbQ== - dependencies: - callsites "^3.0.0" - graceful-fs "^4.2.4" - source-map "^0.6.0" - "@jest/test-result@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.9.0.tgz#11796e8aa9dbf88ea025757b3152595ad06ba0ca" @@ -1510,16 +1354,6 @@ "@jest/types" "^24.9.0" "@types/istanbul-lib-coverage" "^2.0.0" -"@jest/test-result@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.0.1.tgz#1ffdc1ba4bc289919e54b9414b74c9c2f7b2b718" - integrity sha512-oKwHvOI73ICSYRPe8WwyYPTtiuOAkLSbY8/MfWF3qDEd/sa8EDyZzin3BaXTqufir/O/Gzea4E8Zl14XU4Mlyg== - dependencies: - "@jest/console" "^26.0.1" - "@jest/types" "^26.0.1" - "@types/istanbul-lib-coverage" "^2.0.0" - collect-v8-coverage "^1.0.0" - "@jest/test-sequencer@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz#f8f334f35b625a4f2f355f2fe7e6036dad2e6b31" @@ -1530,17 +1364,6 @@ jest-runner "^24.9.0" jest-runtime "^24.9.0" -"@jest/test-sequencer@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.0.1.tgz#b0563424728f3fe9e75d1442b9ae4c11da73f090" - integrity sha512-ssga8XlwfP8YjbDcmVhwNlrmblddMfgUeAkWIXts1V22equp2GMIHxm7cyeD5Q/B0ZgKPK/tngt45sH99yLLGg== - dependencies: - "@jest/test-result" "^26.0.1" - graceful-fs "^4.2.4" - jest-haste-map "^26.0.1" - jest-runner "^26.0.1" - jest-runtime "^26.0.1" - "@jest/transform@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.9.0.tgz#4ae2768b296553fadab09e9ec119543c90b16c56" @@ -1563,27 +1386,6 @@ source-map "^0.6.1" write-file-atomic "2.4.1" -"@jest/transform@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.0.1.tgz#0e3ecbb34a11cd4b2080ed0a9c4856cf0ceb0639" - integrity sha512-pPRkVkAQ91drKGbzCfDOoHN838+FSbYaEAvBXvKuWeeRRUD8FjwXkqfUNUZL6Ke48aA/1cqq/Ni7kVMCoqagWA== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^26.0.1" - babel-plugin-istanbul "^6.0.0" - chalk "^4.0.0" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.2.4" - jest-haste-map "^26.0.1" - jest-regex-util "^26.0.0" - jest-util "^26.0.1" - micromatch "^4.0.2" - pirates "^4.0.1" - slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" - "@jest/types@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" @@ -1593,16 +1395,6 @@ "@types/istanbul-reports" "^1.1.1" "@types/yargs" "^13.0.0" -"@jest/types@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.0.1.tgz#b78333fbd113fa7aec8d39de24f88de8686dac67" - integrity sha512-IbtjvqI9+eS1qFnOIEL7ggWmT+iK/U+Vde9cGWtYb/b6XgKb3X44ZAe/z9YZzoAAZ/E92m0DqrilF934IGNnQA== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - "@material-ui/core@^4.9.7": version "4.9.14" resolved "https://registry.yarnpkg.com/@material-ui/core/-/core-4.9.14.tgz#4388f82cf94554cd3a935774fc12820f3c607a8a" @@ -1915,20 +1707,6 @@ component-type "^1.2.1" join-component "^1.1.0" -"@sinonjs/commons@^1.7.0": - version "1.8.0" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.0.tgz#c8d68821a854c555bba172f3b06959a0039b236d" - integrity sha512-wEj54PfsZ5jGSwMX68G8ZXFawcSglQSXqCftWX3ec8MDUzQdHgcKvw97awHbY0efQEL5iKUOAmmVtoYgmrSG4Q== - dependencies: - type-detect "4.0.8" - -"@sinonjs/fake-timers@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" - integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== - dependencies: - "@sinonjs/commons" "^1.7.0" - "@storybook/addon-actions@^5.0.11": version "5.3.18" resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-5.3.18.tgz#e3e3b1475cebc9bdd2d563822fba9ac662b2601a" @@ -2403,7 +2181,7 @@ resolved "https://registry.yarnpkg.com/@types/anymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== -"@types/babel__core@^7.1.0", "@types/babel__core@^7.1.6", "@types/babel__core@^7.1.7": +"@types/babel__core@^7.1.0", "@types/babel__core@^7.1.6": version "7.1.7" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.7.tgz#1dacad8840364a57c98d0dd4855c6dd3752c6b89" integrity sha512-RL62NqSFPCDK2FM1pSDH0scHpJvsXtZNiYlMB73DgPBaG1E38ZYVL+ei5EkWRbr+KC4YNiAUNBnRj+bgwpgjMw== @@ -2555,13 +2333,6 @@ "@types/minimatch" "*" "@types/node" "*" -"@types/graceful-fs@^4.1.2": - version "4.1.3" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.3.tgz#039af35fe26bec35003e8d86d2ee9c586354348f" - integrity sha512-AiHRaEB50LQg0pZmm659vNBb9f4SJ0qrAnteuzhSeAUcJKxoYgEnprg/83kppCnc2zvtCKbdZry1a5pVY3lOTQ== - dependencies: - "@types/node" "*" - "@types/history@*": version "4.7.6" resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.6.tgz#ed8fc802c45b8e8f54419c2d054e55c9ea344356" @@ -2611,7 +2382,7 @@ resolved "https://registry.yarnpkg.com/@types/is-function/-/is-function-1.0.0.tgz#1b0b819b1636c7baf0d6785d030d12edf70c3e83" integrity sha512-iTs9HReBu7evG77Q4EC8hZnqRt57irBDkK9nvmHroiOIVwYMQc4IvYvdRgwKfYepunIY7Oh/dBuuld+Gj9uo6w== -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": version "2.0.2" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.2.tgz#79d7a78bad4219f4c03d6557a1c72d9ca6ba62d5" integrity sha512-rsZg7eL+Xcxsxk2XlBt9KcG8nOp9iYdKCOikY9x2RFJCyOdNj4MKPQty0e8oZr29vVAzKXr1BmR+kZauti3o1w== @@ -2658,13 +2429,6 @@ resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== -"@types/md5@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@types/md5/-/md5-2.2.0.tgz#cd82e16b95973f94bb03dee40c5b6be4a7fb7fb4" - integrity sha512-JN8OVL/wiDlCWTPzplsgMPu0uE9Q6blwp68rYsfk2G8aokRUQ8XD9MEhZwihfAiQvoyE+m31m6i3GFXwYWomKQ== - dependencies: - "@types/node" "*" - "@types/mime@*": version "2.0.2" resolved "https://registry.yarnpkg.com/@types/mime/-/mime-2.0.2.tgz#857a118d8634c84bba7ae14088e4508490cd5da5" @@ -2727,11 +2491,6 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-13.13.9.tgz#79df4ae965fb76d31943b54a6419599307a21394" integrity sha512-EPZBIGed5gNnfWCiwEIwTE2Jdg4813odnG8iNPMQGrqVxrI+wL68SPtPeCX+ZxGBaA6pKAVc6jaKgP/Q0QzfdQ== -"@types/normalize-package-data@^2.4.0": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" - integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== - "@types/npmlog@^4.1.2": version "4.1.2" resolved "https://registry.yarnpkg.com/@types/npmlog/-/npmlog-4.1.2.tgz#d070fe6a6b78755d1092a3dc492d34c3d8f871c4" @@ -2742,11 +2501,6 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/prettier@^2.0.0": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.0.1.tgz#b6e98083f13faa1e5231bfa3bdb1b0feff536b6d" - integrity sha512-boy4xPNEtiw6N3abRhBi/e7hNvy3Tt8E9ZRAQrwAGzoCGZS/1wjo9KY7JHhnfnEsG5wSjDbymCozUM9a3ea7OQ== - "@types/prop-types@*": version "15.7.3" resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" @@ -2950,13 +2704,6 @@ dependencies: "@types/yargs-parser" "*" -"@types/yargs@^15.0.0": - version "15.0.5" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.5.tgz#947e9a6561483bdee9adffc983e91a6902af8b79" - integrity sha512-Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w== - dependencies: - "@types/yargs-parser" "*" - "@typescript-eslint/eslint-plugin@1.6.0": version "1.6.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-1.6.0.tgz#a5ff3128c692393fb16efa403ec7c8a5593dab0f" @@ -3292,7 +3039,7 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== -abab@^2.0.0, abab@^2.0.3: +abab@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a" integrity sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg== @@ -3323,14 +3070,6 @@ acorn-globals@^4.1.0: acorn "^6.0.1" acorn-walk "^6.0.1" -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - acorn-jsx@^5.0.0: version "5.2.0" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" @@ -3341,11 +3080,6 @@ acorn-walk@^6.0.1: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c" integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA== -acorn-walk@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.1.1.tgz#345f0dffad5c735e7373d2fec9a1023e6a44b83e" - integrity sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ== - acorn@^5.5.3: version "5.7.4" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz#3e8d8a9947d0599a1796d10225d7432f4a4acf5e" @@ -3356,11 +3090,6 @@ acorn@^6.0.1, acorn@^6.0.5, acorn@^6.0.7, acorn@^6.4.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474" integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA== -acorn@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.2.0.tgz#17ea7e40d7c8640ff54a694c889c26f31704effe" - integrity sha512-apwXVmYVpQ34m/i71vrApRrRKCWQnZZF1+npOD0WV5xZFfwWOmKGQ2RWlfdy9vWITsenisM8M0Qeq8agcFHNiQ== - address@1.1.2, address@^1.0.1: version "1.1.2" resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" @@ -3551,7 +3280,7 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" -anymatch@^3.0.3, anymatch@~3.1.1: +anymatch@~3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== @@ -3978,20 +3707,6 @@ babel-jest@^24.9.0: chalk "^2.4.2" slash "^2.0.0" -babel-jest@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.0.1.tgz#450139ce4b6c17174b136425bda91885c397bc46" - integrity sha512-Z4GGmSNQ8pX3WS1O+6v3fo41YItJJZsVxG5gIQ+HuB/iuAQBJxMTHTwz292vuYws1LnHfwSRgoqI+nxdy/pcvw== - dependencies: - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" - "@types/babel__core" "^7.1.7" - babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.4" - slash "^3.0.0" - babel-loader@8.0.5: version "8.0.5" resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.0.5.tgz#225322d7509c2157655840bba52e46b6c2f2fe33" @@ -4040,17 +3755,6 @@ babel-plugin-istanbul@^5.1.0: istanbul-lib-instrument "^3.3.0" test-exclude "^5.2.3" -babel-plugin-istanbul@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765" - integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@istanbuljs/load-nyc-config" "^1.0.0" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-instrument "^4.0.0" - test-exclude "^6.0.0" - babel-plugin-jest-hoist@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz#4f837091eb407e01447c8843cbec546d0002d756" @@ -4058,15 +3762,6 @@ babel-plugin-jest-hoist@^24.9.0: dependencies: "@types/babel__traverse" "^7.0.6" -babel-plugin-jest-hoist@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.0.0.tgz#fd1d35f95cf8849fc65cb01b5e58aedd710b34a8" - integrity sha512-+AuoehOrjt9irZL7DOt2+4ZaTM6dlu1s5TTS46JBa0/qem4dy7VNW3tMb96qeEqcIh20LD73TVNtmVEeymTG7w== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__traverse" "^7.0.6" - babel-plugin-macros@2.8.0, babel-plugin-macros@^2.0.0, babel-plugin-macros@^2.7.0: version "2.8.0" resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138" @@ -4248,22 +3943,6 @@ babel-plugin-transform-undefined-to-void@^6.9.4: resolved "https://registry.yarnpkg.com/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz#be241ca81404030678b748717322b89d0c8fe280" integrity sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA= -babel-preset-current-node-syntax@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.2.tgz#fb4a4c51fe38ca60fede1dc74ab35eb843cb41d6" - integrity sha512-u/8cS+dEiK1SFILbOC8/rUI3ml9lboKuuMvZ/4aQnQmhecQAgPw5ew066C1ObnEAUmlx7dv/s2z52psWEtLNiw== - dependencies: - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-bigint" "^7.8.3" - "@babel/plugin-syntax-class-properties" "^7.8.3" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.8.3" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - babel-preset-jest@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz#192b521e2217fb1d1f67cf73f70c336650ad3cdc" @@ -4272,14 +3951,6 @@ babel-preset-jest@^24.9.0: "@babel/plugin-syntax-object-rest-spread" "^7.0.0" babel-plugin-jest-hoist "^24.9.0" -babel-preset-jest@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.0.0.tgz#1eac82f513ad36c4db2e9263d7c485c825b1faa6" - integrity sha512-9ce+DatAa31DpR4Uir8g4Ahxs5K4W4L8refzt+qHWQANb6LhGcAEfIFgLUwk67oya2cCUd6t4eUMtO/z64ocNw== - dependencies: - babel-plugin-jest-hoist "^26.0.0" - babel-preset-current-node-syntax "^0.1.2" - "babel-preset-minify@^0.5.0 || 0.6.0-alpha.5": version "0.5.1" resolved "https://registry.yarnpkg.com/babel-preset-minify/-/babel-preset-minify-0.5.1.tgz#25f5d0bce36ec818be80338d0e594106e21eaa9f" @@ -4848,11 +4519,6 @@ camelcase@^5.0.0, camelcase@^5.2.0, camelcase@^5.3.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.0.0.tgz#5259f7c30e35e278f1bdc2a4d91230b37cad981e" - integrity sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w== - can-use-dom@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/can-use-dom/-/can-use-dom-0.1.0.tgz#22cc4a34a0abc43950f42c6411024a3f6366b45a" @@ -4951,11 +4617,6 @@ chalk@^4.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -char-regex@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" - integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== - character-entities-legacy@^1.0.0: version "1.1.4" resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz#94bc1845dce70a5bb9d2ecc748725661293d8fc1" @@ -5281,11 +4942,6 @@ collapse-white-space@^1.0.2: resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.6.tgz#e63629c0016665792060dbbeb79c42239d2c5287" integrity sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ== -collect-v8-coverage@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" - integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== - collection-visit@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" @@ -5675,15 +5331,6 @@ cross-spawn@^4: lru-cache "^4.0.1" which "^1.2.9" -cross-spawn@^7.0.0: - version "7.0.2" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.2.tgz#d0d7dcfa74e89115c7619f4f721a94e1fdb716d6" - integrity sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - crypt@~0.0.1: version "0.0.2" resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" @@ -5926,16 +5573,11 @@ csso@^4.0.2: dependencies: css-tree "1.0.0-alpha.39" -cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0", cssom@~0.3.6: +cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": version "0.3.8" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - cssstyle@^1.0.0: version "1.4.0" resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.4.0.tgz#9d31328229d3c565c61e586b02041a28fccdccf1" @@ -5943,13 +5585,6 @@ cssstyle@^1.0.0: dependencies: cssom "0.3.x" -cssstyle@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - csstype@^2.2.0, csstype@^2.5.2, csstype@^2.5.7, csstype@^2.6.5, csstype@^2.6.7: version "2.6.10" resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.10.tgz#e63af50e66d7c266edb6b32909cfd0aabe03928b" @@ -5981,15 +5616,6 @@ data-urls@^1.0.0: whatwg-mimetype "^2.2.0" whatwg-url "^7.0.0" -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== - dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - dataloader@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/dataloader/-/dataloader-2.0.0.tgz#41eaf123db115987e21ca93c005cd7753c55fe6f" @@ -6045,11 +5671,6 @@ decamelize@^2.0.0: dependencies: xregexp "4.0.0" -decimal.js@^10.2.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.2.0.tgz#39466113a9e036111d02f82489b5fd6b0b5ed231" - integrity sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw== - decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" @@ -6084,18 +5705,6 @@ deep-object-diff@^1.1.0: resolved "https://registry.yarnpkg.com/deep-object-diff/-/deep-object-diff-1.1.0.tgz#d6fabf476c2ed1751fc94d5ca693d2ed8c18bc5a" integrity sha512-b+QLs5vHgS+IoSNcUE4n9HP2NwcHj7aqnJWsjPtuG75Rh5TOaGt0OjAYInh77d5T16V5cRDC+Pw/6ZZZiETBGw== -deepcopy@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/deepcopy/-/deepcopy-2.0.0.tgz#2acb9b7645f9f54d815eee991455e790e72e2252" - integrity sha512-d5ZK7pJw7F3k6M5vqDjGiiUS9xliIyWkdzBjnPhnSeRGjkYOGZMCFkdKVwV/WiHOe0NwzB8q+iDo7afvSf0arA== - dependencies: - type-detect "^4.0.8" - -deepmerge@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" - integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== - default-gateway@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b" @@ -6207,11 +5816,6 @@ detect-newline@^2.1.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= -detect-newline@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" - integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== - detect-node@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" @@ -6248,11 +5852,6 @@ diff-sequences@^24.9.0: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew== -diff-sequences@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.0.0.tgz#0760059a5c287637b842bd7085311db7060e88a6" - integrity sha512-JC/eHYEC3aSS0vZGjuoc4vHA0yAQTzhQQldXMeMF+JlxLGJlCO38Gma82NV9gk1jGFz8mDzUMeaKXvjRRdJ2dg== - diff@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" @@ -6379,13 +5978,6 @@ domexception@^1.0.1: dependencies: webidl-conversions "^4.0.2" -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== - dependencies: - webidl-conversions "^5.0.0" - domhandler@^2.3.0: version "2.4.2" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" @@ -6699,12 +6291,12 @@ escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1 resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= -escape-string-regexp@2.0.0, escape-string-regexp@^2.0.0: +escape-string-regexp@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== -escodegen@^1.14.1, escodegen@^1.9.1: +escodegen@^1.9.1: version "1.14.1" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.1.tgz#ba01d0c8278b5e95a9a45350142026659027a457" integrity sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ== @@ -7047,21 +6639,6 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -execa@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-4.0.1.tgz#988488781f1f0238cd156f7aaede11c3e853b4c1" - integrity sha512-SCjM/zlBdOK8Q5TIjOn6iEHZaPHFsMoTxXQ2nvUvtPnuohz3H2dIozSg+etNR98dGoYUp2ENSKLL/XaMmbxVgw== - dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.0" - onetime "^5.1.0" - signal-exit "^3.0.2" - strip-final-newline "^2.0.0" - exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -7092,18 +6669,6 @@ expect@^24.9.0: jest-message-util "^24.9.0" jest-regex-util "^24.9.0" -expect@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.0.1.tgz#18697b9611a7e2725e20ba3ceadda49bc9865421" - integrity sha512-QcCy4nygHeqmbw564YxNbHTJlXh47dVID2BUP52cZFpLU9zHViMFK6h07cC1wf7GYCTIigTdAXhVua8Yl1FkKg== - dependencies: - "@jest/types" "^26.0.1" - ansi-styles "^4.0.0" - jest-get-type "^26.0.0" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-regex-util "^26.0.0" - express@^4.14.0, express@^4.16.2, express@^4.17.0, express@^4.17.1: version "4.17.1" resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" @@ -7724,7 +7289,7 @@ fsevents@^1.2.7: bindings "^1.5.0" nan "^2.12.1" -fsevents@^2.1.2, fsevents@~2.1.1, fsevents@~2.1.2: +fsevents@~2.1.1, fsevents@~2.1.2: version "2.1.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== @@ -7797,11 +7362,6 @@ get-own-enumerable-property-symbols@^3.0.0: resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== -get-package-type@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" - integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== - get-port@^5.1.0: version "5.1.1" resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" @@ -7819,7 +7379,7 @@ get-stream@^4.0.0: dependencies: pump "^3.0.0" -get-stream@^5.0.0, get-stream@^5.1.0: +get-stream@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== @@ -8004,7 +7564,7 @@ good-listener@^1.2.2: dependencies: delegate "^3.1.2" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.4: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@^4.2.2: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== @@ -8277,13 +7837,6 @@ html-encoding-sniffer@^1.0.2: dependencies: whatwg-encoding "^1.0.1" -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - dependencies: - whatwg-encoding "^1.0.5" - html-entities@^1.2.0, html-entities@^1.2.1: version "1.3.1" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.3.1.tgz#fb9a1a4b5b14c5daba82d3e34c6ae4fe701a0e44" @@ -8482,11 +8035,6 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= -human-signals@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" - integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== - hyperlinker@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/hyperlinker/-/hyperlinker-1.0.0.tgz#23dc9e38a206b208ee49bc2d6c8ef47027df0c0e" @@ -8584,14 +8132,6 @@ import-local@^2.0.0: pkg-dir "^3.0.0" resolve-cwd "^2.0.0" -import-local@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6" - integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== - dependencies: - pkg-dir "^4.2.0" - resolve-cwd "^3.0.0" - import-modules@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/import-modules/-/import-modules-1.1.0.tgz#748db79c5cc42bb9701efab424f894e72600e9dc" @@ -9102,11 +8642,6 @@ is-plain-object@^3.0.0: dependencies: isobject "^4.0.0" -is-potential-custom-element-name@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz#0c52e54bcca391bb2c494b21e8626d7336c6e397" - integrity sha1-DFLlS8yjkbssSUsh6GJtczbG45c= - is-promise@^2.1.0: version "2.2.2" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" @@ -9257,11 +8792,6 @@ istanbul-lib-coverage@^2.0.2, istanbul-lib-coverage@^2.0.5: resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA== -istanbul-lib-coverage@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" - integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== - istanbul-lib-hook@^2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz#c95695f383d4f8f60df1f04252a9550e15b5b133" @@ -9282,16 +8812,6 @@ istanbul-lib-instrument@^3.0.1, istanbul-lib-instrument@^3.3.0: istanbul-lib-coverage "^2.0.5" semver "^6.0.0" -istanbul-lib-instrument@^4.0.0: - version "4.0.3" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" - integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== - dependencies: - "@babel/core" "^7.7.5" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.0.0" - semver "^6.3.0" - istanbul-lib-report@^2.0.4, istanbul-lib-report@^2.0.8: version "2.0.8" resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33" @@ -9301,15 +8821,6 @@ istanbul-lib-report@^2.0.4, istanbul-lib-report@^2.0.8: make-dir "^2.1.0" supports-color "^6.1.0" -istanbul-lib-report@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" - integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^3.0.0" - supports-color "^7.1.0" - istanbul-lib-source-maps@^3.0.1, istanbul-lib-source-maps@^3.0.6: version "3.0.6" resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" @@ -9321,15 +8832,6 @@ istanbul-lib-source-maps@^3.0.1, istanbul-lib-source-maps@^3.0.6: rimraf "^2.6.3" source-map "^0.6.1" -istanbul-lib-source-maps@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9" - integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^3.0.0" - source-map "^0.6.1" - istanbul-reports@^2.2.4, istanbul-reports@^2.2.6: version "2.2.7" resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.7.tgz#5d939f6237d7b48393cc0959eab40cd4fd056931" @@ -9337,14 +8839,6 @@ istanbul-reports@^2.2.4, istanbul-reports@^2.2.6: dependencies: html-escaper "^2.0.0" -istanbul-reports@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" - integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - iterall@^1.1.3, iterall@^1.2.1, iterall@^1.2.2: version "1.3.0" resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" @@ -9372,15 +8866,6 @@ jest-changed-files@^24.9.0: execa "^1.0.0" throat "^4.0.0" -jest-changed-files@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.0.1.tgz#1334630c6a1ad75784120f39c3aa9278e59f349f" - integrity sha512-q8LP9Sint17HaE2LjxQXL+oYWW/WeeXMPE2+Op9X3mY8IEGFVc14xRxFjUuXUbcPAlDLhtWdIEt59GdQbn76Hw== - dependencies: - "@jest/types" "^26.0.1" - execa "^4.0.0" - throat "^5.0.0" - jest-cli@^24.7.1: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.9.0.tgz#ad2de62d07472d419c6abc301fc432b98b10d2af" @@ -9400,25 +8885,6 @@ jest-cli@^24.7.1: realpath-native "^1.1.0" yargs "^13.3.0" -jest-cli@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.0.1.tgz#3a42399a4cbc96a519b99ad069a117d955570cac" - integrity sha512-pFLfSOBcbG9iOZWaMK4Een+tTxi/Wcm34geqZEqrst9cZDkTQ1LZ2CnBrTlHWuYAiTMFr0EQeK52ScyFU8wK+w== - dependencies: - "@jest/core" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - import-local "^3.0.2" - is-ci "^2.0.0" - jest-config "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" - prompts "^2.0.1" - yargs "^15.3.1" - jest-config@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.9.0.tgz#fb1bbc60c73a46af03590719efa4825e6e4dd1b5" @@ -9442,30 +8908,6 @@ jest-config@^24.9.0: pretty-format "^24.9.0" realpath-native "^1.1.0" -jest-config@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.0.1.tgz#096a3d4150afadf719d1fab00e9a6fb2d6d67507" - integrity sha512-9mWKx2L1LFgOXlDsC4YSeavnblN6A4CPfXFiobq+YYLaBMymA/SczN7xYTSmLaEYHZOcB98UdoN4m5uNt6tztg== - dependencies: - "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.0.1" - "@jest/types" "^26.0.1" - babel-jest "^26.0.1" - chalk "^4.0.0" - deepmerge "^4.2.2" - glob "^7.1.1" - graceful-fs "^4.2.4" - jest-environment-jsdom "^26.0.1" - jest-environment-node "^26.0.1" - jest-get-type "^26.0.0" - jest-jasmine2 "^26.0.1" - jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" - micromatch "^4.0.2" - pretty-format "^26.0.1" - jest-diff@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" @@ -9476,16 +8918,6 @@ jest-diff@^24.9.0: jest-get-type "^24.9.0" pretty-format "^24.9.0" -jest-diff@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.0.1.tgz#c44ab3cdd5977d466de69c46929e0e57f89aa1de" - integrity sha512-odTcHyl5X+U+QsczJmOjWw5tPvww+y9Yim5xzqxVl/R1j4z71+fHW4g8qu1ugMmKdFdxw+AtQgs5mupPnzcIBQ== - dependencies: - chalk "^4.0.0" - diff-sequences "^26.0.0" - jest-get-type "^26.0.0" - pretty-format "^26.0.1" - jest-docblock@^24.3.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-24.9.0.tgz#7970201802ba560e1c4092cc25cbedf5af5a8ce2" @@ -9493,13 +8925,6 @@ jest-docblock@^24.3.0: dependencies: detect-newline "^2.1.0" -jest-docblock@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" - integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== - dependencies: - detect-newline "^3.0.0" - jest-each@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.9.0.tgz#eb2da602e2a610898dbc5f1f6df3ba86b55f8b05" @@ -9511,17 +8936,6 @@ jest-each@^24.9.0: jest-util "^24.9.0" pretty-format "^24.9.0" -jest-each@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.0.1.tgz#633083061619302fc90dd8f58350f9d77d67be04" - integrity sha512-OTgJlwXCAR8NIWaXFL5DBbeS4QIYPuNASkzSwMCJO+ywo9BEa6TqkaSWsfR7VdbMLdgYJqSfQcIyjJCNwl5n4Q== - dependencies: - "@jest/types" "^26.0.1" - chalk "^4.0.0" - jest-get-type "^26.0.0" - jest-util "^26.0.1" - pretty-format "^26.0.1" - jest-environment-jsdom@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz#4b0806c7fc94f95edb369a69cc2778eec2b7375b" @@ -9534,18 +8948,6 @@ jest-environment-jsdom@^24.9.0: jest-util "^24.9.0" jsdom "^11.5.1" -jest-environment-jsdom@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.0.1.tgz#217690852e5bdd7c846a4e3b50c8ffd441dfd249" - integrity sha512-u88NJa3aptz2Xix2pFhihRBAatwZHWwSiRLBDBQE1cdJvDjPvv7ZGA0NQBxWwDDn7D0g1uHqxM8aGgfA9Bx49g== - dependencies: - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" - jsdom "^16.2.2" - jest-environment-node@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.9.0.tgz#333d2d2796f9687f2aeebf0742b519f33c1cbfd3" @@ -9557,27 +8959,11 @@ jest-environment-node@^24.9.0: jest-mock "^24.9.0" jest-util "^24.9.0" -jest-environment-node@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.0.1.tgz#584a9ff623124ff6eeb49e0131b5f7612b310b13" - integrity sha512-4FRBWcSn5yVo0KtNav7+5NH5Z/tEgDLp7VRQVS5tCouWORxj+nI+1tOLutM07Zb2Qi7ja+HEDoOUkjBSWZg/IQ== - dependencies: - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" - jest-get-type@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e" integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q== -jest-get-type@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.0.0.tgz#381e986a718998dbfafcd5ec05934be538db4039" - integrity sha512-zRc1OAPnnws1EVfykXOj19zo2EMw5Hi6HLbFCSjpuJiXtOWAYIjNsHVSbpQ8bDX7L5BGYGI8m+HmKdjHYFF0kg== - jest-haste-map@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.9.0.tgz#b38a5d64274934e21fa417ae9a9fbeb77ceaac7d" @@ -9597,26 +8983,6 @@ jest-haste-map@^24.9.0: optionalDependencies: fsevents "^1.2.7" -jest-haste-map@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.0.1.tgz#40dcc03c43ac94d25b8618075804d09cd5d49de7" - integrity sha512-J9kBl/EdjmDsvyv7CiyKY5+DsTvVOScenprz/fGqfLg/pm1gdjbwwQ98nW0t+OIt+f+5nAVaElvn/6wP5KO7KA== - dependencies: - "@jest/types" "^26.0.1" - "@types/graceful-fs" "^4.1.2" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.4" - jest-serializer "^26.0.0" - jest-util "^26.0.1" - jest-worker "^26.0.0" - micromatch "^4.0.2" - sane "^4.0.3" - walker "^1.0.7" - which "^2.0.2" - optionalDependencies: - fsevents "^2.1.2" - jest-jasmine2@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz#1f7b1bd3242c1774e62acabb3646d96afc3be6a0" @@ -9639,29 +9005,6 @@ jest-jasmine2@^24.9.0: pretty-format "^24.9.0" throat "^4.0.0" -jest-jasmine2@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.0.1.tgz#947c40ee816636ba23112af3206d6fa7b23c1c1c" - integrity sha512-ILaRyiWxiXOJ+RWTKupzQWwnPaeXPIoLS5uW41h18varJzd9/7I0QJGqg69fhTT1ev9JpSSo9QtalriUN0oqOg== - dependencies: - "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.0.1" - "@jest/source-map" "^26.0.0" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" - chalk "^4.0.0" - co "^4.6.0" - expect "^26.0.1" - is-generator-fn "^2.0.0" - jest-each "^26.0.1" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-runtime "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - pretty-format "^26.0.1" - throat "^5.0.0" - jest-leak-detector@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz#b665dea7c77100c5c4f7dfcb153b65cf07dcf96a" @@ -9670,14 +9013,6 @@ jest-leak-detector@^24.9.0: jest-get-type "^24.9.0" pretty-format "^24.9.0" -jest-leak-detector@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.0.1.tgz#79b19ab3f41170e0a78eb8fa754a116d3447fb8c" - integrity sha512-93FR8tJhaYIWrWsbmVN1pQ9ZNlbgRpfvrnw5LmgLRX0ckOJ8ut/I35CL7awi2ecq6Ca4lL59bEK9hr7nqoHWPA== - dependencies: - jest-get-type "^26.0.0" - pretty-format "^26.0.1" - jest-matcher-utils@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073" @@ -9688,16 +9023,6 @@ jest-matcher-utils@^24.9.0: jest-get-type "^24.9.0" pretty-format "^24.9.0" -jest-matcher-utils@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.0.1.tgz#12e1fc386fe4f14678f4cc8dbd5ba75a58092911" - integrity sha512-PUMlsLth0Azen8Q2WFTwnSkGh2JZ8FYuwijC8NR47vXKpsrKmA1wWvgcj1CquuVfcYiDEdj985u5Wmg7COEARw== - dependencies: - chalk "^4.0.0" - jest-diff "^26.0.1" - jest-get-type "^26.0.0" - pretty-format "^26.0.1" - jest-message-util@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.9.0.tgz#527f54a1e380f5e202a8d1149b0ec872f43119e3" @@ -9712,20 +9037,6 @@ jest-message-util@^24.9.0: slash "^2.0.0" stack-utils "^1.0.1" -jest-message-util@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.0.1.tgz#07af1b42fc450b4cc8e90e4c9cef11b33ce9b0ac" - integrity sha512-CbK8uQREZ8umUfo8+zgIfEt+W7HAHjQCoRaNs4WxKGhAYBGwEyvxuK81FXa7VeB9pwDEXeeKOB2qcsNVCAvB7Q== - dependencies: - "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.0.1" - "@types/stack-utils" "^1.0.1" - chalk "^4.0.0" - graceful-fs "^4.2.4" - micromatch "^4.0.2" - slash "^3.0.0" - stack-utils "^2.0.2" - jest-mock@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.9.0.tgz#c22835541ee379b908673ad51087a2185c13f1c6" @@ -9733,13 +9044,6 @@ jest-mock@^24.9.0: dependencies: "@jest/types" "^24.9.0" -jest-mock@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.0.1.tgz#7fd1517ed4955397cf1620a771dc2d61fad8fd40" - integrity sha512-MpYTBqycuPYSY6xKJognV7Ja46/TeRbAZept987Zp+tuJvMN0YBWyyhG9mXyYQaU3SBI0TUlSaO5L3p49agw7Q== - dependencies: - "@jest/types" "^26.0.1" - jest-pnp-resolver@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a" @@ -9750,11 +9054,6 @@ jest-regex-util@^24.3.0, jest-regex-util@^24.9.0: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636" integrity sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA== -jest-regex-util@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" - integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== - jest-resolve-dependencies@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz#ad055198959c4cfba8a4f066c673a3f0786507ab" @@ -9764,15 +9063,6 @@ jest-resolve-dependencies@^24.9.0: jest-regex-util "^24.3.0" jest-snapshot "^24.9.0" -jest-resolve-dependencies@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.0.1.tgz#607ba7ccc32151d185a477cff45bf33bce417f0b" - integrity sha512-9d5/RS/ft0vB/qy7jct/qAhzJsr6fRQJyGAFigK3XD4hf9kIbEH5gks4t4Z7kyMRhowU6HWm/o8ILqhaHdSqLw== - dependencies: - "@jest/types" "^26.0.1" - jest-regex-util "^26.0.0" - jest-snapshot "^26.0.1" - jest-resolve@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.9.0.tgz#dff04c7687af34c4dd7e524892d9cf77e5d17321" @@ -9784,20 +9074,6 @@ jest-resolve@^24.9.0: jest-pnp-resolver "^1.2.1" realpath-native "^1.1.0" -jest-resolve@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.0.1.tgz#21d1ee06f9ea270a343a8893051aeed940cde736" - integrity sha512-6jWxk0IKZkPIVTvq6s72RH735P8f9eCJW3IM5CX/SJFeKq1p2cZx0U49wf/SdMlhaB/anann5J2nCJj6HrbezQ== - dependencies: - "@jest/types" "^26.0.1" - chalk "^4.0.0" - graceful-fs "^4.2.4" - jest-pnp-resolver "^1.2.1" - jest-util "^26.0.1" - read-pkg-up "^7.0.1" - resolve "^1.17.0" - slash "^3.0.0" - jest-runner@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.9.0.tgz#574fafdbd54455c2b34b4bdf4365a23857fcdf42" @@ -9823,31 +9099,6 @@ jest-runner@^24.9.0: source-map-support "^0.5.6" throat "^4.0.0" -jest-runner@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.0.1.tgz#ea03584b7ae4bacfb7e533d680a575a49ae35d50" - integrity sha512-CApm0g81b49Znm4cZekYQK67zY7kkB4umOlI2Dx5CwKAzdgw75EN+ozBHRvxBzwo1ZLYZ07TFxkaPm+1t4d8jA== - dependencies: - "@jest/console" "^26.0.1" - "@jest/environment" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-config "^26.0.1" - jest-docblock "^26.0.0" - jest-haste-map "^26.0.1" - jest-jasmine2 "^26.0.1" - jest-leak-detector "^26.0.1" - jest-message-util "^26.0.1" - jest-resolve "^26.0.1" - jest-runtime "^26.0.1" - jest-util "^26.0.1" - jest-worker "^26.0.0" - source-map-support "^0.5.6" - throat "^5.0.0" - jest-runtime@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.9.0.tgz#9f14583af6a4f7314a6a9d9f0226e1a781c8e4ac" @@ -9877,50 +9128,11 @@ jest-runtime@^24.9.0: strip-bom "^3.0.0" yargs "^13.3.0" -jest-runtime@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.0.1.tgz#a121a6321235987d294168e282d52b364d7d3f89" - integrity sha512-Ci2QhYFmANg5qaXWf78T2Pfo6GtmIBn2rRaLnklRyEucmPccmCKvS9JPljcmtVamsdMmkyNkVFb9pBTD6si9Lw== - dependencies: - "@jest/console" "^26.0.1" - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/globals" "^26.0.1" - "@jest/source-map" "^26.0.0" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.3" - graceful-fs "^4.2.4" - jest-config "^26.0.1" - jest-haste-map "^26.0.1" - jest-message-util "^26.0.1" - jest-mock "^26.0.1" - jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" - slash "^3.0.0" - strip-bom "^4.0.0" - yargs "^15.3.1" - jest-serializer@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.9.0.tgz#e6d7d7ef96d31e8b9079a714754c5d5c58288e73" integrity sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ== -jest-serializer@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.0.0.tgz#f6c521ddb976943b93e662c0d4d79245abec72a3" - integrity sha512-sQGXLdEGWFAE4wIJ2ZaIDb+ikETlUirEOBsLXdoBbeLhTHkZUJwgk3+M8eyFizhM6le43PDCCKPA1hzkSDo4cQ== - dependencies: - graceful-fs "^4.2.4" - jest-snapshot@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.9.0.tgz#ec8e9ca4f2ec0c5c87ae8f925cf97497b0e951ba" @@ -9940,27 +9152,6 @@ jest-snapshot@^24.9.0: pretty-format "^24.9.0" semver "^6.2.0" -jest-snapshot@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.0.1.tgz#1baa942bd83d47b837a84af7fcf5fd4a236da399" - integrity sha512-jxd+cF7+LL+a80qh6TAnTLUZHyQoWwEHSUFJjkw35u3Gx+BZUNuXhYvDqHXr62UQPnWo2P6fvQlLjsU93UKyxA== - dependencies: - "@babel/types" "^7.0.0" - "@jest/types" "^26.0.1" - "@types/prettier" "^2.0.0" - chalk "^4.0.0" - expect "^26.0.1" - graceful-fs "^4.2.4" - jest-diff "^26.0.1" - jest-get-type "^26.0.0" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-resolve "^26.0.1" - make-dir "^3.0.0" - natural-compare "^1.4.0" - pretty-format "^26.0.1" - semver "^7.3.2" - jest-util@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.9.0.tgz#7396814e48536d2e85a37de3e4c431d7cb140162" @@ -9979,17 +9170,6 @@ jest-util@^24.9.0: slash "^2.0.0" source-map "^0.6.0" -jest-util@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.0.1.tgz#72c4c51177b695fdd795ca072a6f94e3d7cef00a" - integrity sha512-byQ3n7ad1BO/WyFkYvlWQHTsomB6GIewBh8tlGtusiylAlaxQ1UpS0XYH0ngOyhZuHVLN79Qvl6/pMiDMSSG1g== - dependencies: - "@jest/types" "^26.0.1" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^2.0.0" - make-dir "^3.0.0" - jest-validate@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab" @@ -10002,18 +9182,6 @@ jest-validate@^24.9.0: leven "^3.1.0" pretty-format "^24.9.0" -jest-validate@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.0.1.tgz#a62987e1da5b7f724130f904725e22f4e5b2e23c" - integrity sha512-u0xRc+rbmov/VqXnX3DlkxD74rHI/CfS5xaV2VpeaVySjbb1JioNVOyly5b56q2l9ZKe7bVG5qWmjfctkQb0bA== - dependencies: - "@jest/types" "^26.0.1" - camelcase "^6.0.0" - chalk "^4.0.0" - jest-get-type "^26.0.0" - leven "^3.1.0" - pretty-format "^26.0.1" - jest-watcher@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.9.0.tgz#4b56e5d1ceff005f5b88e528dc9afc8dd4ed2b3b" @@ -10027,18 +9195,6 @@ jest-watcher@^24.9.0: jest-util "^24.9.0" string-length "^2.0.0" -jest-watcher@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.0.1.tgz#5b5e3ebbdf10c240e22a98af66d645631afda770" - integrity sha512-pdZPydsS8475f89kGswaNsN3rhP6lnC3/QDCppP7bg1L9JQz7oU9Mb/5xPETk1RHDCWeqmVC47M4K5RR7ejxFw== - dependencies: - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - jest-util "^26.0.1" - string-length "^4.0.1" - jest-worker@^24.6.0, jest-worker@^24.9.0: version "24.9.0" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5" @@ -10055,14 +9211,6 @@ jest-worker@^25.4.0, jest-worker@^25.5.0: merge-stream "^2.0.0" supports-color "^7.0.0" -jest-worker@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.0.0.tgz#4920c7714f0a96c6412464718d0c58a3df3fb066" - integrity sha512-pPaYa2+JnwmiZjK9x7p9BoZht+47ecFCDFA/CJxspHzeDvQcfVBLWzCiWyo+EGrSiQMWZtCFo9iSvMZnAAo8vw== - dependencies: - merge-stream "^2.0.0" - supports-color "^7.0.0" - jest@24.7.1: version "24.7.1" resolved "https://registry.yarnpkg.com/jest/-/jest-24.7.1.tgz#0d94331cf510c75893ee32f87d7321d5bf8f2501" @@ -10071,15 +9219,6 @@ jest@24.7.1: import-local "^2.0.0" jest-cli "^24.7.1" -jest@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.0.1.tgz#5c51a2e58dff7525b65f169721767173bf832694" - integrity sha512-29Q54kn5Bm7ZGKIuH2JRmnKl85YRigp0o0asTc6Sb6l2ch1DCXIeZTLLFy9ultJvhkTqbswF5DEx4+RlkmCxWg== - dependencies: - "@jest/core" "^26.0.1" - import-local "^3.0.2" - jest-cli "^26.0.1" - join-component@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/join-component/-/join-component-1.1.0.tgz#b8417b750661a392bee2c2537c68b2a9d4977cd5" @@ -10140,38 +9279,6 @@ jsdom@^11.5.1: ws "^5.2.0" xml-name-validator "^3.0.0" -jsdom@^16.2.2: - version "16.2.2" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.2.2.tgz#76f2f7541646beb46a938f5dc476b88705bedf2b" - integrity sha512-pDFQbcYtKBHxRaP55zGXCJWgFHkDAYbKcsXEK/3Icu9nKYZkutUXfLBwbD+09XDutkYSHcgfQLZ0qvpAAm9mvg== - dependencies: - abab "^2.0.3" - acorn "^7.1.1" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.2.0" - data-urls "^2.0.0" - decimal.js "^10.2.0" - domexception "^2.0.1" - escodegen "^1.14.1" - html-encoding-sniffer "^2.0.1" - is-potential-custom-element-name "^1.0.0" - nwsapi "^2.2.0" - parse5 "5.1.1" - request "^2.88.2" - request-promise-native "^1.0.8" - saxes "^5.0.0" - symbol-tree "^3.2.4" - tough-cookie "^3.0.1" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.0.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - ws "^7.2.3" - xml-name-validator "^3.0.0" - jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" @@ -11611,13 +10718,6 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npm-run-path@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - npmlog@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" @@ -11645,7 +10745,7 @@ number-is-nan@^1.0.0: resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= -nwsapi@^2.0.7, nwsapi@^2.2.0: +nwsapi@^2.0.7: version "2.2.0" resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== @@ -11926,11 +11026,6 @@ p-each-series@^1.0.0: dependencies: p-reduce "^1.0.0" -p-each-series@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.1.0.tgz#961c8dd3f195ea96c747e636b262b800a6b1af48" - integrity sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ== - p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" @@ -12115,11 +11210,6 @@ parse5@4.0.0: resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA== -parse5@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" - integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug== - parseurl@~1.3.2, parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" @@ -12188,7 +11278,7 @@ path-key@^2.0.0, path-key@^2.0.1: resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= -path-key@^3.0.0, path-key@^3.1.0: +path-key@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== @@ -13104,16 +12194,6 @@ pretty-format@^24.9.0: ansi-styles "^3.2.0" react-is "^16.8.4" -pretty-format@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.0.1.tgz#a4fe54fe428ad2fd3413ca6bbd1ec8c2e277e197" - integrity sha512-SWxz6MbupT3ZSlL0Po4WF/KujhQaVehijR2blyRDCzk9e45EaYMVhMBn49fnRuHxtkSpXTes1GxNpVmH86Bxfw== - dependencies: - "@jest/types" "^26.0.1" - ansi-regex "^5.0.0" - ansi-styles "^4.0.0" - react-is "^16.12.0" - pretty-hrtime@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" @@ -13595,7 +12675,7 @@ react-inspector@^4.0.0: is-dom "^1.0.9" prop-types "^15.6.1" -react-is@^16.12.0, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6: +react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.0, react-is@^16.8.1, react-is@^16.8.4, react-is@^16.8.6: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -13757,15 +12837,6 @@ read-pkg-up@^4.0.0: find-up "^3.0.0" read-pkg "^3.0.0" -read-pkg-up@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" - integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== - dependencies: - find-up "^4.1.0" - read-pkg "^5.2.0" - type-fest "^0.8.1" - read-pkg@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" @@ -13784,16 +12855,6 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" -read-pkg@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" - integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== - dependencies: - "@types/normalize-package-data" "^2.4.0" - normalize-package-data "^2.5.0" - parse-json "^5.0.0" - type-fest "^0.6.0" - "readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" @@ -14109,13 +13170,6 @@ resolve-cwd@^2.0.0: dependencies: resolve-from "^3.0.0" -resolve-cwd@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" - integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== - dependencies: - resolve-from "^5.0.0" - resolve-from@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" @@ -14153,7 +13207,7 @@ resolve@1.10.0: dependencies: path-parse "^1.0.6" -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.17.0, resolve@^1.3.2, resolve@^1.8.1, resolve@^1.9.0: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.3.2, resolve@^1.8.1, resolve@^1.9.0: version "1.17.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== @@ -14215,7 +13269,7 @@ rimraf@^2.2.8, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2, rimraf@^2.6.3, rimra dependencies: glob "^7.1.3" -rimraf@^3.0.0, rimraf@^3.0.2: +rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== @@ -14317,13 +13371,6 @@ sax@^1.2.4, sax@~1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -saxes@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - scheduler@^0.19.1: version "0.19.1" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" @@ -14393,7 +13440,7 @@ semver@^6.0.0, semver@^6.2.0, semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.1.3, semver@^7.2.1, semver@^7.3.2: +semver@^7.1.3, semver@^7.2.1: version "7.3.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== @@ -14770,11 +13817,6 @@ source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.7.3: - version "0.7.3" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== - space-separated-tokens@^1.0.0: version "1.1.5" resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz#85f32c3d10d9682007e917414ddc5c26d1aa6899" @@ -14907,13 +13949,6 @@ stack-utils@^1.0.1: resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.2.tgz#33eba3897788558bebfc2db059dc158ec36cebb8" integrity sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA== -stack-utils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.2.tgz#5cf48b4557becb4638d0bc4f21d23f5d19586593" - integrity sha512-0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg== - dependencies: - escape-string-regexp "^2.0.0" - stackframe@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.1.1.tgz#ffef0a3318b1b60c3b58564989aca5660729ec71" @@ -15000,14 +14035,6 @@ string-length@^2.0.0: astral-regex "^1.0.0" strip-ansi "^4.0.0" -string-length@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.1.tgz#4a973bf31ef77c4edbceadd6af2611996985f8a1" - integrity sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw== - dependencies: - char-regex "^1.0.2" - strip-ansi "^6.0.0" - string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -15179,11 +14206,6 @@ strip-eof@^1.0.0: resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - strip-indent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" @@ -15280,14 +14302,6 @@ supports-hyperlinks@^1.0.1: has-flag "^2.0.0" supports-color "^5.0.0" -supports-hyperlinks@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" - integrity sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA== - dependencies: - has-flag "^4.0.0" - supports-color "^7.0.0" - svg-parser@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" @@ -15317,7 +14331,7 @@ symbol-observable@^1.0.4, symbol-observable@^1.1.0: resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== -symbol-tree@^3.2.2, symbol-tree@^3.2.4: +symbol-tree@^3.2.2: version "3.2.4" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== @@ -15397,14 +14411,6 @@ term-size@^2.1.0: resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.0.tgz#1f16adedfe9bdc18800e1776821734086fcc6753" integrity sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw== -terminal-link@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" - integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== - dependencies: - ansi-escapes "^4.2.1" - supports-hyperlinks "^2.0.0" - terser-webpack-plugin@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-3.0.0.tgz#533d7189efc43d1bc21d89f1cd2b4b1e0c7441aa" @@ -15469,15 +14475,6 @@ test-exclude@^5.2.3: read-pkg-up "^4.0.0" require-main-filename "^2.0.0" -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - dependencies: - "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - text-table@0.2.0, text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" @@ -15488,11 +14485,6 @@ throat@^4.0.0, throat@^4.1.0: resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo= -throat@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" - integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== - throttle-debounce@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/throttle-debounce/-/throttle-debounce-2.1.0.tgz#257e648f0a56bd9e54fe0f132c4ab8611df4e1d5" @@ -15627,15 +14619,6 @@ tough-cookie@^2.3.3, tough-cookie@^2.3.4, tough-cookie@~2.5.0: psl "^1.1.28" punycode "^2.1.1" -tough-cookie@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz#9df4f57e739c26930a018184887f4adb7dca73b2" - integrity sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg== - dependencies: - ip-regex "^2.1.0" - psl "^1.1.28" - punycode "^2.1.1" - tr46@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" @@ -15643,13 +14626,6 @@ tr46@^1.0.1: dependencies: punycode "^2.1.0" -tr46@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.0.2.tgz#03273586def1595ae08fedb38d7733cee91d2479" - integrity sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg== - dependencies: - punycode "^2.1.1" - tree-kill@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.2.tgz#4ca09a9092c88b73a7cdc5e8a01b507b0790a0cc" @@ -15739,7 +14715,7 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-detect@4.0.8, type-detect@^4.0.0, type-detect@^4.0.5, type-detect@^4.0.8: +type-detect@^4.0.0, type-detect@^4.0.5: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== @@ -16101,15 +15077,6 @@ uuid@^8.0.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.1.0.tgz#6f1536eb43249f473abc6bd58ff983da1ca30d8d" integrity sha512-CI18flHDznR0lq54xBycOVmphdCYnQLKn8abKn7PXUiKUGdEd+/l9LWNJmugXel4hXq7S+RMNl34ecyC9TntWg== -v8-to-istanbul@^4.1.3: - version "4.1.4" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz#b97936f21c0e2d9996d4985e5c5156e9d4e49cd6" - integrity sha512-Rw6vJHj1mbdK8edjR7+zuJrpDtKIgNdAvTSAcpYfgMIw+u2dPDntD3dgN4XQFLU2/fvFQdzj+EeSGfd/jnY5fQ== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - source-map "^0.7.3" - validate-npm-package-license@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" @@ -16169,20 +15136,13 @@ vm-browserify@^1.0.1: resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== -w3c-hr-time@^1.0.1, w3c-hr-time@^1.0.2: +w3c-hr-time@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== dependencies: browser-process-hrtime "^1.0.0" -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" - wait-on@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/wait-on/-/wait-on-4.0.2.tgz#6ee9b5751b4e0329630abbb5fdba787802b32914" @@ -16246,16 +15206,6 @@ webidl-conversions@^4.0.2: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.0.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== - webpack-dev-middleware@^3.5.1, webpack-dev-middleware@^3.7.0: version "3.7.2" resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3" @@ -16430,7 +15380,7 @@ websocket-stream@^5.1.2: ws "^3.2.0" xtend "^4.0.0" -whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3, whatwg-encoding@^1.0.5: +whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3: version "1.0.5" resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== @@ -16465,15 +15415,6 @@ whatwg-url@^7.0.0: tr46 "^1.0.1" webidl-conversions "^4.0.2" -whatwg-url@^8.0.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.1.0.tgz#c628acdcf45b82274ce7281ee31dd3c839791771" - integrity sha512-vEIkwNi9Hqt4TV9RdnaBPNt+E2Sgmo3gePebCRgZ1R7g6d23+53zCTnuB0amKI4AXq6VM8jj2DUAa0S1vjJxkw== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^2.0.2" - webidl-conversions "^5.0.0" - which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" @@ -16779,11 +15720,6 @@ ws@^5.2.0: dependencies: async-limiter "~1.0.0" -ws@^7.2.3: - version "7.3.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.0.tgz#4b2f7f219b3d3737bc1a2fbf145d825b94d38ffd" - integrity sha512-iFtXzngZVXPGgpTlP1rBqsUK82p9tKqsWRPg5L56egiljujJT3vGAYnHANvFxBieXrTFavhzhxW52jnaWV+w2w== - wsrun@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/wsrun/-/wsrun-5.2.0.tgz#a7c0587cb371ea29352f0b3cad002ea839a25b0f" @@ -16809,11 +15745,6 @@ xml-name-validator@^3.0.0: resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - xregexp@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz#e698189de49dd2a18cc5687b05e17c8e43943020" @@ -16945,7 +15876,7 @@ yargs@^11.1.1: y18n "^3.2.1" yargs-parser "^9.0.2" -yargs@^15.0.1, yargs@^15.3.1: +yargs@^15.0.1: version "15.3.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.3.1.tgz#9505b472763963e54afe60148ad27a330818e98b" integrity sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA== From fdd7db18df77502528be7497f789dc1d89b56ec7 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Wed, 24 Jun 2020 15:28:41 -0400 Subject: [PATCH 07/85] removing unused tests --- .../outputs/pending/Case name.managed.json | 2 + .../outputs/pending/example-commands.json | 147 ++++++++++++++++++ .../resources/captures/capture-pokeapi.json | 1 - .../contexts/rfc/OASProjectionSpec.scala | 43 ----- .../interactions/CoverageVisitorSpec.scala | 112 ++++++------- .../CapturesDeserialization.scala | 26 ---- .../EventSerializationSpec.scala | 49 ------ 7 files changed, 205 insertions(+), 175 deletions(-) create mode 100644 core/domain-snapshots/commands-to-events/outputs/pending/Case name.managed.json create mode 100644 core/domain-snapshots/commands-to-events/outputs/pending/example-commands.json delete mode 100644 core/optic/shared/src/test/resources/captures/capture-pokeapi.json delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/contexts/rfc/OASProjectionSpec.scala delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/serialization/CapturesDeserialization.scala delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/serialization/EventSerializationSpec.scala diff --git a/core/domain-snapshots/commands-to-events/outputs/pending/Case name.managed.json b/core/domain-snapshots/commands-to-events/outputs/pending/Case name.managed.json new file mode 100644 index 0000000000..32960f8ced --- /dev/null +++ b/core/domain-snapshots/commands-to-events/outputs/pending/Case name.managed.json @@ -0,0 +1,2 @@ +[ +] \ No newline at end of file diff --git a/core/domain-snapshots/commands-to-events/outputs/pending/example-commands.json b/core/domain-snapshots/commands-to-events/outputs/pending/example-commands.json new file mode 100644 index 0000000000..69da35e972 --- /dev/null +++ b/core/domain-snapshots/commands-to-events/outputs/pending/example-commands.json @@ -0,0 +1,147 @@ +[ + { + "ShapeAdded" : { + "shapeId" : "basic_0", + "baseShapeId" : "$object", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "basic_2", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "basic_1", + "shapeId" : "basic_0", + "name" : "a", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "basic_1", + "shapeId" : "basic_2" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "basic_4", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "basic_3", + "shapeId" : "basic_0", + "name" : "b", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "basic_3", + "shapeId" : "basic_4" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeAdded" : { + "shapeId" : "basic_6", + "baseShapeId" : "$string", + "parameters" : { + "DynamicParameterList" : { + "shapeParameterIds" : [ + ] + } + }, + "name" : "", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "FieldAdded" : { + "fieldId" : "basic_5", + "shapeId" : "basic_0", + "name" : "c", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "basic_5", + "shapeId" : "basic_6" + } + }, + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + }, + { + "ShapeRenamed" : { + "shapeId" : "basic_0", + "name" : "Basic", + "eventContext" : { + "clientId" : "ccc", + "clientSessionId" : "sss", + "clientCommandBatchId" : "bbb", + "createdAt" : "NOW" + } + } + } +] \ No newline at end of file diff --git a/core/optic/shared/src/test/resources/captures/capture-pokeapi.json b/core/optic/shared/src/test/resources/captures/capture-pokeapi.json deleted file mode 100644 index 74dba91a78..0000000000 --- a/core/optic/shared/src/test/resources/captures/capture-pokeapi.json +++ /dev/null @@ -1 +0,0 @@ -[{"uuid":"efbd7dc6-f787-446f-9c09-c9f942273bdc","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,13,10,7,97,98,105,108,105,116,121,18,2,8,2,18,11,10,5,98,101,114,114,121,18,2,8,2,18,20,10,14,98,101,114,114,121,45,102,105,114,109,110,101,115,115,18,2,8,2,18,18,10,12,98,101,114,114,121,45,102,108,97,118,111,114,18,2,8,2,18,20,10,14,99,104,97,114,97,99,116,101,114,105,115,116,105,99,18,2,8,2,18,20,10,14,99,111,110,116,101,115,116,45,101,102,102,101,99,116,18,2,8,2,18,18,10,12,99,111,110,116,101,115,116,45,116,121,112,101,18,2,8,2,18,15,10,9,101,103,103,45,103,114,111,117,112,18,2,8,2,18,25,10,19,101,110,99,111,117,110,116,101,114,45,99,111,110,100,105,116,105,111,110,18,2,8,2,18,31,10,25,101,110,99,111,117,110,116,101,114,45,99,111,110,100,105,116,105,111,110,45,118,97,108,117,101,18,2,8,2,18,22,10,16,101,110,99,111,117,110,116,101,114,45,109,101,116,104,111,100,18,2,8,2,18,21,10,15,101,118,111,108,117,116,105,111,110,45,99,104,97,105,110,18,2,8,2,18,23,10,17,101,118,111,108,117,116,105,111,110,45,116,114,105,103,103,101,114,18,2,8,2,18,12,10,6,103,101,110,100,101,114,18,2,8,2,18,16,10,10,103,101,110,101,114,97,116,105,111,110,18,2,8,2,18,17,10,11,103,114,111,119,116,104,45,114,97,116,101,18,2,8,2,18,10,10,4,105,116,101,109,18,2,8,2,18,20,10,14,105,116,101,109,45,97,116,116,114,105,98,117,116,101,18,2,8,2,18,19,10,13,105,116,101,109,45,99,97,116,101,103,111,114,121,18,2,8,2,18,23,10,17,105,116,101,109,45,102,108,105,110,103,45,101,102,102,101,99,116,18,2,8,2,18,17,10,11,105,116,101,109,45,112,111,99,107,101,116,18,2,8,2,18,14,10,8,108,97,110,103,117,97,103,101,18,2,8,2,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,2,18,19,10,13,108,111,99,97,116,105,111,110,45,97,114,101,97,18,2,8,2,18,13,10,7,109,97,99,104,105,110,101,18,2,8,2,18,10,10,4,109,111,118,101,18,2,8,2,18,18,10,12,109,111,118,101,45,97,105,108,109,101,110,116,18,2,8,2,18,23,10,17,109,111,118,101,45,98,97,116,116,108,101,45,115,116,121,108,101,18,2,8,2,18,19,10,13,109,111,118,101,45,99,97,116,101,103,111,114,121,18,2,8,2,18,23,10,17,109,111,118,101,45,100,97,109,97,103,101,45,99,108,97,115,115,18,2,8,2,18,23,10,17,109,111,118,101,45,108,101,97,114,110,45,109,101,116,104,111,100,18,2,8,2,18,17,10,11,109,111,118,101,45,116,97,114,103,101,116,18,2,8,2,18,12,10,6,110,97,116,117,114,101,18,2,8,2,18,19,10,13,112,97,108,45,112,97,114,107,45,97,114,101,97,18,2,8,2,18,21,10,15,112,111,107,101,97,116,104,108,111,110,45,115,116,97,116,18,2,8,2,18,13,10,7,112,111,107,101,100,101,120,18,2,8,2,18,13,10,7,112,111,107,101,109,111,110,18,2,8,2,18,19,10,13,112,111,107,101,109,111,110,45,99,111,108,111,114,18,2,8,2,18,18,10,12,112,111,107,101,109,111,110,45,102,111,114,109,18,2,8,2,18,21,10,15,112,111,107,101,109,111,110,45,104,97,98,105,116,97,116,18,2,8,2,18,19,10,13,112,111,107,101,109,111,110,45,115,104,97,112,101,18,2,8,2,18,21,10,15,112,111,107,101,109,111,110,45,115,112,101,99,105,101,115,18,2,8,2,18,12,10,6,114,101,103,105,111,110,18,2,8,2,18,10,10,4,115,116,97,116,18,2,8,2,18,26,10,20,115,117,112,101,114,45,99,111,110,116,101,115,116,45,101,102,102,101,99,116,18,2,8,2,18,10,10,4,116,121,112,101,18,2,8,2,18,13,10,7,118,101,114,115,105,111,110,18,2,8,2,18,19,10,13,118,101,114,115,105,111,110,45,103,114,111,117,112,18,2,8,2]}},"asJsonString":"{\"ability\":\"https://pokeapi.co/api/v2/ability/\",\"berry\":\"https://pokeapi.co/api/v2/berry/\",\"berry-firmness\":\"https://pokeapi.co/api/v2/berry-firmness/\",\"berry-flavor\":\"https://pokeapi.co/api/v2/berry-flavor/\",\"characteristic\":\"https://pokeapi.co/api/v2/characteristic/\",\"contest-effect\":\"https://pokeapi.co/api/v2/contest-effect/\",\"contest-type\":\"https://pokeapi.co/api/v2/contest-type/\",\"egg-group\":\"https://pokeapi.co/api/v2/egg-group/\",\"encounter-condition\":\"https://pokeapi.co/api/v2/encounter-condition/\",\"encounter-condition-value\":\"https://pokeapi.co/api/v2/encounter-condition-value/\",\"encounter-method\":\"https://pokeapi.co/api/v2/encounter-method/\",\"evolution-chain\":\"https://pokeapi.co/api/v2/evolution-chain/\",\"evolution-trigger\":\"https://pokeapi.co/api/v2/evolution-trigger/\",\"gender\":\"https://pokeapi.co/api/v2/gender/\",\"generation\":\"https://pokeapi.co/api/v2/generation/\",\"growth-rate\":\"https://pokeapi.co/api/v2/growth-rate/\",\"item\":\"https://pokeapi.co/api/v2/item/\",\"item-attribute\":\"https://pokeapi.co/api/v2/item-attribute/\",\"item-category\":\"https://pokeapi.co/api/v2/item-category/\",\"item-fling-effect\":\"https://pokeapi.co/api/v2/item-fling-effect/\",\"item-pocket\":\"https://pokeapi.co/api/v2/item-pocket/\",\"language\":\"https://pokeapi.co/api/v2/language/\",\"location\":\"https://pokeapi.co/api/v2/location/\",\"location-area\":\"https://pokeapi.co/api/v2/location-area/\",\"machine\":\"https://pokeapi.co/api/v2/machine/\",\"move\":\"https://pokeapi.co/api/v2/move/\",\"move-ailment\":\"https://pokeapi.co/api/v2/move-ailment/\",\"move-battle-style\":\"https://pokeapi.co/api/v2/move-battle-style/\",\"move-category\":\"https://pokeapi.co/api/v2/move-category/\",\"move-damage-class\":\"https://pokeapi.co/api/v2/move-damage-class/\",\"move-learn-method\":\"https://pokeapi.co/api/v2/move-learn-method/\",\"move-target\":\"https://pokeapi.co/api/v2/move-target/\",\"nature\":\"https://pokeapi.co/api/v2/nature/\",\"pal-park-area\":\"https://pokeapi.co/api/v2/pal-park-area/\",\"pokeathlon-stat\":\"https://pokeapi.co/api/v2/pokeathlon-stat/\",\"pokedex\":\"https://pokeapi.co/api/v2/pokedex/\",\"pokemon\":\"https://pokeapi.co/api/v2/pokemon/\",\"pokemon-color\":\"https://pokeapi.co/api/v2/pokemon-color/\",\"pokemon-form\":\"https://pokeapi.co/api/v2/pokemon-form/\",\"pokemon-habitat\":\"https://pokeapi.co/api/v2/pokemon-habitat/\",\"pokemon-shape\":\"https://pokeapi.co/api/v2/pokemon-shape/\",\"pokemon-species\":\"https://pokeapi.co/api/v2/pokemon-species/\",\"region\":\"https://pokeapi.co/api/v2/region/\",\"stat\":\"https://pokeapi.co/api/v2/stat/\",\"super-contest-effect\":\"https://pokeapi.co/api/v2/super-contest-effect/\",\"type\":\"https://pokeapi.co/api/v2/type/\",\"version\":\"https://pokeapi.co/api/v2/version/\",\"version-group\":\"https://pokeapi.co/api/v2/version-group/\"}","asText":null}}},"tags":[]},{"uuid":"c447e33b-7071-43f5-b5bd-b16ff081387c","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,170,4,10,7,114,101,115,117,108,116,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":293,\"next\":\"https://pokeapi.co/api/v2/ability/?offset=20&limit=20\",\"previous\":null,\"results\":[{\"name\":\"stench\",\"url\":\"https://pokeapi.co/api/v2/ability/1/\"},{\"name\":\"drizzle\",\"url\":\"https://pokeapi.co/api/v2/ability/2/\"},{\"name\":\"speed-boost\",\"url\":\"https://pokeapi.co/api/v2/ability/3/\"},{\"name\":\"battle-armor\",\"url\":\"https://pokeapi.co/api/v2/ability/4/\"},{\"name\":\"sturdy\",\"url\":\"https://pokeapi.co/api/v2/ability/5/\"},{\"name\":\"damp\",\"url\":\"https://pokeapi.co/api/v2/ability/6/\"},{\"name\":\"limber\",\"url\":\"https://pokeapi.co/api/v2/ability/7/\"},{\"name\":\"sand-veil\",\"url\":\"https://pokeapi.co/api/v2/ability/8/\"},{\"name\":\"static\",\"url\":\"https://pokeapi.co/api/v2/ability/9/\"},{\"name\":\"volt-absorb\",\"url\":\"https://pokeapi.co/api/v2/ability/10/\"},{\"name\":\"water-absorb\",\"url\":\"https://pokeapi.co/api/v2/ability/11/\"},{\"name\":\"oblivious\",\"url\":\"https://pokeapi.co/api/v2/ability/12/\"},{\"name\":\"cloud-nine\",\"url\":\"https://pokeapi.co/api/v2/ability/13/\"},{\"name\":\"compound-eyes\",\"url\":\"https://pokeapi.co/api/v2/ability/14/\"},{\"name\":\"insomnia\",\"url\":\"https://pokeapi.co/api/v2/ability/15/\"},{\"name\":\"color-change\",\"url\":\"https://pokeapi.co/api/v2/ability/16/\"},{\"name\":\"immunity\",\"url\":\"https://pokeapi.co/api/v2/ability/17/\"},{\"name\":\"flash-fire\",\"url\":\"https://pokeapi.co/api/v2/ability/18/\"},{\"name\":\"shield-dust\",\"url\":\"https://pokeapi.co/api/v2/ability/19/\"},{\"name\":\"own-tempo\",\"url\":\"https://pokeapi.co/api/v2/ability/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"2b545d7a-c628-4ee9-9033-8309c6d4b6fd","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,170,4,10,7,114,101,115,117,108,116,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":64,\"next\":\"https://pokeapi.co/api/v2/berry/?offset=20&limit=20\",\"previous\":null,\"results\":[{\"name\":\"cheri\",\"url\":\"https://pokeapi.co/api/v2/berry/1/\"},{\"name\":\"chesto\",\"url\":\"https://pokeapi.co/api/v2/berry/2/\"},{\"name\":\"pecha\",\"url\":\"https://pokeapi.co/api/v2/berry/3/\"},{\"name\":\"rawst\",\"url\":\"https://pokeapi.co/api/v2/berry/4/\"},{\"name\":\"aspear\",\"url\":\"https://pokeapi.co/api/v2/berry/5/\"},{\"name\":\"leppa\",\"url\":\"https://pokeapi.co/api/v2/berry/6/\"},{\"name\":\"oran\",\"url\":\"https://pokeapi.co/api/v2/berry/7/\"},{\"name\":\"persim\",\"url\":\"https://pokeapi.co/api/v2/berry/8/\"},{\"name\":\"lum\",\"url\":\"https://pokeapi.co/api/v2/berry/9/\"},{\"name\":\"sitrus\",\"url\":\"https://pokeapi.co/api/v2/berry/10/\"},{\"name\":\"figy\",\"url\":\"https://pokeapi.co/api/v2/berry/11/\"},{\"name\":\"wiki\",\"url\":\"https://pokeapi.co/api/v2/berry/12/\"},{\"name\":\"mago\",\"url\":\"https://pokeapi.co/api/v2/berry/13/\"},{\"name\":\"aguav\",\"url\":\"https://pokeapi.co/api/v2/berry/14/\"},{\"name\":\"iapapa\",\"url\":\"https://pokeapi.co/api/v2/berry/15/\"},{\"name\":\"razz\",\"url\":\"https://pokeapi.co/api/v2/berry/16/\"},{\"name\":\"bluk\",\"url\":\"https://pokeapi.co/api/v2/berry/17/\"},{\"name\":\"nanab\",\"url\":\"https://pokeapi.co/api/v2/berry/18/\"},{\"name\":\"wepear\",\"url\":\"https://pokeapi.co/api/v2/berry/19/\"},{\"name\":\"pinap\",\"url\":\"https://pokeapi.co/api/v2/berry/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"2ed00369-d458-41ef-bc92-d676da5045ec","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,227,1,10,7,112,111,107,101,109,111,110,18,215,1,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"The weather changes to rain when this Pokémon enters battle and does not end unless replaced by another weather condition.\\n\\nIf multiple Pokémon with this ability, drought, sand stream, or snow warning are sent out at the same time, the abilities will activate in order of Speed, respecting trick room. Each ability's weather will cancel the previous weather, and only the weather summoned by the slowest of the Pokémon will stay.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Summons rain that lasts indefinitely upon entering battle.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"出场时,\\n会将天气变为下雨。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"登場 したときに\\n天気を 雨に する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"The Pokémon makes it rain when it enters a battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Quando il Pokémon entra in campo, attira la pioggia.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Hace que llueva cuando entra en combate.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Ruft bei Kampfantritt Regen herbei.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon invoque la pluie quand il entre\\nau combat.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"出場時,\\n會將天氣變為下雨。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"등장했을 때\\n날씨를 비로 만든다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"とうじょう したときに\\nてんきを あめに する。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"出场时,\\n会将天气变为下雨。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"登場 したときに\\n天気を 雨に する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"The Pokémon makes it rain when it enters a battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Quando il Pokémon entra in campo, attira la pioggia.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Hace que llueva cuando entra en combate.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Ruft bei Kampfantritt Regen herbei.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon invoque la pluie quand il entre\\nau combat.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"出場時,\\n會將天氣變為下雨。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"등장했을 때\\n날씨를 비로 만든다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"とうじょう したときに\\nてんきを あめに する。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"戦闘に でると\\n雨を 降らす。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"The Pokémon makes it rain\\nwhen it enters a battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Quando scende in campo,\\nil Pokémon attira la pioggia.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Hace que llueva cuando entra en\\ncombate.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Ruft im Kampf Regen herbei.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Le Pokémon invoque la pluie\\nquand il entre au combat.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"배틀에 나가면\\n비를 내린다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"せんとうに でると\\nあめを ふらす。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"戦闘に でると\\n雨を 降らす。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"The Pokémon makes it rain\\nwhen it enters a battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Quando scende in campo,\\nil Pokémon attira la pioggia.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Hace que llueva cuando entra en\\ncombate.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Ruft im Kampf Regen herbei.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Le Pokémon invoque la pluie\\nquand il entre au combat.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"배틀에 나가면\\n비를 내린다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"せんとうに でると\\nあめを ふらす。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"The Pokémon makes it rain\\nif it appears in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"The Pokémon makes it rain\\nif it appears in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Le Pokémon invoque la pluie\\nquand il entre au combat.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"The Pokémon makes it rain\\nif it appears in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"The Pokémon makes it rain\\nif it appears in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"The Pokémon makes it rain\\nif it appears in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Summons rain in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Summons rain in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Summons rain in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":2,\"is_main_series\":true,\"name\":\"drizzle\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"降雨\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"あめふらし\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Drizzle\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Piovischio\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Llovizna\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Niesel\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Crachin\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"降雨\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"잔비\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"あめふらし\"}],\"pokemon\":[{\"is_hidden\":true,\"pokemon\":{\"name\":\"politoed\",\"url\":\"https://pokeapi.co/api/v2/pokemon/186/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pelipper\",\"url\":\"https://pokeapi.co/api/v2/pokemon/279/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"kyogre\",\"url\":\"https://pokeapi.co/api/v2/pokemon/382/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"7b5a5a7f-7cfa-477e-95ab-09b7693e1f02","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,140,10,10,7,112,111,107,101,109,111,110,18,128,10,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"While this Pokémon is in battle, self destruct and explosion will fail and aftermath will not take effect.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Prevents self destruct, explosion, and aftermath from working while the Pokémon is in battle.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"通过把周围都弄湿,\\n使谁都无法使用自爆等爆炸类的招式。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"あたりを 湿らせることに よって\\nじばく などの 爆発する 技を\\nだれも 使えなくなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Prevents the use of explosive moves such as\\nSelf-Destruct by dampening its surroundings.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Aumenta l’umidità circostante, impedendo l’uso\\ndi Autodistruzione e di altre mosse esplosive.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Aumenta la humedad del entorno y evita que se\\npuedan utilizar movimientos explosivos, tales como\\nAutodestrucción.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Befeuchtet die Umgebung und verhindert so den\\nEinsatz von Attacken wie Finale, die Explosionen\\nauslösen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon augmente l’humidité de l’air,\\nce qui empêche tous les Pokémon d’utiliser\\ndes capacités explosives telles que Destruction.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"透過把周圍都弄濕,\\n使誰都無法使用自爆等爆炸類的招式。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"주변을 습하게 함으로써\\n자폭 등 폭발하는 기술을\\n아무도 못 쓰게 한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"あたりを しめらせることに よって\\nじばく などの ばくはつする わざを\\nだれも つかえなくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"通过把周围都弄湿,\\n使谁都无法使用自爆等爆炸类的招式。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"あたりを 湿らせることに よって\\nじばく などの 爆発する 技を\\nだれも 使えなくなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Prevents the use of explosive moves such as\\nSelf-Destruct by dampening its surroundings.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Aumenta l’umidità circostante, impedendo l’uso\\ndi Autodistruzione e di altre mosse esplosive.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Aumenta la humedad del entorno y evita que se\\npuedan utilizar movimientos explosivos, tales como\\nAutodestrucción.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Befeuchtet die Umgebung und verhindert so den\\nEinsatz von Attacken wie Finale, die Explosionen\\nauslösen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon augmente l’humidité de l’air,\\nce qui empêche tous les Pokémon d’utiliser\\ndes capacités explosives telles que Destruction.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"透過把周圍都弄濕,\\n使誰都無法使用自爆等爆炸類的招式。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"주변을 습하게 함으로써\\n자폭 등 폭발하는 기술을\\n아무도 못 쓰게 한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"あたりを しめらせることに よって\\nじばく などの ばくはつする わざを\\nだれも つかえなくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"だれも 爆発が\\nできなくなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Prevents the use of\\nself-destructing moves.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Impedisce le mosse\\nautodistruttive.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Evita que un Pokémon pueda\\nautodestruirse.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Hält alle Pokémon davon ab,\\nzu explodieren.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Empêche les combattants de\\ns’autodétruire.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"누구도 폭발\\n할 수 없게 된다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"だれも ばくはつが\\nできなくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"だれも 爆発が\\nできなくなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Prevents the use of\\nself-destructing moves.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Impedisce le mosse\\nautodistruttive.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Evita que un Pokémon pueda\\nautodestruirse.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Hält alle Pokémon davon ab,\\nzu explodieren.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Empêche les combattants de\\ns’autodétruire.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"누구도 폭발\\n할 수 없게 된다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"だれも ばくはつが\\nできなくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Prevents the use of\\nself-destructing moves.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Prevents the use of\\nself-destructing moves.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Empêche les combattants\\nde s’autodétruire.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Prevents combatants\\nfrom self-destructing.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Prevents combatants from\\nself destructing.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Prevents combatants from\\nself destructing.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Prevents self-destruction.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Prevents self-destruction.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Prevents self-destruction.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":6,\"is_main_series\":true,\"name\":\"damp\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"湿气\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"しめりけ\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Damp\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Umidità\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Humedad\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Feuchtigkeit\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Moiteur\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"濕氣\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"습기\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"しめりけ\"}],\"pokemon\":[{\"is_hidden\":true,\"pokemon\":{\"name\":\"paras\",\"url\":\"https://pokeapi.co/api/v2/pokemon/46/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"parasect\",\"url\":\"https://pokeapi.co/api/v2/pokemon/47/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"psyduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon/54/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"golduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon/55/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"poliwag\",\"url\":\"https://pokeapi.co/api/v2/pokemon/60/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"poliwhirl\",\"url\":\"https://pokeapi.co/api/v2/pokemon/61/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"poliwrath\",\"url\":\"https://pokeapi.co/api/v2/pokemon/62/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"horsea\",\"url\":\"https://pokeapi.co/api/v2/pokemon/116/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"seadra\",\"url\":\"https://pokeapi.co/api/v2/pokemon/117/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"politoed\",\"url\":\"https://pokeapi.co/api/v2/pokemon/186/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"wooper\",\"url\":\"https://pokeapi.co/api/v2/pokemon/194/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"quagsire\",\"url\":\"https://pokeapi.co/api/v2/pokemon/195/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"kingdra\",\"url\":\"https://pokeapi.co/api/v2/pokemon/230/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"mudkip\",\"url\":\"https://pokeapi.co/api/v2/pokemon/258/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"marshtomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon/259/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"swampert\",\"url\":\"https://pokeapi.co/api/v2/pokemon/260/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"frillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon/592/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"jellicent\",\"url\":\"https://pokeapi.co/api/v2/pokemon/593/\"},\"slot\":3}]}","asText":null}}},"tags":[]},{"uuid":"ad279bd1-3628-4168-9577-d56f3e8245a5","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,148,1,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,129,1,8,1,26,125,8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,180,23,10,7,112,111,107,101,109,111,110,18,168,23,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[{\"effect_entries\":[{\"effect\":\"Does not prevent regular KOs from full HP.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}}],\"effect_entries\":[{\"effect\":\"When this Pokémon is at full HP, any hit that would knock it out will instead leave it with 1 HP. Regardless of its current HP, it is also immune to the one-hit KO moves: fissure, guillotine, horn drill, and sheer cold.\\n\\nIf this Pokémon is holding a focus sash, this ability takes precedence and the item will not be consumed.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Prevents being KOed from full HP, leaving 1 HP instead. Protects against the one-hit KO moves regardless of HP.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"即使受到对手的招式攻击,\\n也不会被一击打倒。\\n一击必杀的招式也没有效果。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"相手の 技を 受けても\\n一撃で 倒されることが ない。\\n一撃必殺技も 効かない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"It cannot be knocked out with one hit. One-hit KO\\nmoves cannot knock it out, either.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Se il Pokémon ha tutti i PS, evita che vada KO\\nin un sol colpo. Inoltre, è immune alle mosse\\nche causano KO immediato.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Evita que el rival pueda debilitarlo de un solo golpe\\ncuando tiene los PS al máximo.\\nTambién anula los movimientos fulminantes.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Bietet Schutz gegen K.O.-Attacken. Bei vollen KP\\nübersteht das Pokémon auch K.O.-Treffer.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon encaisse toujours au moins une attaque\\ns’il a tous ses PV. Il est également immunisé contre\\nles capacités pouvant mettre K.O. en un coup.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"受到對手的招式攻擊時\\n不會被一擊打倒。\\n一擊必殺的招式也沒有效果。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"상대 기술을 받아도\\n일격으로 쓰러지지 않는다.\\n일격필살 기술도 효과 없다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"あいての わざを うけても\\nいちげきで たおされることが ない。\\nいちげきひっさつわざも きかない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"即使受到对手的招式攻击,\\n也不会被一击打倒。\\n一击必杀的招式也没有效果。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"相手の 技を 受けても\\n一撃で 倒されることが ない。\\n一撃必殺技も 効かない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"It cannot be knocked out with one hit. One-hit KO\\nmoves cannot knock it out, either.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Se il Pokémon ha tutti i PS, evita che vada KO\\nin un sol colpo. Inoltre, è immune alle mosse\\nche causano KO immediato.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Evita que el rival pueda debilitarlo de un solo golpe\\ncuando tiene los PS al máximo.\\nTambién anula los movimientos fulminantes.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Bietet Schutz gegen K.O.-Attacken. Bei vollen KP\\nübersteht das Pokémon auch K.O.-Treffer.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon encaisse toujours au moins une attaque\\ns’il a tous ses PV. Il est également immunisé contre\\nles capacités pouvant mettre K.O. en un coup.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"受到對手的招式攻擊時\\n不會被一擊打倒。\\n一擊必殺的招式也沒有效果。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"상대 기술을 받아도\\n일격으로 쓰러지지 않는다.\\n일격필살 기술도 효과 없다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"あいての わざを うけても\\nいちげきで たおされることが ない。\\nいちげきひっさつわざも きかない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"一撃で 倒されない。\\n\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"It cannot be knocked\\nout with one hit.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Evita che il Pokémon vada KO\\nin un sol colpo.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Evita que el rival pueda debilitarle\\nde un solo golpe.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Bietet Schutz gegen K.O.-Treffer.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Protège des capacités mettant\\nK.O. en un coup.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"일격으로\\n쓰러지지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"いちげきで\\nたおされない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"一撃で 倒されない。\\n\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"It cannot be knocked\\nout with one hit.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Evita che il Pokémon vada KO\\nin un sol colpo.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Evita que el rival pueda debilitarle\\nde un solo golpe.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Bietet Schutz gegen K.O.-Treffer.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Protège des capacités mettant\\nK.O. en un coup.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"일격으로\\n쓰러지지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"いちげきで\\nたおされない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"It cannot be knocked\\nout with one hit.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"It cannot be knocked\\nout with one hit.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Protège des capacités\\nmettant K.O. en un coup.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"It is protected against\\n1-hit KO attacks.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"The Pokémon is protected\\nagainst 1-hit KO attacks.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"The Pokémon is protected\\nagainst 1-hit KO attacks.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Negates 1-hit KO attacks.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Negates 1-hit KO attacks.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Negates 1-hit KO attacks.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":5,\"is_main_series\":true,\"name\":\"sturdy\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"结实\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"がんじょう\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Sturdy\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Vigore\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Robustez\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Robustheit\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Fermeté\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"結實\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"옹골참\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"がんじょう\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"geodude\",\"url\":\"https://pokeapi.co/api/v2/pokemon/74/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"graveler\",\"url\":\"https://pokeapi.co/api/v2/pokemon/75/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"golem\",\"url\":\"https://pokeapi.co/api/v2/pokemon/76/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"magnemite\",\"url\":\"https://pokeapi.co/api/v2/pokemon/81/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"magneton\",\"url\":\"https://pokeapi.co/api/v2/pokemon/82/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"onix\",\"url\":\"https://pokeapi.co/api/v2/pokemon/95/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"sudowoodo\",\"url\":\"https://pokeapi.co/api/v2/pokemon/185/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pineco\",\"url\":\"https://pokeapi.co/api/v2/pokemon/204/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"forretress\",\"url\":\"https://pokeapi.co/api/v2/pokemon/205/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"steelix\",\"url\":\"https://pokeapi.co/api/v2/pokemon/208/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"shuckle\",\"url\":\"https://pokeapi.co/api/v2/pokemon/213/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"skarmory\",\"url\":\"https://pokeapi.co/api/v2/pokemon/227/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"donphan\",\"url\":\"https://pokeapi.co/api/v2/pokemon/232/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"nosepass\",\"url\":\"https://pokeapi.co/api/v2/pokemon/299/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"aron\",\"url\":\"https://pokeapi.co/api/v2/pokemon/304/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"lairon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/305/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"aggron\",\"url\":\"https://pokeapi.co/api/v2/pokemon/306/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"relicanth\",\"url\":\"https://pokeapi.co/api/v2/pokemon/369/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"regirock\",\"url\":\"https://pokeapi.co/api/v2/pokemon/377/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"shieldon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/410/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"bastiodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/411/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"bonsly\",\"url\":\"https://pokeapi.co/api/v2/pokemon/438/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"magnezone\",\"url\":\"https://pokeapi.co/api/v2/pokemon/462/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon/476/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"roggenrola\",\"url\":\"https://pokeapi.co/api/v2/pokemon/524/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"boldore\",\"url\":\"https://pokeapi.co/api/v2/pokemon/525/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"gigalith\",\"url\":\"https://pokeapi.co/api/v2/pokemon/526/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"sawk\",\"url\":\"https://pokeapi.co/api/v2/pokemon/539/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"dwebble\",\"url\":\"https://pokeapi.co/api/v2/pokemon/557/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"crustle\",\"url\":\"https://pokeapi.co/api/v2/pokemon/558/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"tirtouga\",\"url\":\"https://pokeapi.co/api/v2/pokemon/564/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"carracosta\",\"url\":\"https://pokeapi.co/api/v2/pokemon/565/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"tyrunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon/696/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"carbink\",\"url\":\"https://pokeapi.co/api/v2/pokemon/703/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"bergmite\",\"url\":\"https://pokeapi.co/api/v2/pokemon/712/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"avalugg\",\"url\":\"https://pokeapi.co/api/v2/pokemon/713/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"togedemaru\",\"url\":\"https://pokeapi.co/api/v2/pokemon/777/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"cosmoem\",\"url\":\"https://pokeapi.co/api/v2/pokemon/790/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"geodude-alola\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10109/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"graveler-alola\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10110/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"golem-alola\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10111/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"togedemaru-totem\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10154/\"},\"slot\":3}]}","asText":null}}},"tags":[]},{"uuid":"416c5234-d7bb-49e4-ba0f-2c6fe13d1e1d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,141,5,10,7,112,111,107,101,109,111,110,18,129,5,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"Moves cannot score critical hits against this Pokémon.\\n\\nThis ability functions identically to shell armor.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Protects against critical hits.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"被坚硬的甲壳守护着,\\n不会被对手的攻击击中要害。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"硬い 甲羅に 守られて\\n相手の 攻撃が\\n急所に 当たらない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Hard armor protects the Pokémon from critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Il Pokémon è protetto da una dura corazza\\nche gli evita di subire brutti colpi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"La robusta coraza que lo protege bloquea los golpes\\ncríticos.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Wehrt gegnerische Volltreffer mit einem harten\\nPanzer ab.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon est protégé des coups critiques\\npar une solide carapace.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"被堅硬的甲殼守護著,\\n不會被對手的攻擊擊中要害。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"단단한 껍질에 보호받아\\n상대의 공격이\\n급소에 맞지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"かたい こうらに まもられて\\nあいての こうげきが\\nきゅうしょに あたらない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"被坚硬的甲壳守护着,\\n不会被对手的攻击击中要害。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"硬い 甲羅に 守られて\\n相手の 攻撃が\\n急所に 当たらない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Hard armor protects the Pokémon from critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Il Pokémon è protetto da una dura corazza\\nche gli evita di subire brutti colpi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"La robusta coraza que lo protege bloquea los golpes\\ncríticos.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Wehrt gegnerische Volltreffer mit einem harten\\nPanzer ab.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon est protégé des coups critiques\\npar une solide carapace.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"被堅硬的甲殼守護著,\\n不會被對手的攻擊擊中要害。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"단단한 껍질에 보호받아\\n상대의 공격이\\n급소에 맞지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"かたい こうらに まもられて\\nあいての こうげきが\\nきゅうしょに あたらない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"相手の 攻撃が\\n急所に 当たらない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Protects the Pokémon\\nfrom critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Evita che il Pokémon subisca\\nbrutti colpi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Bloquea los golpes críticos.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Wehrt gegnerische Volltreffer ab.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Le Pokémon est protégé des\\ncoups critiques.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"상대의 공격이\\n급소에 맞지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"あいての こうげきが\\nきゅうしょに あたらない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"相手の 攻撃が\\n急所に 当たらない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Protects the Pokémon\\nfrom critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Evita che il Pokémon subisca\\nbrutti colpi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Bloquea golpes críticos.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Wehrt gegnerische Volltreffer ab.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Le Pokémon est protégé des\\ncoups critiques.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"상대의 공격이\\n급소에 맞지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"あいての こうげきが\\nきゅうしょに あたらない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"The Pokémon is protected\\nagainst critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"The Pokémon is protected\\nagainst critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Le Pokémon est protégé\\ndes coups critiques.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"The Pokémon is protected\\nagainst critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"The Pokémon is protected\\nagainst critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"The Pokémon is protected\\nagainst critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Blocks critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Blocks critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Blocks critical hits.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":4,\"is_main_series\":true,\"name\":\"battle-armor\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"战斗盔甲\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"カブトアーマー\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Battle Armor\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Lottascudo\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Armadura Batalla\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Kampfpanzer\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Armurbaston\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"戰鬥盔甲\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"전투무장\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"カブトアーマー\"}],\"pokemon\":[{\"is_hidden\":true,\"pokemon\":{\"name\":\"cubone\",\"url\":\"https://pokeapi.co/api/v2/pokemon/104/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"marowak\",\"url\":\"https://pokeapi.co/api/v2/pokemon/105/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"kabuto\",\"url\":\"https://pokeapi.co/api/v2/pokemon/140/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"kabutops\",\"url\":\"https://pokeapi.co/api/v2/pokemon/141/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"anorith\",\"url\":\"https://pokeapi.co/api/v2/pokemon/347/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"armaldo\",\"url\":\"https://pokeapi.co/api/v2/pokemon/348/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"skorupi\",\"url\":\"https://pokeapi.co/api/v2/pokemon/451/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"drapion\",\"url\":\"https://pokeapi.co/api/v2/pokemon/452/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"type-null\",\"url\":\"https://pokeapi.co/api/v2/pokemon/772/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"9abeef08-c0fc-4ded-94e8-99b1af82edbc","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,226,6,10,7,112,111,107,101,109,111,110,18,214,6,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"This Pokémon's Speed rises one stage after each turn.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Raises Speed one stage after each turn.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"每一回合速度会变快。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"毎ターン 素早さが 上がる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Its Speed stat is boosted every turn.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"La Velocità aumenta a ogni turno.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Aumenta la Velocidad en cada turno.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Erhöht in jeder Runde die Initiative.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"La Vitesse du Pokémon augmente à chaque tour.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"每一回合速度會變快。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"매 턴 스피드가 올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"まいターン すばやさが あがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"每一回合速度会变快。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"毎ターン 素早さが 上がる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Its Speed stat is boosted every turn.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"La Velocità aumenta a ogni turno.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Aumenta la Velocidad en cada turno.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Erhöht in jeder Runde die Initiative.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"La Vitesse du Pokémon augmente à chaque tour.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"每一回合速度會變快。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"매 턴 스피드가 올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"まいターン すばやさが あがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"ちょっとずつ\\n素早く なっていく。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Its Speed stat is\\ngradually boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"La statistica Velocità aumenta\\ngradualmente.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Aumenta la Velocidad\\ngradualmente.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Erhöht Initiative nach und nach.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"La Vitesse du Pokémon\\naugmente progressivement.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"조금씩\\n스피드가 높아진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"ちょっとずつ\\nすばやく なっていく。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"ちょっとずつ\\n素早く なっていく。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Its Speed stat is\\ngradually boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"La statistica Velocità aumenta\\ngradualmente.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Aumenta la Velocidad\\ngradualmente.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Erhöht Initiative nach und nach.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"La Vitesse du Pokémon\\naugmente progressivement.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"조금씩\\n스피드가 높아진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"ちょっとずつ\\nすばやく なっていく。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Its Speed stat is\\ngradually boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Its Speed stat is\\ngradually boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"La Vitesse du Pokémon\\naugmente progressivement.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Its Speed stat is\\ngradually boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"The Pokémon’s Speed stat\\nis gradually boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"The Pokémon’s Speed stat\\nis gradually boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Gradually boosts SPEED.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Gradually boosts SPEED.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Gradually boosts SPEED.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":3,\"is_main_series\":true,\"name\":\"speed-boost\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"加速\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"かそく\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Speed Boost\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Acceleratore\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Impulso\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Temposchub\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Turbo\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"加速\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"가속\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"かそく\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"yanma\",\"url\":\"https://pokeapi.co/api/v2/pokemon/193/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"torchic\",\"url\":\"https://pokeapi.co/api/v2/pokemon/255/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"combusken\",\"url\":\"https://pokeapi.co/api/v2/pokemon/256/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"blaziken\",\"url\":\"https://pokeapi.co/api/v2/pokemon/257/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"ninjask\",\"url\":\"https://pokeapi.co/api/v2/pokemon/291/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"carvanha\",\"url\":\"https://pokeapi.co/api/v2/pokemon/318/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"sharpedo\",\"url\":\"https://pokeapi.co/api/v2/pokemon/319/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"yanmega\",\"url\":\"https://pokeapi.co/api/v2/pokemon/469/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"venipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon/543/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"whirlipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon/544/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"scolipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon/545/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"blaziken-mega\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10050/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"31da511c-d83b-451c-bf29-11e4e5ad5da9","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,226,6,10,7,112,111,107,101,109,111,110,18,214,6,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"This Pokémon cannot be paralyzed.\\n\\nIf a Pokémon is paralyzed and acquires this ability, its paralysis is healed; this includes when regaining a lost ability upon leaving battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Prevents paralysis.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"因为身体柔软,\\n不会变为麻痹状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"柔軟な 体によって\\nまひ状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Its limber body protects the Pokémon from paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Il corpo flessibile del Pokémon gli impedisce\\ndi subire gli effetti della paralisi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Evita ser paralizado gracias a la flexibilidad de su\\ncuerpo.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Der flexible Körper des Pokémon schützt es vor\\nParalyse.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon s’est suffisamment échauffé,\\nce qui l’immunise contre la paralysie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因為身體柔軟,\\n不會陷入麻痺狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"유연한 몸으로 인해\\n마비 상태가 되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"じゅうなんな からだによって\\nまひ じょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因为身体柔软,\\n不会变为麻痹状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"柔軟な 体によって\\nまひ状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Its limber body protects the Pokémon from paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Il corpo flessibile del Pokémon gli impedisce\\ndi subire gli effetti della paralisi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Evita ser paralizado gracias a la flexibilidad de su\\ncuerpo.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Der flexible Körper des Pokémon schützt es vor\\nParalyse.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon s’est suffisamment échauffé,\\nce qui l’immunise contre la paralysie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"因為身體柔軟,\\n不會陷入麻痺狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"유연한 몸으로 인해\\n마비 상태가 되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"じゅうなんな からだによって\\nまひ じょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"まひ状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Protects the Pokémon\\nfrom paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Il Pokémon è protetto contro\\nla paralisi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Evita ser paralizado.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Verhindert Paralyse.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Protège le Pokémon de la\\nparalysie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"마비 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"まひ じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"まひ状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Protects the Pokémon\\nfrom paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Il Pokémon è protetto contro\\nla paralisi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Evita ser paralizado.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Verhindert Paralyse.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Protège le Pokémon de la\\nparalysie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"마비 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"まひ じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"The Pokémon is protected\\nfrom paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"The Pokémon is protected\\nfrom paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Protège le Pokémon de\\nla paralysie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"The Pokémon is protected\\nfrom paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"The Pokémon is protected\\nfrom paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"The Pokémon is protected\\nfrom paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Prevents paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Prevents paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Prevents paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":7,\"is_main_series\":true,\"name\":\"limber\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"柔软\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"じゅうなん\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Limber\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Scioltezza\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Flexibilidad\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Flexibilität\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Échauffement\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"柔軟\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"유연\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"じゅうなん\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"persian\",\"url\":\"https://pokeapi.co/api/v2/pokemon/53/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"hitmonlee\",\"url\":\"https://pokeapi.co/api/v2/pokemon/106/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"ditto\",\"url\":\"https://pokeapi.co/api/v2/pokemon/132/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"buneary\",\"url\":\"https://pokeapi.co/api/v2/pokemon/427/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"lopunny\",\"url\":\"https://pokeapi.co/api/v2/pokemon/428/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"glameow\",\"url\":\"https://pokeapi.co/api/v2/pokemon/431/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"purrloin\",\"url\":\"https://pokeapi.co/api/v2/pokemon/509/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"liepard\",\"url\":\"https://pokeapi.co/api/v2/pokemon/510/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"stunfisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon/618/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"hawlucha\",\"url\":\"https://pokeapi.co/api/v2/pokemon/701/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"mareanie\",\"url\":\"https://pokeapi.co/api/v2/pokemon/747/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"toxapex\",\"url\":\"https://pokeapi.co/api/v2/pokemon/748/\"},\"slot\":2}]}","asText":null}}},"tags":[]},{"uuid":"f9c2f19e-24e9-4034-a680-282facf959d8","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,148,1,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,129,1,8,1,26,125,8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,255,3,10,7,112,111,107,101,109,111,110,18,243,3,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[{\"effect_entries\":[{\"effect\":\"Has no effect in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}}],\"effect_entries\":[{\"effect\":\"This Pokémon's damaging moves have a 10% chance to make the target flinch with each hit if they do not already cause flinching as a secondary effect.\\n\\nThis ability does not stack with a held item.\\n\\nOverworld: The wild encounter rate is halved while this Pokémon is first in the party.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Has a 10% chance of making target Pokémon flinch with each hit.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"通过释放臭臭的气味,\\n在攻击的时候,\\n有时会使对手畏缩。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"臭い においを 放つことによって\\n攻撃した ときに 相手を\\nひるませることが ある。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"By releasing stench when attacking, this Pokémon\\nmay cause the target to flinch.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"A volte il cattivo odore emesso dal Pokémon\\nfa tentennare i nemici quando attacca.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Debido al mal olor que emana, al atacar al rival puede\\nhacerlo retroceder.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Lässt das Ziel beim Angriff eventuell durch Gestank\\nzurückschrecken.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon émet une odeur si nauséabonde\\nqu’il peut effrayer sa cible.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"發出臭氣,\\n在攻擊的時候,\\n有時會使對手畏縮。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"악취를 풍겨서\\n공격했을 때 상대가\\n풀죽을 때가 있다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"くさい においを はなつことによって\\nこうげきした ときに あいてを\\nひるませることが ある。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"通过释放臭臭的气味,\\n在攻击的时候,\\n有时会使对手畏缩。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"臭い においを 放つことによって\\n攻撃した ときに 相手を\\nひるませることが ある。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"By releasing stench when attacking, this Pokémon\\nmay cause the target to flinch.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"A volte il cattivo odore emesso dal Pokémon\\nfa tentennare i nemici quando attacca.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Debido al mal olor que emana, al atacar al rival puede\\nhacerlo retroceder.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Lässt das Ziel beim Angriff eventuell durch Gestank\\nzurückschrecken.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon émet une odeur si nauséabonde\\nqu’il peut effrayer sa cible.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"發出臭氣,\\n在攻擊的時候,\\n有時會使對手畏縮。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"악취를 풍겨서\\n공격했을 때 상대가\\n풀죽을 때가 있다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"くさい においを はなつことによって\\nこうげきした ときに あいてを\\nひるませることが ある。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"臭くて 相手が\\nひるむ ことがある。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"The stench may cause\\nthe target to flinch.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"A volte il cattivo odore\\nfa tentennare i nemici.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Es posible que el rival retroceda\\npor el mal olor.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Lässt den Gegner durch Gestank\\nzurückschrecken.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"La puanteur peut effrayer\\nl’adversaire.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"악취 때문에 상대가\\n풀죽을 때가 있다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"くさくて あいてが\\nひるむ ことがある。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"臭くて 相手が\\nひるむ ことがある。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"The stench may cause\\nthe target to flinch.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"A volte il cattivo odore\\nfa tentennare i nemici.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Es posible que el rival retroceda\\npor el mal olor.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Lässt den Gegner durch Gestank\\nzurückschrecken.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"La puanteur peut effrayer\\nl’adversaire.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"악취 때문에 상대가\\n풀죽을 때가 있다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"くさくて あいてが\\nひるむ ことがある。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"The stench may cause\\nthe target to flinch.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"The stench may cause\\nthe target to flinch.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"La puanteur peut\\neffrayer l’adversaire.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"The stench helps keep\\nwild Pokémon away.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"The stench helps keep\\nwild Pokémon away.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"The stench helps keep\\nwild Pokémon away.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Helps repel wild POKéMON.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Helps repel wild POKéMON.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Helps repel wild POKéMON.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":1,\"is_main_series\":true,\"name\":\"stench\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"恶臭\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"あくしゅう\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Stench\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Tanfo\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Hedor\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Duftnote\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Puanteur\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"惡臭\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"악취\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"あくしゅう\"}],\"pokemon\":[{\"is_hidden\":true,\"pokemon\":{\"name\":\"gloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon/44/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"grimer\",\"url\":\"https://pokeapi.co/api/v2/pokemon/88/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"muk\",\"url\":\"https://pokeapi.co/api/v2/pokemon/89/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"stunky\",\"url\":\"https://pokeapi.co/api/v2/pokemon/434/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"skuntank\",\"url\":\"https://pokeapi.co/api/v2/pokemon/435/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"trubbish\",\"url\":\"https://pokeapi.co/api/v2/pokemon/568/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"garbodor\",\"url\":\"https://pokeapi.co/api/v2/pokemon/569/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"76cb0c06-7850-4d81-a07d-aa0c90f2e041","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,148,1,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,129,1,8,1,26,125,8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,255,3,10,7,112,111,107,101,109,111,110,18,243,3,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[{\"effect_entries\":[{\"effect\":\"Does not absorb non-damaging electric moves, i.e. thunder wave.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}}],\"effect_entries\":[{\"effect\":\"Whenever an electric-type move hits this Pokémon, it heals for 1/4 of its maximum HP, negating any other effect on it.\\n\\nThis ability will not take effect if this Pokémon is ground-type and thus immune to Electric moves. Electric moves will ignore this Pokémon's substitute.\\n\\nThis effect includes non-damaging moves, i.e. thunder wave.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Absorbs electric moves, healing for 1/4 max HP.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"受到电属性的招式攻击时,\\n不会受到伤害,而是会回复。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"でんきタイプの 技を 受けると\\nダメージを 受けずに 回復する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Restores HP if hit by an Electric-type move, instead\\nof taking damage.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Se il Pokémon subisce una mossa di tipo Elettro,\\nrecupera PS anziché subire danni.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Si le alcanza un movimiento de tipo Eléctrico,\\nrecupera PS en vez de sufrir daño.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Treffer durch Elektro-Attacken verursachen keinen\\nSchaden, sondern regenerieren stattdessen KP.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Si le Pokémon est touché par une capacité Électrik,\\nil ne subit aucun dégât et regagne des PV à la place.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"受到電屬性的招式攻擊時,\\n不會受到傷害,而是會回復。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"전기타입의 기술을 받으면\\n데미지를 받지 않고 회복한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"でんきタイプの わざを うけると\\nダメージを うけずに かいふくする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"受到电属性的招式攻击时,\\n不会受到伤害,而是会回复。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"でんきタイプの 技を 受けると\\nダメージを 受けずに 回復する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Restores HP if hit by an Electric-type move, instead\\nof taking damage.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Se il Pokémon subisce una mossa di tipo Elettro,\\nrecupera PS anziché subire danni.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Si le alcanza un movimiento de tipo Eléctrico,\\nrecupera PS en vez de sufrir daño.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Treffer durch Elektro-Attacken verursachen keinen\\nSchaden, sondern regenerieren stattdessen KP.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Si le Pokémon est touché par une capacité Électrik,\\nil ne subit aucun dégât et regagne des PV à la place.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"受到電屬性的招式攻擊時,\\n不會受到傷害,而是會回復。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"전기타입의 기술을 받으면\\n데미지를 받지 않고 회복한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"でんきタイプの わざを うけると\\nダメージを うけずに かいふくする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"でんきを 受けると\\n回復する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Restores HP if hit by an\\nElectric-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Ridà PS se il Pokémon subisce\\nuna mossa di tipo Elettro.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Recupera PS al recibir ataques de\\ntipo Eléctrico.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Treffer durch Elektro-Attacken\\nregenerieren KP.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Récupère des PV si touché par\\nune capacité Électrik.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"전기를 받으면\\n회복한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"でんきを うけると\\nかいふくする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"でんきを 受けると\\n回復する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Restores HP if hit by an\\nElectric-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Ridà PS se il Pokémon subisce\\nuna mossa di tipo Elettro.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Recupera PS al recibir ataques de\\ntipo Eléctrico.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Treffer durch Elektro-Attacken\\nregenerieren KP.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Récupère des PV si touché par\\nune capacité Électrik.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"전기를 받으면\\n회복한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"でんきを うけると\\nかいふくする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Restores HP if hit by an\\nElectric-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Restores HP if hit by an\\nElectric-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Récupère des PV si touché\\npar une capacité Électrik.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Restores HP if hit by an\\nElectric-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Restores HP if hit by an\\nElectric-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Restores HP if hit by an\\nElectric-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Turns electricity into HP.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Turns electricity into HP.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Turns electricity into HP.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":10,\"is_main_series\":true,\"name\":\"volt-absorb\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"蓄电\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ちくでん\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Volt Absorb\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Assorbivolt\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Absorbe Elec\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Voltabsorber\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Absorb Volt\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"蓄電\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"축전\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ちくでん\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"jolteon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/135/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"chinchou\",\"url\":\"https://pokeapi.co/api/v2/pokemon/170/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"lanturn\",\"url\":\"https://pokeapi.co/api/v2/pokemon/171/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"minun\",\"url\":\"https://pokeapi.co/api/v2/pokemon/312/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"pachirisu\",\"url\":\"https://pokeapi.co/api/v2/pokemon/417/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"zeraora\",\"url\":\"https://pokeapi.co/api/v2/pokemon/807/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"thundurus-therian\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10020/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"d21d171b-3e16-4eac-803a-4ab848f17460","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,255,3,10,7,112,111,107,101,109,111,110,18,243,3,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"While this Pokémon is in battle, weather can still be in play, but will not have any of its effects.\\n\\nThis ability functions identically to air lock.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Negates all effects of weather, but does not prevent the weather itself.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"任何天气的影响都会消失。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"あらゆる 天気の 影響が\\nなくなって しまう。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Eliminates the effects of weather.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Neutralizza gli effetti di tutte le condizioni\\natmosferiche.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Anula todos los efectos del tiempo atmosférico.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Hebt alle Wetter-Effekte auf.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Annule tous les effets liés à la météo.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"任何天氣的影響都會消失。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"모든 날씨의 영향이\\n없어진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"あらゆる てんきの えいきょうが\\nなくなって しまう。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"任何天气的影响都会消失。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"あらゆる 天気の 影響が\\nなくなって しまう。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Eliminates the effects of weather.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Neutralizza gli effetti di tutte le condizioni\\natmosferiche.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Anula todos los efectos del tiempo atmosférico.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Hebt alle Wetter-Effekte auf.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Annule tous les effets liés à la météo.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"任何天氣的影響都會消失。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"모든 날씨의 영향이\\n없어진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"あらゆる てんきの えいきょうが\\nなくなって しまう。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"天気の 影響が\\nなくなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Eliminates the effects of weather.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Neutralizza gli effetti delle\\ncondizioni atmosferiche.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Anula los efectos del tiempo\\natmosférico.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Hebt Wetter-Effekte auf.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Annule les effets du climat.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"날씨의 영향이\\n없어진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"てんきの えいきょうが\\nなくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"天気の 影響が\\nなくなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Eliminates the effects of\\nweather.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Neutralizza gli effetti delle\\ncondizioni atmosferiche.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Anula los efectos del tiempo\\natmosférico.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Hebt Wetter-Effekte auf.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Annule les effets du climat.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"날씨의 영향이\\n없어진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"てんきの えいきょうが\\nなくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Eliminates the effects of\\nweather.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Eliminates the effects of\\nweather.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Annule les effets du\\nclimat.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Eliminates the effects of\\nweather.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Eliminates the effects of\\nweather.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Eliminates the effects of\\nweather.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Negates weather effects.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Negates weather effects.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Negates weather effects.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":13,\"is_main_series\":true,\"name\":\"cloud-nine\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"无关天气\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ノーてんき\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Cloud Nine\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Antimeteo\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Aclimatación\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Wolke Sieben\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Ciel Gris\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"無關天氣\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"날씨부정\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ノーてんき\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"psyduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon/54/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"golduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon/55/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"lickitung\",\"url\":\"https://pokeapi.co/api/v2/pokemon/108/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"swablu\",\"url\":\"https://pokeapi.co/api/v2/pokemon/333/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"altaria\",\"url\":\"https://pokeapi.co/api/v2/pokemon/334/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"lickilicky\",\"url\":\"https://pokeapi.co/api/v2/pokemon/463/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"drampa\",\"url\":\"https://pokeapi.co/api/v2/pokemon/780/\"},\"slot\":3}]}","asText":null}}},"tags":[]},{"uuid":"4a430d5a-3267-4c01-970f-3e56f1246cf2","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/16/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,148,1,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,129,1,8,1,26,125,8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,84,10,7,112,111,107,101,109,111,110,18,73,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[{\"effect_entries\":[{\"effect\":\"Triggers on every hit of multiple-hit moves.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}}],\"effect_entries\":[{\"effect\":\"Whenever this Pokémon takes damage from a move, the Pokémon's type changes to match the move.\\n\\nIf the Pokémon has two types, both are overridden. The Pokémon must directly take damage; for example, moves blocked by a substitute will not trigger this ability, nor will moves that deal damage indirectly, such as spikes.\\n\\nThis ability takes effect on only the last hit of a multiple-hit attack.\\n\\nIn Pokémon Colosseum and XD: Gale of Darkness, this ability does not take effect on Shadow-type moves.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Changes type to match when hit by a damaging move.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"自己的属性会变为\\n从对手处所受招式的属性。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"相手から 受けた 技の タイプに\\n自分の タイプが 変化 する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"The Pokémon’s type becomes the type of the move\\nused on it.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Il Pokémon acquisisce il tipo della mossa subita.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Adopta el tipo del último movimiento del que se es\\nblanco.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Ändert seinen Typ zu dem der Attacke des\\nAngreifers.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Lorsque le Pokémon est touché par une capacité,\\nil prend le type de celle-ci.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"自己的屬性會變為\\n從對手所受招式的屬性。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"상대에게 받은 기술의 타입으로\\n자신의 타입이 변화한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"あいてから うけた わざの タイプに\\nじぶんの タイプが へんか する。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"自己的属性会变为\\n从对手处所受招式的属性。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"相手から 受けた 技の タイプに\\n自分の タイプが 変化 する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"The Pokémon’s type becomes the type of the move\\nused on it.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Il Pokémon acquisisce il tipo della mossa subita.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Adopta el tipo del último movimiento del que se es\\nblanco.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Ändert seinen Typ zu dem der Attacke des\\nAngreifers.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Lorsque le Pokémon est touché par une capacité,\\nil prend le type de celle-ci.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"自己的屬性會變為\\n從對手所受招式的屬性。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"상대에게 받은 기술의 타입으로\\n자신의 타입이 변화한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"あいてから うけた わざの タイプに\\nじぶんの タイプが へんか する。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"受けた 技の タイプに\\n変化する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"The Pokémon’s type becomes\\nthe type of the move used on it.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Il Pokémon acquisisce il tipo\\ndella mossa subita.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Adopta el tipo del último\\nmovimiento del que se es blanco.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Ändert seinen Typ zu dem\\nder Attacke des Angreifers.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Le Pokémon adopte le type de\\nla capacité ennemie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"받은 기술의 타입으로\\n변화한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"うけた わざの タイプに\\nへんかする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"受けた 技の タイプに\\n変化する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"The Pokémon’s type becomes\\nthe type of the move used on it.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Il Pokémon acquisisce il tipo\\ndella mossa subita.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Adopta el tipo del último\\nmovimiento del que sea blanco.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Ändert seinen Typ zu dem\\nder Attacke des Angreifers.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Le Pokémon adopte le type de\\nla capacité ennemie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"받은 기술의 타입으로\\n변화한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"うけた わざの タイプに\\nへんかする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Changes the Pokémon’s\\ntype to the foe’s move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Changes the Pokémon’s\\ntype to the foe’s move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Le Pokémon adopte le type\\nde la capacité ennemie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Changes the Pokémon’s\\ntype to the foe’s move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Changes the Pokémon’s\\ntype to the foe’s move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Changes the Pokémon’s\\ntype to the foe’s move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Changes type to foe’s move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Changes type to foe’s move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Changes type to foe’s move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":16,\"is_main_series\":true,\"name\":\"color-change\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"变色\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"へんしょく\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Color Change\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Cambiacolore\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Cambio Color\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Farbwechsel\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Déguisement\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"變色\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"변색\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"へんしょく\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"kecleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/352/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"36d42a2f-397a-49a7-b2df-2764ee8f96b7","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,182,13,10,7,112,111,107,101,109,111,110,18,170,13,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"During a sandstorm, this Pokémon has 1.25× its evasion, and it does not take sandstorm damage regardless of type.\\n\\nThe evasion bonus does not count as a stat modifier.\\n\\nOverworld: If the lead Pokémon has this ability, the wild encounter rate is halved in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Increases evasion to 1.25× during a sandstorm. Protects against sandstorm damage.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"在沙暴的时候,\\n闪避率会提高。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"砂あらしの とき\\n回避率が 上がる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Boosts the Pokémon’s evasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"L’elusione aumenta durante le tempeste di sabbia.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Aumenta la Evasión durante las tormentas de arena.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Erhöht in Sandstürmen den Fluchtwert.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Augmente l’Esquive du Pokémon lors des tempêtes\\nde sable.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"在沙暴中\\n閃避率會提高。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"모래바람일 때\\n회피율이 올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"すなあらしの とき\\nかいひりつが あがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"在沙暴的时候,\\n闪避率会提高。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"砂あらしの とき\\n回避率が 上がる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Boosts the Pokémon’s evasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"L’elusione aumenta durante le tempeste di sabbia.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Aumenta la Evasión durante las tormentas de arena.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Erhöht in Sandstürmen den Fluchtwert.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Augmente l’Esquive du Pokémon lors des tempêtes\\nde sable.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"在沙暴中\\n閃避率會提高。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"모래바람일 때\\n회피율이 올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"すなあらしの とき\\nかいひりつが あがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"砂あらしで\\n回避率が あがる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Boosts the Pokémon’s\\nevasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"L’elusione aumenta durante\\nle tempeste di sabbia.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Aumenta la Evasión en las\\ntormentas de arena.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Erhöht in Sandstürmen\\nden Fluchtwert.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Augmente l’Esquive lors des\\ntempêtes de sable.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"모래바람으로\\n회피율이 올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"すなあらしで\\nかいひりつが あがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"砂あらしで\\n回避率が あがる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Boosts the Pokémon’s\\nevasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"L’elusione aumenta durante\\nle tempeste di sabbia.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Aumenta la Evasión en las\\ntormentas de arena.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Erhöht in Sandstürmen\\nden Fluchtwert.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Augmente l’Esquive lors des\\ntempêtes de sable.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"모래바람으로\\n회피율이 올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"すなあらしで\\nかいひりつが あがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Boosts the Pokémon’s\\nevasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Boosts the Pokémon’s\\nevasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Augmente l’Esquive lors\\ndes tempêtes de sable.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Boosts the Pokémon’s\\nevasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Boosts the Pokémon’s\\nevasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Boosts the Pokémon’s\\nevasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Ups evasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Ups evasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Ups evasion in a sandstorm.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":8,\"is_main_series\":true,\"name\":\"sand-veil\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"沙隐\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"すながくれ\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Sand Veil\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Sabbiavelo\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Velo Arena\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Sandschleier\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Voile Sable\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"沙隱\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"모래숨기\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"すながくれ\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"sandshrew\",\"url\":\"https://pokeapi.co/api/v2/pokemon/27/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"sandslash\",\"url\":\"https://pokeapi.co/api/v2/pokemon/28/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"diglett\",\"url\":\"https://pokeapi.co/api/v2/pokemon/50/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"dugtrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon/51/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"geodude\",\"url\":\"https://pokeapi.co/api/v2/pokemon/74/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"graveler\",\"url\":\"https://pokeapi.co/api/v2/pokemon/75/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"golem\",\"url\":\"https://pokeapi.co/api/v2/pokemon/76/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"gligar\",\"url\":\"https://pokeapi.co/api/v2/pokemon/207/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"phanpy\",\"url\":\"https://pokeapi.co/api/v2/pokemon/231/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"donphan\",\"url\":\"https://pokeapi.co/api/v2/pokemon/232/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"larvitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon/246/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"cacnea\",\"url\":\"https://pokeapi.co/api/v2/pokemon/331/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"cacturne\",\"url\":\"https://pokeapi.co/api/v2/pokemon/332/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"gible\",\"url\":\"https://pokeapi.co/api/v2/pokemon/443/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"gabite\",\"url\":\"https://pokeapi.co/api/v2/pokemon/444/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"garchomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon/445/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"gliscor\",\"url\":\"https://pokeapi.co/api/v2/pokemon/472/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"stunfisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon/618/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"helioptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon/694/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"heliolisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon/695/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"sandygast\",\"url\":\"https://pokeapi.co/api/v2/pokemon/769/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"palossand\",\"url\":\"https://pokeapi.co/api/v2/pokemon/770/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"diglett-alola\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10105/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"dugtrio-alola\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10106/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"488f7cde-b26f-4235-ad2d-3ea684d8a8d7","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,148,1,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,129,1,8,1,26,125,8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,210,15,10,7,112,111,107,101,109,111,110,18,198,15,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[{\"effect_entries\":[{\"effect\":\"Has no overworld effect.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}}],\"effect_entries\":[{\"effect\":\"Whenever a move makes contact with this Pokémon, the move's user has a 30% chance of being paralyzed.\\n\\nPokémon that are immune to electric-type moves can still be paralyzed by this ability.\\n\\nOverworld: If the lead Pokémon has this ability, there is a 50% chance that encounters will be with an electric Pokémon, if applicable.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Has a 30% chance of paralyzing attacking Pokémon on contact.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"身上带有静电,\\n有时会让接触到的对手麻痹。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"静電気を 体に まとい\\n触った 相手を\\nまひさせる ことがある。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"The Pokémon is charged with static electricity, so\\ncontact with it may cause paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Il contatto fisico con il corpo percorso\\ndall’elettricità statica del Pokémon può\\ncausare paralisi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"La electricidad estática que lo envuelve puede\\nparalizar al mínimo contacto.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Kann bei Berührung durch statisch aufgeladenen\\nKörper paralysieren.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon charge son corps en électricité statique,\\net tout contact avec lui peut paralyser.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"身上帶有靜電,\\n有時會令接觸到的對手麻痺。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"정전기를 몸에 둘러\\n접촉한 상대를\\n마비시킬 때가 있다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"せいでんきを からだに まとい\\nさわった あいてを\\nまひさせる ことがある。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"身上带有静电,\\n有时会让接触到的对手麻痹。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"静電気を 体に まとい\\n触った 相手を\\nまひさせる ことがある。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"The Pokémon is charged with static electricity, so\\ncontact with it may cause paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Il contatto fisico con il corpo percorso\\ndall’elettricità statica del Pokémon può\\ncausare paralisi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"La electricidad estática que lo envuelve puede\\nparalizar al mínimo contacto.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Kann bei Berührung durch statisch aufgeladenen\\nKörper paralysieren.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon charge son corps en électricité statique,\\net tout contact avec lui peut paralyser.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"身上帶有靜電,\\n有時會令接觸到的對手麻痺。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"정전기를 몸에 둘러\\n접촉한 상대를\\n마비시킬 때가 있다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"せいでんきを からだに まとい\\nさわった あいてを\\nまひさせる ことがある。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"触った 相手を\\nまひさせる ことがある。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Contact with the Pokémon\\nmay cause paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Il contatto fisico con il Pokémon\\npuò causare paralisi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Puede paralizar al mínimo\\ncontacto.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Kann bei Berührung paralysieren.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Un contact avec le Pokémon\\npeut paralyser.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"접촉한 상대를\\n마비시킬 때가 있다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"さわった あいてを\\nまひさせる ことがある。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"触った 相手を\\nまひさせる ことがある。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Contact with the Pokémon\\nmay cause paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Il contatto fisico con il Pokémon\\npuò causare paralisi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Puede paralizar al mínimo\\ncontacto.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Kann bei Berührung paralysieren.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Un contact avec le Pokémon\\npeut paralyser.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"접촉한 상대를\\n마비시킬 때가 있다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"さわった あいてを\\nまひさせる ことがある。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Contact with the Pokémon\\nmay cause paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Contact with the Pokémon\\nmay cause paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Un contact avec le\\nPokémon peut paralyser.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Contact with the Pokémon\\nmay cause paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Contact with the Pokémon\\nmay cause paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Contact with the Pokémon\\nmay cause paralysis.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Paralyzes on contact.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Paralyzes on contact.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Paralyzes on contact.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":9,\"is_main_series\":true,\"name\":\"static\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"静电\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"せいでんき\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Static\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Statico\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Elec. Estática\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Statik\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Statik\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"靜電\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"정전기\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"せいでんき\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu\",\"url\":\"https://pokeapi.co/api/v2/pokemon/25/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"raichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon/26/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"voltorb\",\"url\":\"https://pokeapi.co/api/v2/pokemon/100/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"electrode\",\"url\":\"https://pokeapi.co/api/v2/pokemon/101/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"electabuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon/125/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"zapdos\",\"url\":\"https://pokeapi.co/api/v2/pokemon/145/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon/172/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"mareep\",\"url\":\"https://pokeapi.co/api/v2/pokemon/179/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"flaaffy\",\"url\":\"https://pokeapi.co/api/v2/pokemon/180/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"ampharos\",\"url\":\"https://pokeapi.co/api/v2/pokemon/181/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"elekid\",\"url\":\"https://pokeapi.co/api/v2/pokemon/239/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"electrike\",\"url\":\"https://pokeapi.co/api/v2/pokemon/309/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"manectric\",\"url\":\"https://pokeapi.co/api/v2/pokemon/310/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"emolga\",\"url\":\"https://pokeapi.co/api/v2/pokemon/587/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"stunfisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon/618/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-rock-star\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10080/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-belle\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10081/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-pop-star\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10082/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-phd\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10083/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-libre\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10084/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-cosplay\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10085/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-original-cap\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10094/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-hoenn-cap\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10095/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-sinnoh-cap\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10096/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-unova-cap\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10097/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-kalos-cap\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10098/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-alola-cap\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10099/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"pikachu-partner-cap\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10148/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"2d9b48ab-6c96-44e4-a3b1-e1695497e3ac","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,148,1,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,129,1,8,1,26,125,8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,141,5,10,7,112,111,107,101,109,111,110,18,129,5,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[{\"effect_entries\":[{\"effect\":\"Has no overworld effect.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}}],\"effect_entries\":[{\"effect\":\"This Pokémon's moves have 1.3× their accuracy.\\n\\nThis ability has no effect on the one-hit KO moves (fissure, guillotine, horn drill, and sheer cold).\\n\\nOverworld: If the first Pokémon in the party has this ability, the chance of a wild Pokémon holding a particular item is raised from 50%, 5%, or 1% to 60%, 20%, or 5%, respectively.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Increases moves' accuracy to 1.3×.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"因为拥有复眼,\\n招式的命中率会提高。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"複眼を 持っているため\\n技の 命中率が 上がる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"The Pokémon’s compound eyes boost its accuracy.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"La precisione del Pokémon aumenta grazie ai suoi\\nocchi composti.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Aumenta la precisión de sus movimientos.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Erhöht die Genauigkeit von Attacken.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Les yeux à facettes du Pokémon augmentent\\nsa Précision.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因為擁有複眼,\\n會提高招式的命中率。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"복안을 가지고 있어\\n기술의 명중률이 올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"ふくがんを もっているため\\nわざの めいちゅうりつが あがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因为拥有复眼,\\n招式的命中率会提高。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"複眼を 持っているため\\n技の 命中率が 上がる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"The Pokémon’s compound eyes boost its accuracy.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"La precisione del Pokémon aumenta grazie ai suoi\\nocchi composti.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Aumenta la precisión de sus movimientos.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Erhöht die Genauigkeit von Attacken.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Les yeux à facettes du Pokémon augmentent\\nsa Précision.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"因為擁有複眼,\\n會提高招式的命中率。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"복안을 가지고 있어\\n기술의 명중률이 올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"ふくがんを もっているため\\nわざの めいちゅうりつが あがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"技の 命中率が\\nあがる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Boosts the Pokémon’s accuracy.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Aumenta la precisione\\ndel Pokémon.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Aumenta la Precisión del\\nPokémon.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Steigert die Genauigkeit\\nvon Attacken.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Augmente la Précision du\\nPokémon.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"기술의 명중률이\\n올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"わざの めいちゅうりつが\\nあがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"技の 命中率が\\nあがる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Boosts the Pokémon’s accuracy.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Aumenta la precisione\\ndel Pokémon.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Aumenta la Precisión del\\nPokémon.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Steigert die Genauigkeit\\nvon Attacken.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Augmente la Précision du\\nPokémon.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"기술의 명중률이\\n올라간다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"わざの めいちゅうりつが\\nあがる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"The Pokémon’s accuracy\\nis boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"The Pokémon’s accuracy\\nis boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Augmente la Précision du\\nPokémon.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"The Pokémon’s accuracy\\nis boosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"The Pokémon’s accuracy is\\nboosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"The Pokémon’s accuracy is\\nboosted.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Raises accuracy.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Raises accuracy.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Raises accuracy.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":14,\"is_main_series\":true,\"name\":\"compound-eyes\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"复眼\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ふくがん\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Compound Eyes\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Insettocchi\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Ojo Compuesto\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Facettenauge\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Œil Composé\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"複眼\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"복안\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ふくがん\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"butterfree\",\"url\":\"https://pokeapi.co/api/v2/pokemon/12/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"venonat\",\"url\":\"https://pokeapi.co/api/v2/pokemon/48/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"yanma\",\"url\":\"https://pokeapi.co/api/v2/pokemon/193/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"dustox\",\"url\":\"https://pokeapi.co/api/v2/pokemon/269/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"nincada\",\"url\":\"https://pokeapi.co/api/v2/pokemon/290/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"joltik\",\"url\":\"https://pokeapi.co/api/v2/pokemon/595/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"galvantula\",\"url\":\"https://pokeapi.co/api/v2/pokemon/596/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"scatterbug\",\"url\":\"https://pokeapi.co/api/v2/pokemon/664/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"vivillon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/666/\"},\"slot\":2}]}","asText":null}}},"tags":[]},{"uuid":"98a9b3bf-f4ae-4665-b138-a1b6baaabf34","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/18/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,148,1,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,129,1,8,1,26,125,8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,197,9,10,7,112,111,107,101,109,111,110,18,185,9,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[{\"effect_entries\":[{\"effect\":\"will o wisp does not trigger this ability for Pokémon immune to burns.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}}],\"effect_entries\":[{\"effect\":\"This Pokémon is immune to fire-type moves. Once this Pokémon has been hit by a Fire move, its own Fire moves will inflict 1.5× as much damage until it leaves battle.\\n\\nThis ability has no effect while the Pokémon is frozen. The Fire damage bonus is retained even if the Pokémon is frozen and thawed or the ability is lost or disabled. Fire moves will ignore this Pokémon's substitute. This ability takes effect even on non-damaging moves, i.e. will o wisp.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Protects against fire moves. Once one has been blocked, the Pokémon's own Fire moves inflict 1.5× damage until it leaves battle.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"受到火属性的招式攻击时,\\n吸收火焰,自己使出的\\n火属性招式会变强。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"ほのおタイプの 技を 受けると\\n炎を もらい 自分が 出す\\nほのおタイプの 技が 強くなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Powers up the Pokémon’s Fire-type moves if it’s hit\\nby one.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Se il Pokémon subisce una mossa di tipo Fuoco,\\nne sfrutta il calore per potenziare le proprie mosse\\ndello stesso tipo.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Si le alcanza algún movimiento de tipo Fuego,\\npotencia sus propios movimientos de dicho tipo.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Verstärkt Feuer-Attacken, wenn es von\\nFeuer-Attacken getroffen wird.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Lorsque le Pokémon est touché par une capacité\\nde type Feu, il absorbe la chaleur pour renforcer\\nses propres capacités Feu.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"受到火屬性的招式攻擊時,\\n吸收火焰,讓自己使出的\\n火屬性招式變強。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"불꽃타입의 기술을 받으면\\n불꽃을 받아서 자신이 사용하는\\n불꽃타입의 기술이 강해진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"ほのおタイプの わざを うけると\\nほのおを もらい じぶんが だす\\nほのおタイプの わざが つよくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"受到火属性的招式攻击时,\\n吸收火焰,自己使出的\\n火属性招式会变强。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"ほのおタイプの 技を 受けると\\n炎を もらい 自分が 出す\\nほのおタイプの 技が 強くなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Powers up the Pokémon’s Fire-type moves if it’s hit\\nby one.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Se il Pokémon subisce una mossa di tipo Fuoco,\\nne sfrutta il calore per potenziare le proprie mosse\\ndello stesso tipo.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Si le alcanza algún movimiento de tipo Fuego,\\npotencia sus propios movimientos de dicho tipo.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Verstärkt Feuer-Attacken, wenn es von\\nFeuer-Attacken getroffen wird.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Lorsque le Pokémon est touché par une capacité\\nde type Feu, il absorbe la chaleur pour renforcer\\nses propres capacités Feu.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"受到火屬性的招式攻擊時,\\n吸收火焰,讓自己使出的\\n火屬性招式變強。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"불꽃타입의 기술을 받으면\\n불꽃을 받아서 자신이 사용하는\\n불꽃타입의 기술이 강해진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"ほのおタイプの わざを うけると\\nほのおを もらい じぶんが だす\\nほのおタイプの わざが つよくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"ほのおを 受けると\\nほのお技が 強くなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Powers up the Pokémon’s\\nFire-type moves if it’s hit by one.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Potenzia le proprie mosse Fuoco\\nse se ne subisce una.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Potencia movimientos de tipo\\nFuego si ha sufrido antes alguno.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Verstärkt Feuer-Attacken, wenn\\nvon Feuer-Attacken getroffen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Booste les capacités Feu si\\ntouché par attaque Feu.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"불꽃을 받으면\\n불꽃 기술이 강해진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"ほのおを うけると\\nほのおわざが つよくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"ほのおを 受けると\\nほのお技が 強くなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Powers up the Pokémon’s Fire-\\ntype moves if it’s hit by one.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Potenzia le proprie mosse Fuoco\\nse se ne subisce una.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Potencia movimientos de tipo\\nFuego si ha sufrido antes alguno.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Verstärkt Feuer-Attacken, wenn\\nvon Feuer-Attacken getroffen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Booste les capacités Feu si\\ntouché par attaque Feu.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"불꽃을 받으면\\n불꽃 기술이 강해진다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"ほのおを うけると\\nほのおわざが つよくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"It powers up Fire-type\\nmoves if it’s hit by one.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"It powers up Fire-type\\nmoves if it’s hit by one.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Booste capacités Feu si\\ntouché par attaques Feu.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"It powers up Fire-type\\nmoves if it’s hit by one.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Powers up Fire-type moves\\nif hit by a fire move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Powers up Fire-type moves\\nif hit by a fire move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Powers up if hit by fire.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Powers up if hit by fire.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Powers up if hit by fire.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":18,\"is_main_series\":true,\"name\":\"flash-fire\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"引火\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"もらいび\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Flash Fire\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Fuocardore\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Absorbe Fuego\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Feuerfänger\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Torche\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"引火\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"타오르는불꽃\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"もらいび\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"vulpix\",\"url\":\"https://pokeapi.co/api/v2/pokemon/37/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"ninetales\",\"url\":\"https://pokeapi.co/api/v2/pokemon/38/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"growlithe\",\"url\":\"https://pokeapi.co/api/v2/pokemon/58/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"arcanine\",\"url\":\"https://pokeapi.co/api/v2/pokemon/59/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"ponyta\",\"url\":\"https://pokeapi.co/api/v2/pokemon/77/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"rapidash\",\"url\":\"https://pokeapi.co/api/v2/pokemon/78/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"flareon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/136/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"cyndaquil\",\"url\":\"https://pokeapi.co/api/v2/pokemon/155/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"quilava\",\"url\":\"https://pokeapi.co/api/v2/pokemon/156/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"typhlosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon/157/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"houndour\",\"url\":\"https://pokeapi.co/api/v2/pokemon/228/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"houndoom\",\"url\":\"https://pokeapi.co/api/v2/pokemon/229/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"heatran\",\"url\":\"https://pokeapi.co/api/v2/pokemon/485/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"litwick\",\"url\":\"https://pokeapi.co/api/v2/pokemon/607/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"lampent\",\"url\":\"https://pokeapi.co/api/v2/pokemon/608/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"chandelure\",\"url\":\"https://pokeapi.co/api/v2/pokemon/609/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"heatmor\",\"url\":\"https://pokeapi.co/api/v2/pokemon/631/\"},\"slot\":2}]}","asText":null}}},"tags":[]},{"uuid":"c2f80c0f-4059-4459-9f71-4b824635ae95","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,253,13,10,7,112,111,107,101,109,111,110,18,241,13,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"This Pokémon cannot be infatuated and is immune to captivate.\\n\\nIf a Pokémon is infatuated and acquires this ability, its infatuation is cleared.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Prevents infatuation and protects against captivate.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"因为感觉迟钝,\\n不会变为着迷和被挑衅状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"鈍感なので\\nメロメロや ちょうはつ状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"The Pokémon is oblivious, and that keeps it from\\nbeing infatuated or falling for taunts.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"L’imperturbabilità del Pokémon lo protegge\\nda infatuazioni e provocazioni.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"La indiferencia del Pokémon evita que caiga presa\\ndel enamoramiento o sea provocado.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Das Pokémon ist so apathisch, dass es nicht betört\\noder provoziert werden kann.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon est un grand benêt, ce qui l’immunise\\ncontre l’attraction ou la provocation.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"感覺遲鈍,\\n不會陷入著迷和被挑釁狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"둔감해서\\n헤롱헤롱이나 도발 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"どんかん なので\\nメロメロや ちょうはつ じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因为感觉迟钝,\\n不会变为着迷和被挑衅状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"鈍感なので\\nメロメロや ちょうはつ状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"The Pokémon is oblivious, and that keeps it from\\nbeing infatuated or falling for taunts.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"L’imperturbabilità del Pokémon lo protegge\\nda infatuazioni e provocazioni.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"La indiferencia del Pokémon evita que sea\\natraído o provocado.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Das Pokémon ist so apathisch, dass es nicht betört\\noder provoziert werden kann.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon est un grand benêt, ce qui l’immunise\\ncontre l’attraction ou la provocation.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"感覺遲鈍,\\n不會陷入著迷和被挑釁狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"둔감해서\\n헤롱헤롱이나 도발 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"どんかん なので\\nメロメロや ちょうはつ じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"メロメロや ちょうはつ\\n状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Keeps the Pokémon from being\\ninfatuated or falling for taunts.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Protegge il Pokémon da\\ninfatuazioni e provocazioni.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Evita que el Pokémon sea\\natraído o provocado.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Verhindert, dass das Pokémon\\nbetört oder provoziert wird.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Immunise le Pokémon contre\\nl’attraction ou la provocation.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"헤롱헤롱이나 도발 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"メロメロや ちょうはつ\\nじょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"メロメロや ちょうはつ\\n状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Keeps the Pokémon from being\\ninfatuated or falling for taunts.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Protegge il Pokémon da\\ninfatuazioni e provocazioni.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Evita que el Pokémon sea\\natraído o provocado.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Verhindert, dass das Pokémon\\nbetört oder provoziert wird.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Immunise le Pokémon contre\\nl’attraction ou la provocation.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"헤롱헤롱이나 도발 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"メロメロや ちょうはつ\\nじょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Prevents it from\\nbecoming infatuated.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Prevents it from\\nbecoming infatuated.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Empêche le Pokémon de\\ntomber amoureux.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Prevents it from\\nbecoming infatuated.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom becoming infatuated.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom becoming infatuated.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Prevents attraction.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Prevents attraction.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Prevents attraction.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":12,\"is_main_series\":true,\"name\":\"oblivious\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"迟钝\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"どんかん\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Oblivious\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Indifferenza\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Despiste\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Dösigkeit\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Benêt\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"遲鈍\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"둔감\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"どんかん\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"slowpoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon/79/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"slowbro\",\"url\":\"https://pokeapi.co/api/v2/pokemon/80/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"lickitung\",\"url\":\"https://pokeapi.co/api/v2/pokemon/108/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"jynx\",\"url\":\"https://pokeapi.co/api/v2/pokemon/124/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"slowking\",\"url\":\"https://pokeapi.co/api/v2/pokemon/199/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"swinub\",\"url\":\"https://pokeapi.co/api/v2/pokemon/220/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"piloswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon/221/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"smoochum\",\"url\":\"https://pokeapi.co/api/v2/pokemon/238/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"illumise\",\"url\":\"https://pokeapi.co/api/v2/pokemon/314/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"wailmer\",\"url\":\"https://pokeapi.co/api/v2/pokemon/320/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"wailord\",\"url\":\"https://pokeapi.co/api/v2/pokemon/321/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"numel\",\"url\":\"https://pokeapi.co/api/v2/pokemon/322/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"barboach\",\"url\":\"https://pokeapi.co/api/v2/pokemon/339/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"whiscash\",\"url\":\"https://pokeapi.co/api/v2/pokemon/340/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"feebas\",\"url\":\"https://pokeapi.co/api/v2/pokemon/349/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"spheal\",\"url\":\"https://pokeapi.co/api/v2/pokemon/363/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"sealeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon/364/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"walrein\",\"url\":\"https://pokeapi.co/api/v2/pokemon/365/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"lickilicky\",\"url\":\"https://pokeapi.co/api/v2/pokemon/463/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"mamoswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon/473/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"salandit\",\"url\":\"https://pokeapi.co/api/v2/pokemon/757/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"salazzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon/758/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"bounsweet\",\"url\":\"https://pokeapi.co/api/v2/pokemon/761/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"steenee\",\"url\":\"https://pokeapi.co/api/v2/pokemon/762/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"salazzle-totem\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10129/\"},\"slot\":3}]}","asText":null}}},"tags":[]},{"uuid":"43ba851b-4765-48cc-9fdb-71591d4a23bf","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,154,11,10,7,112,111,107,101,109,111,110,18,142,11,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"This Pokémon cannot be asleep.\\n\\nThis causes rest to fail altogether. If a Pokémon is asleep and acquires this ability, it will immediately wake up; this includes when regaining a lost ability upon leaving battle.\\n\\nThis ability functions identically to vital spirit in battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Prevents sleep.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"因为是不会睡觉的体质,\\n所以不会变为睡眠状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"眠れない 体質 なので\\nねむり状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"The Pokémon is suffering from insomnia and cannot\\nfall asleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Il Pokémon soffre d’insonnia e non può finire\\naddormentato.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Su resistencia al sueño le impide quedarse dormido.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Verhindert Einschlafen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon est incapable de dormir.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因為擁有不會睡覺的體質,\\n所以不會陷入睡眠狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"잠들지 못하는 체질이라\\n잠듦 상태가 되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"ねむれない たいしつ なので\\nねむり じょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因为是不会睡觉的体质,\\n所以不会变为睡眠状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"眠れない 体質 なので\\nねむり状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"The Pokémon is suffering from insomnia and cannot\\nfall asleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Il Pokémon soffre d’insonnia e non può finire\\naddormentato.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Su resistencia al sueño le impide quedarse dormido.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Verhindert Einschlafen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon est incapable de dormir.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"因為擁有不會睡覺的體質,\\n所以不會陷入睡眠狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"잠들지 못하는 체질이라\\n잠듦 상태가 되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"ねむれない たいしつ なので\\nねむり じょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"ねむり状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom falling asleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Impedisce al Pokémon\\ndi addormentarsi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Evita el quedarse dormido.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Verhindert Einschlafen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Empêche le Pokémon de\\ns’endormir.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"잠듦 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"ねむり じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"ねむり状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom falling asleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Impedisce al Pokémon\\ndi addormentarsi.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Evita el quedarse dormido.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Verhindert Einschlafen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Empêche le Pokémon de\\ns’endormir.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"잠듦 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"ねむり じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom falling asleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom falling asleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Empêche le Pokémon de\\ns’endormir.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom falling asleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom falling asleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom falling asleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Prevents sleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Prevents sleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Prevents sleep.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":15,\"is_main_series\":true,\"name\":\"insomnia\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"不眠\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ふみん\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Insomnia\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Insonnia\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Insomnio\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Insomnia\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Insomnia\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"不眠\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"불면\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ふみん\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"drowzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon/96/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"hypno\",\"url\":\"https://pokeapi.co/api/v2/pokemon/97/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"hoothoot\",\"url\":\"https://pokeapi.co/api/v2/pokemon/163/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"noctowl\",\"url\":\"https://pokeapi.co/api/v2/pokemon/164/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"spinarak\",\"url\":\"https://pokeapi.co/api/v2/pokemon/167/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"ariados\",\"url\":\"https://pokeapi.co/api/v2/pokemon/168/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"murkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon/198/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"delibird\",\"url\":\"https://pokeapi.co/api/v2/pokemon/225/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"shuppet\",\"url\":\"https://pokeapi.co/api/v2/pokemon/353/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"banette\",\"url\":\"https://pokeapi.co/api/v2/pokemon/354/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"honchkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon/430/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"pumpkaboo-average\",\"url\":\"https://pokeapi.co/api/v2/pokemon/710/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"gourgeist-average\",\"url\":\"https://pokeapi.co/api/v2/pokemon/711/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"pumpkaboo-small\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10027/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"pumpkaboo-large\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10028/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"pumpkaboo-super\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10029/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"gourgeist-small\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10030/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"gourgeist-large\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10031/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"gourgeist-super\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10032/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"mewtwo-mega-y\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10044/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"7585e9ef-574b-4a99-9ea5-aa95513f9a05","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,182,13,10,7,112,111,107,101,109,111,110,18,170,13,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"Whenever a water-type move hits this Pokémon, it heals for 1/4 of its maximum HP, negating any other effect on it.\\n\\nWater moves will ignore this Pokémon's substitute.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Absorbs water moves, healing for 1/4 max HP.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"受到水属性的招式攻击时,\\n不会受到伤害,而是会回复。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"みずタイプの 技を 受けると\\nダメージを 受けずに 回復する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Restores HP if hit by a Water-type move, instead of\\ntaking damage.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Se il Pokémon subisce una mossa di tipo Acqua,\\nrecupera PS anziché subire danni.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Si le alcanza un movimiento de tipo Agua,\\nrecupera PS en vez de sufrir daño.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Treffer durch Wasser-Attacken verursachen keinen\\nSchaden, sondern regenerieren stattdessen KP.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Si le Pokémon est touché par une capacité Eau,\\nil ne subit aucun dégât et regagne des PV à la place.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"受到水屬性的招式攻擊時,\\n不會受到傷害,而是會回復。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"물타입의 기술을 받으면\\n데미지를 받지 않고 회복한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"みずタイプの わざを うけると\\nダメージを うけずに かいふくする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"受到水属性的招式攻击时,\\n不会受到伤害,而是会回复。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"みずタイプの 技を 受けると\\nダメージを 受けずに 回復する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Restores HP if hit by a Water-type move, instead of\\ntaking damage.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Se il Pokémon subisce una mossa di tipo Acqua,\\nrecupera PS anziché subire danni.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Si le alcanza un movimiento de tipo Agua,\\nrecupera PS en vez de sufrir daño.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Treffer durch Wasser-Attacken verursachen keinen\\nSchaden, sondern regenerieren stattdessen KP.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Si le Pokémon est touché par une capacité Eau,\\nil ne subit aucun dégât et regagne des PV à la place.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"受到水屬性的招式攻擊時,\\n不會受到傷害,而是會回復。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"물타입의 기술을 받으면\\n데미지를 받지 않고 회복한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"みずタイプの わざを うけると\\nダメージを うけずに かいふくする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\" ずを 受けると\\n回復する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Restores HP if hit by a\\nWater-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Ridà PS se il Pokémon subisce\\nuna mossa di tipo Acqua.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Recupera PS al recibir ataques de\\ntipo Agua.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Treffer durch Wasser-Attacken\\nregenerieren KP.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Récupère des PV si touché par\\nune capacité Eau.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"물을 받으면\\n회복한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\" ずを うけると\\nかいふくする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"みずを 受けると\\n回復する。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Restores HP if hit by a\\nWater-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Ridà PS se il Pokémon subisce\\nuna mossa di tipo Acqua.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Recupera PS al recibir ataques de\\ntipo Agua.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Treffer durch Wasser-Attacken\\nregenerieren KP.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Récupère des PV si touché par\\nune capacité Eau.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"물을 받으면\\n회복한다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"みずを うけると\\nかいふくする。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Restores HP if hit by a\\nWater-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Restores HP if hit by a\\nWater-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Récupère des PV si touché\\npar une capacité Eau.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Restores HP if hit by a\\nWater-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Restores HP if hit by a\\nWater-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Restores HP if hit by a\\nWater-type move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Changes water into HP.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Changes water into HP.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Changes water into HP.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":11,\"is_main_series\":true,\"name\":\"water-absorb\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"储水\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ちょすい\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Water Absorb\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Assorbacqua\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Absorbe Agua\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"H2O-Absorber\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Absorb Eau\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"儲水\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"저수\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ちょすい\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"poliwag\",\"url\":\"https://pokeapi.co/api/v2/pokemon/60/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"poliwhirl\",\"url\":\"https://pokeapi.co/api/v2/pokemon/61/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"poliwrath\",\"url\":\"https://pokeapi.co/api/v2/pokemon/62/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"lapras\",\"url\":\"https://pokeapi.co/api/v2/pokemon/131/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"vaporeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/134/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"chinchou\",\"url\":\"https://pokeapi.co/api/v2/pokemon/170/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"lanturn\",\"url\":\"https://pokeapi.co/api/v2/pokemon/171/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"politoed\",\"url\":\"https://pokeapi.co/api/v2/pokemon/186/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"wooper\",\"url\":\"https://pokeapi.co/api/v2/pokemon/194/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"quagsire\",\"url\":\"https://pokeapi.co/api/v2/pokemon/195/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"mantine\",\"url\":\"https://pokeapi.co/api/v2/pokemon/226/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"cacnea\",\"url\":\"https://pokeapi.co/api/v2/pokemon/331/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"cacturne\",\"url\":\"https://pokeapi.co/api/v2/pokemon/332/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"mantyke\",\"url\":\"https://pokeapi.co/api/v2/pokemon/458/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"tympole\",\"url\":\"https://pokeapi.co/api/v2/pokemon/535/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"palpitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon/536/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"seismitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon/537/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"maractus\",\"url\":\"https://pokeapi.co/api/v2/pokemon/556/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"frillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon/592/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"jellicent\",\"url\":\"https://pokeapi.co/api/v2/pokemon/593/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"volcanion\",\"url\":\"https://pokeapi.co/api/v2/pokemon/721/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"dewpider\",\"url\":\"https://pokeapi.co/api/v2/pokemon/751/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"araquanid\",\"url\":\"https://pokeapi.co/api/v2/pokemon/752/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"araquanid-totem\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10153/\"},\"slot\":3}]}","asText":null}}},"tags":[]},{"uuid":"33016d50-ba46-42c5-8707-355a58c9d2c8","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/19/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,212,5,10,7,112,111,107,101,109,111,110,18,200,5,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"This Pokémon is immune to the extra effects of moves used against it.\\n\\nAn extra effect is a move's chance, listed as an \\\"effect chance\\\", to inflict a status ailment, cause a stat change, or make the target flinch in addition to the move's main effect. For example, thunder shock's paralysis is an extra effect, but thunder wave's is not, nor are knock off's item removal and air cutter's increased critical hit rate.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Protects against incoming moves' extra effects.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"被鳞粉守护着,\\n不会受到招式的追加效果影响。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"りんぷんに 守られて\\n技の 追加効果を 受けなくなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"This Pokémon’s dust blocks the additional effects of\\nattacks taken.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Il Pokémon è protetto da uno strato di scaglie\\nche annulla gli effetti secondari delle mosse subite.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"El polvo de escamas que lo envuelve lo protege de\\nlos efectos secundarios de los ataques recibidos.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Blockiert durch Puder die Zusatzeffekte\\ngegnerischer Angriffe.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon dispose d’un écran naturel qui le\\nprotège des effets additionnels des attaques\\nennemies.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"被鱗粉守護著,\\n不會受到招式的追加效果影響。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"인분에 보호받아\\n기술의 추가 효과를 받지 않게 된다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"りんぷんに まもられて\\nわざの ついかこうかを うけなくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"被鳞粉守护着,\\n不会受到招式的追加效果影响。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"りんぷんに 守られて\\n技の 追加効果を 受けなくなる。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"This Pokémon’s dust blocks the additional effects of\\nattacks taken.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Il Pokémon è protetto da uno strato di scaglie\\nche annulla gli effetti secondari delle mosse subite.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"El polvo de escamas que lo envuelve lo protege de\\nlos efectos secundarios de los ataques recibidos.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Blockiert durch Puder die Zusatzeffekte\\ngegnerischer Angriffe.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon dispose d’un écran naturel qui le\\nprotège des effets additionnels des attaques\\nennemies.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"被鱗粉守護著,\\n不會受到招式的追加效果影響。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"인분에 보호받아\\n기술의 추가 효과를 받지 않게 된다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"りんぷんに まもられて\\nわざの ついかこうかを うけなくなる。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"技の 追加効果を\\n受けない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Blocks the additional effects\\nof attacks taken.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Annulla gli effetti secondari\\ndelle mosse subite.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Anula el efecto secundario del\\nataque sufrido.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Blockiert Zusatz-Effekte\\ngegnerischer Angriffe.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Annule les effets cumulés d’une\\nattaque ennemie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"기술의 추가 효과를\\n받지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"わざの ついかこうかを\\nうけない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"技の 追加効果を\\n受けない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Blocks the additional effects\\nof attacks taken.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Annulla gli effetti secondari\\ndelle mosse subite.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Anula el efecto secundario del\\nataque sufrido.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Blockiert Zusatz-Effekte\\ngegnerischer Angriffe.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Annule les effets cumulés d’une\\nattaque ennemie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"기술의 추가 효과를\\n받지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"わざの ついかこうかを\\nうけない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Blocks the added effects\\nof attacks taken.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Blocks the added effects\\nof attacks taken.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Annule les effets cumulés\\nd’une attaque ennemie.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Blocks the added effects\\nof attacks taken.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Blocks the added effects\\nof attacks taken.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Blocks the added effects\\nof attacks taken.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Prevents added effects.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Prevents added effects.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Prevents added effects.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":19,\"is_main_series\":true,\"name\":\"shield-dust\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"鳞粉\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"りんぷん\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Shield Dust\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Polvoscudo\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Polvo Escudo\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Puderabwehr\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Écran Poudre\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"鱗粉\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"인분\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"りんぷん\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"caterpie\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"weedle\",\"url\":\"https://pokeapi.co/api/v2/pokemon/13/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"venomoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon/49/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"wurmple\",\"url\":\"https://pokeapi.co/api/v2/pokemon/265/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"dustox\",\"url\":\"https://pokeapi.co/api/v2/pokemon/269/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"scatterbug\",\"url\":\"https://pokeapi.co/api/v2/pokemon/664/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"vivillon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/666/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"cutiefly\",\"url\":\"https://pokeapi.co/api/v2/pokemon/742/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"ribombee\",\"url\":\"https://pokeapi.co/api/v2/pokemon/743/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"ribombee-totem\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10150/\"},\"slot\":2}]}","asText":null}}},"tags":[]},{"uuid":"e4e27227-ef4b-47c4-a36c-b4df4fa4a655","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/20/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,239,12,10,7,112,111,107,101,109,111,110,18,227,12,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"This Pokémon cannot be confused.\\n\\nIf a Pokémon is confused and acquires this ability, its confusion will immediately be healed.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Prevents confusion.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"因为我行我素,\\n不会变为混乱状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"マイペースなので\\nこんらん状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"This Pokémon has its own tempo, and that prevents\\nit from becoming confused.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Il Pokémon affronta la vita al proprio ritmo e per\\nquesto non può essere colpito dalla confusione.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Como le gusta hacer las cosas a su manera, los\\nrivales no logran confundirlo.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Das Pokémon lässt sich nicht aus der Ruhe bringen\\nund verhindert so Verwirrung.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon vit sa vie à son propre rythme,\\nce qui l’immunise contre la confusion.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因為我行我素,\\n不會陷入混亂狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"마이페이스라서\\n혼란 상태가 되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"マイペースなので\\nこんらん じょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因为我行我素,\\n不会变为混乱状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"マイペースなので\\nこんらん状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"This Pokémon has its own tempo, and that prevents\\nit from becoming confused.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Il Pokémon affronta la vita al proprio ritmo e per\\nquesto non può essere colpito dalla confusione.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Como le gusta hacer las cosas a su manera, los\\nrivales no logran confundirlo.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Das Pokémon lässt sich nicht aus der Ruhe bringen\\nund verhindert so Verwirrung.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon vit sa vie à son propre rythme,\\nce qui l’immunise contre la confusion.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"因為我行我素,\\n不會陷入混亂狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"마이페이스라서\\n혼란 상태가 되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"マイペースなので\\nこんらん じょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"混乱状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom becoming confused.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Impedisce al Pokémon\\ndi venire confuso.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Evita ser confundido.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Verhindert Verwirrung.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Empêche la confusion.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"혼란 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"こんらん じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"混乱状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom becoming confused.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Impedisce al Pokémon\\ndi venire confuso.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Evita ser confundido.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Verhindert Verwirrung.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Empêche la confusion.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"혼란 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"こんらん じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom becoming confused.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom becoming confused.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Empêche la confusion.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom becoming confused.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom becoming confused.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom becoming confused.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Prevents confusion.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Prevents confusion.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Prevents confusion.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":20,\"is_main_series\":true,\"name\":\"own-tempo\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"我行我素\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"マイペース\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Own Tempo\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Mente Locale\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Ritmo Propio\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Tempomacher\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Tempo Perso\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"我行我素\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"마이페이스\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"マイペース\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"slowpoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon/79/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"slowbro\",\"url\":\"https://pokeapi.co/api/v2/pokemon/80/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"lickitung\",\"url\":\"https://pokeapi.co/api/v2/pokemon/108/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"slowking\",\"url\":\"https://pokeapi.co/api/v2/pokemon/199/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"smeargle\",\"url\":\"https://pokeapi.co/api/v2/pokemon/235/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"lotad\",\"url\":\"https://pokeapi.co/api/v2/pokemon/270/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"lombre\",\"url\":\"https://pokeapi.co/api/v2/pokemon/271/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"ludicolo\",\"url\":\"https://pokeapi.co/api/v2/pokemon/272/\"},\"slot\":3},{\"is_hidden\":true,\"pokemon\":{\"name\":\"numel\",\"url\":\"https://pokeapi.co/api/v2/pokemon/322/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"spoink\",\"url\":\"https://pokeapi.co/api/v2/pokemon/325/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"grumpig\",\"url\":\"https://pokeapi.co/api/v2/pokemon/326/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"spinda\",\"url\":\"https://pokeapi.co/api/v2/pokemon/327/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"glameow\",\"url\":\"https://pokeapi.co/api/v2/pokemon/431/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"purugly\",\"url\":\"https://pokeapi.co/api/v2/pokemon/432/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"lickilicky\",\"url\":\"https://pokeapi.co/api/v2/pokemon/463/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"petilil\",\"url\":\"https://pokeapi.co/api/v2/pokemon/548/\"},\"slot\":2},{\"is_hidden\":false,\"pokemon\":{\"name\":\"lilligant\",\"url\":\"https://pokeapi.co/api/v2/pokemon/549/\"},\"slot\":2},{\"is_hidden\":true,\"pokemon\":{\"name\":\"espurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon/677/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"bergmite\",\"url\":\"https://pokeapi.co/api/v2/pokemon/712/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"avalugg\",\"url\":\"https://pokeapi.co/api/v2/pokemon/713/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"mudbray\",\"url\":\"https://pokeapi.co/api/v2/pokemon/749/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"mudsdale\",\"url\":\"https://pokeapi.co/api/v2/pokemon/750/\"},\"slot\":1},{\"is_hidden\":false,\"pokemon\":{\"name\":\"rockruff-own-tempo\",\"url\":\"https://pokeapi.co/api/v2/pokemon/10151/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"75926d40-cf62-4850-8fd2-a6d573c43194","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-firmness/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,149,1,10,7,114,101,115,117,108,116,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":5,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"very-soft\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/1/\"},{\"name\":\"soft\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/2/\"},{\"name\":\"hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/3/\"},{\"name\":\"very-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/4/\"},{\"name\":\"super-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/5/\"}]}","asText":null}}},"tags":[]},{"uuid":"9366ab7a-68ba-4e85-a799-d851089c1cd9","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/ability/17/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,20,10,14,101,102,102,101,99,116,95,99,104,97,110,103,101,115,18,2,8,1,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,188,37,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,164,37,8,1,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,104,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,20,10,14,105,115,95,109,97,105,110,95,115,101,114,105,101,115,18,2,8,4,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,227,1,10,7,112,111,107,101,109,111,110,18,215,1,8,1,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3,26,69,8,0,18,15,10,9,105,115,95,104,105,100,100,101,110,18,2,8,4,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,108,111,116,18,2,8,3]}},"asJsonString":"{\"effect_changes\":[],\"effect_entries\":[{\"effect\":\"This Pokémon cannot be poisoned. This includes bad poison.\\n\\nIf a Pokémon is poisoned and acquires this ability, its poison is healed; this includes when regaining a lost ability upon leaving battle.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Prevents poison.\"}],\"flavor_text_entries\":[{\"flavor_text\":\"因为体内拥有免疫能力,\\n不会变为中毒状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"体内に 免疫を 持っているため\\nどく状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"The immune system of the Pokémon prevents it from\\ngetting poisoned.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"L’immunità naturale del Pokémon gli impedisce\\ndi essere avvelenato.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Su sistema inmunitario evita el envenenamiento.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Das starke Immunsystem des Pokémon verhindert\\nVergiftungen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"Le Pokémon est naturellement immunisé\\ncontre toute forme de poison.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因為體內擁有免疫能力,\\n不會陷入中毒狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"체내에 면역을 가지고 있어\\n독 상태가 되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"たいないに めんえきを もっているため\\nどく じょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"flavor_text\":\"因为体内拥有免疫能力,\\n不会变为中毒状态。\",\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"体内に 免疫を 持っているため\\nどく状態に ならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"The immune system of the Pokémon prevents it from\\ngetting poisoned.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"L’immunità naturale del Pokémon gli impedisce\\ndi essere avvelenato.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Su sistema inmunitario evita el envenenamiento.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Das starke Immunsystem des Pokémon verhindert\\nVergiftungen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"Le Pokémon est naturellement immunisé\\ncontre toute forme de poison.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"因為體內擁有免疫能力,\\n不會陷入中毒狀態。\",\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"체내에 면역을 가지고 있어\\n독 상태가 되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"たいないに めんえきを もっているため\\nどく じょうたいに ならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"flavor_text\":\"どく状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom getting poisoned.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Impedisce al Pokémon di\\nvenire avvelenato.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Evita el envenenamiento.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Verhindert Vergiftungen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"Empêche le Pokémon d’être\\nempoisonné.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"독 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"どく じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}},{\"flavor_text\":\"どく状態に\\nならない。\",\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom getting poisoned.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Impedisce al Pokémon di\\nvenire avvelenato.\",\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Evita el envenenamiento.\",\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Verhindert Vergiftungen.\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Empêche le Pokémon d’être\\nempoisonné.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"독 상태가\\n되지 않는다.\",\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"どく じょうたいに\\nならない。\",\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom getting poisoned.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom getting poisoned.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Empêche le Pokémon d’être\\nempoisonné.\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom getting poisoned.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom getting poisoned.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"flavor_text\":\"Prevents the Pokémon\\nfrom getting poisoned.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"flavor_text\":\"Prevents poisoning.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"flavor_text\":\"Prevents poisoning.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"flavor_text\":\"Prevents poisoning.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},\"id\":17,\"is_main_series\":true,\"name\":\"immunity\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"免疫\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"めんえき\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Immunity\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Immunità\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Inmunidad\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Immunität\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Vaccin\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"免疫\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"면역\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"めんえき\"}],\"pokemon\":[{\"is_hidden\":false,\"pokemon\":{\"name\":\"snorlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon/143/\"},\"slot\":1},{\"is_hidden\":true,\"pokemon\":{\"name\":\"gligar\",\"url\":\"https://pokeapi.co/api/v2/pokemon/207/\"},\"slot\":3},{\"is_hidden\":false,\"pokemon\":{\"name\":\"zangoose\",\"url\":\"https://pokeapi.co/api/v2/pokemon/335/\"},\"slot\":1}]}","asText":null}}},"tags":[]},{"uuid":"6038b616-b449-4dc7-a94f-a6416b12a227","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"super-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/5/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":10},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":3,\"id\":2,\"item\":{\"name\":\"chesto-berry\",\"url\":\"https://pokeapi.co/api/v2/item/127/\"},\"max_harvest\":5,\"name\":\"chesto\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"water\",\"url\":\"https://pokeapi.co/api/v2/type/11/\"},\"size\":80,\"smoothness\":25,\"soil_dryness\":15}","asText":null}}},"tags":[]},{"uuid":"0b847e77-56f9-4b43-913a-ab03a3c91c63","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"very-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/4/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":10},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":10},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":10},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":10}],\"growth_time\":4,\"id\":6,\"item\":{\"name\":\"leppa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/131/\"},\"max_harvest\":5,\"name\":\"leppa\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"fighting\",\"url\":\"https://pokeapi.co/api/v2/type/2/\"},\"size\":28,\"smoothness\":20,\"soil_dryness\":15}","asText":null}}},"tags":[]},{"uuid":"b4566476-9bc8-4915-85c5-c8921affeebc","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"very-soft\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/1/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":10},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":3,\"id\":3,\"item\":{\"name\":\"pecha-berry\",\"url\":\"https://pokeapi.co/api/v2/item/128/\"},\"max_harvest\":5,\"name\":\"pecha\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"electric\",\"url\":\"https://pokeapi.co/api/v2/type/13/\"},\"size\":40,\"smoothness\":25,\"soil_dryness\":15}","asText":null}}},"tags":[]},{"uuid":"5cff09c9-85fc-4b17-9fe1-0ba2427340bd","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"super-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/5/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":10}],\"growth_time\":3,\"id\":5,\"item\":{\"name\":\"aspear-berry\",\"url\":\"https://pokeapi.co/api/v2/item/130/\"},\"max_harvest\":5,\"name\":\"aspear\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"ice\",\"url\":\"https://pokeapi.co/api/v2/type/15/\"},\"size\":50,\"smoothness\":25,\"soil_dryness\":15}","asText":null}}},"tags":[]},{"uuid":"5bc08063-8d64-4929-9c9d-4ce755be3971","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/3/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":10},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":3,\"id\":4,\"item\":{\"name\":\"rawst-berry\",\"url\":\"https://pokeapi.co/api/v2/item/129/\"},\"max_harvest\":5,\"name\":\"rawst\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"grass\",\"url\":\"https://pokeapi.co/api/v2/type/12/\"},\"size\":32,\"smoothness\":25,\"soil_dryness\":15}","asText":null}}},"tags":[]},{"uuid":"92230e57-b3bd-49c1-a28c-9fe27be4af3a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"very-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/4/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":10},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":10},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":10},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":10}],\"growth_time\":8,\"id\":10,\"item\":{\"name\":\"sitrus-berry\",\"url\":\"https://pokeapi.co/api/v2/item/135/\"},\"max_harvest\":5,\"name\":\"sitrus\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"psychic\",\"url\":\"https://pokeapi.co/api/v2/type/14/\"},\"size\":95,\"smoothness\":20,\"soil_dryness\":7}","asText":null}}},"tags":[]},{"uuid":"470a7f75-a422-442f-b484-a2b9617c147e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"super-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/5/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":10},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":10},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":10},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":10}],\"growth_time\":4,\"id\":7,\"item\":{\"name\":\"oran-berry\",\"url\":\"https://pokeapi.co/api/v2/item/132/\"},\"max_harvest\":5,\"name\":\"oran\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"poison\",\"url\":\"https://pokeapi.co/api/v2/type/4/\"},\"size\":35,\"smoothness\":20,\"soil_dryness\":15}","asText":null}}},"tags":[]},{"uuid":"f4f3bfd7-0824-45ec-999d-42136c6deaf9","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/3/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":15},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":5,\"id\":13,\"item\":{\"name\":\"mago-berry\",\"url\":\"https://pokeapi.co/api/v2/item/138/\"},\"max_harvest\":5,\"name\":\"mago\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"ghost\",\"url\":\"https://pokeapi.co/api/v2/type/8/\"},\"size\":126,\"smoothness\":25,\"soil_dryness\":10}","asText":null}}},"tags":[]},{"uuid":"31f982da-38a7-4a45-8908-946024bf6808","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/16/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"very-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/4/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":10},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":10},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":2,\"id\":16,\"item\":{\"name\":\"razz-berry\",\"url\":\"https://pokeapi.co/api/v2/item/141/\"},\"max_harvest\":10,\"name\":\"razz\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"steel\",\"url\":\"https://pokeapi.co/api/v2/type/9/\"},\"size\":120,\"smoothness\":20,\"soil_dryness\":35}","asText":null}}},"tags":[]},{"uuid":"dfec2278-0d93-44a7-9f7b-c653d72019cf","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"soft\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/2/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":15}],\"growth_time\":5,\"id\":15,\"item\":{\"name\":\"iapapa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/140/\"},\"max_harvest\":5,\"name\":\"iapapa\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"dark\",\"url\":\"https://pokeapi.co/api/v2/type/17/\"},\"size\":223,\"smoothness\":25,\"soil_dryness\":10}","asText":null}}},"tags":[]},{"uuid":"e095ad26-d7a0-4e38-ba9a-c6cf80e1a025","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"soft\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/2/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":15},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":5,\"id\":11,\"item\":{\"name\":\"figy-berry\",\"url\":\"https://pokeapi.co/api/v2/item/136/\"},\"max_harvest\":5,\"name\":\"figy\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"bug\",\"url\":\"https://pokeapi.co/api/v2/type/7/\"},\"size\":100,\"smoothness\":25,\"soil_dryness\":10}","asText":null}}},"tags":[]},{"uuid":"22ac3e42-5567-4171-908d-bbcbbee8266d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"super-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/5/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":15},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":5,\"id\":14,\"item\":{\"name\":\"aguav-berry\",\"url\":\"https://pokeapi.co/api/v2/item/139/\"},\"max_harvest\":5,\"name\":\"aguav\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"dragon\",\"url\":\"https://pokeapi.co/api/v2/type/16/\"},\"size\":64,\"smoothness\":25,\"soil_dryness\":10}","asText":null}}},"tags":[]},{"uuid":"092bc5d9-e726-452c-aaa7-9d658e3502eb","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/3/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":10},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":10},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":10},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":10}],\"growth_time\":4,\"id\":8,\"item\":{\"name\":\"persim-berry\",\"url\":\"https://pokeapi.co/api/v2/item/133/\"},\"max_harvest\":5,\"name\":\"persim\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"ground\",\"url\":\"https://pokeapi.co/api/v2/type/5/\"},\"size\":47,\"smoothness\":20,\"soil_dryness\":15}","asText":null}}},"tags":[]},{"uuid":"9209e8b6-4bfc-4f45-94ec-628ab0c9d291","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"super-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/5/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":10},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":10},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":10},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":10},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":12,\"id\":9,\"item\":{\"name\":\"lum-berry\",\"url\":\"https://pokeapi.co/api/v2/item/134/\"},\"max_harvest\":5,\"name\":\"lum\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"flying\",\"url\":\"https://pokeapi.co/api/v2/type/3/\"},\"size\":34,\"smoothness\":20,\"soil_dryness\":8}","asText":null}}},"tags":[]},{"uuid":"76fe03eb-e90f-4fe6-a241-763454c6db73","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/3/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":15},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":5,\"id\":12,\"item\":{\"name\":\"wiki-berry\",\"url\":\"https://pokeapi.co/api/v2/item/137/\"},\"max_harvest\":5,\"name\":\"wiki\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"rock\",\"url\":\"https://pokeapi.co/api/v2/type/6/\"},\"size\":115,\"smoothness\":25,\"soil_dryness\":10}","asText":null}}},"tags":[]},{"uuid":"50138fee-2218-4264-a8a8-74aa1b3d47b7","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/17/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"soft\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/2/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":10},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":10},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":2,\"id\":17,\"item\":{\"name\":\"bluk-berry\",\"url\":\"https://pokeapi.co/api/v2/item/142/\"},\"max_harvest\":10,\"name\":\"bluk\",\"natural_gift_power\":70,\"natural_gift_type\":{\"name\":\"fire\",\"url\":\"https://pokeapi.co/api/v2/type/10/\"},\"size\":108,\"smoothness\":20,\"soil_dryness\":35}","asText":null}}},"tags":[]},{"uuid":"eec7326c-53b6-49b2-ba39-d3152801888f","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/18/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"very-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/4/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":10},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":10},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":2,\"id\":18,\"item\":{\"name\":\"nanab-berry\",\"url\":\"https://pokeapi.co/api/v2/item/143/\"},\"max_harvest\":10,\"name\":\"nanab\",\"natural_gift_power\":70,\"natural_gift_type\":{\"name\":\"water\",\"url\":\"https://pokeapi.co/api/v2/type/11/\"},\"size\":77,\"smoothness\":20,\"soil_dryness\":35}","asText":null}}},"tags":[]},{"uuid":"05aeb3de-922e-4d9e-b754-505eb966b748","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/19/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"super-hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/5/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":0},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":10},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":10}],\"growth_time\":2,\"id\":19,\"item\":{\"name\":\"wepear-berry\",\"url\":\"https://pokeapi.co/api/v2/item/144/\"},\"max_harvest\":10,\"name\":\"wepear\",\"natural_gift_power\":70,\"natural_gift_type\":{\"name\":\"electric\",\"url\":\"https://pokeapi.co/api/v2/type/13/\"},\"size\":74,\"smoothness\":20,\"soil_dryness\":35}","asText":null}}},"tags":[]},{"uuid":"b5eb398e-9c3f-45f4-ae66-c4dcc94ec31f","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-flavor/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,149,1,10,7,114,101,115,117,108,116,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":5,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"}]}","asText":null}}},"tags":[]},{"uuid":"e45e9335-e747-4434-9d62-f4a0f6f43f3b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"soft\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/2/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":10},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":0}],\"growth_time\":3,\"id\":1,\"item\":{\"name\":\"cheri-berry\",\"url\":\"https://pokeapi.co/api/v2/item/126/\"},\"max_harvest\":5,\"name\":\"cheri\",\"natural_gift_power\":60,\"natural_gift_type\":{\"name\":\"fire\",\"url\":\"https://pokeapi.co/api/v2/type/10/\"},\"size\":20,\"smoothness\":25,\"soil_dryness\":15}","asText":null}}},"tags":[]},{"uuid":"4318eaf7-79bf-46c0-9504-9c70365a5cef","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry/20/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,37,10,8,102,105,114,109,110,101,115,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,166,2,10,7,102,108,97,118,111,114,115,18,154,2,8,1,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,54,8,0,18,35,10,6,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,17,10,11,103,114,111,119,116,104,95,116,105,109,101,18,2,8,3,18,8,10,2,105,100,18,2,8,3,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,109,97,120,95,104,97,114,118,101,115,116,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,24,10,18,110,97,116,117,114,97,108,95,103,105,102,116,95,112,111,119,101,114,18,2,8,3,18,46,10,17,110,97,116,117,114,97,108,95,103,105,102,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,115,105,122,101,18,2,8,3,18,16,10,10,115,109,111,111,116,104,110,101,115,115,18,2,8,3,18,18,10,12,115,111,105,108,95,100,114,121,110,101,115,115,18,2,8,3]}},"asJsonString":"{\"firmness\":{\"name\":\"hard\",\"url\":\"https://pokeapi.co/api/v2/berry-firmness/3/\"},\"flavors\":[{\"flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"potency\":10},{\"flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"potency\":0},{\"flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"potency\":0},{\"flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"potency\":0},{\"flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"potency\":10}],\"growth_time\":2,\"id\":20,\"item\":{\"name\":\"pinap-berry\",\"url\":\"https://pokeapi.co/api/v2/item/145/\"},\"max_harvest\":10,\"name\":\"pinap\",\"natural_gift_power\":70,\"natural_gift_type\":{\"name\":\"grass\",\"url\":\"https://pokeapi.co/api/v2/type/12/\"},\"size\":80,\"smoothness\":20,\"soil_dryness\":35}","asText":null}}},"tags":[]},{"uuid":"8cc8b42e-10cd-46c3-a717-07ec530e1aba","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,186,2,10,7,114,101,115,117,108,116,115,18,174,2,8,1,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":30,\"next\":\"https://pokeapi.co/api/v2/characteristic/?offset=20&limit=10\",\"previous\":null,\"results\":[{\"url\":\"https://pokeapi.co/api/v2/characteristic/1/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/2/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/3/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/4/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/5/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/6/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/7/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/8/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/9/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/10/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/11/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/12/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/13/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/14/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/15/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/16/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/17/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/18/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/19/\"},{\"url\":\"https://pokeapi.co/api/v2/characteristic/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"21ceb0e4-81c1-4dde-a39e-c639b4835dfd","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,186,2,10,7,114,101,115,117,108,116,115,18,174,2,8,1,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":33,\"next\":\"https://pokeapi.co/api/v2/contest-effect/?offset=20&limit=13\",\"previous\":null,\"results\":[{\"url\":\"https://pokeapi.co/api/v2/contest-effect/1/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/2/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/3/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/4/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/5/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/6/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/7/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/8/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/9/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/10/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/11/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/12/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/13/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/14/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/15/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/16/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/17/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/18/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/19/\"},{\"url\":\"https://pokeapi.co/api/v2/contest-effect/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"3f7a2de5-9420-4482-990e-2b5ff2adde2f","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-firmness/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,230,1,10,7,98,101,114,114,105,101,115,18,218,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"name\":\"pecha\",\"url\":\"https://pokeapi.co/api/v2/berry/3/\"},{\"name\":\"pamtre\",\"url\":\"https://pokeapi.co/api/v2/berry/32/\"},{\"name\":\"belue\",\"url\":\"https://pokeapi.co/api/v2/berry/35/\"},{\"name\":\"wacan\",\"url\":\"https://pokeapi.co/api/v2/berry/38/\"},{\"name\":\"tanga\",\"url\":\"https://pokeapi.co/api/v2/berry/46/\"},{\"name\":\"charti\",\"url\":\"https://pokeapi.co/api/v2/berry/47/\"},{\"name\":\"chilan\",\"url\":\"https://pokeapi.co/api/v2/berry/52/\"},{\"name\":\"rowap\",\"url\":\"https://pokeapi.co/api/v2/berry/64/\"}],\"id\":1,\"name\":\"very-soft\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Très tendre\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Very Soft\"}]}","asText":null}}},"tags":[]},{"uuid":"6c5f131b-4c9f-4b54-9733-d9a66be02ed6","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-firmness/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,244,3,10,7,98,101,114,114,105,101,115,18,232,3,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"name\":\"cheri\",\"url\":\"https://pokeapi.co/api/v2/berry/1/\"},{\"name\":\"figy\",\"url\":\"https://pokeapi.co/api/v2/berry/11/\"},{\"name\":\"iapapa\",\"url\":\"https://pokeapi.co/api/v2/berry/15/\"},{\"name\":\"bluk\",\"url\":\"https://pokeapi.co/api/v2/berry/17/\"},{\"name\":\"grepa\",\"url\":\"https://pokeapi.co/api/v2/berry/25/\"},{\"name\":\"tamato\",\"url\":\"https://pokeapi.co/api/v2/berry/26/\"},{\"name\":\"rabuta\",\"url\":\"https://pokeapi.co/api/v2/berry/29/\"},{\"name\":\"spelon\",\"url\":\"https://pokeapi.co/api/v2/berry/31/\"},{\"name\":\"watmel\",\"url\":\"https://pokeapi.co/api/v2/berry/33/\"},{\"name\":\"passho\",\"url\":\"https://pokeapi.co/api/v2/berry/37/\"},{\"name\":\"rindo\",\"url\":\"https://pokeapi.co/api/v2/berry/39/\"},{\"name\":\"chople\",\"url\":\"https://pokeapi.co/api/v2/berry/41/\"},{\"name\":\"shuca\",\"url\":\"https://pokeapi.co/api/v2/berry/43/\"},{\"name\":\"payapa\",\"url\":\"https://pokeapi.co/api/v2/berry/45/\"},{\"name\":\"haban\",\"url\":\"https://pokeapi.co/api/v2/berry/49/\"},{\"name\":\"lansat\",\"url\":\"https://pokeapi.co/api/v2/berry/58/\"},{\"name\":\"micle\",\"url\":\"https://pokeapi.co/api/v2/berry/61/\"},{\"name\":\"jaboca\",\"url\":\"https://pokeapi.co/api/v2/berry/63/\"}],\"id\":2,\"name\":\"soft\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Tendre\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Soft\"}]}","asText":null}}},"tags":[]},{"uuid":"5cf93fcc-425a-4efa-9bef-3047091c2c50","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-firmness/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,210,2,10,7,98,101,114,114,105,101,115,18,198,2,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"name\":\"chesto\",\"url\":\"https://pokeapi.co/api/v2/berry/2/\"},{\"name\":\"aspear\",\"url\":\"https://pokeapi.co/api/v2/berry/5/\"},{\"name\":\"oran\",\"url\":\"https://pokeapi.co/api/v2/berry/7/\"},{\"name\":\"lum\",\"url\":\"https://pokeapi.co/api/v2/berry/9/\"},{\"name\":\"aguav\",\"url\":\"https://pokeapi.co/api/v2/berry/14/\"},{\"name\":\"wepear\",\"url\":\"https://pokeapi.co/api/v2/berry/19/\"},{\"name\":\"nomel\",\"url\":\"https://pokeapi.co/api/v2/berry/30/\"},{\"name\":\"occa\",\"url\":\"https://pokeapi.co/api/v2/berry/36/\"},{\"name\":\"colbur\",\"url\":\"https://pokeapi.co/api/v2/berry/50/\"},{\"name\":\"babiri\",\"url\":\"https://pokeapi.co/api/v2/berry/51/\"},{\"name\":\"starf\",\"url\":\"https://pokeapi.co/api/v2/berry/59/\"},{\"name\":\"custap\",\"url\":\"https://pokeapi.co/api/v2/berry/62/\"}],\"id\":5,\"name\":\"super-hard\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Super ferme\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Super Hard\"}]}","asText":null}}},"tags":[]},{"uuid":"33fed649-d291-4cb0-95ff-cd22781e8d3d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-firmness/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,163,3,10,7,98,101,114,114,105,101,115,18,151,3,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"name\":\"rawst\",\"url\":\"https://pokeapi.co/api/v2/berry/4/\"},{\"name\":\"persim\",\"url\":\"https://pokeapi.co/api/v2/berry/8/\"},{\"name\":\"wiki\",\"url\":\"https://pokeapi.co/api/v2/berry/12/\"},{\"name\":\"mago\",\"url\":\"https://pokeapi.co/api/v2/berry/13/\"},{\"name\":\"pinap\",\"url\":\"https://pokeapi.co/api/v2/berry/20/\"},{\"name\":\"kelpsy\",\"url\":\"https://pokeapi.co/api/v2/berry/22/\"},{\"name\":\"qualot\",\"url\":\"https://pokeapi.co/api/v2/berry/23/\"},{\"name\":\"hondew\",\"url\":\"https://pokeapi.co/api/v2/berry/24/\"},{\"name\":\"cornn\",\"url\":\"https://pokeapi.co/api/v2/berry/27/\"},{\"name\":\"magost\",\"url\":\"https://pokeapi.co/api/v2/berry/28/\"},{\"name\":\"durin\",\"url\":\"https://pokeapi.co/api/v2/berry/34/\"},{\"name\":\"kebia\",\"url\":\"https://pokeapi.co/api/v2/berry/42/\"},{\"name\":\"kasib\",\"url\":\"https://pokeapi.co/api/v2/berry/48/\"},{\"name\":\"apicot\",\"url\":\"https://pokeapi.co/api/v2/berry/57/\"},{\"name\":\"enigma\",\"url\":\"https://pokeapi.co/api/v2/berry/60/\"}],\"id\":3,\"name\":\"hard\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Ferme\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Hard\"}]}","asText":null}}},"tags":[]},{"uuid":"5d1f8c8a-d64f-4eab-8aee-b2c55a7c5542","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-type/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,149,1,10,7,114,101,115,117,108,116,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":5,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"cool\",\"url\":\"https://pokeapi.co/api/v2/contest-type/1/\"},{\"name\":\"beauty\",\"url\":\"https://pokeapi.co/api/v2/contest-type/2/\"},{\"name\":\"cute\",\"url\":\"https://pokeapi.co/api/v2/contest-type/3/\"},{\"name\":\"smart\",\"url\":\"https://pokeapi.co/api/v2/contest-type/4/\"},{\"name\":\"tough\",\"url\":\"https://pokeapi.co/api/v2/contest-type/5/\"}]}","asText":null}}},"tags":[]},{"uuid":"9d0af416-fdef-49c9-9be1-ae66d4ead933","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-firmness/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,183,2,10,7,98,101,114,114,105,101,115,18,171,2,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"name\":\"leppa\",\"url\":\"https://pokeapi.co/api/v2/berry/6/\"},{\"name\":\"sitrus\",\"url\":\"https://pokeapi.co/api/v2/berry/10/\"},{\"name\":\"razz\",\"url\":\"https://pokeapi.co/api/v2/berry/16/\"},{\"name\":\"nanab\",\"url\":\"https://pokeapi.co/api/v2/berry/18/\"},{\"name\":\"pomeg\",\"url\":\"https://pokeapi.co/api/v2/berry/21/\"},{\"name\":\"yache\",\"url\":\"https://pokeapi.co/api/v2/berry/40/\"},{\"name\":\"coba\",\"url\":\"https://pokeapi.co/api/v2/berry/44/\"},{\"name\":\"liechi\",\"url\":\"https://pokeapi.co/api/v2/berry/53/\"},{\"name\":\"ganlon\",\"url\":\"https://pokeapi.co/api/v2/berry/54/\"},{\"name\":\"salac\",\"url\":\"https://pokeapi.co/api/v2/berry/55/\"},{\"name\":\"petaya\",\"url\":\"https://pokeapi.co/api/v2/berry/56/\"}],\"id\":4,\"name\":\"very-hard\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Très ferme\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Very Hard\"}]}","asText":null}}},"tags":[]},{"uuid":"9fa964d4-dc1b-4f29-955a-20160320fc53","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,163,3,10,7,114,101,115,117,108,116,115,18,151,3,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":15,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"monster\",\"url\":\"https://pokeapi.co/api/v2/egg-group/1/\"},{\"name\":\"water1\",\"url\":\"https://pokeapi.co/api/v2/egg-group/2/\"},{\"name\":\"bug\",\"url\":\"https://pokeapi.co/api/v2/egg-group/3/\"},{\"name\":\"flying\",\"url\":\"https://pokeapi.co/api/v2/egg-group/4/\"},{\"name\":\"ground\",\"url\":\"https://pokeapi.co/api/v2/egg-group/5/\"},{\"name\":\"fairy\",\"url\":\"https://pokeapi.co/api/v2/egg-group/6/\"},{\"name\":\"plant\",\"url\":\"https://pokeapi.co/api/v2/egg-group/7/\"},{\"name\":\"humanshape\",\"url\":\"https://pokeapi.co/api/v2/egg-group/8/\"},{\"name\":\"water3\",\"url\":\"https://pokeapi.co/api/v2/egg-group/9/\"},{\"name\":\"mineral\",\"url\":\"https://pokeapi.co/api/v2/egg-group/10/\"},{\"name\":\"indeterminate\",\"url\":\"https://pokeapi.co/api/v2/egg-group/11/\"},{\"name\":\"water2\",\"url\":\"https://pokeapi.co/api/v2/egg-group/12/\"},{\"name\":\"ditto\",\"url\":\"https://pokeapi.co/api/v2/egg-group/13/\"},{\"name\":\"dragon\",\"url\":\"https://pokeapi.co/api/v2/egg-group/14/\"},{\"name\":\"no-eggs\",\"url\":\"https://pokeapi.co/api/v2/egg-group/15/\"}]}","asText":null}}},"tags":[]},{"uuid":"a92d8e71-d5f4-44df-b386-059ed12f4f14","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-flavor/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,146,12,10,7,98,101,114,114,105,101,115,18,134,12,8,1,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,41,10,12,99,111,110,116,101,115,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"berry\":{\"name\":\"leppa\",\"url\":\"https://pokeapi.co/api/v2/berry/6/\"},\"potency\":10},{\"berry\":{\"name\":\"oran\",\"url\":\"https://pokeapi.co/api/v2/berry/7/\"},\"potency\":10},{\"berry\":{\"name\":\"persim\",\"url\":\"https://pokeapi.co/api/v2/berry/8/\"},\"potency\":10},{\"berry\":{\"name\":\"sitrus\",\"url\":\"https://pokeapi.co/api/v2/berry/10/\"},\"potency\":10},{\"berry\":{\"name\":\"jaboca\",\"url\":\"https://pokeapi.co/api/v2/berry/63/\"},\"potency\":10},{\"berry\":{\"name\":\"aspear\",\"url\":\"https://pokeapi.co/api/v2/berry/5/\"},\"potency\":10},{\"berry\":{\"name\":\"wacan\",\"url\":\"https://pokeapi.co/api/v2/berry/38/\"},\"potency\":10},{\"berry\":{\"name\":\"kebia\",\"url\":\"https://pokeapi.co/api/v2/berry/42/\"},\"potency\":10},{\"berry\":{\"name\":\"tanga\",\"url\":\"https://pokeapi.co/api/v2/berry/46/\"},\"potency\":10},{\"berry\":{\"name\":\"petaya\",\"url\":\"https://pokeapi.co/api/v2/berry/56/\"},\"potency\":10},{\"berry\":{\"name\":\"wepear\",\"url\":\"https://pokeapi.co/api/v2/berry/19/\"},\"potency\":10},{\"berry\":{\"name\":\"pinap\",\"url\":\"https://pokeapi.co/api/v2/berry/20/\"},\"potency\":10},{\"berry\":{\"name\":\"kelpsy\",\"url\":\"https://pokeapi.co/api/v2/berry/22/\"},\"potency\":10},{\"berry\":{\"name\":\"qualot\",\"url\":\"https://pokeapi.co/api/v2/berry/23/\"},\"potency\":10},{\"berry\":{\"name\":\"grepa\",\"url\":\"https://pokeapi.co/api/v2/berry/25/\"},\"potency\":10},{\"berry\":{\"name\":\"rabuta\",\"url\":\"https://pokeapi.co/api/v2/berry/29/\"},\"potency\":10},{\"berry\":{\"name\":\"durin\",\"url\":\"https://pokeapi.co/api/v2/berry/34/\"},\"potency\":10},{\"berry\":{\"name\":\"iapapa\",\"url\":\"https://pokeapi.co/api/v2/berry/15/\"},\"potency\":15},{\"berry\":{\"name\":\"payapa\",\"url\":\"https://pokeapi.co/api/v2/berry/45/\"},\"potency\":15},{\"berry\":{\"name\":\"yache\",\"url\":\"https://pokeapi.co/api/v2/berry/40/\"},\"potency\":15},{\"berry\":{\"name\":\"colbur\",\"url\":\"https://pokeapi.co/api/v2/berry/50/\"},\"potency\":20},{\"berry\":{\"name\":\"nomel\",\"url\":\"https://pokeapi.co/api/v2/berry/30/\"},\"potency\":20},{\"berry\":{\"name\":\"belue\",\"url\":\"https://pokeapi.co/api/v2/berry/35/\"},\"potency\":30},{\"berry\":{\"name\":\"salac\",\"url\":\"https://pokeapi.co/api/v2/berry/55/\"},\"potency\":30},{\"berry\":{\"name\":\"apicot\",\"url\":\"https://pokeapi.co/api/v2/berry/57/\"},\"potency\":30},{\"berry\":{\"name\":\"lansat\",\"url\":\"https://pokeapi.co/api/v2/berry/58/\"},\"potency\":30},{\"berry\":{\"name\":\"starf\",\"url\":\"https://pokeapi.co/api/v2/berry/59/\"},\"potency\":30},{\"berry\":{\"name\":\"rowap\",\"url\":\"https://pokeapi.co/api/v2/berry/64/\"},\"potency\":40}],\"contest_type\":{\"name\":\"tough\",\"url\":\"https://pokeapi.co/api/v2/contest-type/5/\"},\"id\":5,\"name\":\"sour\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Acide\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Sour\"}]}","asText":null}}},"tags":[]},{"uuid":"386c1a38-1d1d-41b7-9f69-c15a4fccd0be","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-flavor/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,146,12,10,7,98,101,114,114,105,101,115,18,134,12,8,1,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,41,10,12,99,111,110,116,101,115,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"berry\":{\"name\":\"lansat\",\"url\":\"https://pokeapi.co/api/v2/berry/58/\"},\"potency\":10},{\"berry\":{\"name\":\"starf\",\"url\":\"https://pokeapi.co/api/v2/berry/59/\"},\"potency\":10},{\"berry\":{\"name\":\"custap\",\"url\":\"https://pokeapi.co/api/v2/berry/62/\"},\"potency\":10},{\"berry\":{\"name\":\"lum\",\"url\":\"https://pokeapi.co/api/v2/berry/9/\"},\"potency\":10},{\"berry\":{\"name\":\"sitrus\",\"url\":\"https://pokeapi.co/api/v2/berry/10/\"},\"potency\":10},{\"berry\":{\"name\":\"chople\",\"url\":\"https://pokeapi.co/api/v2/berry/41/\"},\"potency\":10},{\"berry\":{\"name\":\"colbur\",\"url\":\"https://pokeapi.co/api/v2/berry/50/\"},\"potency\":10},{\"berry\":{\"name\":\"leppa\",\"url\":\"https://pokeapi.co/api/v2/berry/6/\"},\"potency\":10},{\"berry\":{\"name\":\"salac\",\"url\":\"https://pokeapi.co/api/v2/berry/55/\"},\"potency\":10},{\"berry\":{\"name\":\"oran\",\"url\":\"https://pokeapi.co/api/v2/berry/7/\"},\"potency\":10},{\"berry\":{\"name\":\"nanab\",\"url\":\"https://pokeapi.co/api/v2/berry/18/\"},\"potency\":10},{\"berry\":{\"name\":\"wepear\",\"url\":\"https://pokeapi.co/api/v2/berry/19/\"},\"potency\":10},{\"berry\":{\"name\":\"pomeg\",\"url\":\"https://pokeapi.co/api/v2/berry/21/\"},\"potency\":10},{\"berry\":{\"name\":\"kelpsy\",\"url\":\"https://pokeapi.co/api/v2/berry/22/\"},\"potency\":10},{\"berry\":{\"name\":\"hondew\",\"url\":\"https://pokeapi.co/api/v2/berry/24/\"},\"potency\":10},{\"berry\":{\"name\":\"magost\",\"url\":\"https://pokeapi.co/api/v2/berry/28/\"},\"potency\":10},{\"berry\":{\"name\":\"watmel\",\"url\":\"https://pokeapi.co/api/v2/berry/33/\"},\"potency\":10},{\"berry\":{\"name\":\"rawst\",\"url\":\"https://pokeapi.co/api/v2/berry/4/\"},\"potency\":10},{\"berry\":{\"name\":\"passho\",\"url\":\"https://pokeapi.co/api/v2/berry/37/\"},\"potency\":10},{\"berry\":{\"name\":\"aguav\",\"url\":\"https://pokeapi.co/api/v2/berry/14/\"},\"potency\":15},{\"berry\":{\"name\":\"coba\",\"url\":\"https://pokeapi.co/api/v2/berry/44/\"},\"potency\":15},{\"berry\":{\"name\":\"rindo\",\"url\":\"https://pokeapi.co/api/v2/berry/39/\"},\"potency\":15},{\"berry\":{\"name\":\"haban\",\"url\":\"https://pokeapi.co/api/v2/berry/49/\"},\"potency\":20},{\"berry\":{\"name\":\"rabuta\",\"url\":\"https://pokeapi.co/api/v2/berry/29/\"},\"potency\":20},{\"berry\":{\"name\":\"durin\",\"url\":\"https://pokeapi.co/api/v2/berry/34/\"},\"potency\":30},{\"berry\":{\"name\":\"ganlon\",\"url\":\"https://pokeapi.co/api/v2/berry/54/\"},\"potency\":30},{\"berry\":{\"name\":\"petaya\",\"url\":\"https://pokeapi.co/api/v2/berry/56/\"},\"potency\":30},{\"berry\":{\"name\":\"jaboca\",\"url\":\"https://pokeapi.co/api/v2/berry/63/\"},\"potency\":40}],\"contest_type\":{\"name\":\"smart\",\"url\":\"https://pokeapi.co/api/v2/contest-type/4/\"},\"id\":4,\"name\":\"bitter\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Amère\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Bitter\"}]}","asText":null}}},"tags":[]},{"uuid":"37c3b69a-19ae-4821-a627-8c34eb1b6a4b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,49,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,30,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Extrêmement curieux\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Highly curious\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":0,\"highest_stat\":{\"name\":\"special-attack\",\"url\":\"https://pokeapi.co/api/v2/stat/4/\"},\"id\":4,\"possible_values\":[0,5,10,15,20,25,30]}","asText":null}}},"tags":[]},{"uuid":"4d30ea12-a909-44ab-88bc-992f6ed096ef","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-flavor/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,201,12,10,7,98,101,114,114,105,101,115,18,189,12,8,1,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,41,10,12,99,111,110,116,101,115,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"berry\":{\"name\":\"leppa\",\"url\":\"https://pokeapi.co/api/v2/berry/6/\"},\"potency\":10},{\"berry\":{\"name\":\"persim\",\"url\":\"https://pokeapi.co/api/v2/berry/8/\"},\"potency\":10},{\"berry\":{\"name\":\"lum\",\"url\":\"https://pokeapi.co/api/v2/berry/9/\"},\"potency\":10},{\"berry\":{\"name\":\"sitrus\",\"url\":\"https://pokeapi.co/api/v2/berry/10/\"},\"potency\":10},{\"berry\":{\"name\":\"micle\",\"url\":\"https://pokeapi.co/api/v2/berry/61/\"},\"potency\":10},{\"berry\":{\"name\":\"occa\",\"url\":\"https://pokeapi.co/api/v2/berry/36/\"},\"potency\":10},{\"berry\":{\"name\":\"payapa\",\"url\":\"https://pokeapi.co/api/v2/berry/45/\"},\"potency\":10},{\"berry\":{\"name\":\"haban\",\"url\":\"https://pokeapi.co/api/v2/berry/49/\"},\"potency\":10},{\"berry\":{\"name\":\"chilan\",\"url\":\"https://pokeapi.co/api/v2/berry/52/\"},\"potency\":10},{\"berry\":{\"name\":\"ganlon\",\"url\":\"https://pokeapi.co/api/v2/berry/54/\"},\"potency\":10},{\"berry\":{\"name\":\"bluk\",\"url\":\"https://pokeapi.co/api/v2/berry/17/\"},\"potency\":10},{\"berry\":{\"name\":\"nanab\",\"url\":\"https://pokeapi.co/api/v2/berry/18/\"},\"potency\":10},{\"berry\":{\"name\":\"pomeg\",\"url\":\"https://pokeapi.co/api/v2/berry/21/\"},\"potency\":10},{\"berry\":{\"name\":\"qualot\",\"url\":\"https://pokeapi.co/api/v2/berry/23/\"},\"potency\":10},{\"berry\":{\"name\":\"grepa\",\"url\":\"https://pokeapi.co/api/v2/berry/25/\"},\"potency\":10},{\"berry\":{\"name\":\"cornn\",\"url\":\"https://pokeapi.co/api/v2/berry/27/\"},\"potency\":10},{\"berry\":{\"name\":\"pamtre\",\"url\":\"https://pokeapi.co/api/v2/berry/32/\"},\"potency\":10},{\"berry\":{\"name\":\"pecha\",\"url\":\"https://pokeapi.co/api/v2/berry/3/\"},\"potency\":10},{\"berry\":{\"name\":\"mago\",\"url\":\"https://pokeapi.co/api/v2/berry/13/\"},\"potency\":15},{\"berry\":{\"name\":\"shuca\",\"url\":\"https://pokeapi.co/api/v2/berry/43/\"},\"potency\":15},{\"berry\":{\"name\":\"wacan\",\"url\":\"https://pokeapi.co/api/v2/berry/38/\"},\"potency\":15},{\"berry\":{\"name\":\"kasib\",\"url\":\"https://pokeapi.co/api/v2/berry/48/\"},\"potency\":20},{\"berry\":{\"name\":\"magost\",\"url\":\"https://pokeapi.co/api/v2/berry/28/\"},\"potency\":20},{\"berry\":{\"name\":\"watmel\",\"url\":\"https://pokeapi.co/api/v2/berry/33/\"},\"potency\":30},{\"berry\":{\"name\":\"liechi\",\"url\":\"https://pokeapi.co/api/v2/berry/53/\"},\"potency\":30},{\"berry\":{\"name\":\"salac\",\"url\":\"https://pokeapi.co/api/v2/berry/55/\"},\"potency\":30},{\"berry\":{\"name\":\"lansat\",\"url\":\"https://pokeapi.co/api/v2/berry/58/\"},\"potency\":30},{\"berry\":{\"name\":\"starf\",\"url\":\"https://pokeapi.co/api/v2/berry/59/\"},\"potency\":30},{\"berry\":{\"name\":\"custap\",\"url\":\"https://pokeapi.co/api/v2/berry/62/\"},\"potency\":40}],\"contest_type\":{\"name\":\"cute\",\"url\":\"https://pokeapi.co/api/v2/contest-type/3/\"},\"id\":3,\"name\":\"sweet\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Sucré\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Sweet\"}]}","asText":null}}},"tags":[]},{"uuid":"c53aa1a8-462c-432c-9bdf-0481d94d4d3f","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,49,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,30,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Est fier de sa puissance\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Proud of its power\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":0,\"highest_stat\":{\"name\":\"attack\",\"url\":\"https://pokeapi.co/api/v2/stat/2/\"},\"id\":2,\"possible_values\":[0,5,10,15,20,25,30]}","asText":null}}},"tags":[]},{"uuid":"3f4a4c97-fe5c-49d9-9b79-d04d0250476e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-flavor/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,128,13,10,7,98,101,114,114,105,101,115,18,244,12,8,1,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,41,10,12,99,111,110,116,101,115,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"berry\":{\"name\":\"kasib\",\"url\":\"https://pokeapi.co/api/v2/berry/48/\"},\"potency\":10},{\"berry\":{\"name\":\"babiri\",\"url\":\"https://pokeapi.co/api/v2/berry/51/\"},\"potency\":10},{\"berry\":{\"name\":\"liechi\",\"url\":\"https://pokeapi.co/api/v2/berry/53/\"},\"potency\":10},{\"berry\":{\"name\":\"lum\",\"url\":\"https://pokeapi.co/api/v2/berry/9/\"},\"potency\":10},{\"berry\":{\"name\":\"sitrus\",\"url\":\"https://pokeapi.co/api/v2/berry/10/\"},\"potency\":10},{\"berry\":{\"name\":\"oran\",\"url\":\"https://pokeapi.co/api/v2/berry/7/\"},\"potency\":10},{\"berry\":{\"name\":\"razz\",\"url\":\"https://pokeapi.co/api/v2/berry/16/\"},\"potency\":10},{\"berry\":{\"name\":\"bluk\",\"url\":\"https://pokeapi.co/api/v2/berry/17/\"},\"potency\":10},{\"berry\":{\"name\":\"kelpsy\",\"url\":\"https://pokeapi.co/api/v2/berry/22/\"},\"potency\":10},{\"berry\":{\"name\":\"hondew\",\"url\":\"https://pokeapi.co/api/v2/berry/24/\"},\"potency\":10},{\"berry\":{\"name\":\"grepa\",\"url\":\"https://pokeapi.co/api/v2/berry/25/\"},\"potency\":10},{\"berry\":{\"name\":\"tamato\",\"url\":\"https://pokeapi.co/api/v2/berry/26/\"},\"potency\":10},{\"berry\":{\"name\":\"enigma\",\"url\":\"https://pokeapi.co/api/v2/berry/60/\"},\"potency\":10},{\"berry\":{\"name\":\"spelon\",\"url\":\"https://pokeapi.co/api/v2/berry/31/\"},\"potency\":10},{\"berry\":{\"name\":\"starf\",\"url\":\"https://pokeapi.co/api/v2/berry/59/\"},\"potency\":10},{\"berry\":{\"name\":\"chesto\",\"url\":\"https://pokeapi.co/api/v2/berry/2/\"},\"potency\":10},{\"berry\":{\"name\":\"yache\",\"url\":\"https://pokeapi.co/api/v2/berry/40/\"},\"potency\":10},{\"berry\":{\"name\":\"persim\",\"url\":\"https://pokeapi.co/api/v2/berry/8/\"},\"potency\":10},{\"berry\":{\"name\":\"coba\",\"url\":\"https://pokeapi.co/api/v2/berry/44/\"},\"potency\":10},{\"berry\":{\"name\":\"lansat\",\"url\":\"https://pokeapi.co/api/v2/berry/58/\"},\"potency\":10},{\"berry\":{\"name\":\"passho\",\"url\":\"https://pokeapi.co/api/v2/berry/37/\"},\"potency\":15},{\"berry\":{\"name\":\"wiki\",\"url\":\"https://pokeapi.co/api/v2/berry/12/\"},\"potency\":15},{\"berry\":{\"name\":\"kebia\",\"url\":\"https://pokeapi.co/api/v2/berry/42/\"},\"potency\":15},{\"berry\":{\"name\":\"charti\",\"url\":\"https://pokeapi.co/api/v2/berry/47/\"},\"potency\":20},{\"berry\":{\"name\":\"cornn\",\"url\":\"https://pokeapi.co/api/v2/berry/27/\"},\"potency\":20},{\"berry\":{\"name\":\"chilan\",\"url\":\"https://pokeapi.co/api/v2/berry/52/\"},\"potency\":25},{\"berry\":{\"name\":\"apicot\",\"url\":\"https://pokeapi.co/api/v2/berry/57/\"},\"potency\":30},{\"berry\":{\"name\":\"pamtre\",\"url\":\"https://pokeapi.co/api/v2/berry/32/\"},\"potency\":30},{\"berry\":{\"name\":\"ganlon\",\"url\":\"https://pokeapi.co/api/v2/berry/54/\"},\"potency\":30},{\"berry\":{\"name\":\"micle\",\"url\":\"https://pokeapi.co/api/v2/berry/61/\"},\"potency\":40}],\"contest_type\":{\"name\":\"beauty\",\"url\":\"https://pokeapi.co/api/v2/contest-type/2/\"},\"id\":2,\"name\":\"dry\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Sec\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Dry\"}]}","asText":null}}},"tags":[]},{"uuid":"8a1c44d7-7484-4dd3-8dd6-46e5338ecdb9","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/berry-flavor/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,201,12,10,7,98,101,114,114,105,101,115,18,189,12,8,1,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,26,53,8,0,18,34,10,5,98,101,114,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,112,111,116,101,110,99,121,18,2,8,3,18,41,10,12,99,111,110,116,101,115,116,95,116,121,112,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berries\":[{\"berry\":{\"name\":\"rowap\",\"url\":\"https://pokeapi.co/api/v2/berry/64/\"},\"potency\":10},{\"berry\":{\"name\":\"leppa\",\"url\":\"https://pokeapi.co/api/v2/berry/6/\"},\"potency\":10},{\"berry\":{\"name\":\"oran\",\"url\":\"https://pokeapi.co/api/v2/berry/7/\"},\"potency\":10},{\"berry\":{\"name\":\"persim\",\"url\":\"https://pokeapi.co/api/v2/berry/8/\"},\"potency\":10},{\"berry\":{\"name\":\"lum\",\"url\":\"https://pokeapi.co/api/v2/berry/9/\"},\"potency\":10},{\"berry\":{\"name\":\"razz\",\"url\":\"https://pokeapi.co/api/v2/berry/16/\"},\"potency\":10},{\"berry\":{\"name\":\"pinap\",\"url\":\"https://pokeapi.co/api/v2/berry/20/\"},\"potency\":10},{\"berry\":{\"name\":\"pomeg\",\"url\":\"https://pokeapi.co/api/v2/berry/21/\"},\"potency\":10},{\"berry\":{\"name\":\"qualot\",\"url\":\"https://pokeapi.co/api/v2/berry/23/\"},\"potency\":10},{\"berry\":{\"name\":\"hondew\",\"url\":\"https://pokeapi.co/api/v2/berry/24/\"},\"potency\":10},{\"berry\":{\"name\":\"nomel\",\"url\":\"https://pokeapi.co/api/v2/berry/30/\"},\"potency\":10},{\"berry\":{\"name\":\"belue\",\"url\":\"https://pokeapi.co/api/v2/berry/35/\"},\"potency\":10},{\"berry\":{\"name\":\"rindo\",\"url\":\"https://pokeapi.co/api/v2/berry/39/\"},\"potency\":10},{\"berry\":{\"name\":\"shuca\",\"url\":\"https://pokeapi.co/api/v2/berry/43/\"},\"potency\":10},{\"berry\":{\"name\":\"charti\",\"url\":\"https://pokeapi.co/api/v2/berry/47/\"},\"potency\":10},{\"berry\":{\"name\":\"apicot\",\"url\":\"https://pokeapi.co/api/v2/berry/57/\"},\"potency\":10},{\"berry\":{\"name\":\"cheri\",\"url\":\"https://pokeapi.co/api/v2/berry/1/\"},\"potency\":10},{\"berry\":{\"name\":\"chople\",\"url\":\"https://pokeapi.co/api/v2/berry/41/\"},\"potency\":15},{\"berry\":{\"name\":\"figy\",\"url\":\"https://pokeapi.co/api/v2/berry/11/\"},\"potency\":15},{\"berry\":{\"name\":\"occa\",\"url\":\"https://pokeapi.co/api/v2/berry/36/\"},\"potency\":15},{\"berry\":{\"name\":\"tamato\",\"url\":\"https://pokeapi.co/api/v2/berry/26/\"},\"potency\":20},{\"berry\":{\"name\":\"tanga\",\"url\":\"https://pokeapi.co/api/v2/berry/46/\"},\"potency\":20},{\"berry\":{\"name\":\"babiri\",\"url\":\"https://pokeapi.co/api/v2/berry/51/\"},\"potency\":25},{\"berry\":{\"name\":\"starf\",\"url\":\"https://pokeapi.co/api/v2/berry/59/\"},\"potency\":30},{\"berry\":{\"name\":\"liechi\",\"url\":\"https://pokeapi.co/api/v2/berry/53/\"},\"potency\":30},{\"berry\":{\"name\":\"spelon\",\"url\":\"https://pokeapi.co/api/v2/berry/31/\"},\"potency\":30},{\"berry\":{\"name\":\"petaya\",\"url\":\"https://pokeapi.co/api/v2/berry/56/\"},\"potency\":30},{\"berry\":{\"name\":\"lansat\",\"url\":\"https://pokeapi.co/api/v2/berry/58/\"},\"potency\":30},{\"berry\":{\"name\":\"enigma\",\"url\":\"https://pokeapi.co/api/v2/berry/60/\"},\"potency\":40}],\"contest_type\":{\"name\":\"cool\",\"url\":\"https://pokeapi.co/api/v2/contest-type/1/\"},\"id\":1,\"name\":\"spicy\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Épicé\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Spicy\"}]}","asText":null}}},"tags":[]},{"uuid":"df7f68ad-ab72-4f61-9d9a-8c82fd2e9e56","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,49,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,30,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Adore manger\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Loves to eat\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":0,\"highest_stat\":{\"name\":\"hp\",\"url\":\"https://pokeapi.co/api/v2/stat/1/\"},\"id\":1,\"possible_values\":[0,5,10,15,20,25,30]}","asText":null}}},"tags":[]},{"uuid":"d8c9118e-de80-4da9-9752-153ccb212321","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Aime se démener\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Likes to thrash about\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":1,\"highest_stat\":{\"name\":\"attack\",\"url\":\"https://pokeapi.co/api/v2/stat/2/\"},\"id\":8,\"possible_values\":[1,6,11,16,21,26]}","asText":null}}},"tags":[]},{"uuid":"1df211ba-c8c8-4d91-9aa7-85fc913446ca","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,49,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,30,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Très volontaire\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Strong willed\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":0,\"highest_stat\":{\"name\":\"special-defense\",\"url\":\"https://pokeapi.co/api/v2/stat/5/\"},\"id\":5,\"possible_values\":[0,5,10,15,20,25,30]}","asText":null}}},"tags":[]},{"uuid":"c6927974-531b-4d9a-a29f-5556dab5fa2e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,49,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,30,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Aime courir\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Likes to run\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":0,\"highest_stat\":{\"name\":\"speed\",\"url\":\"https://pokeapi.co/api/v2/stat/6/\"},\"id\":6,\"possible_values\":[0,5,10,15,20,25,30]}","asText":null}}},"tags":[]},{"uuid":"24b124a8-90d0-4760-9f18-283007f6710d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,49,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,30,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Corps robuste\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Sturdy body\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":0,\"highest_stat\":{\"name\":\"defense\",\"url\":\"https://pokeapi.co/api/v2/stat/3/\"},\"id\":3,\"possible_values\":[0,5,10,15,20,25,30]}","asText":null}}},"tags":[]},{"uuid":"9afe9d35-c3c8-4276-a7a0-71be307cb400","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Coquin\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Mischievous\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":1,\"highest_stat\":{\"name\":\"special-attack\",\"url\":\"https://pokeapi.co/api/v2/stat/4/\"},\"id\":10,\"possible_values\":[1,6,11,16,21,26]}","asText":null}}},"tags":[]},{"uuid":"68ca5b86-b6b0-4845-bd5f-b45482e74405","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Sait encaisser les coups\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Capable of taking hits\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":1,\"highest_stat\":{\"name\":\"defense\",\"url\":\"https://pokeapi.co/api/v2/stat/3/\"},\"id\":9,\"possible_values\":[1,6,11,16,21,26]}","asText":null}}},"tags":[]},{"uuid":"455569f0-2b36-4b02-aac2-cf116238ae9b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/17/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Esprit rebelle\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Strongly defiant\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":2,\"highest_stat\":{\"name\":\"special-defense\",\"url\":\"https://pokeapi.co/api/v2/stat/5/\"},\"id\":17,\"possible_values\":[2,7,12,17,22,27]}","asText":null}}},"tags":[]},{"uuid":"e2a2d1ed-a1ea-4ff2-b168-d07ac12cc121","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/18/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Bête et impulsif\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Impetuous and silly\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":2,\"highest_stat\":{\"name\":\"speed\",\"url\":\"https://pokeapi.co/api/v2/stat/6/\"},\"id\":18,\"possible_values\":[2,7,12,17,22,27]}","asText":null}}},"tags":[]},{"uuid":"23445d35-5cd7-4a1a-a625-5181b6a2fa53","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Très obstiné\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Highly persistent\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":2,\"highest_stat\":{\"name\":\"defense\",\"url\":\"https://pokeapi.co/api/v2/stat/3/\"},\"id\":15,\"possible_values\":[2,7,12,17,22,27]}","asText":null}}},"tags":[]},{"uuid":"90c65d2c-be89-4d1a-ac4c-b37161a35779","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"S'assoupit souvent\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Takes plenty of siestas\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":1,\"highest_stat\":{\"name\":\"hp\",\"url\":\"https://pokeapi.co/api/v2/stat/1/\"},\"id\":7,\"possible_values\":[1,6,11,16,21,26]}","asText":null}}},"tags":[]},{"uuid":"a8e33ec5-41cf-4e9c-9fea-6c0e74f779ed","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":1,\"effect_entries\":[{\"effect\":\"Attempts to jam all Pokémon that have appealed this turn.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Badly startles those that have made appeals.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":5,\"jam\":3}","asText":null}}},"tags":[]},{"uuid":"496d3351-d1df-4a46-801f-fb72fc78c1e8","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/16/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Très astucieux\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Thoroughly cunning\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":2,\"highest_stat\":{\"name\":\"special-attack\",\"url\":\"https://pokeapi.co/api/v2/stat/4/\"},\"id\":16,\"possible_values\":[2,7,12,17,22,27]}","asText":null}}},"tags":[]},{"uuid":"d2b53763-ee4a-4b7a-8db7-fc445d4b5a89","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":1,\"effect_entries\":[{\"effect\":\"Attempts to jam the Pokémon that appealed before the user.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Badly startles the Pokémon in front.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":4,\"jam\":4}","asText":null}}},"tags":[]},{"uuid":"4928f80a-1b90-4571-bcbf-05fe8281b1d4","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/20/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Aime combattre\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Likes to fight\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":3,\"highest_stat\":{\"name\":\"attack\",\"url\":\"https://pokeapi.co/api/v2/stat/2/\"},\"id\":20,\"possible_values\":[3,8,13,18,23,28]}","asText":null}}},"tags":[]},{"uuid":"bb7b1be4-312a-4f04-90a7-ba38c8ac51c6","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":4,\"effect_entries\":[{\"effect\":\"Gives a high number of appeal points wth no other effects.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"A highly appealing move.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":1,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"ef232b99-1d28-44b2-88f8-7a693d530dd5","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Un peu coléreux\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"A little quick tempered\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":2,\"highest_stat\":{\"name\":\"attack\",\"url\":\"https://pokeapi.co/api/v2/stat/2/\"},\"id\":14,\"possible_values\":[2,7,12,17,22,27]}","asText":null}}},"tags":[]},{"uuid":"446c0aef-abd6-4b26-8852-53f1939d6785","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Dort beaucoup\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Nods off a lot\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":2,\"highest_stat\":{\"name\":\"hp\",\"url\":\"https://pokeapi.co/api/v2/stat/1/\"},\"id\":13,\"possible_values\":[2,7,12,17,22,27]}","asText":null}}},"tags":[]},{"uuid":"8f76ca09-1c42-42dc-8b31-4a3e60b97db1","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Attentif aux sons\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Alert to sounds\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":1,\"highest_stat\":{\"name\":\"speed\",\"url\":\"https://pokeapi.co/api/v2/stat/6/\"},\"id\":12,\"possible_values\":[1,6,11,16,21,26]}","asText":null}}},"tags":[]},{"uuid":"7f138bcc-4df4-4fb7-ae1f-54fcafa6889b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":2,\"effect_entries\":[{\"effect\":\"Attempts to jam all Pokémon that have appealed this turn.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Startles all Pokémon that have done their appeals.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":8,\"jam\":2}","asText":null}}},"tags":[]},{"uuid":"34d6fc3f-9900-4a72-8496-65f4ddfc165d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Un peu vaniteux\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Somewhat vain\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":1,\"highest_stat\":{\"name\":\"special-defense\",\"url\":\"https://pokeapi.co/api/v2/stat/5/\"},\"id\":11,\"possible_values\":[1,6,11,16,21,26]}","asText":null}}},"tags":[]},{"uuid":"17f1f64d-612f-4b00-b2ec-9fea382ff31b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":6,\"effect_entries\":[{\"effect\":\"If the user is jammed this turn after using this move, it will receive twice as many jam points.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"After this move, the user is more easily startled.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":3,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"c42ba58d-424a-4d0c-976f-acda9c4d7e95","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":2,\"effect_entries\":[{\"effect\":\"Attempts to jam all Pokémon that have appealed this turn. If a Pokémon is in combo standby status, it is jammed 5 points instead of 1.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Startles the Pokémon that has the judge's attention.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":10,\"jam\":1}","asText":null}}},"tags":[]},{"uuid":"7afc1840-30f5-460e-aafe-12e7a585d98b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":2,\"effect_entries\":[{\"effect\":\"Attempts to jam the Pokémon that appealed before the user.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Startles the Pokémon that appealed before the user.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":9,\"jam\":3}","asText":null}}},"tags":[]},{"uuid":"09bbecdc-294f-46cc-8f09-695c0f0a28dd","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":1,\"effect_entries\":[{\"effect\":\"Always adds a point to the applause meter, regardless of whether the move matches the contest, and can likewise gain the applause bonus.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"An appeal that excites the audience in any contest.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":13,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"a62b334d-7d75-4493-ab24-0f7cc2997351","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":3,\"effect_entries\":[{\"effect\":\"If the Pokémon that appealed before the user earned less than three appeal points, user earns six; if three, user earns three; if more than three, user earns none.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Affected by how well the appeal in front goes.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":2,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"fc9fb151-317a-4417-abd0-df1ed883af86","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/characteristic/19/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,142,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,126,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,17,10,11,103,101,110,101,95,109,111,100,117,108,111,18,2,8,3,18,41,10,12,104,105,103,104,101,115,116,95,115,116,97,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,45,10,15,112,111,115,115,105,98,108,101,95,118,97,108,117,101,115,18,26,8,1,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3,26,2,8,3]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Éparpille des choses\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}},{\"description\":\"Scatters things often\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"gene_modulo\":3,\"highest_stat\":{\"name\":\"hp\",\"url\":\"https://pokeapi.co/api/v2/stat/1/\"},\"id\":19,\"possible_values\":[3,8,13,18,23,28]}","asText":null}}},"tags":[]},{"uuid":"03d3bd4d-9a3c-4388-a937-ea110a6704ce","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":4,\"effect_entries\":[{\"effect\":\"Attempts to jam the other Pokémon. The user cannot make an appeal on the next turn, but it cannot be jammed either.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Jams the others, and misses one turn of appeals.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":6,\"jam\":4}","asText":null}}},"tags":[]},{"uuid":"dc5094c6-6516-483f-a234-ce3e719c4fa0","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":1,\"effect_entries\":[{\"effect\":\"If the Applause meter is empty or at one, earns one point; if two, earns three points; if three, earns four points; if four, earns six points.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"The appeal works best the more the crowd is excited.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":11,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"34302867-e192-4cb8-895f-d3d5b6e1c15c","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":2,\"effect_entries\":[{\"effect\":\"Attempts to jam all Pokémon that have appealed this turn for half their appeal points (minimum 1).\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Badly startles all Pokémon that made good appeals.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":14,\"jam\":1}","asText":null}}},"tags":[]},{"uuid":"03ac7fab-6bf5-4253-a059-27ebee59b0ec","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":8,\"effect_entries\":[{\"effect\":\"User cannot make any more appeals for the remainder of the contest.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Makes a great appeal, but allows no more to the end.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":7,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"1cad3d0f-7ddf-45dd-b115-0e37d0cb911d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/17/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":3,\"effect_entries\":[{\"effect\":\"Repeated use does not incur a penalty.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Can be repeatedly used without boring the judge.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":17,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"c513e7ce-f963-4261-9215-03c6046ace9e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":2,\"effect_entries\":[{\"effect\":\"If the last Pokémon's appeal is the same type as this move, user earns six points instead of two.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Works well if it's the same type as the one before.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":12,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"a7b91157-2115-4aed-ac9b-c3452008bf41","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":1,\"effect_entries\":[{\"effect\":\"Prevents jamming for the rest of this turn.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Can avoid being startled by others.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":15,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"db920d86-6d8e-477a-abf8-960c9a66b6f3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/18/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":2,\"effect_entries\":[{\"effect\":\"Attempts to make all following Pokémon nervous (and thus unable to appeal).\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Makes all Pokémon after the user nervous.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":18,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"5aa9fdf9-2b18-4a7f-8d4a-35af416bd7c6","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,176,1,10,7,114,101,115,117,108,116,115,18,164,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":6,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"swarm\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/1/\"},{\"name\":\"time\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/2/\"},{\"name\":\"radar\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/3/\"},{\"name\":\"slot2\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/4/\"},{\"name\":\"radio\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/5/\"},{\"name\":\"season\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/6/\"}]}","asText":null}}},"tags":[]},{"uuid":"a2893a47-dbd7-4d8f-afb2-51ab2e3383c6","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/16/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":2,\"effect_entries\":[{\"effect\":\"Prevents the next jam on this turn.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Can avoid being startled by others once.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":16,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"07a51314-f898-4a54-a2eb-94a2a3676b28","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/19/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":1,\"effect_entries\":[{\"effect\":\"User earns appeal points equal to the points the previous Pokémon earned plus one.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Makes the appeal as good as the one before it.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":19,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"82e9e4f5-638b-4b09-a2e3-bf36d3d1e271","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-effect/20/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,12,10,6,97,112,112,101,97,108,18,2,8,3,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,87,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,64,8,1,26,60,8,0,18,17,10,11,102,108,97,118,111,114,95,116,101,120,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,9,10,3,106,97,109,18,2,8,3]}},"asJsonString":"{\"appeal\":1,\"effect_entries\":[{\"effect\":\"User earns appeal points equal to half the points ALL the previous Pokémon earned plus one.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"flavor_text_entries\":[{\"flavor_text\":\"Makes the appeal as good as those before it.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":20,\"jam\":0}","asText":null}}},"tags":[]},{"uuid":"f5c5ded9-3488-4080-93ab-7c2f8775fb72","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,170,4,10,7,114,101,115,117,108,116,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":20,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"swarm-yes\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/1/\"},{\"name\":\"swarm-no\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/2/\"},{\"name\":\"time-morning\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/3/\"},{\"name\":\"time-day\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/4/\"},{\"name\":\"time-night\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/5/\"},{\"name\":\"radar-on\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/6/\"},{\"name\":\"radar-off\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/7/\"},{\"name\":\"slot2-none\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/8/\"},{\"name\":\"slot2-ruby\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/9/\"},{\"name\":\"slot2-sapphire\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/10/\"},{\"name\":\"slot2-emerald\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/11/\"},{\"name\":\"slot2-firered\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/12/\"},{\"name\":\"slot2-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/13/\"},{\"name\":\"radio-off\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/14/\"},{\"name\":\"radio-hoenn\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/15/\"},{\"name\":\"radio-sinnoh\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/16/\"},{\"name\":\"season-spring\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/17/\"},{\"name\":\"season-summer\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/18/\"},{\"name\":\"season-autumn\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/19/\"},{\"name\":\"season-winter\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"5cf24a8e-3b37-42e9-9642-285ec96b4e77","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-type/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,41,10,12,98,101,114,114,121,95,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,148,1,10,5,110,97,109,101,115,18,138,1,8,1,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berry_flavor\":{\"name\":\"dry\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/2/\"},\"id\":2,\"name\":\"beauty\",\"names\":[{\"color\":\"Blue\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Beauty\"},{\"color\":\"Bleu\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Beauté\"}]}","asText":null}}},"tags":[]},{"uuid":"e37b7570-b172-4d97-a034-e4f9e58bee4e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-type/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,41,10,12,98,101,114,114,121,95,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,148,1,10,5,110,97,109,101,115,18,138,1,8,1,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berry_flavor\":{\"name\":\"spicy\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/1/\"},\"id\":1,\"name\":\"cool\",\"names\":[{\"color\":\"Red\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Cool\"},{\"color\":\"Rouge\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Sang-froid\"}]}","asText":null}}},"tags":[]},{"uuid":"b2fe820b-ee40-4043-a62f-022b65639dd5","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-type/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,41,10,12,98,101,114,114,121,95,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,148,1,10,5,110,97,109,101,115,18,138,1,8,1,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berry_flavor\":{\"name\":\"sour\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/5/\"},\"id\":5,\"name\":\"tough\",\"names\":[{\"color\":\"Yellow\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Tough\"},{\"color\":\"Jaune\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Robustesse\"}]}","asText":null}}},"tags":[]},{"uuid":"dc0fdaaa-f34b-46b9-98b5-36485cc19c85","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-type/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,41,10,12,98,101,114,114,121,95,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,148,1,10,5,110,97,109,101,115,18,138,1,8,1,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berry_flavor\":{\"name\":\"bitter\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/4/\"},\"id\":4,\"name\":\"smart\",\"names\":[{\"color\":\"Green\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Smart\"},{\"color\":\"Vert\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Intelligence\"}]}","asText":null}}},"tags":[]},{"uuid":"9e376d92-41d9-49b7-954f-333fef05bb4d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/contest-type/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,41,10,12,98,101,114,114,121,95,102,108,97,118,111,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,148,1,10,5,110,97,109,101,115,18,138,1,8,1,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,66,8,0,18,11,10,5,99,111,108,111,114,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"berry_flavor\":{\"name\":\"sweet\",\"url\":\"https://pokeapi.co/api/v2/berry-flavor/3/\"},\"id\":3,\"name\":\"cute\",\"names\":[{\"color\":\"Pink\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Cute\"},{\"color\":\"Rose\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Grâce\"}]}","asText":null}}},"tags":[]},{"uuid":"a12b3f39-42de-42e6-868f-1ee3efff9d96","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,235,16,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,215,16,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":1,\"name\":\"monster\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"かいじゅう\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Monstrueux\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Monster\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Monstruo\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Mostro\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Monster\"}],\"pokemon_species\":[{\"name\":\"bulbasaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/1/\"},{\"name\":\"ivysaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/2/\"},{\"name\":\"venusaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/3/\"},{\"name\":\"charmander\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/4/\"},{\"name\":\"charmeleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/5/\"},{\"name\":\"charizard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/6/\"},{\"name\":\"squirtle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/7/\"},{\"name\":\"wartortle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/8/\"},{\"name\":\"blastoise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/9/\"},{\"name\":\"nidoran-f\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/29/\"},{\"name\":\"nidoran-m\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/32/\"},{\"name\":\"nidorino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/33/\"},{\"name\":\"nidoking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/34/\"},{\"name\":\"slowpoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/79/\"},{\"name\":\"slowbro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/80/\"},{\"name\":\"cubone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/104/\"},{\"name\":\"marowak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/105/\"},{\"name\":\"lickitung\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/108/\"},{\"name\":\"rhyhorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/111/\"},{\"name\":\"rhydon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/112/\"},{\"name\":\"kangaskhan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/115/\"},{\"name\":\"lapras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/131/\"},{\"name\":\"snorlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/143/\"},{\"name\":\"chikorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/152/\"},{\"name\":\"bayleef\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/153/\"},{\"name\":\"meganium\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/154/\"},{\"name\":\"totodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/158/\"},{\"name\":\"croconaw\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/159/\"},{\"name\":\"feraligatr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/160/\"},{\"name\":\"mareep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/179/\"},{\"name\":\"flaaffy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/180/\"},{\"name\":\"ampharos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/181/\"},{\"name\":\"slowking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/199/\"},{\"name\":\"larvitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/246/\"},{\"name\":\"pupitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/247/\"},{\"name\":\"tyranitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/248/\"},{\"name\":\"treecko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/252/\"},{\"name\":\"grovyle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/253/\"},{\"name\":\"sceptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/254/\"},{\"name\":\"mudkip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/258/\"},{\"name\":\"marshtomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/259/\"},{\"name\":\"swampert\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/260/\"},{\"name\":\"whismur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/293/\"},{\"name\":\"loudred\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/294/\"},{\"name\":\"exploud\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/295/\"},{\"name\":\"aron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/304/\"},{\"name\":\"lairon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/305/\"},{\"name\":\"aggron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/306/\"},{\"name\":\"tropius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/357/\"},{\"name\":\"turtwig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/387/\"},{\"name\":\"grotle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/388/\"},{\"name\":\"torterra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/389/\"},{\"name\":\"cranidos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/408/\"},{\"name\":\"rampardos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/409/\"},{\"name\":\"shieldon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/410/\"},{\"name\":\"bastiodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/411/\"},{\"name\":\"gible\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/443/\"},{\"name\":\"gabite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/444/\"},{\"name\":\"garchomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/445/\"},{\"name\":\"snover\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/459/\"},{\"name\":\"abomasnow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/460/\"},{\"name\":\"lickilicky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/463/\"},{\"name\":\"rhyperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/464/\"},{\"name\":\"axew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/610/\"},{\"name\":\"fraxure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/611/\"},{\"name\":\"haxorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/612/\"},{\"name\":\"druddigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/621/\"},{\"name\":\"helioptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/694/\"},{\"name\":\"heliolisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/695/\"},{\"name\":\"tyrunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/696/\"},{\"name\":\"tyrantrum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/697/\"},{\"name\":\"amaura\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/698/\"},{\"name\":\"aurorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/699/\"},{\"name\":\"bergmite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/712/\"},{\"name\":\"avalugg\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/713/\"},{\"name\":\"salandit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/757/\"},{\"name\":\"salazzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/758/\"},{\"name\":\"turtonator\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/776/\"},{\"name\":\"drampa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/780/\"}]}","asText":null}}},"tags":[]},{"uuid":"4271027c-9675-4de4-b044-e4715eef880e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,155,20,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,135,20,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":2,\"name\":\"water1\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"すいちゅう1\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Aquatique 1\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Wasser 1\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Agua 1\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Acqua 1\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Water 1\"}],\"pokemon_species\":[{\"name\":\"squirtle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/7/\"},{\"name\":\"wartortle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/8/\"},{\"name\":\"blastoise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/9/\"},{\"name\":\"psyduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/54/\"},{\"name\":\"golduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/55/\"},{\"name\":\"poliwag\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/60/\"},{\"name\":\"poliwhirl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/61/\"},{\"name\":\"poliwrath\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/62/\"},{\"name\":\"slowpoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/79/\"},{\"name\":\"slowbro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/80/\"},{\"name\":\"seel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/86/\"},{\"name\":\"dewgong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/87/\"},{\"name\":\"horsea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/116/\"},{\"name\":\"seadra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/117/\"},{\"name\":\"lapras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/131/\"},{\"name\":\"omanyte\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/138/\"},{\"name\":\"omastar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/139/\"},{\"name\":\"kabuto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/140/\"},{\"name\":\"kabutops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/141/\"},{\"name\":\"dratini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/147/\"},{\"name\":\"dragonair\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/148/\"},{\"name\":\"dragonite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/149/\"},{\"name\":\"totodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/158/\"},{\"name\":\"croconaw\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/159/\"},{\"name\":\"feraligatr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/160/\"},{\"name\":\"marill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/183/\"},{\"name\":\"azumarill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/184/\"},{\"name\":\"politoed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/186/\"},{\"name\":\"wooper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/194/\"},{\"name\":\"quagsire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/195/\"},{\"name\":\"slowking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/199/\"},{\"name\":\"corsola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/222/\"},{\"name\":\"remoraid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/223/\"},{\"name\":\"octillery\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/224/\"},{\"name\":\"delibird\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/225/\"},{\"name\":\"mantine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/226/\"},{\"name\":\"kingdra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/230/\"},{\"name\":\"mudkip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/258/\"},{\"name\":\"marshtomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/259/\"},{\"name\":\"swampert\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/260/\"},{\"name\":\"lotad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/270/\"},{\"name\":\"lombre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/271/\"},{\"name\":\"ludicolo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/272/\"},{\"name\":\"wingull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/278/\"},{\"name\":\"pelipper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/279/\"},{\"name\":\"surskit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/283/\"},{\"name\":\"masquerain\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/284/\"},{\"name\":\"corphish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/341/\"},{\"name\":\"crawdaunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/342/\"},{\"name\":\"feebas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/349/\"},{\"name\":\"milotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/350/\"},{\"name\":\"spheal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/363/\"},{\"name\":\"sealeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/364/\"},{\"name\":\"walrein\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/365/\"},{\"name\":\"clamperl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/366/\"},{\"name\":\"huntail\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/367/\"},{\"name\":\"gorebyss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/368/\"},{\"name\":\"relicanth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/369/\"},{\"name\":\"piplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/393/\"},{\"name\":\"prinplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/394/\"},{\"name\":\"empoleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/395/\"},{\"name\":\"bidoof\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/399/\"},{\"name\":\"bibarel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/400/\"},{\"name\":\"buizel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/418/\"},{\"name\":\"floatzel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/419/\"},{\"name\":\"shellos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/422/\"},{\"name\":\"gastrodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/423/\"},{\"name\":\"phione\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/489/\"},{\"name\":\"manaphy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/490/\"},{\"name\":\"tympole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/535/\"},{\"name\":\"palpitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/536/\"},{\"name\":\"seismitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/537/\"},{\"name\":\"tirtouga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/564/\"},{\"name\":\"carracosta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/565/\"},{\"name\":\"ducklett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/580/\"},{\"name\":\"swanna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/581/\"},{\"name\":\"alomomola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/594/\"},{\"name\":\"stunfisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/618/\"},{\"name\":\"froakie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/656/\"},{\"name\":\"frogadier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/657/\"},{\"name\":\"greninja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/658/\"},{\"name\":\"inkay\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/686/\"},{\"name\":\"malamar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/687/\"},{\"name\":\"skrelp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/690/\"},{\"name\":\"dragalge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/691/\"},{\"name\":\"clauncher\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/692/\"},{\"name\":\"clawitzer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/693/\"},{\"name\":\"popplio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/728/\"},{\"name\":\"brionne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/729/\"},{\"name\":\"primarina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/730/\"},{\"name\":\"mareanie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/747/\"},{\"name\":\"toxapex\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/748/\"},{\"name\":\"dewpider\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/751/\"},{\"name\":\"araquanid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/752/\"},{\"name\":\"pyukumuku\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/771/\"}]}","asText":null}}},"tags":[]},{"uuid":"3d160b81-279c-4e50-92b7-daf3453978be","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,181,16,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,161,16,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":3,\"name\":\"bug\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"むし\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Insectoïde\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Käfer\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Bicho\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Coleottero\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Bug\"}],\"pokemon_species\":[{\"name\":\"caterpie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/10/\"},{\"name\":\"metapod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/11/\"},{\"name\":\"butterfree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/12/\"},{\"name\":\"weedle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/13/\"},{\"name\":\"kakuna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/14/\"},{\"name\":\"beedrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/15/\"},{\"name\":\"paras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/46/\"},{\"name\":\"parasect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/47/\"},{\"name\":\"venonat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/48/\"},{\"name\":\"venomoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/49/\"},{\"name\":\"scyther\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/123/\"},{\"name\":\"pinsir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/127/\"},{\"name\":\"ledyba\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/165/\"},{\"name\":\"ledian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/166/\"},{\"name\":\"spinarak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/167/\"},{\"name\":\"ariados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/168/\"},{\"name\":\"yanma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/193/\"},{\"name\":\"pineco\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/204/\"},{\"name\":\"forretress\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/205/\"},{\"name\":\"gligar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/207/\"},{\"name\":\"scizor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/212/\"},{\"name\":\"shuckle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/213/\"},{\"name\":\"heracross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/214/\"},{\"name\":\"wurmple\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/265/\"},{\"name\":\"silcoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/266/\"},{\"name\":\"beautifly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/267/\"},{\"name\":\"cascoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/268/\"},{\"name\":\"dustox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/269/\"},{\"name\":\"surskit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/283/\"},{\"name\":\"masquerain\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/284/\"},{\"name\":\"nincada\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/290/\"},{\"name\":\"ninjask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/291/\"},{\"name\":\"volbeat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/313/\"},{\"name\":\"illumise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/314/\"},{\"name\":\"trapinch\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/328/\"},{\"name\":\"vibrava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/329/\"},{\"name\":\"flygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/330/\"},{\"name\":\"kricketot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/401/\"},{\"name\":\"kricketune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/402/\"},{\"name\":\"burmy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/412/\"},{\"name\":\"wormadam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/413/\"},{\"name\":\"mothim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/414/\"},{\"name\":\"combee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/415/\"},{\"name\":\"vespiquen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/416/\"},{\"name\":\"skorupi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/451/\"},{\"name\":\"drapion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/452/\"},{\"name\":\"yanmega\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/469/\"},{\"name\":\"gliscor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/472/\"},{\"name\":\"sewaddle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/540/\"},{\"name\":\"swadloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/541/\"},{\"name\":\"leavanny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/542/\"},{\"name\":\"venipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/543/\"},{\"name\":\"whirlipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/544/\"},{\"name\":\"scolipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/545/\"},{\"name\":\"dwebble\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/557/\"},{\"name\":\"crustle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/558/\"},{\"name\":\"karrablast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/588/\"},{\"name\":\"escavalier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/589/\"},{\"name\":\"joltik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/595/\"},{\"name\":\"galvantula\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/596/\"},{\"name\":\"shelmet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/616/\"},{\"name\":\"accelgor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/617/\"},{\"name\":\"durant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/632/\"},{\"name\":\"larvesta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/636/\"},{\"name\":\"volcarona\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/637/\"},{\"name\":\"scatterbug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/664/\"},{\"name\":\"spewpa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/665/\"},{\"name\":\"vivillon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/666/\"},{\"name\":\"grubbin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/736/\"},{\"name\":\"charjabug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/737/\"},{\"name\":\"vikavolt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/738/\"},{\"name\":\"cutiefly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/742/\"},{\"name\":\"ribombee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/743/\"},{\"name\":\"dewpider\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/751/\"},{\"name\":\"araquanid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/752/\"},{\"name\":\"wimpod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/767/\"},{\"name\":\"golisopod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/768/\"}]}","asText":null}}},"tags":[]},{"uuid":"e1c57760-0556-466e-a4a1-6d24a7670853","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,254,11,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,234,11,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":10,\"name\":\"mineral\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"こうぶつ\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Minéral\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Mineral\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Mineral\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Minerale\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Mineral\"}],\"pokemon_species\":[{\"name\":\"geodude\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/74/\"},{\"name\":\"graveler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/75/\"},{\"name\":\"golem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/76/\"},{\"name\":\"magnemite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/81/\"},{\"name\":\"magneton\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/82/\"},{\"name\":\"onix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/95/\"},{\"name\":\"voltorb\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/100/\"},{\"name\":\"electrode\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/101/\"},{\"name\":\"porygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/137/\"},{\"name\":\"sudowoodo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/185/\"},{\"name\":\"steelix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/208/\"},{\"name\":\"porygon2\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/233/\"},{\"name\":\"shedinja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/292/\"},{\"name\":\"nosepass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/299/\"},{\"name\":\"lunatone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/337/\"},{\"name\":\"solrock\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/338/\"},{\"name\":\"baltoy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/343/\"},{\"name\":\"claydol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/344/\"},{\"name\":\"snorunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/361/\"},{\"name\":\"glalie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/362/\"},{\"name\":\"beldum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/374/\"},{\"name\":\"metang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/375/\"},{\"name\":\"metagross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/376/\"},{\"name\":\"bronzor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/436/\"},{\"name\":\"bronzong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/437/\"},{\"name\":\"magnezone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/462/\"},{\"name\":\"porygon-z\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/474/\"},{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/476/\"},{\"name\":\"froslass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/478/\"},{\"name\":\"roggenrola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/524/\"},{\"name\":\"boldore\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/525/\"},{\"name\":\"gigalith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/526/\"},{\"name\":\"dwebble\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/557/\"},{\"name\":\"crustle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/558/\"},{\"name\":\"yamask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/562/\"},{\"name\":\"cofagrigus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/563/\"},{\"name\":\"trubbish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/568/\"},{\"name\":\"garbodor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/569/\"},{\"name\":\"vanillite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/582/\"},{\"name\":\"vanillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/583/\"},{\"name\":\"vanilluxe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/584/\"},{\"name\":\"ferroseed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/597/\"},{\"name\":\"ferrothorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/598/\"},{\"name\":\"klink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/599/\"},{\"name\":\"klang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/600/\"},{\"name\":\"klinklang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/601/\"},{\"name\":\"cryogonal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/615/\"},{\"name\":\"golett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/622/\"},{\"name\":\"golurk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/623/\"},{\"name\":\"honedge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/679/\"},{\"name\":\"doublade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/680/\"},{\"name\":\"aegislash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/681/\"},{\"name\":\"carbink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/703/\"},{\"name\":\"klefki\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/707/\"},{\"name\":\"minior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/774/\"},{\"name\":\"dhelmise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/781/\"}]}","asText":null}}},"tags":[]},{"uuid":"6abb37d5-ef7f-4383-9330-715a55338802","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,220,10,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,200,10,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":6,\"name\":\"fairy\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ようせい\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Féerique\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Fee\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Hada\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Magico\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Fairy\"}],\"pokemon_species\":[{\"name\":\"pikachu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/25/\"},{\"name\":\"raichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/26/\"},{\"name\":\"clefairy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/35/\"},{\"name\":\"clefable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/36/\"},{\"name\":\"jigglypuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/39/\"},{\"name\":\"wigglytuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/40/\"},{\"name\":\"chansey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/113/\"},{\"name\":\"togetic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/176/\"},{\"name\":\"marill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/183/\"},{\"name\":\"azumarill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/184/\"},{\"name\":\"hoppip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/187/\"},{\"name\":\"skiploom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/188/\"},{\"name\":\"jumpluff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/189/\"},{\"name\":\"snubbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/209/\"},{\"name\":\"granbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/210/\"},{\"name\":\"blissey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/242/\"},{\"name\":\"shroomish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/285/\"},{\"name\":\"breloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/286/\"},{\"name\":\"skitty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/300/\"},{\"name\":\"delcatty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/301/\"},{\"name\":\"mawile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/303/\"},{\"name\":\"plusle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/311/\"},{\"name\":\"minun\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/312/\"},{\"name\":\"roselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/315/\"},{\"name\":\"castform\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/351/\"},{\"name\":\"snorunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/361/\"},{\"name\":\"glalie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/362/\"},{\"name\":\"roserade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/407/\"},{\"name\":\"pachirisu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/417/\"},{\"name\":\"cherubi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/420/\"},{\"name\":\"cherrim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/421/\"},{\"name\":\"togekiss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/468/\"},{\"name\":\"froslass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/478/\"},{\"name\":\"phione\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/489/\"},{\"name\":\"manaphy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/490/\"},{\"name\":\"audino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/531/\"},{\"name\":\"cottonee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/546/\"},{\"name\":\"whimsicott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/547/\"},{\"name\":\"flabebe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/669/\"},{\"name\":\"floette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/670/\"},{\"name\":\"florges\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/671/\"},{\"name\":\"spritzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/682/\"},{\"name\":\"aromatisse\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/683/\"},{\"name\":\"swirlix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/684/\"},{\"name\":\"slurpuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/685/\"},{\"name\":\"dedenne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/702/\"},{\"name\":\"carbink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/703/\"},{\"name\":\"cutiefly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/742/\"},{\"name\":\"ribombee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/743/\"},{\"name\":\"togedemaru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/777/\"}]}","asText":null}}},"tags":[]},{"uuid":"7d3d1af1-7f8a-4f6d-878b-e7925e14802b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,153,12,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,133,12,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":4,\"name\":\"flying\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ひこう\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Aérien\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Flug\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Volador\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Volante\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Flying\"}],\"pokemon_species\":[{\"name\":\"pidgey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/16/\"},{\"name\":\"pidgeotto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/17/\"},{\"name\":\"pidgeot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/18/\"},{\"name\":\"spearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/21/\"},{\"name\":\"fearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/22/\"},{\"name\":\"zubat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/41/\"},{\"name\":\"golbat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/42/\"},{\"name\":\"farfetchd\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/83/\"},{\"name\":\"doduo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/84/\"},{\"name\":\"dodrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/85/\"},{\"name\":\"aerodactyl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/142/\"},{\"name\":\"hoothoot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/163/\"},{\"name\":\"noctowl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/164/\"},{\"name\":\"crobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/169/\"},{\"name\":\"togetic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/176/\"},{\"name\":\"natu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/177/\"},{\"name\":\"xatu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/178/\"},{\"name\":\"murkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/198/\"},{\"name\":\"skarmory\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/227/\"},{\"name\":\"taillow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/276/\"},{\"name\":\"swellow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/277/\"},{\"name\":\"wingull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/278/\"},{\"name\":\"pelipper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/279/\"},{\"name\":\"swablu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/333/\"},{\"name\":\"altaria\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/334/\"},{\"name\":\"starly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/396/\"},{\"name\":\"staravia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/397/\"},{\"name\":\"staraptor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/398/\"},{\"name\":\"honchkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/430/\"},{\"name\":\"chatot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/441/\"},{\"name\":\"togekiss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/468/\"},{\"name\":\"pidove\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/519/\"},{\"name\":\"tranquill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/520/\"},{\"name\":\"unfezant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/521/\"},{\"name\":\"woobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/527/\"},{\"name\":\"swoobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/528/\"},{\"name\":\"sigilyph\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/561/\"},{\"name\":\"archen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/566/\"},{\"name\":\"archeops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/567/\"},{\"name\":\"ducklett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/580/\"},{\"name\":\"swanna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/581/\"},{\"name\":\"rufflet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/627/\"},{\"name\":\"braviary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/628/\"},{\"name\":\"vullaby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/629/\"},{\"name\":\"mandibuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/630/\"},{\"name\":\"fletchling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/661/\"},{\"name\":\"fletchinder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/662/\"},{\"name\":\"talonflame\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/663/\"},{\"name\":\"noibat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/714/\"},{\"name\":\"noivern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/715/\"},{\"name\":\"rowlet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/722/\"},{\"name\":\"dartrix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/723/\"},{\"name\":\"decidueye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/724/\"},{\"name\":\"pikipek\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/731/\"},{\"name\":\"trumbeak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/732/\"},{\"name\":\"toucannon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/733/\"},{\"name\":\"oricorio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/741/\"}]}","asText":null}}},"tags":[]},{"uuid":"e7907b27-2318-43a3-baec-262592dcfa74","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,148,46,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,128,46,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":5,\"name\":\"ground\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"りくじょう\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Terrestre\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Feld\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Campo\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Campo\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Field\"}],\"pokemon_species\":[{\"name\":\"rattata\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/19/\"},{\"name\":\"raticate\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/20/\"},{\"name\":\"ekans\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/23/\"},{\"name\":\"arbok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/24/\"},{\"name\":\"pikachu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/25/\"},{\"name\":\"raichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/26/\"},{\"name\":\"sandshrew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/27/\"},{\"name\":\"sandslash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/28/\"},{\"name\":\"nidoran-f\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/29/\"},{\"name\":\"nidoran-m\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/32/\"},{\"name\":\"nidorino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/33/\"},{\"name\":\"nidoking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/34/\"},{\"name\":\"vulpix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/37/\"},{\"name\":\"ninetales\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/38/\"},{\"name\":\"diglett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/50/\"},{\"name\":\"dugtrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/51/\"},{\"name\":\"meowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/52/\"},{\"name\":\"persian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/53/\"},{\"name\":\"psyduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/54/\"},{\"name\":\"golduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/55/\"},{\"name\":\"mankey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/56/\"},{\"name\":\"primeape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/57/\"},{\"name\":\"growlithe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/58/\"},{\"name\":\"arcanine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/59/\"},{\"name\":\"ponyta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/77/\"},{\"name\":\"rapidash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/78/\"},{\"name\":\"farfetchd\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/83/\"},{\"name\":\"seel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/86/\"},{\"name\":\"dewgong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/87/\"},{\"name\":\"rhyhorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/111/\"},{\"name\":\"rhydon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/112/\"},{\"name\":\"tauros\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/128/\"},{\"name\":\"eevee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/133/\"},{\"name\":\"vaporeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/134/\"},{\"name\":\"jolteon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/135/\"},{\"name\":\"flareon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/136/\"},{\"name\":\"cyndaquil\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/155/\"},{\"name\":\"quilava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/156/\"},{\"name\":\"typhlosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/157/\"},{\"name\":\"sentret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/161/\"},{\"name\":\"furret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/162/\"},{\"name\":\"mareep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/179/\"},{\"name\":\"flaaffy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/180/\"},{\"name\":\"ampharos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/181/\"},{\"name\":\"aipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/190/\"},{\"name\":\"wooper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/194/\"},{\"name\":\"quagsire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/195/\"},{\"name\":\"espeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/196/\"},{\"name\":\"umbreon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/197/\"},{\"name\":\"girafarig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/203/\"},{\"name\":\"dunsparce\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/206/\"},{\"name\":\"snubbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/209/\"},{\"name\":\"granbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/210/\"},{\"name\":\"sneasel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/215/\"},{\"name\":\"teddiursa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/216/\"},{\"name\":\"ursaring\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/217/\"},{\"name\":\"swinub\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/220/\"},{\"name\":\"piloswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/221/\"},{\"name\":\"delibird\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/225/\"},{\"name\":\"houndour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/228/\"},{\"name\":\"houndoom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/229/\"},{\"name\":\"phanpy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/231/\"},{\"name\":\"donphan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/232/\"},{\"name\":\"stantler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/234/\"},{\"name\":\"smeargle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/235/\"},{\"name\":\"miltank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/241/\"},{\"name\":\"torchic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/255/\"},{\"name\":\"combusken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/256/\"},{\"name\":\"blaziken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/257/\"},{\"name\":\"poochyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/261/\"},{\"name\":\"mightyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/262/\"},{\"name\":\"zigzagoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/263/\"},{\"name\":\"linoone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/264/\"},{\"name\":\"seedot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/273/\"},{\"name\":\"nuzleaf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/274/\"},{\"name\":\"shiftry\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/275/\"},{\"name\":\"slakoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/287/\"},{\"name\":\"vigoroth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/288/\"},{\"name\":\"slaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/289/\"},{\"name\":\"whismur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/293/\"},{\"name\":\"loudred\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/294/\"},{\"name\":\"exploud\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/295/\"},{\"name\":\"skitty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/300/\"},{\"name\":\"delcatty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/301/\"},{\"name\":\"mawile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/303/\"},{\"name\":\"electrike\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/309/\"},{\"name\":\"manectric\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/310/\"},{\"name\":\"wailmer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/320/\"},{\"name\":\"wailord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/321/\"},{\"name\":\"numel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/322/\"},{\"name\":\"camerupt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/323/\"},{\"name\":\"torkoal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/324/\"},{\"name\":\"spoink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/325/\"},{\"name\":\"grumpig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/326/\"},{\"name\":\"spinda\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/327/\"},{\"name\":\"zangoose\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/335/\"},{\"name\":\"seviper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/336/\"},{\"name\":\"kecleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/352/\"},{\"name\":\"absol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/359/\"},{\"name\":\"spheal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/363/\"},{\"name\":\"sealeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/364/\"},{\"name\":\"walrein\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/365/\"},{\"name\":\"chimchar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/390/\"},{\"name\":\"monferno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/391/\"},{\"name\":\"infernape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/392/\"},{\"name\":\"piplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/393/\"},{\"name\":\"prinplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/394/\"},{\"name\":\"empoleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/395/\"},{\"name\":\"bidoof\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/399/\"},{\"name\":\"bibarel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/400/\"},{\"name\":\"shinx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/403/\"},{\"name\":\"luxio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/404/\"},{\"name\":\"luxray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/405/\"},{\"name\":\"pachirisu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/417/\"},{\"name\":\"buizel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/418/\"},{\"name\":\"floatzel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/419/\"},{\"name\":\"ambipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/424/\"},{\"name\":\"buneary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/427/\"},{\"name\":\"lopunny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/428/\"},{\"name\":\"glameow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/431/\"},{\"name\":\"purugly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/432/\"},{\"name\":\"stunky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/434/\"},{\"name\":\"skuntank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/435/\"},{\"name\":\"lucario\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/448/\"},{\"name\":\"hippopotas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/449/\"},{\"name\":\"hippowdon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/450/\"},{\"name\":\"weavile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/461/\"},{\"name\":\"rhyperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/464/\"},{\"name\":\"leafeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/470/\"},{\"name\":\"glaceon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/471/\"},{\"name\":\"mamoswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/473/\"},{\"name\":\"snivy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/495/\"},{\"name\":\"servine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/496/\"},{\"name\":\"serperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/497/\"},{\"name\":\"tepig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/498/\"},{\"name\":\"pignite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/499/\"},{\"name\":\"emboar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/500/\"},{\"name\":\"oshawott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/501/\"},{\"name\":\"dewott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/502/\"},{\"name\":\"samurott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/503/\"},{\"name\":\"patrat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/504/\"},{\"name\":\"watchog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/505/\"},{\"name\":\"lillipup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/506/\"},{\"name\":\"herdier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/507/\"},{\"name\":\"stoutland\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/508/\"},{\"name\":\"purrloin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/509/\"},{\"name\":\"liepard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/510/\"},{\"name\":\"pansage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/511/\"},{\"name\":\"simisage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/512/\"},{\"name\":\"pansear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/513/\"},{\"name\":\"simisear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/514/\"},{\"name\":\"panpour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/515/\"},{\"name\":\"simipour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/516/\"},{\"name\":\"munna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/517/\"},{\"name\":\"musharna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/518/\"},{\"name\":\"blitzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/522/\"},{\"name\":\"zebstrika\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/523/\"},{\"name\":\"woobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/527/\"},{\"name\":\"swoobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/528/\"},{\"name\":\"drilbur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/529/\"},{\"name\":\"excadrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/530/\"},{\"name\":\"sandile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/551/\"},{\"name\":\"krokorok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/552/\"},{\"name\":\"krookodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/553/\"},{\"name\":\"darumaka\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/554/\"},{\"name\":\"darmanitan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/555/\"},{\"name\":\"scraggy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/559/\"},{\"name\":\"scrafty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/560/\"},{\"name\":\"zorua\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/570/\"},{\"name\":\"zoroark\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/571/\"},{\"name\":\"minccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/572/\"},{\"name\":\"cinccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/573/\"},{\"name\":\"deerling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/585/\"},{\"name\":\"sawsbuck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/586/\"},{\"name\":\"emolga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/587/\"},{\"name\":\"cubchoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/613/\"},{\"name\":\"beartic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/614/\"},{\"name\":\"mienfoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/619/\"},{\"name\":\"mienshao\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/620/\"},{\"name\":\"bouffalant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/626/\"},{\"name\":\"heatmor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/631/\"},{\"name\":\"chespin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/650/\"},{\"name\":\"quilladin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/651/\"},{\"name\":\"chesnaught\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/652/\"},{\"name\":\"fennekin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/653/\"},{\"name\":\"braixen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/654/\"},{\"name\":\"delphox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/655/\"},{\"name\":\"bunnelby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/659/\"},{\"name\":\"diggersby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/660/\"},{\"name\":\"litleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/667/\"},{\"name\":\"pyroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/668/\"},{\"name\":\"skiddo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/672/\"},{\"name\":\"gogoat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/673/\"},{\"name\":\"pancham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/674/\"},{\"name\":\"pangoro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/675/\"},{\"name\":\"furfrou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/676/\"},{\"name\":\"espurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/677/\"},{\"name\":\"meowstic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/678/\"},{\"name\":\"sylveon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/700/\"},{\"name\":\"dedenne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/702/\"},{\"name\":\"litten\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/725/\"},{\"name\":\"torracat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/726/\"},{\"name\":\"incineroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/727/\"},{\"name\":\"popplio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/728/\"},{\"name\":\"brionne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/729/\"},{\"name\":\"primarina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/730/\"},{\"name\":\"yungoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/734/\"},{\"name\":\"gumshoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/735/\"},{\"name\":\"rockruff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/744/\"},{\"name\":\"lycanroc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/745/\"},{\"name\":\"mudbray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/749/\"},{\"name\":\"mudsdale\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/750/\"},{\"name\":\"stufful\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/759/\"},{\"name\":\"bewear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/760/\"},{\"name\":\"oranguru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/765/\"},{\"name\":\"passimian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/766/\"},{\"name\":\"komala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/775/\"},{\"name\":\"togedemaru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/777/\"}]}","asText":null}}},"tags":[]},{"uuid":"abcf5903-b262-465e-a93e-caebe5d634d7","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,146,11,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,254,10,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":11,\"name\":\"indeterminate\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ふていけい\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Amorphe\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Amorph\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Amorfo\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Amorfo\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Amorphous\"}],\"pokemon_species\":[{\"name\":\"grimer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/88/\"},{\"name\":\"muk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/89/\"},{\"name\":\"gastly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/92/\"},{\"name\":\"haunter\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/93/\"},{\"name\":\"gengar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/94/\"},{\"name\":\"koffing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/109/\"},{\"name\":\"weezing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/110/\"},{\"name\":\"misdreavus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/200/\"},{\"name\":\"wobbuffet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/202/\"},{\"name\":\"slugma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/218/\"},{\"name\":\"magcargo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/219/\"},{\"name\":\"ralts\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/280/\"},{\"name\":\"kirlia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/281/\"},{\"name\":\"gardevoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/282/\"},{\"name\":\"gulpin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/316/\"},{\"name\":\"swalot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/317/\"},{\"name\":\"castform\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/351/\"},{\"name\":\"shuppet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/353/\"},{\"name\":\"banette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/354/\"},{\"name\":\"duskull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/355/\"},{\"name\":\"dusclops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/356/\"},{\"name\":\"chimecho\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/358/\"},{\"name\":\"shellos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/422/\"},{\"name\":\"gastrodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/423/\"},{\"name\":\"drifloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/425/\"},{\"name\":\"drifblim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/426/\"},{\"name\":\"mismagius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/429/\"},{\"name\":\"spiritomb\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/442/\"},{\"name\":\"gallade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/475/\"},{\"name\":\"dusknoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/477/\"},{\"name\":\"rotom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/479/\"},{\"name\":\"yamask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/562/\"},{\"name\":\"cofagrigus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/563/\"},{\"name\":\"solosis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/577/\"},{\"name\":\"duosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/578/\"},{\"name\":\"reuniclus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/579/\"},{\"name\":\"frillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/592/\"},{\"name\":\"jellicent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/593/\"},{\"name\":\"tynamo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/602/\"},{\"name\":\"eelektrik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/603/\"},{\"name\":\"eelektross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/604/\"},{\"name\":\"litwick\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/607/\"},{\"name\":\"lampent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/608/\"},{\"name\":\"chandelure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/609/\"},{\"name\":\"stunfisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/618/\"},{\"name\":\"phantump\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/708/\"},{\"name\":\"trevenant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/709/\"},{\"name\":\"pumpkaboo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/710/\"},{\"name\":\"gourgeist\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/711/\"},{\"name\":\"sandygast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/769/\"},{\"name\":\"palossand\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/770/\"},{\"name\":\"mimikyu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/778/\"}]}","asText":null}}},"tags":[]},{"uuid":"2b80d5eb-f435-474e-9949-2b50864a732e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,167,14,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,147,14,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":7,\"name\":\"plant\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"しょくぶつ\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Végétal\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Pflanze\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Planta\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Erba\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Grass\"}],\"pokemon_species\":[{\"name\":\"bulbasaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/1/\"},{\"name\":\"ivysaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/2/\"},{\"name\":\"venusaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/3/\"},{\"name\":\"oddish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/43/\"},{\"name\":\"gloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/44/\"},{\"name\":\"vileplume\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/45/\"},{\"name\":\"paras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/46/\"},{\"name\":\"parasect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/47/\"},{\"name\":\"bellsprout\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/69/\"},{\"name\":\"weepinbell\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/70/\"},{\"name\":\"victreebel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/71/\"},{\"name\":\"exeggcute\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/102/\"},{\"name\":\"exeggutor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/103/\"},{\"name\":\"tangela\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/114/\"},{\"name\":\"chikorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/152/\"},{\"name\":\"bayleef\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/153/\"},{\"name\":\"meganium\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/154/\"},{\"name\":\"bellossom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/182/\"},{\"name\":\"hoppip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/187/\"},{\"name\":\"skiploom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/188/\"},{\"name\":\"jumpluff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/189/\"},{\"name\":\"sunkern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/191/\"},{\"name\":\"sunflora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/192/\"},{\"name\":\"lotad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/270/\"},{\"name\":\"lombre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/271/\"},{\"name\":\"ludicolo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/272/\"},{\"name\":\"seedot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/273/\"},{\"name\":\"nuzleaf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/274/\"},{\"name\":\"shiftry\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/275/\"},{\"name\":\"shroomish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/285/\"},{\"name\":\"breloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/286/\"},{\"name\":\"roselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/315/\"},{\"name\":\"cacnea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/331/\"},{\"name\":\"cacturne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/332/\"},{\"name\":\"tropius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/357/\"},{\"name\":\"turtwig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/387/\"},{\"name\":\"grotle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/388/\"},{\"name\":\"torterra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/389/\"},{\"name\":\"roserade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/407/\"},{\"name\":\"cherubi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/420/\"},{\"name\":\"cherrim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/421/\"},{\"name\":\"carnivine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/455/\"},{\"name\":\"snover\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/459/\"},{\"name\":\"abomasnow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/460/\"},{\"name\":\"tangrowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/465/\"},{\"name\":\"snivy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/495/\"},{\"name\":\"servine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/496/\"},{\"name\":\"serperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/497/\"},{\"name\":\"cottonee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/546/\"},{\"name\":\"whimsicott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/547/\"},{\"name\":\"petilil\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/548/\"},{\"name\":\"lilligant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/549/\"},{\"name\":\"maractus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/556/\"},{\"name\":\"foongus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/590/\"},{\"name\":\"amoonguss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/591/\"},{\"name\":\"ferroseed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/597/\"},{\"name\":\"ferrothorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/598/\"},{\"name\":\"phantump\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/708/\"},{\"name\":\"trevenant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/709/\"},{\"name\":\"fomantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/753/\"},{\"name\":\"lurantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/754/\"},{\"name\":\"morelull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/755/\"},{\"name\":\"shiinotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/756/\"},{\"name\":\"bounsweet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/761/\"},{\"name\":\"steenee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/762/\"},{\"name\":\"tsareena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/763/\"},{\"name\":\"comfey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/764/\"}]}","asText":null}}},"tags":[]},{"uuid":"da466cb0-66dd-443f-a5a1-39233bdd1935","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,145,7,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,253,6,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":9,\"name\":\"water3\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"すいちゅう3\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Aquatique 3\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Wasser 3\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Agua 3\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Acqua 3\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Water 3\"}],\"pokemon_species\":[{\"name\":\"tentacool\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/72/\"},{\"name\":\"tentacruel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/73/\"},{\"name\":\"shellder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/90/\"},{\"name\":\"cloyster\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/91/\"},{\"name\":\"krabby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/98/\"},{\"name\":\"kingler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/99/\"},{\"name\":\"staryu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/120/\"},{\"name\":\"starmie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/121/\"},{\"name\":\"omanyte\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/138/\"},{\"name\":\"omastar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/139/\"},{\"name\":\"kabuto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/140/\"},{\"name\":\"kabutops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/141/\"},{\"name\":\"corsola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/222/\"},{\"name\":\"corphish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/341/\"},{\"name\":\"crawdaunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/342/\"},{\"name\":\"lileep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/345/\"},{\"name\":\"cradily\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/346/\"},{\"name\":\"anorith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/347/\"},{\"name\":\"armaldo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/348/\"},{\"name\":\"skorupi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/451/\"},{\"name\":\"drapion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/452/\"},{\"name\":\"tirtouga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/564/\"},{\"name\":\"carracosta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/565/\"},{\"name\":\"archen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/566/\"},{\"name\":\"archeops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/567/\"},{\"name\":\"binacle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/688/\"},{\"name\":\"barbaracle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/689/\"},{\"name\":\"clauncher\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/692/\"},{\"name\":\"clawitzer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/693/\"},{\"name\":\"crabrawler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/739/\"},{\"name\":\"crabominable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/740/\"},{\"name\":\"wimpod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/767/\"},{\"name\":\"golisopod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/768/\"}]}","asText":null}}},"tags":[]},{"uuid":"32c113f5-b0db-4dbf-b77b-6b8f9c494c6e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,146,11,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,254,10,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":8,\"name\":\"humanshape\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ひとがた\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Humanoïde\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Humanotyp\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Humanoide\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Umanoide\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Human-Like\"}],\"pokemon_species\":[{\"name\":\"abra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/63/\"},{\"name\":\"kadabra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/64/\"},{\"name\":\"alakazam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/65/\"},{\"name\":\"machop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/66/\"},{\"name\":\"machoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/67/\"},{\"name\":\"machamp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/68/\"},{\"name\":\"drowzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/96/\"},{\"name\":\"hypno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/97/\"},{\"name\":\"hitmonlee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/106/\"},{\"name\":\"hitmonchan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/107/\"},{\"name\":\"mr-mime\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/122/\"},{\"name\":\"jynx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/124/\"},{\"name\":\"electabuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/125/\"},{\"name\":\"magmar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/126/\"},{\"name\":\"hitmontop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/237/\"},{\"name\":\"makuhita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/296/\"},{\"name\":\"hariyama\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/297/\"},{\"name\":\"sableye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/302/\"},{\"name\":\"meditite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/307/\"},{\"name\":\"medicham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/308/\"},{\"name\":\"volbeat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/313/\"},{\"name\":\"illumise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/314/\"},{\"name\":\"spinda\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/327/\"},{\"name\":\"cacnea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/331/\"},{\"name\":\"cacturne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/332/\"},{\"name\":\"chimchar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/390/\"},{\"name\":\"monferno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/391/\"},{\"name\":\"infernape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/392/\"},{\"name\":\"buneary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/427/\"},{\"name\":\"lopunny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/428/\"},{\"name\":\"lucario\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/448/\"},{\"name\":\"croagunk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/453/\"},{\"name\":\"toxicroak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/454/\"},{\"name\":\"electivire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/466/\"},{\"name\":\"magmortar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/467/\"},{\"name\":\"timburr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/532/\"},{\"name\":\"gurdurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/533/\"},{\"name\":\"conkeldurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/534/\"},{\"name\":\"throh\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/538/\"},{\"name\":\"sawk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/539/\"},{\"name\":\"gothita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/574/\"},{\"name\":\"gothorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/575/\"},{\"name\":\"gothitelle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/576/\"},{\"name\":\"elgyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/605/\"},{\"name\":\"beheeyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/606/\"},{\"name\":\"mienfoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/619/\"},{\"name\":\"mienshao\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/620/\"},{\"name\":\"pawniard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/624/\"},{\"name\":\"bisharp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/625/\"},{\"name\":\"pancham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/674/\"},{\"name\":\"pangoro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/675/\"},{\"name\":\"hawlucha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/701/\"}]}","asText":null}}},"tags":[]},{"uuid":"2874ab82-d6e9-40c2-adfb-4dd0ca034e8a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,146,11,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,254,10,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":14,\"name\":\"dragon\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ドラゴン\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Draconique\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Drache\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Dragón\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Drago\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Dragon\"}],\"pokemon_species\":[{\"name\":\"charmander\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/4/\"},{\"name\":\"charmeleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/5/\"},{\"name\":\"charizard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/6/\"},{\"name\":\"ekans\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/23/\"},{\"name\":\"arbok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/24/\"},{\"name\":\"horsea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/116/\"},{\"name\":\"seadra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/117/\"},{\"name\":\"magikarp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/129/\"},{\"name\":\"gyarados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/130/\"},{\"name\":\"dratini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/147/\"},{\"name\":\"dragonair\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/148/\"},{\"name\":\"dragonite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/149/\"},{\"name\":\"kingdra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/230/\"},{\"name\":\"treecko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/252/\"},{\"name\":\"grovyle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/253/\"},{\"name\":\"sceptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/254/\"},{\"name\":\"swablu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/333/\"},{\"name\":\"altaria\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/334/\"},{\"name\":\"seviper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/336/\"},{\"name\":\"feebas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/349/\"},{\"name\":\"milotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/350/\"},{\"name\":\"bagon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/371/\"},{\"name\":\"shelgon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/372/\"},{\"name\":\"salamence\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/373/\"},{\"name\":\"gible\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/443/\"},{\"name\":\"gabite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/444/\"},{\"name\":\"garchomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/445/\"},{\"name\":\"scraggy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/559/\"},{\"name\":\"scrafty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/560/\"},{\"name\":\"axew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/610/\"},{\"name\":\"fraxure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/611/\"},{\"name\":\"haxorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/612/\"},{\"name\":\"druddigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/621/\"},{\"name\":\"deino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/633/\"},{\"name\":\"zweilous\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/634/\"},{\"name\":\"hydreigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/635/\"},{\"name\":\"skrelp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/690/\"},{\"name\":\"dragalge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/691/\"},{\"name\":\"helioptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/694/\"},{\"name\":\"heliolisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/695/\"},{\"name\":\"tyrunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/696/\"},{\"name\":\"tyrantrum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/697/\"},{\"name\":\"goomy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/704/\"},{\"name\":\"sliggoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/705/\"},{\"name\":\"goodra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/706/\"},{\"name\":\"salandit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/757/\"},{\"name\":\"salazzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/758/\"},{\"name\":\"turtonator\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/776/\"},{\"name\":\"drampa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/780/\"},{\"name\":\"jangmo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/782/\"},{\"name\":\"hakamo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/783/\"},{\"name\":\"kommo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/784/\"}]}","asText":null}}},"tags":[]},{"uuid":"c39bc526-5303-4a15-bee1-c16704bc771b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,185,5,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,165,5,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":12,\"name\":\"water2\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"すいちゅう2\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Aquatique 2\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Wasser 2\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Agua 2\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Acqua 2\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Water 2\"}],\"pokemon_species\":[{\"name\":\"goldeen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/118/\"},{\"name\":\"seaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/119/\"},{\"name\":\"magikarp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/129/\"},{\"name\":\"gyarados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/130/\"},{\"name\":\"chinchou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/170/\"},{\"name\":\"lanturn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/171/\"},{\"name\":\"qwilfish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/211/\"},{\"name\":\"remoraid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/223/\"},{\"name\":\"octillery\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/224/\"},{\"name\":\"carvanha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/318/\"},{\"name\":\"sharpedo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/319/\"},{\"name\":\"wailmer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/320/\"},{\"name\":\"wailord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/321/\"},{\"name\":\"barboach\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/339/\"},{\"name\":\"whiscash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/340/\"},{\"name\":\"relicanth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/369/\"},{\"name\":\"luvdisc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/370/\"},{\"name\":\"finneon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/456/\"},{\"name\":\"lumineon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/457/\"},{\"name\":\"basculin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/550/\"},{\"name\":\"alomomola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/594/\"},{\"name\":\"inkay\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/686/\"},{\"name\":\"malamar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/687/\"},{\"name\":\"wishiwashi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/746/\"},{\"name\":\"bruxish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/779/\"}]}","asText":null}}},"tags":[]},{"uuid":"ccf51d80-6fe6-4fd2-9f27-8a1ca3419cd5","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,236,20,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,216,20,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":15,\"name\":\"no-eggs\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"タマゴみはっけん\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Inconnu\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Unbekannt\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Desconocido\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Non ancora scoperto\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Undiscovered\"}],\"pokemon_species\":[{\"name\":\"nidorina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/30/\"},{\"name\":\"nidoqueen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/31/\"},{\"name\":\"articuno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/144/\"},{\"name\":\"zapdos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/145/\"},{\"name\":\"moltres\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/146/\"},{\"name\":\"mewtwo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/150/\"},{\"name\":\"mew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/151/\"},{\"name\":\"pichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/172/\"},{\"name\":\"cleffa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/173/\"},{\"name\":\"igglybuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/174/\"},{\"name\":\"togepi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/175/\"},{\"name\":\"unown\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/201/\"},{\"name\":\"tyrogue\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/236/\"},{\"name\":\"smoochum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/238/\"},{\"name\":\"elekid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/239/\"},{\"name\":\"magby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/240/\"},{\"name\":\"raikou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/243/\"},{\"name\":\"entei\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/244/\"},{\"name\":\"suicune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/245/\"},{\"name\":\"lugia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/249/\"},{\"name\":\"ho-oh\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/250/\"},{\"name\":\"celebi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/251/\"},{\"name\":\"azurill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/298/\"},{\"name\":\"wynaut\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/360/\"},{\"name\":\"regirock\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/377/\"},{\"name\":\"regice\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/378/\"},{\"name\":\"registeel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/379/\"},{\"name\":\"latias\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/380/\"},{\"name\":\"latios\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/381/\"},{\"name\":\"kyogre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/382/\"},{\"name\":\"groudon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/383/\"},{\"name\":\"rayquaza\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/384/\"},{\"name\":\"jirachi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/385/\"},{\"name\":\"deoxys\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/386/\"},{\"name\":\"budew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/406/\"},{\"name\":\"chingling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/433/\"},{\"name\":\"bonsly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/438/\"},{\"name\":\"mime-jr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/439/\"},{\"name\":\"happiny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/440/\"},{\"name\":\"munchlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/446/\"},{\"name\":\"riolu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/447/\"},{\"name\":\"mantyke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/458/\"},{\"name\":\"uxie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/480/\"},{\"name\":\"mesprit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/481/\"},{\"name\":\"azelf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/482/\"},{\"name\":\"dialga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/483/\"},{\"name\":\"palkia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/484/\"},{\"name\":\"heatran\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/485/\"},{\"name\":\"regigigas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/486/\"},{\"name\":\"giratina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/487/\"},{\"name\":\"cresselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/488/\"},{\"name\":\"darkrai\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/491/\"},{\"name\":\"shaymin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/492/\"},{\"name\":\"arceus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/493/\"},{\"name\":\"victini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/494/\"},{\"name\":\"cobalion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/638/\"},{\"name\":\"terrakion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/639/\"},{\"name\":\"virizion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/640/\"},{\"name\":\"tornadus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/641/\"},{\"name\":\"thundurus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/642/\"},{\"name\":\"reshiram\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/643/\"},{\"name\":\"zekrom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/644/\"},{\"name\":\"landorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/645/\"},{\"name\":\"kyurem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/646/\"},{\"name\":\"keldeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/647/\"},{\"name\":\"meloetta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/648/\"},{\"name\":\"genesect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/649/\"},{\"name\":\"xerneas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/716/\"},{\"name\":\"yveltal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/717/\"},{\"name\":\"zygarde\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/718/\"},{\"name\":\"diancie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/719/\"},{\"name\":\"hoopa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/720/\"},{\"name\":\"volcanion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/721/\"},{\"name\":\"type-null\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/772/\"},{\"name\":\"silvally\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/773/\"},{\"name\":\"tapu-koko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/785/\"},{\"name\":\"tapu-lele\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/786/\"},{\"name\":\"tapu-bulu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/787/\"},{\"name\":\"tapu-fini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/788/\"},{\"name\":\"cosmog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/789/\"},{\"name\":\"cosmoem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/790/\"},{\"name\":\"solgaleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/791/\"},{\"name\":\"lunala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/792/\"},{\"name\":\"nihilego\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/793/\"},{\"name\":\"buzzwole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/794/\"},{\"name\":\"pheromosa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/795/\"},{\"name\":\"xurkitree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/796/\"},{\"name\":\"celesteela\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/797/\"},{\"name\":\"kartana\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/798/\"},{\"name\":\"guzzlord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/799/\"},{\"name\":\"necrozma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/800/\"},{\"name\":\"magearna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/801/\"},{\"name\":\"marshadow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/802/\"},{\"name\":\"poipole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/803/\"},{\"name\":\"naganadel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/804/\"},{\"name\":\"stakataka\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/805/\"},{\"name\":\"blacephalon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/806/\"},{\"name\":\"zeraora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/807/\"}]}","asText":null}}},"tags":[]},{"uuid":"3d354a3a-0329-4342-9632-f0c335804978","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,217,3,10,7,114,101,115,117,108,116,115,18,205,3,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":17,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"walk\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/1/\"},{\"name\":\"old-rod\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/2/\"},{\"name\":\"good-rod\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/3/\"},{\"name\":\"super-rod\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/4/\"},{\"name\":\"surf\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/5/\"},{\"name\":\"rock-smash\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/6/\"},{\"name\":\"headbutt\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/7/\"},{\"name\":\"dark-grass\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/8/\"},{\"name\":\"grass-spots\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/9/\"},{\"name\":\"cave-spots\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/10/\"},{\"name\":\"bridge-spots\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/11/\"},{\"name\":\"super-rod-spots\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/12/\"},{\"name\":\"surf-spots\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/13/\"},{\"name\":\"yellow-flowers\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/14/\"},{\"name\":\"purple-flowers\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/15/\"},{\"name\":\"red-flowers\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/16/\"},{\"name\":\"rough-terrain\",\"url\":\"https://pokeapi.co/api/v2/encounter-method/17/\"}]}","asText":null}}},"tags":[]},{"uuid":"f380bf52-fa4a-404e-b599-4f615cafea0c","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/egg-group/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,214,2,10,5,110,97,109,101,115,18,204,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,48,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":13,\"name\":\"ditto\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"メタモン\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Métamorph\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Ditto\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Ditto\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Ditto\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Ditto\"}],\"pokemon_species\":[{\"name\":\"ditto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/132/\"}]}","asText":null}}},"tags":[]},{"uuid":"856e7e1b-6146-485a-be96-d27f219096ac","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,186,2,10,7,114,101,115,117,108,116,115,18,174,2,8,1,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":419,\"next\":\"https://pokeapi.co/api/v2/evolution-chain/?offset=20&limit=20\",\"previous\":null,\"results\":[{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/1/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/2/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/3/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/4/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/5/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/6/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/7/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/8/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/9/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/10/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/11/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/12/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/13/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/14/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/15/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/16/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/17/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/18/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/19/\"},{\"url\":\"https://pokeapi.co/api/v2/evolution-chain/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"59388606-f7a7-4261-a8ee-bc049145038e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-trigger/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,121,10,7,114,101,115,117,108,116,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":4,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},{\"name\":\"trade\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/2/\"},{\"name\":\"use-item\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/3/\"},{\"name\":\"shed\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/4/\"}]}","asText":null}}},"tags":[]},{"uuid":"0ea59e22-7304-49dc-b8da-32667fbc5e58","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,93,10,6,118,97,108,117,101,115,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":2,\"name\":\"time\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Période horaire\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Tageszeit\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Time of day\"}],\"values\":[{\"name\":\"time-morning\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/3/\"},{\"name\":\"time-day\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/4/\"},{\"name\":\"time-night\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/5/\"}]}","asText":null}}},"tags":[]},{"uuid":"75373c92-f512-4b4d-8576-580e513acdc1","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,175,1,10,6,118,97,108,117,101,115,18,164,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":4,\"name\":\"slot2\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Jeu GBA dans le Slot 2\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Spiel der 3. Generation in Slot 2\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Gen 3 game in slot 2\"}],\"values\":[{\"name\":\"slot2-none\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/8/\"},{\"name\":\"slot2-ruby\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/9/\"},{\"name\":\"slot2-sapphire\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/10/\"},{\"name\":\"slot2-emerald\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/11/\"},{\"name\":\"slot2-firered\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/12/\"},{\"name\":\"slot2-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/13/\"}]}","asText":null}}},"tags":[]},{"uuid":"3e712dbc-968a-433e-a9a6-ce26d526bf1f","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,6,118,97,108,117,101,115,18,56,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":3,\"name\":\"radar\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Poké Radar\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"PokeRadar\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"PokeRadar\"}],\"values\":[{\"name\":\"radar-on\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/6/\"},{\"name\":\"radar-off\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/7/\"}]}","asText":null}}},"tags":[]},{"uuid":"77df060d-015b-466b-9337-db64b2300bb5","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,6,118,97,108,117,101,115,18,56,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":1,\"name\":\"swarm\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Essaim\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Schwarm\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Swarm\"}],\"values\":[{\"name\":\"swarm-yes\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/1/\"},{\"name\":\"swarm-no\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/2/\"}]}","asText":null}}},"tags":[]},{"uuid":"3e69ed11-82f7-4195-bade-1d41fecfaad3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,120,10,6,118,97,108,117,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":6,\"name\":\"season\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Saison\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Jahreszeit\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Season\"}],\"values\":[{\"name\":\"season-spring\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/17/\"},{\"name\":\"season-summer\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/18/\"},{\"name\":\"season-autumn\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/19/\"},{\"name\":\"season-winter\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"7c400e7d-16e1-4d35-888f-3b08b7e834e3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/gender/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,94,10,7,114,101,115,117,108,116,115,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":3,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"female\",\"url\":\"https://pokeapi.co/api/v2/gender/1/\"},{\"name\":\"male\",\"url\":\"https://pokeapi.co/api/v2/gender/2/\"},{\"name\":\"genderless\",\"url\":\"https://pokeapi.co/api/v2/gender/3/\"}]}","asText":null}}},"tags":[]},{"uuid":"5842a847-5dd3-49ea-9822-ab0acef8ea38","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"swarm\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/1/\"},\"id\":1,\"name\":\"swarm-yes\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Während eines Schwarms\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"During a swarm\"}]}","asText":null}}},"tags":[]},{"uuid":"34b0e0c7-dacf-4108-8ca7-cf9a27e44933","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,93,10,6,118,97,108,117,101,115,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":5,\"name\":\"radio\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Radio\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Radio\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Radio\"}],\"values\":[{\"name\":\"radio-off\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/14/\"},{\"name\":\"radio-hoenn\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/15/\"},{\"name\":\"radio-sinnoh\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition-value/16/\"}]}","asText":null}}},"tags":[]},{"uuid":"2049ba48-add5-406f-812f-9df6a328f3c2","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"swarm\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/1/\"},\"id\":2,\"name\":\"swarm-no\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Außerhalb eines Schwarms\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Not during a swarm\"}]}","asText":null}}},"tags":[]},{"uuid":"78374d9f-2bf3-4147-b1a7-68bfc66ec7a7","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"time\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/2/\"},\"id\":5,\"name\":\"time-night\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"In der Nacht\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"At night\"}]}","asText":null}}},"tags":[]},{"uuid":"a54ad291-5fe8-44a2-bf4f-c01ae0687728","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"radar\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/3/\"},\"id\":6,\"name\":\"radar-on\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Durch Benutzung des Pokéradars\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Using PokéRadar\"}]}","asText":null}}},"tags":[]},{"uuid":"4c6818a2-4d34-4a94-b570-1a32a90c820a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"time\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/2/\"},\"id\":3,\"name\":\"time-morning\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Am Morgen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"In the morning\"}]}","asText":null}}},"tags":[]},{"uuid":"2d86a66b-aadb-463d-b6df-6250b62e19ef","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"radar\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/3/\"},\"id\":7,\"name\":\"radar-off\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Ohne Benutzung des Pokéradars\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Not using PokéRadar\"}]}","asText":null}}},"tags":[]},{"uuid":"df252429-d3f8-46d2-ad87-0f46d3dcbbf7","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"slot2\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/4/\"},\"id\":8,\"name\":\"slot2-none\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Kein Spiel in Slot 2\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"No game in slot 2\"}]}","asText":null}}},"tags":[]},{"uuid":"7413ee9d-58c6-4b1f-b8ef-c1e072f976d3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"time\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/2/\"},\"id\":4,\"name\":\"time-day\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Am Tag\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"During the day\"}]}","asText":null}}},"tags":[]},{"uuid":"a3e2cbce-d1c1-42d7-8741-1fb421fd523b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"slot2\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/4/\"},\"id\":9,\"name\":\"slot2-ruby\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Rubin in Slot 2\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Ruby in slot 2\"}]}","asText":null}}},"tags":[]},{"uuid":"7a5e5aea-95ca-4113-b949-4a327fbe71d4","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"slot2\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/4/\"},\"id\":12,\"name\":\"slot2-firered\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Feuerrot in slot 2\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"FireRed in slot 2\"}]}","asText":null}}},"tags":[]},{"uuid":"49368abe-d03b-4af9-b85c-aaa796048c68","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"slot2\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/4/\"},\"id\":10,\"name\":\"slot2-sapphire\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Saphir in Slot 2\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Sapphire in slot 2\"}]}","asText":null}}},"tags":[]},{"uuid":"5ec42f1c-64cc-4dd1-8e9d-db48892a2037","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"slot2\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/4/\"},\"id\":13,\"name\":\"slot2-leafgreen\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Blattgrün in slot 2\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"LeafGreen in slot 2\"}]}","asText":null}}},"tags":[]},{"uuid":"2fbc3ffa-bcf2-4544-a101-0ae83324df88","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/17/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"season\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/6/\"},\"id\":17,\"name\":\"season-spring\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Im Frühling\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"During Spring\"}]}","asText":null}}},"tags":[]},{"uuid":"ecc21e32-6a9b-491e-bfec-12173ce72317","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"radio\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/5/\"},\"id\":15,\"name\":\"radio-hoenn\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Hoenn-Sound im Radio\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Hoenn radio\"}]}","asText":null}}},"tags":[]},{"uuid":"149fcba3-3c6d-430b-874c-45986438e7c1","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/19/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"season\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/6/\"},\"id\":19,\"name\":\"season-autumn\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Im Herbst\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"During Autumn\"}]}","asText":null}}},"tags":[]},{"uuid":"4e2fe562-1b87-4fb4-a02b-35ce4383b125","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/16/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"radio\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/5/\"},\"id\":16,\"name\":\"radio-sinnoh\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Sinnoh-Sound im Radio\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Sinnoh radio\"}]}","asText":null}}},"tags":[]},{"uuid":"ddf9e99f-6108-4d28-89a3-0d19529c91af","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/generation/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,203,1,10,7,114,101,115,117,108,116,115,18,191,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":7,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"generation-i\",\"url\":\"https://pokeapi.co/api/v2/generation/1/\"},{\"name\":\"generation-ii\",\"url\":\"https://pokeapi.co/api/v2/generation/2/\"},{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"},{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"},{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"},{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"},{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}]}","asText":null}}},"tags":[]},{"uuid":"513aecfa-d215-41d7-939c-734f3a28d172","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"radio\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/5/\"},\"id\":14,\"name\":\"radio-off\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Radio aus\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Radio off\"}]}","asText":null}}},"tags":[]},{"uuid":"bb119735-bc2e-4cfd-b6bc-05f7b1efb383","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"slot2\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/4/\"},\"id\":11,\"name\":\"slot2-emerald\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Smaragd in Slot 2\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Emerald in slot 2\"}]}","asText":null}}},"tags":[]},{"uuid":"637e0934-b9e3-4299-91f8-4daea72fe3a3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/18/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"season\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/6/\"},\"id\":18,\"name\":\"season-summer\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Im Sommer\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"During Summer\"}]}","asText":null}}},"tags":[]},{"uuid":"51c1237c-72b1-42bb-ac86-7074c2bfb091","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-condition-value/20/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,9,99,111,110,100,105,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"condition\":{\"name\":\"season\",\"url\":\"https://pokeapi.co/api/v2/encounter-condition/6/\"},\"id\":20,\"name\":\"season-winter\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Im Winter\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"During Winter\"}]}","asText":null}}},"tags":[]},{"uuid":"e74cc5e3-187e-46e9-ab7f-b85fb7c66698","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/growth-rate/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,176,1,10,7,114,101,115,117,108,116,115,18,164,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":6,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"slow\",\"url\":\"https://pokeapi.co/api/v2/growth-rate/1/\"},{\"name\":\"medium\",\"url\":\"https://pokeapi.co/api/v2/growth-rate/2/\"},{\"name\":\"fast\",\"url\":\"https://pokeapi.co/api/v2/growth-rate/3/\"},{\"name\":\"medium-slow\",\"url\":\"https://pokeapi.co/api/v2/growth-rate/4/\"},{\"name\":\"slow-then-very-fast\",\"url\":\"https://pokeapi.co/api/v2/growth-rate/5/\"},{\"name\":\"fast-then-very-slow\",\"url\":\"https://pokeapi.co/api/v2/growth-rate/6/\"}]}","asText":null}}},"tags":[]},{"uuid":"2b6c17b2-ad31-48d4-aaa1-6c4cb7ad86f8","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":1,\"name\":\"walk\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Im hohen Gras oder in einer Höhle laufen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Walking in tall grass or a cave\"}],\"order\":1}","asText":null}}},"tags":[]},{"uuid":"de986278-771c-471d-b041-d2d94bd744b2","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":2,\"name\":\"old-rod\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Mit einer normalen Angel angeln\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Fishing with an Old Rod\"}],\"order\":10}","asText":null}}},"tags":[]},{"uuid":"2cc6a282-f365-4f65-b905-b4804a894a45","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":5,\"name\":\"surf\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Surfen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Surfing\"}],\"order\":14}","asText":null}}},"tags":[]},{"uuid":"ef5f5684-9fc2-408e-bc42-1c6e482babcd","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":4,\"name\":\"super-rod\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Mit einer Superangel angeln\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Fishing with a Super Rod\"}],\"order\":12}","asText":null}}},"tags":[]},{"uuid":"05b4afd7-f2f7-47d1-a2cc-23b1e5773417","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":7,\"name\":\"headbutt\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Bäumen Kopfnüsse geben\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Headbutting trees\"}],\"order\":17}","asText":null}}},"tags":[]},{"uuid":"aa1778c3-b995-45c6-8319-0ff5539d31ad","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":8,\"name\":\"dark-grass\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Im dunklen Gras laufen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Walking in dark grass\"}],\"order\":5}","asText":null}}},"tags":[]},{"uuid":"09058497-767d-4791-90a9-c4a7728b85c0","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":10,\"name\":\"cave-spots\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"In Staubwolken laufen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Walking in dust clouds\"}],\"order\":3}","asText":null}}},"tags":[]},{"uuid":"114d5248-9f4e-4731-8f23-1a7f592e947b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":3,\"name\":\"good-rod\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Mit einer Profiangel angeln\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Fishing with a Good Rod\"}],\"order\":11}","asText":null}}},"tags":[]},{"uuid":"ed26195b-3149-41bc-9376-8384eaa67d83","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":9,\"name\":\"grass-spots\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Im raschelndem Gras laufen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Walking in rustling grass\"}],\"order\":2}","asText":null}}},"tags":[]},{"uuid":"e0a4e669-81ee-49f7-96a8-36e4b2aebbef","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":6,\"name\":\"rock-smash\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Steine zertrümmern\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Smashing rocks\"}],\"order\":16}","asText":null}}},"tags":[]},{"uuid":"929f3d39-8b70-4f8d-a7f1-08d4216031dc","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":13,\"name\":\"surf-spots\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"An dunklen stellen surfen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Surfing in dark spots\"}],\"order\":15}","asText":null}}},"tags":[]},{"uuid":"ae0307a5-92d6-4501-a9a4-61aa54213842","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":12,\"name\":\"super-rod-spots\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"An dunklen stellen angeln\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Fishing in dark spots\"}],\"order\":13}","asText":null}}},"tags":[]},{"uuid":"a52c5e84-3616-4931-b7c8-7c5df3962d8d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":14,\"name\":\"yellow-flowers\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"In gelben Blumenfeldern laufen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Walking in yellow flowers\"}],\"order\":6}","asText":null}}},"tags":[]},{"uuid":"bd246472-64de-489a-bfbd-c328923dbf2f","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/17/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":17,\"name\":\"rough-terrain\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Auf unwegsamen Gelände laufen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Walking on rough terrain\"}],\"order\":9}","asText":null}}},"tags":[]},{"uuid":"b7f3a67e-cf97-42f2-8b2a-ed44b6413dae","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":11,\"name\":\"bridge-spots\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Im Schatten einer Brücke laufen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Walking in bridge shadows\"}],\"order\":4}","asText":null}}},"tags":[]},{"uuid":"b0285aaf-e3cd-42db-ac0e-2796b7f5f160","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/16/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":16,\"name\":\"red-flowers\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"In roten Blumenfeldern laufen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Walking in red flowers\"}],\"order\":8}","asText":null}}},"tags":[]},{"uuid":"7fa94f99-c96f-4c59-bf67-f7149cf023c4","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,170,4,10,7,114,101,115,117,108,116,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":954,\"next\":\"https://pokeapi.co/api/v2/item/?offset=20&limit=20\",\"previous\":null,\"results\":[{\"name\":\"master-ball\",\"url\":\"https://pokeapi.co/api/v2/item/1/\"},{\"name\":\"ultra-ball\",\"url\":\"https://pokeapi.co/api/v2/item/2/\"},{\"name\":\"great-ball\",\"url\":\"https://pokeapi.co/api/v2/item/3/\"},{\"name\":\"poke-ball\",\"url\":\"https://pokeapi.co/api/v2/item/4/\"},{\"name\":\"safari-ball\",\"url\":\"https://pokeapi.co/api/v2/item/5/\"},{\"name\":\"net-ball\",\"url\":\"https://pokeapi.co/api/v2/item/6/\"},{\"name\":\"dive-ball\",\"url\":\"https://pokeapi.co/api/v2/item/7/\"},{\"name\":\"nest-ball\",\"url\":\"https://pokeapi.co/api/v2/item/8/\"},{\"name\":\"repeat-ball\",\"url\":\"https://pokeapi.co/api/v2/item/9/\"},{\"name\":\"timer-ball\",\"url\":\"https://pokeapi.co/api/v2/item/10/\"},{\"name\":\"luxury-ball\",\"url\":\"https://pokeapi.co/api/v2/item/11/\"},{\"name\":\"premier-ball\",\"url\":\"https://pokeapi.co/api/v2/item/12/\"},{\"name\":\"dusk-ball\",\"url\":\"https://pokeapi.co/api/v2/item/13/\"},{\"name\":\"heal-ball\",\"url\":\"https://pokeapi.co/api/v2/item/14/\"},{\"name\":\"quick-ball\",\"url\":\"https://pokeapi.co/api/v2/item/15/\"},{\"name\":\"cherish-ball\",\"url\":\"https://pokeapi.co/api/v2/item/16/\"},{\"name\":\"potion\",\"url\":\"https://pokeapi.co/api/v2/item/17/\"},{\"name\":\"antidote\",\"url\":\"https://pokeapi.co/api/v2/item/18/\"},{\"name\":\"burn-heal\",\"url\":\"https://pokeapi.co/api/v2/item/19/\"},{\"name\":\"ice-heal\",\"url\":\"https://pokeapi.co/api/v2/item/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"8f86d781-65af-43ab-a877-9a1e3e5c30db","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,186,8,10,5,99,104,97,105,110,18,176,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,221,7,10,10,101,118,111,108,118,101,115,95,116,111,18,206,7,8,1,26,201,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":16,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":32,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"venusaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/3/\"}}],\"is_baby\":false,\"species\":{\"name\":\"ivysaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/2/\"}}],\"is_baby\":false,\"species\":{\"name\":\"bulbasaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/1/\"}},\"id\":1}","asText":null}}},"tags":[]},{"uuid":"46e92900-a684-4954-8f7c-58871053e902","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,186,8,10,5,99,104,97,105,110,18,176,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,221,7,10,10,101,118,111,108,118,101,115,95,116,111,18,206,7,8,1,26,201,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":18,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":36,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"pidgeot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/18/\"}}],\"is_baby\":false,\"species\":{\"name\":\"pidgeotto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/17/\"}}],\"is_baby\":false,\"species\":{\"name\":\"pidgey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/16/\"}},\"id\":6}","asText":null}}},"tags":[]},{"uuid":"0dcafe30-ddb6-428a-9793-8722304ab3a7","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,186,8,10,5,99,104,97,105,110,18,176,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,221,7,10,10,101,118,111,108,118,101,115,95,116,111,18,206,7,8,1,26,201,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":16,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":36,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"charizard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/6/\"}}],\"is_baby\":false,\"species\":{\"name\":\"charmeleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/5/\"}}],\"is_baby\":false,\"species\":{\"name\":\"charmander\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/4/\"}},\"id\":2}","asText":null}}},"tags":[]},{"uuid":"59c54566-dca7-45c8-80a3-4543b217c14b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,211,4,10,5,99,104,97,105,110,18,201,4,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":22,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"sandslash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/28/\"}}],\"is_baby\":false,\"species\":{\"name\":\"sandshrew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/27/\"}},\"id\":11}","asText":null}}},"tags":[]},{"uuid":"f8ae49cc-0d25-4b69-97d0-4a39b1bb2d29","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,186,8,10,5,99,104,97,105,110,18,176,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,221,7,10,10,101,118,111,108,118,101,115,95,116,111,18,206,7,8,1,26,201,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":7,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":10,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"beedrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/15/\"}}],\"is_baby\":false,\"species\":{\"name\":\"kakuna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/14/\"}}],\"is_baby\":false,\"species\":{\"name\":\"weedle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/13/\"}},\"id\":5}","asText":null}}},"tags":[]},{"uuid":"d047fec0-7d39-4f59-a062-8fb53e99bcab","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/encounter-method/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,111,114,100,101,114,18,2,8,3]}},"asJsonString":"{\"id\":15,\"name\":\"purple-flowers\",\"names\":[{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"In violetten Blumenfeldern laufen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Walking in purple flowers\"}],\"order\":7}","asText":null}}},"tags":[]},{"uuid":"85497d8b-2868-412d-ac97-86d68e296438","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,186,8,10,5,99,104,97,105,110,18,176,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,221,7,10,10,101,118,111,108,118,101,115,95,116,111,18,206,7,8,1,26,201,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":16,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":36,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"blastoise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/9/\"}}],\"is_baby\":false,\"species\":{\"name\":\"wartortle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/8/\"}}],\"is_baby\":false,\"species\":{\"name\":\"squirtle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/7/\"}},\"id\":3}","asText":null}}},"tags":[]},{"uuid":"0b728726-4dda-4c82-a02d-4aba954fcdcc","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,211,4,10,5,99,104,97,105,110,18,201,4,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":20,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"raticate\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/20/\"}}],\"is_baby\":false,\"species\":{\"name\":\"rattata\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/19/\"}},\"id\":7}","asText":null}}},"tags":[]},{"uuid":"4d5a0380-8c96-4b5e-84d4-39d73e19a831","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,209,8,10,5,99,104,97,105,110,18,199,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,244,7,10,10,101,118,111,108,118,101,115,95,116,111,18,229,7,8,1,26,224,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,3,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,141,4,10,10,101,118,111,108,118,101,115,95,116,111,18,254,3,8,1,26,249,3,8,0,18,173,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,151,3,8,1,26,146,3,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":220,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":{\"name\":\"moon-stone\",\"url\":\"https://pokeapi.co/api/v2/item/81/\"},\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"use-item\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/3/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"clefable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/36/\"}}],\"is_baby\":false,\"species\":{\"name\":\"clefairy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/35/\"}}],\"is_baby\":true,\"species\":{\"name\":\"cleffa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/173/\"}},\"id\":14}","asText":null}}},"tags":[]},{"uuid":"228a7d61-8e40-4101-8a3c-4f4d64c607bb","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,209,8,10,5,99,104,97,105,110,18,199,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,244,7,10,10,101,118,111,108,118,101,115,95,116,111,18,229,7,8,1,26,224,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,141,4,10,10,101,118,111,108,118,101,115,95,116,111,18,254,3,8,1,26,249,3,8,0,18,173,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,151,3,8,1,26,146,3,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":16,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":{\"name\":\"moon-stone\",\"url\":\"https://pokeapi.co/api/v2/item/81/\"},\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"use-item\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/3/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"nidoking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/34/\"}}],\"is_baby\":false,\"species\":{\"name\":\"nidorino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/33/\"}}],\"is_baby\":false,\"species\":{\"name\":\"nidoran-m\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/32/\"}},\"id\":13}","asText":null}}},"tags":[]},{"uuid":"f6539fa2-6f85-45c3-89cd-c0baffb566df","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,209,8,10,5,99,104,97,105,110,18,199,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,244,7,10,10,101,118,111,108,118,101,115,95,116,111,18,229,7,8,1,26,224,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,141,4,10,10,101,118,111,108,118,101,115,95,116,111,18,254,3,8,1,26,249,3,8,0,18,173,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,151,3,8,1,26,146,3,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":16,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":{\"name\":\"moon-stone\",\"url\":\"https://pokeapi.co/api/v2/item/81/\"},\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"use-item\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/3/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"nidoqueen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/31/\"}}],\"is_baby\":false,\"species\":{\"name\":\"nidorina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/30/\"}}],\"is_baby\":false,\"species\":{\"name\":\"nidoran-f\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/29/\"}},\"id\":12}","asText":null}}},"tags":[]},{"uuid":"28d184f7-e4e0-4bac-afae-8c14196f49d3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,209,8,10,5,99,104,97,105,110,18,199,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,244,7,10,10,101,118,111,108,118,101,115,95,116,111,18,229,7,8,1,26,224,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,3,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,141,4,10,10,101,118,111,108,118,101,115,95,116,111,18,254,3,8,1,26,249,3,8,0,18,173,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,151,3,8,1,26,146,3,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":220,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":{\"name\":\"thunder-stone\",\"url\":\"https://pokeapi.co/api/v2/item/83/\"},\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"use-item\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/3/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"raichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/26/\"}}],\"is_baby\":false,\"species\":{\"name\":\"pikachu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/25/\"}}],\"is_baby\":true,\"species\":{\"name\":\"pichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/172/\"}},\"id\":10}","asText":null}}},"tags":[]},{"uuid":"51bdcd0d-309f-438a-a62a-96aacafe7ab3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/16/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,209,8,10,5,99,104,97,105,110,18,199,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,244,7,10,10,101,118,111,108,118,101,115,95,116,111,18,229,7,8,1,26,224,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,3,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,141,4,10,10,101,118,111,108,118,101,115,95,116,111,18,254,3,8,1,26,249,3,8,0,18,173,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,151,3,8,1,26,146,3,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":220,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":{\"name\":\"moon-stone\",\"url\":\"https://pokeapi.co/api/v2/item/81/\"},\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"use-item\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/3/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"wigglytuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/40/\"}}],\"is_baby\":false,\"species\":{\"name\":\"jigglypuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/39/\"}}],\"is_baby\":true,\"species\":{\"name\":\"igglybuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/174/\"}},\"id\":16}","asText":null}}},"tags":[]},{"uuid":"9798296b-963a-47f6-964f-22aa08a31e9a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/18/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,205,12,10,5,99,104,97,105,110,18,195,12,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,240,11,10,10,101,118,111,108,118,101,115,95,116,111,18,225,11,8,1,26,220,11,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,137,8,10,10,101,118,111,108,118,101,115,95,116,111,18,250,7,8,1,26,249,3,8,0,18,173,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,151,3,8,1,26,146,3,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,249,3,8,0,18,173,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,151,3,8,1,26,146,3,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":21,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":{\"name\":\"leaf-stone\",\"url\":\"https://pokeapi.co/api/v2/item/85/\"},\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"use-item\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/3/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"vileplume\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/45/\"}},{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":{\"name\":\"sun-stone\",\"url\":\"https://pokeapi.co/api/v2/item/80/\"},\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"use-item\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/3/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"bellossom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/182/\"}}],\"is_baby\":false,\"species\":{\"name\":\"gloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/44/\"}}],\"is_baby\":false,\"species\":{\"name\":\"oddish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/43/\"}},\"id\":18}","asText":null}}},"tags":[]},{"uuid":"6101df6b-9433-4303-8474-b76a880bb6fa","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,211,4,10,5,99,104,97,105,110,18,201,4,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":20,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"fearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/22/\"}}],\"is_baby\":false,\"species\":{\"name\":\"spearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/21/\"}},\"id\":8}","asText":null}}},"tags":[]},{"uuid":"f85ab289-6a0f-4cb7-8535-48675b0f28cb","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,211,4,10,5,99,104,97,105,110,18,201,4,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":22,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"arbok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/24/\"}}],\"is_baby\":false,\"species\":{\"name\":\"ekans\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/23/\"}},\"id\":9}","asText":null}}},"tags":[]},{"uuid":"2ed88a04-aeec-43bc-bf3d-2273184f6b0a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,234,4,10,5,99,104,97,105,110,18,224,4,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,141,4,10,10,101,118,111,108,118,101,115,95,116,111,18,254,3,8,1,26,249,3,8,0,18,173,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,151,3,8,1,26,146,3,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,33,10,4,105,116,101,109,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":{\"name\":\"fire-stone\",\"url\":\"https://pokeapi.co/api/v2/item/82/\"},\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"use-item\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/3/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"ninetales\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/38/\"}}],\"is_baby\":false,\"species\":{\"name\":\"vulpix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/37/\"}},\"id\":15}","asText":null}}},"tags":[]},{"uuid":"81446b74-7b61-4b4f-8c02-9d1c84779131","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/19/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,211,4,10,5,99,104,97,105,110,18,201,4,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":24,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"parasect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/47/\"}}],\"is_baby\":false,\"species\":{\"name\":\"paras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/46/\"}},\"id\":19}","asText":null}}},"tags":[]},{"uuid":"9a4f2b8b-8259-4650-9eb7-75c3cf194e35","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,186,8,10,5,99,104,97,105,110,18,176,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,221,7,10,10,101,118,111,108,118,101,115,95,116,111,18,206,7,8,1,26,201,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":7,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":10,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"butterfree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/12/\"}}],\"is_baby\":false,\"species\":{\"name\":\"metapod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/11/\"}}],\"is_baby\":false,\"species\":{\"name\":\"caterpie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/10/\"}},\"id\":4}","asText":null}}},"tags":[]},{"uuid":"6e4923b3-7f64-467f-970f-33f114d07d1a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/17/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,186,8,10,5,99,104,97,105,110,18,176,8,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,221,7,10,10,101,118,111,108,118,101,115,95,116,111,18,206,7,8,1,26,201,7,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,3,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,5,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":22,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":220,\"min_level\":null,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"crobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/169/\"}}],\"is_baby\":false,\"species\":{\"name\":\"golbat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/42/\"}}],\"is_baby\":false,\"species\":{\"name\":\"zubat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/41/\"}},\"id\":17}","asText":null}}},"tags":[]},{"uuid":"c71038db-6967-432e-bf12-65ed958334e8","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-chain/20/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,23,10,17,98,97,98,121,95,116,114,105,103,103,101,114,95,105,116,101,109,18,2,8,5,18,211,4,10,5,99,104,97,105,110,18,201,4,8,0,18,23,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,2,8,1,18,246,3,10,10,101,118,111,108,118,101,115,95,116,111,18,231,3,8,1,26,226,3,8,0,18,150,3,10,17,101,118,111,108,117,116,105,111,110,95,100,101,116,97,105,108,115,18,128,3,8,1,26,251,2,8,0,18,12,10,6,103,101,110,100,101,114,18,2,8,5,18,15,10,9,104,101,108,100,95,105,116,101,109,18,2,8,5,18,10,10,4,105,116,101,109,18,2,8,5,18,16,10,10,107,110,111,119,110,95,109,111,118,101,18,2,8,5,18,21,10,15,107,110,111,119,110,95,109,111,118,101,95,116,121,112,101,18,2,8,5,18,14,10,8,108,111,99,97,116,105,111,110,18,2,8,5,18,19,10,13,109,105,110,95,97,102,102,101,99,116,105,111,110,18,2,8,5,18,16,10,10,109,105,110,95,98,101,97,117,116,121,18,2,8,5,18,19,10,13,109,105,110,95,104,97,112,112,105,110,101,115,115,18,2,8,5,18,15,10,9,109,105,110,95,108,101,118,101,108,18,2,8,3,18,26,10,20,110,101,101,100,115,95,111,118,101,114,119,111,114,108,100,95,114,97,105,110,18,2,8,4,18,19,10,13,112,97,114,116,121,95,115,112,101,99,105,101,115,18,2,8,5,18,16,10,10,112,97,114,116,121,95,116,121,112,101,18,2,8,5,18,29,10,23,114,101,108,97,116,105,118,101,95,112,104,121,115,105,99,97,108,95,115,116,97,116,115,18,2,8,5,18,17,10,11,116,105,109,101,95,111,102,95,100,97,121,18,2,8,2,18,19,10,13,116,114,97,100,101,95,115,112,101,99,105,101,115,18,2,8,5,18,36,10,7,116,114,105,103,103,101,114,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,116,117,114,110,95,117,112,115,105,100,101,95,100,111,119,110,18,2,8,4,18,16,10,10,101,118,111,108,118,101,115,95,116,111,18,2,8,1,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,105,115,95,98,97,98,121,18,2,8,4,18,36,10,7,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3]}},"asJsonString":"{\"baby_trigger_item\":null,\"chain\":{\"evolution_details\":[],\"evolves_to\":[{\"evolution_details\":[{\"gender\":null,\"held_item\":null,\"item\":null,\"known_move\":null,\"known_move_type\":null,\"location\":null,\"min_affection\":null,\"min_beauty\":null,\"min_happiness\":null,\"min_level\":31,\"needs_overworld_rain\":false,\"party_species\":null,\"party_type\":null,\"relative_physical_stats\":null,\"time_of_day\":\"\",\"trade_species\":null,\"trigger\":{\"name\":\"level-up\",\"url\":\"https://pokeapi.co/api/v2/evolution-trigger/1/\"},\"turn_upside_down\":false}],\"evolves_to\":[],\"is_baby\":false,\"species\":{\"name\":\"venomoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/49/\"}}],\"is_baby\":false,\"species\":{\"name\":\"venonat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/48/\"}},\"id\":20}","asText":null}}},"tags":[]},{"uuid":"00fcf948-6600-414e-8050-6d62eccb5de4","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-attribute/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,230,1,10,7,114,101,115,117,108,116,115,18,218,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":8,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"usable-overworld\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/3/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"holdable-passive\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/6/\"},{\"name\":\"holdable-active\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/7/\"},{\"name\":\"underground\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/8/\"}]}","asText":null}}},"tags":[]},{"uuid":"c75666d8-a0b7-4bb1-93a7-102ee60a5c1e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-trigger/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,48,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":4,\"name\":\"shed\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Place dans l'équipe et une Poké Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Platz im Team und ein Pokéball\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Shed\"}],\"pokemon_species\":[{\"name\":\"shedinja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/292/\"}]}","asText":null}}},"tags":[]},{"uuid":"5880c769-4b67-40ea-b53f-6fd81d045b67","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-trigger/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,212,5,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,192,5,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":2,\"name\":\"trade\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Échange\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Tausch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Trade\"}],\"pokemon_species\":[{\"name\":\"alakazam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/65/\"},{\"name\":\"machamp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/68/\"},{\"name\":\"golem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/76/\"},{\"name\":\"gengar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/94/\"},{\"name\":\"politoed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/186/\"},{\"name\":\"slowking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/199/\"},{\"name\":\"steelix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/208/\"},{\"name\":\"scizor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/212/\"},{\"name\":\"kingdra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/230/\"},{\"name\":\"porygon2\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/233/\"},{\"name\":\"huntail\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/367/\"},{\"name\":\"gorebyss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/368/\"},{\"name\":\"rhyperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/464/\"},{\"name\":\"electivire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/466/\"},{\"name\":\"magmortar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/467/\"},{\"name\":\"porygon-z\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/474/\"},{\"name\":\"dusknoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/477/\"},{\"name\":\"gigalith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/526/\"},{\"name\":\"conkeldurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/534/\"},{\"name\":\"escavalier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/589/\"},{\"name\":\"accelgor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/617/\"},{\"name\":\"milotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/350/\"},{\"name\":\"aromatisse\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/683/\"},{\"name\":\"trevenant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/709/\"},{\"name\":\"gourgeist\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/711/\"},{\"name\":\"slurpuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/685/\"}]}","asText":null}}},"tags":[]},{"uuid":"f88c749a-a224-48bd-ba55-beb0c7bd4eb0","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-trigger/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,179,8,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,159,8,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":3,\"name\":\"use-item\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Utilisation d'un objet\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Gegenstand nutzen\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Use item\"}],\"pokemon_species\":[{\"name\":\"raichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/26/\"},{\"name\":\"nidoqueen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/31/\"},{\"name\":\"nidoking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/34/\"},{\"name\":\"clefable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/36/\"},{\"name\":\"ninetales\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/38/\"},{\"name\":\"wigglytuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/40/\"},{\"name\":\"vileplume\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/45/\"},{\"name\":\"arcanine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/59/\"},{\"name\":\"poliwrath\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/62/\"},{\"name\":\"victreebel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/71/\"},{\"name\":\"cloyster\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/91/\"},{\"name\":\"exeggutor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/103/\"},{\"name\":\"starmie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/121/\"},{\"name\":\"vaporeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/134/\"},{\"name\":\"jolteon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/135/\"},{\"name\":\"flareon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/136/\"},{\"name\":\"bellossom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/182/\"},{\"name\":\"sunflora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/192/\"},{\"name\":\"ludicolo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/272/\"},{\"name\":\"shiftry\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/275/\"},{\"name\":\"delcatty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/301/\"},{\"name\":\"roserade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/407/\"},{\"name\":\"mismagius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/429/\"},{\"name\":\"honchkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/430/\"},{\"name\":\"togekiss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/468/\"},{\"name\":\"gallade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/475/\"},{\"name\":\"froslass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/478/\"},{\"name\":\"simisage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/512/\"},{\"name\":\"simisear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/514/\"},{\"name\":\"simipour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/516/\"},{\"name\":\"musharna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/518/\"},{\"name\":\"whimsicott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/547/\"},{\"name\":\"lilligant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/549/\"},{\"name\":\"cinccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/573/\"},{\"name\":\"eelektross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/604/\"},{\"name\":\"chandelure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/609/\"},{\"name\":\"florges\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/671/\"},{\"name\":\"aegislash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/681/\"},{\"name\":\"heliolisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/695/\"}]}","asText":null}}},"tags":[]},{"uuid":"ef9db4e2-d632-43b8-afe0-53b6f7095a35","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/evolution-trigger/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,177,1,10,5,110,97,109,101,115,18,167,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,188,71,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,168,71,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":1,\"name\":\"level-up\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Montée de niveau\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Levelaufstieg\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Level up\"}],\"pokemon_species\":[{\"name\":\"ivysaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/2/\"},{\"name\":\"venusaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/3/\"},{\"name\":\"charmeleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/5/\"},{\"name\":\"charizard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/6/\"},{\"name\":\"wartortle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/8/\"},{\"name\":\"blastoise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/9/\"},{\"name\":\"metapod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/11/\"},{\"name\":\"butterfree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/12/\"},{\"name\":\"kakuna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/14/\"},{\"name\":\"beedrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/15/\"},{\"name\":\"pidgeotto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/17/\"},{\"name\":\"pidgeot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/18/\"},{\"name\":\"raticate\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/20/\"},{\"name\":\"fearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/22/\"},{\"name\":\"arbok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/24/\"},{\"name\":\"pikachu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/25/\"},{\"name\":\"sandslash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/28/\"},{\"name\":\"nidorina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/30/\"},{\"name\":\"nidorino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/33/\"},{\"name\":\"clefairy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/35/\"},{\"name\":\"jigglypuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/39/\"},{\"name\":\"golbat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/42/\"},{\"name\":\"gloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/44/\"},{\"name\":\"parasect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/47/\"},{\"name\":\"venomoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/49/\"},{\"name\":\"dugtrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/51/\"},{\"name\":\"persian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/53/\"},{\"name\":\"golduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/55/\"},{\"name\":\"primeape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/57/\"},{\"name\":\"poliwhirl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/61/\"},{\"name\":\"kadabra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/64/\"},{\"name\":\"machoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/67/\"},{\"name\":\"weepinbell\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/70/\"},{\"name\":\"tentacruel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/73/\"},{\"name\":\"graveler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/75/\"},{\"name\":\"rapidash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/78/\"},{\"name\":\"slowbro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/80/\"},{\"name\":\"magneton\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/82/\"},{\"name\":\"dodrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/85/\"},{\"name\":\"dewgong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/87/\"},{\"name\":\"muk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/89/\"},{\"name\":\"haunter\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/93/\"},{\"name\":\"hypno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/97/\"},{\"name\":\"kingler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/99/\"},{\"name\":\"electrode\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/101/\"},{\"name\":\"marowak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/105/\"},{\"name\":\"hitmonlee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/106/\"},{\"name\":\"hitmonchan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/107/\"},{\"name\":\"weezing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/110/\"},{\"name\":\"rhydon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/112/\"},{\"name\":\"chansey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/113/\"},{\"name\":\"seadra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/117/\"},{\"name\":\"seaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/119/\"},{\"name\":\"mr-mime\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/122/\"},{\"name\":\"jynx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/124/\"},{\"name\":\"electabuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/125/\"},{\"name\":\"magmar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/126/\"},{\"name\":\"gyarados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/130/\"},{\"name\":\"omastar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/139/\"},{\"name\":\"kabutops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/141/\"},{\"name\":\"snorlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/143/\"},{\"name\":\"dragonair\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/148/\"},{\"name\":\"dragonite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/149/\"},{\"name\":\"bayleef\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/153/\"},{\"name\":\"meganium\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/154/\"},{\"name\":\"quilava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/156/\"},{\"name\":\"typhlosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/157/\"},{\"name\":\"croconaw\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/159/\"},{\"name\":\"feraligatr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/160/\"},{\"name\":\"furret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/162/\"},{\"name\":\"noctowl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/164/\"},{\"name\":\"ledian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/166/\"},{\"name\":\"ariados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/168/\"},{\"name\":\"crobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/169/\"},{\"name\":\"lanturn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/171/\"},{\"name\":\"togetic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/176/\"},{\"name\":\"xatu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/178/\"},{\"name\":\"flaaffy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/180/\"},{\"name\":\"ampharos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/181/\"},{\"name\":\"marill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/183/\"},{\"name\":\"azumarill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/184/\"},{\"name\":\"sudowoodo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/185/\"},{\"name\":\"skiploom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/188/\"},{\"name\":\"jumpluff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/189/\"},{\"name\":\"quagsire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/195/\"},{\"name\":\"espeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/196/\"},{\"name\":\"umbreon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/197/\"},{\"name\":\"wobbuffet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/202/\"},{\"name\":\"forretress\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/205/\"},{\"name\":\"granbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/210/\"},{\"name\":\"ursaring\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/217/\"},{\"name\":\"magcargo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/219/\"},{\"name\":\"piloswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/221/\"},{\"name\":\"octillery\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/224/\"},{\"name\":\"mantine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/226/\"},{\"name\":\"houndoom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/229/\"},{\"name\":\"donphan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/232/\"},{\"name\":\"hitmontop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/237/\"},{\"name\":\"blissey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/242/\"},{\"name\":\"pupitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/247/\"},{\"name\":\"tyranitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/248/\"},{\"name\":\"grovyle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/253/\"},{\"name\":\"sceptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/254/\"},{\"name\":\"combusken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/256/\"},{\"name\":\"blaziken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/257/\"},{\"name\":\"marshtomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/259/\"},{\"name\":\"swampert\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/260/\"},{\"name\":\"mightyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/262/\"},{\"name\":\"linoone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/264/\"},{\"name\":\"silcoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/266/\"},{\"name\":\"beautifly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/267/\"},{\"name\":\"cascoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/268/\"},{\"name\":\"dustox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/269/\"},{\"name\":\"lombre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/271/\"},{\"name\":\"nuzleaf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/274/\"},{\"name\":\"swellow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/277/\"},{\"name\":\"pelipper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/279/\"},{\"name\":\"kirlia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/281/\"},{\"name\":\"gardevoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/282/\"},{\"name\":\"masquerain\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/284/\"},{\"name\":\"breloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/286/\"},{\"name\":\"vigoroth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/288/\"},{\"name\":\"slaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/289/\"},{\"name\":\"ninjask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/291/\"},{\"name\":\"loudred\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/294/\"},{\"name\":\"exploud\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/295/\"},{\"name\":\"hariyama\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/297/\"},{\"name\":\"lairon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/305/\"},{\"name\":\"aggron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/306/\"},{\"name\":\"medicham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/308/\"},{\"name\":\"manectric\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/310/\"},{\"name\":\"roselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/315/\"},{\"name\":\"swalot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/317/\"},{\"name\":\"sharpedo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/319/\"},{\"name\":\"wailord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/321/\"},{\"name\":\"camerupt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/323/\"},{\"name\":\"grumpig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/326/\"},{\"name\":\"vibrava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/329/\"},{\"name\":\"flygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/330/\"},{\"name\":\"cacturne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/332/\"},{\"name\":\"altaria\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/334/\"},{\"name\":\"whiscash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/340/\"},{\"name\":\"crawdaunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/342/\"},{\"name\":\"claydol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/344/\"},{\"name\":\"cradily\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/346/\"},{\"name\":\"armaldo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/348/\"},{\"name\":\"milotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/350/\"},{\"name\":\"banette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/354/\"},{\"name\":\"dusclops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/356/\"},{\"name\":\"chimecho\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/358/\"},{\"name\":\"glalie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/362/\"},{\"name\":\"sealeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/364/\"},{\"name\":\"walrein\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/365/\"},{\"name\":\"shelgon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/372/\"},{\"name\":\"salamence\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/373/\"},{\"name\":\"metang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/375/\"},{\"name\":\"metagross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/376/\"},{\"name\":\"grotle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/388/\"},{\"name\":\"torterra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/389/\"},{\"name\":\"monferno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/391/\"},{\"name\":\"infernape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/392/\"},{\"name\":\"prinplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/394/\"},{\"name\":\"empoleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/395/\"},{\"name\":\"staravia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/397/\"},{\"name\":\"staraptor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/398/\"},{\"name\":\"bibarel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/400/\"},{\"name\":\"kricketune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/402/\"},{\"name\":\"luxio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/404/\"},{\"name\":\"luxray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/405/\"},{\"name\":\"rampardos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/409/\"},{\"name\":\"bastiodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/411/\"},{\"name\":\"wormadam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/413/\"},{\"name\":\"mothim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/414/\"},{\"name\":\"vespiquen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/416/\"},{\"name\":\"floatzel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/419/\"},{\"name\":\"cherrim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/421/\"},{\"name\":\"gastrodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/423/\"},{\"name\":\"ambipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/424/\"},{\"name\":\"drifblim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/426/\"},{\"name\":\"lopunny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/428/\"},{\"name\":\"purugly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/432/\"},{\"name\":\"skuntank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/435/\"},{\"name\":\"bronzong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/437/\"},{\"name\":\"gabite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/444/\"},{\"name\":\"garchomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/445/\"},{\"name\":\"lucario\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/448/\"},{\"name\":\"hippowdon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/450/\"},{\"name\":\"drapion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/452/\"},{\"name\":\"toxicroak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/454/\"},{\"name\":\"lumineon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/457/\"},{\"name\":\"abomasnow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/460/\"},{\"name\":\"weavile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/461/\"},{\"name\":\"magnezone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/462/\"},{\"name\":\"lickilicky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/463/\"},{\"name\":\"tangrowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/465/\"},{\"name\":\"yanmega\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/469/\"},{\"name\":\"leafeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/470/\"},{\"name\":\"glaceon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/471/\"},{\"name\":\"gliscor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/472/\"},{\"name\":\"mamoswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/473/\"},{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/476/\"},{\"name\":\"servine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/496/\"},{\"name\":\"serperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/497/\"},{\"name\":\"pignite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/499/\"},{\"name\":\"emboar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/500/\"},{\"name\":\"dewott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/502/\"},{\"name\":\"samurott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/503/\"},{\"name\":\"watchog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/505/\"},{\"name\":\"herdier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/507/\"},{\"name\":\"stoutland\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/508/\"},{\"name\":\"liepard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/510/\"},{\"name\":\"tranquill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/520/\"},{\"name\":\"unfezant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/521/\"},{\"name\":\"zebstrika\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/523/\"},{\"name\":\"boldore\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/525/\"},{\"name\":\"swoobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/528/\"},{\"name\":\"excadrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/530/\"},{\"name\":\"gurdurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/533/\"},{\"name\":\"palpitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/536/\"},{\"name\":\"seismitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/537/\"},{\"name\":\"swadloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/541/\"},{\"name\":\"leavanny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/542/\"},{\"name\":\"whirlipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/544/\"},{\"name\":\"scolipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/545/\"},{\"name\":\"krokorok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/552/\"},{\"name\":\"krookodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/553/\"},{\"name\":\"darmanitan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/555/\"},{\"name\":\"crustle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/558/\"},{\"name\":\"scrafty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/560/\"},{\"name\":\"cofagrigus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/563/\"},{\"name\":\"carracosta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/565/\"},{\"name\":\"archeops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/567/\"},{\"name\":\"garbodor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/569/\"},{\"name\":\"zoroark\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/571/\"},{\"name\":\"gothorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/575/\"},{\"name\":\"gothitelle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/576/\"},{\"name\":\"duosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/578/\"},{\"name\":\"reuniclus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/579/\"},{\"name\":\"swanna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/581/\"},{\"name\":\"vanillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/583/\"},{\"name\":\"vanilluxe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/584/\"},{\"name\":\"sawsbuck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/586/\"},{\"name\":\"amoonguss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/591/\"},{\"name\":\"jellicent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/593/\"},{\"name\":\"galvantula\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/596/\"},{\"name\":\"ferrothorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/598/\"},{\"name\":\"klang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/600/\"},{\"name\":\"klinklang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/601/\"},{\"name\":\"eelektrik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/603/\"},{\"name\":\"beheeyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/606/\"},{\"name\":\"lampent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/608/\"},{\"name\":\"fraxure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/611/\"},{\"name\":\"haxorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/612/\"},{\"name\":\"beartic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/614/\"},{\"name\":\"mienshao\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/620/\"},{\"name\":\"golurk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/623/\"},{\"name\":\"bisharp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/625/\"},{\"name\":\"braviary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/628/\"},{\"name\":\"mandibuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/630/\"},{\"name\":\"zweilous\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/634/\"},{\"name\":\"hydreigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/635/\"},{\"name\":\"volcarona\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/637/\"},{\"name\":\"magnezone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/462/\"},{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/476/\"},{\"name\":\"leafeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/470/\"},{\"name\":\"glaceon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/471/\"},{\"name\":\"fletchinder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/662/\"},{\"name\":\"talonflame\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/663/\"},{\"name\":\"braixen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/654/\"},{\"name\":\"malamar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/687/\"},{\"name\":\"delphox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/655/\"},{\"name\":\"quilladin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/651/\"},{\"name\":\"clawitzer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/693/\"},{\"name\":\"chesnaught\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/652/\"},{\"name\":\"frogadier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/657/\"},{\"name\":\"greninja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/658/\"},{\"name\":\"doublade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/680/\"},{\"name\":\"sliggoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/705/\"},{\"name\":\"vivillon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/666/\"},{\"name\":\"spewpa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/665/\"},{\"name\":\"barbaracle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/689/\"},{\"name\":\"diggersby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/660/\"},{\"name\":\"floette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/670/\"},{\"name\":\"pangoro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/675/\"},{\"name\":\"dragalge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/691/\"},{\"name\":\"tyrantrum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/697/\"},{\"name\":\"aurorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/699/\"},{\"name\":\"avalugg\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/713/\"},{\"name\":\"pyroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/668/\"},{\"name\":\"gogoat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/673/\"},{\"name\":\"goodra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/706/\"},{\"name\":\"noivern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/715/\"},{\"name\":\"meowstic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/678/\"},{\"name\":\"sylveon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/700/\"},{\"name\":\"magnezone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/462/\"},{\"name\":\"leafeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/470/\"},{\"name\":\"glaceon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/471/\"},{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/476/\"},{\"name\":\"magnezone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/462/\"},{\"name\":\"marowak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/105/\"},{\"name\":\"leafeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/470/\"},{\"name\":\"glaceon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/471/\"},{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/476/\"},{\"name\":\"milotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/350/\"},{\"name\":\"meowstic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/678/\"},{\"name\":\"dartrix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/723/\"},{\"name\":\"decidueye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/724/\"},{\"name\":\"torracat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/726/\"},{\"name\":\"incineroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/727/\"},{\"name\":\"brionne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/729/\"},{\"name\":\"primarina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/730/\"},{\"name\":\"trumbeak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/732/\"},{\"name\":\"toucannon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/733/\"},{\"name\":\"gumshoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/735/\"},{\"name\":\"charjabug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/737/\"},{\"name\":\"vikavolt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/738/\"},{\"name\":\"crabominable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/740/\"},{\"name\":\"ribombee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/743/\"},{\"name\":\"lycanroc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/745/\"},{\"name\":\"lycanroc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/745/\"},{\"name\":\"toxapex\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/748/\"},{\"name\":\"mudsdale\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/750/\"},{\"name\":\"araquanid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/752/\"},{\"name\":\"lurantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/754/\"},{\"name\":\"shiinotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/756/\"},{\"name\":\"salazzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/758/\"},{\"name\":\"bewear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/760/\"},{\"name\":\"steenee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/762/\"},{\"name\":\"tsareena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/763/\"},{\"name\":\"golisopod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/768/\"},{\"name\":\"palossand\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/770/\"},{\"name\":\"silvally\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/773/\"},{\"name\":\"hakamo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/783/\"},{\"name\":\"kommo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/784/\"},{\"name\":\"cosmoem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/790/\"},{\"name\":\"solgaleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/791/\"},{\"name\":\"lunala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/792/\"},{\"name\":\"naganadel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/804/\"}]}","asText":null}}},"tags":[]},{"uuid":"94f96cd9-9278-47f4-b6c1-73fbe78f1b27","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/gender/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,206,50,10,23,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,95,100,101,116,97,105,108,115,18,178,50,8,1,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,18,28,10,22,114,101,113,117,105,114,101,100,95,102,111,114,95,101,118,111,108,117,116,105,111,110,18,2,8,1]}},"asJsonString":"{\"id\":3,\"name\":\"genderless\",\"pokemon_species_details\":[{\"pokemon_species\":{\"name\":\"magnemite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/81/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"voltorb\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/100/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"staryu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/120/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"ditto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/132/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"porygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/137/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"articuno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/144/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"zapdos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/145/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"moltres\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/146/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"mewtwo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/150/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"mew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/151/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"magneton\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/82/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"electrode\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/101/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"starmie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/121/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"unown\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/201/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"porygon2\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/233/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"raikou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/243/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"entei\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/244/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"suicune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/245/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"lugia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/249/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"ho-oh\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/250/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"celebi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/251/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"shedinja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/292/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"lunatone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/337/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"solrock\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/338/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"baltoy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/343/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"beldum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/374/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"regirock\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/377/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"regice\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/378/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"registeel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/379/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"kyogre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/382/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"groudon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/383/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"rayquaza\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/384/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"jirachi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/385/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"deoxys\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/386/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"claydol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/344/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"metang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/375/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"metagross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/376/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"bronzor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/436/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"bronzong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/437/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"magnezone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/462/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"porygon-z\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/474/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"rotom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/479/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"uxie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/480/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"mesprit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/481/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"azelf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/482/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"dialga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/483/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"palkia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/484/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"regigigas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/486/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"giratina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/487/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"phione\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/489/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"manaphy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/490/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"darkrai\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/491/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"shaymin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/492/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"arceus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/493/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"victini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/494/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"klink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/599/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"cryogonal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/615/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"golett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/622/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"klang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/600/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"klinklang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/601/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"golurk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/623/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"cobalion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/638/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"terrakion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/639/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"virizion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/640/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"reshiram\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/643/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"zekrom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/644/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"kyurem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/646/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"keldeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/647/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"meloetta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/648/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"genesect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/649/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"carbink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/703/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"xerneas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/716/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"yveltal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/717/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"zygarde\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/718/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"diancie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/719/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"hoopa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/720/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"volcanion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/721/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"type-null\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/772/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"minior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/774/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"dhelmise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/781/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"tapu-koko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/785/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"tapu-lele\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/786/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"tapu-bulu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/787/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"tapu-fini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/788/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"cosmog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/789/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"nihilego\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/793/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"buzzwole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/794/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"pheromosa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/795/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"xurkitree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/796/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"celesteela\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/797/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"kartana\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/798/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"silvally\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/773/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"solgaleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/791/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"lunala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/792/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"guzzlord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/799/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"necrozma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/800/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"magearna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/801/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"marshadow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/802/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"poipole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/803/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"stakataka\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/805/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"blacephalon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/806/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"zeraora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/807/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"cosmoem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/790/\"},\"rate\":-1},{\"pokemon_species\":{\"name\":\"naganadel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/804/\"},\"rate\":-1}],\"required_for_evolution\":[]}","asText":null}}},"tags":[]},{"uuid":"ad96a117-4b48-4b0b-bc7d-99910ad9305b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,170,4,10,7,114,101,115,117,108,116,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":45,\"next\":\"https://pokeapi.co/api/v2/item-category/?offset=20&limit=20\",\"previous\":null,\"results\":[{\"name\":\"stat-boosts\",\"url\":\"https://pokeapi.co/api/v2/item-category/1/\"},{\"name\":\"effort-drop\",\"url\":\"https://pokeapi.co/api/v2/item-category/2/\"},{\"name\":\"medicine\",\"url\":\"https://pokeapi.co/api/v2/item-category/3/\"},{\"name\":\"other\",\"url\":\"https://pokeapi.co/api/v2/item-category/4/\"},{\"name\":\"in-a-pinch\",\"url\":\"https://pokeapi.co/api/v2/item-category/5/\"},{\"name\":\"picky-healing\",\"url\":\"https://pokeapi.co/api/v2/item-category/6/\"},{\"name\":\"type-protection\",\"url\":\"https://pokeapi.co/api/v2/item-category/7/\"},{\"name\":\"baking-only\",\"url\":\"https://pokeapi.co/api/v2/item-category/8/\"},{\"name\":\"collectibles\",\"url\":\"https://pokeapi.co/api/v2/item-category/9/\"},{\"name\":\"evolution\",\"url\":\"https://pokeapi.co/api/v2/item-category/10/\"},{\"name\":\"spelunking\",\"url\":\"https://pokeapi.co/api/v2/item-category/11/\"},{\"name\":\"held-items\",\"url\":\"https://pokeapi.co/api/v2/item-category/12/\"},{\"name\":\"choice\",\"url\":\"https://pokeapi.co/api/v2/item-category/13/\"},{\"name\":\"effort-training\",\"url\":\"https://pokeapi.co/api/v2/item-category/14/\"},{\"name\":\"bad-held-items\",\"url\":\"https://pokeapi.co/api/v2/item-category/15/\"},{\"name\":\"training\",\"url\":\"https://pokeapi.co/api/v2/item-category/16/\"},{\"name\":\"plates\",\"url\":\"https://pokeapi.co/api/v2/item-category/17/\"},{\"name\":\"species-specific\",\"url\":\"https://pokeapi.co/api/v2/item-category/18/\"},{\"name\":\"type-enhancement\",\"url\":\"https://pokeapi.co/api/v2/item-category/19/\"},{\"name\":\"event-items\",\"url\":\"https://pokeapi.co/api/v2/item-category/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"52e09492-69f2-459c-ac3a-de0c4dea567e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/generation/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,133,10,10,9,97,98,105,108,105,116,105,101,115,18,247,9,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,40,10,11,109,97,105,110,95,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,247,23,10,5,109,111,118,101,115,18,237,23,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,159,2,10,5,110,97,109,101,115,18,149,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,223,22,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,203,22,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,11,10,5,116,121,112,101,115,18,2,8,1,18,101,10,14,118,101,114,115,105,111,110,95,103,114,111,117,112,115,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"abilities\":[{\"name\":\"tangled-feet\",\"url\":\"https://pokeapi.co/api/v2/ability/77/\"},{\"name\":\"motor-drive\",\"url\":\"https://pokeapi.co/api/v2/ability/78/\"},{\"name\":\"rivalry\",\"url\":\"https://pokeapi.co/api/v2/ability/79/\"},{\"name\":\"steadfast\",\"url\":\"https://pokeapi.co/api/v2/ability/80/\"},{\"name\":\"snow-cloak\",\"url\":\"https://pokeapi.co/api/v2/ability/81/\"},{\"name\":\"gluttony\",\"url\":\"https://pokeapi.co/api/v2/ability/82/\"},{\"name\":\"anger-point\",\"url\":\"https://pokeapi.co/api/v2/ability/83/\"},{\"name\":\"unburden\",\"url\":\"https://pokeapi.co/api/v2/ability/84/\"},{\"name\":\"heatproof\",\"url\":\"https://pokeapi.co/api/v2/ability/85/\"},{\"name\":\"simple\",\"url\":\"https://pokeapi.co/api/v2/ability/86/\"},{\"name\":\"dry-skin\",\"url\":\"https://pokeapi.co/api/v2/ability/87/\"},{\"name\":\"download\",\"url\":\"https://pokeapi.co/api/v2/ability/88/\"},{\"name\":\"iron-fist\",\"url\":\"https://pokeapi.co/api/v2/ability/89/\"},{\"name\":\"poison-heal\",\"url\":\"https://pokeapi.co/api/v2/ability/90/\"},{\"name\":\"adaptability\",\"url\":\"https://pokeapi.co/api/v2/ability/91/\"},{\"name\":\"skill-link\",\"url\":\"https://pokeapi.co/api/v2/ability/92/\"},{\"name\":\"hydration\",\"url\":\"https://pokeapi.co/api/v2/ability/93/\"},{\"name\":\"solar-power\",\"url\":\"https://pokeapi.co/api/v2/ability/94/\"},{\"name\":\"quick-feet\",\"url\":\"https://pokeapi.co/api/v2/ability/95/\"},{\"name\":\"normalize\",\"url\":\"https://pokeapi.co/api/v2/ability/96/\"},{\"name\":\"sniper\",\"url\":\"https://pokeapi.co/api/v2/ability/97/\"},{\"name\":\"magic-guard\",\"url\":\"https://pokeapi.co/api/v2/ability/98/\"},{\"name\":\"no-guard\",\"url\":\"https://pokeapi.co/api/v2/ability/99/\"},{\"name\":\"stall\",\"url\":\"https://pokeapi.co/api/v2/ability/100/\"},{\"name\":\"technician\",\"url\":\"https://pokeapi.co/api/v2/ability/101/\"},{\"name\":\"leaf-guard\",\"url\":\"https://pokeapi.co/api/v2/ability/102/\"},{\"name\":\"klutz\",\"url\":\"https://pokeapi.co/api/v2/ability/103/\"},{\"name\":\"mold-breaker\",\"url\":\"https://pokeapi.co/api/v2/ability/104/\"},{\"name\":\"super-luck\",\"url\":\"https://pokeapi.co/api/v2/ability/105/\"},{\"name\":\"aftermath\",\"url\":\"https://pokeapi.co/api/v2/ability/106/\"},{\"name\":\"anticipation\",\"url\":\"https://pokeapi.co/api/v2/ability/107/\"},{\"name\":\"forewarn\",\"url\":\"https://pokeapi.co/api/v2/ability/108/\"},{\"name\":\"unaware\",\"url\":\"https://pokeapi.co/api/v2/ability/109/\"},{\"name\":\"tinted-lens\",\"url\":\"https://pokeapi.co/api/v2/ability/110/\"},{\"name\":\"filter\",\"url\":\"https://pokeapi.co/api/v2/ability/111/\"},{\"name\":\"slow-start\",\"url\":\"https://pokeapi.co/api/v2/ability/112/\"},{\"name\":\"scrappy\",\"url\":\"https://pokeapi.co/api/v2/ability/113/\"},{\"name\":\"storm-drain\",\"url\":\"https://pokeapi.co/api/v2/ability/114/\"},{\"name\":\"ice-body\",\"url\":\"https://pokeapi.co/api/v2/ability/115/\"},{\"name\":\"solid-rock\",\"url\":\"https://pokeapi.co/api/v2/ability/116/\"},{\"name\":\"snow-warning\",\"url\":\"https://pokeapi.co/api/v2/ability/117/\"},{\"name\":\"honey-gather\",\"url\":\"https://pokeapi.co/api/v2/ability/118/\"},{\"name\":\"frisk\",\"url\":\"https://pokeapi.co/api/v2/ability/119/\"},{\"name\":\"reckless\",\"url\":\"https://pokeapi.co/api/v2/ability/120/\"},{\"name\":\"multitype\",\"url\":\"https://pokeapi.co/api/v2/ability/121/\"},{\"name\":\"flower-gift\",\"url\":\"https://pokeapi.co/api/v2/ability/122/\"},{\"name\":\"bad-dreams\",\"url\":\"https://pokeapi.co/api/v2/ability/123/\"}],\"id\":4,\"main_region\":{\"name\":\"sinnoh\",\"url\":\"https://pokeapi.co/api/v2/region/4/\"},\"moves\":[{\"name\":\"chatter\",\"url\":\"https://pokeapi.co/api/v2/move/448/\"},{\"name\":\"grass-knot\",\"url\":\"https://pokeapi.co/api/v2/move/447/\"},{\"name\":\"stealth-rock\",\"url\":\"https://pokeapi.co/api/v2/move/446/\"},{\"name\":\"captivate\",\"url\":\"https://pokeapi.co/api/v2/move/445/\"},{\"name\":\"stone-edge\",\"url\":\"https://pokeapi.co/api/v2/move/444/\"},{\"name\":\"magnet-bomb\",\"url\":\"https://pokeapi.co/api/v2/move/443/\"},{\"name\":\"iron-head\",\"url\":\"https://pokeapi.co/api/v2/move/442/\"},{\"name\":\"gunk-shot\",\"url\":\"https://pokeapi.co/api/v2/move/441/\"},{\"name\":\"cross-poison\",\"url\":\"https://pokeapi.co/api/v2/move/440/\"},{\"name\":\"rock-wrecker\",\"url\":\"https://pokeapi.co/api/v2/move/439/\"},{\"name\":\"power-whip\",\"url\":\"https://pokeapi.co/api/v2/move/438/\"},{\"name\":\"leaf-storm\",\"url\":\"https://pokeapi.co/api/v2/move/437/\"},{\"name\":\"lava-plume\",\"url\":\"https://pokeapi.co/api/v2/move/436/\"},{\"name\":\"discharge\",\"url\":\"https://pokeapi.co/api/v2/move/435/\"},{\"name\":\"draco-meteor\",\"url\":\"https://pokeapi.co/api/v2/move/434/\"},{\"name\":\"trick-room\",\"url\":\"https://pokeapi.co/api/v2/move/433/\"},{\"name\":\"defog\",\"url\":\"https://pokeapi.co/api/v2/move/432/\"},{\"name\":\"rock-climb\",\"url\":\"https://pokeapi.co/api/v2/move/431/\"},{\"name\":\"flash-cannon\",\"url\":\"https://pokeapi.co/api/v2/move/430/\"},{\"name\":\"mirror-shot\",\"url\":\"https://pokeapi.co/api/v2/move/429/\"},{\"name\":\"zen-headbutt\",\"url\":\"https://pokeapi.co/api/v2/move/428/\"},{\"name\":\"psycho-cut\",\"url\":\"https://pokeapi.co/api/v2/move/427/\"},{\"name\":\"mud-bomb\",\"url\":\"https://pokeapi.co/api/v2/move/426/\"},{\"name\":\"shadow-sneak\",\"url\":\"https://pokeapi.co/api/v2/move/425/\"},{\"name\":\"fire-fang\",\"url\":\"https://pokeapi.co/api/v2/move/424/\"},{\"name\":\"ice-fang\",\"url\":\"https://pokeapi.co/api/v2/move/423/\"},{\"name\":\"thunder-fang\",\"url\":\"https://pokeapi.co/api/v2/move/422/\"},{\"name\":\"shadow-claw\",\"url\":\"https://pokeapi.co/api/v2/move/421/\"},{\"name\":\"ice-shard\",\"url\":\"https://pokeapi.co/api/v2/move/420/\"},{\"name\":\"avalanche\",\"url\":\"https://pokeapi.co/api/v2/move/419/\"},{\"name\":\"bullet-punch\",\"url\":\"https://pokeapi.co/api/v2/move/418/\"},{\"name\":\"nasty-plot\",\"url\":\"https://pokeapi.co/api/v2/move/417/\"},{\"name\":\"giga-impact\",\"url\":\"https://pokeapi.co/api/v2/move/416/\"},{\"name\":\"switcheroo\",\"url\":\"https://pokeapi.co/api/v2/move/415/\"},{\"name\":\"earth-power\",\"url\":\"https://pokeapi.co/api/v2/move/414/\"},{\"name\":\"brave-bird\",\"url\":\"https://pokeapi.co/api/v2/move/413/\"},{\"name\":\"energy-ball\",\"url\":\"https://pokeapi.co/api/v2/move/412/\"},{\"name\":\"focus-blast\",\"url\":\"https://pokeapi.co/api/v2/move/411/\"},{\"name\":\"vacuum-wave\",\"url\":\"https://pokeapi.co/api/v2/move/410/\"},{\"name\":\"drain-punch\",\"url\":\"https://pokeapi.co/api/v2/move/409/\"},{\"name\":\"power-gem\",\"url\":\"https://pokeapi.co/api/v2/move/408/\"},{\"name\":\"dragon-rush\",\"url\":\"https://pokeapi.co/api/v2/move/407/\"},{\"name\":\"dragon-pulse\",\"url\":\"https://pokeapi.co/api/v2/move/406/\"},{\"name\":\"bug-buzz\",\"url\":\"https://pokeapi.co/api/v2/move/405/\"},{\"name\":\"x-scissor\",\"url\":\"https://pokeapi.co/api/v2/move/404/\"},{\"name\":\"air-slash\",\"url\":\"https://pokeapi.co/api/v2/move/403/\"},{\"name\":\"seed-bomb\",\"url\":\"https://pokeapi.co/api/v2/move/402/\"},{\"name\":\"aqua-tail\",\"url\":\"https://pokeapi.co/api/v2/move/401/\"},{\"name\":\"night-slash\",\"url\":\"https://pokeapi.co/api/v2/move/400/\"},{\"name\":\"dark-pulse\",\"url\":\"https://pokeapi.co/api/v2/move/399/\"},{\"name\":\"poison-jab\",\"url\":\"https://pokeapi.co/api/v2/move/398/\"},{\"name\":\"rock-polish\",\"url\":\"https://pokeapi.co/api/v2/move/397/\"},{\"name\":\"shadow-force\",\"url\":\"https://pokeapi.co/api/v2/move/467/\"},{\"name\":\"ominous-wind\",\"url\":\"https://pokeapi.co/api/v2/move/466/\"},{\"name\":\"seed-flare\",\"url\":\"https://pokeapi.co/api/v2/move/465/\"},{\"name\":\"dark-void\",\"url\":\"https://pokeapi.co/api/v2/move/464/\"},{\"name\":\"magma-storm\",\"url\":\"https://pokeapi.co/api/v2/move/463/\"},{\"name\":\"crush-grip\",\"url\":\"https://pokeapi.co/api/v2/move/462/\"},{\"name\":\"lunar-dance\",\"url\":\"https://pokeapi.co/api/v2/move/461/\"},{\"name\":\"spacial-rend\",\"url\":\"https://pokeapi.co/api/v2/move/460/\"},{\"name\":\"roar-of-time\",\"url\":\"https://pokeapi.co/api/v2/move/459/\"},{\"name\":\"double-hit\",\"url\":\"https://pokeapi.co/api/v2/move/458/\"},{\"name\":\"head-smash\",\"url\":\"https://pokeapi.co/api/v2/move/457/\"},{\"name\":\"heal-order\",\"url\":\"https://pokeapi.co/api/v2/move/456/\"},{\"name\":\"defend-order\",\"url\":\"https://pokeapi.co/api/v2/move/455/\"},{\"name\":\"attack-order\",\"url\":\"https://pokeapi.co/api/v2/move/454/\"},{\"name\":\"aqua-jet\",\"url\":\"https://pokeapi.co/api/v2/move/453/\"},{\"name\":\"wood-hammer\",\"url\":\"https://pokeapi.co/api/v2/move/452/\"},{\"name\":\"charge-beam\",\"url\":\"https://pokeapi.co/api/v2/move/451/\"},{\"name\":\"bug-bite\",\"url\":\"https://pokeapi.co/api/v2/move/450/\"},{\"name\":\"judgment\",\"url\":\"https://pokeapi.co/api/v2/move/449/\"},{\"name\":\"aura-sphere\",\"url\":\"https://pokeapi.co/api/v2/move/396/\"},{\"name\":\"force-palm\",\"url\":\"https://pokeapi.co/api/v2/move/395/\"},{\"name\":\"flare-blitz\",\"url\":\"https://pokeapi.co/api/v2/move/394/\"},{\"name\":\"magnet-rise\",\"url\":\"https://pokeapi.co/api/v2/move/393/\"},{\"name\":\"aqua-ring\",\"url\":\"https://pokeapi.co/api/v2/move/392/\"},{\"name\":\"heart-swap\",\"url\":\"https://pokeapi.co/api/v2/move/391/\"},{\"name\":\"toxic-spikes\",\"url\":\"https://pokeapi.co/api/v2/move/390/\"},{\"name\":\"sucker-punch\",\"url\":\"https://pokeapi.co/api/v2/move/389/\"},{\"name\":\"worry-seed\",\"url\":\"https://pokeapi.co/api/v2/move/388/\"},{\"name\":\"last-resort\",\"url\":\"https://pokeapi.co/api/v2/move/387/\"},{\"name\":\"punishment\",\"url\":\"https://pokeapi.co/api/v2/move/386/\"},{\"name\":\"guard-swap\",\"url\":\"https://pokeapi.co/api/v2/move/385/\"},{\"name\":\"power-swap\",\"url\":\"https://pokeapi.co/api/v2/move/384/\"},{\"name\":\"copycat\",\"url\":\"https://pokeapi.co/api/v2/move/383/\"},{\"name\":\"me-first\",\"url\":\"https://pokeapi.co/api/v2/move/382/\"},{\"name\":\"lucky-chant\",\"url\":\"https://pokeapi.co/api/v2/move/381/\"},{\"name\":\"gastro-acid\",\"url\":\"https://pokeapi.co/api/v2/move/380/\"},{\"name\":\"power-trick\",\"url\":\"https://pokeapi.co/api/v2/move/379/\"},{\"name\":\"wring-out\",\"url\":\"https://pokeapi.co/api/v2/move/378/\"},{\"name\":\"heal-block\",\"url\":\"https://pokeapi.co/api/v2/move/377/\"},{\"name\":\"trump-card\",\"url\":\"https://pokeapi.co/api/v2/move/376/\"},{\"name\":\"psycho-shift\",\"url\":\"https://pokeapi.co/api/v2/move/375/\"},{\"name\":\"fling\",\"url\":\"https://pokeapi.co/api/v2/move/374/\"},{\"name\":\"embargo\",\"url\":\"https://pokeapi.co/api/v2/move/373/\"},{\"name\":\"assurance\",\"url\":\"https://pokeapi.co/api/v2/move/372/\"},{\"name\":\"payback\",\"url\":\"https://pokeapi.co/api/v2/move/371/\"},{\"name\":\"close-combat\",\"url\":\"https://pokeapi.co/api/v2/move/370/\"},{\"name\":\"u-turn\",\"url\":\"https://pokeapi.co/api/v2/move/369/\"},{\"name\":\"metal-burst\",\"url\":\"https://pokeapi.co/api/v2/move/368/\"},{\"name\":\"acupressure\",\"url\":\"https://pokeapi.co/api/v2/move/367/\"},{\"name\":\"tailwind\",\"url\":\"https://pokeapi.co/api/v2/move/366/\"},{\"name\":\"pluck\",\"url\":\"https://pokeapi.co/api/v2/move/365/\"},{\"name\":\"feint\",\"url\":\"https://pokeapi.co/api/v2/move/364/\"},{\"name\":\"natural-gift\",\"url\":\"https://pokeapi.co/api/v2/move/363/\"},{\"name\":\"brine\",\"url\":\"https://pokeapi.co/api/v2/move/362/\"},{\"name\":\"healing-wish\",\"url\":\"https://pokeapi.co/api/v2/move/361/\"},{\"name\":\"gyro-ball\",\"url\":\"https://pokeapi.co/api/v2/move/360/\"},{\"name\":\"hammer-arm\",\"url\":\"https://pokeapi.co/api/v2/move/359/\"},{\"name\":\"wake-up-slap\",\"url\":\"https://pokeapi.co/api/v2/move/358/\"},{\"name\":\"miracle-eye\",\"url\":\"https://pokeapi.co/api/v2/move/357/\"},{\"name\":\"gravity\",\"url\":\"https://pokeapi.co/api/v2/move/356/\"},{\"name\":\"roost\",\"url\":\"https://pokeapi.co/api/v2/move/355/\"}],\"name\":\"generation-iv\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"だいよんせだい\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Génération IV\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Generation IV\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Generation IV\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"第四世代\"}],\"pokemon_species\":[{\"name\":\"froslass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/478/\"},{\"name\":\"dusknoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/477/\"},{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/476/\"},{\"name\":\"gallade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/475/\"},{\"name\":\"porygon-z\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/474/\"},{\"name\":\"mamoswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/473/\"},{\"name\":\"gliscor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/472/\"},{\"name\":\"glaceon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/471/\"},{\"name\":\"leafeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/470/\"},{\"name\":\"yanmega\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/469/\"},{\"name\":\"togekiss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/468/\"},{\"name\":\"magmortar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/467/\"},{\"name\":\"electivire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/466/\"},{\"name\":\"tangrowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/465/\"},{\"name\":\"rhyperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/464/\"},{\"name\":\"lickilicky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/463/\"},{\"name\":\"magnezone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/462/\"},{\"name\":\"weavile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/461/\"},{\"name\":\"abomasnow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/460/\"},{\"name\":\"lumineon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/457/\"},{\"name\":\"toxicroak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/454/\"},{\"name\":\"drapion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/452/\"},{\"name\":\"hippowdon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/450/\"},{\"name\":\"lucario\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/448/\"},{\"name\":\"garchomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/445/\"},{\"name\":\"gabite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/444/\"},{\"name\":\"bronzong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/437/\"},{\"name\":\"skuntank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/435/\"},{\"name\":\"purugly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/432/\"},{\"name\":\"honchkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/430/\"},{\"name\":\"mismagius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/429/\"},{\"name\":\"lopunny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/428/\"},{\"name\":\"drifblim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/426/\"},{\"name\":\"ambipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/424/\"},{\"name\":\"gastrodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/423/\"},{\"name\":\"cherrim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/421/\"},{\"name\":\"floatzel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/419/\"},{\"name\":\"vespiquen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/416/\"},{\"name\":\"mothim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/414/\"},{\"name\":\"wormadam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/413/\"},{\"name\":\"bastiodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/411/\"},{\"name\":\"rampardos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/409/\"},{\"name\":\"roserade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/407/\"},{\"name\":\"luxray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/405/\"},{\"name\":\"luxio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/404/\"},{\"name\":\"kricketune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/402/\"},{\"name\":\"bibarel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/400/\"},{\"name\":\"staraptor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/398/\"},{\"name\":\"staravia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/397/\"},{\"name\":\"empoleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/395/\"},{\"name\":\"prinplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/394/\"},{\"name\":\"infernape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/392/\"},{\"name\":\"monferno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/391/\"},{\"name\":\"torterra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/389/\"},{\"name\":\"grotle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/388/\"},{\"name\":\"arceus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/493/\"},{\"name\":\"shaymin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/492/\"},{\"name\":\"darkrai\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/491/\"},{\"name\":\"manaphy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/490/\"},{\"name\":\"phione\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/489/\"},{\"name\":\"cresselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/488/\"},{\"name\":\"giratina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/487/\"},{\"name\":\"regigigas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/486/\"},{\"name\":\"heatran\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/485/\"},{\"name\":\"palkia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/484/\"},{\"name\":\"dialga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/483/\"},{\"name\":\"azelf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/482/\"},{\"name\":\"mesprit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/481/\"},{\"name\":\"uxie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/480/\"},{\"name\":\"rotom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/479/\"},{\"name\":\"snover\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/459/\"},{\"name\":\"mantyke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/458/\"},{\"name\":\"finneon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/456/\"},{\"name\":\"carnivine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/455/\"},{\"name\":\"croagunk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/453/\"},{\"name\":\"skorupi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/451/\"},{\"name\":\"hippopotas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/449/\"},{\"name\":\"riolu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/447/\"},{\"name\":\"munchlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/446/\"},{\"name\":\"gible\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/443/\"},{\"name\":\"spiritomb\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/442/\"},{\"name\":\"chatot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/441/\"},{\"name\":\"happiny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/440/\"},{\"name\":\"mime-jr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/439/\"},{\"name\":\"bonsly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/438/\"},{\"name\":\"bronzor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/436/\"},{\"name\":\"stunky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/434/\"},{\"name\":\"chingling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/433/\"},{\"name\":\"glameow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/431/\"},{\"name\":\"buneary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/427/\"},{\"name\":\"drifloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/425/\"},{\"name\":\"shellos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/422/\"},{\"name\":\"cherubi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/420/\"},{\"name\":\"buizel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/418/\"},{\"name\":\"pachirisu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/417/\"},{\"name\":\"combee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/415/\"},{\"name\":\"burmy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/412/\"},{\"name\":\"shieldon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/410/\"},{\"name\":\"cranidos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/408/\"},{\"name\":\"budew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/406/\"},{\"name\":\"shinx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/403/\"},{\"name\":\"kricketot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/401/\"},{\"name\":\"bidoof\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/399/\"},{\"name\":\"starly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/396/\"},{\"name\":\"piplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/393/\"},{\"name\":\"chimchar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/390/\"},{\"name\":\"turtwig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/387/\"}],\"types\":[],\"version_groups\":[{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"},{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"},{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}]}","asText":null}}},"tags":[]},{"uuid":"cfdb5022-2e98-463c-a963-4f76a17db111","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/generation/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,233,5,10,9,97,98,105,108,105,116,105,101,115,18,219,5,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,40,10,11,109,97,105,110,95,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,150,13,10,5,109,111,118,101,115,18,140,13,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,159,2,10,5,110,97,109,101,115,18,149,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,174,15,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,154,15,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,38,10,5,116,121,112,101,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,74,10,14,118,101,114,115,105,111,110,95,103,114,111,117,112,115,18,56,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"abilities\":[{\"name\":\"aroma-veil\",\"url\":\"https://pokeapi.co/api/v2/ability/165/\"},{\"name\":\"flower-veil\",\"url\":\"https://pokeapi.co/api/v2/ability/166/\"},{\"name\":\"cheek-pouch\",\"url\":\"https://pokeapi.co/api/v2/ability/167/\"},{\"name\":\"protean\",\"url\":\"https://pokeapi.co/api/v2/ability/168/\"},{\"name\":\"fur-coat\",\"url\":\"https://pokeapi.co/api/v2/ability/169/\"},{\"name\":\"magician\",\"url\":\"https://pokeapi.co/api/v2/ability/170/\"},{\"name\":\"bulletproof\",\"url\":\"https://pokeapi.co/api/v2/ability/171/\"},{\"name\":\"competitive\",\"url\":\"https://pokeapi.co/api/v2/ability/172/\"},{\"name\":\"strong-jaw\",\"url\":\"https://pokeapi.co/api/v2/ability/173/\"},{\"name\":\"refrigerate\",\"url\":\"https://pokeapi.co/api/v2/ability/174/\"},{\"name\":\"sweet-veil\",\"url\":\"https://pokeapi.co/api/v2/ability/175/\"},{\"name\":\"stance-change\",\"url\":\"https://pokeapi.co/api/v2/ability/176/\"},{\"name\":\"gale-wings\",\"url\":\"https://pokeapi.co/api/v2/ability/177/\"},{\"name\":\"mega-launcher\",\"url\":\"https://pokeapi.co/api/v2/ability/178/\"},{\"name\":\"grass-pelt\",\"url\":\"https://pokeapi.co/api/v2/ability/179/\"},{\"name\":\"symbiosis\",\"url\":\"https://pokeapi.co/api/v2/ability/180/\"},{\"name\":\"tough-claws\",\"url\":\"https://pokeapi.co/api/v2/ability/181/\"},{\"name\":\"pixilate\",\"url\":\"https://pokeapi.co/api/v2/ability/182/\"},{\"name\":\"gooey\",\"url\":\"https://pokeapi.co/api/v2/ability/183/\"},{\"name\":\"aerilate\",\"url\":\"https://pokeapi.co/api/v2/ability/184/\"},{\"name\":\"parental-bond\",\"url\":\"https://pokeapi.co/api/v2/ability/185/\"},{\"name\":\"dark-aura\",\"url\":\"https://pokeapi.co/api/v2/ability/186/\"},{\"name\":\"fairy-aura\",\"url\":\"https://pokeapi.co/api/v2/ability/187/\"},{\"name\":\"aura-break\",\"url\":\"https://pokeapi.co/api/v2/ability/188/\"},{\"name\":\"primordial-sea\",\"url\":\"https://pokeapi.co/api/v2/ability/189/\"},{\"name\":\"desolate-land\",\"url\":\"https://pokeapi.co/api/v2/ability/190/\"},{\"name\":\"delta-stream\",\"url\":\"https://pokeapi.co/api/v2/ability/191/\"}],\"id\":6,\"main_region\":{\"name\":\"kalos\",\"url\":\"https://pokeapi.co/api/v2/region/6/\"},\"moves\":[{\"name\":\"hyperspace-fury\",\"url\":\"https://pokeapi.co/api/v2/move/621/\"},{\"name\":\"dragon-ascent\",\"url\":\"https://pokeapi.co/api/v2/move/620/\"},{\"name\":\"precipice-blades\",\"url\":\"https://pokeapi.co/api/v2/move/619/\"},{\"name\":\"origin-pulse\",\"url\":\"https://pokeapi.co/api/v2/move/618/\"},{\"name\":\"light-of-ruin\",\"url\":\"https://pokeapi.co/api/v2/move/617/\"},{\"name\":\"lands-wrath\",\"url\":\"https://pokeapi.co/api/v2/move/616/\"},{\"name\":\"thousand-waves\",\"url\":\"https://pokeapi.co/api/v2/move/615/\"},{\"name\":\"thousand-arrows\",\"url\":\"https://pokeapi.co/api/v2/move/614/\"},{\"name\":\"oblivion-wing\",\"url\":\"https://pokeapi.co/api/v2/move/613/\"},{\"name\":\"power-up-punch\",\"url\":\"https://pokeapi.co/api/v2/move/612/\"},{\"name\":\"infestation\",\"url\":\"https://pokeapi.co/api/v2/move/611/\"},{\"name\":\"hold-back\",\"url\":\"https://pokeapi.co/api/v2/move/610/\"},{\"name\":\"nuzzle\",\"url\":\"https://pokeapi.co/api/v2/move/609/\"},{\"name\":\"baby-doll-eyes\",\"url\":\"https://pokeapi.co/api/v2/move/608/\"},{\"name\":\"hold-hands\",\"url\":\"https://pokeapi.co/api/v2/move/607/\"},{\"name\":\"celebrate\",\"url\":\"https://pokeapi.co/api/v2/move/606/\"},{\"name\":\"dazzling-gleam\",\"url\":\"https://pokeapi.co/api/v2/move/605/\"},{\"name\":\"electric-terrain\",\"url\":\"https://pokeapi.co/api/v2/move/604/\"},{\"name\":\"happy-hour\",\"url\":\"https://pokeapi.co/api/v2/move/603/\"},{\"name\":\"magnetic-flux\",\"url\":\"https://pokeapi.co/api/v2/move/602/\"},{\"name\":\"geomancy\",\"url\":\"https://pokeapi.co/api/v2/move/601/\"},{\"name\":\"powder\",\"url\":\"https://pokeapi.co/api/v2/move/600/\"},{\"name\":\"venom-drench\",\"url\":\"https://pokeapi.co/api/v2/move/599/\"},{\"name\":\"eerie-impulse\",\"url\":\"https://pokeapi.co/api/v2/move/598/\"},{\"name\":\"aromatic-mist\",\"url\":\"https://pokeapi.co/api/v2/move/597/\"},{\"name\":\"spiky-shield\",\"url\":\"https://pokeapi.co/api/v2/move/596/\"},{\"name\":\"mystical-fire\",\"url\":\"https://pokeapi.co/api/v2/move/595/\"},{\"name\":\"water-shuriken\",\"url\":\"https://pokeapi.co/api/v2/move/594/\"},{\"name\":\"hyperspace-hole\",\"url\":\"https://pokeapi.co/api/v2/move/593/\"},{\"name\":\"steam-eruption\",\"url\":\"https://pokeapi.co/api/v2/move/592/\"},{\"name\":\"diamond-storm\",\"url\":\"https://pokeapi.co/api/v2/move/591/\"},{\"name\":\"confide\",\"url\":\"https://pokeapi.co/api/v2/move/590/\"},{\"name\":\"play-nice\",\"url\":\"https://pokeapi.co/api/v2/move/589/\"},{\"name\":\"kings-shield\",\"url\":\"https://pokeapi.co/api/v2/move/588/\"},{\"name\":\"fairy-lock\",\"url\":\"https://pokeapi.co/api/v2/move/587/\"},{\"name\":\"boomburst\",\"url\":\"https://pokeapi.co/api/v2/move/586/\"},{\"name\":\"moonblast\",\"url\":\"https://pokeapi.co/api/v2/move/585/\"},{\"name\":\"fairy-wind\",\"url\":\"https://pokeapi.co/api/v2/move/584/\"},{\"name\":\"play-rough\",\"url\":\"https://pokeapi.co/api/v2/move/583/\"},{\"name\":\"electrify\",\"url\":\"https://pokeapi.co/api/v2/move/582/\"},{\"name\":\"misty-terrain\",\"url\":\"https://pokeapi.co/api/v2/move/581/\"},{\"name\":\"grassy-terrain\",\"url\":\"https://pokeapi.co/api/v2/move/580/\"},{\"name\":\"flower-shield\",\"url\":\"https://pokeapi.co/api/v2/move/579/\"},{\"name\":\"crafty-shield\",\"url\":\"https://pokeapi.co/api/v2/move/578/\"},{\"name\":\"draining-kiss\",\"url\":\"https://pokeapi.co/api/v2/move/577/\"},{\"name\":\"topsy-turvy\",\"url\":\"https://pokeapi.co/api/v2/move/576/\"},{\"name\":\"parting-shot\",\"url\":\"https://pokeapi.co/api/v2/move/575/\"},{\"name\":\"disarming-voice\",\"url\":\"https://pokeapi.co/api/v2/move/574/\"},{\"name\":\"freeze-dry\",\"url\":\"https://pokeapi.co/api/v2/move/573/\"},{\"name\":\"petal-blizzard\",\"url\":\"https://pokeapi.co/api/v2/move/572/\"},{\"name\":\"forests-curse\",\"url\":\"https://pokeapi.co/api/v2/move/571/\"},{\"name\":\"parabolic-charge\",\"url\":\"https://pokeapi.co/api/v2/move/570/\"},{\"name\":\"ion-deluge\",\"url\":\"https://pokeapi.co/api/v2/move/569/\"},{\"name\":\"noble-roar\",\"url\":\"https://pokeapi.co/api/v2/move/568/\"},{\"name\":\"trick-or-treat\",\"url\":\"https://pokeapi.co/api/v2/move/567/\"},{\"name\":\"phantom-force\",\"url\":\"https://pokeapi.co/api/v2/move/566/\"},{\"name\":\"fell-stinger\",\"url\":\"https://pokeapi.co/api/v2/move/565/\"},{\"name\":\"sticky-web\",\"url\":\"https://pokeapi.co/api/v2/move/564/\"},{\"name\":\"rototiller\",\"url\":\"https://pokeapi.co/api/v2/move/563/\"},{\"name\":\"belch\",\"url\":\"https://pokeapi.co/api/v2/move/562/\"},{\"name\":\"mat-block\",\"url\":\"https://pokeapi.co/api/v2/move/561/\"},{\"name\":\"flying-press\",\"url\":\"https://pokeapi.co/api/v2/move/560/\"}],\"name\":\"generation-vi\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"だいろくせだい\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Génération VI\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Generation VI\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Generation VI\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"第六世代\"}],\"pokemon_species\":[{\"name\":\"noivern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/715/\"},{\"name\":\"avalugg\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/713/\"},{\"name\":\"gourgeist\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/711/\"},{\"name\":\"trevenant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/709/\"},{\"name\":\"goodra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/706/\"},{\"name\":\"sliggoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/705/\"},{\"name\":\"sylveon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/700/\"},{\"name\":\"aurorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/699/\"},{\"name\":\"tyrantrum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/697/\"},{\"name\":\"heliolisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/695/\"},{\"name\":\"clawitzer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/693/\"},{\"name\":\"dragalge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/691/\"},{\"name\":\"barbaracle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/689/\"},{\"name\":\"malamar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/687/\"},{\"name\":\"slurpuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/685/\"},{\"name\":\"aromatisse\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/683/\"},{\"name\":\"aegislash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/681/\"},{\"name\":\"doublade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/680/\"},{\"name\":\"meowstic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/678/\"},{\"name\":\"pangoro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/675/\"},{\"name\":\"gogoat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/673/\"},{\"name\":\"florges\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/671/\"},{\"name\":\"floette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/670/\"},{\"name\":\"pyroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/668/\"},{\"name\":\"vivillon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/666/\"},{\"name\":\"spewpa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/665/\"},{\"name\":\"talonflame\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/663/\"},{\"name\":\"fletchinder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/662/\"},{\"name\":\"diggersby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/660/\"},{\"name\":\"greninja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/658/\"},{\"name\":\"frogadier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/657/\"},{\"name\":\"delphox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/655/\"},{\"name\":\"braixen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/654/\"},{\"name\":\"chesnaught\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/652/\"},{\"name\":\"quilladin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/651/\"},{\"name\":\"volcanion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/721/\"},{\"name\":\"hoopa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/720/\"},{\"name\":\"diancie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/719/\"},{\"name\":\"zygarde\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/718/\"},{\"name\":\"yveltal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/717/\"},{\"name\":\"xerneas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/716/\"},{\"name\":\"noibat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/714/\"},{\"name\":\"bergmite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/712/\"},{\"name\":\"pumpkaboo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/710/\"},{\"name\":\"phantump\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/708/\"},{\"name\":\"klefki\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/707/\"},{\"name\":\"goomy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/704/\"},{\"name\":\"carbink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/703/\"},{\"name\":\"dedenne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/702/\"},{\"name\":\"hawlucha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/701/\"},{\"name\":\"amaura\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/698/\"},{\"name\":\"tyrunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/696/\"},{\"name\":\"helioptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/694/\"},{\"name\":\"clauncher\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/692/\"},{\"name\":\"skrelp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/690/\"},{\"name\":\"binacle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/688/\"},{\"name\":\"inkay\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/686/\"},{\"name\":\"swirlix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/684/\"},{\"name\":\"spritzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/682/\"},{\"name\":\"honedge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/679/\"},{\"name\":\"espurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/677/\"},{\"name\":\"furfrou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/676/\"},{\"name\":\"pancham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/674/\"},{\"name\":\"skiddo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/672/\"},{\"name\":\"flabebe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/669/\"},{\"name\":\"litleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/667/\"},{\"name\":\"scatterbug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/664/\"},{\"name\":\"fletchling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/661/\"},{\"name\":\"bunnelby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/659/\"},{\"name\":\"froakie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/656/\"},{\"name\":\"fennekin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/653/\"},{\"name\":\"chespin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/650/\"}],\"types\":[{\"name\":\"fairy\",\"url\":\"https://pokeapi.co/api/v2/type/18/\"}],\"version_groups\":[{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"},{\"name\":\"omega-ruby-alpha-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/16/\"}]}","asText":null}}},"tags":[]},{"uuid":"de2521b1-4c6b-40cb-bb65-6d48e5416307","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/generation/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,15,10,9,97,98,105,108,105,116,105,101,115,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,40,10,11,109,97,105,110,95,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,243,34,10,5,109,111,118,101,115,18,233,34,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,159,2,10,5,110,97,109,101,115,18,149,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,131,32,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,239,31,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,161,3,10,5,116,121,112,101,115,18,151,3,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,74,10,14,118,101,114,115,105,111,110,95,103,114,111,117,112,115,18,56,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"abilities\":[],\"id\":1,\"main_region\":{\"name\":\"kanto\",\"url\":\"https://pokeapi.co/api/v2/region/1/\"},\"moves\":[{\"name\":\"pound\",\"url\":\"https://pokeapi.co/api/v2/move/1/\"},{\"name\":\"karate-chop\",\"url\":\"https://pokeapi.co/api/v2/move/2/\"},{\"name\":\"double-slap\",\"url\":\"https://pokeapi.co/api/v2/move/3/\"},{\"name\":\"comet-punch\",\"url\":\"https://pokeapi.co/api/v2/move/4/\"},{\"name\":\"mega-punch\",\"url\":\"https://pokeapi.co/api/v2/move/5/\"},{\"name\":\"pay-day\",\"url\":\"https://pokeapi.co/api/v2/move/6/\"},{\"name\":\"fire-punch\",\"url\":\"https://pokeapi.co/api/v2/move/7/\"},{\"name\":\"ice-punch\",\"url\":\"https://pokeapi.co/api/v2/move/8/\"},{\"name\":\"thunder-punch\",\"url\":\"https://pokeapi.co/api/v2/move/9/\"},{\"name\":\"scratch\",\"url\":\"https://pokeapi.co/api/v2/move/10/\"},{\"name\":\"vice-grip\",\"url\":\"https://pokeapi.co/api/v2/move/11/\"},{\"name\":\"guillotine\",\"url\":\"https://pokeapi.co/api/v2/move/12/\"},{\"name\":\"razor-wind\",\"url\":\"https://pokeapi.co/api/v2/move/13/\"},{\"name\":\"swords-dance\",\"url\":\"https://pokeapi.co/api/v2/move/14/\"},{\"name\":\"cut\",\"url\":\"https://pokeapi.co/api/v2/move/15/\"},{\"name\":\"gust\",\"url\":\"https://pokeapi.co/api/v2/move/16/\"},{\"name\":\"wing-attack\",\"url\":\"https://pokeapi.co/api/v2/move/17/\"},{\"name\":\"whirlwind\",\"url\":\"https://pokeapi.co/api/v2/move/18/\"},{\"name\":\"fly\",\"url\":\"https://pokeapi.co/api/v2/move/19/\"},{\"name\":\"bind\",\"url\":\"https://pokeapi.co/api/v2/move/20/\"},{\"name\":\"slam\",\"url\":\"https://pokeapi.co/api/v2/move/21/\"},{\"name\":\"vine-whip\",\"url\":\"https://pokeapi.co/api/v2/move/22/\"},{\"name\":\"stomp\",\"url\":\"https://pokeapi.co/api/v2/move/23/\"},{\"name\":\"double-kick\",\"url\":\"https://pokeapi.co/api/v2/move/24/\"},{\"name\":\"mega-kick\",\"url\":\"https://pokeapi.co/api/v2/move/25/\"},{\"name\":\"jump-kick\",\"url\":\"https://pokeapi.co/api/v2/move/26/\"},{\"name\":\"rolling-kick\",\"url\":\"https://pokeapi.co/api/v2/move/27/\"},{\"name\":\"sand-attack\",\"url\":\"https://pokeapi.co/api/v2/move/28/\"},{\"name\":\"headbutt\",\"url\":\"https://pokeapi.co/api/v2/move/29/\"},{\"name\":\"horn-attack\",\"url\":\"https://pokeapi.co/api/v2/move/30/\"},{\"name\":\"fury-attack\",\"url\":\"https://pokeapi.co/api/v2/move/31/\"},{\"name\":\"horn-drill\",\"url\":\"https://pokeapi.co/api/v2/move/32/\"},{\"name\":\"tackle\",\"url\":\"https://pokeapi.co/api/v2/move/33/\"},{\"name\":\"body-slam\",\"url\":\"https://pokeapi.co/api/v2/move/34/\"},{\"name\":\"wrap\",\"url\":\"https://pokeapi.co/api/v2/move/35/\"},{\"name\":\"take-down\",\"url\":\"https://pokeapi.co/api/v2/move/36/\"},{\"name\":\"thrash\",\"url\":\"https://pokeapi.co/api/v2/move/37/\"},{\"name\":\"double-edge\",\"url\":\"https://pokeapi.co/api/v2/move/38/\"},{\"name\":\"tail-whip\",\"url\":\"https://pokeapi.co/api/v2/move/39/\"},{\"name\":\"poison-sting\",\"url\":\"https://pokeapi.co/api/v2/move/40/\"},{\"name\":\"twineedle\",\"url\":\"https://pokeapi.co/api/v2/move/41/\"},{\"name\":\"pin-missile\",\"url\":\"https://pokeapi.co/api/v2/move/42/\"},{\"name\":\"leer\",\"url\":\"https://pokeapi.co/api/v2/move/43/\"},{\"name\":\"bite\",\"url\":\"https://pokeapi.co/api/v2/move/44/\"},{\"name\":\"growl\",\"url\":\"https://pokeapi.co/api/v2/move/45/\"},{\"name\":\"roar\",\"url\":\"https://pokeapi.co/api/v2/move/46/\"},{\"name\":\"sing\",\"url\":\"https://pokeapi.co/api/v2/move/47/\"},{\"name\":\"supersonic\",\"url\":\"https://pokeapi.co/api/v2/move/48/\"},{\"name\":\"sonic-boom\",\"url\":\"https://pokeapi.co/api/v2/move/49/\"},{\"name\":\"disable\",\"url\":\"https://pokeapi.co/api/v2/move/50/\"},{\"name\":\"acid\",\"url\":\"https://pokeapi.co/api/v2/move/51/\"},{\"name\":\"ember\",\"url\":\"https://pokeapi.co/api/v2/move/52/\"},{\"name\":\"flamethrower\",\"url\":\"https://pokeapi.co/api/v2/move/53/\"},{\"name\":\"mist\",\"url\":\"https://pokeapi.co/api/v2/move/54/\"},{\"name\":\"water-gun\",\"url\":\"https://pokeapi.co/api/v2/move/55/\"},{\"name\":\"hydro-pump\",\"url\":\"https://pokeapi.co/api/v2/move/56/\"},{\"name\":\"surf\",\"url\":\"https://pokeapi.co/api/v2/move/57/\"},{\"name\":\"ice-beam\",\"url\":\"https://pokeapi.co/api/v2/move/58/\"},{\"name\":\"blizzard\",\"url\":\"https://pokeapi.co/api/v2/move/59/\"},{\"name\":\"psybeam\",\"url\":\"https://pokeapi.co/api/v2/move/60/\"},{\"name\":\"bubble-beam\",\"url\":\"https://pokeapi.co/api/v2/move/61/\"},{\"name\":\"aurora-beam\",\"url\":\"https://pokeapi.co/api/v2/move/62/\"},{\"name\":\"hyper-beam\",\"url\":\"https://pokeapi.co/api/v2/move/63/\"},{\"name\":\"peck\",\"url\":\"https://pokeapi.co/api/v2/move/64/\"},{\"name\":\"drill-peck\",\"url\":\"https://pokeapi.co/api/v2/move/65/\"},{\"name\":\"submission\",\"url\":\"https://pokeapi.co/api/v2/move/66/\"},{\"name\":\"low-kick\",\"url\":\"https://pokeapi.co/api/v2/move/67/\"},{\"name\":\"counter\",\"url\":\"https://pokeapi.co/api/v2/move/68/\"},{\"name\":\"seismic-toss\",\"url\":\"https://pokeapi.co/api/v2/move/69/\"},{\"name\":\"strength\",\"url\":\"https://pokeapi.co/api/v2/move/70/\"},{\"name\":\"absorb\",\"url\":\"https://pokeapi.co/api/v2/move/71/\"},{\"name\":\"mega-drain\",\"url\":\"https://pokeapi.co/api/v2/move/72/\"},{\"name\":\"leech-seed\",\"url\":\"https://pokeapi.co/api/v2/move/73/\"},{\"name\":\"growth\",\"url\":\"https://pokeapi.co/api/v2/move/74/\"},{\"name\":\"razor-leaf\",\"url\":\"https://pokeapi.co/api/v2/move/75/\"},{\"name\":\"solar-beam\",\"url\":\"https://pokeapi.co/api/v2/move/76/\"},{\"name\":\"poison-powder\",\"url\":\"https://pokeapi.co/api/v2/move/77/\"},{\"name\":\"stun-spore\",\"url\":\"https://pokeapi.co/api/v2/move/78/\"},{\"name\":\"sleep-powder\",\"url\":\"https://pokeapi.co/api/v2/move/79/\"},{\"name\":\"petal-dance\",\"url\":\"https://pokeapi.co/api/v2/move/80/\"},{\"name\":\"string-shot\",\"url\":\"https://pokeapi.co/api/v2/move/81/\"},{\"name\":\"dragon-rage\",\"url\":\"https://pokeapi.co/api/v2/move/82/\"},{\"name\":\"fire-spin\",\"url\":\"https://pokeapi.co/api/v2/move/83/\"},{\"name\":\"thunder-shock\",\"url\":\"https://pokeapi.co/api/v2/move/84/\"},{\"name\":\"thunderbolt\",\"url\":\"https://pokeapi.co/api/v2/move/85/\"},{\"name\":\"thunder-wave\",\"url\":\"https://pokeapi.co/api/v2/move/86/\"},{\"name\":\"thunder\",\"url\":\"https://pokeapi.co/api/v2/move/87/\"},{\"name\":\"rock-throw\",\"url\":\"https://pokeapi.co/api/v2/move/88/\"},{\"name\":\"earthquake\",\"url\":\"https://pokeapi.co/api/v2/move/89/\"},{\"name\":\"fissure\",\"url\":\"https://pokeapi.co/api/v2/move/90/\"},{\"name\":\"dig\",\"url\":\"https://pokeapi.co/api/v2/move/91/\"},{\"name\":\"toxic\",\"url\":\"https://pokeapi.co/api/v2/move/92/\"},{\"name\":\"confusion\",\"url\":\"https://pokeapi.co/api/v2/move/93/\"},{\"name\":\"psychic\",\"url\":\"https://pokeapi.co/api/v2/move/94/\"},{\"name\":\"hypnosis\",\"url\":\"https://pokeapi.co/api/v2/move/95/\"},{\"name\":\"meditate\",\"url\":\"https://pokeapi.co/api/v2/move/96/\"},{\"name\":\"agility\",\"url\":\"https://pokeapi.co/api/v2/move/97/\"},{\"name\":\"quick-attack\",\"url\":\"https://pokeapi.co/api/v2/move/98/\"},{\"name\":\"rage\",\"url\":\"https://pokeapi.co/api/v2/move/99/\"},{\"name\":\"teleport\",\"url\":\"https://pokeapi.co/api/v2/move/100/\"},{\"name\":\"night-shade\",\"url\":\"https://pokeapi.co/api/v2/move/101/\"},{\"name\":\"mimic\",\"url\":\"https://pokeapi.co/api/v2/move/102/\"},{\"name\":\"screech\",\"url\":\"https://pokeapi.co/api/v2/move/103/\"},{\"name\":\"double-team\",\"url\":\"https://pokeapi.co/api/v2/move/104/\"},{\"name\":\"recover\",\"url\":\"https://pokeapi.co/api/v2/move/105/\"},{\"name\":\"harden\",\"url\":\"https://pokeapi.co/api/v2/move/106/\"},{\"name\":\"minimize\",\"url\":\"https://pokeapi.co/api/v2/move/107/\"},{\"name\":\"smokescreen\",\"url\":\"https://pokeapi.co/api/v2/move/108/\"},{\"name\":\"confuse-ray\",\"url\":\"https://pokeapi.co/api/v2/move/109/\"},{\"name\":\"withdraw\",\"url\":\"https://pokeapi.co/api/v2/move/110/\"},{\"name\":\"defense-curl\",\"url\":\"https://pokeapi.co/api/v2/move/111/\"},{\"name\":\"barrier\",\"url\":\"https://pokeapi.co/api/v2/move/112/\"},{\"name\":\"light-screen\",\"url\":\"https://pokeapi.co/api/v2/move/113/\"},{\"name\":\"haze\",\"url\":\"https://pokeapi.co/api/v2/move/114/\"},{\"name\":\"reflect\",\"url\":\"https://pokeapi.co/api/v2/move/115/\"},{\"name\":\"focus-energy\",\"url\":\"https://pokeapi.co/api/v2/move/116/\"},{\"name\":\"bide\",\"url\":\"https://pokeapi.co/api/v2/move/117/\"},{\"name\":\"metronome\",\"url\":\"https://pokeapi.co/api/v2/move/118/\"},{\"name\":\"mirror-move\",\"url\":\"https://pokeapi.co/api/v2/move/119/\"},{\"name\":\"self-destruct\",\"url\":\"https://pokeapi.co/api/v2/move/120/\"},{\"name\":\"egg-bomb\",\"url\":\"https://pokeapi.co/api/v2/move/121/\"},{\"name\":\"lick\",\"url\":\"https://pokeapi.co/api/v2/move/122/\"},{\"name\":\"smog\",\"url\":\"https://pokeapi.co/api/v2/move/123/\"},{\"name\":\"sludge\",\"url\":\"https://pokeapi.co/api/v2/move/124/\"},{\"name\":\"bone-club\",\"url\":\"https://pokeapi.co/api/v2/move/125/\"},{\"name\":\"fire-blast\",\"url\":\"https://pokeapi.co/api/v2/move/126/\"},{\"name\":\"waterfall\",\"url\":\"https://pokeapi.co/api/v2/move/127/\"},{\"name\":\"clamp\",\"url\":\"https://pokeapi.co/api/v2/move/128/\"},{\"name\":\"swift\",\"url\":\"https://pokeapi.co/api/v2/move/129/\"},{\"name\":\"skull-bash\",\"url\":\"https://pokeapi.co/api/v2/move/130/\"},{\"name\":\"spike-cannon\",\"url\":\"https://pokeapi.co/api/v2/move/131/\"},{\"name\":\"constrict\",\"url\":\"https://pokeapi.co/api/v2/move/132/\"},{\"name\":\"amnesia\",\"url\":\"https://pokeapi.co/api/v2/move/133/\"},{\"name\":\"kinesis\",\"url\":\"https://pokeapi.co/api/v2/move/134/\"},{\"name\":\"soft-boiled\",\"url\":\"https://pokeapi.co/api/v2/move/135/\"},{\"name\":\"high-jump-kick\",\"url\":\"https://pokeapi.co/api/v2/move/136/\"},{\"name\":\"glare\",\"url\":\"https://pokeapi.co/api/v2/move/137/\"},{\"name\":\"dream-eater\",\"url\":\"https://pokeapi.co/api/v2/move/138/\"},{\"name\":\"poison-gas\",\"url\":\"https://pokeapi.co/api/v2/move/139/\"},{\"name\":\"barrage\",\"url\":\"https://pokeapi.co/api/v2/move/140/\"},{\"name\":\"leech-life\",\"url\":\"https://pokeapi.co/api/v2/move/141/\"},{\"name\":\"lovely-kiss\",\"url\":\"https://pokeapi.co/api/v2/move/142/\"},{\"name\":\"sky-attack\",\"url\":\"https://pokeapi.co/api/v2/move/143/\"},{\"name\":\"transform\",\"url\":\"https://pokeapi.co/api/v2/move/144/\"},{\"name\":\"bubble\",\"url\":\"https://pokeapi.co/api/v2/move/145/\"},{\"name\":\"dizzy-punch\",\"url\":\"https://pokeapi.co/api/v2/move/146/\"},{\"name\":\"spore\",\"url\":\"https://pokeapi.co/api/v2/move/147/\"},{\"name\":\"flash\",\"url\":\"https://pokeapi.co/api/v2/move/148/\"},{\"name\":\"psywave\",\"url\":\"https://pokeapi.co/api/v2/move/149/\"},{\"name\":\"splash\",\"url\":\"https://pokeapi.co/api/v2/move/150/\"},{\"name\":\"acid-armor\",\"url\":\"https://pokeapi.co/api/v2/move/151/\"},{\"name\":\"crabhammer\",\"url\":\"https://pokeapi.co/api/v2/move/152/\"},{\"name\":\"explosion\",\"url\":\"https://pokeapi.co/api/v2/move/153/\"},{\"name\":\"fury-swipes\",\"url\":\"https://pokeapi.co/api/v2/move/154/\"},{\"name\":\"bonemerang\",\"url\":\"https://pokeapi.co/api/v2/move/155/\"},{\"name\":\"rest\",\"url\":\"https://pokeapi.co/api/v2/move/156/\"},{\"name\":\"rock-slide\",\"url\":\"https://pokeapi.co/api/v2/move/157/\"},{\"name\":\"hyper-fang\",\"url\":\"https://pokeapi.co/api/v2/move/158/\"},{\"name\":\"sharpen\",\"url\":\"https://pokeapi.co/api/v2/move/159/\"},{\"name\":\"conversion\",\"url\":\"https://pokeapi.co/api/v2/move/160/\"},{\"name\":\"tri-attack\",\"url\":\"https://pokeapi.co/api/v2/move/161/\"},{\"name\":\"super-fang\",\"url\":\"https://pokeapi.co/api/v2/move/162/\"},{\"name\":\"slash\",\"url\":\"https://pokeapi.co/api/v2/move/163/\"},{\"name\":\"substitute\",\"url\":\"https://pokeapi.co/api/v2/move/164/\"},{\"name\":\"struggle\",\"url\":\"https://pokeapi.co/api/v2/move/165/\"}],\"name\":\"generation-i\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"だいいっせだい\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Génération I\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Generation I\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Generation I\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"第一世代\"}],\"pokemon_species\":[{\"name\":\"dragonite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/149/\"},{\"name\":\"dragonair\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/148/\"},{\"name\":\"snorlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/143/\"},{\"name\":\"kabutops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/141/\"},{\"name\":\"omastar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/139/\"},{\"name\":\"flareon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/136/\"},{\"name\":\"jolteon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/135/\"},{\"name\":\"vaporeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/134/\"},{\"name\":\"gyarados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/130/\"},{\"name\":\"magmar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/126/\"},{\"name\":\"electabuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/125/\"},{\"name\":\"jynx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/124/\"},{\"name\":\"mr-mime\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/122/\"},{\"name\":\"starmie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/121/\"},{\"name\":\"seaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/119/\"},{\"name\":\"seadra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/117/\"},{\"name\":\"chansey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/113/\"},{\"name\":\"rhydon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/112/\"},{\"name\":\"weezing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/110/\"},{\"name\":\"hitmonchan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/107/\"},{\"name\":\"hitmonlee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/106/\"},{\"name\":\"marowak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/105/\"},{\"name\":\"exeggutor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/103/\"},{\"name\":\"electrode\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/101/\"},{\"name\":\"kingler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/99/\"},{\"name\":\"hypno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/97/\"},{\"name\":\"gengar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/94/\"},{\"name\":\"haunter\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/93/\"},{\"name\":\"cloyster\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/91/\"},{\"name\":\"muk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/89/\"},{\"name\":\"dewgong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/87/\"},{\"name\":\"dodrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/85/\"},{\"name\":\"magneton\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/82/\"},{\"name\":\"slowbro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/80/\"},{\"name\":\"rapidash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/78/\"},{\"name\":\"golem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/76/\"},{\"name\":\"graveler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/75/\"},{\"name\":\"tentacruel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/73/\"},{\"name\":\"victreebel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/71/\"},{\"name\":\"weepinbell\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/70/\"},{\"name\":\"machamp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/68/\"},{\"name\":\"machoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/67/\"},{\"name\":\"alakazam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/65/\"},{\"name\":\"kadabra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/64/\"},{\"name\":\"poliwrath\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/62/\"},{\"name\":\"poliwhirl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/61/\"},{\"name\":\"arcanine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/59/\"},{\"name\":\"primeape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/57/\"},{\"name\":\"golduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/55/\"},{\"name\":\"persian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/53/\"},{\"name\":\"dugtrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/51/\"},{\"name\":\"venomoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/49/\"},{\"name\":\"parasect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/47/\"},{\"name\":\"vileplume\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/45/\"},{\"name\":\"gloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/44/\"},{\"name\":\"golbat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/42/\"},{\"name\":\"wigglytuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/40/\"},{\"name\":\"jigglypuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/39/\"},{\"name\":\"ninetales\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/38/\"},{\"name\":\"clefable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/36/\"},{\"name\":\"clefairy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/35/\"},{\"name\":\"nidoking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/34/\"},{\"name\":\"nidorino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/33/\"},{\"name\":\"nidoqueen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/31/\"},{\"name\":\"nidorina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/30/\"},{\"name\":\"sandslash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/28/\"},{\"name\":\"raichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/26/\"},{\"name\":\"pikachu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/25/\"},{\"name\":\"arbok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/24/\"},{\"name\":\"fearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/22/\"},{\"name\":\"raticate\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/20/\"},{\"name\":\"pidgeot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/18/\"},{\"name\":\"pidgeotto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/17/\"},{\"name\":\"beedrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/15/\"},{\"name\":\"kakuna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/14/\"},{\"name\":\"butterfree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/12/\"},{\"name\":\"metapod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/11/\"},{\"name\":\"blastoise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/9/\"},{\"name\":\"wartortle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/8/\"},{\"name\":\"charizard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/6/\"},{\"name\":\"charmeleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/5/\"},{\"name\":\"venusaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/3/\"},{\"name\":\"ivysaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/2/\"},{\"name\":\"mew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/151/\"},{\"name\":\"mewtwo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/150/\"},{\"name\":\"dratini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/147/\"},{\"name\":\"moltres\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/146/\"},{\"name\":\"zapdos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/145/\"},{\"name\":\"articuno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/144/\"},{\"name\":\"aerodactyl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/142/\"},{\"name\":\"kabuto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/140/\"},{\"name\":\"omanyte\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/138/\"},{\"name\":\"porygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/137/\"},{\"name\":\"eevee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/133/\"},{\"name\":\"ditto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/132/\"},{\"name\":\"lapras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/131/\"},{\"name\":\"magikarp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/129/\"},{\"name\":\"tauros\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/128/\"},{\"name\":\"pinsir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/127/\"},{\"name\":\"scyther\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/123/\"},{\"name\":\"staryu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/120/\"},{\"name\":\"goldeen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/118/\"},{\"name\":\"horsea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/116/\"},{\"name\":\"kangaskhan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/115/\"},{\"name\":\"tangela\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/114/\"},{\"name\":\"rhyhorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/111/\"},{\"name\":\"koffing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/109/\"},{\"name\":\"lickitung\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/108/\"},{\"name\":\"cubone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/104/\"},{\"name\":\"exeggcute\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/102/\"},{\"name\":\"voltorb\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/100/\"},{\"name\":\"krabby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/98/\"},{\"name\":\"drowzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/96/\"},{\"name\":\"onix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/95/\"},{\"name\":\"gastly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/92/\"},{\"name\":\"shellder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/90/\"},{\"name\":\"grimer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/88/\"},{\"name\":\"seel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/86/\"},{\"name\":\"doduo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/84/\"},{\"name\":\"farfetchd\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/83/\"},{\"name\":\"magnemite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/81/\"},{\"name\":\"slowpoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/79/\"},{\"name\":\"ponyta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/77/\"},{\"name\":\"geodude\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/74/\"},{\"name\":\"tentacool\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/72/\"},{\"name\":\"bellsprout\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/69/\"},{\"name\":\"machop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/66/\"},{\"name\":\"abra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/63/\"},{\"name\":\"poliwag\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/60/\"},{\"name\":\"growlithe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/58/\"},{\"name\":\"mankey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/56/\"},{\"name\":\"psyduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/54/\"},{\"name\":\"meowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/52/\"},{\"name\":\"diglett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/50/\"},{\"name\":\"venonat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/48/\"},{\"name\":\"paras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/46/\"},{\"name\":\"oddish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/43/\"},{\"name\":\"zubat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/41/\"},{\"name\":\"vulpix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/37/\"},{\"name\":\"nidoran-m\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/32/\"},{\"name\":\"nidoran-f\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/29/\"},{\"name\":\"sandshrew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/27/\"},{\"name\":\"ekans\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/23/\"},{\"name\":\"spearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/21/\"},{\"name\":\"rattata\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/19/\"},{\"name\":\"pidgey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/16/\"},{\"name\":\"weedle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/13/\"},{\"name\":\"caterpie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/10/\"},{\"name\":\"squirtle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/7/\"},{\"name\":\"charmander\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/4/\"},{\"name\":\"bulbasaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/1/\"}],\"types\":[{\"name\":\"normal\",\"url\":\"https://pokeapi.co/api/v2/type/1/\"},{\"name\":\"fighting\",\"url\":\"https://pokeapi.co/api/v2/type/2/\"},{\"name\":\"flying\",\"url\":\"https://pokeapi.co/api/v2/type/3/\"},{\"name\":\"poison\",\"url\":\"https://pokeapi.co/api/v2/type/4/\"},{\"name\":\"ground\",\"url\":\"https://pokeapi.co/api/v2/type/5/\"},{\"name\":\"rock\",\"url\":\"https://pokeapi.co/api/v2/type/6/\"},{\"name\":\"bug\",\"url\":\"https://pokeapi.co/api/v2/type/7/\"},{\"name\":\"ghost\",\"url\":\"https://pokeapi.co/api/v2/type/8/\"},{\"name\":\"fire\",\"url\":\"https://pokeapi.co/api/v2/type/10/\"},{\"name\":\"water\",\"url\":\"https://pokeapi.co/api/v2/type/11/\"},{\"name\":\"grass\",\"url\":\"https://pokeapi.co/api/v2/type/12/\"},{\"name\":\"electric\",\"url\":\"https://pokeapi.co/api/v2/type/13/\"},{\"name\":\"psychic\",\"url\":\"https://pokeapi.co/api/v2/type/14/\"},{\"name\":\"ice\",\"url\":\"https://pokeapi.co/api/v2/type/15/\"},{\"name\":\"dragon\",\"url\":\"https://pokeapi.co/api/v2/type/16/\"}],\"version_groups\":[{\"name\":\"red-blue\",\"url\":\"https://pokeapi.co/api/v2/version-group/1/\"},{\"name\":\"yellow\",\"url\":\"https://pokeapi.co/api/v2/version-group/2/\"}]}","asText":null}}},"tags":[]},{"uuid":"89d81c05-6861-4217-bca1-712d2abd57fa","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/generation/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,15,10,9,97,98,105,108,105,116,105,101,115,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,40,10,11,109,97,105,110,95,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,158,18,10,5,109,111,118,101,115,18,148,18,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,159,2,10,5,110,97,109,101,115,18,149,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,162,21,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,142,21,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,92,10,5,116,121,112,101,115,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,74,10,14,118,101,114,115,105,111,110,95,103,114,111,117,112,115,18,56,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"abilities\":[],\"id\":2,\"main_region\":{\"name\":\"johto\",\"url\":\"https://pokeapi.co/api/v2/region/2/\"},\"moves\":[{\"name\":\"beat-up\",\"url\":\"https://pokeapi.co/api/v2/move/251/\"},{\"name\":\"whirlpool\",\"url\":\"https://pokeapi.co/api/v2/move/250/\"},{\"name\":\"rock-smash\",\"url\":\"https://pokeapi.co/api/v2/move/249/\"},{\"name\":\"future-sight\",\"url\":\"https://pokeapi.co/api/v2/move/248/\"},{\"name\":\"shadow-ball\",\"url\":\"https://pokeapi.co/api/v2/move/247/\"},{\"name\":\"ancient-power\",\"url\":\"https://pokeapi.co/api/v2/move/246/\"},{\"name\":\"extreme-speed\",\"url\":\"https://pokeapi.co/api/v2/move/245/\"},{\"name\":\"psych-up\",\"url\":\"https://pokeapi.co/api/v2/move/244/\"},{\"name\":\"mirror-coat\",\"url\":\"https://pokeapi.co/api/v2/move/243/\"},{\"name\":\"crunch\",\"url\":\"https://pokeapi.co/api/v2/move/242/\"},{\"name\":\"sunny-day\",\"url\":\"https://pokeapi.co/api/v2/move/241/\"},{\"name\":\"rain-dance\",\"url\":\"https://pokeapi.co/api/v2/move/240/\"},{\"name\":\"twister\",\"url\":\"https://pokeapi.co/api/v2/move/239/\"},{\"name\":\"cross-chop\",\"url\":\"https://pokeapi.co/api/v2/move/238/\"},{\"name\":\"hidden-power\",\"url\":\"https://pokeapi.co/api/v2/move/237/\"},{\"name\":\"moonlight\",\"url\":\"https://pokeapi.co/api/v2/move/236/\"},{\"name\":\"synthesis\",\"url\":\"https://pokeapi.co/api/v2/move/235/\"},{\"name\":\"morning-sun\",\"url\":\"https://pokeapi.co/api/v2/move/234/\"},{\"name\":\"vital-throw\",\"url\":\"https://pokeapi.co/api/v2/move/233/\"},{\"name\":\"metal-claw\",\"url\":\"https://pokeapi.co/api/v2/move/232/\"},{\"name\":\"iron-tail\",\"url\":\"https://pokeapi.co/api/v2/move/231/\"},{\"name\":\"sweet-scent\",\"url\":\"https://pokeapi.co/api/v2/move/230/\"},{\"name\":\"rapid-spin\",\"url\":\"https://pokeapi.co/api/v2/move/229/\"},{\"name\":\"pursuit\",\"url\":\"https://pokeapi.co/api/v2/move/228/\"},{\"name\":\"encore\",\"url\":\"https://pokeapi.co/api/v2/move/227/\"},{\"name\":\"baton-pass\",\"url\":\"https://pokeapi.co/api/v2/move/226/\"},{\"name\":\"dragon-breath\",\"url\":\"https://pokeapi.co/api/v2/move/225/\"},{\"name\":\"megahorn\",\"url\":\"https://pokeapi.co/api/v2/move/224/\"},{\"name\":\"dynamic-punch\",\"url\":\"https://pokeapi.co/api/v2/move/223/\"},{\"name\":\"magnitude\",\"url\":\"https://pokeapi.co/api/v2/move/222/\"},{\"name\":\"sacred-fire\",\"url\":\"https://pokeapi.co/api/v2/move/221/\"},{\"name\":\"pain-split\",\"url\":\"https://pokeapi.co/api/v2/move/220/\"},{\"name\":\"safeguard\",\"url\":\"https://pokeapi.co/api/v2/move/219/\"},{\"name\":\"frustration\",\"url\":\"https://pokeapi.co/api/v2/move/218/\"},{\"name\":\"present\",\"url\":\"https://pokeapi.co/api/v2/move/217/\"},{\"name\":\"return\",\"url\":\"https://pokeapi.co/api/v2/move/216/\"},{\"name\":\"heal-bell\",\"url\":\"https://pokeapi.co/api/v2/move/215/\"},{\"name\":\"sleep-talk\",\"url\":\"https://pokeapi.co/api/v2/move/214/\"},{\"name\":\"attract\",\"url\":\"https://pokeapi.co/api/v2/move/213/\"},{\"name\":\"mean-look\",\"url\":\"https://pokeapi.co/api/v2/move/212/\"},{\"name\":\"steel-wing\",\"url\":\"https://pokeapi.co/api/v2/move/211/\"},{\"name\":\"fury-cutter\",\"url\":\"https://pokeapi.co/api/v2/move/210/\"},{\"name\":\"spark\",\"url\":\"https://pokeapi.co/api/v2/move/209/\"},{\"name\":\"milk-drink\",\"url\":\"https://pokeapi.co/api/v2/move/208/\"},{\"name\":\"swagger\",\"url\":\"https://pokeapi.co/api/v2/move/207/\"},{\"name\":\"false-swipe\",\"url\":\"https://pokeapi.co/api/v2/move/206/\"},{\"name\":\"rollout\",\"url\":\"https://pokeapi.co/api/v2/move/205/\"},{\"name\":\"charm\",\"url\":\"https://pokeapi.co/api/v2/move/204/\"},{\"name\":\"endure\",\"url\":\"https://pokeapi.co/api/v2/move/203/\"},{\"name\":\"giga-drain\",\"url\":\"https://pokeapi.co/api/v2/move/202/\"},{\"name\":\"sandstorm\",\"url\":\"https://pokeapi.co/api/v2/move/201/\"},{\"name\":\"outrage\",\"url\":\"https://pokeapi.co/api/v2/move/200/\"},{\"name\":\"lock-on\",\"url\":\"https://pokeapi.co/api/v2/move/199/\"},{\"name\":\"bone-rush\",\"url\":\"https://pokeapi.co/api/v2/move/198/\"},{\"name\":\"detect\",\"url\":\"https://pokeapi.co/api/v2/move/197/\"},{\"name\":\"icy-wind\",\"url\":\"https://pokeapi.co/api/v2/move/196/\"},{\"name\":\"perish-song\",\"url\":\"https://pokeapi.co/api/v2/move/195/\"},{\"name\":\"destiny-bond\",\"url\":\"https://pokeapi.co/api/v2/move/194/\"},{\"name\":\"foresight\",\"url\":\"https://pokeapi.co/api/v2/move/193/\"},{\"name\":\"zap-cannon\",\"url\":\"https://pokeapi.co/api/v2/move/192/\"},{\"name\":\"spikes\",\"url\":\"https://pokeapi.co/api/v2/move/191/\"},{\"name\":\"octazooka\",\"url\":\"https://pokeapi.co/api/v2/move/190/\"},{\"name\":\"mud-slap\",\"url\":\"https://pokeapi.co/api/v2/move/189/\"},{\"name\":\"sludge-bomb\",\"url\":\"https://pokeapi.co/api/v2/move/188/\"},{\"name\":\"belly-drum\",\"url\":\"https://pokeapi.co/api/v2/move/187/\"},{\"name\":\"sweet-kiss\",\"url\":\"https://pokeapi.co/api/v2/move/186/\"},{\"name\":\"feint-attack\",\"url\":\"https://pokeapi.co/api/v2/move/185/\"},{\"name\":\"scary-face\",\"url\":\"https://pokeapi.co/api/v2/move/184/\"},{\"name\":\"mach-punch\",\"url\":\"https://pokeapi.co/api/v2/move/183/\"},{\"name\":\"protect\",\"url\":\"https://pokeapi.co/api/v2/move/182/\"},{\"name\":\"powder-snow\",\"url\":\"https://pokeapi.co/api/v2/move/181/\"},{\"name\":\"spite\",\"url\":\"https://pokeapi.co/api/v2/move/180/\"},{\"name\":\"reversal\",\"url\":\"https://pokeapi.co/api/v2/move/179/\"},{\"name\":\"cotton-spore\",\"url\":\"https://pokeapi.co/api/v2/move/178/\"},{\"name\":\"aeroblast\",\"url\":\"https://pokeapi.co/api/v2/move/177/\"},{\"name\":\"conversion-2\",\"url\":\"https://pokeapi.co/api/v2/move/176/\"},{\"name\":\"flail\",\"url\":\"https://pokeapi.co/api/v2/move/175/\"},{\"name\":\"curse\",\"url\":\"https://pokeapi.co/api/v2/move/174/\"},{\"name\":\"snore\",\"url\":\"https://pokeapi.co/api/v2/move/173/\"},{\"name\":\"flame-wheel\",\"url\":\"https://pokeapi.co/api/v2/move/172/\"},{\"name\":\"nightmare\",\"url\":\"https://pokeapi.co/api/v2/move/171/\"},{\"name\":\"mind-reader\",\"url\":\"https://pokeapi.co/api/v2/move/170/\"},{\"name\":\"spider-web\",\"url\":\"https://pokeapi.co/api/v2/move/169/\"},{\"name\":\"thief\",\"url\":\"https://pokeapi.co/api/v2/move/168/\"},{\"name\":\"triple-kick\",\"url\":\"https://pokeapi.co/api/v2/move/167/\"},{\"name\":\"sketch\",\"url\":\"https://pokeapi.co/api/v2/move/166/\"}],\"name\":\"generation-ii\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"だいにせだい\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Génération II\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Generation II\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Generation II\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"第二世代\"}],\"pokemon_species\":[{\"name\":\"tyranitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/248/\"},{\"name\":\"pupitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/247/\"},{\"name\":\"blissey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/242/\"},{\"name\":\"hitmontop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/237/\"},{\"name\":\"porygon2\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/233/\"},{\"name\":\"donphan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/232/\"},{\"name\":\"kingdra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/230/\"},{\"name\":\"houndoom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/229/\"},{\"name\":\"mantine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/226/\"},{\"name\":\"octillery\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/224/\"},{\"name\":\"piloswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/221/\"},{\"name\":\"magcargo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/219/\"},{\"name\":\"ursaring\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/217/\"},{\"name\":\"scizor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/212/\"},{\"name\":\"granbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/210/\"},{\"name\":\"steelix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/208/\"},{\"name\":\"forretress\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/205/\"},{\"name\":\"wobbuffet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/202/\"},{\"name\":\"slowking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/199/\"},{\"name\":\"umbreon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/197/\"},{\"name\":\"espeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/196/\"},{\"name\":\"quagsire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/195/\"},{\"name\":\"sunflora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/192/\"},{\"name\":\"jumpluff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/189/\"},{\"name\":\"skiploom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/188/\"},{\"name\":\"politoed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/186/\"},{\"name\":\"sudowoodo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/185/\"},{\"name\":\"azumarill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/184/\"},{\"name\":\"marill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/183/\"},{\"name\":\"bellossom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/182/\"},{\"name\":\"ampharos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/181/\"},{\"name\":\"flaaffy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/180/\"},{\"name\":\"xatu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/178/\"},{\"name\":\"togetic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/176/\"},{\"name\":\"lanturn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/171/\"},{\"name\":\"crobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/169/\"},{\"name\":\"ariados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/168/\"},{\"name\":\"ledian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/166/\"},{\"name\":\"noctowl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/164/\"},{\"name\":\"furret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/162/\"},{\"name\":\"feraligatr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/160/\"},{\"name\":\"croconaw\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/159/\"},{\"name\":\"typhlosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/157/\"},{\"name\":\"quilava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/156/\"},{\"name\":\"meganium\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/154/\"},{\"name\":\"bayleef\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/153/\"},{\"name\":\"celebi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/251/\"},{\"name\":\"ho-oh\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/250/\"},{\"name\":\"lugia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/249/\"},{\"name\":\"larvitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/246/\"},{\"name\":\"suicune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/245/\"},{\"name\":\"entei\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/244/\"},{\"name\":\"raikou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/243/\"},{\"name\":\"miltank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/241/\"},{\"name\":\"magby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/240/\"},{\"name\":\"elekid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/239/\"},{\"name\":\"smoochum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/238/\"},{\"name\":\"tyrogue\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/236/\"},{\"name\":\"smeargle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/235/\"},{\"name\":\"stantler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/234/\"},{\"name\":\"phanpy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/231/\"},{\"name\":\"houndour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/228/\"},{\"name\":\"skarmory\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/227/\"},{\"name\":\"delibird\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/225/\"},{\"name\":\"remoraid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/223/\"},{\"name\":\"corsola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/222/\"},{\"name\":\"swinub\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/220/\"},{\"name\":\"slugma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/218/\"},{\"name\":\"teddiursa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/216/\"},{\"name\":\"sneasel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/215/\"},{\"name\":\"heracross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/214/\"},{\"name\":\"shuckle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/213/\"},{\"name\":\"qwilfish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/211/\"},{\"name\":\"snubbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/209/\"},{\"name\":\"gligar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/207/\"},{\"name\":\"dunsparce\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/206/\"},{\"name\":\"pineco\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/204/\"},{\"name\":\"girafarig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/203/\"},{\"name\":\"unown\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/201/\"},{\"name\":\"misdreavus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/200/\"},{\"name\":\"murkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/198/\"},{\"name\":\"wooper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/194/\"},{\"name\":\"yanma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/193/\"},{\"name\":\"sunkern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/191/\"},{\"name\":\"aipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/190/\"},{\"name\":\"hoppip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/187/\"},{\"name\":\"mareep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/179/\"},{\"name\":\"natu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/177/\"},{\"name\":\"togepi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/175/\"},{\"name\":\"igglybuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/174/\"},{\"name\":\"cleffa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/173/\"},{\"name\":\"pichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/172/\"},{\"name\":\"chinchou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/170/\"},{\"name\":\"spinarak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/167/\"},{\"name\":\"ledyba\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/165/\"},{\"name\":\"hoothoot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/163/\"},{\"name\":\"sentret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/161/\"},{\"name\":\"totodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/158/\"},{\"name\":\"cyndaquil\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/155/\"},{\"name\":\"chikorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/152/\"}],\"types\":[{\"name\":\"steel\",\"url\":\"https://pokeapi.co/api/v2/type/9/\"},{\"name\":\"dark\",\"url\":\"https://pokeapi.co/api/v2/type/17/\"},{\"name\":\"unknown\",\"url\":\"https://pokeapi.co/api/v2/type/10001/\"}],\"version_groups\":[{\"name\":\"gold-silver\",\"url\":\"https://pokeapi.co/api/v2/version-group/3/\"},{\"name\":\"crystal\",\"url\":\"https://pokeapi.co/api/v2/version-group/4/\"}]}","asText":null}}},"tags":[]},{"uuid":"58e61c76-6d61-4996-864f-f8e47825487e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/generation/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,254,8,10,9,97,98,105,108,105,116,105,101,115,18,240,8,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,40,10,11,109,97,105,110,95,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,213,22,10,5,109,111,118,101,115,18,203,22,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,159,2,10,5,110,97,109,101,115,18,149,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,168,18,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,148,18,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,11,10,5,116,121,112,101,115,18,2,8,1,18,74,10,14,118,101,114,115,105,111,110,95,103,114,111,117,112,115,18,56,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"abilities\":[{\"name\":\"stamina\",\"url\":\"https://pokeapi.co/api/v2/ability/192/\"},{\"name\":\"wimp-out\",\"url\":\"https://pokeapi.co/api/v2/ability/193/\"},{\"name\":\"emergency-exit\",\"url\":\"https://pokeapi.co/api/v2/ability/194/\"},{\"name\":\"water-compaction\",\"url\":\"https://pokeapi.co/api/v2/ability/195/\"},{\"name\":\"merciless\",\"url\":\"https://pokeapi.co/api/v2/ability/196/\"},{\"name\":\"shields-down\",\"url\":\"https://pokeapi.co/api/v2/ability/197/\"},{\"name\":\"stakeout\",\"url\":\"https://pokeapi.co/api/v2/ability/198/\"},{\"name\":\"water-bubble\",\"url\":\"https://pokeapi.co/api/v2/ability/199/\"},{\"name\":\"steelworker\",\"url\":\"https://pokeapi.co/api/v2/ability/200/\"},{\"name\":\"berserk\",\"url\":\"https://pokeapi.co/api/v2/ability/201/\"},{\"name\":\"slush-rush\",\"url\":\"https://pokeapi.co/api/v2/ability/202/\"},{\"name\":\"long-reach\",\"url\":\"https://pokeapi.co/api/v2/ability/203/\"},{\"name\":\"liquid-voice\",\"url\":\"https://pokeapi.co/api/v2/ability/204/\"},{\"name\":\"triage\",\"url\":\"https://pokeapi.co/api/v2/ability/205/\"},{\"name\":\"galvanize\",\"url\":\"https://pokeapi.co/api/v2/ability/206/\"},{\"name\":\"surge-surfer\",\"url\":\"https://pokeapi.co/api/v2/ability/207/\"},{\"name\":\"schooling\",\"url\":\"https://pokeapi.co/api/v2/ability/208/\"},{\"name\":\"disguise\",\"url\":\"https://pokeapi.co/api/v2/ability/209/\"},{\"name\":\"battle-bond\",\"url\":\"https://pokeapi.co/api/v2/ability/210/\"},{\"name\":\"power-construct\",\"url\":\"https://pokeapi.co/api/v2/ability/211/\"},{\"name\":\"corrosion\",\"url\":\"https://pokeapi.co/api/v2/ability/212/\"},{\"name\":\"comatose\",\"url\":\"https://pokeapi.co/api/v2/ability/213/\"},{\"name\":\"queenly-majesty\",\"url\":\"https://pokeapi.co/api/v2/ability/214/\"},{\"name\":\"innards-out\",\"url\":\"https://pokeapi.co/api/v2/ability/215/\"},{\"name\":\"dancer\",\"url\":\"https://pokeapi.co/api/v2/ability/216/\"},{\"name\":\"battery\",\"url\":\"https://pokeapi.co/api/v2/ability/217/\"},{\"name\":\"fluffy\",\"url\":\"https://pokeapi.co/api/v2/ability/218/\"},{\"name\":\"dazzling\",\"url\":\"https://pokeapi.co/api/v2/ability/219/\"},{\"name\":\"soul-heart\",\"url\":\"https://pokeapi.co/api/v2/ability/220/\"},{\"name\":\"tangling-hair\",\"url\":\"https://pokeapi.co/api/v2/ability/221/\"},{\"name\":\"receiver\",\"url\":\"https://pokeapi.co/api/v2/ability/222/\"},{\"name\":\"power-of-alchemy\",\"url\":\"https://pokeapi.co/api/v2/ability/223/\"},{\"name\":\"beast-boost\",\"url\":\"https://pokeapi.co/api/v2/ability/224/\"},{\"name\":\"rks-system\",\"url\":\"https://pokeapi.co/api/v2/ability/225/\"},{\"name\":\"electric-surge\",\"url\":\"https://pokeapi.co/api/v2/ability/226/\"},{\"name\":\"psychic-surge\",\"url\":\"https://pokeapi.co/api/v2/ability/227/\"},{\"name\":\"misty-surge\",\"url\":\"https://pokeapi.co/api/v2/ability/228/\"},{\"name\":\"grassy-surge\",\"url\":\"https://pokeapi.co/api/v2/ability/229/\"},{\"name\":\"full-metal-body\",\"url\":\"https://pokeapi.co/api/v2/ability/230/\"},{\"name\":\"shadow-shield\",\"url\":\"https://pokeapi.co/api/v2/ability/231/\"},{\"name\":\"prism-armor\",\"url\":\"https://pokeapi.co/api/v2/ability/232/\"},{\"name\":\"neuroforce\",\"url\":\"https://pokeapi.co/api/v2/ability/233/\"}],\"id\":7,\"main_region\":{\"name\":\"alola\",\"url\":\"https://pokeapi.co/api/v2/region/7/\"},\"moves\":[{\"name\":\"clangorous-soulblaze\",\"url\":\"https://pokeapi.co/api/v2/move/728/\"},{\"name\":\"splintered-stormshards\",\"url\":\"https://pokeapi.co/api/v2/move/727/\"},{\"name\":\"lets-snuggle-forever\",\"url\":\"https://pokeapi.co/api/v2/move/726/\"},{\"name\":\"menacing-moonraze-maelstrom\",\"url\":\"https://pokeapi.co/api/v2/move/725/\"},{\"name\":\"searing-sunraze-smash\",\"url\":\"https://pokeapi.co/api/v2/move/724/\"},{\"name\":\"light-that-burns-the-sky\",\"url\":\"https://pokeapi.co/api/v2/move/723/\"},{\"name\":\"photon-geyser\",\"url\":\"https://pokeapi.co/api/v2/move/722/\"},{\"name\":\"plasma-fists\",\"url\":\"https://pokeapi.co/api/v2/move/721/\"},{\"name\":\"mind-blown\",\"url\":\"https://pokeapi.co/api/v2/move/720/\"},{\"name\":\"10-000-000-volt-thunderbolt\",\"url\":\"https://pokeapi.co/api/v2/move/719/\"},{\"name\":\"multi-attack\",\"url\":\"https://pokeapi.co/api/v2/move/718/\"},{\"name\":\"natures-madness\",\"url\":\"https://pokeapi.co/api/v2/move/717/\"},{\"name\":\"zing-zap\",\"url\":\"https://pokeapi.co/api/v2/move/716/\"},{\"name\":\"tearful-look\",\"url\":\"https://pokeapi.co/api/v2/move/715/\"},{\"name\":\"moongeist-beam\",\"url\":\"https://pokeapi.co/api/v2/move/714/\"},{\"name\":\"sunsteel-strike\",\"url\":\"https://pokeapi.co/api/v2/move/713/\"},{\"name\":\"spectral-thief\",\"url\":\"https://pokeapi.co/api/v2/move/712/\"},{\"name\":\"prismatic-laser\",\"url\":\"https://pokeapi.co/api/v2/move/711/\"},{\"name\":\"liquidation\",\"url\":\"https://pokeapi.co/api/v2/move/710/\"},{\"name\":\"accelerock\",\"url\":\"https://pokeapi.co/api/v2/move/709/\"},{\"name\":\"shadow-bone\",\"url\":\"https://pokeapi.co/api/v2/move/708/\"},{\"name\":\"stomping-tantrum\",\"url\":\"https://pokeapi.co/api/v2/move/707/\"},{\"name\":\"psychic-fangs\",\"url\":\"https://pokeapi.co/api/v2/move/706/\"},{\"name\":\"fleur-cannon\",\"url\":\"https://pokeapi.co/api/v2/move/705/\"},{\"name\":\"shell-trap\",\"url\":\"https://pokeapi.co/api/v2/move/704/\"},{\"name\":\"genesis-supernova\",\"url\":\"https://pokeapi.co/api/v2/move/703/\"},{\"name\":\"extreme-evoboost\",\"url\":\"https://pokeapi.co/api/v2/move/702/\"},{\"name\":\"pulverizing-pancake\",\"url\":\"https://pokeapi.co/api/v2/move/701/\"},{\"name\":\"stoked-sparksurfer\",\"url\":\"https://pokeapi.co/api/v2/move/700/\"},{\"name\":\"soul-stealing-7-star-strike\",\"url\":\"https://pokeapi.co/api/v2/move/699/\"},{\"name\":\"guardian-of-alola\",\"url\":\"https://pokeapi.co/api/v2/move/698/\"},{\"name\":\"oceanic-operetta\",\"url\":\"https://pokeapi.co/api/v2/move/697/\"},{\"name\":\"malicious-moonsault\",\"url\":\"https://pokeapi.co/api/v2/move/696/\"},{\"name\":\"sinister-arrow-raid\",\"url\":\"https://pokeapi.co/api/v2/move/695/\"},{\"name\":\"aurora-veil\",\"url\":\"https://pokeapi.co/api/v2/move/694/\"},{\"name\":\"brutal-swing\",\"url\":\"https://pokeapi.co/api/v2/move/693/\"},{\"name\":\"dragon-hammer\",\"url\":\"https://pokeapi.co/api/v2/move/692/\"},{\"name\":\"clanging-scales\",\"url\":\"https://pokeapi.co/api/v2/move/691/\"},{\"name\":\"beak-blast\",\"url\":\"https://pokeapi.co/api/v2/move/690/\"},{\"name\":\"instruct\",\"url\":\"https://pokeapi.co/api/v2/move/689/\"},{\"name\":\"trop-kick\",\"url\":\"https://pokeapi.co/api/v2/move/688/\"},{\"name\":\"core-enforcer\",\"url\":\"https://pokeapi.co/api/v2/move/687/\"},{\"name\":\"revelation-dance\",\"url\":\"https://pokeapi.co/api/v2/move/686/\"},{\"name\":\"purify\",\"url\":\"https://pokeapi.co/api/v2/move/685/\"},{\"name\":\"smart-strike\",\"url\":\"https://pokeapi.co/api/v2/move/684/\"},{\"name\":\"speed-swap\",\"url\":\"https://pokeapi.co/api/v2/move/683/\"},{\"name\":\"burn-up\",\"url\":\"https://pokeapi.co/api/v2/move/682/\"},{\"name\":\"power-trip\",\"url\":\"https://pokeapi.co/api/v2/move/681/\"},{\"name\":\"fire-lash\",\"url\":\"https://pokeapi.co/api/v2/move/680/\"},{\"name\":\"lunge\",\"url\":\"https://pokeapi.co/api/v2/move/679/\"},{\"name\":\"psychic-terrain\",\"url\":\"https://pokeapi.co/api/v2/move/678/\"},{\"name\":\"anchor-shot\",\"url\":\"https://pokeapi.co/api/v2/move/677/\"},{\"name\":\"pollen-puff\",\"url\":\"https://pokeapi.co/api/v2/move/676/\"},{\"name\":\"throat-chop\",\"url\":\"https://pokeapi.co/api/v2/move/675/\"},{\"name\":\"gear-up\",\"url\":\"https://pokeapi.co/api/v2/move/674/\"},{\"name\":\"laser-focus\",\"url\":\"https://pokeapi.co/api/v2/move/673/\"},{\"name\":\"toxic-thread\",\"url\":\"https://pokeapi.co/api/v2/move/672/\"},{\"name\":\"spotlight\",\"url\":\"https://pokeapi.co/api/v2/move/671/\"},{\"name\":\"leafage\",\"url\":\"https://pokeapi.co/api/v2/move/670/\"},{\"name\":\"solar-blade\",\"url\":\"https://pokeapi.co/api/v2/move/669/\"},{\"name\":\"strength-sap\",\"url\":\"https://pokeapi.co/api/v2/move/668/\"},{\"name\":\"high-horsepower\",\"url\":\"https://pokeapi.co/api/v2/move/667/\"},{\"name\":\"floral-healing\",\"url\":\"https://pokeapi.co/api/v2/move/666/\"},{\"name\":\"ice-hammer\",\"url\":\"https://pokeapi.co/api/v2/move/665/\"},{\"name\":\"sparkling-aria\",\"url\":\"https://pokeapi.co/api/v2/move/664/\"},{\"name\":\"darkest-lariat\",\"url\":\"https://pokeapi.co/api/v2/move/663/\"},{\"name\":\"spirit-shackle\",\"url\":\"https://pokeapi.co/api/v2/move/662/\"},{\"name\":\"baneful-bunker\",\"url\":\"https://pokeapi.co/api/v2/move/661/\"},{\"name\":\"first-impression\",\"url\":\"https://pokeapi.co/api/v2/move/660/\"},{\"name\":\"shore-up\",\"url\":\"https://pokeapi.co/api/v2/move/659/\"},{\"name\":\"catastropika\",\"url\":\"https://pokeapi.co/api/v2/move/658/\"},{\"name\":\"twinkle-tackle--special\",\"url\":\"https://pokeapi.co/api/v2/move/657/\"},{\"name\":\"twinkle-tackle--physical\",\"url\":\"https://pokeapi.co/api/v2/move/656/\"},{\"name\":\"black-hole-eclipse--special\",\"url\":\"https://pokeapi.co/api/v2/move/655/\"},{\"name\":\"black-hole-eclipse--physical\",\"url\":\"https://pokeapi.co/api/v2/move/654/\"},{\"name\":\"devastating-drake--special\",\"url\":\"https://pokeapi.co/api/v2/move/653/\"},{\"name\":\"devastating-drake--physical\",\"url\":\"https://pokeapi.co/api/v2/move/652/\"},{\"name\":\"subzero-slammer--special\",\"url\":\"https://pokeapi.co/api/v2/move/651/\"},{\"name\":\"subzero-slammer--physical\",\"url\":\"https://pokeapi.co/api/v2/move/650/\"},{\"name\":\"shattered-psyche--special\",\"url\":\"https://pokeapi.co/api/v2/move/649/\"},{\"name\":\"shattered-psyche--physical\",\"url\":\"https://pokeapi.co/api/v2/move/648/\"},{\"name\":\"gigavolt-havoc--special\",\"url\":\"https://pokeapi.co/api/v2/move/647/\"},{\"name\":\"gigavolt-havoc--physical\",\"url\":\"https://pokeapi.co/api/v2/move/646/\"},{\"name\":\"bloom-doom--special\",\"url\":\"https://pokeapi.co/api/v2/move/645/\"},{\"name\":\"bloom-doom--physical\",\"url\":\"https://pokeapi.co/api/v2/move/644/\"},{\"name\":\"hydro-vortex--special\",\"url\":\"https://pokeapi.co/api/v2/move/643/\"},{\"name\":\"hydro-vortex--physical\",\"url\":\"https://pokeapi.co/api/v2/move/642/\"},{\"name\":\"inferno-overdrive--special\",\"url\":\"https://pokeapi.co/api/v2/move/641/\"},{\"name\":\"inferno-overdrive--physical\",\"url\":\"https://pokeapi.co/api/v2/move/640/\"},{\"name\":\"corkscrew-crash--special\",\"url\":\"https://pokeapi.co/api/v2/move/639/\"},{\"name\":\"corkscrew-crash--physical\",\"url\":\"https://pokeapi.co/api/v2/move/638/\"},{\"name\":\"never-ending-nightmare--special\",\"url\":\"https://pokeapi.co/api/v2/move/637/\"},{\"name\":\"never-ending-nightmare--physical\",\"url\":\"https://pokeapi.co/api/v2/move/636/\"},{\"name\":\"savage-spin-out--special\",\"url\":\"https://pokeapi.co/api/v2/move/635/\"},{\"name\":\"savage-spin-out--physical\",\"url\":\"https://pokeapi.co/api/v2/move/634/\"},{\"name\":\"continental-crush--special\",\"url\":\"https://pokeapi.co/api/v2/move/633/\"},{\"name\":\"continental-crush--physical\",\"url\":\"https://pokeapi.co/api/v2/move/632/\"},{\"name\":\"tectonic-rage--special\",\"url\":\"https://pokeapi.co/api/v2/move/631/\"},{\"name\":\"tectonic-rage--physical\",\"url\":\"https://pokeapi.co/api/v2/move/630/\"},{\"name\":\"acid-downpour--special\",\"url\":\"https://pokeapi.co/api/v2/move/629/\"},{\"name\":\"acid-downpour--physical\",\"url\":\"https://pokeapi.co/api/v2/move/628/\"},{\"name\":\"supersonic-skystrike--special\",\"url\":\"https://pokeapi.co/api/v2/move/627/\"},{\"name\":\"supersonic-skystrike--physical\",\"url\":\"https://pokeapi.co/api/v2/move/626/\"},{\"name\":\"all-out-pummeling--special\",\"url\":\"https://pokeapi.co/api/v2/move/625/\"},{\"name\":\"all-out-pummeling--physical\",\"url\":\"https://pokeapi.co/api/v2/move/624/\"},{\"name\":\"breakneck-blitz--special\",\"url\":\"https://pokeapi.co/api/v2/move/623/\"},{\"name\":\"breakneck-blitz--physical\",\"url\":\"https://pokeapi.co/api/v2/move/622/\"}],\"name\":\"generation-vii\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"だいななせだい\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Génération VII\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Generation VII\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Generation VII\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"第七世代\"}],\"pokemon_species\":[{\"name\":\"naganadel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/804/\"},{\"name\":\"lunala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/792/\"},{\"name\":\"solgaleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/791/\"},{\"name\":\"cosmoem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/790/\"},{\"name\":\"kommo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/784/\"},{\"name\":\"hakamo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/783/\"},{\"name\":\"silvally\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/773/\"},{\"name\":\"palossand\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/770/\"},{\"name\":\"golisopod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/768/\"},{\"name\":\"tsareena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/763/\"},{\"name\":\"steenee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/762/\"},{\"name\":\"bewear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/760/\"},{\"name\":\"salazzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/758/\"},{\"name\":\"shiinotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/756/\"},{\"name\":\"lurantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/754/\"},{\"name\":\"araquanid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/752/\"},{\"name\":\"mudsdale\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/750/\"},{\"name\":\"toxapex\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/748/\"},{\"name\":\"lycanroc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/745/\"},{\"name\":\"ribombee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/743/\"},{\"name\":\"crabominable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/740/\"},{\"name\":\"vikavolt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/738/\"},{\"name\":\"charjabug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/737/\"},{\"name\":\"gumshoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/735/\"},{\"name\":\"toucannon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/733/\"},{\"name\":\"trumbeak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/732/\"},{\"name\":\"primarina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/730/\"},{\"name\":\"brionne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/729/\"},{\"name\":\"incineroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/727/\"},{\"name\":\"torracat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/726/\"},{\"name\":\"decidueye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/724/\"},{\"name\":\"dartrix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/723/\"},{\"name\":\"zeraora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/807/\"},{\"name\":\"blacephalon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/806/\"},{\"name\":\"stakataka\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/805/\"},{\"name\":\"poipole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/803/\"},{\"name\":\"marshadow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/802/\"},{\"name\":\"magearna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/801/\"},{\"name\":\"necrozma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/800/\"},{\"name\":\"guzzlord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/799/\"},{\"name\":\"kartana\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/798/\"},{\"name\":\"celesteela\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/797/\"},{\"name\":\"xurkitree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/796/\"},{\"name\":\"pheromosa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/795/\"},{\"name\":\"buzzwole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/794/\"},{\"name\":\"nihilego\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/793/\"},{\"name\":\"cosmog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/789/\"},{\"name\":\"tapu-fini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/788/\"},{\"name\":\"tapu-bulu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/787/\"},{\"name\":\"tapu-lele\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/786/\"},{\"name\":\"tapu-koko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/785/\"},{\"name\":\"jangmo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/782/\"},{\"name\":\"dhelmise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/781/\"},{\"name\":\"drampa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/780/\"},{\"name\":\"bruxish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/779/\"},{\"name\":\"mimikyu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/778/\"},{\"name\":\"togedemaru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/777/\"},{\"name\":\"turtonator\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/776/\"},{\"name\":\"komala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/775/\"},{\"name\":\"minior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/774/\"},{\"name\":\"type-null\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/772/\"},{\"name\":\"pyukumuku\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/771/\"},{\"name\":\"sandygast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/769/\"},{\"name\":\"wimpod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/767/\"},{\"name\":\"passimian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/766/\"},{\"name\":\"oranguru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/765/\"},{\"name\":\"comfey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/764/\"},{\"name\":\"bounsweet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/761/\"},{\"name\":\"stufful\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/759/\"},{\"name\":\"salandit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/757/\"},{\"name\":\"morelull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/755/\"},{\"name\":\"fomantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/753/\"},{\"name\":\"dewpider\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/751/\"},{\"name\":\"mudbray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/749/\"},{\"name\":\"mareanie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/747/\"},{\"name\":\"wishiwashi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/746/\"},{\"name\":\"rockruff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/744/\"},{\"name\":\"cutiefly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/742/\"},{\"name\":\"oricorio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/741/\"},{\"name\":\"crabrawler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/739/\"},{\"name\":\"grubbin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/736/\"},{\"name\":\"yungoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/734/\"},{\"name\":\"pikipek\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/731/\"},{\"name\":\"popplio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/728/\"},{\"name\":\"litten\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/725/\"},{\"name\":\"rowlet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/722/\"}],\"types\":[],\"version_groups\":[{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"},{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}]}","asText":null}}},"tags":[]},{"uuid":"df5a03f0-3387-4efb-90b6-3e1970891d46","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/generation/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,148,16,10,9,97,98,105,108,105,116,105,101,115,18,134,16,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,40,10,11,109,97,105,110,95,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,207,25,10,5,109,111,118,101,115,18,197,25,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,159,2,10,5,110,97,109,101,115,18,149,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,211,28,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,191,28,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,38,10,5,116,121,112,101,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,156,1,10,14,118,101,114,115,105,111,110,95,103,114,111,117,112,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"abilities\":[{\"name\":\"stench\",\"url\":\"https://pokeapi.co/api/v2/ability/1/\"},{\"name\":\"drizzle\",\"url\":\"https://pokeapi.co/api/v2/ability/2/\"},{\"name\":\"speed-boost\",\"url\":\"https://pokeapi.co/api/v2/ability/3/\"},{\"name\":\"battle-armor\",\"url\":\"https://pokeapi.co/api/v2/ability/4/\"},{\"name\":\"sturdy\",\"url\":\"https://pokeapi.co/api/v2/ability/5/\"},{\"name\":\"damp\",\"url\":\"https://pokeapi.co/api/v2/ability/6/\"},{\"name\":\"limber\",\"url\":\"https://pokeapi.co/api/v2/ability/7/\"},{\"name\":\"sand-veil\",\"url\":\"https://pokeapi.co/api/v2/ability/8/\"},{\"name\":\"static\",\"url\":\"https://pokeapi.co/api/v2/ability/9/\"},{\"name\":\"volt-absorb\",\"url\":\"https://pokeapi.co/api/v2/ability/10/\"},{\"name\":\"water-absorb\",\"url\":\"https://pokeapi.co/api/v2/ability/11/\"},{\"name\":\"oblivious\",\"url\":\"https://pokeapi.co/api/v2/ability/12/\"},{\"name\":\"cloud-nine\",\"url\":\"https://pokeapi.co/api/v2/ability/13/\"},{\"name\":\"compound-eyes\",\"url\":\"https://pokeapi.co/api/v2/ability/14/\"},{\"name\":\"insomnia\",\"url\":\"https://pokeapi.co/api/v2/ability/15/\"},{\"name\":\"color-change\",\"url\":\"https://pokeapi.co/api/v2/ability/16/\"},{\"name\":\"immunity\",\"url\":\"https://pokeapi.co/api/v2/ability/17/\"},{\"name\":\"flash-fire\",\"url\":\"https://pokeapi.co/api/v2/ability/18/\"},{\"name\":\"shield-dust\",\"url\":\"https://pokeapi.co/api/v2/ability/19/\"},{\"name\":\"own-tempo\",\"url\":\"https://pokeapi.co/api/v2/ability/20/\"},{\"name\":\"suction-cups\",\"url\":\"https://pokeapi.co/api/v2/ability/21/\"},{\"name\":\"intimidate\",\"url\":\"https://pokeapi.co/api/v2/ability/22/\"},{\"name\":\"shadow-tag\",\"url\":\"https://pokeapi.co/api/v2/ability/23/\"},{\"name\":\"rough-skin\",\"url\":\"https://pokeapi.co/api/v2/ability/24/\"},{\"name\":\"wonder-guard\",\"url\":\"https://pokeapi.co/api/v2/ability/25/\"},{\"name\":\"levitate\",\"url\":\"https://pokeapi.co/api/v2/ability/26/\"},{\"name\":\"effect-spore\",\"url\":\"https://pokeapi.co/api/v2/ability/27/\"},{\"name\":\"synchronize\",\"url\":\"https://pokeapi.co/api/v2/ability/28/\"},{\"name\":\"clear-body\",\"url\":\"https://pokeapi.co/api/v2/ability/29/\"},{\"name\":\"natural-cure\",\"url\":\"https://pokeapi.co/api/v2/ability/30/\"},{\"name\":\"lightning-rod\",\"url\":\"https://pokeapi.co/api/v2/ability/31/\"},{\"name\":\"serene-grace\",\"url\":\"https://pokeapi.co/api/v2/ability/32/\"},{\"name\":\"swift-swim\",\"url\":\"https://pokeapi.co/api/v2/ability/33/\"},{\"name\":\"chlorophyll\",\"url\":\"https://pokeapi.co/api/v2/ability/34/\"},{\"name\":\"illuminate\",\"url\":\"https://pokeapi.co/api/v2/ability/35/\"},{\"name\":\"trace\",\"url\":\"https://pokeapi.co/api/v2/ability/36/\"},{\"name\":\"huge-power\",\"url\":\"https://pokeapi.co/api/v2/ability/37/\"},{\"name\":\"poison-point\",\"url\":\"https://pokeapi.co/api/v2/ability/38/\"},{\"name\":\"inner-focus\",\"url\":\"https://pokeapi.co/api/v2/ability/39/\"},{\"name\":\"magma-armor\",\"url\":\"https://pokeapi.co/api/v2/ability/40/\"},{\"name\":\"water-veil\",\"url\":\"https://pokeapi.co/api/v2/ability/41/\"},{\"name\":\"magnet-pull\",\"url\":\"https://pokeapi.co/api/v2/ability/42/\"},{\"name\":\"soundproof\",\"url\":\"https://pokeapi.co/api/v2/ability/43/\"},{\"name\":\"rain-dish\",\"url\":\"https://pokeapi.co/api/v2/ability/44/\"},{\"name\":\"sand-stream\",\"url\":\"https://pokeapi.co/api/v2/ability/45/\"},{\"name\":\"pressure\",\"url\":\"https://pokeapi.co/api/v2/ability/46/\"},{\"name\":\"thick-fat\",\"url\":\"https://pokeapi.co/api/v2/ability/47/\"},{\"name\":\"early-bird\",\"url\":\"https://pokeapi.co/api/v2/ability/48/\"},{\"name\":\"flame-body\",\"url\":\"https://pokeapi.co/api/v2/ability/49/\"},{\"name\":\"run-away\",\"url\":\"https://pokeapi.co/api/v2/ability/50/\"},{\"name\":\"keen-eye\",\"url\":\"https://pokeapi.co/api/v2/ability/51/\"},{\"name\":\"hyper-cutter\",\"url\":\"https://pokeapi.co/api/v2/ability/52/\"},{\"name\":\"pickup\",\"url\":\"https://pokeapi.co/api/v2/ability/53/\"},{\"name\":\"truant\",\"url\":\"https://pokeapi.co/api/v2/ability/54/\"},{\"name\":\"hustle\",\"url\":\"https://pokeapi.co/api/v2/ability/55/\"},{\"name\":\"cute-charm\",\"url\":\"https://pokeapi.co/api/v2/ability/56/\"},{\"name\":\"plus\",\"url\":\"https://pokeapi.co/api/v2/ability/57/\"},{\"name\":\"minus\",\"url\":\"https://pokeapi.co/api/v2/ability/58/\"},{\"name\":\"forecast\",\"url\":\"https://pokeapi.co/api/v2/ability/59/\"},{\"name\":\"sticky-hold\",\"url\":\"https://pokeapi.co/api/v2/ability/60/\"},{\"name\":\"shed-skin\",\"url\":\"https://pokeapi.co/api/v2/ability/61/\"},{\"name\":\"guts\",\"url\":\"https://pokeapi.co/api/v2/ability/62/\"},{\"name\":\"marvel-scale\",\"url\":\"https://pokeapi.co/api/v2/ability/63/\"},{\"name\":\"liquid-ooze\",\"url\":\"https://pokeapi.co/api/v2/ability/64/\"},{\"name\":\"overgrow\",\"url\":\"https://pokeapi.co/api/v2/ability/65/\"},{\"name\":\"blaze\",\"url\":\"https://pokeapi.co/api/v2/ability/66/\"},{\"name\":\"torrent\",\"url\":\"https://pokeapi.co/api/v2/ability/67/\"},{\"name\":\"swarm\",\"url\":\"https://pokeapi.co/api/v2/ability/68/\"},{\"name\":\"rock-head\",\"url\":\"https://pokeapi.co/api/v2/ability/69/\"},{\"name\":\"drought\",\"url\":\"https://pokeapi.co/api/v2/ability/70/\"},{\"name\":\"arena-trap\",\"url\":\"https://pokeapi.co/api/v2/ability/71/\"},{\"name\":\"vital-spirit\",\"url\":\"https://pokeapi.co/api/v2/ability/72/\"},{\"name\":\"white-smoke\",\"url\":\"https://pokeapi.co/api/v2/ability/73/\"},{\"name\":\"pure-power\",\"url\":\"https://pokeapi.co/api/v2/ability/74/\"},{\"name\":\"shell-armor\",\"url\":\"https://pokeapi.co/api/v2/ability/75/\"},{\"name\":\"air-lock\",\"url\":\"https://pokeapi.co/api/v2/ability/76/\"}],\"id\":3,\"main_region\":{\"name\":\"hoenn\",\"url\":\"https://pokeapi.co/api/v2/region/3/\"},\"moves\":[{\"name\":\"shadow-sky\",\"url\":\"https://pokeapi.co/api/v2/move/10018/\"},{\"name\":\"shadow-shed\",\"url\":\"https://pokeapi.co/api/v2/move/10017/\"},{\"name\":\"shadow-panic\",\"url\":\"https://pokeapi.co/api/v2/move/10016/\"},{\"name\":\"shadow-mist\",\"url\":\"https://pokeapi.co/api/v2/move/10015/\"},{\"name\":\"shadow-hold\",\"url\":\"https://pokeapi.co/api/v2/move/10014/\"},{\"name\":\"shadow-half\",\"url\":\"https://pokeapi.co/api/v2/move/10013/\"},{\"name\":\"shadow-down\",\"url\":\"https://pokeapi.co/api/v2/move/10012/\"},{\"name\":\"shadow-wave\",\"url\":\"https://pokeapi.co/api/v2/move/10011/\"},{\"name\":\"shadow-storm\",\"url\":\"https://pokeapi.co/api/v2/move/10010/\"},{\"name\":\"shadow-rave\",\"url\":\"https://pokeapi.co/api/v2/move/10009/\"},{\"name\":\"shadow-fire\",\"url\":\"https://pokeapi.co/api/v2/move/10008/\"},{\"name\":\"shadow-end\",\"url\":\"https://pokeapi.co/api/v2/move/10007/\"},{\"name\":\"shadow-chill\",\"url\":\"https://pokeapi.co/api/v2/move/10006/\"},{\"name\":\"shadow-break\",\"url\":\"https://pokeapi.co/api/v2/move/10005/\"},{\"name\":\"shadow-bolt\",\"url\":\"https://pokeapi.co/api/v2/move/10004/\"},{\"name\":\"shadow-blitz\",\"url\":\"https://pokeapi.co/api/v2/move/10003/\"},{\"name\":\"shadow-blast\",\"url\":\"https://pokeapi.co/api/v2/move/10002/\"},{\"name\":\"shadow-rush\",\"url\":\"https://pokeapi.co/api/v2/move/10001/\"},{\"name\":\"psycho-boost\",\"url\":\"https://pokeapi.co/api/v2/move/354/\"},{\"name\":\"doom-desire\",\"url\":\"https://pokeapi.co/api/v2/move/353/\"},{\"name\":\"water-pulse\",\"url\":\"https://pokeapi.co/api/v2/move/352/\"},{\"name\":\"shock-wave\",\"url\":\"https://pokeapi.co/api/v2/move/351/\"},{\"name\":\"rock-blast\",\"url\":\"https://pokeapi.co/api/v2/move/350/\"},{\"name\":\"dragon-dance\",\"url\":\"https://pokeapi.co/api/v2/move/349/\"},{\"name\":\"leaf-blade\",\"url\":\"https://pokeapi.co/api/v2/move/348/\"},{\"name\":\"calm-mind\",\"url\":\"https://pokeapi.co/api/v2/move/347/\"},{\"name\":\"water-sport\",\"url\":\"https://pokeapi.co/api/v2/move/346/\"},{\"name\":\"magical-leaf\",\"url\":\"https://pokeapi.co/api/v2/move/345/\"},{\"name\":\"volt-tackle\",\"url\":\"https://pokeapi.co/api/v2/move/344/\"},{\"name\":\"covet\",\"url\":\"https://pokeapi.co/api/v2/move/343/\"},{\"name\":\"poison-tail\",\"url\":\"https://pokeapi.co/api/v2/move/342/\"},{\"name\":\"mud-shot\",\"url\":\"https://pokeapi.co/api/v2/move/341/\"},{\"name\":\"bounce\",\"url\":\"https://pokeapi.co/api/v2/move/340/\"},{\"name\":\"bulk-up\",\"url\":\"https://pokeapi.co/api/v2/move/339/\"},{\"name\":\"frenzy-plant\",\"url\":\"https://pokeapi.co/api/v2/move/338/\"},{\"name\":\"dragon-claw\",\"url\":\"https://pokeapi.co/api/v2/move/337/\"},{\"name\":\"howl\",\"url\":\"https://pokeapi.co/api/v2/move/336/\"},{\"name\":\"block\",\"url\":\"https://pokeapi.co/api/v2/move/335/\"},{\"name\":\"iron-defense\",\"url\":\"https://pokeapi.co/api/v2/move/334/\"},{\"name\":\"icicle-spear\",\"url\":\"https://pokeapi.co/api/v2/move/333/\"},{\"name\":\"aerial-ace\",\"url\":\"https://pokeapi.co/api/v2/move/332/\"},{\"name\":\"bullet-seed\",\"url\":\"https://pokeapi.co/api/v2/move/331/\"},{\"name\":\"muddy-water\",\"url\":\"https://pokeapi.co/api/v2/move/330/\"},{\"name\":\"sheer-cold\",\"url\":\"https://pokeapi.co/api/v2/move/329/\"},{\"name\":\"sand-tomb\",\"url\":\"https://pokeapi.co/api/v2/move/328/\"},{\"name\":\"sky-uppercut\",\"url\":\"https://pokeapi.co/api/v2/move/327/\"},{\"name\":\"extrasensory\",\"url\":\"https://pokeapi.co/api/v2/move/326/\"},{\"name\":\"shadow-punch\",\"url\":\"https://pokeapi.co/api/v2/move/325/\"},{\"name\":\"signal-beam\",\"url\":\"https://pokeapi.co/api/v2/move/324/\"},{\"name\":\"water-spout\",\"url\":\"https://pokeapi.co/api/v2/move/323/\"},{\"name\":\"cosmic-power\",\"url\":\"https://pokeapi.co/api/v2/move/322/\"},{\"name\":\"tickle\",\"url\":\"https://pokeapi.co/api/v2/move/321/\"},{\"name\":\"grass-whistle\",\"url\":\"https://pokeapi.co/api/v2/move/320/\"},{\"name\":\"metal-sound\",\"url\":\"https://pokeapi.co/api/v2/move/319/\"},{\"name\":\"silver-wind\",\"url\":\"https://pokeapi.co/api/v2/move/318/\"},{\"name\":\"rock-tomb\",\"url\":\"https://pokeapi.co/api/v2/move/317/\"},{\"name\":\"odor-sleuth\",\"url\":\"https://pokeapi.co/api/v2/move/316/\"},{\"name\":\"overheat\",\"url\":\"https://pokeapi.co/api/v2/move/315/\"},{\"name\":\"air-cutter\",\"url\":\"https://pokeapi.co/api/v2/move/314/\"},{\"name\":\"fake-tears\",\"url\":\"https://pokeapi.co/api/v2/move/313/\"},{\"name\":\"aromatherapy\",\"url\":\"https://pokeapi.co/api/v2/move/312/\"},{\"name\":\"weather-ball\",\"url\":\"https://pokeapi.co/api/v2/move/311/\"},{\"name\":\"astonish\",\"url\":\"https://pokeapi.co/api/v2/move/310/\"},{\"name\":\"meteor-mash\",\"url\":\"https://pokeapi.co/api/v2/move/309/\"},{\"name\":\"hydro-cannon\",\"url\":\"https://pokeapi.co/api/v2/move/308/\"},{\"name\":\"blast-burn\",\"url\":\"https://pokeapi.co/api/v2/move/307/\"},{\"name\":\"crush-claw\",\"url\":\"https://pokeapi.co/api/v2/move/306/\"},{\"name\":\"poison-fang\",\"url\":\"https://pokeapi.co/api/v2/move/305/\"},{\"name\":\"hyper-voice\",\"url\":\"https://pokeapi.co/api/v2/move/304/\"},{\"name\":\"slack-off\",\"url\":\"https://pokeapi.co/api/v2/move/303/\"},{\"name\":\"needle-arm\",\"url\":\"https://pokeapi.co/api/v2/move/302/\"},{\"name\":\"ice-ball\",\"url\":\"https://pokeapi.co/api/v2/move/301/\"},{\"name\":\"mud-sport\",\"url\":\"https://pokeapi.co/api/v2/move/300/\"},{\"name\":\"blaze-kick\",\"url\":\"https://pokeapi.co/api/v2/move/299/\"},{\"name\":\"teeter-dance\",\"url\":\"https://pokeapi.co/api/v2/move/298/\"},{\"name\":\"feather-dance\",\"url\":\"https://pokeapi.co/api/v2/move/297/\"},{\"name\":\"mist-ball\",\"url\":\"https://pokeapi.co/api/v2/move/296/\"},{\"name\":\"luster-purge\",\"url\":\"https://pokeapi.co/api/v2/move/295/\"},{\"name\":\"tail-glow\",\"url\":\"https://pokeapi.co/api/v2/move/294/\"},{\"name\":\"camouflage\",\"url\":\"https://pokeapi.co/api/v2/move/293/\"},{\"name\":\"arm-thrust\",\"url\":\"https://pokeapi.co/api/v2/move/292/\"},{\"name\":\"dive\",\"url\":\"https://pokeapi.co/api/v2/move/291/\"},{\"name\":\"secret-power\",\"url\":\"https://pokeapi.co/api/v2/move/290/\"},{\"name\":\"snatch\",\"url\":\"https://pokeapi.co/api/v2/move/289/\"},{\"name\":\"grudge\",\"url\":\"https://pokeapi.co/api/v2/move/288/\"},{\"name\":\"refresh\",\"url\":\"https://pokeapi.co/api/v2/move/287/\"},{\"name\":\"imprison\",\"url\":\"https://pokeapi.co/api/v2/move/286/\"},{\"name\":\"skill-swap\",\"url\":\"https://pokeapi.co/api/v2/move/285/\"},{\"name\":\"eruption\",\"url\":\"https://pokeapi.co/api/v2/move/284/\"},{\"name\":\"endeavor\",\"url\":\"https://pokeapi.co/api/v2/move/283/\"},{\"name\":\"knock-off\",\"url\":\"https://pokeapi.co/api/v2/move/282/\"},{\"name\":\"yawn\",\"url\":\"https://pokeapi.co/api/v2/move/281/\"},{\"name\":\"brick-break\",\"url\":\"https://pokeapi.co/api/v2/move/280/\"},{\"name\":\"revenge\",\"url\":\"https://pokeapi.co/api/v2/move/279/\"},{\"name\":\"recycle\",\"url\":\"https://pokeapi.co/api/v2/move/278/\"},{\"name\":\"magic-coat\",\"url\":\"https://pokeapi.co/api/v2/move/277/\"},{\"name\":\"superpower\",\"url\":\"https://pokeapi.co/api/v2/move/276/\"},{\"name\":\"ingrain\",\"url\":\"https://pokeapi.co/api/v2/move/275/\"},{\"name\":\"assist\",\"url\":\"https://pokeapi.co/api/v2/move/274/\"},{\"name\":\"wish\",\"url\":\"https://pokeapi.co/api/v2/move/273/\"},{\"name\":\"role-play\",\"url\":\"https://pokeapi.co/api/v2/move/272/\"},{\"name\":\"trick\",\"url\":\"https://pokeapi.co/api/v2/move/271/\"},{\"name\":\"helping-hand\",\"url\":\"https://pokeapi.co/api/v2/move/270/\"},{\"name\":\"taunt\",\"url\":\"https://pokeapi.co/api/v2/move/269/\"},{\"name\":\"charge\",\"url\":\"https://pokeapi.co/api/v2/move/268/\"},{\"name\":\"nature-power\",\"url\":\"https://pokeapi.co/api/v2/move/267/\"},{\"name\":\"follow-me\",\"url\":\"https://pokeapi.co/api/v2/move/266/\"},{\"name\":\"smelling-salts\",\"url\":\"https://pokeapi.co/api/v2/move/265/\"},{\"name\":\"focus-punch\",\"url\":\"https://pokeapi.co/api/v2/move/264/\"},{\"name\":\"facade\",\"url\":\"https://pokeapi.co/api/v2/move/263/\"},{\"name\":\"memento\",\"url\":\"https://pokeapi.co/api/v2/move/262/\"},{\"name\":\"will-o-wisp\",\"url\":\"https://pokeapi.co/api/v2/move/261/\"},{\"name\":\"flatter\",\"url\":\"https://pokeapi.co/api/v2/move/260/\"},{\"name\":\"torment\",\"url\":\"https://pokeapi.co/api/v2/move/259/\"},{\"name\":\"hail\",\"url\":\"https://pokeapi.co/api/v2/move/258/\"},{\"name\":\"heat-wave\",\"url\":\"https://pokeapi.co/api/v2/move/257/\"},{\"name\":\"swallow\",\"url\":\"https://pokeapi.co/api/v2/move/256/\"},{\"name\":\"spit-up\",\"url\":\"https://pokeapi.co/api/v2/move/255/\"},{\"name\":\"stockpile\",\"url\":\"https://pokeapi.co/api/v2/move/254/\"},{\"name\":\"uproar\",\"url\":\"https://pokeapi.co/api/v2/move/253/\"},{\"name\":\"fake-out\",\"url\":\"https://pokeapi.co/api/v2/move/252/\"}],\"name\":\"generation-iii\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"だいさんせだい\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Génération III\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Generation III\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Generation III\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"第三世代\"}],\"pokemon_species\":[{\"name\":\"metagross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/376/\"},{\"name\":\"metang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/375/\"},{\"name\":\"salamence\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/373/\"},{\"name\":\"shelgon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/372/\"},{\"name\":\"gorebyss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/368/\"},{\"name\":\"huntail\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/367/\"},{\"name\":\"walrein\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/365/\"},{\"name\":\"sealeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/364/\"},{\"name\":\"glalie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/362/\"},{\"name\":\"chimecho\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/358/\"},{\"name\":\"dusclops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/356/\"},{\"name\":\"banette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/354/\"},{\"name\":\"milotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/350/\"},{\"name\":\"armaldo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/348/\"},{\"name\":\"cradily\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/346/\"},{\"name\":\"claydol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/344/\"},{\"name\":\"crawdaunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/342/\"},{\"name\":\"whiscash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/340/\"},{\"name\":\"altaria\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/334/\"},{\"name\":\"cacturne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/332/\"},{\"name\":\"flygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/330/\"},{\"name\":\"vibrava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/329/\"},{\"name\":\"grumpig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/326/\"},{\"name\":\"camerupt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/323/\"},{\"name\":\"wailord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/321/\"},{\"name\":\"sharpedo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/319/\"},{\"name\":\"swalot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/317/\"},{\"name\":\"roselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/315/\"},{\"name\":\"manectric\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/310/\"},{\"name\":\"medicham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/308/\"},{\"name\":\"aggron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/306/\"},{\"name\":\"lairon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/305/\"},{\"name\":\"delcatty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/301/\"},{\"name\":\"hariyama\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/297/\"},{\"name\":\"exploud\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/295/\"},{\"name\":\"loudred\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/294/\"},{\"name\":\"shedinja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/292/\"},{\"name\":\"ninjask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/291/\"},{\"name\":\"slaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/289/\"},{\"name\":\"vigoroth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/288/\"},{\"name\":\"breloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/286/\"},{\"name\":\"masquerain\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/284/\"},{\"name\":\"gardevoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/282/\"},{\"name\":\"kirlia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/281/\"},{\"name\":\"pelipper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/279/\"},{\"name\":\"swellow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/277/\"},{\"name\":\"shiftry\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/275/\"},{\"name\":\"nuzleaf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/274/\"},{\"name\":\"ludicolo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/272/\"},{\"name\":\"lombre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/271/\"},{\"name\":\"dustox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/269/\"},{\"name\":\"cascoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/268/\"},{\"name\":\"beautifly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/267/\"},{\"name\":\"silcoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/266/\"},{\"name\":\"linoone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/264/\"},{\"name\":\"mightyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/262/\"},{\"name\":\"swampert\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/260/\"},{\"name\":\"marshtomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/259/\"},{\"name\":\"blaziken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/257/\"},{\"name\":\"combusken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/256/\"},{\"name\":\"sceptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/254/\"},{\"name\":\"grovyle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/253/\"},{\"name\":\"deoxys\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/386/\"},{\"name\":\"jirachi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/385/\"},{\"name\":\"rayquaza\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/384/\"},{\"name\":\"groudon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/383/\"},{\"name\":\"kyogre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/382/\"},{\"name\":\"latios\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/381/\"},{\"name\":\"latias\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/380/\"},{\"name\":\"registeel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/379/\"},{\"name\":\"regice\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/378/\"},{\"name\":\"regirock\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/377/\"},{\"name\":\"beldum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/374/\"},{\"name\":\"bagon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/371/\"},{\"name\":\"luvdisc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/370/\"},{\"name\":\"relicanth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/369/\"},{\"name\":\"clamperl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/366/\"},{\"name\":\"spheal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/363/\"},{\"name\":\"snorunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/361/\"},{\"name\":\"wynaut\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/360/\"},{\"name\":\"absol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/359/\"},{\"name\":\"tropius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/357/\"},{\"name\":\"duskull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/355/\"},{\"name\":\"shuppet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/353/\"},{\"name\":\"kecleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/352/\"},{\"name\":\"castform\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/351/\"},{\"name\":\"feebas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/349/\"},{\"name\":\"anorith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/347/\"},{\"name\":\"lileep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/345/\"},{\"name\":\"baltoy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/343/\"},{\"name\":\"corphish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/341/\"},{\"name\":\"barboach\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/339/\"},{\"name\":\"solrock\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/338/\"},{\"name\":\"lunatone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/337/\"},{\"name\":\"seviper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/336/\"},{\"name\":\"zangoose\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/335/\"},{\"name\":\"swablu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/333/\"},{\"name\":\"cacnea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/331/\"},{\"name\":\"trapinch\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/328/\"},{\"name\":\"spinda\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/327/\"},{\"name\":\"spoink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/325/\"},{\"name\":\"torkoal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/324/\"},{\"name\":\"numel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/322/\"},{\"name\":\"wailmer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/320/\"},{\"name\":\"carvanha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/318/\"},{\"name\":\"gulpin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/316/\"},{\"name\":\"illumise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/314/\"},{\"name\":\"volbeat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/313/\"},{\"name\":\"minun\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/312/\"},{\"name\":\"plusle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/311/\"},{\"name\":\"electrike\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/309/\"},{\"name\":\"meditite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/307/\"},{\"name\":\"aron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/304/\"},{\"name\":\"mawile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/303/\"},{\"name\":\"sableye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/302/\"},{\"name\":\"skitty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/300/\"},{\"name\":\"nosepass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/299/\"},{\"name\":\"azurill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/298/\"},{\"name\":\"makuhita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/296/\"},{\"name\":\"whismur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/293/\"},{\"name\":\"nincada\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/290/\"},{\"name\":\"slakoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/287/\"},{\"name\":\"shroomish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/285/\"},{\"name\":\"surskit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/283/\"},{\"name\":\"ralts\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/280/\"},{\"name\":\"wingull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/278/\"},{\"name\":\"taillow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/276/\"},{\"name\":\"seedot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/273/\"},{\"name\":\"lotad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/270/\"},{\"name\":\"wurmple\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/265/\"},{\"name\":\"zigzagoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/263/\"},{\"name\":\"poochyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/261/\"},{\"name\":\"mudkip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/258/\"},{\"name\":\"torchic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/255/\"},{\"name\":\"treecko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/252/\"}],\"types\":[{\"name\":\"shadow\",\"url\":\"https://pokeapi.co/api/v2/type/10002/\"}],\"version_groups\":[{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"},{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"},{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"},{\"name\":\"colosseum\",\"url\":\"https://pokeapi.co/api/v2/version-group/12/\"},{\"name\":\"xd\",\"url\":\"https://pokeapi.co/api/v2/version-group/13/\"}]}","asText":null}}},"tags":[]},{"uuid":"02994da1-dbe4-4d07-9410-0bb22dc5a17d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/growth-rate/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,205,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,188,1,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,102,111,114,109,117,108,97,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,185,27,10,6,108,101,118,101,108,115,18,174,27,8,1,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,232,4,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,212,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"slow then very fast\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}},{\"description\":\"langsam, dann sehr schnell\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"}},{\"description\":\"erratique\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}}],\"formula\":\"\\\\begin{cases}\\n\\\\frac{ x^3 \\\\left( 100 - x \\\\right) }{50}, & \\\\text{if } x \\\\leq 50 \\\\\\\\\\n\\\\frac{ x^3 \\\\left( 150 - x \\\\right) }{100}, & \\\\text{if } 50 < x \\\\leq 68 \\\\\\\\\\n\\\\frac{ x^3 \\\\left( 1274 + (x \\\\bmod 3)^2 - 9 (x \\\\bmod 3) - 20 \\\\left\\\\lfloor \\\\frac{x}{3} \\\\right\\\\rfloor \\\\right) }{1000}, & \\\\text{if } 68 < x \\\\leq 98 \\\\\\\\\\n\\\\frac{ x^3 \\\\left( 160 - x \\\\right) }{100}, & \\\\text{if } x > 98 \\\\\\\\\\n\\\\end{cases}\",\"id\":5,\"levels\":[{\"experience\":600000,\"level\":100},{\"experience\":591882,\"level\":99},{\"experience\":583539,\"level\":98},{\"experience\":571333,\"level\":97},{\"experience\":560922,\"level\":96},{\"experience\":548720,\"level\":95},{\"experience\":536557,\"level\":94},{\"experience\":526049,\"level\":93},{\"experience\":513934,\"level\":92},{\"experience\":501878,\"level\":91},{\"experience\":491346,\"level\":90},{\"experience\":479378,\"level\":89},{\"experience\":467489,\"level\":88},{\"experience\":457001,\"level\":87},{\"experience\":445239,\"level\":86},{\"experience\":433572,\"level\":85},{\"experience\":423190,\"level\":84},{\"experience\":411686,\"level\":83},{\"experience\":400293,\"level\":82},{\"experience\":390077,\"level\":81},{\"experience\":378880,\"level\":80},{\"experience\":367807,\"level\":79},{\"experience\":357812,\"level\":78},{\"experience\":346965,\"level\":77},{\"experience\":336255,\"level\":76},{\"experience\":326531,\"level\":75},{\"experience\":316074,\"level\":74},{\"experience\":305767,\"level\":73},{\"experience\":296358,\"level\":72},{\"experience\":286328,\"level\":71},{\"experience\":276458,\"level\":70},{\"experience\":267406,\"level\":69},{\"experience\":257834,\"level\":68},{\"experience\":249633,\"level\":67},{\"experience\":241496,\"level\":66},{\"experience\":233431,\"level\":65},{\"experience\":225443,\"level\":64},{\"experience\":217540,\"level\":63},{\"experience\":209728,\"level\":62},{\"experience\":202013,\"level\":61},{\"experience\":194400,\"level\":60},{\"experience\":186894,\"level\":59},{\"experience\":179503,\"level\":58},{\"experience\":172229,\"level\":57},{\"experience\":165079,\"level\":56},{\"experience\":158056,\"level\":55},{\"experience\":151165,\"level\":54},{\"experience\":144410,\"level\":53},{\"experience\":137795,\"level\":52},{\"experience\":131324,\"level\":51},{\"experience\":125000,\"level\":50},{\"experience\":120001,\"level\":49},{\"experience\":115015,\"level\":48},{\"experience\":110052,\"level\":47},{\"experience\":105122,\"level\":46},{\"experience\":100237,\"level\":45},{\"experience\":95406,\"level\":44},{\"experience\":90637,\"level\":43},{\"experience\":85942,\"level\":42},{\"experience\":81326,\"level\":41},{\"experience\":76800,\"level\":40},{\"experience\":72369,\"level\":39},{\"experience\":68041,\"level\":38},{\"experience\":63822,\"level\":37},{\"experience\":59719,\"level\":36},{\"experience\":55737,\"level\":35},{\"experience\":51881,\"level\":34},{\"experience\":48155,\"level\":33},{\"experience\":44564,\"level\":32},{\"experience\":41111,\"level\":31},{\"experience\":37800,\"level\":30},{\"experience\":34632,\"level\":29},{\"experience\":31610,\"level\":28},{\"experience\":28737,\"level\":27},{\"experience\":26012,\"level\":26},{\"experience\":23437,\"level\":25},{\"experience\":21012,\"level\":24},{\"experience\":18737,\"level\":23},{\"experience\":16610,\"level\":22},{\"experience\":14632,\"level\":21},{\"experience\":12800,\"level\":20},{\"experience\":11111,\"level\":19},{\"experience\":9564,\"level\":18},{\"experience\":8155,\"level\":17},{\"experience\":6881,\"level\":16},{\"experience\":5737,\"level\":15},{\"experience\":4719,\"level\":14},{\"experience\":3822,\"level\":13},{\"experience\":3041,\"level\":12},{\"experience\":2369,\"level\":11},{\"experience\":1800,\"level\":10},{\"experience\":1326,\"level\":9},{\"experience\":942,\"level\":8},{\"experience\":637,\"level\":7},{\"experience\":406,\"level\":6},{\"experience\":237,\"level\":5},{\"experience\":122,\"level\":4},{\"experience\":52,\"level\":3},{\"experience\":15,\"level\":2},{\"experience\":0,\"level\":1}],\"name\":\"slow-then-very-fast\",\"pokemon_species\":[{\"name\":\"nincada\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/290/\"},{\"name\":\"volbeat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/313/\"},{\"name\":\"ninjask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/291/\"},{\"name\":\"shedinja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/292/\"},{\"name\":\"swablu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/333/\"},{\"name\":\"zangoose\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/335/\"},{\"name\":\"lileep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/345/\"},{\"name\":\"anorith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/347/\"},{\"name\":\"feebas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/349/\"},{\"name\":\"clamperl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/366/\"},{\"name\":\"altaria\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/334/\"},{\"name\":\"cradily\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/346/\"},{\"name\":\"armaldo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/348/\"},{\"name\":\"milotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/350/\"},{\"name\":\"huntail\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/367/\"},{\"name\":\"gorebyss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/368/\"},{\"name\":\"cranidos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/408/\"},{\"name\":\"shieldon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/410/\"},{\"name\":\"finneon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/456/\"},{\"name\":\"rampardos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/409/\"},{\"name\":\"bastiodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/411/\"},{\"name\":\"lumineon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/457/\"}]}","asText":null}}},"tags":[]},{"uuid":"2b893e64-f0e2-419c-bc7d-f2b4151db418","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/growth-rate/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,205,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,188,1,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,102,111,114,109,117,108,97,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,185,27,10,6,108,101,118,101,108,115,18,174,27,8,1,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,144,3,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,252,2,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"fast then very slow\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}},{\"description\":\"schnell, dann sehr langsam\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"}},{\"description\":\"fluctuante\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}}],\"formula\":\"\\\\begin{cases}\\n\\\\frac{ x^3 \\\\left( 24 + \\\\left\\\\lfloor \\\\frac{x+1}{3} \\\\right\\\\rfloor \\\\right) }{50}, & \\\\text{if } x \\\\leq 15 \\\\\\\\\\n\\\\frac{ x^3 \\\\left( 14 + x \\\\right) }{50}, & \\\\text{if } 15 < x \\\\leq 35 \\\\\\\\\\n\\\\frac{ x^3 \\\\left( 32 + \\\\left\\\\lfloor \\\\frac{x}{2} \\\\right\\\\rfloor \\\\right ) }{50}, & \\\\text{if } x > 35 \\\\\\\\\\n\\\\end{cases}\",\"id\":6,\"levels\":[{\"experience\":1640000,\"level\":100},{\"experience\":1571884,\"level\":99},{\"experience\":1524731,\"level\":98},{\"experience\":1460276,\"level\":97},{\"experience\":1415577,\"level\":96},{\"experience\":1354652,\"level\":95},{\"experience\":1312322,\"level\":94},{\"experience\":1254796,\"level\":93},{\"experience\":1214753,\"level\":92},{\"experience\":1160499,\"level\":91},{\"experience\":1122660,\"level\":90},{\"experience\":1071552,\"level\":89},{\"experience\":1035837,\"level\":88},{\"experience\":987754,\"level\":87},{\"experience\":954084,\"level\":86},{\"experience\":908905,\"level\":85},{\"experience\":877201,\"level\":84},{\"experience\":834809,\"level\":83},{\"experience\":804997,\"level\":82},{\"experience\":765275,\"level\":81},{\"experience\":737280,\"level\":80},{\"experience\":700115,\"level\":79},{\"experience\":673863,\"level\":78},{\"experience\":639146,\"level\":77},{\"experience\":614566,\"level\":76},{\"experience\":582187,\"level\":75},{\"experience\":559209,\"level\":74},{\"experience\":529063,\"level\":73},{\"experience\":507617,\"level\":72},{\"experience\":479600,\"level\":71},{\"experience\":459620,\"level\":70},{\"experience\":433631,\"level\":69},{\"experience\":415050,\"level\":68},{\"experience\":390991,\"level\":67},{\"experience\":373744,\"level\":66},{\"experience\":351520,\"level\":65},{\"experience\":335544,\"level\":64},{\"experience\":315059,\"level\":63},{\"experience\":300293,\"level\":62},{\"experience\":281456,\"level\":61},{\"experience\":267840,\"level\":60},{\"experience\":250562,\"level\":59},{\"experience\":238036,\"level\":58},{\"experience\":222231,\"level\":57},{\"experience\":210739,\"level\":56},{\"experience\":196322,\"level\":55},{\"experience\":185807,\"level\":54},{\"experience\":172697,\"level\":53},{\"experience\":163105,\"level\":52},{\"experience\":151222,\"level\":51},{\"experience\":142500,\"level\":50},{\"experience\":131766,\"level\":49},{\"experience\":123863,\"level\":48},{\"experience\":114205,\"level\":47},{\"experience\":107069,\"level\":46},{\"experience\":98415,\"level\":45},{\"experience\":91998,\"level\":44},{\"experience\":84277,\"level\":43},{\"experience\":78533,\"level\":42},{\"experience\":71677,\"level\":41},{\"experience\":66560,\"level\":40},{\"experience\":60505,\"level\":39},{\"experience\":55969,\"level\":38},{\"experience\":50653,\"level\":37},{\"experience\":46656,\"level\":36},{\"experience\":42017,\"level\":35},{\"experience\":37731,\"level\":34},{\"experience\":33780,\"level\":33},{\"experience\":30146,\"level\":32},{\"experience\":26811,\"level\":31},{\"experience\":23760,\"level\":30},{\"experience\":20974,\"level\":29},{\"experience\":18439,\"level\":28},{\"experience\":16140,\"level\":27},{\"experience\":14060,\"level\":26},{\"experience\":12187,\"level\":25},{\"experience\":10506,\"level\":24},{\"experience\":9003,\"level\":23},{\"experience\":7666,\"level\":22},{\"experience\":6482,\"level\":21},{\"experience\":5440,\"level\":20},{\"experience\":4526,\"level\":19},{\"experience\":3732,\"level\":18},{\"experience\":3046,\"level\":17},{\"experience\":2457,\"level\":16},{\"experience\":1957,\"level\":15},{\"experience\":1591,\"level\":14},{\"experience\":1230,\"level\":13},{\"experience\":967,\"level\":12},{\"experience\":745,\"level\":11},{\"experience\":540,\"level\":10},{\"experience\":393,\"level\":9},{\"experience\":276,\"level\":8},{\"experience\":178,\"level\":7},{\"experience\":112,\"level\":6},{\"experience\":65,\"level\":5},{\"experience\":32,\"level\":4},{\"experience\":13,\"level\":3},{\"experience\":4,\"level\":2},{\"experience\":0,\"level\":1}],\"name\":\"fast-then-very-slow\",\"pokemon_species\":[{\"name\":\"shroomish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/285/\"},{\"name\":\"makuhita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/296/\"},{\"name\":\"illumise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/314/\"},{\"name\":\"breloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/286/\"},{\"name\":\"hariyama\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/297/\"},{\"name\":\"gulpin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/316/\"},{\"name\":\"wailmer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/320/\"},{\"name\":\"seviper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/336/\"},{\"name\":\"corphish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/341/\"},{\"name\":\"swalot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/317/\"},{\"name\":\"wailord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/321/\"},{\"name\":\"crawdaunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/342/\"},{\"name\":\"drifloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/425/\"},{\"name\":\"drifblim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/426/\"}]}","asText":null}}},"tags":[]},{"uuid":"2968d38f-8f74-43fc-827e-094a4ba71f71","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/generation/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,183,21,10,9,97,98,105,108,105,116,105,101,115,18,169,21,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,40,10,11,109,97,105,110,95,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,192,19,10,5,109,111,118,101,115,18,182,19,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,159,2,10,5,110,97,109,101,115,18,149,2,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,138,33,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,246,32,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,11,10,5,116,121,112,101,115,18,2,8,1,18,74,10,14,118,101,114,115,105,111,110,95,103,114,111,117,112,115,18,56,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"abilities\":[{\"name\":\"pickpocket\",\"url\":\"https://pokeapi.co/api/v2/ability/124/\"},{\"name\":\"sheer-force\",\"url\":\"https://pokeapi.co/api/v2/ability/125/\"},{\"name\":\"contrary\",\"url\":\"https://pokeapi.co/api/v2/ability/126/\"},{\"name\":\"unnerve\",\"url\":\"https://pokeapi.co/api/v2/ability/127/\"},{\"name\":\"defiant\",\"url\":\"https://pokeapi.co/api/v2/ability/128/\"},{\"name\":\"defeatist\",\"url\":\"https://pokeapi.co/api/v2/ability/129/\"},{\"name\":\"cursed-body\",\"url\":\"https://pokeapi.co/api/v2/ability/130/\"},{\"name\":\"healer\",\"url\":\"https://pokeapi.co/api/v2/ability/131/\"},{\"name\":\"friend-guard\",\"url\":\"https://pokeapi.co/api/v2/ability/132/\"},{\"name\":\"weak-armor\",\"url\":\"https://pokeapi.co/api/v2/ability/133/\"},{\"name\":\"heavy-metal\",\"url\":\"https://pokeapi.co/api/v2/ability/134/\"},{\"name\":\"light-metal\",\"url\":\"https://pokeapi.co/api/v2/ability/135/\"},{\"name\":\"multiscale\",\"url\":\"https://pokeapi.co/api/v2/ability/136/\"},{\"name\":\"toxic-boost\",\"url\":\"https://pokeapi.co/api/v2/ability/137/\"},{\"name\":\"flare-boost\",\"url\":\"https://pokeapi.co/api/v2/ability/138/\"},{\"name\":\"harvest\",\"url\":\"https://pokeapi.co/api/v2/ability/139/\"},{\"name\":\"telepathy\",\"url\":\"https://pokeapi.co/api/v2/ability/140/\"},{\"name\":\"moody\",\"url\":\"https://pokeapi.co/api/v2/ability/141/\"},{\"name\":\"overcoat\",\"url\":\"https://pokeapi.co/api/v2/ability/142/\"},{\"name\":\"poison-touch\",\"url\":\"https://pokeapi.co/api/v2/ability/143/\"},{\"name\":\"regenerator\",\"url\":\"https://pokeapi.co/api/v2/ability/144/\"},{\"name\":\"big-pecks\",\"url\":\"https://pokeapi.co/api/v2/ability/145/\"},{\"name\":\"sand-rush\",\"url\":\"https://pokeapi.co/api/v2/ability/146/\"},{\"name\":\"wonder-skin\",\"url\":\"https://pokeapi.co/api/v2/ability/147/\"},{\"name\":\"analytic\",\"url\":\"https://pokeapi.co/api/v2/ability/148/\"},{\"name\":\"illusion\",\"url\":\"https://pokeapi.co/api/v2/ability/149/\"},{\"name\":\"imposter\",\"url\":\"https://pokeapi.co/api/v2/ability/150/\"},{\"name\":\"infiltrator\",\"url\":\"https://pokeapi.co/api/v2/ability/151/\"},{\"name\":\"mummy\",\"url\":\"https://pokeapi.co/api/v2/ability/152/\"},{\"name\":\"moxie\",\"url\":\"https://pokeapi.co/api/v2/ability/153/\"},{\"name\":\"justified\",\"url\":\"https://pokeapi.co/api/v2/ability/154/\"},{\"name\":\"rattled\",\"url\":\"https://pokeapi.co/api/v2/ability/155/\"},{\"name\":\"magic-bounce\",\"url\":\"https://pokeapi.co/api/v2/ability/156/\"},{\"name\":\"sap-sipper\",\"url\":\"https://pokeapi.co/api/v2/ability/157/\"},{\"name\":\"prankster\",\"url\":\"https://pokeapi.co/api/v2/ability/158/\"},{\"name\":\"sand-force\",\"url\":\"https://pokeapi.co/api/v2/ability/159/\"},{\"name\":\"iron-barbs\",\"url\":\"https://pokeapi.co/api/v2/ability/160/\"},{\"name\":\"zen-mode\",\"url\":\"https://pokeapi.co/api/v2/ability/161/\"},{\"name\":\"victory-star\",\"url\":\"https://pokeapi.co/api/v2/ability/162/\"},{\"name\":\"turboblaze\",\"url\":\"https://pokeapi.co/api/v2/ability/163/\"},{\"name\":\"teravolt\",\"url\":\"https://pokeapi.co/api/v2/ability/164/\"},{\"name\":\"mountaineer\",\"url\":\"https://pokeapi.co/api/v2/ability/10001/\"},{\"name\":\"wave-rider\",\"url\":\"https://pokeapi.co/api/v2/ability/10002/\"},{\"name\":\"skater\",\"url\":\"https://pokeapi.co/api/v2/ability/10003/\"},{\"name\":\"thrust\",\"url\":\"https://pokeapi.co/api/v2/ability/10004/\"},{\"name\":\"perception\",\"url\":\"https://pokeapi.co/api/v2/ability/10005/\"},{\"name\":\"parry\",\"url\":\"https://pokeapi.co/api/v2/ability/10006/\"},{\"name\":\"instinct\",\"url\":\"https://pokeapi.co/api/v2/ability/10007/\"},{\"name\":\"dodge\",\"url\":\"https://pokeapi.co/api/v2/ability/10008/\"},{\"name\":\"jagged-edge\",\"url\":\"https://pokeapi.co/api/v2/ability/10009/\"},{\"name\":\"frostbite\",\"url\":\"https://pokeapi.co/api/v2/ability/10010/\"},{\"name\":\"tenacity\",\"url\":\"https://pokeapi.co/api/v2/ability/10011/\"},{\"name\":\"pride\",\"url\":\"https://pokeapi.co/api/v2/ability/10012/\"},{\"name\":\"deep-sleep\",\"url\":\"https://pokeapi.co/api/v2/ability/10013/\"},{\"name\":\"power-nap\",\"url\":\"https://pokeapi.co/api/v2/ability/10014/\"},{\"name\":\"spirit\",\"url\":\"https://pokeapi.co/api/v2/ability/10015/\"},{\"name\":\"warm-blanket\",\"url\":\"https://pokeapi.co/api/v2/ability/10016/\"},{\"name\":\"gulp\",\"url\":\"https://pokeapi.co/api/v2/ability/10017/\"},{\"name\":\"herbivore\",\"url\":\"https://pokeapi.co/api/v2/ability/10018/\"},{\"name\":\"sandpit\",\"url\":\"https://pokeapi.co/api/v2/ability/10019/\"},{\"name\":\"hot-blooded\",\"url\":\"https://pokeapi.co/api/v2/ability/10020/\"},{\"name\":\"medic\",\"url\":\"https://pokeapi.co/api/v2/ability/10021/\"},{\"name\":\"life-force\",\"url\":\"https://pokeapi.co/api/v2/ability/10022/\"},{\"name\":\"lunchbox\",\"url\":\"https://pokeapi.co/api/v2/ability/10023/\"},{\"name\":\"nurse\",\"url\":\"https://pokeapi.co/api/v2/ability/10024/\"},{\"name\":\"melee\",\"url\":\"https://pokeapi.co/api/v2/ability/10025/\"},{\"name\":\"sponge\",\"url\":\"https://pokeapi.co/api/v2/ability/10026/\"},{\"name\":\"bodyguard\",\"url\":\"https://pokeapi.co/api/v2/ability/10027/\"},{\"name\":\"hero\",\"url\":\"https://pokeapi.co/api/v2/ability/10028/\"},{\"name\":\"last-bastion\",\"url\":\"https://pokeapi.co/api/v2/ability/10029/\"},{\"name\":\"stealth\",\"url\":\"https://pokeapi.co/api/v2/ability/10030/\"},{\"name\":\"vanguard\",\"url\":\"https://pokeapi.co/api/v2/ability/10031/\"},{\"name\":\"nomad\",\"url\":\"https://pokeapi.co/api/v2/ability/10032/\"},{\"name\":\"sequence\",\"url\":\"https://pokeapi.co/api/v2/ability/10033/\"},{\"name\":\"grass-cloak\",\"url\":\"https://pokeapi.co/api/v2/ability/10034/\"},{\"name\":\"celebrate\",\"url\":\"https://pokeapi.co/api/v2/ability/10035/\"},{\"name\":\"lullaby\",\"url\":\"https://pokeapi.co/api/v2/ability/10036/\"},{\"name\":\"calming\",\"url\":\"https://pokeapi.co/api/v2/ability/10037/\"},{\"name\":\"daze\",\"url\":\"https://pokeapi.co/api/v2/ability/10038/\"},{\"name\":\"frighten\",\"url\":\"https://pokeapi.co/api/v2/ability/10039/\"},{\"name\":\"interference\",\"url\":\"https://pokeapi.co/api/v2/ability/10040/\"},{\"name\":\"mood-maker\",\"url\":\"https://pokeapi.co/api/v2/ability/10041/\"},{\"name\":\"confidence\",\"url\":\"https://pokeapi.co/api/v2/ability/10042/\"},{\"name\":\"fortune\",\"url\":\"https://pokeapi.co/api/v2/ability/10043/\"},{\"name\":\"bonanza\",\"url\":\"https://pokeapi.co/api/v2/ability/10044/\"},{\"name\":\"explode\",\"url\":\"https://pokeapi.co/api/v2/ability/10045/\"},{\"name\":\"omnipotent\",\"url\":\"https://pokeapi.co/api/v2/ability/10046/\"},{\"name\":\"share\",\"url\":\"https://pokeapi.co/api/v2/ability/10047/\"},{\"name\":\"black-hole\",\"url\":\"https://pokeapi.co/api/v2/ability/10048/\"},{\"name\":\"shadow-dash\",\"url\":\"https://pokeapi.co/api/v2/ability/10049/\"},{\"name\":\"sprint\",\"url\":\"https://pokeapi.co/api/v2/ability/10050/\"},{\"name\":\"disgust\",\"url\":\"https://pokeapi.co/api/v2/ability/10051/\"},{\"name\":\"high-rise\",\"url\":\"https://pokeapi.co/api/v2/ability/10052/\"},{\"name\":\"climber\",\"url\":\"https://pokeapi.co/api/v2/ability/10053/\"},{\"name\":\"flame-boost\",\"url\":\"https://pokeapi.co/api/v2/ability/10054/\"},{\"name\":\"aqua-boost\",\"url\":\"https://pokeapi.co/api/v2/ability/10055/\"},{\"name\":\"run-up\",\"url\":\"https://pokeapi.co/api/v2/ability/10056/\"},{\"name\":\"conqueror\",\"url\":\"https://pokeapi.co/api/v2/ability/10057/\"},{\"name\":\"shackle\",\"url\":\"https://pokeapi.co/api/v2/ability/10058/\"},{\"name\":\"decoy\",\"url\":\"https://pokeapi.co/api/v2/ability/10059/\"},{\"name\":\"shield\",\"url\":\"https://pokeapi.co/api/v2/ability/10060/\"}],\"id\":5,\"main_region\":{\"name\":\"unova\",\"url\":\"https://pokeapi.co/api/v2/region/5/\"},\"moves\":[{\"name\":\"fusion-bolt\",\"url\":\"https://pokeapi.co/api/v2/move/559/\"},{\"name\":\"fusion-flare\",\"url\":\"https://pokeapi.co/api/v2/move/558/\"},{\"name\":\"v-create\",\"url\":\"https://pokeapi.co/api/v2/move/557/\"},{\"name\":\"icicle-crash\",\"url\":\"https://pokeapi.co/api/v2/move/556/\"},{\"name\":\"snarl\",\"url\":\"https://pokeapi.co/api/v2/move/555/\"},{\"name\":\"ice-burn\",\"url\":\"https://pokeapi.co/api/v2/move/554/\"},{\"name\":\"freeze-shock\",\"url\":\"https://pokeapi.co/api/v2/move/553/\"},{\"name\":\"fiery-dance\",\"url\":\"https://pokeapi.co/api/v2/move/552/\"},{\"name\":\"blue-flare\",\"url\":\"https://pokeapi.co/api/v2/move/551/\"},{\"name\":\"bolt-strike\",\"url\":\"https://pokeapi.co/api/v2/move/550/\"},{\"name\":\"glaciate\",\"url\":\"https://pokeapi.co/api/v2/move/549/\"},{\"name\":\"secret-sword\",\"url\":\"https://pokeapi.co/api/v2/move/548/\"},{\"name\":\"relic-song\",\"url\":\"https://pokeapi.co/api/v2/move/547/\"},{\"name\":\"techno-blast\",\"url\":\"https://pokeapi.co/api/v2/move/546/\"},{\"name\":\"searing-shot\",\"url\":\"https://pokeapi.co/api/v2/move/545/\"},{\"name\":\"gear-grind\",\"url\":\"https://pokeapi.co/api/v2/move/544/\"},{\"name\":\"head-charge\",\"url\":\"https://pokeapi.co/api/v2/move/543/\"},{\"name\":\"hurricane\",\"url\":\"https://pokeapi.co/api/v2/move/542/\"},{\"name\":\"tail-slap\",\"url\":\"https://pokeapi.co/api/v2/move/541/\"},{\"name\":\"psystrike\",\"url\":\"https://pokeapi.co/api/v2/move/540/\"},{\"name\":\"night-daze\",\"url\":\"https://pokeapi.co/api/v2/move/539/\"},{\"name\":\"cotton-guard\",\"url\":\"https://pokeapi.co/api/v2/move/538/\"},{\"name\":\"steamroller\",\"url\":\"https://pokeapi.co/api/v2/move/537/\"},{\"name\":\"leaf-tornado\",\"url\":\"https://pokeapi.co/api/v2/move/536/\"},{\"name\":\"heat-crash\",\"url\":\"https://pokeapi.co/api/v2/move/535/\"},{\"name\":\"razor-shell\",\"url\":\"https://pokeapi.co/api/v2/move/534/\"},{\"name\":\"sacred-sword\",\"url\":\"https://pokeapi.co/api/v2/move/533/\"},{\"name\":\"horn-leech\",\"url\":\"https://pokeapi.co/api/v2/move/532/\"},{\"name\":\"heart-stamp\",\"url\":\"https://pokeapi.co/api/v2/move/531/\"},{\"name\":\"dual-chop\",\"url\":\"https://pokeapi.co/api/v2/move/530/\"},{\"name\":\"drill-run\",\"url\":\"https://pokeapi.co/api/v2/move/529/\"},{\"name\":\"wild-charge\",\"url\":\"https://pokeapi.co/api/v2/move/528/\"},{\"name\":\"electroweb\",\"url\":\"https://pokeapi.co/api/v2/move/527/\"},{\"name\":\"work-up\",\"url\":\"https://pokeapi.co/api/v2/move/526/\"},{\"name\":\"dragon-tail\",\"url\":\"https://pokeapi.co/api/v2/move/525/\"},{\"name\":\"frost-breath\",\"url\":\"https://pokeapi.co/api/v2/move/524/\"},{\"name\":\"bulldoze\",\"url\":\"https://pokeapi.co/api/v2/move/523/\"},{\"name\":\"struggle-bug\",\"url\":\"https://pokeapi.co/api/v2/move/522/\"},{\"name\":\"volt-switch\",\"url\":\"https://pokeapi.co/api/v2/move/521/\"},{\"name\":\"grass-pledge\",\"url\":\"https://pokeapi.co/api/v2/move/520/\"},{\"name\":\"fire-pledge\",\"url\":\"https://pokeapi.co/api/v2/move/519/\"},{\"name\":\"water-pledge\",\"url\":\"https://pokeapi.co/api/v2/move/518/\"},{\"name\":\"inferno\",\"url\":\"https://pokeapi.co/api/v2/move/517/\"},{\"name\":\"bestow\",\"url\":\"https://pokeapi.co/api/v2/move/516/\"},{\"name\":\"final-gambit\",\"url\":\"https://pokeapi.co/api/v2/move/515/\"},{\"name\":\"retaliate\",\"url\":\"https://pokeapi.co/api/v2/move/514/\"},{\"name\":\"reflect-type\",\"url\":\"https://pokeapi.co/api/v2/move/513/\"},{\"name\":\"acrobatics\",\"url\":\"https://pokeapi.co/api/v2/move/512/\"},{\"name\":\"quash\",\"url\":\"https://pokeapi.co/api/v2/move/511/\"},{\"name\":\"incinerate\",\"url\":\"https://pokeapi.co/api/v2/move/510/\"},{\"name\":\"circle-throw\",\"url\":\"https://pokeapi.co/api/v2/move/509/\"},{\"name\":\"shift-gear\",\"url\":\"https://pokeapi.co/api/v2/move/508/\"},{\"name\":\"sky-drop\",\"url\":\"https://pokeapi.co/api/v2/move/507/\"},{\"name\":\"hex\",\"url\":\"https://pokeapi.co/api/v2/move/506/\"},{\"name\":\"heal-pulse\",\"url\":\"https://pokeapi.co/api/v2/move/505/\"},{\"name\":\"shell-smash\",\"url\":\"https://pokeapi.co/api/v2/move/504/\"},{\"name\":\"scald\",\"url\":\"https://pokeapi.co/api/v2/move/503/\"},{\"name\":\"ally-switch\",\"url\":\"https://pokeapi.co/api/v2/move/502/\"},{\"name\":\"quick-guard\",\"url\":\"https://pokeapi.co/api/v2/move/501/\"},{\"name\":\"stored-power\",\"url\":\"https://pokeapi.co/api/v2/move/500/\"},{\"name\":\"clear-smog\",\"url\":\"https://pokeapi.co/api/v2/move/499/\"},{\"name\":\"chip-away\",\"url\":\"https://pokeapi.co/api/v2/move/498/\"},{\"name\":\"echoed-voice\",\"url\":\"https://pokeapi.co/api/v2/move/497/\"},{\"name\":\"round\",\"url\":\"https://pokeapi.co/api/v2/move/496/\"},{\"name\":\"after-you\",\"url\":\"https://pokeapi.co/api/v2/move/495/\"},{\"name\":\"entrainment\",\"url\":\"https://pokeapi.co/api/v2/move/494/\"},{\"name\":\"simple-beam\",\"url\":\"https://pokeapi.co/api/v2/move/493/\"},{\"name\":\"foul-play\",\"url\":\"https://pokeapi.co/api/v2/move/492/\"},{\"name\":\"acid-spray\",\"url\":\"https://pokeapi.co/api/v2/move/491/\"},{\"name\":\"low-sweep\",\"url\":\"https://pokeapi.co/api/v2/move/490/\"},{\"name\":\"coil\",\"url\":\"https://pokeapi.co/api/v2/move/489/\"},{\"name\":\"flame-charge\",\"url\":\"https://pokeapi.co/api/v2/move/488/\"},{\"name\":\"soak\",\"url\":\"https://pokeapi.co/api/v2/move/487/\"},{\"name\":\"electro-ball\",\"url\":\"https://pokeapi.co/api/v2/move/486/\"},{\"name\":\"synchronoise\",\"url\":\"https://pokeapi.co/api/v2/move/485/\"},{\"name\":\"heavy-slam\",\"url\":\"https://pokeapi.co/api/v2/move/484/\"},{\"name\":\"quiver-dance\",\"url\":\"https://pokeapi.co/api/v2/move/483/\"},{\"name\":\"sludge-wave\",\"url\":\"https://pokeapi.co/api/v2/move/482/\"},{\"name\":\"flame-burst\",\"url\":\"https://pokeapi.co/api/v2/move/481/\"},{\"name\":\"storm-throw\",\"url\":\"https://pokeapi.co/api/v2/move/480/\"},{\"name\":\"smack-down\",\"url\":\"https://pokeapi.co/api/v2/move/479/\"},{\"name\":\"magic-room\",\"url\":\"https://pokeapi.co/api/v2/move/478/\"},{\"name\":\"telekinesis\",\"url\":\"https://pokeapi.co/api/v2/move/477/\"},{\"name\":\"rage-powder\",\"url\":\"https://pokeapi.co/api/v2/move/476/\"},{\"name\":\"autotomize\",\"url\":\"https://pokeapi.co/api/v2/move/475/\"},{\"name\":\"venoshock\",\"url\":\"https://pokeapi.co/api/v2/move/474/\"},{\"name\":\"psyshock\",\"url\":\"https://pokeapi.co/api/v2/move/473/\"},{\"name\":\"wonder-room\",\"url\":\"https://pokeapi.co/api/v2/move/472/\"},{\"name\":\"power-split\",\"url\":\"https://pokeapi.co/api/v2/move/471/\"},{\"name\":\"guard-split\",\"url\":\"https://pokeapi.co/api/v2/move/470/\"},{\"name\":\"wide-guard\",\"url\":\"https://pokeapi.co/api/v2/move/469/\"},{\"name\":\"hone-claws\",\"url\":\"https://pokeapi.co/api/v2/move/468/\"}],\"name\":\"generation-v\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"だいごせだい\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Génération V\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Generation V\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Generation V\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"第五世代\"}],\"pokemon_species\":[{\"name\":\"volcarona\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/637/\"},{\"name\":\"hydreigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/635/\"},{\"name\":\"zweilous\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/634/\"},{\"name\":\"mandibuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/630/\"},{\"name\":\"braviary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/628/\"},{\"name\":\"bisharp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/625/\"},{\"name\":\"golurk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/623/\"},{\"name\":\"mienshao\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/620/\"},{\"name\":\"accelgor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/617/\"},{\"name\":\"beartic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/614/\"},{\"name\":\"haxorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/612/\"},{\"name\":\"fraxure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/611/\"},{\"name\":\"chandelure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/609/\"},{\"name\":\"lampent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/608/\"},{\"name\":\"beheeyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/606/\"},{\"name\":\"eelektross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/604/\"},{\"name\":\"eelektrik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/603/\"},{\"name\":\"klinklang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/601/\"},{\"name\":\"klang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/600/\"},{\"name\":\"ferrothorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/598/\"},{\"name\":\"galvantula\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/596/\"},{\"name\":\"jellicent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/593/\"},{\"name\":\"amoonguss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/591/\"},{\"name\":\"escavalier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/589/\"},{\"name\":\"sawsbuck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/586/\"},{\"name\":\"vanilluxe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/584/\"},{\"name\":\"vanillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/583/\"},{\"name\":\"swanna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/581/\"},{\"name\":\"reuniclus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/579/\"},{\"name\":\"duosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/578/\"},{\"name\":\"gothitelle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/576/\"},{\"name\":\"gothorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/575/\"},{\"name\":\"cinccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/573/\"},{\"name\":\"zoroark\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/571/\"},{\"name\":\"garbodor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/569/\"},{\"name\":\"archeops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/567/\"},{\"name\":\"carracosta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/565/\"},{\"name\":\"cofagrigus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/563/\"},{\"name\":\"scrafty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/560/\"},{\"name\":\"crustle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/558/\"},{\"name\":\"darmanitan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/555/\"},{\"name\":\"krookodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/553/\"},{\"name\":\"krokorok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/552/\"},{\"name\":\"lilligant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/549/\"},{\"name\":\"whimsicott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/547/\"},{\"name\":\"scolipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/545/\"},{\"name\":\"whirlipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/544/\"},{\"name\":\"leavanny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/542/\"},{\"name\":\"swadloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/541/\"},{\"name\":\"seismitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/537/\"},{\"name\":\"palpitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/536/\"},{\"name\":\"conkeldurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/534/\"},{\"name\":\"gurdurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/533/\"},{\"name\":\"excadrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/530/\"},{\"name\":\"swoobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/528/\"},{\"name\":\"gigalith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/526/\"},{\"name\":\"boldore\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/525/\"},{\"name\":\"zebstrika\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/523/\"},{\"name\":\"unfezant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/521/\"},{\"name\":\"tranquill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/520/\"},{\"name\":\"musharna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/518/\"},{\"name\":\"simipour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/516/\"},{\"name\":\"simisear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/514/\"},{\"name\":\"simisage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/512/\"},{\"name\":\"liepard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/510/\"},{\"name\":\"stoutland\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/508/\"},{\"name\":\"herdier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/507/\"},{\"name\":\"watchog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/505/\"},{\"name\":\"samurott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/503/\"},{\"name\":\"dewott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/502/\"},{\"name\":\"emboar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/500/\"},{\"name\":\"pignite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/499/\"},{\"name\":\"serperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/497/\"},{\"name\":\"servine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/496/\"},{\"name\":\"genesect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/649/\"},{\"name\":\"meloetta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/648/\"},{\"name\":\"keldeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/647/\"},{\"name\":\"kyurem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/646/\"},{\"name\":\"landorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/645/\"},{\"name\":\"zekrom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/644/\"},{\"name\":\"reshiram\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/643/\"},{\"name\":\"thundurus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/642/\"},{\"name\":\"tornadus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/641/\"},{\"name\":\"virizion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/640/\"},{\"name\":\"terrakion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/639/\"},{\"name\":\"cobalion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/638/\"},{\"name\":\"larvesta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/636/\"},{\"name\":\"deino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/633/\"},{\"name\":\"durant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/632/\"},{\"name\":\"heatmor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/631/\"},{\"name\":\"vullaby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/629/\"},{\"name\":\"rufflet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/627/\"},{\"name\":\"bouffalant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/626/\"},{\"name\":\"pawniard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/624/\"},{\"name\":\"golett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/622/\"},{\"name\":\"druddigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/621/\"},{\"name\":\"mienfoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/619/\"},{\"name\":\"stunfisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/618/\"},{\"name\":\"shelmet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/616/\"},{\"name\":\"cryogonal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/615/\"},{\"name\":\"cubchoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/613/\"},{\"name\":\"axew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/610/\"},{\"name\":\"litwick\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/607/\"},{\"name\":\"elgyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/605/\"},{\"name\":\"tynamo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/602/\"},{\"name\":\"klink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/599/\"},{\"name\":\"ferroseed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/597/\"},{\"name\":\"joltik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/595/\"},{\"name\":\"alomomola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/594/\"},{\"name\":\"frillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/592/\"},{\"name\":\"foongus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/590/\"},{\"name\":\"karrablast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/588/\"},{\"name\":\"emolga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/587/\"},{\"name\":\"deerling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/585/\"},{\"name\":\"vanillite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/582/\"},{\"name\":\"ducklett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/580/\"},{\"name\":\"solosis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/577/\"},{\"name\":\"gothita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/574/\"},{\"name\":\"minccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/572/\"},{\"name\":\"zorua\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/570/\"},{\"name\":\"trubbish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/568/\"},{\"name\":\"archen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/566/\"},{\"name\":\"tirtouga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/564/\"},{\"name\":\"yamask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/562/\"},{\"name\":\"sigilyph\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/561/\"},{\"name\":\"scraggy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/559/\"},{\"name\":\"dwebble\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/557/\"},{\"name\":\"maractus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/556/\"},{\"name\":\"darumaka\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/554/\"},{\"name\":\"sandile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/551/\"},{\"name\":\"basculin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/550/\"},{\"name\":\"petilil\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/548/\"},{\"name\":\"cottonee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/546/\"},{\"name\":\"venipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/543/\"},{\"name\":\"sewaddle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/540/\"},{\"name\":\"sawk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/539/\"},{\"name\":\"throh\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/538/\"},{\"name\":\"tympole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/535/\"},{\"name\":\"timburr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/532/\"},{\"name\":\"audino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/531/\"},{\"name\":\"drilbur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/529/\"},{\"name\":\"woobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/527/\"},{\"name\":\"roggenrola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/524/\"},{\"name\":\"blitzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/522/\"},{\"name\":\"pidove\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/519/\"},{\"name\":\"munna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/517/\"},{\"name\":\"panpour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/515/\"},{\"name\":\"pansear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/513/\"},{\"name\":\"pansage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/511/\"},{\"name\":\"purrloin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/509/\"},{\"name\":\"lillipup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/506/\"},{\"name\":\"patrat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/504/\"},{\"name\":\"oshawott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/501/\"},{\"name\":\"tepig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/498/\"},{\"name\":\"snivy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/495/\"},{\"name\":\"victini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/494/\"}],\"types\":[],\"version_groups\":[{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"},{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}]}","asText":null}}},"tags":[]},{"uuid":"fcdc33d9-ffaa-4e27-9f7d-98596dfbc0b4","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/growth-rate/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,205,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,188,1,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,102,111,114,109,117,108,97,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,185,27,10,6,108,101,118,101,108,115,18,174,27,8,1,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,220,37,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,200,37,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"slow\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}},{\"description\":\"langsam\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"}},{\"description\":\"lente\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}}],\"formula\":\"\\\\frac{5x^3}{4}\",\"id\":1,\"levels\":[{\"experience\":1250000,\"level\":100},{\"experience\":1212873,\"level\":99},{\"experience\":1176490,\"level\":98},{\"experience\":1140841,\"level\":97},{\"experience\":1105920,\"level\":96},{\"experience\":1071718,\"level\":95},{\"experience\":1038230,\"level\":94},{\"experience\":1005446,\"level\":93},{\"experience\":973360,\"level\":92},{\"experience\":941963,\"level\":91},{\"experience\":911250,\"level\":90},{\"experience\":881211,\"level\":89},{\"experience\":851840,\"level\":88},{\"experience\":823128,\"level\":87},{\"experience\":795070,\"level\":86},{\"experience\":767656,\"level\":85},{\"experience\":740880,\"level\":84},{\"experience\":714733,\"level\":83},{\"experience\":689210,\"level\":82},{\"experience\":664301,\"level\":81},{\"experience\":640000,\"level\":80},{\"experience\":616298,\"level\":79},{\"experience\":593190,\"level\":78},{\"experience\":570666,\"level\":77},{\"experience\":548720,\"level\":76},{\"experience\":527343,\"level\":75},{\"experience\":506530,\"level\":74},{\"experience\":486271,\"level\":73},{\"experience\":466560,\"level\":72},{\"experience\":447388,\"level\":71},{\"experience\":428750,\"level\":70},{\"experience\":410636,\"level\":69},{\"experience\":393040,\"level\":68},{\"experience\":375953,\"level\":67},{\"experience\":359370,\"level\":66},{\"experience\":343281,\"level\":65},{\"experience\":327680,\"level\":64},{\"experience\":312558,\"level\":63},{\"experience\":297910,\"level\":62},{\"experience\":283726,\"level\":61},{\"experience\":270000,\"level\":60},{\"experience\":256723,\"level\":59},{\"experience\":243890,\"level\":58},{\"experience\":231491,\"level\":57},{\"experience\":219520,\"level\":56},{\"experience\":207968,\"level\":55},{\"experience\":196830,\"level\":54},{\"experience\":186096,\"level\":53},{\"experience\":175760,\"level\":52},{\"experience\":165813,\"level\":51},{\"experience\":156250,\"level\":50},{\"experience\":147061,\"level\":49},{\"experience\":138240,\"level\":48},{\"experience\":129778,\"level\":47},{\"experience\":121670,\"level\":46},{\"experience\":113906,\"level\":45},{\"experience\":106480,\"level\":44},{\"experience\":99383,\"level\":43},{\"experience\":92610,\"level\":42},{\"experience\":86151,\"level\":41},{\"experience\":80000,\"level\":40},{\"experience\":74148,\"level\":39},{\"experience\":68590,\"level\":38},{\"experience\":63316,\"level\":37},{\"experience\":58320,\"level\":36},{\"experience\":53593,\"level\":35},{\"experience\":49130,\"level\":34},{\"experience\":44921,\"level\":33},{\"experience\":40960,\"level\":32},{\"experience\":37238,\"level\":31},{\"experience\":33750,\"level\":30},{\"experience\":30486,\"level\":29},{\"experience\":27440,\"level\":28},{\"experience\":24603,\"level\":27},{\"experience\":21970,\"level\":26},{\"experience\":19531,\"level\":25},{\"experience\":17280,\"level\":24},{\"experience\":15208,\"level\":23},{\"experience\":13310,\"level\":22},{\"experience\":11576,\"level\":21},{\"experience\":10000,\"level\":20},{\"experience\":8573,\"level\":19},{\"experience\":7290,\"level\":18},{\"experience\":6141,\"level\":17},{\"experience\":5120,\"level\":16},{\"experience\":4218,\"level\":15},{\"experience\":3430,\"level\":14},{\"experience\":2746,\"level\":13},{\"experience\":2160,\"level\":12},{\"experience\":1663,\"level\":11},{\"experience\":1250,\"level\":10},{\"experience\":911,\"level\":9},{\"experience\":640,\"level\":8},{\"experience\":428,\"level\":7},{\"experience\":270,\"level\":6},{\"experience\":156,\"level\":5},{\"experience\":80,\"level\":4},{\"experience\":33,\"level\":3},{\"experience\":10,\"level\":2},{\"experience\":0,\"level\":1}],\"name\":\"slow\",\"pokemon_species\":[{\"name\":\"growlithe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/58/\"},{\"name\":\"tentacool\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/72/\"},{\"name\":\"arcanine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/59/\"},{\"name\":\"tentacruel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/73/\"},{\"name\":\"shellder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/90/\"},{\"name\":\"exeggcute\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/102/\"},{\"name\":\"rhyhorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/111/\"},{\"name\":\"staryu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/120/\"},{\"name\":\"pinsir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/127/\"},{\"name\":\"tauros\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/128/\"},{\"name\":\"magikarp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/129/\"},{\"name\":\"lapras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/131/\"},{\"name\":\"aerodactyl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/142/\"},{\"name\":\"articuno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/144/\"},{\"name\":\"zapdos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/145/\"},{\"name\":\"moltres\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/146/\"},{\"name\":\"dratini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/147/\"},{\"name\":\"mewtwo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/150/\"},{\"name\":\"cloyster\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/91/\"},{\"name\":\"exeggutor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/103/\"},{\"name\":\"rhydon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/112/\"},{\"name\":\"starmie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/121/\"},{\"name\":\"gyarados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/130/\"},{\"name\":\"snorlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/143/\"},{\"name\":\"dragonair\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/148/\"},{\"name\":\"dragonite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/149/\"},{\"name\":\"chinchou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/170/\"},{\"name\":\"heracross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/214/\"},{\"name\":\"swinub\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/220/\"},{\"name\":\"skarmory\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/227/\"},{\"name\":\"houndour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/228/\"},{\"name\":\"stantler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/234/\"},{\"name\":\"lanturn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/171/\"},{\"name\":\"piloswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/221/\"},{\"name\":\"mantine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/226/\"},{\"name\":\"houndoom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/229/\"},{\"name\":\"miltank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/241/\"},{\"name\":\"raikou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/243/\"},{\"name\":\"entei\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/244/\"},{\"name\":\"suicune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/245/\"},{\"name\":\"larvitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/246/\"},{\"name\":\"lugia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/249/\"},{\"name\":\"ho-oh\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/250/\"},{\"name\":\"ralts\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/280/\"},{\"name\":\"slakoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/287/\"},{\"name\":\"aron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/304/\"},{\"name\":\"electrike\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/309/\"},{\"name\":\"pupitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/247/\"},{\"name\":\"tyranitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/248/\"},{\"name\":\"kirlia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/281/\"},{\"name\":\"gardevoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/282/\"},{\"name\":\"vigoroth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/288/\"},{\"name\":\"slaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/289/\"},{\"name\":\"lairon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/305/\"},{\"name\":\"aggron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/306/\"},{\"name\":\"manectric\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/310/\"},{\"name\":\"carvanha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/318/\"},{\"name\":\"tropius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/357/\"},{\"name\":\"relicanth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/369/\"},{\"name\":\"bagon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/371/\"},{\"name\":\"beldum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/374/\"},{\"name\":\"regirock\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/377/\"},{\"name\":\"regice\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/378/\"},{\"name\":\"registeel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/379/\"},{\"name\":\"latias\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/380/\"},{\"name\":\"latios\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/381/\"},{\"name\":\"kyogre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/382/\"},{\"name\":\"groudon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/383/\"},{\"name\":\"rayquaza\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/384/\"},{\"name\":\"jirachi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/385/\"},{\"name\":\"deoxys\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/386/\"},{\"name\":\"sharpedo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/319/\"},{\"name\":\"shelgon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/372/\"},{\"name\":\"salamence\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/373/\"},{\"name\":\"metang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/375/\"},{\"name\":\"metagross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/376/\"},{\"name\":\"gible\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/443/\"},{\"name\":\"munchlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/446/\"},{\"name\":\"hippopotas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/449/\"},{\"name\":\"skorupi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/451/\"},{\"name\":\"carnivine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/455/\"},{\"name\":\"mantyke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/458/\"},{\"name\":\"snover\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/459/\"},{\"name\":\"gabite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/444/\"},{\"name\":\"garchomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/445/\"},{\"name\":\"hippowdon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/450/\"},{\"name\":\"drapion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/452/\"},{\"name\":\"rhyperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/464/\"},{\"name\":\"mamoswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/473/\"},{\"name\":\"uxie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/480/\"},{\"name\":\"mesprit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/481/\"},{\"name\":\"azelf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/482/\"},{\"name\":\"dialga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/483/\"},{\"name\":\"palkia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/484/\"},{\"name\":\"heatran\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/485/\"},{\"name\":\"regigigas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/486/\"},{\"name\":\"giratina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/487/\"},{\"name\":\"cresselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/488/\"},{\"name\":\"phione\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/489/\"},{\"name\":\"manaphy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/490/\"},{\"name\":\"darkrai\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/491/\"},{\"name\":\"arceus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/493/\"},{\"name\":\"victini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/494/\"},{\"name\":\"vanillite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/582/\"},{\"name\":\"tynamo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/602/\"},{\"name\":\"axew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/610/\"},{\"name\":\"rufflet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/627/\"},{\"name\":\"vullaby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/629/\"},{\"name\":\"deino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/633/\"},{\"name\":\"larvesta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/636/\"},{\"name\":\"vanillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/583/\"},{\"name\":\"vanilluxe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/584/\"},{\"name\":\"eelektrik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/603/\"},{\"name\":\"eelektross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/604/\"},{\"name\":\"fraxure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/611/\"},{\"name\":\"haxorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/612/\"},{\"name\":\"braviary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/628/\"},{\"name\":\"mandibuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/630/\"},{\"name\":\"zweilous\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/634/\"},{\"name\":\"hydreigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/635/\"},{\"name\":\"cobalion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/638/\"},{\"name\":\"terrakion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/639/\"},{\"name\":\"virizion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/640/\"},{\"name\":\"tornadus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/641/\"},{\"name\":\"thundurus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/642/\"},{\"name\":\"reshiram\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/643/\"},{\"name\":\"zekrom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/644/\"},{\"name\":\"landorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/645/\"},{\"name\":\"kyurem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/646/\"},{\"name\":\"keldeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/647/\"},{\"name\":\"meloetta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/648/\"},{\"name\":\"genesect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/649/\"},{\"name\":\"clauncher\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/692/\"},{\"name\":\"carbink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/703/\"},{\"name\":\"goomy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/704/\"},{\"name\":\"xerneas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/716/\"},{\"name\":\"yveltal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/717/\"},{\"name\":\"clawitzer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/693/\"},{\"name\":\"sliggoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/705/\"},{\"name\":\"goodra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/706/\"},{\"name\":\"zygarde\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/718/\"},{\"name\":\"diancie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/719/\"},{\"name\":\"hoopa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/720/\"},{\"name\":\"volcanion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/721/\"},{\"name\":\"oranguru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/765/\"},{\"name\":\"passimian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/766/\"},{\"name\":\"type-null\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/772/\"},{\"name\":\"komala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/775/\"},{\"name\":\"jangmo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/782/\"},{\"name\":\"tapu-koko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/785/\"},{\"name\":\"tapu-lele\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/786/\"},{\"name\":\"tapu-bulu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/787/\"},{\"name\":\"tapu-fini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/788/\"},{\"name\":\"cosmog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/789/\"},{\"name\":\"nihilego\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/793/\"},{\"name\":\"buzzwole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/794/\"},{\"name\":\"pheromosa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/795/\"},{\"name\":\"xurkitree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/796/\"},{\"name\":\"celesteela\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/797/\"},{\"name\":\"kartana\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/798/\"},{\"name\":\"silvally\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/773/\"},{\"name\":\"hakamo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/783/\"},{\"name\":\"kommo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/784/\"},{\"name\":\"solgaleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/791/\"},{\"name\":\"lunala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/792/\"},{\"name\":\"guzzlord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/799/\"},{\"name\":\"necrozma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/800/\"},{\"name\":\"magearna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/801/\"},{\"name\":\"marshadow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/802/\"},{\"name\":\"poipole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/803/\"},{\"name\":\"stakataka\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/805/\"},{\"name\":\"blacephalon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/806/\"},{\"name\":\"zeraora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/807/\"},{\"name\":\"abomasnow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/460/\"},{\"name\":\"gallade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/475/\"},{\"name\":\"volcarona\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/637/\"},{\"name\":\"cosmoem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/790/\"},{\"name\":\"naganadel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/804/\"}]}","asText":null}}},"tags":[]},{"uuid":"5e7451ce-3129-4bc8-be0d-84b9d6580fa1","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/growth-rate/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,205,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,188,1,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,102,111,114,109,117,108,97,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,185,27,10,6,108,101,118,101,108,115,18,174,27,8,1,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,235,70,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,215,70,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"medium\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}},{\"description\":\"mittel\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"}},{\"description\":\"moyenne\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}}],\"formula\":\"x^3\",\"id\":2,\"levels\":[{\"experience\":1000000,\"level\":100},{\"experience\":970299,\"level\":99},{\"experience\":941192,\"level\":98},{\"experience\":912673,\"level\":97},{\"experience\":884736,\"level\":96},{\"experience\":857375,\"level\":95},{\"experience\":830584,\"level\":94},{\"experience\":804357,\"level\":93},{\"experience\":778688,\"level\":92},{\"experience\":753571,\"level\":91},{\"experience\":729000,\"level\":90},{\"experience\":704969,\"level\":89},{\"experience\":681472,\"level\":88},{\"experience\":658503,\"level\":87},{\"experience\":636056,\"level\":86},{\"experience\":614125,\"level\":85},{\"experience\":592704,\"level\":84},{\"experience\":571787,\"level\":83},{\"experience\":551368,\"level\":82},{\"experience\":531441,\"level\":81},{\"experience\":512000,\"level\":80},{\"experience\":493039,\"level\":79},{\"experience\":474552,\"level\":78},{\"experience\":456533,\"level\":77},{\"experience\":438976,\"level\":76},{\"experience\":421875,\"level\":75},{\"experience\":405224,\"level\":74},{\"experience\":389017,\"level\":73},{\"experience\":373248,\"level\":72},{\"experience\":357911,\"level\":71},{\"experience\":343000,\"level\":70},{\"experience\":328509,\"level\":69},{\"experience\":314432,\"level\":68},{\"experience\":300763,\"level\":67},{\"experience\":287496,\"level\":66},{\"experience\":274625,\"level\":65},{\"experience\":262144,\"level\":64},{\"experience\":250047,\"level\":63},{\"experience\":238328,\"level\":62},{\"experience\":226981,\"level\":61},{\"experience\":216000,\"level\":60},{\"experience\":205379,\"level\":59},{\"experience\":195112,\"level\":58},{\"experience\":185193,\"level\":57},{\"experience\":175616,\"level\":56},{\"experience\":166375,\"level\":55},{\"experience\":157464,\"level\":54},{\"experience\":148877,\"level\":53},{\"experience\":140608,\"level\":52},{\"experience\":132651,\"level\":51},{\"experience\":125000,\"level\":50},{\"experience\":117649,\"level\":49},{\"experience\":110592,\"level\":48},{\"experience\":103823,\"level\":47},{\"experience\":97336,\"level\":46},{\"experience\":91125,\"level\":45},{\"experience\":85184,\"level\":44},{\"experience\":79507,\"level\":43},{\"experience\":74088,\"level\":42},{\"experience\":68921,\"level\":41},{\"experience\":64000,\"level\":40},{\"experience\":59319,\"level\":39},{\"experience\":54872,\"level\":38},{\"experience\":50653,\"level\":37},{\"experience\":46656,\"level\":36},{\"experience\":42875,\"level\":35},{\"experience\":39304,\"level\":34},{\"experience\":35937,\"level\":33},{\"experience\":32768,\"level\":32},{\"experience\":29791,\"level\":31},{\"experience\":27000,\"level\":30},{\"experience\":24389,\"level\":29},{\"experience\":21952,\"level\":28},{\"experience\":19683,\"level\":27},{\"experience\":17576,\"level\":26},{\"experience\":15625,\"level\":25},{\"experience\":13824,\"level\":24},{\"experience\":12167,\"level\":23},{\"experience\":10648,\"level\":22},{\"experience\":9261,\"level\":21},{\"experience\":8000,\"level\":20},{\"experience\":6859,\"level\":19},{\"experience\":5832,\"level\":18},{\"experience\":4913,\"level\":17},{\"experience\":4096,\"level\":16},{\"experience\":3375,\"level\":15},{\"experience\":2744,\"level\":14},{\"experience\":2197,\"level\":13},{\"experience\":1728,\"level\":12},{\"experience\":1331,\"level\":11},{\"experience\":1000,\"level\":10},{\"experience\":729,\"level\":9},{\"experience\":512,\"level\":8},{\"experience\":343,\"level\":7},{\"experience\":216,\"level\":6},{\"experience\":125,\"level\":5},{\"experience\":64,\"level\":4},{\"experience\":27,\"level\":3},{\"experience\":8,\"level\":2},{\"experience\":0,\"level\":1}],\"name\":\"medium\",\"pokemon_species\":[{\"name\":\"caterpie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/10/\"},{\"name\":\"weedle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/13/\"},{\"name\":\"rattata\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/19/\"},{\"name\":\"spearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/21/\"},{\"name\":\"ekans\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/23/\"},{\"name\":\"sandshrew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/27/\"},{\"name\":\"vulpix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/37/\"},{\"name\":\"zubat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/41/\"},{\"name\":\"paras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/46/\"},{\"name\":\"venonat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/48/\"},{\"name\":\"diglett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/50/\"},{\"name\":\"meowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/52/\"},{\"name\":\"psyduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/54/\"},{\"name\":\"mankey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/56/\"},{\"name\":\"ponyta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/77/\"},{\"name\":\"metapod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/11/\"},{\"name\":\"butterfree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/12/\"},{\"name\":\"kakuna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/14/\"},{\"name\":\"beedrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/15/\"},{\"name\":\"raticate\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/20/\"},{\"name\":\"fearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/22/\"},{\"name\":\"arbok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/24/\"},{\"name\":\"pikachu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/25/\"},{\"name\":\"raichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/26/\"},{\"name\":\"sandslash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/28/\"},{\"name\":\"ninetales\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/38/\"},{\"name\":\"golbat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/42/\"},{\"name\":\"parasect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/47/\"},{\"name\":\"venomoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/49/\"},{\"name\":\"dugtrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/51/\"},{\"name\":\"persian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/53/\"},{\"name\":\"golduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/55/\"},{\"name\":\"primeape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/57/\"},{\"name\":\"rapidash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/78/\"},{\"name\":\"slowpoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/79/\"},{\"name\":\"magnemite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/81/\"},{\"name\":\"farfetchd\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/83/\"},{\"name\":\"doduo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/84/\"},{\"name\":\"seel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/86/\"},{\"name\":\"grimer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/88/\"},{\"name\":\"onix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/95/\"},{\"name\":\"drowzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/96/\"},{\"name\":\"krabby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/98/\"},{\"name\":\"voltorb\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/100/\"},{\"name\":\"cubone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/104/\"},{\"name\":\"lickitung\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/108/\"},{\"name\":\"koffing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/109/\"},{\"name\":\"tangela\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/114/\"},{\"name\":\"kangaskhan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/115/\"},{\"name\":\"horsea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/116/\"},{\"name\":\"goldeen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/118/\"},{\"name\":\"scyther\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/123/\"},{\"name\":\"ditto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/132/\"},{\"name\":\"eevee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/133/\"},{\"name\":\"porygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/137/\"},{\"name\":\"omanyte\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/138/\"},{\"name\":\"kabuto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/140/\"},{\"name\":\"magneton\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/82/\"},{\"name\":\"dodrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/85/\"},{\"name\":\"dewgong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/87/\"},{\"name\":\"muk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/89/\"},{\"name\":\"hypno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/97/\"},{\"name\":\"kingler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/99/\"},{\"name\":\"electrode\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/101/\"},{\"name\":\"marowak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/105/\"},{\"name\":\"hitmonlee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/106/\"},{\"name\":\"hitmonchan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/107/\"},{\"name\":\"weezing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/110/\"},{\"name\":\"seadra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/117/\"},{\"name\":\"seaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/119/\"},{\"name\":\"mr-mime\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/122/\"},{\"name\":\"jynx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/124/\"},{\"name\":\"electabuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/125/\"},{\"name\":\"magmar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/126/\"},{\"name\":\"vaporeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/134/\"},{\"name\":\"jolteon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/135/\"},{\"name\":\"flareon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/136/\"},{\"name\":\"omastar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/139/\"},{\"name\":\"kabutops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/141/\"},{\"name\":\"sentret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/161/\"},{\"name\":\"hoothoot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/163/\"},{\"name\":\"pichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/172/\"},{\"name\":\"natu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/177/\"},{\"name\":\"yanma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/193/\"},{\"name\":\"wooper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/194/\"},{\"name\":\"unown\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/201/\"},{\"name\":\"girafarig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/203/\"},{\"name\":\"pineco\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/204/\"},{\"name\":\"dunsparce\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/206/\"},{\"name\":\"qwilfish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/211/\"},{\"name\":\"teddiursa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/216/\"},{\"name\":\"slugma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/218/\"},{\"name\":\"remoraid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/223/\"},{\"name\":\"phanpy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/231/\"},{\"name\":\"furret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/162/\"},{\"name\":\"noctowl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/164/\"},{\"name\":\"crobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/169/\"},{\"name\":\"xatu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/178/\"},{\"name\":\"sudowoodo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/185/\"},{\"name\":\"quagsire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/195/\"},{\"name\":\"espeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/196/\"},{\"name\":\"umbreon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/197/\"},{\"name\":\"slowking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/199/\"},{\"name\":\"wobbuffet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/202/\"},{\"name\":\"forretress\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/205/\"},{\"name\":\"steelix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/208/\"},{\"name\":\"scizor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/212/\"},{\"name\":\"ursaring\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/217/\"},{\"name\":\"magcargo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/219/\"},{\"name\":\"octillery\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/224/\"},{\"name\":\"kingdra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/230/\"},{\"name\":\"donphan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/232/\"},{\"name\":\"porygon2\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/233/\"},{\"name\":\"tyrogue\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/236/\"},{\"name\":\"smoochum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/238/\"},{\"name\":\"elekid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/239/\"},{\"name\":\"magby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/240/\"},{\"name\":\"poochyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/261/\"},{\"name\":\"zigzagoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/263/\"},{\"name\":\"wurmple\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/265/\"},{\"name\":\"wingull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/278/\"},{\"name\":\"surskit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/283/\"},{\"name\":\"nosepass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/299/\"},{\"name\":\"meditite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/307/\"},{\"name\":\"plusle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/311/\"},{\"name\":\"minun\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/312/\"},{\"name\":\"mightyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/262/\"},{\"name\":\"linoone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/264/\"},{\"name\":\"silcoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/266/\"},{\"name\":\"beautifly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/267/\"},{\"name\":\"cascoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/268/\"},{\"name\":\"dustox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/269/\"},{\"name\":\"pelipper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/279/\"},{\"name\":\"masquerain\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/284/\"},{\"name\":\"medicham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/308/\"},{\"name\":\"numel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/322/\"},{\"name\":\"torkoal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/324/\"},{\"name\":\"barboach\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/339/\"},{\"name\":\"baltoy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/343/\"},{\"name\":\"castform\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/351/\"},{\"name\":\"wynaut\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/360/\"},{\"name\":\"snorunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/361/\"},{\"name\":\"camerupt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/323/\"},{\"name\":\"whiscash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/340/\"},{\"name\":\"claydol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/344/\"},{\"name\":\"glalie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/362/\"},{\"name\":\"bidoof\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/399/\"},{\"name\":\"burmy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/412/\"},{\"name\":\"pachirisu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/417/\"},{\"name\":\"buizel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/418/\"},{\"name\":\"cherubi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/420/\"},{\"name\":\"shellos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/422/\"},{\"name\":\"buneary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/427/\"},{\"name\":\"stunky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/434/\"},{\"name\":\"bronzor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/436/\"},{\"name\":\"bonsly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/438/\"},{\"name\":\"mime-jr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/439/\"},{\"name\":\"spiritomb\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/442/\"},{\"name\":\"croagunk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/453/\"},{\"name\":\"bibarel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/400/\"},{\"name\":\"wormadam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/413/\"},{\"name\":\"mothim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/414/\"},{\"name\":\"floatzel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/419/\"},{\"name\":\"cherrim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/421/\"},{\"name\":\"gastrodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/423/\"},{\"name\":\"lopunny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/428/\"},{\"name\":\"skuntank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/435/\"},{\"name\":\"bronzong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/437/\"},{\"name\":\"toxicroak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/454/\"},{\"name\":\"magnezone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/462/\"},{\"name\":\"lickilicky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/463/\"},{\"name\":\"tangrowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/465/\"},{\"name\":\"electivire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/466/\"},{\"name\":\"magmortar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/467/\"},{\"name\":\"yanmega\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/469/\"},{\"name\":\"leafeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/470/\"},{\"name\":\"porygon-z\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/474/\"},{\"name\":\"rotom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/479/\"},{\"name\":\"patrat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/504/\"},{\"name\":\"purrloin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/509/\"},{\"name\":\"pansage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/511/\"},{\"name\":\"pansear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/513/\"},{\"name\":\"panpour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/515/\"},{\"name\":\"blitzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/522/\"},{\"name\":\"woobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/527/\"},{\"name\":\"drilbur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/529/\"},{\"name\":\"throh\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/538/\"},{\"name\":\"sawk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/539/\"},{\"name\":\"cottonee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/546/\"},{\"name\":\"petilil\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/548/\"},{\"name\":\"basculin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/550/\"},{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/476/\"},{\"name\":\"froslass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/478/\"},{\"name\":\"watchog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/505/\"},{\"name\":\"liepard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/510/\"},{\"name\":\"simisage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/512/\"},{\"name\":\"simisear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/514/\"},{\"name\":\"simipour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/516/\"},{\"name\":\"swoobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/528/\"},{\"name\":\"excadrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/530/\"},{\"name\":\"whimsicott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/547/\"},{\"name\":\"lilligant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/549/\"},{\"name\":\"maractus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/556/\"},{\"name\":\"dwebble\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/557/\"},{\"name\":\"scraggy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/559/\"},{\"name\":\"sigilyph\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/561/\"},{\"name\":\"yamask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/562/\"},{\"name\":\"tirtouga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/564/\"},{\"name\":\"archen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/566/\"},{\"name\":\"trubbish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/568/\"},{\"name\":\"ducklett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/580/\"},{\"name\":\"deerling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/585/\"},{\"name\":\"emolga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/587/\"},{\"name\":\"karrablast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/588/\"},{\"name\":\"foongus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/590/\"},{\"name\":\"frillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/592/\"},{\"name\":\"joltik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/595/\"},{\"name\":\"ferroseed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/597/\"},{\"name\":\"elgyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/605/\"},{\"name\":\"cubchoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/613/\"},{\"name\":\"cryogonal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/615/\"},{\"name\":\"shelmet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/616/\"},{\"name\":\"stunfisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/618/\"},{\"name\":\"druddigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/621/\"},{\"name\":\"golett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/622/\"},{\"name\":\"pawniard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/624/\"},{\"name\":\"bouffalant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/626/\"},{\"name\":\"heatmor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/631/\"},{\"name\":\"durant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/632/\"},{\"name\":\"scrafty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/560/\"},{\"name\":\"cofagrigus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/563/\"},{\"name\":\"carracosta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/565/\"},{\"name\":\"archeops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/567/\"},{\"name\":\"garbodor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/569/\"},{\"name\":\"swanna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/581/\"},{\"name\":\"sawsbuck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/586/\"},{\"name\":\"escavalier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/589/\"},{\"name\":\"amoonguss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/591/\"},{\"name\":\"galvantula\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/596/\"},{\"name\":\"ferrothorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/598/\"},{\"name\":\"beheeyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/606/\"},{\"name\":\"accelgor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/617/\"},{\"name\":\"golurk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/623/\"},{\"name\":\"bisharp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/625/\"},{\"name\":\"bunnelby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/659/\"},{\"name\":\"scatterbug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/664/\"},{\"name\":\"flabebe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/669/\"},{\"name\":\"skiddo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/672/\"},{\"name\":\"pancham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/674/\"},{\"name\":\"furfrou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/676/\"},{\"name\":\"espurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/677/\"},{\"name\":\"honedge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/679/\"},{\"name\":\"spritzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/682/\"},{\"name\":\"swirlix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/684/\"},{\"name\":\"inkay\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/686/\"},{\"name\":\"binacle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/688/\"},{\"name\":\"skrelp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/690/\"},{\"name\":\"helioptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/694/\"},{\"name\":\"tyrunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/696/\"},{\"name\":\"amaura\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/698/\"},{\"name\":\"hawlucha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/701/\"},{\"name\":\"dedenne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/702/\"},{\"name\":\"phantump\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/708/\"},{\"name\":\"pumpkaboo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/710/\"},{\"name\":\"bergmite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/712/\"},{\"name\":\"noibat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/714/\"},{\"name\":\"diggersby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/660/\"},{\"name\":\"spewpa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/665/\"},{\"name\":\"vivillon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/666/\"},{\"name\":\"floette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/670/\"},{\"name\":\"florges\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/671/\"},{\"name\":\"gogoat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/673/\"},{\"name\":\"pangoro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/675/\"},{\"name\":\"meowstic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/678/\"},{\"name\":\"doublade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/680/\"},{\"name\":\"aegislash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/681/\"},{\"name\":\"aromatisse\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/683/\"},{\"name\":\"malamar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/687/\"},{\"name\":\"barbaracle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/689/\"},{\"name\":\"dragalge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/691/\"},{\"name\":\"heliolisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/695/\"},{\"name\":\"tyrantrum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/697/\"},{\"name\":\"aurorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/699/\"},{\"name\":\"sylveon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/700/\"},{\"name\":\"trevenant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/709/\"},{\"name\":\"avalugg\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/713/\"},{\"name\":\"noivern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/715/\"},{\"name\":\"pikipek\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/731/\"},{\"name\":\"yungoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/734/\"},{\"name\":\"grubbin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/736/\"},{\"name\":\"crabrawler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/739/\"},{\"name\":\"oricorio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/741/\"},{\"name\":\"cutiefly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/742/\"},{\"name\":\"rockruff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/744/\"},{\"name\":\"mareanie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/747/\"},{\"name\":\"mudbray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/749/\"},{\"name\":\"dewpider\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/751/\"},{\"name\":\"fomantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/753/\"},{\"name\":\"morelull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/755/\"},{\"name\":\"salandit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/757/\"},{\"name\":\"stufful\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/759/\"},{\"name\":\"wimpod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/767/\"},{\"name\":\"sandygast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/769/\"},{\"name\":\"turtonator\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/776/\"},{\"name\":\"togedemaru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/777/\"},{\"name\":\"mimikyu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/778/\"},{\"name\":\"bruxish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/779/\"},{\"name\":\"drampa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/780/\"},{\"name\":\"dhelmise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/781/\"},{\"name\":\"toucannon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/733/\"},{\"name\":\"gumshoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/735/\"},{\"name\":\"charjabug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/737/\"},{\"name\":\"vikavolt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/738/\"},{\"name\":\"crabominable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/740/\"},{\"name\":\"ribombee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/743/\"},{\"name\":\"lycanroc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/745/\"},{\"name\":\"toxapex\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/748/\"},{\"name\":\"mudsdale\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/750/\"},{\"name\":\"araquanid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/752/\"},{\"name\":\"shiinotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/756/\"},{\"name\":\"salazzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/758/\"},{\"name\":\"bewear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/760/\"},{\"name\":\"golisopod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/768/\"},{\"name\":\"palossand\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/770/\"},{\"name\":\"slowbro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/80/\"},{\"name\":\"hitmontop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/237/\"},{\"name\":\"glaceon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/471/\"},{\"name\":\"zebstrika\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/523/\"},{\"name\":\"crustle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/558/\"},{\"name\":\"jellicent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/593/\"},{\"name\":\"beartic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/614/\"},{\"name\":\"slurpuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/685/\"},{\"name\":\"gourgeist\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/711/\"},{\"name\":\"trumbeak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/732/\"},{\"name\":\"lurantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/754/\"}]}","asText":null}}},"tags":[]},{"uuid":"a8176235-5394-4d18-8d2c-a11cc54e5ba0","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/gender/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,215,199,2,10,23,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,95,100,101,116,97,105,108,115,18,186,199,2,8,1,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,18,109,10,22,114,101,113,117,105,114,101,100,95,102,111,114,95,101,118,111,108,117,116,105,111,110,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":2,\"name\":\"male\",\"pokemon_species_details\":[{\"pokemon_species\":{\"name\":\"bulbasaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/1/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"charmander\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/4/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"squirtle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/7/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"caterpie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/10/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"weedle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/13/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pidgey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/16/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rattata\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/19/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/21/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ekans\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/23/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sandshrew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/27/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"nidoran-m\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/32/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"vulpix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/37/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"zubat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/41/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"oddish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/43/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"paras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/46/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"venonat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/48/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"diglett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/50/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"meowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/52/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"psyduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/54/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mankey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/56/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"growlithe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/58/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"poliwag\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/60/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"abra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/63/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"machop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/66/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"bellsprout\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/69/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tentacool\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/72/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"geodude\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/74/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ponyta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/77/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"venusaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/3/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"charmeleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/5/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"charizard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/6/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"wartortle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/8/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"blastoise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/9/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"metapod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/11/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"butterfree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/12/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kakuna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/14/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"beedrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/15/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pidgeotto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/17/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pidgeot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/18/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"raticate\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/20/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/22/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"arbok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/24/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pikachu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/25/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"raichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/26/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sandslash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/28/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"nidorino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/33/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"nidoking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/34/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"clefairy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/35/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"clefable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/36/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"ninetales\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/38/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"jigglypuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/39/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"wigglytuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/40/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"golbat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/42/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/44/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vileplume\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/45/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"parasect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/47/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"venomoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/49/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dugtrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/51/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"persian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/53/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"golduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/55/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"primeape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/57/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"arcanine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/59/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"poliwhirl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/61/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"poliwrath\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/62/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kadabra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/64/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"alakazam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/65/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"machoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/67/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"machamp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/68/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"weepinbell\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/70/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"victreebel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/71/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tentacruel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/73/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"graveler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/75/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"golem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/76/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rapidash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/78/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slowpoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/79/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"farfetchd\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/83/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"doduo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/84/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/86/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grimer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/88/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shellder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/90/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gastly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/92/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"onix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/95/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drowzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/96/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"krabby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/98/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"exeggcute\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/102/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cubone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/104/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lickitung\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/108/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"koffing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/109/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rhyhorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/111/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tangela\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/114/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"horsea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/116/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"goldeen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/118/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scyther\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/123/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pinsir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/127/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tauros\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/128/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"magikarp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/129/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lapras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/131/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"eevee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/133/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"omanyte\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/138/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"kabuto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/140/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"aerodactyl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/142/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"dratini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/147/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chikorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/152/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"cyndaquil\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/155/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"dodrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/85/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dewgong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/87/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"muk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/89/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cloyster\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/91/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"haunter\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/93/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gengar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/94/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hypno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/97/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kingler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/99/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"exeggutor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/103/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"marowak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/105/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hitmonlee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/106/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"hitmonchan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/107/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"weezing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/110/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rhydon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/112/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seadra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/117/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/119/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mr-mime\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/122/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"electabuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/125/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"magmar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/126/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"gyarados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/130/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vaporeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/134/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"jolteon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/135/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"flareon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/136/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"omastar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/139/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"kabutops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/141/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"snorlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/143/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"dragonair\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/148/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dragonite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/149/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bayleef\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/153/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"meganium\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/154/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"quilava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/156/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"typhlosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/157/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"totodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/158/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"sentret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/161/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hoothoot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/163/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ledyba\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/165/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spinarak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/167/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chinchou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/170/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/172/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cleffa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/173/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"igglybuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/174/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"togepi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/175/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"natu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/177/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mareep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/179/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hoppip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/187/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/190/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sunkern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/191/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"yanma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/193/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wooper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/194/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"murkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/198/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"misdreavus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/200/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"girafarig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/203/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pineco\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/204/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dunsparce\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/206/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gligar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/207/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"snubbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/209/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"qwilfish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/211/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shuckle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/213/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"heracross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/214/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sneasel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/215/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"teddiursa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/216/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slugma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/218/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swinub\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/220/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"corsola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/222/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"remoraid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/223/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"delibird\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/225/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skarmory\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/227/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"houndour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/228/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"phanpy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/231/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"stantler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/234/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"smeargle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/235/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"feraligatr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/160/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"furret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/162/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"noctowl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/164/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ledian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/166/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ariados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/168/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/169/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lanturn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/171/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"togetic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/176/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"xatu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/178/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"flaaffy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/180/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ampharos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/181/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bellossom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/182/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"marill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/183/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"azumarill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/184/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sudowoodo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/185/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"politoed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/186/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skiploom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/188/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"jumpluff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/189/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sunflora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/192/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"quagsire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/195/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"espeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/196/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"umbreon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/197/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"slowking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/199/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wobbuffet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/202/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"forretress\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/205/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"steelix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/208/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"granbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/210/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"scizor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/212/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ursaring\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/217/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"magcargo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/219/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"piloswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/221/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"octillery\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/224/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mantine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/226/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"houndoom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/229/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kingdra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/230/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"donphan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/232/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tyrogue\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/236/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"elekid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/239/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"magby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/240/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"larvitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/246/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"treecko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/252/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"torchic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/255/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"mudkip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/258/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"poochyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/261/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"zigzagoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/263/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wurmple\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/265/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lotad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/270/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seedot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/273/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"taillow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/276/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wingull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/278/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ralts\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/280/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"surskit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/283/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shroomish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/285/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slakoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/287/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"nincada\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/290/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"whismur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/293/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"makuhita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/296/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"azurill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/298/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"nosepass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/299/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skitty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/300/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"sableye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/302/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mawile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/303/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/304/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"meditite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/307/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"electrike\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/309/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"plusle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/311/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"minun\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/312/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"volbeat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/313/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"pupitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/247/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tyranitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/248/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grovyle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/253/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"sceptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/254/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"combusken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/256/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"blaziken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/257/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"marshtomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/259/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"swampert\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/260/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"mightyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/262/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"linoone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/264/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"silcoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/266/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"beautifly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/267/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cascoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/268/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dustox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/269/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lombre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/271/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ludicolo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/272/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"nuzleaf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/274/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shiftry\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/275/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swellow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/277/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pelipper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/279/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kirlia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/281/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gardevoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/282/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"masquerain\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/284/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"breloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/286/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vigoroth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/288/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/289/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ninjask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/291/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"loudred\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/294/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"exploud\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/295/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hariyama\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/297/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"delcatty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/301/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"lairon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/305/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aggron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/306/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"medicham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/308/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"manectric\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/310/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gulpin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/316/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"carvanha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/318/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wailmer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/320/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"numel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/322/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"torkoal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/324/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spoink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/325/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spinda\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/327/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"trapinch\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/328/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cacnea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/331/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swablu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/333/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"zangoose\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/335/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seviper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/336/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"barboach\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/339/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"corphish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/341/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lileep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/345/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"anorith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/347/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"feebas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/349/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"castform\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/351/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kecleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/352/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shuppet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/353/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"duskull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/355/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tropius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/357/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"absol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/359/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wynaut\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/360/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"snorunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/361/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spheal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/363/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"clamperl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/366/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"relicanth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/369/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"luvdisc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/370/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"bagon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/371/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"latios\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/381/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"turtwig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/387/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"chimchar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/390/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"piplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/393/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"swalot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/317/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sharpedo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/319/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wailord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/321/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"camerupt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/323/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grumpig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/326/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vibrava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/329/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"flygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/330/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cacturne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/332/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"altaria\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/334/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"whiscash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/340/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crawdaunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/342/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cradily\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/346/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"armaldo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/348/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"milotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/350/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"banette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/354/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dusclops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/356/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chimecho\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/358/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"glalie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/362/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sealeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/364/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"walrein\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/365/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"huntail\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/367/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gorebyss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/368/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shelgon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/372/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"salamence\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/373/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grotle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/388/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"torterra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/389/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"monferno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/391/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"infernape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/392/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"starly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/396/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bidoof\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/399/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kricketot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/401/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shinx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/403/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"budew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/406/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cranidos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/408/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"shieldon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/410/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"burmy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/412/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"combee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/415/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"pachirisu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/417/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"buizel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/418/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cherubi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/420/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shellos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/422/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drifloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/425/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"buneary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/427/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"glameow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/431/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"chingling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/433/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"stunky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/434/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bonsly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/438/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mime-jr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/439/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chatot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/441/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spiritomb\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/442/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gible\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/443/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"munchlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/446/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"riolu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/447/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"hippopotas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/449/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skorupi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/451/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"croagunk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/453/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"carnivine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/455/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"finneon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/456/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mantyke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/458/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"snover\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/459/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"empoleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/395/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"staravia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/397/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"staraptor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/398/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bibarel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/400/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kricketune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/402/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"luxio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/404/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"luxray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/405/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rampardos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/409/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"bastiodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/411/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"mothim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/414/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"floatzel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/419/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cherrim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/421/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gastrodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/423/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ambipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/424/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drifblim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/426/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lopunny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/428/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"honchkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/430/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"purugly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/432/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"skuntank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/435/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gabite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/444/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"garchomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/445/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lucario\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/448/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"hippowdon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/450/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drapion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/452/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"toxicroak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/454/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lumineon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/457/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"weavile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/461/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lickilicky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/463/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rhyperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/464/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tangrowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/465/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"electivire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/466/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"magmortar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/467/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"togekiss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/468/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"yanmega\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/469/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"leafeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/470/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"gliscor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/472/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mamoswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/473/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"heatran\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/485/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"snivy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/495/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"tepig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/498/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"oshawott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/501/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"patrat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/504/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lillipup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/506/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"purrloin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/509/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pansage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/511/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"pansear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/513/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"panpour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/515/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"munna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/517/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pidove\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/519/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"blitzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/522/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"roggenrola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/524/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"woobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/527/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drilbur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/529/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"audino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/531/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"timburr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/532/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"tympole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/535/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"throh\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/538/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"sawk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/539/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"sewaddle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/540/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"venipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/543/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cottonee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/546/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"basculin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/550/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sandile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/551/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"darumaka\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/554/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/476/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dusknoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/477/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"servine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/496/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"serperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/497/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"pignite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/499/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"emboar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/500/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"dewott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/502/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"watchog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/505/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"herdier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/507/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"stoutland\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/508/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"liepard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/510/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"simisage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/512/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"simisear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/514/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"simipour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/516/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"musharna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/518/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tranquill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/520/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"unfezant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/521/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"boldore\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/525/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gigalith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/526/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swoobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/528/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"excadrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/530/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gurdurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/533/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"conkeldurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/534/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"palpitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/536/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seismitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/537/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swadloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/541/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"leavanny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/542/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scolipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/545/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"whimsicott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/547/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"krokorok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/552/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"krookodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/553/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"darmanitan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/555/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"maractus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/556/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dwebble\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/557/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scraggy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/559/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sigilyph\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/561/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"yamask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/562/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tirtouga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/564/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"archen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/566/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"trubbish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/568/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"zorua\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/570/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"minccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/572/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"gothita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/574/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"solosis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/577/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ducklett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/580/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vanillite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/582/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"deerling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/585/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"emolga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/587/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"karrablast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/588/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"foongus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/590/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"frillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/592/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"alomomola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/594/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"joltik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/595/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ferroseed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/597/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tynamo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/602/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"elgyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/605/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"litwick\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/607/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"axew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/610/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cubchoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/613/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shelmet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/616/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"stunfisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/618/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mienfoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/619/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"druddigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/621/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pawniard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/624/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bouffalant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/626/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rufflet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/627/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"heatmor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/631/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"durant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/632/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"deino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/633/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"larvesta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/636/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scrafty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/560/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cofagrigus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/563/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"carracosta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/565/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"archeops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/567/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"garbodor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/569/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"zoroark\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/571/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"cinccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/573/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"gothitelle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/576/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"duosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/578/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"reuniclus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/579/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swanna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/581/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vanillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/583/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vanilluxe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/584/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sawsbuck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/586/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"escavalier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/589/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"amoonguss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/591/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"galvantula\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/596/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ferrothorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/598/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"eelektrik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/603/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"eelektross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/604/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"beheeyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/606/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lampent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/608/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chandelure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/609/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fraxure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/611/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"haxorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/612/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"accelgor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/617/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mienshao\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/620/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bisharp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/625/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"braviary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/628/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"zweilous\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/634/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hydreigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/635/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tornadus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/641/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"thundurus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/642/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"landorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/645/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"chespin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/650/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"fennekin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/653/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"froakie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/656/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"bunnelby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/659/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fletchling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/661/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scatterbug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/664/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"litleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/667/\"},\"rate\":7},{\"pokemon_species\":{\"name\":\"skiddo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/672/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pancham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/674/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"furfrou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/676/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"espurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/677/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"honedge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/679/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spritzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/682/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swirlix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/684/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"inkay\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/686/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"binacle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/688/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skrelp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/690/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"clauncher\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/692/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"helioptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/694/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tyrunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/696/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"amaura\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/698/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"hawlucha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/701/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dedenne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/702/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"goomy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/704/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"klefki\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/707/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"phantump\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/708/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pumpkaboo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/710/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bergmite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/712/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"noibat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/714/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"quilladin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/651/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"chesnaught\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/652/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"braixen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/654/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"delphox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/655/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"frogadier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/657/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"greninja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/658/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"diggersby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/660/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"talonflame\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/663/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spewpa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/665/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vivillon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/666/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pyroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/668/\"},\"rate\":7},{\"pokemon_species\":{\"name\":\"gogoat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/673/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pangoro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/675/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"meowstic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/678/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"doublade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/680/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aegislash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/681/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aromatisse\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/683/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"malamar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/687/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"barbaracle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/689/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dragalge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/691/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"clawitzer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/693/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"heliolisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/695/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tyrantrum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/697/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"aurorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/699/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"sylveon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/700/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"sliggoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/705/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"goodra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/706/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"trevenant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/709/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"avalugg\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/713/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"noivern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/715/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rowlet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/722/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"litten\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/725/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"popplio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/728/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"pikipek\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/731/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"yungoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/734/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grubbin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/736/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crabrawler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/739/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"oricorio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/741/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"cutiefly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/742/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rockruff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/744/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wishiwashi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/746/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mareanie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/747/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mudbray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/749/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dewpider\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/751/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fomantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/753/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"morelull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/755/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"salandit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/757/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"stufful\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/759/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"comfey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/764/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"oranguru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/765/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"passimian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/766/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wimpod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/767/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sandygast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/769/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pyukumuku\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/771/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"komala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/775/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"turtonator\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/776/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"togedemaru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/777/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mimikyu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/778/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bruxish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/779/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drampa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/780/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"jangmo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/782/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"decidueye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/724/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"torracat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/726/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"incineroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/727/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"brionne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/729/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"primarina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/730/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"toucannon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/733/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gumshoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/735/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"charjabug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/737/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vikavolt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/738/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crabominable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/740/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ribombee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/743/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lycanroc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/745/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"toxapex\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/748/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mudsdale\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/750/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"araquanid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/752/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shiinotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/756/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bewear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/760/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"golisopod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/768/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"palossand\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/770/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hakamo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/783/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kommo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/784/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ivysaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/2/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"slowbro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/80/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"croconaw\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/159/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"hitmontop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/237/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"roselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/315/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"prinplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/394/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"roserade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/407/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mismagius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/429/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"abomasnow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/460/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"glaceon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/471/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"gallade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/475/\"},\"rate\":0},{\"pokemon_species\":{\"name\":\"samurott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/503/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"zebstrika\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/523/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"whirlipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/544/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crustle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/558/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gothorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/575/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"jellicent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/593/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"beartic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/614/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"volcarona\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/637/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fletchinder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/662/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slurpuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/685/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gourgeist\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/711/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dartrix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/723/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"trumbeak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/732/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lurantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/754/\"},\"rate\":4}],\"required_for_evolution\":[{\"name\":\"mothim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/414/\"},{\"name\":\"gallade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/475/\"},{\"name\":\"meowstic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/678/\"}]}","asText":null}}},"tags":[]},{"uuid":"bac38a28-db25-43d0-80ef-90d91f896418","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/growth-rate/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,205,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,188,1,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,102,111,114,109,117,108,97,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,185,27,10,6,108,101,118,101,108,115,18,174,27,8,1,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,228,42,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,208,42,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"medium slow\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}},{\"description\":\"mittel langsam\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"}},{\"description\":\"parabolique\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}}],\"formula\":\"\\\\frac{6x^3}{5} - 15x^2 + 100x - 140\",\"id\":4,\"levels\":[{\"experience\":1059860,\"level\":100},{\"experience\":1027103,\"level\":99},{\"experience\":995030,\"level\":98},{\"experience\":963632,\"level\":97},{\"experience\":932903,\"level\":96},{\"experience\":902835,\"level\":95},{\"experience\":873420,\"level\":94},{\"experience\":844653,\"level\":93},{\"experience\":816525,\"level\":92},{\"experience\":789030,\"level\":91},{\"experience\":762160,\"level\":90},{\"experience\":735907,\"level\":89},{\"experience\":710266,\"level\":88},{\"experience\":685228,\"level\":87},{\"experience\":660787,\"level\":86},{\"experience\":636935,\"level\":85},{\"experience\":613664,\"level\":84},{\"experience\":590969,\"level\":83},{\"experience\":568841,\"level\":82},{\"experience\":547274,\"level\":81},{\"experience\":526260,\"level\":80},{\"experience\":505791,\"level\":79},{\"experience\":485862,\"level\":78},{\"experience\":466464,\"level\":77},{\"experience\":447591,\"level\":76},{\"experience\":429235,\"level\":75},{\"experience\":411388,\"level\":74},{\"experience\":394045,\"level\":73},{\"experience\":377197,\"level\":72},{\"experience\":360838,\"level\":71},{\"experience\":344960,\"level\":70},{\"experience\":329555,\"level\":69},{\"experience\":314618,\"level\":68},{\"experience\":300140,\"level\":67},{\"experience\":286115,\"level\":66},{\"experience\":272535,\"level\":65},{\"experience\":259392,\"level\":64},{\"experience\":246681,\"level\":63},{\"experience\":234393,\"level\":62},{\"experience\":222522,\"level\":61},{\"experience\":211060,\"level\":60},{\"experience\":199999,\"level\":59},{\"experience\":189334,\"level\":58},{\"experience\":179056,\"level\":57},{\"experience\":169159,\"level\":56},{\"experience\":159635,\"level\":55},{\"experience\":150476,\"level\":54},{\"experience\":141677,\"level\":53},{\"experience\":133229,\"level\":52},{\"experience\":125126,\"level\":51},{\"experience\":117360,\"level\":50},{\"experience\":109923,\"level\":49},{\"experience\":102810,\"level\":48},{\"experience\":96012,\"level\":47},{\"experience\":89523,\"level\":46},{\"experience\":83335,\"level\":45},{\"experience\":77440,\"level\":44},{\"experience\":71833,\"level\":43},{\"experience\":66505,\"level\":42},{\"experience\":61450,\"level\":41},{\"experience\":56660,\"level\":40},{\"experience\":52127,\"level\":39},{\"experience\":47846,\"level\":38},{\"experience\":43808,\"level\":37},{\"experience\":40007,\"level\":36},{\"experience\":36435,\"level\":35},{\"experience\":33084,\"level\":34},{\"experience\":29949,\"level\":33},{\"experience\":27021,\"level\":32},{\"experience\":24294,\"level\":31},{\"experience\":21760,\"level\":30},{\"experience\":19411,\"level\":29},{\"experience\":17242,\"level\":28},{\"experience\":15244,\"level\":27},{\"experience\":13411,\"level\":26},{\"experience\":11735,\"level\":25},{\"experience\":10208,\"level\":24},{\"experience\":8825,\"level\":23},{\"experience\":7577,\"level\":22},{\"experience\":6458,\"level\":21},{\"experience\":5460,\"level\":20},{\"experience\":4575,\"level\":19},{\"experience\":3798,\"level\":18},{\"experience\":3120,\"level\":17},{\"experience\":2535,\"level\":16},{\"experience\":2035,\"level\":15},{\"experience\":1612,\"level\":14},{\"experience\":1261,\"level\":13},{\"experience\":973,\"level\":12},{\"experience\":742,\"level\":11},{\"experience\":560,\"level\":10},{\"experience\":419,\"level\":9},{\"experience\":314,\"level\":8},{\"experience\":236,\"level\":7},{\"experience\":179,\"level\":6},{\"experience\":135,\"level\":5},{\"experience\":96,\"level\":4},{\"experience\":57,\"level\":3},{\"experience\":9,\"level\":2},{\"experience\":0,\"level\":1}],\"name\":\"medium-slow\",\"pokemon_species\":[{\"name\":\"bulbasaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/1/\"},{\"name\":\"charmander\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/4/\"},{\"name\":\"squirtle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/7/\"},{\"name\":\"pidgey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/16/\"},{\"name\":\"nidoran-f\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/29/\"},{\"name\":\"nidoran-m\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/32/\"},{\"name\":\"oddish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/43/\"},{\"name\":\"poliwag\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/60/\"},{\"name\":\"abra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/63/\"},{\"name\":\"machop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/66/\"},{\"name\":\"bellsprout\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/69/\"},{\"name\":\"geodude\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/74/\"},{\"name\":\"venusaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/3/\"},{\"name\":\"charmeleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/5/\"},{\"name\":\"charizard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/6/\"},{\"name\":\"wartortle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/8/\"},{\"name\":\"blastoise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/9/\"},{\"name\":\"pidgeotto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/17/\"},{\"name\":\"pidgeot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/18/\"},{\"name\":\"nidorina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/30/\"},{\"name\":\"nidoqueen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/31/\"},{\"name\":\"nidorino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/33/\"},{\"name\":\"nidoking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/34/\"},{\"name\":\"gloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/44/\"},{\"name\":\"vileplume\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/45/\"},{\"name\":\"poliwhirl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/61/\"},{\"name\":\"poliwrath\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/62/\"},{\"name\":\"kadabra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/64/\"},{\"name\":\"alakazam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/65/\"},{\"name\":\"machoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/67/\"},{\"name\":\"machamp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/68/\"},{\"name\":\"weepinbell\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/70/\"},{\"name\":\"victreebel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/71/\"},{\"name\":\"graveler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/75/\"},{\"name\":\"golem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/76/\"},{\"name\":\"gastly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/92/\"},{\"name\":\"mew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/151/\"},{\"name\":\"chikorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/152/\"},{\"name\":\"cyndaquil\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/155/\"},{\"name\":\"haunter\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/93/\"},{\"name\":\"gengar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/94/\"},{\"name\":\"bayleef\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/153/\"},{\"name\":\"meganium\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/154/\"},{\"name\":\"quilava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/156/\"},{\"name\":\"typhlosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/157/\"},{\"name\":\"totodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/158/\"},{\"name\":\"mareep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/179/\"},{\"name\":\"hoppip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/187/\"},{\"name\":\"sunkern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/191/\"},{\"name\":\"murkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/198/\"},{\"name\":\"gligar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/207/\"},{\"name\":\"shuckle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/213/\"},{\"name\":\"sneasel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/215/\"},{\"name\":\"feraligatr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/160/\"},{\"name\":\"flaaffy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/180/\"},{\"name\":\"ampharos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/181/\"},{\"name\":\"bellossom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/182/\"},{\"name\":\"politoed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/186/\"},{\"name\":\"skiploom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/188/\"},{\"name\":\"jumpluff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/189/\"},{\"name\":\"sunflora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/192/\"},{\"name\":\"celebi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/251/\"},{\"name\":\"treecko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/252/\"},{\"name\":\"torchic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/255/\"},{\"name\":\"mudkip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/258/\"},{\"name\":\"lotad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/270/\"},{\"name\":\"seedot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/273/\"},{\"name\":\"taillow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/276/\"},{\"name\":\"whismur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/293/\"},{\"name\":\"sableye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/302/\"},{\"name\":\"grovyle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/253/\"},{\"name\":\"sceptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/254/\"},{\"name\":\"combusken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/256/\"},{\"name\":\"blaziken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/257/\"},{\"name\":\"marshtomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/259/\"},{\"name\":\"swampert\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/260/\"},{\"name\":\"lombre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/271/\"},{\"name\":\"ludicolo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/272/\"},{\"name\":\"nuzleaf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/274/\"},{\"name\":\"shiftry\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/275/\"},{\"name\":\"swellow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/277/\"},{\"name\":\"loudred\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/294/\"},{\"name\":\"exploud\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/295/\"},{\"name\":\"trapinch\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/328/\"},{\"name\":\"cacnea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/331/\"},{\"name\":\"kecleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/352/\"},{\"name\":\"absol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/359/\"},{\"name\":\"spheal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/363/\"},{\"name\":\"turtwig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/387/\"},{\"name\":\"chimchar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/390/\"},{\"name\":\"piplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/393/\"},{\"name\":\"vibrava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/329/\"},{\"name\":\"flygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/330/\"},{\"name\":\"cacturne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/332/\"},{\"name\":\"sealeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/364/\"},{\"name\":\"walrein\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/365/\"},{\"name\":\"grotle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/388/\"},{\"name\":\"torterra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/389/\"},{\"name\":\"monferno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/391/\"},{\"name\":\"infernape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/392/\"},{\"name\":\"starly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/396/\"},{\"name\":\"kricketot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/401/\"},{\"name\":\"shinx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/403/\"},{\"name\":\"budew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/406/\"},{\"name\":\"combee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/415/\"},{\"name\":\"chatot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/441/\"},{\"name\":\"riolu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/447/\"},{\"name\":\"empoleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/395/\"},{\"name\":\"staravia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/397/\"},{\"name\":\"staraptor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/398/\"},{\"name\":\"kricketune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/402/\"},{\"name\":\"luxio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/404/\"},{\"name\":\"luxray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/405/\"},{\"name\":\"vespiquen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/416/\"},{\"name\":\"honchkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/430/\"},{\"name\":\"lucario\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/448/\"},{\"name\":\"weavile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/461/\"},{\"name\":\"gliscor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/472/\"},{\"name\":\"shaymin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/492/\"},{\"name\":\"snivy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/495/\"},{\"name\":\"tepig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/498/\"},{\"name\":\"oshawott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/501/\"},{\"name\":\"lillipup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/506/\"},{\"name\":\"pidove\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/519/\"},{\"name\":\"roggenrola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/524/\"},{\"name\":\"timburr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/532/\"},{\"name\":\"tympole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/535/\"},{\"name\":\"sewaddle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/540/\"},{\"name\":\"venipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/543/\"},{\"name\":\"sandile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/551/\"},{\"name\":\"darumaka\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/554/\"},{\"name\":\"servine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/496/\"},{\"name\":\"serperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/497/\"},{\"name\":\"pignite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/499/\"},{\"name\":\"emboar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/500/\"},{\"name\":\"dewott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/502/\"},{\"name\":\"herdier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/507/\"},{\"name\":\"stoutland\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/508/\"},{\"name\":\"tranquill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/520/\"},{\"name\":\"unfezant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/521/\"},{\"name\":\"boldore\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/525/\"},{\"name\":\"gigalith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/526/\"},{\"name\":\"gurdurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/533/\"},{\"name\":\"conkeldurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/534/\"},{\"name\":\"palpitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/536/\"},{\"name\":\"seismitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/537/\"},{\"name\":\"swadloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/541/\"},{\"name\":\"leavanny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/542/\"},{\"name\":\"scolipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/545/\"},{\"name\":\"krokorok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/552/\"},{\"name\":\"krookodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/553/\"},{\"name\":\"darmanitan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/555/\"},{\"name\":\"zorua\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/570/\"},{\"name\":\"gothita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/574/\"},{\"name\":\"solosis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/577/\"},{\"name\":\"klink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/599/\"},{\"name\":\"litwick\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/607/\"},{\"name\":\"mienfoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/619/\"},{\"name\":\"zoroark\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/571/\"},{\"name\":\"gothitelle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/576/\"},{\"name\":\"duosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/578/\"},{\"name\":\"reuniclus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/579/\"},{\"name\":\"klang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/600/\"},{\"name\":\"klinklang\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/601/\"},{\"name\":\"lampent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/608/\"},{\"name\":\"chandelure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/609/\"},{\"name\":\"mienshao\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/620/\"},{\"name\":\"chespin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/650/\"},{\"name\":\"fennekin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/653/\"},{\"name\":\"froakie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/656/\"},{\"name\":\"fletchling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/661/\"},{\"name\":\"litleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/667/\"},{\"name\":\"quilladin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/651/\"},{\"name\":\"chesnaught\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/652/\"},{\"name\":\"braixen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/654/\"},{\"name\":\"delphox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/655/\"},{\"name\":\"frogadier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/657/\"},{\"name\":\"greninja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/658/\"},{\"name\":\"talonflame\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/663/\"},{\"name\":\"pyroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/668/\"},{\"name\":\"rowlet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/722/\"},{\"name\":\"litten\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/725/\"},{\"name\":\"popplio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/728/\"},{\"name\":\"bounsweet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/761/\"},{\"name\":\"minior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/774/\"},{\"name\":\"decidueye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/724/\"},{\"name\":\"torracat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/726/\"},{\"name\":\"incineroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/727/\"},{\"name\":\"brionne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/729/\"},{\"name\":\"primarina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/730/\"},{\"name\":\"steenee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/762/\"},{\"name\":\"tsareena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/763/\"},{\"name\":\"ivysaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/2/\"},{\"name\":\"croconaw\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/159/\"},{\"name\":\"roselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/315/\"},{\"name\":\"prinplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/394/\"},{\"name\":\"roserade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/407/\"},{\"name\":\"samurott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/503/\"},{\"name\":\"whirlipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/544/\"},{\"name\":\"gothorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/575/\"},{\"name\":\"fletchinder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/662/\"},{\"name\":\"dartrix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/723/\"}]}","asText":null}}},"tags":[]},{"uuid":"19c05d5e-ee9a-4fa3-b320-81d1bef58f1a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-fling-effect/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,203,1,10,7,114,101,115,117,108,116,115,18,191,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":7,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"badly-poison\",\"url\":\"https://pokeapi.co/api/v2/item-fling-effect/1/\"},{\"name\":\"burn\",\"url\":\"https://pokeapi.co/api/v2/item-fling-effect/2/\"},{\"name\":\"berry-effect\",\"url\":\"https://pokeapi.co/api/v2/item-fling-effect/3/\"},{\"name\":\"herb-effect\",\"url\":\"https://pokeapi.co/api/v2/item-fling-effect/4/\"},{\"name\":\"paralyze\",\"url\":\"https://pokeapi.co/api/v2/item-fling-effect/5/\"},{\"name\":\"poison\",\"url\":\"https://pokeapi.co/api/v2/item-fling-effect/6/\"},{\"name\":\"flinch\",\"url\":\"https://pokeapi.co/api/v2/item-fling-effect/7/\"}]}","asText":null}}},"tags":[]},{"uuid":"38129d1d-f8ba-472b-b5c2-21a5a39466d7","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/growth-rate/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,205,1,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,188,1,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,13,10,7,102,111,114,109,117,108,97,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,185,27,10,6,108,101,118,101,108,115,18,174,27,8,1,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,26,33,8,0,18,16,10,10,101,120,112,101,114,105,101,110,99,101,18,2,8,3,18,11,10,5,108,101,118,101,108,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,254,11,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,234,11,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"fast\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}},{\"description\":\"schnell\",\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"}},{\"description\":\"rapide\",\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"}}],\"formula\":\"\\\\frac{4x^3}{5}\",\"id\":3,\"levels\":[{\"experience\":800000,\"level\":100},{\"experience\":776239,\"level\":99},{\"experience\":752953,\"level\":98},{\"experience\":730138,\"level\":97},{\"experience\":707788,\"level\":96},{\"experience\":685900,\"level\":95},{\"experience\":664467,\"level\":94},{\"experience\":643485,\"level\":93},{\"experience\":622950,\"level\":92},{\"experience\":602856,\"level\":91},{\"experience\":583200,\"level\":90},{\"experience\":563975,\"level\":89},{\"experience\":545177,\"level\":88},{\"experience\":526802,\"level\":87},{\"experience\":508844,\"level\":86},{\"experience\":491300,\"level\":85},{\"experience\":474163,\"level\":84},{\"experience\":457429,\"level\":83},{\"experience\":441094,\"level\":82},{\"experience\":425152,\"level\":81},{\"experience\":409600,\"level\":80},{\"experience\":394431,\"level\":79},{\"experience\":379641,\"level\":78},{\"experience\":365226,\"level\":77},{\"experience\":351180,\"level\":76},{\"experience\":337500,\"level\":75},{\"experience\":324179,\"level\":74},{\"experience\":311213,\"level\":73},{\"experience\":298598,\"level\":72},{\"experience\":286328,\"level\":71},{\"experience\":274400,\"level\":70},{\"experience\":262807,\"level\":69},{\"experience\":251545,\"level\":68},{\"experience\":240610,\"level\":67},{\"experience\":229996,\"level\":66},{\"experience\":219700,\"level\":65},{\"experience\":209715,\"level\":64},{\"experience\":200037,\"level\":63},{\"experience\":190662,\"level\":62},{\"experience\":181584,\"level\":61},{\"experience\":172800,\"level\":60},{\"experience\":164303,\"level\":59},{\"experience\":156089,\"level\":58},{\"experience\":148154,\"level\":57},{\"experience\":140492,\"level\":56},{\"experience\":133100,\"level\":55},{\"experience\":125971,\"level\":54},{\"experience\":119101,\"level\":53},{\"experience\":112486,\"level\":52},{\"experience\":106120,\"level\":51},{\"experience\":100000,\"level\":50},{\"experience\":94119,\"level\":49},{\"experience\":88473,\"level\":48},{\"experience\":83058,\"level\":47},{\"experience\":77868,\"level\":46},{\"experience\":72900,\"level\":45},{\"experience\":68147,\"level\":44},{\"experience\":63605,\"level\":43},{\"experience\":59270,\"level\":42},{\"experience\":55136,\"level\":41},{\"experience\":51200,\"level\":40},{\"experience\":47455,\"level\":39},{\"experience\":43897,\"level\":38},{\"experience\":40522,\"level\":37},{\"experience\":37324,\"level\":36},{\"experience\":34300,\"level\":35},{\"experience\":31443,\"level\":34},{\"experience\":28749,\"level\":33},{\"experience\":26214,\"level\":32},{\"experience\":23832,\"level\":31},{\"experience\":21600,\"level\":30},{\"experience\":19511,\"level\":29},{\"experience\":17561,\"level\":28},{\"experience\":15746,\"level\":27},{\"experience\":14060,\"level\":26},{\"experience\":12500,\"level\":25},{\"experience\":11059,\"level\":24},{\"experience\":9733,\"level\":23},{\"experience\":8518,\"level\":22},{\"experience\":7408,\"level\":21},{\"experience\":6400,\"level\":20},{\"experience\":5487,\"level\":19},{\"experience\":4665,\"level\":18},{\"experience\":3930,\"level\":17},{\"experience\":3276,\"level\":16},{\"experience\":2700,\"level\":15},{\"experience\":2195,\"level\":14},{\"experience\":1757,\"level\":13},{\"experience\":1382,\"level\":12},{\"experience\":1064,\"level\":11},{\"experience\":800,\"level\":10},{\"experience\":583,\"level\":9},{\"experience\":409,\"level\":8},{\"experience\":274,\"level\":7},{\"experience\":172,\"level\":6},{\"experience\":100,\"level\":5},{\"experience\":51,\"level\":4},{\"experience\":21,\"level\":3},{\"experience\":6,\"level\":2},{\"experience\":0,\"level\":1}],\"name\":\"fast\",\"pokemon_species\":[{\"name\":\"clefairy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/35/\"},{\"name\":\"clefable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/36/\"},{\"name\":\"jigglypuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/39/\"},{\"name\":\"wigglytuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/40/\"},{\"name\":\"chansey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/113/\"},{\"name\":\"ledyba\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/165/\"},{\"name\":\"spinarak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/167/\"},{\"name\":\"cleffa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/173/\"},{\"name\":\"igglybuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/174/\"},{\"name\":\"togepi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/175/\"},{\"name\":\"aipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/190/\"},{\"name\":\"misdreavus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/200/\"},{\"name\":\"snubbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/209/\"},{\"name\":\"corsola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/222/\"},{\"name\":\"delibird\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/225/\"},{\"name\":\"smeargle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/235/\"},{\"name\":\"ledian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/166/\"},{\"name\":\"ariados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/168/\"},{\"name\":\"togetic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/176/\"},{\"name\":\"marill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/183/\"},{\"name\":\"azumarill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/184/\"},{\"name\":\"granbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/210/\"},{\"name\":\"azurill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/298/\"},{\"name\":\"skitty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/300/\"},{\"name\":\"mawile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/303/\"},{\"name\":\"blissey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/242/\"},{\"name\":\"delcatty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/301/\"},{\"name\":\"spoink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/325/\"},{\"name\":\"spinda\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/327/\"},{\"name\":\"lunatone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/337/\"},{\"name\":\"solrock\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/338/\"},{\"name\":\"shuppet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/353/\"},{\"name\":\"duskull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/355/\"},{\"name\":\"luvdisc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/370/\"},{\"name\":\"grumpig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/326/\"},{\"name\":\"banette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/354/\"},{\"name\":\"dusclops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/356/\"},{\"name\":\"chimecho\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/358/\"},{\"name\":\"glameow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/431/\"},{\"name\":\"chingling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/433/\"},{\"name\":\"happiny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/440/\"},{\"name\":\"ambipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/424/\"},{\"name\":\"purugly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/432/\"},{\"name\":\"togekiss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/468/\"},{\"name\":\"munna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/517/\"},{\"name\":\"audino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/531/\"},{\"name\":\"dusknoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/477/\"},{\"name\":\"musharna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/518/\"},{\"name\":\"minccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/572/\"},{\"name\":\"alomomola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/594/\"},{\"name\":\"cinccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/573/\"},{\"name\":\"klefki\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/707/\"},{\"name\":\"wishiwashi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/746/\"},{\"name\":\"comfey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/764/\"},{\"name\":\"pyukumuku\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/771/\"},{\"name\":\"mismagius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/429/\"}]}","asText":null}}},"tags":[]},{"uuid":"2a899691-1f4e-4289-b8b8-1bc1da1e3784","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/gender/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,199,203,2,10,23,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,95,100,101,116,97,105,108,115,18,170,203,2,8,1,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,26,60,8,0,18,44,10,15,112,111,107,101,109,111,110,95,115,112,101,99,105,101,115,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,114,97,116,101,18,2,8,3,18,136,1,10,22,114,101,113,117,105,114,101,100,95,102,111,114,95,101,118,111,108,117,116,105,111,110,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":1,\"name\":\"female\",\"pokemon_species_details\":[{\"pokemon_species\":{\"name\":\"bulbasaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/1/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"charmander\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/4/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"squirtle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/7/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"caterpie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/10/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"weedle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/13/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pidgey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/16/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rattata\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/19/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/21/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ekans\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/23/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sandshrew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/27/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"nidoran-f\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/29/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"vulpix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/37/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"zubat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/41/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"oddish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/43/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"paras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/46/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"venonat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/48/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"diglett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/50/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"meowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/52/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"psyduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/54/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mankey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/56/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"growlithe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/58/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"poliwag\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/60/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"abra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/63/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"machop\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/66/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"bellsprout\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/69/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tentacool\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/72/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"geodude\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/74/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ponyta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/77/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"venusaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/3/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"charmeleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/5/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"charizard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/6/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"wartortle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/8/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"blastoise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/9/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"metapod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/11/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"butterfree\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/12/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kakuna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/14/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"beedrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/15/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pidgeotto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/17/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pidgeot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/18/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"raticate\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/20/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fearow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/22/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"arbok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/24/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pikachu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/25/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"raichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/26/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sandslash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/28/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"nidorina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/30/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"nidoqueen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/31/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"clefairy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/35/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"clefable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/36/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"ninetales\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/38/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"jigglypuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/39/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"wigglytuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/40/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"golbat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/42/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/44/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vileplume\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/45/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"parasect\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/47/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"venomoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/49/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dugtrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/51/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"persian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/53/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"golduck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/55/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"primeape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/57/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"arcanine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/59/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"poliwhirl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/61/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"poliwrath\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/62/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kadabra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/64/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"alakazam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/65/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"machoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/67/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"machamp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/68/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"weepinbell\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/70/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"victreebel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/71/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tentacruel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/73/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"graveler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/75/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"golem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/76/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rapidash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/78/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slowpoke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/79/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"farfetchd\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/83/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"doduo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/84/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/86/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grimer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/88/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shellder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/90/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gastly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/92/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"onix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/95/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drowzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/96/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"krabby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/98/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"exeggcute\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/102/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cubone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/104/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lickitung\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/108/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"koffing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/109/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rhyhorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/111/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tangela\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/114/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kangaskhan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/115/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"horsea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/116/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"goldeen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/118/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scyther\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/123/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pinsir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/127/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"magikarp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/129/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lapras\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/131/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"eevee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/133/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"omanyte\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/138/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"kabuto\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/140/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"aerodactyl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/142/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"dratini\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/147/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chikorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/152/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"cyndaquil\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/155/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"dodrio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/85/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dewgong\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/87/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"muk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/89/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cloyster\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/91/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"haunter\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/93/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gengar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/94/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hypno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/97/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kingler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/99/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"exeggutor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/103/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"marowak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/105/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"weezing\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/110/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rhydon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/112/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chansey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/113/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"seadra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/117/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/119/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mr-mime\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/122/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"jynx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/124/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"electabuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/125/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"magmar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/126/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"gyarados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/130/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vaporeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/134/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"jolteon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/135/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"flareon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/136/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"omastar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/139/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"kabutops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/141/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"snorlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/143/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"dragonair\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/148/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dragonite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/149/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bayleef\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/153/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"meganium\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/154/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"quilava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/156/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"typhlosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/157/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"totodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/158/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"sentret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/161/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hoothoot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/163/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ledyba\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/165/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spinarak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/167/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chinchou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/170/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pichu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/172/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cleffa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/173/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"igglybuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/174/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"togepi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/175/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"natu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/177/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mareep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/179/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hoppip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/187/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/190/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sunkern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/191/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"yanma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/193/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wooper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/194/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"murkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/198/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"misdreavus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/200/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"girafarig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/203/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pineco\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/204/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dunsparce\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/206/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gligar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/207/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"snubbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/209/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"qwilfish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/211/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shuckle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/213/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"heracross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/214/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sneasel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/215/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"teddiursa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/216/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slugma\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/218/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swinub\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/220/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"corsola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/222/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"remoraid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/223/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"delibird\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/225/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skarmory\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/227/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"houndour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/228/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"phanpy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/231/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"stantler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/234/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"smeargle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/235/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"feraligatr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/160/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"furret\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/162/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"noctowl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/164/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ledian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/166/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ariados\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/168/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/169/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lanturn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/171/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"togetic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/176/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"xatu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/178/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"flaaffy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/180/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ampharos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/181/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bellossom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/182/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"marill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/183/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"azumarill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/184/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sudowoodo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/185/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"politoed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/186/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skiploom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/188/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"jumpluff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/189/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sunflora\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/192/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"quagsire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/195/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"espeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/196/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"umbreon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/197/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"slowking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/199/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wobbuffet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/202/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"forretress\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/205/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"steelix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/208/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"granbull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/210/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"scizor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/212/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ursaring\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/217/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"magcargo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/219/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"piloswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/221/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"octillery\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/224/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mantine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/226/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"houndoom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/229/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kingdra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/230/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"donphan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/232/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"smoochum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/238/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"elekid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/239/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"magby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/240/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"miltank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/241/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"larvitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/246/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"treecko\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/252/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"torchic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/255/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"mudkip\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/258/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"poochyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/261/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"zigzagoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/263/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wurmple\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/265/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lotad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/270/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seedot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/273/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"taillow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/276/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wingull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/278/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ralts\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/280/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"surskit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/283/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shroomish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/285/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slakoth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/287/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"nincada\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/290/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"whismur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/293/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"makuhita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/296/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"azurill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/298/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"nosepass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/299/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skitty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/300/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"sableye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/302/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mawile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/303/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/304/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"meditite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/307/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"electrike\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/309/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"plusle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/311/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"minun\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/312/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"illumise\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/314/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"blissey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/242/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"pupitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/247/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tyranitar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/248/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grovyle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/253/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"sceptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/254/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"combusken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/256/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"blaziken\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/257/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"marshtomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/259/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"swampert\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/260/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"mightyena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/262/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"linoone\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/264/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"silcoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/266/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"beautifly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/267/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cascoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/268/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dustox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/269/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lombre\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/271/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ludicolo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/272/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"nuzleaf\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/274/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shiftry\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/275/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swellow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/277/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pelipper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/279/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kirlia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/281/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gardevoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/282/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"masquerain\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/284/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"breloom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/286/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vigoroth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/288/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slaking\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/289/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ninjask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/291/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"loudred\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/294/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"exploud\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/295/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hariyama\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/297/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"delcatty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/301/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"lairon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/305/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aggron\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/306/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"medicham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/308/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"manectric\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/310/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gulpin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/316/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"carvanha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/318/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wailmer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/320/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"numel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/322/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"torkoal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/324/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spoink\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/325/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spinda\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/327/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"trapinch\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/328/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cacnea\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/331/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swablu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/333/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"zangoose\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/335/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seviper\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/336/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"barboach\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/339/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"corphish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/341/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lileep\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/345/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"anorith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/347/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"feebas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/349/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"castform\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/351/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kecleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/352/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shuppet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/353/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"duskull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/355/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tropius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/357/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"absol\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/359/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wynaut\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/360/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"snorunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/361/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spheal\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/363/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"clamperl\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/366/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"relicanth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/369/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"luvdisc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/370/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"bagon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/371/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"latias\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/380/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"turtwig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/387/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"chimchar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/390/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"piplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/393/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"swalot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/317/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sharpedo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/319/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wailord\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/321/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"camerupt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/323/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grumpig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/326/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vibrava\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/329/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"flygon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/330/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cacturne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/332/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"altaria\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/334/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"whiscash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/340/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crawdaunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/342/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cradily\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/346/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"armaldo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/348/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"milotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/350/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"banette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/354/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dusclops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/356/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chimecho\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/358/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"glalie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/362/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sealeo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/364/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"walrein\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/365/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"huntail\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/367/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gorebyss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/368/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shelgon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/372/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"salamence\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/373/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grotle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/388/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"torterra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/389/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"monferno\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/391/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"infernape\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/392/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"starly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/396/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bidoof\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/399/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kricketot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/401/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shinx\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/403/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"budew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/406/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cranidos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/408/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"shieldon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/410/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"burmy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/412/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"combee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/415/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"pachirisu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/417/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"buizel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/418/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cherubi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/420/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shellos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/422/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drifloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/425/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"buneary\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/427/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"glameow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/431/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"chingling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/433/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"stunky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/434/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bonsly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/438/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mime-jr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/439/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"happiny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/440/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"chatot\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/441/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spiritomb\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/442/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gible\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/443/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"munchlax\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/446/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"riolu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/447/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"hippopotas\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/449/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skorupi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/451/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"croagunk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/453/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"carnivine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/455/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"finneon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/456/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mantyke\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/458/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"snover\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/459/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"empoleon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/395/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"staravia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/397/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"staraptor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/398/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bibarel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/400/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kricketune\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/402/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"luxio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/404/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"luxray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/405/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rampardos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/409/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"bastiodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/411/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"wormadam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/413/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"vespiquen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/416/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"floatzel\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/419/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cherrim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/421/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gastrodon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/423/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ambipom\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/424/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drifblim\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/426/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lopunny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/428/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"honchkrow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/430/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"purugly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/432/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"skuntank\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/435/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gabite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/444/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"garchomp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/445/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lucario\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/448/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"hippowdon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/450/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drapion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/452/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"toxicroak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/454/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lumineon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/457/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"weavile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/461/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lickilicky\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/463/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rhyperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/464/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tangrowth\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/465/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"electivire\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/466/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"magmortar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/467/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"togekiss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/468/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"yanmega\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/469/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"leafeon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/470/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"gliscor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/472/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mamoswine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/473/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"heatran\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/485/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cresselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/488/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"snivy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/495/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"tepig\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/498/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"oshawott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/501/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"patrat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/504/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lillipup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/506/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"purrloin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/509/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pansage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/511/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"pansear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/513/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"panpour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/515/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"munna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/517/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pidove\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/519/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"blitzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/522/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"roggenrola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/524/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"woobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/527/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drilbur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/529/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"audino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/531/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"timburr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/532/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"tympole\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/535/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sewaddle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/540/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"venipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/543/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cottonee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/546/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"petilil\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/548/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"basculin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/550/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sandile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/551/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"darumaka\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/554/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"probopass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/476/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dusknoir\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/477/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"froslass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/478/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"servine\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/496/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"serperior\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/497/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"pignite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/499/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"emboar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/500/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"dewott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/502/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"watchog\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/505/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"herdier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/507/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"stoutland\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/508/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"liepard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/510/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"simisage\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/512/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"simisear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/514/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"simipour\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/516/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"musharna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/518/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tranquill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/520/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"unfezant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/521/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"boldore\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/525/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gigalith\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/526/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swoobat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/528/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"excadrill\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/530/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gurdurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/533/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"conkeldurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/534/\"},\"rate\":2},{\"pokemon_species\":{\"name\":\"palpitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/536/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"seismitoad\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/537/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swadloon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/541/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"leavanny\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/542/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scolipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/545/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"whimsicott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/547/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lilligant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/549/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"krokorok\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/552/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"krookodile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/553/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"darmanitan\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/555/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"maractus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/556/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dwebble\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/557/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scraggy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/559/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sigilyph\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/561/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"yamask\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/562/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tirtouga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/564/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"archen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/566/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"trubbish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/568/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"zorua\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/570/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"minccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/572/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"gothita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/574/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"solosis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/577/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ducklett\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/580/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vanillite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/582/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"deerling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/585/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"emolga\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/587/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"karrablast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/588/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"foongus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/590/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"frillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/592/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"alomomola\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/594/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"joltik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/595/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ferroseed\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/597/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tynamo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/602/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"elgyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/605/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"litwick\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/607/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"axew\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/610/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cubchoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/613/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shelmet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/616/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"stunfisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/618/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mienfoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/619/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"druddigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/621/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pawniard\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/624/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bouffalant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/626/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vullaby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/629/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"heatmor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/631/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"durant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/632/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"deino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/633/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"larvesta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/636/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scrafty\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/560/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"cofagrigus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/563/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"carracosta\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/565/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"archeops\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/567/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"garbodor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/569/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"zoroark\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/571/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"cinccino\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/573/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"gothitelle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/576/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"duosion\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/578/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"reuniclus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/579/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swanna\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/581/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vanillish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/583/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vanilluxe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/584/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sawsbuck\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/586/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"escavalier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/589/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"amoonguss\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/591/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"galvantula\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/596/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ferrothorn\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/598/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"eelektrik\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/603/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"eelektross\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/604/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"beheeyem\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/606/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lampent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/608/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chandelure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/609/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fraxure\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/611/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"haxorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/612/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"accelgor\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/617/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mienshao\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/620/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bisharp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/625/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mandibuzz\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/630/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"zweilous\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/634/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hydreigon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/635/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"chespin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/650/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"fennekin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/653/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"froakie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/656/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"bunnelby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/659/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fletchling\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/661/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"scatterbug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/664/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"litleo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/667/\"},\"rate\":7},{\"pokemon_species\":{\"name\":\"flabebe\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/669/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"skiddo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/672/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pancham\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/674/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"furfrou\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/676/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"espurr\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/677/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"honedge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/679/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spritzee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/682/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"swirlix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/684/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"inkay\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/686/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"binacle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/688/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"skrelp\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/690/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"clauncher\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/692/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"helioptile\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/694/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tyrunt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/696/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"amaura\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/698/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"hawlucha\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/701/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dedenne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/702/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"goomy\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/704/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"klefki\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/707/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"phantump\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/708/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pumpkaboo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/710/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bergmite\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/712/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"noibat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/714/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"quilladin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/651/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"chesnaught\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/652/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"braixen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/654/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"delphox\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/655/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"frogadier\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/657/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"greninja\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/658/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"diggersby\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/660/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"talonflame\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/663/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"spewpa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/665/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vivillon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/666/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pyroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/668/\"},\"rate\":7},{\"pokemon_species\":{\"name\":\"floette\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/670/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"florges\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/671/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"gogoat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/673/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pangoro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/675/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"meowstic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/678/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"doublade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/680/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aegislash\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/681/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"aromatisse\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/683/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"malamar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/687/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"barbaracle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/689/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dragalge\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/691/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"clawitzer\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/693/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"heliolisk\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/695/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"tyrantrum\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/697/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"aurorus\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/699/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"sylveon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/700/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"sliggoo\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/705/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"goodra\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/706/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"trevenant\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/709/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"avalugg\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/713/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"noivern\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/715/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rowlet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/722/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"litten\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/725/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"popplio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/728/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"pikipek\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/731/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"yungoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/734/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"grubbin\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/736/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crabrawler\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/739/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"oricorio\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/741/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"cutiefly\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/742/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"rockruff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/744/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wishiwashi\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/746/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mareanie\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/747/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mudbray\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/749/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dewpider\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/751/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fomantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/753/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"morelull\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/755/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"salandit\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/757/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"stufful\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/759/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bounsweet\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/761/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"comfey\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/764/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"oranguru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/765/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"passimian\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/766/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"wimpod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/767/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"sandygast\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/769/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"pyukumuku\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/771/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"komala\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/775/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"turtonator\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/776/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"togedemaru\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/777/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mimikyu\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/778/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"bruxish\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/779/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"drampa\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/780/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"jangmo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/782/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"decidueye\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/724/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"torracat\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/726/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"incineroar\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/727/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"brionne\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/729/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"primarina\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/730/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"toucannon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/733/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gumshoos\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/735/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"charjabug\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/737/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"vikavolt\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/738/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crabominable\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/740/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ribombee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/743/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lycanroc\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/745/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"toxapex\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/748/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mudsdale\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/750/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"araquanid\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/752/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"shiinotic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/756/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"salazzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/758/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"bewear\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/760/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"steenee\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/762/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"tsareena\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/763/\"},\"rate\":8},{\"pokemon_species\":{\"name\":\"golisopod\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/768/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"palossand\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/770/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"hakamo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/783/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"kommo-o\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/784/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"ivysaur\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/2/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"slowbro\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/80/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"croconaw\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/159/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"roselia\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/315/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"prinplup\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/394/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"roserade\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/407/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"mismagius\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/429/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"abomasnow\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/460/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"glaceon\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/471/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"samurott\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/503/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"zebstrika\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/523/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"whirlipede\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/544/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"crustle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/558/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gothorita\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/575/\"},\"rate\":6},{\"pokemon_species\":{\"name\":\"jellicent\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/593/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"beartic\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/614/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"volcarona\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/637/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"fletchinder\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/662/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"slurpuff\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/685/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"gourgeist\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/711/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"dartrix\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/723/\"},\"rate\":1},{\"pokemon_species\":{\"name\":\"trumbeak\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/732/\"},\"rate\":4},{\"pokemon_species\":{\"name\":\"lurantis\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/754/\"},\"rate\":4}],\"required_for_evolution\":[{\"name\":\"wormadam\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/413/\"},{\"name\":\"vespiquen\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/416/\"},{\"name\":\"froslass\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/478/\"},{\"name\":\"salazzle\",\"url\":\"https://pokeapi.co/api/v2/pokemon-species/758/\"}]}","asText":null}}},"tags":[]},{"uuid":"d80d3e96-7b7c-4827-b2d5-aa37f48f6a95","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-pocket/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,230,1,10,7,114,101,115,117,108,116,115,18,218,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":8,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"},{\"name\":\"medicine\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/2/\"},{\"name\":\"pokeballs\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/3/\"},{\"name\":\"machines\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/4/\"},{\"name\":\"berries\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/5/\"},{\"name\":\"mail\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/6/\"},{\"name\":\"battle\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/7/\"},{\"name\":\"key\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/8/\"}]}","asText":null}}},"tags":[]},{"uuid":"6d0861f2-2a12-4384-a6f8-46b2bbadc56c","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"standard-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/34/\"},\"cost\":200,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon, using a catch rate of 1×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"用于投向野生宝可梦\\n并将其捕捉的球。\\n它是胶囊样式的。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"野生の ポケモンに 投げて\\n捕まえるための ボール。\\nカプセル式に なっている。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A device for catching wild Pokémon. It’s thrown like\\na ball at a Pokémon, comfortably encapsulating\\nits target.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Strumento dotato di capsula usato per catturare\\nPokémon selvatici. Si lancia contro il bersaglio\\ncome una palla.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Dispositivo con diseño capsular que atrapa\\nPokémon salvajes. Se lanza como una bola\\ncontra el blanco.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Damit fängst du wilde Pokémon. Du wirfst ihn wie\\neinen normalen Ball. Das Design ähnelt dem einer\\nKapsel.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un objet semblable à une capsule, qui capture\\nles Pokémon sauvages. Il suffit pour cela de le\\njeter comme une balle.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"用於投向野生寶可夢\\n並將其捕捉的球。\\n它是膠囊樣式的。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"야생 포켓몬에게 던져서\\n잡기 위한 볼.\\n캡슐식으로 되어 있다.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"やせいの ポケモンに なげて\\nつかまえる ための ボール。\\nカプセルしきに なっている。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"用于投向野生宝可梦\\n并将其捕捉的球。\\n它是胶囊样式的。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"野生の ポケモンに 投げて\\n捕まえるための ボール。\\nカプセル式に なっている。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A device for catching wild Pokémon. It’s thrown like\\na ball at a Pokémon, comfortably encapsulating\\nits target.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Strumento dotato di capsula usato per catturare\\nPokémon selvatici. Si lancia contro il bersaglio\\ncome una palla.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Dispositivo con diseño capsular que atrapa\\nPokémon salvajes. Se lanza como una bola\\ncontra el blanco.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Damit fängst du wilde Pokémon. Du wirfst ihn wie\\neinen normalen Ball. Das Design ähnelt dem einer\\nKapsel.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un objet semblable à une capsule, qui capture\\nles Pokémon sauvages. Il suffit pour cela de le\\njeter comme une balle.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"用於投向野生寶可夢\\n並將其捕捉的球。\\n它是膠囊樣式的。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"야생 포켓몬에게 던져서\\n잡기 위한 볼.\\n캡슐식으로 되어 있다.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"やせいの ポケモンに なげて\\nつかまえる ための ボール。\\nカプセルしきに なっている。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"野生の ポケモンに 投げて\\n捕まえるための ボール。\\nカプセル式に なっている。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A device for catching wild Pokémon.\\nIt’s thrown like a ball at a Pokémon,\\ncomfortably encapsulating its target.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Strumento dotato di capsula usato per catturare\\nPokémon selvatici. Si lancia contro il bersaglio\\ncome una palla.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Dispositivo con diseño capsular que atrapa\\nPokémon salvajes. Se lanza como una bola\\ncontra el blanco.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Damit fängst du wilde Pokémon. Du wirfst ihn wie\\neinen normalen Ball. Das Design ähnelt dem einer\\nKapsel.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un objet semblable à une capsule, qui capture\\nles Pokémon sauvages. Il suffit pour cela de le\\njeter comme une balle.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"야생 포켓몬에게 던져서\\n잡기 위한 볼.\\n캡슐식으로 되어 있다.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"やせいの ポケモンに なげて\\nつかまえる ための ボール。\\nカプセルしきに なっている。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A device for catching wild Pokémon.\\nIt is thrown like a ball at the target.\\nIt is designed as a capsule system.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A device for catching wild Pokémon.\\nIt is thrown like a ball at the target.\\nIt is designed as a capsule system.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un objet pareil à une capsule, qui\\ncapture les Pokémon sauvages. Il suffit\\npour cela de le jeter comme une balle.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A device for catching wild Pokémon.\\nIt is thrown like a ball at the target.\\nIt is designed as a capsule system.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A device for catching wild Pokémon.\\nIt is thrown like a ball at the target.\\nIt is designed as a capsule system.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A device for catching wild Pokémon.\\nIt is thrown like a ball at the target.\\nIt is designed as a capsule system.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL thrown to catch a wild\\nPOKéMON. It is designed in a\\ncapsule style.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A tool used for\\ncatching wild\\nPOKéMON.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A tool used for\\ncatching wild\\nPOKéMON.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":4,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":4,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":4,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":4,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":4,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":4,\"machines\":[],\"name\":\"poke-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"精灵球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"モンスターボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Poké Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Poké Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Poké Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Pokéball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Poké Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"精靈球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"몬스터볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"モンスターボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/poke-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"ad0160e1-9a0f-4422-a095-cdce826acd2d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"standard-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/34/\"},\"cost\":0,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Catches a wild Pokémon without fail.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Catches a wild Pokémon every time.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"必定能捉到野生宝可梦的,\\n性能最好的球。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"野生の ポケモンを 必ず\\n捕まえることが できる\\n最高 性能の ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best Poké Ball with the ultimate level of\\nperformance. With it, you will catch any wild\\nPokémon without fail.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"La Poké Ball dalle prestazioni migliori: cattura\\nqualsiasi Pokémon selvatico senza mai fallire.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"La Poké Ball definitiva. Atrapa cualquier Pokémon\\nsalvaje y no falla nunca.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Der beste Ball! Damit fängst du garantiert jedes\\nwilde Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Assurément la Ball la plus performante.\\nElle permet de capturer à coup sûr un Pokémon\\nsauvage.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"性能最好的球。\\n必定能捉到野生寶可夢。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"야생 포켓몬을 반드시\\n잡을 수 있는\\n최고 성능의 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"やせいの ポケモンを かならず\\nつかまえることが できる\\nさいこう せいのうの ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"必定能捉到野生宝可梦的,\\n性能最好的球。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"野生の ポケモンを 必ず\\n捕まえることが できる\\n最高 性能の ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best Poké Ball with the ultimate level of\\nperformance. With it, you will catch any wild\\nPokémon without fail.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"La Poké Ball dalle prestazioni migliori: cattura\\nqualsiasi Pokémon selvatico senza mai fallire.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"La Poké Ball definitiva. Atrapa cualquier Pokémon\\nsalvaje y no falla nunca.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Der beste Ball! Damit fängst du garantiert jedes\\nwilde Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Assurément la Ball la plus performante.\\nElle permet de capturer à coup sûr un Pokémon\\nsauvage.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"性能最好的球。\\n必定能捉到野生寶可夢。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"야생 포켓몬을 반드시\\n잡을 수 있는\\n최고 성능의 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"やせいの ポケモンを かならず\\nつかまえることが できる\\nさいこう せいのうの ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"野生の ポケモンを 必ず\\n捕まえることが できる\\n最高 性能の ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best Poké Ball with the ultimate\\nlevel of performance. With it, you will\\ncatch any wild Pokémon without fail.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"La Poké Ball dalle prestazioni migliori:\\ncattura qualsiasi Pokémon selvatico senza\\nmai fallire.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"La Poké Ball definitiva. Atrapa cualquier Pokémon\\nsalvaje y no falla nunca.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Der beste Ball! Damit fängst du garantiert jedes\\nwilde Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Assurément la Ball la plus performante.\\nElle permet de capturer à coup sûr un Pokémon\\nsauvage.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"야생 포켓몬을 반드시\\n잡을 수 있는\\n최고 성능의 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"やせいの ポケモンを かならず\\nつかまえることが できる\\nさいこう せいのうの ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best Ball with the ultimate level of\\nperformance. It will catch any wild\\nPokémon without fail.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best Ball with the ultimate level of\\nperformance. It will catch any wild\\nPokémon without fail.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Assurément la Ball la plus performante.\\nElle permet de capturer à coup sûr un\\nPokémon sauvage.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best Ball with the ultimate level of\\nperformance. It will catch any wild\\nPokémon without fail.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best Ball with the ultimate level of\\nperformance. It will catch any wild\\nPokémon without fail.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best Ball with the ultimate level of\\nperformance. It will catch any wild\\nPokémon without fail.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best BALL with the ultimate\\nperformance. It will catch any wild\\nPOKéMON without fail.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best BALL that\\ncatches a POKéMON\\nwithout fail.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"The best BALL that\\ncatches a POKéMON\\nwithout fail.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":1,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":1,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":1,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":1,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":1,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":1,\"machines\":[],\"name\":\"master-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"大师球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"マスターボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Master Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Master Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Master Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Meisterball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Master Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"大師球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"마스터볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"マスターボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/master-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"cea5fd18-11bc-4eb8-a8e9-1f1815519b33","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"standard-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/34/\"},\"cost\":600,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon, using a catch rate of 1.5×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Success rate is 1.5×.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"比起精灵球来\\n更容易捉到宝可梦的,\\n性能还算不错的球。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"モンスターボールよりも さらに\\nポケモンを 捕まえやすくなった\\n少し 性能のいい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good, high-performance Poké Ball that provides\\na higher Pokémon catch rate than a standard\\nPoké Ball.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball dalle ottime prestazioni: fornisce\\nmaggiori probabilità di cattura rispetto alla\\nnormale Poké Ball.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball de alto rendimiento. Tiene un índice de\\néxito superior al de la Poké Ball.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball mit guter Erfolgsquote. Dem Pokéball in\\nallen Punkten überlegen.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Ball très performante dont le taux de réussite\\nest supérieur à celui de la Poké Ball.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"性能還算不錯的球。\\n比起精靈球\\n更容易捉到寶可夢。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"몬스터볼보다도 더욱\\n포켓몬을 잡기 쉬워진\\n약간 성능이 좋은 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"モンスターボールよりも さらに\\nポケモンを つかまえやすくなった\\nすこし せいのうのいい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"比起精灵球来\\n更容易捉到宝可梦的,\\n性能还算不错的球。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"モンスターボールよりも さらに\\nポケモンを 捕まえやすくなった\\n少し 性能のいい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good, high-performance Poké Ball that provides\\na higher Pokémon catch rate than a standard\\nPoké Ball.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball dalle ottime prestazioni: fornisce\\nmaggiori probabilità di cattura rispetto alla\\nnormale Poké Ball.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball de alto rendimiento. Tiene un índice de\\néxito superior al de la Poké Ball.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball mit guter Erfolgsquote. Dem Pokéball in\\nallen Punkten überlegen.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Ball très performante dont le taux de réussite\\nest supérieur à celui de la Poké Ball.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"性能還算不錯的球。\\n比起精靈球\\n更容易捉到寶可夢。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"몬스터볼보다도 더욱\\n포켓몬을 잡기 쉬워진\\n약간 성능이 좋은 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"モンスターボールよりも さらに\\nポケモンを つかまえやすくなった\\nすこし せいのうのいい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"モンスターボールよりも さらに\\nポケモンを 捕まえやすくなった\\n少し 性能のいい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good, high-performance Poké Ball\\nthat provides a higher Pokémon catch\\nrate than a standard Poké Ball can.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball dalle ottime prestazioni:\\nfornisce maggiori probabilità di cattura rispetto\\nalla normale Poké Ball.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball de alto rendimiento. Tiene un índice de\\néxito superior al de la Poké Ball.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball mit guter Erfolgsquote. Dem Pokéball in\\nallen Punkten überlegen.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Ball très performante dont le taux de\\nréussite est supérieur à celui de la Poké Ball.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"몬스터볼보다도 더욱\\n포켓몬을 잡기 쉬워진\\n약간 성능이 좋은 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"モンスターボールよりも さらに\\nポケモンを つかまえやすくなった\\nすこし せいのうのいい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good, high-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a standard Poké Ball.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good, high-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a standard Poké Ball.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Ball très performante dont le taux\\nde réussite est supérieur à celui de la\\nPoké Ball.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good, high-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a standard Poké Ball.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good, high-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a standard Poké Ball.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good, high-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a standard Poké Ball.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good, quality BALL that offers\\na higher POKéMON catch rate than\\na standard POKé BALL.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good BALL with a\\nhigher catch rate\\nthan a POKé BALL.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A good BALL with a\\nhigher catch rate\\nthan a POKé BALL.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":3,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":3,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":3,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":3,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":3,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":3,\"machines\":[],\"name\":\"great-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"超级球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"スーパーボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Great Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Mega Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Super Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Superball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Super Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"超級球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"수퍼볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"スーパーボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/great-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"103f5000-4d99-4146-b179-b05c4a981eea","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":1000,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon. If the wild Pokémon's species is marked as caught in the trainer's Pokédex, this ball has a catch rate of 3×. Otherwise, it has a catch rate of 1×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Success rate is 3× for previously-caught Pokémon.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n能很容易地捕捉\\n以前曾捉到过的宝可梦。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえたことの ある\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that works\\nespecially well on a Pokémon species that has been\\ncaught before.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sulle specie di Pokémon già catturate\\nin precedenza.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con las especies de Pokémon\\nque ya has capturado.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der sich besonders dann sehr gut eignet,\\nwenn man ein Pokémon fangen will, dessen Art\\nbereits gefangen wurde.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les espèces de\\nPokémon déjà capturées.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n曾經捉到過的寶可夢\\n會變得容易捉到。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡은 적이 있는\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえたことの ある\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n能很容易地捕捉\\n以前曾捉到过的宝可梦。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえたことの ある\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that works\\nespecially well on a Pokémon species that has been\\ncaught before.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sulle specie di Pokémon già catturate\\nin precedenza.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con las especies de Pokémon\\nque ya has capturado.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der sich besonders dann sehr gut eignet,\\nwenn man ein Pokémon fangen will, dessen Art\\nbereits gefangen wurde.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les espèces de\\nPokémon déjà capturées.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n曾經捉到過的寶可夢\\n會變得容易捉到。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡은 적이 있는\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえたことの ある\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえたことの ある\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on a Pokémon\\nspecies that has been caught before.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sulle specie di Pokémon già catturate\\nin precedenza.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con las especies de Pokémon\\nque ya has capturado.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der sich besonders dann sehr gut eignet,\\nwenn man ein Pokémon fangen will, dessen Art\\nbereits gefangen wurde.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les espèces de\\nPokémon déjà capturées.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡은 적이 있는\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえたことの ある\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon\\nspecies that were previously caught.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon\\nspecies that were previously caught.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui\\nfonctionne particulièrement bien sur\\nles espèces de Pokémon déjà capturées.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon\\nspecies that were previously caught.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon\\nspecies that were previously caught.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon\\nspecies that were previously caught.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different BALL that\\nworks especially well on POKéMON\\ncaught before.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL that works\\nbetter on POKéMON\\ncaught before.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL that works\\nbetter on POKéMON\\ncaught before.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":9,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":9,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":9,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":9,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":9,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":9,\"machines\":[],\"name\":\"repeat-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"重复球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"リピートボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Repeat Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Bis Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Acopio Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Wiederball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Bis Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"重複球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"리피드볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"リピートボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/repeat-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"7ed81afb-00be-4558-baaf-0be38614412b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":1000,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon. Has a catch rate of 1.1× on the first turn of the battle and increases by 0.1× every turn, to a maximum of 4× on turn 30.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Success rate increases by 0.1× (Gen V: 0.3×) every turn, to a max of 4×.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n回合数花费得越多,\\n宝可梦就会越容易捕捉。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"ターン数が かかれば かかるほど\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that becomes\\nprogressively more effective the more turns that\\nare taken in battle.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa che diventa\\nprogressivamente più efficace con il passare\\ndei turni nella lotta.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Una Poké Ball algo distinta que va mejorando su\\nrendimiento con cada turno de combate.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der mit zunehmender Kampfdauer\\neffektiver wird.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nde mieux en mieux à mesure que le combat\\ns’éternise.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n回合數花費得越多,\\n就越容易捉到寶可夢。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"턴 수가 길어지면 길어질수록\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"ターンすうが かかれば かかるほど\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n回合数花费得越多,\\n宝可梦就会越容易捕捉。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"ターン数が かかれば かかるほど\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that becomes\\nprogressively more effective the more turns that\\nare taken in battle.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa che diventa\\nprogressivamente più efficace con il passare\\ndei turni nella lotta.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Una Poké Ball algo distinta que va mejorando su\\nrendimiento con cada turno de combate.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der mit zunehmender Kampfdauer\\neffektiver wird.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nde mieux en mieux à mesure que le combat\\ns’éternise.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n回合數花費得越多,\\n就越容易捉到寶可夢。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"턴 수가 길어지면 길어질수록\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"ターンすうが かかれば かかるほど\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"ターン数が かかれば かかるほど\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nbecomes progressively more effective\\nthe more turns that are taken in battle.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa che diventa\\nprogressivamente più efficace con l’aumentare\\ndei turni in lotta.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Una Poké Ball algo distinta que va mejorando\\nsu rendimiento con cada turno de combate.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der mit zunehmender Kampfdauer\\neffektiver wird.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nde mieux en mieux à mesure que le combat\\ns’éternise.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"턴 수가 길어지면 길어질수록\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"ターンすうが かかれば かかるほど\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Ball that\\nbecomes progressively better the\\nmore turns there are in a battle.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Ball that\\nbecomes progressively better the\\nmore turns there are in a battle.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui\\nfonctionne de mieux en mieux à\\nmesure que le combat s’éternise.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Ball that\\nbecomes progressively better the\\nmore turns there are in a battle.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Ball that\\nbecomes progressively better the\\nmore turns there are in a battle.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Ball that\\nbecomes progressively better the\\nmore turns there are in a battle.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different BALL that\\nbecomes progressively better the\\nmore turns there are in a battle.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL that gains\\npower in battles\\ntaking many turns.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"More effective as\\nmore turns are\\ntaken in battle.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":10,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":10,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":10,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":10,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":10,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":10,\"machines\":[],\"name\":\"timer-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"计时球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"タイマーボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Timer Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Timer Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Turno Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Timerball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Chrono Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"計時球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"타이마볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"タイマーボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/timer-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"5fe7951a-c1e1-4e8e-ae46-151528d54b40","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":1000,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon. If the wild Pokémon was encountered by surfing or fishing, this ball has a catch rate of 3.5×. Otherwise, it has a catch rate of 1×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Success rate is 3.5× when underwater, fishing, or surfing.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n能很容易地捕捉\\n生活在水世界里的宝可梦。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"水の 世界で 暮らしている\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that works\\nespecially well when catching Pokémon that\\nlive underwater.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sui Pokémon che vivono in acqua.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con los Pokémon que viven\\nbajo el agua.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, mit dem sich Pokémon, die im Wasser leben,\\nbesser fangen lassen.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les Pokémon\\nsous-marins.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n能更容易地捉到\\n生活在水中世界的寶可夢。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"물의 세계에서 사는\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"みずの せかいで くらしている\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n能很容易地捕捉\\n生活在水世界里的宝可梦。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"水の 世界で 暮らしている\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that works\\nespecially well when catching Pokémon that\\nlive underwater.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sui Pokémon che vivono in acqua.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con los Pokémon que viven\\nbajo el agua.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, mit dem sich Pokémon, die im Wasser leben,\\nbesser fangen lassen.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les Pokémon\\nsous-marins.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n能更容易地捉到\\n生活在水中世界的寶可夢。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"물의 세계에서 사는\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"みずの せかいで くらしている\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"水の 世界で 暮らしている\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well when catching\\nPokémon that live underwater.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sui Pokémon che vivono in acqua.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con los Pokémon que viven\\nbajo el agua.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, mit dem sich Pokémon, die im Wasser\\nleben, besser fangen lassen.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les Pokémon\\nsous-marins.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"물의 세계에서 사는\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"みずの せかいで くらしている\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon that\\nlive underwater.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon that\\nlive underwater.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui\\nfonctionne particulièrement bien\\nsur les Pokémon sous-marins.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon that\\nlive in the sea.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon that\\nlive in the sea.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Pokémon that\\nlive in the sea.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different BALL that\\nworks especially well on POKéMON\\ndeep in the sea.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL that works\\nbetter on POKéMON\\non the ocean floor.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL that works\\nbetter on POKéMON\\non the ocean floor.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":7,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":7,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":7,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":7,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":7,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":7,\"machines\":[],\"name\":\"dive-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"潜水球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ダイブボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Dive Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Sub Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Buceo Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Tauchball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Scuba Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"潛水球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"다이브볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ダイブボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/dive-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"4411ed6d-f693-42de-a59f-f99a39da13bc","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":1000,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon. Has a catch rate of given by `(40 - level) / 10`, where `level` is the wild Pokémon's level, to a maximum of 3.9× for level 1 Pokémon. If the wild Pokémon's level is higher than 30, this ball has a catch rate of 1×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Success rate is 3.9× for level 1 Pokémon, and drops steadily to 1× at level 30.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n捕捉的野生宝可梦越弱,\\n就会越容易捕捉。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえる 野生の ポケモンが\\n弱いほど 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that becomes more\\neffective the lower the level of the wild Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sui Pokémon selvatici più deboli.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con los Pokémon salvajes\\nde nivel bajo.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, dessen Erfolgsquote besonders bei\\nPokémon mit niedrigem Level sehr hoch ist.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les Pokémon les plus\\nfaibles.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n捕捉的野生寶可夢越弱,\\n就越容易捉到。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡으려는 야생 포켓몬이\\n약할수록 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえる やせいの ポケモンが\\nよわいほど つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n捕捉的野生宝可梦越弱,\\n就会越容易捕捉。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえる 野生の ポケモンが\\n弱いほど 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that becomes more\\neffective the lower the level of the wild Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sui Pokémon selvatici più deboli.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con los Pokémon salvajes\\nde nivel bajo.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, dessen Erfolgsquote besonders bei\\nPokémon mit niedrigem Level sehr hoch ist.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les Pokémon les plus\\nfaibles.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n捕捉的野生寶可夢越弱,\\n就越容易捉到。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡으려는 야생 포켓몬이\\n약할수록 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえる やせいの ポケモンが\\nよわいほど つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえる 野生の ポケモンが\\n弱いほど 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nbecomes more effective the lower\\nthe level of the wild Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sui Pokémon selvatici più deboli.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con los Pokémon salvajes\\nde nivel bajo.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, dessen Erfolgsquote besonders bei\\nPokémon mit niedrigem Level sehr hoch ist.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les Pokémon les plus\\nfaibles.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡으려는 야생 포켓몬이\\n약할수록 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえる やせいの ポケモンが\\nよわいほど つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on weaker\\nPokémon in the wild.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on weaker\\nPokémon in the wild.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui\\nfonctionne particulièrement bien\\nsur les Pokémon les plus faibles.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on weaker\\nPokémon in the wild.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on weaker\\nPokémon in the wild.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on weaker\\nPokémon in the wild.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different BALL that\\nworks especially well on weaker\\nPOKéMON.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL that works\\nbetter on weaker\\nPOKéMON.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL that works\\nbetter on weaker\\nPOKéMON.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":8,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":8,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":8,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":8,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":8,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":8,\"machines\":[],\"name\":\"nest-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"巢穴球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ネストボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Nest Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Minor Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Nido Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Nestball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Faiblo Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"巢穴球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"네스트볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ネストボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/nest-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"f76f7943-9b34-4c4a-acca-94be7f495ec0","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":20,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon, using a catch rate of 1×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点珍贵的球。\\n特制出来的某种纪念品。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"なにかの 記念の 品として\\n特別に つくられた\\nちょっと 珍しい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat rare Poké Ball that was made as a\\ncommemorative item used to celebrate an event of\\nsome sort.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball poco comune realizzata appositamente\\nper commemorare un particolare evento.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es una Poké Ball algo singular que se creó para\\nconmemorar algún acontecimiento.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein eher seltener Ball, der als Reminiszenz an\\nirgendein Ereignis hergestellt wurde.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball assez rare qui fut créée pour\\nun événement particulier.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"作為某種紀念品\\n而特別製造的,\\n有點稀奇的球。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"무언가의 기념품으로\\n특별히 만들어진\\n조금 희귀한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"なにかの きねんの しなとして\\nとくべつに つくられた\\nちょっと めずらしい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点珍贵的球。\\n特制出来的某种纪念品。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"なにかの 記念の 品として\\n特別に つくられた\\nちょっと 珍しい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat rare Poké Ball that was made as a\\ncommemorative item used to celebrate an event of\\nsome sort.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball poco comune realizzata appositamente\\nper commemorare un particolare evento.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es una Poké Ball algo singular que se creó para\\nconmemorar algún acontecimiento.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein eher seltener Ball, der als Reminiszenz an\\nirgendein Ereignis hergestellt wurde.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball assez rare qui fut créée pour\\nun événement particulier.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"作為某種紀念品\\n而特別製造的,\\n有點稀奇的球。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"무언가의 기념품으로\\n특별히 만들어진\\n조금 희귀한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"なにかの きねんの しなとして\\nとくべつに つくられた\\nちょっと めずらしい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"なにかの 記念の 品として\\n特別に つくられた\\nちょっと 珍しい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat rare Poké Ball that was\\nmade as a commemorative item used\\nto celebrate an event of some sort.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball poco comune realizzata appositamente\\nper commemorare un particolare evento.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es una Poké Ball algo singular que se creó para\\nconmemorar algún acontecimiento.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein eher seltener Ball, der als Reminiszenz\\nan irgendein Ereignis hergestellt wurde.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball assez rare qui fut créée pour\\nun événement particulier.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"무언가의 기념품으로\\n특별히 만들어진\\n조금 희귀한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"なにかの きねんの しなとして\\nとくべつに つくられた\\nちょっと めずらしい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat rare Poké Ball that has\\nbeen specially made to commemorate\\nan event of some sort.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat rare Poké Ball that has\\nbeen specially made to commemorate\\nan event of some sort.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball assez rare qui fut créée\\npour un événement particulier.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat rare Poké Ball that has\\nbeen specially made to commemorate\\nan event of some sort.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat rare Poké Ball that has\\nbeen specially made to commemorate\\nan event of some sort.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat rare Poké Ball that has\\nbeen specially made to commemorate\\nan event of some sort.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A rare BALL that has been\\nspecially made to commemorate an\\nevent of some sort.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A rare BALL made\\nin commemoration\\nof some event.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A rare BALL made\\nin commemoration\\nof some event.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":12,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":12,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":12,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":12,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":12,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":12,\"machines\":[],\"name\":\"premier-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"纪念球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"プレミアボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Premier Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Premier Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Honor Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Premierball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Honor Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"紀念球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"프레미어볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"プレミアボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/premier-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"1d542346-a42b-47b0-a346-53fcad7db034","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,192,26,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,168,26,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,143,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,254,1,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":1000,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon. If it's currently nighttime or the wild Pokémon was encountered while walking in a cave, this ball has a catch rate of 3.5×. Otherwise, it has a catch rate of 1×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Success rate is 3.5× at night and in caves.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n能很容易地在夜晚或洞窟等\\n阴暗的地方捕捉宝可梦。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"夜や どうくつなど 暗いところで\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that makes it\\neasier to catch wild Pokémon at night or in dark\\nplaces like caves.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa che rende più facile\\ncatturare Pokémon selvatici di notte o in luoghi\\nbui come le grotte.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo particular. Hace que sea más fácil capturar\\na los Pokémon salvajes por la noche o en lugares\\noscuros.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein mysteriöser Ball, geeignet für Einsätze in der\\nNacht oder an dunklen Orten.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball efficace de nuit ou dans les\\nendroits sombres, tels que les grottes.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n容易在夜晚或洞窟等陰暗的地方\\n捉到寶可夢。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"밤이나 동굴 등 어두운 곳에서\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"よるや どうくつなど くらいところで\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n能很容易地在夜晚或洞窟等\\n阴暗的地方捕捉宝可梦。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"夜や どうくつなど 暗いところで\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that makes it\\neasier to catch wild Pokémon at night or in dark\\nplaces like caves.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa che rende più facile\\ncatturare Pokémon selvatici di notte o in luoghi\\nbui come le grotte.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo particular. Hace que sea más fácil capturar\\na los Pokémon salvajes por la noche o en lugares\\noscuros.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein mysteriöser Ball, geeignet für Einsätze in der\\nNacht oder an dunklen Orten.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball efficace de nuit ou dans les\\nendroits sombres, tels que les grottes.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n容易在夜晚或洞窟等陰暗的地方\\n捉到寶可夢。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"밤이나 동굴 등 어두운 곳에서\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"よるや どうくつなど くらいところで\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"夜や どうくつなど 暗いところで\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nmakes it easier to catch wild Pokémon\\nat night or in dark places like caves.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa che rende più facile\\ncatturare Pokémon selvatici di notte o in luoghi\\nbui come le grotte.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo particular. Hace que sea más fácil\\ncapturar a los Pokémon salvajes por la noche\\no en lugares oscuros.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein mysteriöser Ball, geeignet für Einsätze in der\\nNacht oder an dunklen Orten.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball efficace de nuit ou dans les\\nendroits sombres, tels que les grottes.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"밤이나 동굴 등 어두운 곳에서\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"よるや どうくつなど くらいところで\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nmakes it easier to catch wild Pokémon\\nat night or in dark places like caves.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nmakes it easier to catch wild Pokémon\\nat night or in dark places like caves.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball efficace pour attraper\\nles Pokémon de nuit ou dans des\\nendroits sombres tels que les grottes.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nmakes it easier to catch wild Pokémon\\nat night or in dark places like caves.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nmakes it easier to catch wild Pokémon\\nat night or in dark places like caves.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nmakes it easier to catch wild Pokémon\\nat night or in dark places like caves.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":13,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":13,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":13,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":13,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}}],\"held_by_pokemon\":[],\"id\":13,\"machines\":[],\"name\":\"dusk-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"黑暗球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ダークボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Dusk Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Scuro Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Ocaso Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Finsterball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Sombre Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"黑暗球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"다크볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ダークボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/dusk-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"514df3ae-ebc9-4d96-baef-bc490cc69215","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":1000,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon, using a catch rate of 1×. Whenever the caught Pokémon's happiness increases, it increases by one extra point.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Caught Pokémon start with 200 happiness.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"住着十分惬意的球。\\n捉到的野生宝可梦会\\n变得容易和训练家亲密。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえた 野生ポケモンが\\nとても なつきやすくなる\\nいごこちの いい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A particularly comfortable Poké Ball that makes a\\nwild Pokémon quickly grow friendlier after\\nbeing caught.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball graziosa che rende più affezionati\\ni Pokémon selvatici catturati.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Acogedora Poké Ball que hace más amistosos a los\\nPokémon salvajes capturados.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein behaglicher Ball, der Pokémon veranlasst,\\nsich nach dem Fang schneller mit dem Trainer\\nanzufreunden.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball pratique qui permet de gagner\\nrapidement l’amitié d’un Pokémon sauvage\\nattrapé.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"住起來十分舒適的球。\\n捉到的野生寶可夢會\\n很容易和訓練家變得親密。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡은 야생 포켓몬이\\n매우 친밀해지기 쉬운\\n편안한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえた やせいポケモンが\\nとても なつきやすくなる\\nいごこちの いい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"住着十分惬意的球。\\n捉到的野生宝可梦会\\n变得容易和训练家亲密。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえた 野生ポケモンが\\nとても なつきやすくなる\\nいごこちの いい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A particularly comfortable Poké Ball that makes a\\nwild Pokémon quickly grow friendlier after\\nbeing caught.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball graziosa che rende più affezionati\\ni Pokémon selvatici catturati.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Acogedora Poké Ball que hace más amistosos a los\\nPokémon salvajes capturados.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein behaglicher Ball, der Pokémon veranlasst,\\nsich nach dem Fang schneller mit dem Trainer\\nanzufreunden.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball pratique qui permet de gagner\\nrapidement l’amitié d’un Pokémon sauvage\\nattrapé.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"住起來十分舒適的球。\\n捉到的野生寶可夢會\\n很容易和訓練家變得親密。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡은 야생 포켓몬이\\n매우 친밀해지기 쉬운\\n편안한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえた やせいポケモンが\\nとても なつきやすくなる\\nいごこちの いい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえた 野生ポケモンが\\nとても なつきやすくなる\\nいごこちの いい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A particularly comfortable Poké Ball\\nthat makes a wild Pokémon quickly\\ngrow friendlier after being caught.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball graziosa che rende più amichevoli\\ni Pokémon selvatici catturati.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Acogedora Poké Ball que hace más amistosos a\\nlos Pokémon salvajes capturados.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein behaglicher Ball, der Pokémon veranlasst,\\nnach dem Fang schneller freundlicher zu werden.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball pratique qui permet de gagner\\nrapidement l’amitié d’un Pokémon sauvage\\nattrapé.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡은 야생 포켓몬이\\n매우 친밀해지기 쉬운\\n편안한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえた やせいポケモンが\\nとても なつきやすくなる\\nいごこちの いい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A comfortable Poké Ball that makes a\\ncaught wild Pokémon quickly grow\\nfriendly.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A comfortable Poké Ball that makes a\\ncaught wild Pokémon quickly grow\\nfriendly.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball pratique qui permet\\nde gagner rapidement l’amitié d’un\\nPokémon sauvage attrapé.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A comfortable Poké Ball that makes a\\ncaught wild Pokémon quickly grow\\nfriendly.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A comfortable Poké Ball that makes a\\ncaught wild Pokémon quickly grow\\nfriendly.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A comfortable Poké Ball that makes a\\ncaught wild Pokémon quickly grow\\nfriendly.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A comfortable BALL that makes a\\ncaptured wild POKéMON quickly grow\\nfriendly.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A cozy BALL that\\nmakes POKéMON\\nmore friendly.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A cozy BALL that\\nmakes POKéMON\\nmore friendly.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":11,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":11,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":11,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":11,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":11,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":11,\"machines\":[],\"name\":\"luxury-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"豪华球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ゴージャスボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Luxury Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Chic Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Lujo Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Luxusball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Luxe Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"豪華球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"럭셔리볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ゴージャスボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/luxury-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"625ae488-885d-458b-b749-cf8de7e450fc","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/16/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,192,26,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,168,26,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,143,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,254,1,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":0,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon, using a catch rate of 1×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"相当珍贵的球。\\n特制出来的某种纪念品。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"なにかの 記念の 品として\\n特別に つくられた\\nかなり 珍しい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A quite rare Poké Ball that has been crafted in\\norder to commemorate a special occasion of\\nsome sort.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball molto esclusiva creata per commemorare\\nun evento speciale.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es una Poké Ball bastante singular que se creó\\npara conmemorar alguna ocasión especial.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein seltener Ball, der als Reminiszenz an irgendein\\nEreignis hergestellt wurde.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball plutôt rare qui fut créée pour\\nune occasion spéciale.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"作為某種紀念品\\n而特別製造的,\\n頗稀奇的球。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"무언가의 기념품으로\\n특별히 만들어진\\n상당히 진귀한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"なにかの きねんの しなとして\\nとくべつに つくられた\\nかなり めずらしい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"相当珍贵的球。\\n特制出来的某种纪念品。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"なにかの 記念の 品として\\n特別に つくられた\\nかなり 珍しい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A quite rare Poké Ball that has been crafted in\\norder to commemorate a special occasion of\\nsome sort.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball molto esclusiva creata per commemorare\\nun evento speciale.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es una Poké Ball bastante singular que se creó\\npara conmemorar alguna ocasión especial.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein seltener Ball, der als Reminiszenz an irgendein\\nEreignis hergestellt wurde.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball plutôt rare qui fut créée pour\\nune occasion spéciale.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"作為某種紀念品\\n而特別製造的,\\n頗稀奇的球。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"무언가의 기념품으로\\n특별히 만들어진\\n상당히 진귀한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"なにかの きねんの しなとして\\nとくべつに つくられた\\nかなり めずらしい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"なにかの 記念の 品として\\n特別に つくられた\\nかなり 珍しい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A quite rare Poké Ball that has been\\ncrafted in order to commemorate\\na special occasion of some sort.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball molto esclusiva creata per\\ncommemorare un evento speciale.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es una Poké Ball bastante singular que se creó\\npara conmemorar alguna ocasión especial.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein seltener Ball, der als Reminiszenz an irgendein\\nEreignis hergestellt wurde.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball plutôt rare qui fut créée pour\\nune occasion spéciale.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"무언가의 기념품으로\\n특별히 만들어진\\n상당히 진귀한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"なにかの きねんの しなとして\\nとくべつに つくられた\\nかなり めずらしい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A quite rare Poké Ball that has been\\nspecially crafted to commemorate\\nan occasion of some sort.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A quite rare Poké Ball that has been\\nspecially crafted to commemorate\\nan occasion of some sort.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball plutôt rare qui fut créée\\npour une occasion spéciale.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A quite rare Poké Ball that has been\\nspecially crafted to commemorate\\nan occasion of some sort.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A quite rare Poké Ball that has been\\nspecially crafted to commemorate\\nan occasion of some sort.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A quite rare Poké Ball that has been\\nspecially crafted to commemorate\\nan occasion of some sort.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":16,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":16,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":16,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":16,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}}],\"held_by_pokemon\":[],\"id\":16,\"machines\":[],\"name\":\"cherish-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"贵重球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"プレシャスボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Cherish Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Pregio Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Gloria Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Jubelball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Mémoire Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"貴重球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"프레셔스볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"プレシャスボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/cherish-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"9df3716b-4a16-4874-bf48-8444568a5bb0","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,192,26,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,168,26,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,143,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,254,1,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":300,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon, using a catch rate of 1×. The caught Pokémon's HP is immediately restored, PP for all its moves is restored, and any status ailment is cured.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Caught Pokémon are immediately healed.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点温柔的球。\\n能回复捉到的宝可梦的\\nHP并治愈异常状态。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえた ポケモンの HPと\\n状態異常を 回復する\\nちょっと やさしい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A remedial Poké Ball that restores the HP of a\\nPokémon caught with it and eliminates any\\nstatus conditions.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball curativa che ridà PS al Pokémon\\ncatturato e cura tutti i problemi di stato.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball curativa que restaura los PS y cura todos\\nlos problemas de estado de un Pokémon después\\nde capturarlo.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein wohltuender Ball. Er füllt alle KP des gefangenen\\nPokémon auf und behebt alle Statusprobleme.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball de soin qui rend tous ses PV\\nau Pokémon attrapé et qui soigne tous ses\\nchangements de statut.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點溫柔的球。\\n能回復捉到的寶可夢的\\nHP並治癒異常狀態。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡은 포켓몬의 HP와\\n상태 이상을 회복시키는\\n조금 다정한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえた ポケモンの HPと\\nじょうたい いじょうを かいふくする\\nちょっと やさしい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点温柔的球。\\n能回复捉到的宝可梦的\\nHP并治愈异常状态。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえた ポケモンの HPと\\n状態異常を 回復する\\nちょっと やさしい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A remedial Poké Ball that restores the HP of a\\nPokémon caught with it and eliminates any\\nstatus conditions.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball curativa che ridà PS al Pokémon\\ncatturato e cura tutti i problemi di stato.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball curativa que restaura los PS y cura todos\\nlos problemas de estado de un Pokémon después\\nde capturarlo.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein wohltuender Ball. Er füllt alle KP des gefangenen\\nPokémon auf und behebt alle Statusprobleme.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball de soin qui rend tous ses PV\\nau Pokémon attrapé et qui soigne tous ses\\nchangements de statut.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點溫柔的球。\\n能回復捉到的寶可夢的\\nHP並治癒異常狀態。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡은 포켓몬의 HP와\\n상태 이상을 회복시키는\\n조금 다정한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえた ポケモンの HPと\\nじょうたい いじょうを かいふくする\\nちょっと やさしい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"捕まえた ポケモンの HPと\\n状態異常を 回復する\\nちょっと やさしい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A remedial Poké Ball that restores\\nthe HP of a Pokémon caught with it\\nand eliminates any status conditions.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball curativa che ridà PS al Pokémon\\ncatturato e cura tutti i problemi di stato.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball curativa que restaura los PS y cura\\ntodos los problemas de estado de un Pokémon\\ndespués de capturarlo.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein wohltuender Ball. Er füllt alle KP des\\ngefangenen Pokémon auf und behebt alle\\nStatusprobleme.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball de soin qui rend tous les PV\\ndu Pokémon attrapé et qui soigne tous les\\nchangements de statut.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"잡은 포켓몬의 HP와\\n상태 이상을 회복시키는\\n조금 다정한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"つかまえた ポケモンの HPと\\nじょうたい いじょうを かいふくする\\nちょっと やさしい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A remedial Poké Ball that restores the\\ncaught Pokémon’s HP and eliminates\\nany status problem.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A remedial Poké Ball that restores the\\ncaught Pokémon’s HP and eliminates\\nany status problem.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball de soin qui rend tous les\\nPV du Pokémon attrapé et qui soigne\\ntous les changements de statut.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A remedial Poké Ball that restores the\\ncaught Pokémon’s HP and eliminates\\nany status problem.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A remedial Poké Ball that restores the\\ncaught Pokémon’s HP and eliminates\\nany status problem.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A remedial Poké Ball that restores the\\ncaught Pokémon’s HP and eliminates\\nany status problem.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":14,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":14,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":14,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":14,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}}],\"held_by_pokemon\":[],\"id\":14,\"machines\":[],\"name\":\"heal-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"治愈球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ヒールボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Heal Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Cura Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Sana Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Heilball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Soin Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"治癒球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"힐볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ヒールボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/heal-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"d45313e0-17e3-43c0-b572-e6ca4cd13fe4","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"standard-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/34/\"},\"cost\":0,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon, using a catch rate of 1.5×.\\n\\nThis item can only be used in the great marsh or kanto safari zone.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon in the Great Marsh or Safari Zone. Success rate is 1.5×.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"仅能在大湿地中使用的特殊的球。\\n上面有迷彩花纹。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"大湿原の 中だけで\\n使う 特別な ボール。\\n迷彩柄に なっている。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special Poké Ball that is used only in the\\nGreat Marsh. It is recognizable by the camouflage\\npattern decorating it.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball speciale, usata soltanto nella Gran Palude.\\nÈ decorata con un motivo mimetico.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball con un diseño de camuflaje que se utiliza\\núnicamente en la Zona Safari.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der nur in Safari-Zonen eingesetzt wird.\\nEr besticht durch sein Tarnfarbenmuster.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball spéciale dont l’usage est réservé\\nau Parc Safari. Elle est décorée d’un motif\\ncamouflage.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"僅能在大濕地中\\n使用的特殊的球。\\n上面有迷彩花紋。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"대습초원 안에서만\\n쓰는 특별한 볼.\\n얼룩무늬로 되어 있다.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"だいしつげんの なか だけで\\nつかう とくべつな ボール。\\nめいさいがらに なっている。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"仅能在大湿地中使用的特殊的球。\\n上面有迷彩花纹。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"大湿原の 中だけで\\n使う 特別な ボール。\\n迷彩柄に なっている。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special Poké Ball that is used only in the\\nGreat Marsh. It is recognizable by the camouflage\\npattern decorating it.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball speciale, usata soltanto nella Gran Palude.\\nÈ decorata con un motivo mimetico.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball con un diseño de camuflaje que se utiliza\\núnicamente en la Zona Safari.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der nur in Safari-Zonen eingesetzt wird.\\nEr besticht durch sein Tarnfarbenmuster.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball spéciale dont l’usage est réservé\\nau Parc Safari. Elle est décorée d’un motif\\ncamouflage.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"僅能在大濕地中\\n使用的特殊的球。\\n上面有迷彩花紋。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"대습초원 안에서만\\n쓰는 특별한 볼.\\n얼룩무늬로 되어 있다.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"だいしつげんの なか だけで\\nつかう とくべつな ボール。\\nめいさいがらに なっている。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"大湿原の 中だけで\\n使う 特別な ボール。\\n迷彩柄に なっている。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special Poké Ball that is used only in\\nthe Great Marsh. It is recognizable by\\nthe camouflage pattern decorating it.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball speciale, usata soltanto nella\\nGran Palude. È decorata con un motivo mimetico.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball con un diseño de camuflaje que se\\nutiliza únicamente en el Gran Pantano.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der nur in Safari-Zonen eingesetzt wird.\\nEr besticht durch sein Tarnfarbenmuster.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball spéciale dont l’usage est réservé\\nau Parc Safari. Elle est décorée d’un motif\\ncamouflage.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"대습초원 안에서만\\n쓰는 특별한 볼.\\n얼룩무늬로 되어 있다.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"だいしつげんの なか だけで\\nつかう とくべつな ボール。\\nめいさいがらに なっている。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special Poké Ball that is used only in\\nthe Great Marsh. It is decorated in a\\ncamouflage pattern.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special Poké Ball that is used only in\\nthe Great Marsh. It is decorated in a\\ncamouflage pattern.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball spéciale dont l’usage\\nest réservé au Parc Safari. Elle est\\ndécorée d’un motif camouflage.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special Poké Ball that is used only in\\nthe Great Marsh. It is decorated in a\\ncamouflage pattern.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special Poké Ball that is used only in\\nthe Great Marsh. It is decorated in a\\ncamouflage pattern.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special Poké Ball that is used only in\\nthe Great Marsh. It is decorated in a\\ncamouflage pattern.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special BALL that is used only in\\nthe SAFARI ZONE. It is finished in\\na camouflage pattern.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special BALL that\\nis used only in the\\nSAFARI ZONE.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A special BALL that\\nis used only in the\\nSAFARI ZONE.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":5,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":5,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":5,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":5,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":5,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":5,\"machines\":[],\"name\":\"safari-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"狩猎球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"サファリボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Safari Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Safari Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Safari Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Safariball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Safari Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"狩獵球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"사파리볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"サファリボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/safari-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"ea1ca7e8-b70e-4790-802f-6a2d646b7257","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"standard-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/34/\"},\"cost\":800,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon, using a catch rate of 2×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Success rate is 2×.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"比起超级球来\\n更容易捉到宝可梦的,\\n性能非常不错的球。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スーパーボールよりも さらに\\nポケモンを 捕まえやすくなった\\nすごく 性能のいい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"An ultra-high-performance Poké Ball that provides\\na higher success rate for catching Pokémon than\\na Great Ball.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball dalle prestazioni eccellenti: fornisce\\nmaggiori probabilità di cattura rispetto alla\\nMega Ball.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball de rendimiento superior. Tiene un índice\\nde éxito mayor al de la Super Ball.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball mit hoher Erfolgsquote. Dem Superball in\\nallen Punkten überlegen.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Ball très performante dont le taux de réussite\\nest supérieur à celui de la Super Ball.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"性能非常不錯的球。\\n比起超級球\\n更容易捉到寶可夢。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"수퍼볼보다도 더욱\\n포켓몬을 잡기 쉬워진\\n매우 성능이 좋은 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スーパーボールよりも さらに\\nポケモンを つかまえやすくなった\\nすごく せいのうのいい ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"比起超级球来\\n更容易捉到宝可梦的,\\n性能非常不错的球。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スーパーボールよりも さらに\\nポケモンを 捕まえやすくなった\\nすごく 性能のいい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"An ultra-high-performance Poké Ball that provides\\na higher success rate for catching Pokémon than\\na Great Ball.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball dalle prestazioni eccellenti: fornisce\\nmaggiori probabilità di cattura rispetto alla\\nMega Ball.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball de rendimiento superior. Tiene un índice\\nde éxito mayor al de la Super Ball.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball mit hoher Erfolgsquote. Dem Superball in\\nallen Punkten überlegen.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Ball très performante dont le taux de réussite\\nest supérieur à celui de la Super Ball.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"性能非常不錯的球。\\n比起超級球\\n更容易捉到寶可夢。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"수퍼볼보다도 더욱\\n포켓몬을 잡기 쉬워진\\n매우 성능이 좋은 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スーパーボールよりも さらに\\nポケモンを つかまえやすくなった\\nすごく せいのうのいい ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スーパーボールよりも さらに\\nポケモンを 捕まえやすくなった\\nすごく 性能のいい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"An ultra-high-performance Poké Ball\\nthat provides a higher success rate for\\ncatching Pokémon than a Great Ball.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball dalle prestazioni eccellenti:\\nfornisce maggiori probabilità di cattura rispetto\\nalla Mega Ball.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Poké Ball de rendimiento superior. Tiene un\\níndice de éxito mayor al de la Super Ball.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball mit hoher Erfolgsquote. Dem Superball in\\nallen Punkten überlegen.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Ball ultraperformante dont le taux de\\nréussite est supérieur à celui de la Super Ball.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"수퍼볼보다도 더욱\\n포켓몬을 잡기 쉬워진\\n매우 성능이 좋은 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スーパーボールよりも さらに\\nポケモンを つかまえやすくなった\\nすごく せいのうのいい ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"An ultra-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a Great Ball.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"An ultra-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a Great Ball.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Ball ultraperformante dont le taux\\nde réussite est supérieur à celui de la\\nSuper Ball.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"An ultra-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a Great Ball.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"An ultra-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a Great Ball.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"An ultra-performance Ball that\\nprovides a higher Pokémon catch rate\\nthan a Great Ball.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A very high-grade BALL that offers\\na higher POKéMON catch rate than\\na GREAT BALL.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A better BALL with\\na higher catch rate\\nthan a GREAT BALL.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A better BALL with\\na higher catch rate\\nthan a GREAT BALL.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":2,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":2,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":2,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":2,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":2,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":2,\"machines\":[],\"name\":\"ultra-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"高级球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ハイパーボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Ultra Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Ultra Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Ultra Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Hyperball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Hyper Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"高級球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"하이퍼볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ハイパーボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/ultra-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"f4bbfb31-bf2b-4503-bf75-441aa68f85ce","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":1000,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon. If the wild Pokémon is water- or bug-type, this ball has a catch rate of 3×. Otherwise, it has a catch rate of 1×.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Success rate is 3× for water and bug Pokémon.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n能很容易地捕捉\\n水属性和虫属性的宝可梦。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"みずタイプと むしタイプの\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that is more\\neffective when attempting to catch Water- or\\nBug-type Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sui Pokémon di tipo Acqua e Coleottero.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con los Pokémon de tipo\\nAgua y Bicho.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der sich besonders gut eignet, um Wasser-\\nund Käfer-Pokémon zu fangen.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les Pokémon Eau ou\\nInsecte.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n能更容易地捉到\\n水屬性和蟲屬性寶可夢。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"물타입과 벌레타입의\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"みずタイプと むしタイプの\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n能很容易地捕捉\\n水属性和虫属性的宝可梦。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"みずタイプと むしタイプの\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that is more\\neffective when attempting to catch Water- or\\nBug-type Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sui Pokémon di tipo Acqua e Coleottero.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con los Pokémon de tipo\\nAgua y Bicho.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der sich besonders gut eignet, um Wasser-\\nund Käfer-Pokémon zu fangen.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les Pokémon Eau ou\\nInsecte.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n能更容易地捉到\\n水屬性和蟲屬性寶可夢。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"물타입과 벌레타입의\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"みずタイプと むしタイプの\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"みずタイプと むしタイプの\\nポケモンが 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nis more effective when attempting\\nto catch Water- or Bug-type Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa. Risulta particolarmente\\nefficace sui Pokémon di tipo Acqua e Coleottero.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Es algo distinta a las demás. Funciona\\nespecialmente bien con los Pokémon de tipo\\nAgua y Bicho.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Ball, der sich besonders gut eignet,\\num Wasser- und Käfer-Pokémon zu fangen.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui fonctionne\\nparticulièrement bien sur les Pokémon Eau ou\\nInsecte.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"물타입과 벌레타입의\\n포켓몬을 잡기 쉬운\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"みずタイプと むしタイプの\\nポケモンが つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Water- and\\nBug-type Pokémon.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Water- and\\nBug-type Pokémon.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball un peu spéciale qui\\nfonctionne particulièrement bien\\nsur les Pokémon Eau ou Insecte.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Water- and\\nBug-type Pokémon.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Water- and\\nBug-type Pokémon.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nworks especially well on Water- and\\nBug-type Pokémon.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different BALL that\\nworks especially well on WATER- and\\nBUG-type POKéMON.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL that works\\nwell on WATER- and\\nBUG-type POKéMON.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A BALL that works\\nwell on WATER- and\\nBUG-type POKéMON.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":6,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":6,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":6,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":6,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":6,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":6,\"machines\":[],\"name\":\"net-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"捕网球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"ネットボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Net Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Rete Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Malla Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Netzball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Filet Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"捕網球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"넷트볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ネットボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/net-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"aade7903-cc7c-4a34-9f3d-47851d114c5e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/18/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,152,1,10,10,97,116,116,114,105,98,117,116,101,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,3,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"usable-overworld\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/3/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"status-cures\",\"url\":\"https://pokeapi.co/api/v2/item-category/30/\"},\"cost\":200,\"effect_entries\":[{\"effect\":\"Used on a party Pokémon\\n: Cures poison.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Cures poison.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"喷雾式药水。\\n能治愈1只宝可梦的\\n中毒状态。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の 薬。\\nポケモン 1匹の どくの\\n状態を 回復する。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for poisoning. It can be used\\nonce to lift the effects of being poisoned from\\na Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray.\\nCura un Pokémon dall’avvelenamento.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que contrarresta los efectos\\ndel veneno en un Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Spray, das Vergiftungen eines Pokémon heilt.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nGuérit un Pokémon empoisonné.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"噴霧式藥水。\\n能治癒1隻寶可夢的\\n中毒狀態。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 약.\\n포켓몬 1마리의\\n독 상태를 회복한다.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの くすり。\\nポケモン 1ひきの どくの\\nじょうたいを かいふくする。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"喷雾式药水。\\n能治愈1只宝可梦的\\n中毒状态。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の 薬。\\nポケモン 1匹の どくの\\n状態を 回復する。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for poisoning. It can be used\\nonce to lift the effects of being poisoned from\\na Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray.\\nCura un Pokémon dall’avvelenamento.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que contrarresta los efectos\\ndel veneno en un Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Spray, das Vergiftungen eines Pokémon heilt.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nGuérit un Pokémon empoisonné.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"噴霧式藥水。\\n能治癒1隻寶可夢的\\n中毒狀態。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 약.\\n포켓몬 1마리의\\n독 상태를 회복한다.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの くすり。\\nポケモン 1ひきの どくの\\nじょうたいを かいふくする。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の 薬。\\nポケモン 1匹の どくの\\n状態を 回復する。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for poisoning.\\nIt can be used once to lift the effects\\nof being poisoned from a Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray.\\nCura un Pokémon dall’avvelenamento.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que contrarresta los efectos\\ndel veneno en un Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Spray, das Vergiftungen eines Pokémon heilt.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nGuérit un Pokémon empoisonné.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 약.\\n포켓몬 1마리의\\n독 상태를 회복한다.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの くすり。\\nポケモン 1ひきの どくの\\nじょうたいを かいふくする。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt lifts the effect of poison from one\\nPokémon.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt lifts the effect of poison from one\\nPokémon.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nGuérit un Pokémon empoisonné.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt lifts the effect of poison from one\\nPokémon.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt lifts the effect of poison from one\\nPokémon.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt lifts the effect of poison from one\\nPokémon.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt heals one POKéMON from a\\npoisoning.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"Heals a poisoned\\nPOKéMON.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"Heals a poisoned\\nPOKéMON.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":30,\"game_indices\":[{\"game_index\":18,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":18,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":18,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":18,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":14,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":18,\"machines\":[],\"name\":\"antidote\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"解毒药\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"どくけし\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Antidote\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Antidoto\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Antídoto\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Gegengift\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Antidote\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"解毒藥\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"해독제\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"どくけし\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/antidote.png\"}}","asText":null}}},"tags":[]},{"uuid":"a53f3a6b-7568-4fd7-9ff5-fec550efdc3c","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/19/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,152,1,10,10,97,116,116,114,105,98,117,116,101,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,3,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"usable-overworld\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/3/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"status-cures\",\"url\":\"https://pokeapi.co/api/v2/item-category/30/\"},\"cost\":300,\"effect_entries\":[{\"effect\":\"Used on a party Pokémon\\n: Cures a burn.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Cures a burn.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"喷雾式药水。\\n能治愈1只宝可梦的\\n灼伤状态。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の 薬。\\nポケモン 1匹の やけどの\\n状態を 回復する。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for treating burns. It can be\\nused once to heal a Pokémon suffering from a burn.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray.\\nCura un Pokémon dalla scottatura.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que cura las quemaduras a\\nun Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Spray, das Verbrennungen eines Pokémon heilt.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nSoigne les brûlures d’un Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"噴霧式藥水。\\n能治癒1隻寶可夢的\\n灼傷狀態。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 약.\\n포켓몬 1마리의\\n화상 상태를 회복한다.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの くすり。\\nポケモン 1ひきの やけどの\\nじょうたいを かいふくする。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"喷雾式药水。\\n能治愈1只宝可梦的\\n灼伤状态。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の 薬。\\nポケモン 1匹の やけどの\\n状態を 回復する。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for treating burns. It can be\\nused once to heal a Pokémon suffering from a burn.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray.\\nCura un Pokémon dalla scottatura.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que cura las quemaduras a\\nun Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Spray, das Verbrennungen eines Pokémon heilt.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nSoigne les brûlures d’un Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"噴霧式藥水。\\n能治癒1隻寶可夢的\\n灼傷狀態。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 약.\\n포켓몬 1마리의\\n화상 상태를 회복한다.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの くすり。\\nポケモン 1ひきの やけどの\\nじょうたいを かいふくする。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の 薬。\\nポケモン 1匹の やけどの\\n状態を 回復する。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for treating\\nburns. It can be used once to heal\\na Pokémon suffering from a burn.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray.\\nCura un Pokémon dalla scottatura.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que cura las quemaduras a\\nun Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Spray, das Verbrennungen eines Pokémon\\nheilt.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nSoigne les brûlures d’un Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 약.\\n포켓몬 1마리의\\n화상 상태를 회복한다.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの くすり。\\nポケモン 1ひきの やけどの\\nじょうたいを かいふくする。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt heals a single Pokémon that is\\nsuffering from a burn.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt heals a single Pokémon that is\\nsuffering from a burn.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nSoigne les brûlures d’un Pokémon.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt heals a single Pokémon that is\\nsuffering from a burn.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt heals a single Pokémon that is\\nsuffering from a burn.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt heals a single Pokémon that is\\nsuffering from a burn.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt heals one POKéMON of a burn.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"Heals POKéMON\\nof a burn.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"Heals POKéMON\\nof a burn.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":30,\"game_indices\":[{\"game_index\":19,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":19,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":19,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":19,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":15,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":19,\"machines\":[],\"name\":\"burn-heal\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"灼伤药\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"やけどなおし\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Burn Heal\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Antiscottatura\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Antiquemar\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Feuerheiler\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Anti-Brûle\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"灼傷藥\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"화상치료제\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"やけどなおし\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/burn-heal.png\"}}","asText":null}}},"tags":[]},{"uuid":"c00099b0-76ee-46ce-b342-c8d0a6a79122","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/17/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,152,1,10,10,97,116,116,114,105,98,117,116,101,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,3,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,252,2,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,232,2,8,1,26,176,1,8,0,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,133,1,10,15,118,101,114,115,105,111,110,95,100,101,116,97,105,108,115,18,114,8,1,26,54,8,0,18,12,10,6,114,97,114,105,116,121,18,2,8,3,18,36,10,7,118,101,114,115,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,54,8,0,18,12,10,6,114,97,114,105,116,121,18,2,8,3,18,36,10,7,118,101,114,115,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,176,1,8,0,18,36,10,7,112,111,107,101,109,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,133,1,10,15,118,101,114,115,105,111,110,95,100,101,116,97,105,108,115,18,114,8,1,26,54,8,0,18,12,10,6,114,97,114,105,116,121,18,2,8,3,18,36,10,7,118,101,114,115,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,54,8,0,18,12,10,6,114,97,114,105,116,121,18,2,8,3,18,36,10,7,118,101,114,115,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"usable-overworld\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/3/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"healing\",\"url\":\"https://pokeapi.co/api/v2/item-category/27/\"},\"cost\":200,\"effect_entries\":[{\"effect\":\"Used on a friendly Pokémon\\n: Restores 20 HP.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Restores 20 HP.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"喷雾式伤药。\\n能让1只宝可梦\\n回复20HP。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の キズぐすり。\\nポケモン 1匹の HPを\\n20だけ 回復する。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for treating wounds. It can\\nbe used to restore 20 HP to an injured Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray per le ferite.\\nRestituisce 20 PS a un Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que cura heridas y restaura\\n20 PS a un Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Hilft bei Wunden. Füllt die KP eines Pokémon um\\n20 Punkte auf.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un spray qui soigne les blessures.\\nRestaure 20 PV d’un Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"噴霧式傷藥。\\n能讓1隻寶可夢\\n回復20HP。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 상처약.\\n포켓몬 1마리의 HP를\\n20만큼 회복한다.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの キズぐすり。\\nポケモン 1ひきの HPを\\n20だけ かいふくする。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"喷雾式伤药。\\n能让1只宝可梦\\n回复20HP。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の キズぐすり。\\nポケモン 1匹の HPを\\n20だけ 回復する。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for treating wounds. It can\\nbe used to restore 20 HP to an injured Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray per le ferite.\\nRestituisce 20 PS a un Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que cura heridas y restaura\\n20 PS a un Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Hilft bei Wunden. Füllt die KP eines Pokémon um\\n20 Punkte auf.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un spray qui soigne les blessures.\\nRestaure 20 PV d’un Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"噴霧式傷藥。\\n能讓1隻寶可夢\\n回復20HP。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 상처약.\\n포켓몬 1마리의 HP를\\n20만큼 회복한다.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの キズぐすり。\\nポケモン 1ひきの HPを\\n20だけ かいふくする。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の キズぐすり。\\nポケモン 1匹の HPを\\n20だけ 回復する。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for treating\\nwounds. It can be used to restore\\n20 HP to an injured Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray per le ferite.\\nRestituisce 20 PS a un Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que cura heridas y restaura\\n20 PS a un Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Hilft bei Wunden. Die KP eines Pokémon werden\\num 20 Punkte aufgefüllt.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un spray qui soigne les blessures.\\nRestaure 20 PV d’un Pokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 상처약.\\n포켓몬 1마리의 HP를\\n20만큼 회복한다.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの キズぐすり。\\nポケモン 1ひきの HPを\\n20だけ かいふくする。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for wounds.\\nIt restores the HP of one Pokémon by\\njust 20 points.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for wounds.\\nIt restores the HP of one Pokémon by\\njust 20 points.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un spray qui soigne les blessures.\\nRestaure 20 PV à un Pokémon.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for wounds.\\nIt restores the HP of one Pokémon by\\njust 20 points.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for wounds.\\nIt restores the HP of one Pokémon by\\njust 20 points.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for wounds.\\nIt restores the HP of one Pokémon by\\njust 20 points.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type wound medicine.\\nIt restores the HP of one POKéMON\\nby 20 points.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"Restores the HP of\\na POKéMON by\\n20 points.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"Restores the HP of\\na POKéMON by\\n20 points.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":30,\"game_indices\":[{\"game_index\":17,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":17,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":17,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":17,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":13,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[{\"pokemon\":{\"name\":\"zigzagoon\",\"url\":\"https://pokeapi.co/api/v2/pokemon/263/\"},\"version_details\":[{\"rarity\":50,\"version\":{\"name\":\"ultra-sun\",\"url\":\"https://pokeapi.co/api/v2/version/29/\"}},{\"rarity\":50,\"version\":{\"name\":\"moon\",\"url\":\"https://pokeapi.co/api/v2/version/28/\"}}]},{\"pokemon\":{\"name\":\"linoone\",\"url\":\"https://pokeapi.co/api/v2/pokemon/264/\"},\"version_details\":[{\"rarity\":50,\"version\":{\"name\":\"ultra-sun\",\"url\":\"https://pokeapi.co/api/v2/version/29/\"}},{\"rarity\":50,\"version\":{\"name\":\"moon\",\"url\":\"https://pokeapi.co/api/v2/version/28/\"}}]}],\"id\":17,\"machines\":[],\"name\":\"potion\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"伤药\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"キズぐすり\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Potion\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Pozione\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Poción\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Trank\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Potion\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"傷藥\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"상처약\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"キズぐすり\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/potion.png\"}}","asText":null}}},"tags":[]},{"uuid":"a093df69-12d3-4481-9743-6a24572dbb4a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/20/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,152,1,10,10,97,116,116,114,105,98,117,116,101,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,233,28,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,209,28,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,3,18,206,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,189,2,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"usable-overworld\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/3/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"status-cures\",\"url\":\"https://pokeapi.co/api/v2/item-category/30/\"},\"cost\":100,\"effect_entries\":[{\"effect\":\"Used on a party Pokémon\\n: Cures freezing.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Cures freezing.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"喷雾式药水。\\n能治愈1只宝可梦的\\n冰冻状态。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の 薬。\\nポケモン 1匹の こおりの\\n状態を 回復する。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for freezing. It can be used\\nonce to defrost a Pokémon that has been\\nfrozen solid.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray.\\nCura un Pokémon dal congelamento.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que descongela a un Pokémon.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Spray, das ein eingefrorenes Pokémon auftaut.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nRéchauffe un Pokémon gelé.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"噴霧式藥水。\\n能治癒1隻寶可夢的\\n冰凍狀態。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 약.\\n포켓몬 1마리의\\n얼음 상태를 회복한다.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの くすり。\\nポケモン 1ひきの こおりの\\nじょうたいを かいふくする。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"喷雾式药水。\\n能治愈1只宝可梦的\\n冰冻状态。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の 薬。\\nポケモン 1匹の こおりの\\n状態を 回復する。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for freezing. It can be used\\nonce to defrost a Pokémon that has been\\nfrozen solid.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray.\\nCura un Pokémon dal congelamento.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que descongela a un Pokémon.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Spray, das ein eingefrorenes Pokémon auftaut.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nRéchauffe un Pokémon gelé.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"噴霧式藥水。\\n能治癒1隻寶可夢的\\n冰凍狀態。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 약.\\n포켓몬 1마리의\\n얼음 상태를 회복한다.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの くすり。\\nポケモン 1ひきの こおりの\\nじょうたいを かいふくする。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"スプレー式の 薬。\\nポケモン 1匹の こおりの\\n状態を 回復する。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine for freezing.\\nIt can be used once to defrost a\\nPokémon that has been frozen solid.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Rimedio spray.\\nCura un Pokémon dal congelamento.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Medicina en espray que descongela a un\\nPokémon.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein Spray, das ein eingefrorenes Pokémon\\nauftaut.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nRéchauffe un Pokémon gelé.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"스프레이식의 약.\\n포켓몬 1마리의\\n얼음 상태를 회복한다.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"スプレーしきの くすり。\\nポケモン 1ひきの こおりの\\nじょうたいを かいふくする。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt defrosts a Pokémon that has been\\nfrozen solid.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt defrosts a Pokémon that has been\\nfrozen solid.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Un médicament sous forme de spray.\\nRéchauffe un Pokémon gelé.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt defrosts a Pokémon that has been\\nfrozen solid.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt defrosts a Pokémon that has been\\nfrozen solid.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt defrosts a Pokémon that has been\\nfrozen solid.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A spray-type medicine.\\nIt defrosts a frozen POKéMON.\",\"version_group\":{\"name\":\"firered-leafgreen\",\"url\":\"https://pokeapi.co/api/v2/version-group/7/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"Defrosts a frozen\\nPOKéMON.\",\"version_group\":{\"name\":\"emerald\",\"url\":\"https://pokeapi.co/api/v2/version-group/6/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"Defrosts a frozen\\nPOKéMON.\",\"version_group\":{\"name\":\"ruby-sapphire\",\"url\":\"https://pokeapi.co/api/v2/version-group/5/\"}}],\"fling_effect\":null,\"fling_power\":30,\"game_indices\":[{\"game_index\":20,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":20,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":20,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":20,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}},{\"game_index\":16,\"generation\":{\"name\":\"generation-iii\",\"url\":\"https://pokeapi.co/api/v2/generation/3/\"}}],\"held_by_pokemon\":[],\"id\":20,\"machines\":[],\"name\":\"ice-heal\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"解冻药\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"こおりなおし\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Ice Heal\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Antigelo\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Antihielo\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Eisheiler\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Antigel\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"解凍藥\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"얼음상태치료제\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"こおりなおし\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/ice-heal.png\"}}","asText":null}}},"tags":[]},{"uuid":"462a8bb3-a0bf-4a47-89ed-2d6e0d1c5a83","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,210,2,10,7,114,101,115,117,108,116,115,18,198,2,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":12,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},{\"name\":\"roomaji\",\"url\":\"https://pokeapi.co/api/v2/language/2/\"},{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},{\"name\":\"cs\",\"url\":\"https://pokeapi.co/api/v2/language/10/\"},{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"}]}","asText":null}}},"tags":[]},{"uuid":"b65a3339-0005-4e3a-8be2-6ac0d57b915e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,124,10,10,97,116,116,114,105,98,117,116,101,115,18,110,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,22,10,16,98,97,98,121,95,116,114,105,103,103,101,114,95,102,111,114,18,2,8,5,18,37,10,8,99,97,116,101,103,111,114,121,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,99,111,115,116,18,2,8,3,18,97,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,79,8,1,26,75,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,115,104,111,114,116,95,101,102,102,101,99,116,18,2,8,2,18,192,26,10,19,102,108,97,118,111,114,95,116,101,120,116,95,101,110,116,114,105,101,115,18,168,26,8,1,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,97,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,116,101,120,116,18,2,8,2,18,42,10,13,118,101,114,115,105,111,110,95,103,114,111,117,112,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,18,10,12,102,108,105,110,103,95,101,102,102,101,99,116,18,2,8,5,18,17,10,11,102,108,105,110,103,95,112,111,119,101,114,18,2,8,5,18,143,2,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,254,1,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,21,10,15,104,101,108,100,95,98,121,95,112,111,107,101,109,111,110,18,2,8,1,18,8,10,2,105,100,18,2,8,3,18,14,10,8,109,97,99,104,105,110,101,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,178,4,10,5,110,97,109,101,115,18,168,4,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,28,10,7,115,112,114,105,116,101,115,18,17,8,0,18,13,10,7,100,101,102,97,117,108,116,18,2,8,2]}},"asJsonString":"{\"attributes\":[{\"name\":\"holdable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/5/\"},{\"name\":\"usable-in-battle\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/4/\"},{\"name\":\"consumable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/2/\"},{\"name\":\"countable\",\"url\":\"https://pokeapi.co/api/v2/item-attribute/1/\"}],\"baby_trigger_for\":null,\"category\":{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},\"cost\":1000,\"effect_entries\":[{\"effect\":\"Used in battle\\n: Attempts to catch a wild Pokémon, using a catch rate of 4× on the first turn of a battle, but 1× any other time.\\n\\n If used in a trainer battle, nothing happens and the ball is lost.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"short_effect\":\"Tries to catch a wild Pokémon. Success rate is 4× (Gen V: 5×), but only on the first turn.\"}],\"flavor_text_entries\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n如果战斗开始后立刻使用,\\n就能很容易地捉到宝可梦。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"戦闘が はじまって すぐに\\n使うと 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that has a more\\nsuccessful catch rate if used at the start of a\\nwild encounter.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa che facilita la cattura\\ndi un Pokémon selvatico se usata all’inizio\\ndella lotta.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Una Poké Ball algo distinta que potencia el índice\\nde captura si se usa al inicio de un encuentro con\\nPokémon salvajes.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein ungewöhnlicher Ball, der zu Beginn eines\\nKampfes am wirkungsvollsten ist.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball qui permet d’attraper un Pokémon\\nsauvage plus facilement si on l’utilise au début\\ndu combat.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n在戰鬥開始後立刻使用,\\n就會變得容易捉到寶可夢。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"배틀이 시작되자마자\\n사용하면 잡기 쉬워지는\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"せんとうが はじまって すぐに\\nつかうと つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"ultra-sun-ultra-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/18/\"}},{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"text\":\"有点与众不同的球。\\n如果战斗开始后立刻使用,\\n就能很容易地捉到宝可梦。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"戦闘が はじまって すぐに\\n使うと 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that has a more\\nsuccessful catch rate if used at the start of a\\nwild encounter.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa che facilita la cattura\\ndi un Pokémon selvatico se usata all’inizio\\ndella lotta.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Una Poké Ball algo distinta que potencia el índice\\nde captura si se usa al inicio de un encuentro con\\nPokémon salvajes.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein ungewöhnlicher Ball, der zu Beginn eines\\nKampfes am wirkungsvollsten ist.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball qui permet d’attraper un Pokémon\\nsauvage plus facilement si on l’utilise au début\\ndu combat.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"text\":\"有點與眾不同的球。\\n在戰鬥開始後立刻使用,\\n就會變得容易捉到寶可夢。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"배틀이 시작되자마자\\n사용하면 잡기 쉬워지는\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"せんとうが はじまって すぐに\\nつかうと つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"sun-moon\",\"url\":\"https://pokeapi.co/api/v2/version-group/17/\"}},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"text\":\"戦闘が はじまって すぐに\\n使うと 捕まえやすくなる\\nちょっと 変わった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nhas a more successful catch rate if\\nused at the start of a wild encounter.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"text\":\"Poké Ball un po’ diversa che facilita la cattura\\ndi un Pokémon selvatico se usata all’inizio\\ndella lotta.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"text\":\"Una Poké Ball algo distinta que potencia el índice\\nde captura si se usa al inicio de un encuentro con\\nPokémon salvajes.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"text\":\"Ein ungewöhnlicher Ball, der zu Beginn eines\\nKampfes am wirkungsvollsten ist.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball qui permet d’attraper un Pokémon\\nsauvage plus facilement si on l’utilise au début du\\ncombat.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"text\":\"배틀이 시작되자마자\\n사용하면 잡기 쉬워지는\\n조금 특이한 볼.\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"text\":\"せんとうが はじまって すぐに\\nつかうと つかまえやすくなる\\nちょっと かわった ボール。\",\"version_group\":{\"name\":\"x-y\",\"url\":\"https://pokeapi.co/api/v2/version-group/15/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nprovides a better catch rate if it is\\nused at the start of a wild encounter.\",\"version_group\":{\"name\":\"black-2-white-2\",\"url\":\"https://pokeapi.co/api/v2/version-group/14/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nprovides a better catch rate if it is\\nused at the start of a wild encounter.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"text\":\"Une Poké Ball qui permet d’attraper un\\nPokémon sauvage plus facilement si on\\nl’utilise au début du combat.\",\"version_group\":{\"name\":\"black-white\",\"url\":\"https://pokeapi.co/api/v2/version-group/11/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nprovides a better catch rate if it is\\nused at the start of a wild encounter.\",\"version_group\":{\"name\":\"heartgold-soulsilver\",\"url\":\"https://pokeapi.co/api/v2/version-group/10/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nprovides a better catch rate if it is\\nused at the start of a wild encounter.\",\"version_group\":{\"name\":\"platinum\",\"url\":\"https://pokeapi.co/api/v2/version-group/9/\"}},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"text\":\"A somewhat different Poké Ball that\\nprovides a better catch rate if it is\\nused at the start of a wild encounter.\",\"version_group\":{\"name\":\"diamond-pearl\",\"url\":\"https://pokeapi.co/api/v2/version-group/8/\"}}],\"fling_effect\":null,\"fling_power\":null,\"game_indices\":[{\"game_index\":15,\"generation\":{\"name\":\"generation-vii\",\"url\":\"https://pokeapi.co/api/v2/generation/7/\"}},{\"game_index\":15,\"generation\":{\"name\":\"generation-vi\",\"url\":\"https://pokeapi.co/api/v2/generation/6/\"}},{\"game_index\":15,\"generation\":{\"name\":\"generation-v\",\"url\":\"https://pokeapi.co/api/v2/generation/5/\"}},{\"game_index\":15,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}}],\"held_by_pokemon\":[],\"id\":15,\"machines\":[],\"name\":\"quick-ball\",\"names\":[{\"language\":{\"name\":\"zh-Hans\",\"url\":\"https://pokeapi.co/api/v2/language/12/\"},\"name\":\"先机球\"},{\"language\":{\"name\":\"ja\",\"url\":\"https://pokeapi.co/api/v2/language/11/\"},\"name\":\"クイックボール\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Quick Ball\"},{\"language\":{\"name\":\"it\",\"url\":\"https://pokeapi.co/api/v2/language/8/\"},\"name\":\"Velox Ball\"},{\"language\":{\"name\":\"es\",\"url\":\"https://pokeapi.co/api/v2/language/7/\"},\"name\":\"Veloz Ball\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Flottball\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Rapide Ball\"},{\"language\":{\"name\":\"zh-Hant\",\"url\":\"https://pokeapi.co/api/v2/language/4/\"},\"name\":\"先機球\"},{\"language\":{\"name\":\"ko\",\"url\":\"https://pokeapi.co/api/v2/language/3/\"},\"name\":\"퀵볼\"},{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"クイックボール\"}],\"sprites\":{\"default\":\"https://raw.githubusercontent.com/PokeAPI/sprites/master/sprites/items/quick-ball.png\"}}","asText":null}}},"tags":[]},{"uuid":"a6de42c2-e161-4a0e-b38b-71e9691604d1","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-attribute/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,80,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,64,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,157,14,10,5,105,116,101,109,115,18,147,14,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Usable in battle\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":4,\"items\":[{\"name\":\"master-ball\",\"url\":\"https://pokeapi.co/api/v2/item/1/\"},{\"name\":\"ultra-ball\",\"url\":\"https://pokeapi.co/api/v2/item/2/\"},{\"name\":\"great-ball\",\"url\":\"https://pokeapi.co/api/v2/item/3/\"},{\"name\":\"poke-ball\",\"url\":\"https://pokeapi.co/api/v2/item/4/\"},{\"name\":\"safari-ball\",\"url\":\"https://pokeapi.co/api/v2/item/5/\"},{\"name\":\"net-ball\",\"url\":\"https://pokeapi.co/api/v2/item/6/\"},{\"name\":\"dive-ball\",\"url\":\"https://pokeapi.co/api/v2/item/7/\"},{\"name\":\"nest-ball\",\"url\":\"https://pokeapi.co/api/v2/item/8/\"},{\"name\":\"repeat-ball\",\"url\":\"https://pokeapi.co/api/v2/item/9/\"},{\"name\":\"timer-ball\",\"url\":\"https://pokeapi.co/api/v2/item/10/\"},{\"name\":\"luxury-ball\",\"url\":\"https://pokeapi.co/api/v2/item/11/\"},{\"name\":\"premier-ball\",\"url\":\"https://pokeapi.co/api/v2/item/12/\"},{\"name\":\"dusk-ball\",\"url\":\"https://pokeapi.co/api/v2/item/13/\"},{\"name\":\"heal-ball\",\"url\":\"https://pokeapi.co/api/v2/item/14/\"},{\"name\":\"quick-ball\",\"url\":\"https://pokeapi.co/api/v2/item/15/\"},{\"name\":\"cherish-ball\",\"url\":\"https://pokeapi.co/api/v2/item/16/\"},{\"name\":\"potion\",\"url\":\"https://pokeapi.co/api/v2/item/17/\"},{\"name\":\"antidote\",\"url\":\"https://pokeapi.co/api/v2/item/18/\"},{\"name\":\"burn-heal\",\"url\":\"https://pokeapi.co/api/v2/item/19/\"},{\"name\":\"ice-heal\",\"url\":\"https://pokeapi.co/api/v2/item/20/\"},{\"name\":\"awakening\",\"url\":\"https://pokeapi.co/api/v2/item/21/\"},{\"name\":\"paralyze-heal\",\"url\":\"https://pokeapi.co/api/v2/item/22/\"},{\"name\":\"full-restore\",\"url\":\"https://pokeapi.co/api/v2/item/23/\"},{\"name\":\"max-potion\",\"url\":\"https://pokeapi.co/api/v2/item/24/\"},{\"name\":\"hyper-potion\",\"url\":\"https://pokeapi.co/api/v2/item/25/\"},{\"name\":\"super-potion\",\"url\":\"https://pokeapi.co/api/v2/item/26/\"},{\"name\":\"full-heal\",\"url\":\"https://pokeapi.co/api/v2/item/27/\"},{\"name\":\"revive\",\"url\":\"https://pokeapi.co/api/v2/item/28/\"},{\"name\":\"max-revive\",\"url\":\"https://pokeapi.co/api/v2/item/29/\"},{\"name\":\"fresh-water\",\"url\":\"https://pokeapi.co/api/v2/item/30/\"},{\"name\":\"soda-pop\",\"url\":\"https://pokeapi.co/api/v2/item/31/\"},{\"name\":\"lemonade\",\"url\":\"https://pokeapi.co/api/v2/item/32/\"},{\"name\":\"moomoo-milk\",\"url\":\"https://pokeapi.co/api/v2/item/33/\"},{\"name\":\"energy-powder\",\"url\":\"https://pokeapi.co/api/v2/item/34/\"},{\"name\":\"energy-root\",\"url\":\"https://pokeapi.co/api/v2/item/35/\"},{\"name\":\"heal-powder\",\"url\":\"https://pokeapi.co/api/v2/item/36/\"},{\"name\":\"revival-herb\",\"url\":\"https://pokeapi.co/api/v2/item/37/\"},{\"name\":\"ether\",\"url\":\"https://pokeapi.co/api/v2/item/38/\"},{\"name\":\"max-ether\",\"url\":\"https://pokeapi.co/api/v2/item/39/\"},{\"name\":\"elixir\",\"url\":\"https://pokeapi.co/api/v2/item/40/\"},{\"name\":\"max-elixir\",\"url\":\"https://pokeapi.co/api/v2/item/41/\"},{\"name\":\"lava-cookie\",\"url\":\"https://pokeapi.co/api/v2/item/42/\"},{\"name\":\"berry-juice\",\"url\":\"https://pokeapi.co/api/v2/item/43/\"},{\"name\":\"sacred-ash\",\"url\":\"https://pokeapi.co/api/v2/item/44/\"},{\"name\":\"hp-up\",\"url\":\"https://pokeapi.co/api/v2/item/45/\"},{\"name\":\"protein\",\"url\":\"https://pokeapi.co/api/v2/item/46/\"},{\"name\":\"iron\",\"url\":\"https://pokeapi.co/api/v2/item/47/\"},{\"name\":\"carbos\",\"url\":\"https://pokeapi.co/api/v2/item/48/\"},{\"name\":\"calcium\",\"url\":\"https://pokeapi.co/api/v2/item/49/\"},{\"name\":\"rare-candy\",\"url\":\"https://pokeapi.co/api/v2/item/50/\"},{\"name\":\"pp-up\",\"url\":\"https://pokeapi.co/api/v2/item/51/\"},{\"name\":\"zinc\",\"url\":\"https://pokeapi.co/api/v2/item/52/\"},{\"name\":\"pp-max\",\"url\":\"https://pokeapi.co/api/v2/item/53/\"},{\"name\":\"old-gateau\",\"url\":\"https://pokeapi.co/api/v2/item/54/\"},{\"name\":\"guard-spec\",\"url\":\"https://pokeapi.co/api/v2/item/55/\"},{\"name\":\"dire-hit\",\"url\":\"https://pokeapi.co/api/v2/item/56/\"},{\"name\":\"x-attack\",\"url\":\"https://pokeapi.co/api/v2/item/57/\"},{\"name\":\"x-defense\",\"url\":\"https://pokeapi.co/api/v2/item/58/\"},{\"name\":\"x-speed\",\"url\":\"https://pokeapi.co/api/v2/item/59/\"},{\"name\":\"x-accuracy\",\"url\":\"https://pokeapi.co/api/v2/item/60/\"},{\"name\":\"x-sp-atk\",\"url\":\"https://pokeapi.co/api/v2/item/61/\"},{\"name\":\"x-sp-def\",\"url\":\"https://pokeapi.co/api/v2/item/62/\"},{\"name\":\"poke-doll\",\"url\":\"https://pokeapi.co/api/v2/item/63/\"},{\"name\":\"fluffy-tail\",\"url\":\"https://pokeapi.co/api/v2/item/64/\"},{\"name\":\"blue-flute\",\"url\":\"https://pokeapi.co/api/v2/item/65/\"},{\"name\":\"yellow-flute\",\"url\":\"https://pokeapi.co/api/v2/item/66/\"},{\"name\":\"red-flute\",\"url\":\"https://pokeapi.co/api/v2/item/67/\"}],\"name\":\"usable-in-battle\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Usable_in_battle\"}]}","asText":null}}},"tags":[]},{"uuid":"01a30818-e3d1-47f3-a334-3a13dcf36351","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-attribute/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,80,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,64,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,211,14,10,5,105,116,101,109,115,18,201,14,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Consumed when used\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":2,\"items\":[{\"name\":\"master-ball\",\"url\":\"https://pokeapi.co/api/v2/item/1/\"},{\"name\":\"ultra-ball\",\"url\":\"https://pokeapi.co/api/v2/item/2/\"},{\"name\":\"great-ball\",\"url\":\"https://pokeapi.co/api/v2/item/3/\"},{\"name\":\"poke-ball\",\"url\":\"https://pokeapi.co/api/v2/item/4/\"},{\"name\":\"safari-ball\",\"url\":\"https://pokeapi.co/api/v2/item/5/\"},{\"name\":\"net-ball\",\"url\":\"https://pokeapi.co/api/v2/item/6/\"},{\"name\":\"dive-ball\",\"url\":\"https://pokeapi.co/api/v2/item/7/\"},{\"name\":\"nest-ball\",\"url\":\"https://pokeapi.co/api/v2/item/8/\"},{\"name\":\"repeat-ball\",\"url\":\"https://pokeapi.co/api/v2/item/9/\"},{\"name\":\"timer-ball\",\"url\":\"https://pokeapi.co/api/v2/item/10/\"},{\"name\":\"luxury-ball\",\"url\":\"https://pokeapi.co/api/v2/item/11/\"},{\"name\":\"premier-ball\",\"url\":\"https://pokeapi.co/api/v2/item/12/\"},{\"name\":\"dusk-ball\",\"url\":\"https://pokeapi.co/api/v2/item/13/\"},{\"name\":\"heal-ball\",\"url\":\"https://pokeapi.co/api/v2/item/14/\"},{\"name\":\"quick-ball\",\"url\":\"https://pokeapi.co/api/v2/item/15/\"},{\"name\":\"cherish-ball\",\"url\":\"https://pokeapi.co/api/v2/item/16/\"},{\"name\":\"potion\",\"url\":\"https://pokeapi.co/api/v2/item/17/\"},{\"name\":\"antidote\",\"url\":\"https://pokeapi.co/api/v2/item/18/\"},{\"name\":\"burn-heal\",\"url\":\"https://pokeapi.co/api/v2/item/19/\"},{\"name\":\"ice-heal\",\"url\":\"https://pokeapi.co/api/v2/item/20/\"},{\"name\":\"awakening\",\"url\":\"https://pokeapi.co/api/v2/item/21/\"},{\"name\":\"paralyze-heal\",\"url\":\"https://pokeapi.co/api/v2/item/22/\"},{\"name\":\"full-restore\",\"url\":\"https://pokeapi.co/api/v2/item/23/\"},{\"name\":\"max-potion\",\"url\":\"https://pokeapi.co/api/v2/item/24/\"},{\"name\":\"hyper-potion\",\"url\":\"https://pokeapi.co/api/v2/item/25/\"},{\"name\":\"super-potion\",\"url\":\"https://pokeapi.co/api/v2/item/26/\"},{\"name\":\"full-heal\",\"url\":\"https://pokeapi.co/api/v2/item/27/\"},{\"name\":\"revive\",\"url\":\"https://pokeapi.co/api/v2/item/28/\"},{\"name\":\"max-revive\",\"url\":\"https://pokeapi.co/api/v2/item/29/\"},{\"name\":\"fresh-water\",\"url\":\"https://pokeapi.co/api/v2/item/30/\"},{\"name\":\"soda-pop\",\"url\":\"https://pokeapi.co/api/v2/item/31/\"},{\"name\":\"lemonade\",\"url\":\"https://pokeapi.co/api/v2/item/32/\"},{\"name\":\"moomoo-milk\",\"url\":\"https://pokeapi.co/api/v2/item/33/\"},{\"name\":\"energy-powder\",\"url\":\"https://pokeapi.co/api/v2/item/34/\"},{\"name\":\"energy-root\",\"url\":\"https://pokeapi.co/api/v2/item/35/\"},{\"name\":\"heal-powder\",\"url\":\"https://pokeapi.co/api/v2/item/36/\"},{\"name\":\"revival-herb\",\"url\":\"https://pokeapi.co/api/v2/item/37/\"},{\"name\":\"ether\",\"url\":\"https://pokeapi.co/api/v2/item/38/\"},{\"name\":\"max-ether\",\"url\":\"https://pokeapi.co/api/v2/item/39/\"},{\"name\":\"elixir\",\"url\":\"https://pokeapi.co/api/v2/item/40/\"},{\"name\":\"max-elixir\",\"url\":\"https://pokeapi.co/api/v2/item/41/\"},{\"name\":\"lava-cookie\",\"url\":\"https://pokeapi.co/api/v2/item/42/\"},{\"name\":\"berry-juice\",\"url\":\"https://pokeapi.co/api/v2/item/43/\"},{\"name\":\"sacred-ash\",\"url\":\"https://pokeapi.co/api/v2/item/44/\"},{\"name\":\"hp-up\",\"url\":\"https://pokeapi.co/api/v2/item/45/\"},{\"name\":\"protein\",\"url\":\"https://pokeapi.co/api/v2/item/46/\"},{\"name\":\"iron\",\"url\":\"https://pokeapi.co/api/v2/item/47/\"},{\"name\":\"carbos\",\"url\":\"https://pokeapi.co/api/v2/item/48/\"},{\"name\":\"calcium\",\"url\":\"https://pokeapi.co/api/v2/item/49/\"},{\"name\":\"rare-candy\",\"url\":\"https://pokeapi.co/api/v2/item/50/\"},{\"name\":\"pp-up\",\"url\":\"https://pokeapi.co/api/v2/item/51/\"},{\"name\":\"zinc\",\"url\":\"https://pokeapi.co/api/v2/item/52/\"},{\"name\":\"pp-max\",\"url\":\"https://pokeapi.co/api/v2/item/53/\"},{\"name\":\"old-gateau\",\"url\":\"https://pokeapi.co/api/v2/item/54/\"},{\"name\":\"guard-spec\",\"url\":\"https://pokeapi.co/api/v2/item/55/\"},{\"name\":\"dire-hit\",\"url\":\"https://pokeapi.co/api/v2/item/56/\"},{\"name\":\"x-attack\",\"url\":\"https://pokeapi.co/api/v2/item/57/\"},{\"name\":\"x-defense\",\"url\":\"https://pokeapi.co/api/v2/item/58/\"},{\"name\":\"x-speed\",\"url\":\"https://pokeapi.co/api/v2/item/59/\"},{\"name\":\"x-accuracy\",\"url\":\"https://pokeapi.co/api/v2/item/60/\"},{\"name\":\"x-sp-atk\",\"url\":\"https://pokeapi.co/api/v2/item/61/\"},{\"name\":\"x-sp-def\",\"url\":\"https://pokeapi.co/api/v2/item/62/\"},{\"name\":\"poke-doll\",\"url\":\"https://pokeapi.co/api/v2/item/63/\"},{\"name\":\"fluffy-tail\",\"url\":\"https://pokeapi.co/api/v2/item/64/\"},{\"name\":\"blue-flute\",\"url\":\"https://pokeapi.co/api/v2/item/65/\"},{\"name\":\"yellow-flute\",\"url\":\"https://pokeapi.co/api/v2/item/66/\"},{\"name\":\"red-flute\",\"url\":\"https://pokeapi.co/api/v2/item/67/\"},{\"name\":\"black-flute\",\"url\":\"https://pokeapi.co/api/v2/item/68/\"},{\"name\":\"white-flute\",\"url\":\"https://pokeapi.co/api/v2/item/69/\"}],\"name\":\"consumable\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Consumable\"}]}","asText":null}}},"tags":[]},{"uuid":"f9aea4a7-a6b4-46d3-b91e-1c169c33e8da","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/location/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,170,4,10,7,114,101,115,117,108,116,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":781,\"next\":\"https://pokeapi.co/api/v2/location/?offset=20&limit=20\",\"previous\":null,\"results\":[{\"name\":\"canalave-city\",\"url\":\"https://pokeapi.co/api/v2/location/1/\"},{\"name\":\"eterna-city\",\"url\":\"https://pokeapi.co/api/v2/location/2/\"},{\"name\":\"pastoria-city\",\"url\":\"https://pokeapi.co/api/v2/location/3/\"},{\"name\":\"sunyshore-city\",\"url\":\"https://pokeapi.co/api/v2/location/4/\"},{\"name\":\"sinnoh-pokemon-league\",\"url\":\"https://pokeapi.co/api/v2/location/5/\"},{\"name\":\"oreburgh-mine\",\"url\":\"https://pokeapi.co/api/v2/location/6/\"},{\"name\":\"valley-windworks\",\"url\":\"https://pokeapi.co/api/v2/location/7/\"},{\"name\":\"eterna-forest\",\"url\":\"https://pokeapi.co/api/v2/location/8/\"},{\"name\":\"fuego-ironworks\",\"url\":\"https://pokeapi.co/api/v2/location/9/\"},{\"name\":\"mt-coronet\",\"url\":\"https://pokeapi.co/api/v2/location/10/\"},{\"name\":\"great-marsh\",\"url\":\"https://pokeapi.co/api/v2/location/11/\"},{\"name\":\"solaceon-ruins\",\"url\":\"https://pokeapi.co/api/v2/location/12/\"},{\"name\":\"sinnoh-victory-road\",\"url\":\"https://pokeapi.co/api/v2/location/13/\"},{\"name\":\"ravaged-path\",\"url\":\"https://pokeapi.co/api/v2/location/14/\"},{\"name\":\"oreburgh-gate\",\"url\":\"https://pokeapi.co/api/v2/location/15/\"},{\"name\":\"stark-mountain\",\"url\":\"https://pokeapi.co/api/v2/location/16/\"},{\"name\":\"spring-path\",\"url\":\"https://pokeapi.co/api/v2/location/17/\"},{\"name\":\"turnback-cave\",\"url\":\"https://pokeapi.co/api/v2/location/18/\"},{\"name\":\"snowpoint-temple\",\"url\":\"https://pokeapi.co/api/v2/location/19/\"},{\"name\":\"wayward-cave\",\"url\":\"https://pokeapi.co/api/v2/location/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"3bf71a15-6ad8-40a7-864f-f5ac7c521c31","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-attribute/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,80,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,64,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,230,36,10,5,105,116,101,109,115,18,220,36,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Can be held by a Pokémon\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":5,\"items\":[{\"name\":\"master-ball\",\"url\":\"https://pokeapi.co/api/v2/item/1/\"},{\"name\":\"ultra-ball\",\"url\":\"https://pokeapi.co/api/v2/item/2/\"},{\"name\":\"great-ball\",\"url\":\"https://pokeapi.co/api/v2/item/3/\"},{\"name\":\"poke-ball\",\"url\":\"https://pokeapi.co/api/v2/item/4/\"},{\"name\":\"safari-ball\",\"url\":\"https://pokeapi.co/api/v2/item/5/\"},{\"name\":\"net-ball\",\"url\":\"https://pokeapi.co/api/v2/item/6/\"},{\"name\":\"dive-ball\",\"url\":\"https://pokeapi.co/api/v2/item/7/\"},{\"name\":\"nest-ball\",\"url\":\"https://pokeapi.co/api/v2/item/8/\"},{\"name\":\"repeat-ball\",\"url\":\"https://pokeapi.co/api/v2/item/9/\"},{\"name\":\"timer-ball\",\"url\":\"https://pokeapi.co/api/v2/item/10/\"},{\"name\":\"luxury-ball\",\"url\":\"https://pokeapi.co/api/v2/item/11/\"},{\"name\":\"premier-ball\",\"url\":\"https://pokeapi.co/api/v2/item/12/\"},{\"name\":\"dusk-ball\",\"url\":\"https://pokeapi.co/api/v2/item/13/\"},{\"name\":\"heal-ball\",\"url\":\"https://pokeapi.co/api/v2/item/14/\"},{\"name\":\"quick-ball\",\"url\":\"https://pokeapi.co/api/v2/item/15/\"},{\"name\":\"cherish-ball\",\"url\":\"https://pokeapi.co/api/v2/item/16/\"},{\"name\":\"potion\",\"url\":\"https://pokeapi.co/api/v2/item/17/\"},{\"name\":\"antidote\",\"url\":\"https://pokeapi.co/api/v2/item/18/\"},{\"name\":\"burn-heal\",\"url\":\"https://pokeapi.co/api/v2/item/19/\"},{\"name\":\"ice-heal\",\"url\":\"https://pokeapi.co/api/v2/item/20/\"},{\"name\":\"awakening\",\"url\":\"https://pokeapi.co/api/v2/item/21/\"},{\"name\":\"paralyze-heal\",\"url\":\"https://pokeapi.co/api/v2/item/22/\"},{\"name\":\"full-restore\",\"url\":\"https://pokeapi.co/api/v2/item/23/\"},{\"name\":\"max-potion\",\"url\":\"https://pokeapi.co/api/v2/item/24/\"},{\"name\":\"hyper-potion\",\"url\":\"https://pokeapi.co/api/v2/item/25/\"},{\"name\":\"super-potion\",\"url\":\"https://pokeapi.co/api/v2/item/26/\"},{\"name\":\"full-heal\",\"url\":\"https://pokeapi.co/api/v2/item/27/\"},{\"name\":\"revive\",\"url\":\"https://pokeapi.co/api/v2/item/28/\"},{\"name\":\"max-revive\",\"url\":\"https://pokeapi.co/api/v2/item/29/\"},{\"name\":\"fresh-water\",\"url\":\"https://pokeapi.co/api/v2/item/30/\"},{\"name\":\"soda-pop\",\"url\":\"https://pokeapi.co/api/v2/item/31/\"},{\"name\":\"lemonade\",\"url\":\"https://pokeapi.co/api/v2/item/32/\"},{\"name\":\"moomoo-milk\",\"url\":\"https://pokeapi.co/api/v2/item/33/\"},{\"name\":\"energy-powder\",\"url\":\"https://pokeapi.co/api/v2/item/34/\"},{\"name\":\"energy-root\",\"url\":\"https://pokeapi.co/api/v2/item/35/\"},{\"name\":\"heal-powder\",\"url\":\"https://pokeapi.co/api/v2/item/36/\"},{\"name\":\"revival-herb\",\"url\":\"https://pokeapi.co/api/v2/item/37/\"},{\"name\":\"ether\",\"url\":\"https://pokeapi.co/api/v2/item/38/\"},{\"name\":\"max-ether\",\"url\":\"https://pokeapi.co/api/v2/item/39/\"},{\"name\":\"elixir\",\"url\":\"https://pokeapi.co/api/v2/item/40/\"},{\"name\":\"max-elixir\",\"url\":\"https://pokeapi.co/api/v2/item/41/\"},{\"name\":\"lava-cookie\",\"url\":\"https://pokeapi.co/api/v2/item/42/\"},{\"name\":\"berry-juice\",\"url\":\"https://pokeapi.co/api/v2/item/43/\"},{\"name\":\"sacred-ash\",\"url\":\"https://pokeapi.co/api/v2/item/44/\"},{\"name\":\"hp-up\",\"url\":\"https://pokeapi.co/api/v2/item/45/\"},{\"name\":\"protein\",\"url\":\"https://pokeapi.co/api/v2/item/46/\"},{\"name\":\"iron\",\"url\":\"https://pokeapi.co/api/v2/item/47/\"},{\"name\":\"carbos\",\"url\":\"https://pokeapi.co/api/v2/item/48/\"},{\"name\":\"calcium\",\"url\":\"https://pokeapi.co/api/v2/item/49/\"},{\"name\":\"rare-candy\",\"url\":\"https://pokeapi.co/api/v2/item/50/\"},{\"name\":\"pp-up\",\"url\":\"https://pokeapi.co/api/v2/item/51/\"},{\"name\":\"zinc\",\"url\":\"https://pokeapi.co/api/v2/item/52/\"},{\"name\":\"pp-max\",\"url\":\"https://pokeapi.co/api/v2/item/53/\"},{\"name\":\"old-gateau\",\"url\":\"https://pokeapi.co/api/v2/item/54/\"},{\"name\":\"guard-spec\",\"url\":\"https://pokeapi.co/api/v2/item/55/\"},{\"name\":\"dire-hit\",\"url\":\"https://pokeapi.co/api/v2/item/56/\"},{\"name\":\"x-attack\",\"url\":\"https://pokeapi.co/api/v2/item/57/\"},{\"name\":\"x-defense\",\"url\":\"https://pokeapi.co/api/v2/item/58/\"},{\"name\":\"x-speed\",\"url\":\"https://pokeapi.co/api/v2/item/59/\"},{\"name\":\"x-accuracy\",\"url\":\"https://pokeapi.co/api/v2/item/60/\"},{\"name\":\"x-sp-atk\",\"url\":\"https://pokeapi.co/api/v2/item/61/\"},{\"name\":\"x-sp-def\",\"url\":\"https://pokeapi.co/api/v2/item/62/\"},{\"name\":\"poke-doll\",\"url\":\"https://pokeapi.co/api/v2/item/63/\"},{\"name\":\"fluffy-tail\",\"url\":\"https://pokeapi.co/api/v2/item/64/\"},{\"name\":\"blue-flute\",\"url\":\"https://pokeapi.co/api/v2/item/65/\"},{\"name\":\"yellow-flute\",\"url\":\"https://pokeapi.co/api/v2/item/66/\"},{\"name\":\"red-flute\",\"url\":\"https://pokeapi.co/api/v2/item/67/\"},{\"name\":\"black-flute\",\"url\":\"https://pokeapi.co/api/v2/item/68/\"},{\"name\":\"white-flute\",\"url\":\"https://pokeapi.co/api/v2/item/69/\"},{\"name\":\"adamant-orb\",\"url\":\"https://pokeapi.co/api/v2/item/112/\"},{\"name\":\"lustrous-orb\",\"url\":\"https://pokeapi.co/api/v2/item/113/\"},{\"name\":\"bright-powder\",\"url\":\"https://pokeapi.co/api/v2/item/190/\"},{\"name\":\"white-herb\",\"url\":\"https://pokeapi.co/api/v2/item/191/\"},{\"name\":\"macho-brace\",\"url\":\"https://pokeapi.co/api/v2/item/192/\"},{\"name\":\"exp-share\",\"url\":\"https://pokeapi.co/api/v2/item/193/\"},{\"name\":\"quick-claw\",\"url\":\"https://pokeapi.co/api/v2/item/194/\"},{\"name\":\"soothe-bell\",\"url\":\"https://pokeapi.co/api/v2/item/195/\"},{\"name\":\"mental-herb\",\"url\":\"https://pokeapi.co/api/v2/item/196/\"},{\"name\":\"choice-band\",\"url\":\"https://pokeapi.co/api/v2/item/197/\"},{\"name\":\"kings-rock\",\"url\":\"https://pokeapi.co/api/v2/item/198/\"},{\"name\":\"silver-powder\",\"url\":\"https://pokeapi.co/api/v2/item/199/\"},{\"name\":\"amulet-coin\",\"url\":\"https://pokeapi.co/api/v2/item/200/\"},{\"name\":\"cleanse-tag\",\"url\":\"https://pokeapi.co/api/v2/item/201/\"},{\"name\":\"soul-dew\",\"url\":\"https://pokeapi.co/api/v2/item/202/\"},{\"name\":\"deep-sea-tooth\",\"url\":\"https://pokeapi.co/api/v2/item/203/\"},{\"name\":\"deep-sea-scale\",\"url\":\"https://pokeapi.co/api/v2/item/204/\"},{\"name\":\"smoke-ball\",\"url\":\"https://pokeapi.co/api/v2/item/205/\"},{\"name\":\"everstone\",\"url\":\"https://pokeapi.co/api/v2/item/206/\"},{\"name\":\"focus-band\",\"url\":\"https://pokeapi.co/api/v2/item/207/\"},{\"name\":\"lucky-egg\",\"url\":\"https://pokeapi.co/api/v2/item/208/\"},{\"name\":\"scope-lens\",\"url\":\"https://pokeapi.co/api/v2/item/209/\"},{\"name\":\"metal-coat\",\"url\":\"https://pokeapi.co/api/v2/item/210/\"},{\"name\":\"leftovers\",\"url\":\"https://pokeapi.co/api/v2/item/211/\"},{\"name\":\"light-ball\",\"url\":\"https://pokeapi.co/api/v2/item/213/\"},{\"name\":\"soft-sand\",\"url\":\"https://pokeapi.co/api/v2/item/214/\"},{\"name\":\"hard-stone\",\"url\":\"https://pokeapi.co/api/v2/item/215/\"},{\"name\":\"miracle-seed\",\"url\":\"https://pokeapi.co/api/v2/item/216/\"},{\"name\":\"black-glasses\",\"url\":\"https://pokeapi.co/api/v2/item/217/\"},{\"name\":\"black-belt\",\"url\":\"https://pokeapi.co/api/v2/item/218/\"},{\"name\":\"magnet\",\"url\":\"https://pokeapi.co/api/v2/item/219/\"},{\"name\":\"mystic-water\",\"url\":\"https://pokeapi.co/api/v2/item/220/\"},{\"name\":\"sharp-beak\",\"url\":\"https://pokeapi.co/api/v2/item/221/\"},{\"name\":\"poison-barb\",\"url\":\"https://pokeapi.co/api/v2/item/222/\"},{\"name\":\"never-melt-ice\",\"url\":\"https://pokeapi.co/api/v2/item/223/\"},{\"name\":\"spell-tag\",\"url\":\"https://pokeapi.co/api/v2/item/224/\"},{\"name\":\"twisted-spoon\",\"url\":\"https://pokeapi.co/api/v2/item/225/\"},{\"name\":\"charcoal\",\"url\":\"https://pokeapi.co/api/v2/item/226/\"},{\"name\":\"dragon-fang\",\"url\":\"https://pokeapi.co/api/v2/item/227/\"},{\"name\":\"silk-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/228/\"},{\"name\":\"shell-bell\",\"url\":\"https://pokeapi.co/api/v2/item/230/\"},{\"name\":\"sea-incense\",\"url\":\"https://pokeapi.co/api/v2/item/231/\"},{\"name\":\"lax-incense\",\"url\":\"https://pokeapi.co/api/v2/item/232/\"},{\"name\":\"lucky-punch\",\"url\":\"https://pokeapi.co/api/v2/item/233/\"},{\"name\":\"metal-powder\",\"url\":\"https://pokeapi.co/api/v2/item/234/\"},{\"name\":\"thick-club\",\"url\":\"https://pokeapi.co/api/v2/item/235/\"},{\"name\":\"stick\",\"url\":\"https://pokeapi.co/api/v2/item/236/\"},{\"name\":\"wide-lens\",\"url\":\"https://pokeapi.co/api/v2/item/242/\"},{\"name\":\"muscle-band\",\"url\":\"https://pokeapi.co/api/v2/item/243/\"},{\"name\":\"wise-glasses\",\"url\":\"https://pokeapi.co/api/v2/item/244/\"},{\"name\":\"expert-belt\",\"url\":\"https://pokeapi.co/api/v2/item/245/\"},{\"name\":\"light-clay\",\"url\":\"https://pokeapi.co/api/v2/item/246/\"},{\"name\":\"life-orb\",\"url\":\"https://pokeapi.co/api/v2/item/247/\"},{\"name\":\"power-herb\",\"url\":\"https://pokeapi.co/api/v2/item/248/\"},{\"name\":\"toxic-orb\",\"url\":\"https://pokeapi.co/api/v2/item/249/\"},{\"name\":\"flame-orb\",\"url\":\"https://pokeapi.co/api/v2/item/250/\"},{\"name\":\"quick-powder\",\"url\":\"https://pokeapi.co/api/v2/item/251/\"},{\"name\":\"focus-sash\",\"url\":\"https://pokeapi.co/api/v2/item/252/\"},{\"name\":\"zoom-lens\",\"url\":\"https://pokeapi.co/api/v2/item/253/\"},{\"name\":\"metronome\",\"url\":\"https://pokeapi.co/api/v2/item/254/\"},{\"name\":\"iron-ball\",\"url\":\"https://pokeapi.co/api/v2/item/255/\"},{\"name\":\"lagging-tail\",\"url\":\"https://pokeapi.co/api/v2/item/256/\"},{\"name\":\"destiny-knot\",\"url\":\"https://pokeapi.co/api/v2/item/257/\"},{\"name\":\"black-sludge\",\"url\":\"https://pokeapi.co/api/v2/item/258/\"},{\"name\":\"icy-rock\",\"url\":\"https://pokeapi.co/api/v2/item/259/\"},{\"name\":\"smooth-rock\",\"url\":\"https://pokeapi.co/api/v2/item/260/\"},{\"name\":\"heat-rock\",\"url\":\"https://pokeapi.co/api/v2/item/261/\"},{\"name\":\"damp-rock\",\"url\":\"https://pokeapi.co/api/v2/item/262/\"},{\"name\":\"grip-claw\",\"url\":\"https://pokeapi.co/api/v2/item/263/\"},{\"name\":\"choice-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/264/\"},{\"name\":\"sticky-barb\",\"url\":\"https://pokeapi.co/api/v2/item/265/\"},{\"name\":\"power-bracer\",\"url\":\"https://pokeapi.co/api/v2/item/266/\"},{\"name\":\"power-belt\",\"url\":\"https://pokeapi.co/api/v2/item/267/\"},{\"name\":\"power-lens\",\"url\":\"https://pokeapi.co/api/v2/item/268/\"},{\"name\":\"power-band\",\"url\":\"https://pokeapi.co/api/v2/item/269/\"},{\"name\":\"power-anklet\",\"url\":\"https://pokeapi.co/api/v2/item/270/\"},{\"name\":\"power-weight\",\"url\":\"https://pokeapi.co/api/v2/item/271/\"},{\"name\":\"shed-shell\",\"url\":\"https://pokeapi.co/api/v2/item/272/\"},{\"name\":\"big-root\",\"url\":\"https://pokeapi.co/api/v2/item/273/\"},{\"name\":\"choice-specs\",\"url\":\"https://pokeapi.co/api/v2/item/274/\"},{\"name\":\"flame-plate\",\"url\":\"https://pokeapi.co/api/v2/item/275/\"},{\"name\":\"splash-plate\",\"url\":\"https://pokeapi.co/api/v2/item/276/\"},{\"name\":\"zap-plate\",\"url\":\"https://pokeapi.co/api/v2/item/277/\"},{\"name\":\"meadow-plate\",\"url\":\"https://pokeapi.co/api/v2/item/278/\"},{\"name\":\"icicle-plate\",\"url\":\"https://pokeapi.co/api/v2/item/279/\"},{\"name\":\"fist-plate\",\"url\":\"https://pokeapi.co/api/v2/item/280/\"},{\"name\":\"toxic-plate\",\"url\":\"https://pokeapi.co/api/v2/item/281/\"},{\"name\":\"earth-plate\",\"url\":\"https://pokeapi.co/api/v2/item/282/\"},{\"name\":\"sky-plate\",\"url\":\"https://pokeapi.co/api/v2/item/283/\"},{\"name\":\"mind-plate\",\"url\":\"https://pokeapi.co/api/v2/item/284/\"},{\"name\":\"insect-plate\",\"url\":\"https://pokeapi.co/api/v2/item/285/\"},{\"name\":\"stone-plate\",\"url\":\"https://pokeapi.co/api/v2/item/286/\"},{\"name\":\"spooky-plate\",\"url\":\"https://pokeapi.co/api/v2/item/287/\"},{\"name\":\"draco-plate\",\"url\":\"https://pokeapi.co/api/v2/item/288/\"},{\"name\":\"dread-plate\",\"url\":\"https://pokeapi.co/api/v2/item/289/\"},{\"name\":\"iron-plate\",\"url\":\"https://pokeapi.co/api/v2/item/290/\"},{\"name\":\"odd-incense\",\"url\":\"https://pokeapi.co/api/v2/item/291/\"},{\"name\":\"rock-incense\",\"url\":\"https://pokeapi.co/api/v2/item/292/\"},{\"name\":\"full-incense\",\"url\":\"https://pokeapi.co/api/v2/item/293/\"},{\"name\":\"wave-incense\",\"url\":\"https://pokeapi.co/api/v2/item/294/\"},{\"name\":\"rose-incense\",\"url\":\"https://pokeapi.co/api/v2/item/295/\"},{\"name\":\"luck-incense\",\"url\":\"https://pokeapi.co/api/v2/item/296/\"},{\"name\":\"pure-incense\",\"url\":\"https://pokeapi.co/api/v2/item/297/\"},{\"name\":\"razor-claw\",\"url\":\"https://pokeapi.co/api/v2/item/303/\"},{\"name\":\"razor-fang\",\"url\":\"https://pokeapi.co/api/v2/item/304/\"}],\"name\":\"holdable\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Holdable\"}]}","asText":null}}},"tags":[]},{"uuid":"1e5fa49a-bc28-4d05-92b7-e819e7b9dc61","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-attribute/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,80,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,64,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,156,10,10,5,105,116,101,109,115,18,146,10,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Appears in Sinnoh Underground\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":8,\"items\":[{\"name\":\"revive\",\"url\":\"https://pokeapi.co/api/v2/item/28/\"},{\"name\":\"max-revive\",\"url\":\"https://pokeapi.co/api/v2/item/29/\"},{\"name\":\"red-shard\",\"url\":\"https://pokeapi.co/api/v2/item/72/\"},{\"name\":\"blue-shard\",\"url\":\"https://pokeapi.co/api/v2/item/73/\"},{\"name\":\"yellow-shard\",\"url\":\"https://pokeapi.co/api/v2/item/74/\"},{\"name\":\"green-shard\",\"url\":\"https://pokeapi.co/api/v2/item/75/\"},{\"name\":\"sun-stone\",\"url\":\"https://pokeapi.co/api/v2/item/80/\"},{\"name\":\"moon-stone\",\"url\":\"https://pokeapi.co/api/v2/item/81/\"},{\"name\":\"fire-stone\",\"url\":\"https://pokeapi.co/api/v2/item/82/\"},{\"name\":\"thunder-stone\",\"url\":\"https://pokeapi.co/api/v2/item/83/\"},{\"name\":\"water-stone\",\"url\":\"https://pokeapi.co/api/v2/item/84/\"},{\"name\":\"leaf-stone\",\"url\":\"https://pokeapi.co/api/v2/item/85/\"},{\"name\":\"star-piece\",\"url\":\"https://pokeapi.co/api/v2/item/91/\"},{\"name\":\"heart-scale\",\"url\":\"https://pokeapi.co/api/v2/item/93/\"},{\"name\":\"root-fossil\",\"url\":\"https://pokeapi.co/api/v2/item/99/\"},{\"name\":\"claw-fossil\",\"url\":\"https://pokeapi.co/api/v2/item/100/\"},{\"name\":\"helix-fossil\",\"url\":\"https://pokeapi.co/api/v2/item/101/\"},{\"name\":\"dome-fossil\",\"url\":\"https://pokeapi.co/api/v2/item/102/\"},{\"name\":\"old-amber\",\"url\":\"https://pokeapi.co/api/v2/item/103/\"},{\"name\":\"armor-fossil\",\"url\":\"https://pokeapi.co/api/v2/item/104/\"},{\"name\":\"skull-fossil\",\"url\":\"https://pokeapi.co/api/v2/item/105/\"},{\"name\":\"rare-bone\",\"url\":\"https://pokeapi.co/api/v2/item/106/\"},{\"name\":\"oval-stone\",\"url\":\"https://pokeapi.co/api/v2/item/110/\"},{\"name\":\"odd-keystone\",\"url\":\"https://pokeapi.co/api/v2/item/111/\"},{\"name\":\"everstone\",\"url\":\"https://pokeapi.co/api/v2/item/206/\"},{\"name\":\"hard-stone\",\"url\":\"https://pokeapi.co/api/v2/item/215/\"},{\"name\":\"light-clay\",\"url\":\"https://pokeapi.co/api/v2/item/246/\"},{\"name\":\"iron-ball\",\"url\":\"https://pokeapi.co/api/v2/item/255/\"},{\"name\":\"icy-rock\",\"url\":\"https://pokeapi.co/api/v2/item/259/\"},{\"name\":\"smooth-rock\",\"url\":\"https://pokeapi.co/api/v2/item/260/\"},{\"name\":\"heat-rock\",\"url\":\"https://pokeapi.co/api/v2/item/261/\"},{\"name\":\"damp-rock\",\"url\":\"https://pokeapi.co/api/v2/item/262/\"},{\"name\":\"flame-plate\",\"url\":\"https://pokeapi.co/api/v2/item/275/\"},{\"name\":\"splash-plate\",\"url\":\"https://pokeapi.co/api/v2/item/276/\"},{\"name\":\"zap-plate\",\"url\":\"https://pokeapi.co/api/v2/item/277/\"},{\"name\":\"meadow-plate\",\"url\":\"https://pokeapi.co/api/v2/item/278/\"},{\"name\":\"icicle-plate\",\"url\":\"https://pokeapi.co/api/v2/item/279/\"},{\"name\":\"fist-plate\",\"url\":\"https://pokeapi.co/api/v2/item/280/\"},{\"name\":\"toxic-plate\",\"url\":\"https://pokeapi.co/api/v2/item/281/\"},{\"name\":\"earth-plate\",\"url\":\"https://pokeapi.co/api/v2/item/282/\"},{\"name\":\"sky-plate\",\"url\":\"https://pokeapi.co/api/v2/item/283/\"},{\"name\":\"mind-plate\",\"url\":\"https://pokeapi.co/api/v2/item/284/\"},{\"name\":\"insect-plate\",\"url\":\"https://pokeapi.co/api/v2/item/285/\"},{\"name\":\"stone-plate\",\"url\":\"https://pokeapi.co/api/v2/item/286/\"},{\"name\":\"spooky-plate\",\"url\":\"https://pokeapi.co/api/v2/item/287/\"},{\"name\":\"draco-plate\",\"url\":\"https://pokeapi.co/api/v2/item/288/\"},{\"name\":\"dread-plate\",\"url\":\"https://pokeapi.co/api/v2/item/289/\"},{\"name\":\"iron-plate\",\"url\":\"https://pokeapi.co/api/v2/item/290/\"}],\"name\":\"underground\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Underground\"}]}","asText":null}}},"tags":[]},{"uuid":"100069cb-4d77-4902-8b49-7542b914f880","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-attribute/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,80,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,64,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,137,15,10,5,105,116,101,109,115,18,255,14,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Has a count in the bag\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":1,\"items\":[{\"name\":\"master-ball\",\"url\":\"https://pokeapi.co/api/v2/item/1/\"},{\"name\":\"ultra-ball\",\"url\":\"https://pokeapi.co/api/v2/item/2/\"},{\"name\":\"great-ball\",\"url\":\"https://pokeapi.co/api/v2/item/3/\"},{\"name\":\"poke-ball\",\"url\":\"https://pokeapi.co/api/v2/item/4/\"},{\"name\":\"safari-ball\",\"url\":\"https://pokeapi.co/api/v2/item/5/\"},{\"name\":\"net-ball\",\"url\":\"https://pokeapi.co/api/v2/item/6/\"},{\"name\":\"dive-ball\",\"url\":\"https://pokeapi.co/api/v2/item/7/\"},{\"name\":\"nest-ball\",\"url\":\"https://pokeapi.co/api/v2/item/8/\"},{\"name\":\"repeat-ball\",\"url\":\"https://pokeapi.co/api/v2/item/9/\"},{\"name\":\"timer-ball\",\"url\":\"https://pokeapi.co/api/v2/item/10/\"},{\"name\":\"luxury-ball\",\"url\":\"https://pokeapi.co/api/v2/item/11/\"},{\"name\":\"premier-ball\",\"url\":\"https://pokeapi.co/api/v2/item/12/\"},{\"name\":\"dusk-ball\",\"url\":\"https://pokeapi.co/api/v2/item/13/\"},{\"name\":\"heal-ball\",\"url\":\"https://pokeapi.co/api/v2/item/14/\"},{\"name\":\"quick-ball\",\"url\":\"https://pokeapi.co/api/v2/item/15/\"},{\"name\":\"cherish-ball\",\"url\":\"https://pokeapi.co/api/v2/item/16/\"},{\"name\":\"potion\",\"url\":\"https://pokeapi.co/api/v2/item/17/\"},{\"name\":\"antidote\",\"url\":\"https://pokeapi.co/api/v2/item/18/\"},{\"name\":\"burn-heal\",\"url\":\"https://pokeapi.co/api/v2/item/19/\"},{\"name\":\"ice-heal\",\"url\":\"https://pokeapi.co/api/v2/item/20/\"},{\"name\":\"awakening\",\"url\":\"https://pokeapi.co/api/v2/item/21/\"},{\"name\":\"paralyze-heal\",\"url\":\"https://pokeapi.co/api/v2/item/22/\"},{\"name\":\"full-restore\",\"url\":\"https://pokeapi.co/api/v2/item/23/\"},{\"name\":\"max-potion\",\"url\":\"https://pokeapi.co/api/v2/item/24/\"},{\"name\":\"hyper-potion\",\"url\":\"https://pokeapi.co/api/v2/item/25/\"},{\"name\":\"super-potion\",\"url\":\"https://pokeapi.co/api/v2/item/26/\"},{\"name\":\"full-heal\",\"url\":\"https://pokeapi.co/api/v2/item/27/\"},{\"name\":\"revive\",\"url\":\"https://pokeapi.co/api/v2/item/28/\"},{\"name\":\"max-revive\",\"url\":\"https://pokeapi.co/api/v2/item/29/\"},{\"name\":\"fresh-water\",\"url\":\"https://pokeapi.co/api/v2/item/30/\"},{\"name\":\"soda-pop\",\"url\":\"https://pokeapi.co/api/v2/item/31/\"},{\"name\":\"lemonade\",\"url\":\"https://pokeapi.co/api/v2/item/32/\"},{\"name\":\"moomoo-milk\",\"url\":\"https://pokeapi.co/api/v2/item/33/\"},{\"name\":\"energy-powder\",\"url\":\"https://pokeapi.co/api/v2/item/34/\"},{\"name\":\"energy-root\",\"url\":\"https://pokeapi.co/api/v2/item/35/\"},{\"name\":\"heal-powder\",\"url\":\"https://pokeapi.co/api/v2/item/36/\"},{\"name\":\"revival-herb\",\"url\":\"https://pokeapi.co/api/v2/item/37/\"},{\"name\":\"ether\",\"url\":\"https://pokeapi.co/api/v2/item/38/\"},{\"name\":\"max-ether\",\"url\":\"https://pokeapi.co/api/v2/item/39/\"},{\"name\":\"elixir\",\"url\":\"https://pokeapi.co/api/v2/item/40/\"},{\"name\":\"max-elixir\",\"url\":\"https://pokeapi.co/api/v2/item/41/\"},{\"name\":\"lava-cookie\",\"url\":\"https://pokeapi.co/api/v2/item/42/\"},{\"name\":\"berry-juice\",\"url\":\"https://pokeapi.co/api/v2/item/43/\"},{\"name\":\"sacred-ash\",\"url\":\"https://pokeapi.co/api/v2/item/44/\"},{\"name\":\"hp-up\",\"url\":\"https://pokeapi.co/api/v2/item/45/\"},{\"name\":\"protein\",\"url\":\"https://pokeapi.co/api/v2/item/46/\"},{\"name\":\"iron\",\"url\":\"https://pokeapi.co/api/v2/item/47/\"},{\"name\":\"carbos\",\"url\":\"https://pokeapi.co/api/v2/item/48/\"},{\"name\":\"calcium\",\"url\":\"https://pokeapi.co/api/v2/item/49/\"},{\"name\":\"rare-candy\",\"url\":\"https://pokeapi.co/api/v2/item/50/\"},{\"name\":\"pp-up\",\"url\":\"https://pokeapi.co/api/v2/item/51/\"},{\"name\":\"zinc\",\"url\":\"https://pokeapi.co/api/v2/item/52/\"},{\"name\":\"pp-max\",\"url\":\"https://pokeapi.co/api/v2/item/53/\"},{\"name\":\"old-gateau\",\"url\":\"https://pokeapi.co/api/v2/item/54/\"},{\"name\":\"guard-spec\",\"url\":\"https://pokeapi.co/api/v2/item/55/\"},{\"name\":\"dire-hit\",\"url\":\"https://pokeapi.co/api/v2/item/56/\"},{\"name\":\"x-attack\",\"url\":\"https://pokeapi.co/api/v2/item/57/\"},{\"name\":\"x-defense\",\"url\":\"https://pokeapi.co/api/v2/item/58/\"},{\"name\":\"x-speed\",\"url\":\"https://pokeapi.co/api/v2/item/59/\"},{\"name\":\"x-accuracy\",\"url\":\"https://pokeapi.co/api/v2/item/60/\"},{\"name\":\"x-sp-atk\",\"url\":\"https://pokeapi.co/api/v2/item/61/\"},{\"name\":\"x-sp-def\",\"url\":\"https://pokeapi.co/api/v2/item/62/\"},{\"name\":\"poke-doll\",\"url\":\"https://pokeapi.co/api/v2/item/63/\"},{\"name\":\"fluffy-tail\",\"url\":\"https://pokeapi.co/api/v2/item/64/\"},{\"name\":\"blue-flute\",\"url\":\"https://pokeapi.co/api/v2/item/65/\"},{\"name\":\"yellow-flute\",\"url\":\"https://pokeapi.co/api/v2/item/66/\"},{\"name\":\"red-flute\",\"url\":\"https://pokeapi.co/api/v2/item/67/\"},{\"name\":\"black-flute\",\"url\":\"https://pokeapi.co/api/v2/item/68/\"},{\"name\":\"white-flute\",\"url\":\"https://pokeapi.co/api/v2/item/69/\"},{\"name\":\"shoal-salt\",\"url\":\"https://pokeapi.co/api/v2/item/70/\"},{\"name\":\"shoal-shell\",\"url\":\"https://pokeapi.co/api/v2/item/71/\"}],\"name\":\"countable\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Countable\"}]}","asText":null}}},"tags":[]},{"uuid":"d1779ae6-b4d4-4e26-9dcb-4842fbc63897","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-attribute/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,80,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,64,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,235,29,10,5,105,116,101,109,115,18,225,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Usable by a Pokémon when held\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":7,\"items\":[{\"name\":\"cheri-berry\",\"url\":\"https://pokeapi.co/api/v2/item/126/\"},{\"name\":\"chesto-berry\",\"url\":\"https://pokeapi.co/api/v2/item/127/\"},{\"name\":\"pecha-berry\",\"url\":\"https://pokeapi.co/api/v2/item/128/\"},{\"name\":\"rawst-berry\",\"url\":\"https://pokeapi.co/api/v2/item/129/\"},{\"name\":\"aspear-berry\",\"url\":\"https://pokeapi.co/api/v2/item/130/\"},{\"name\":\"leppa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/131/\"},{\"name\":\"oran-berry\",\"url\":\"https://pokeapi.co/api/v2/item/132/\"},{\"name\":\"persim-berry\",\"url\":\"https://pokeapi.co/api/v2/item/133/\"},{\"name\":\"lum-berry\",\"url\":\"https://pokeapi.co/api/v2/item/134/\"},{\"name\":\"sitrus-berry\",\"url\":\"https://pokeapi.co/api/v2/item/135/\"},{\"name\":\"figy-berry\",\"url\":\"https://pokeapi.co/api/v2/item/136/\"},{\"name\":\"wiki-berry\",\"url\":\"https://pokeapi.co/api/v2/item/137/\"},{\"name\":\"mago-berry\",\"url\":\"https://pokeapi.co/api/v2/item/138/\"},{\"name\":\"aguav-berry\",\"url\":\"https://pokeapi.co/api/v2/item/139/\"},{\"name\":\"iapapa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/140/\"},{\"name\":\"occa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/161/\"},{\"name\":\"passho-berry\",\"url\":\"https://pokeapi.co/api/v2/item/162/\"},{\"name\":\"wacan-berry\",\"url\":\"https://pokeapi.co/api/v2/item/163/\"},{\"name\":\"rindo-berry\",\"url\":\"https://pokeapi.co/api/v2/item/164/\"},{\"name\":\"yache-berry\",\"url\":\"https://pokeapi.co/api/v2/item/165/\"},{\"name\":\"chople-berry\",\"url\":\"https://pokeapi.co/api/v2/item/166/\"},{\"name\":\"kebia-berry\",\"url\":\"https://pokeapi.co/api/v2/item/167/\"},{\"name\":\"shuca-berry\",\"url\":\"https://pokeapi.co/api/v2/item/168/\"},{\"name\":\"coba-berry\",\"url\":\"https://pokeapi.co/api/v2/item/169/\"},{\"name\":\"payapa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/170/\"},{\"name\":\"tanga-berry\",\"url\":\"https://pokeapi.co/api/v2/item/171/\"},{\"name\":\"charti-berry\",\"url\":\"https://pokeapi.co/api/v2/item/172/\"},{\"name\":\"kasib-berry\",\"url\":\"https://pokeapi.co/api/v2/item/173/\"},{\"name\":\"haban-berry\",\"url\":\"https://pokeapi.co/api/v2/item/174/\"},{\"name\":\"colbur-berry\",\"url\":\"https://pokeapi.co/api/v2/item/175/\"},{\"name\":\"babiri-berry\",\"url\":\"https://pokeapi.co/api/v2/item/176/\"},{\"name\":\"chilan-berry\",\"url\":\"https://pokeapi.co/api/v2/item/177/\"},{\"name\":\"liechi-berry\",\"url\":\"https://pokeapi.co/api/v2/item/178/\"},{\"name\":\"ganlon-berry\",\"url\":\"https://pokeapi.co/api/v2/item/179/\"},{\"name\":\"salac-berry\",\"url\":\"https://pokeapi.co/api/v2/item/180/\"},{\"name\":\"petaya-berry\",\"url\":\"https://pokeapi.co/api/v2/item/181/\"},{\"name\":\"apicot-berry\",\"url\":\"https://pokeapi.co/api/v2/item/182/\"},{\"name\":\"lansat-berry\",\"url\":\"https://pokeapi.co/api/v2/item/183/\"},{\"name\":\"starf-berry\",\"url\":\"https://pokeapi.co/api/v2/item/184/\"},{\"name\":\"enigma-berry\",\"url\":\"https://pokeapi.co/api/v2/item/185/\"},{\"name\":\"micle-berry\",\"url\":\"https://pokeapi.co/api/v2/item/186/\"},{\"name\":\"custap-berry\",\"url\":\"https://pokeapi.co/api/v2/item/187/\"},{\"name\":\"jaboca-berry\",\"url\":\"https://pokeapi.co/api/v2/item/188/\"},{\"name\":\"rowap-berry\",\"url\":\"https://pokeapi.co/api/v2/item/189/\"},{\"name\":\"bright-powder\",\"url\":\"https://pokeapi.co/api/v2/item/190/\"},{\"name\":\"white-herb\",\"url\":\"https://pokeapi.co/api/v2/item/191/\"},{\"name\":\"macho-brace\",\"url\":\"https://pokeapi.co/api/v2/item/192/\"},{\"name\":\"exp-share\",\"url\":\"https://pokeapi.co/api/v2/item/193/\"},{\"name\":\"quick-claw\",\"url\":\"https://pokeapi.co/api/v2/item/194/\"},{\"name\":\"soothe-bell\",\"url\":\"https://pokeapi.co/api/v2/item/195/\"},{\"name\":\"mental-herb\",\"url\":\"https://pokeapi.co/api/v2/item/196/\"},{\"name\":\"choice-band\",\"url\":\"https://pokeapi.co/api/v2/item/197/\"},{\"name\":\"kings-rock\",\"url\":\"https://pokeapi.co/api/v2/item/198/\"},{\"name\":\"silver-powder\",\"url\":\"https://pokeapi.co/api/v2/item/199/\"},{\"name\":\"amulet-coin\",\"url\":\"https://pokeapi.co/api/v2/item/200/\"},{\"name\":\"smoke-ball\",\"url\":\"https://pokeapi.co/api/v2/item/205/\"},{\"name\":\"everstone\",\"url\":\"https://pokeapi.co/api/v2/item/206/\"},{\"name\":\"focus-band\",\"url\":\"https://pokeapi.co/api/v2/item/207/\"},{\"name\":\"lucky-egg\",\"url\":\"https://pokeapi.co/api/v2/item/208/\"},{\"name\":\"scope-lens\",\"url\":\"https://pokeapi.co/api/v2/item/209/\"},{\"name\":\"metal-coat\",\"url\":\"https://pokeapi.co/api/v2/item/210/\"},{\"name\":\"leftovers\",\"url\":\"https://pokeapi.co/api/v2/item/211/\"},{\"name\":\"soft-sand\",\"url\":\"https://pokeapi.co/api/v2/item/214/\"},{\"name\":\"hard-stone\",\"url\":\"https://pokeapi.co/api/v2/item/215/\"},{\"name\":\"miracle-seed\",\"url\":\"https://pokeapi.co/api/v2/item/216/\"},{\"name\":\"black-glasses\",\"url\":\"https://pokeapi.co/api/v2/item/217/\"},{\"name\":\"black-belt\",\"url\":\"https://pokeapi.co/api/v2/item/218/\"},{\"name\":\"magnet\",\"url\":\"https://pokeapi.co/api/v2/item/219/\"},{\"name\":\"mystic-water\",\"url\":\"https://pokeapi.co/api/v2/item/220/\"},{\"name\":\"sharp-beak\",\"url\":\"https://pokeapi.co/api/v2/item/221/\"},{\"name\":\"poison-barb\",\"url\":\"https://pokeapi.co/api/v2/item/222/\"},{\"name\":\"never-melt-ice\",\"url\":\"https://pokeapi.co/api/v2/item/223/\"},{\"name\":\"spell-tag\",\"url\":\"https://pokeapi.co/api/v2/item/224/\"},{\"name\":\"twisted-spoon\",\"url\":\"https://pokeapi.co/api/v2/item/225/\"},{\"name\":\"charcoal\",\"url\":\"https://pokeapi.co/api/v2/item/226/\"},{\"name\":\"dragon-fang\",\"url\":\"https://pokeapi.co/api/v2/item/227/\"},{\"name\":\"silk-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/228/\"},{\"name\":\"shell-bell\",\"url\":\"https://pokeapi.co/api/v2/item/230/\"},{\"name\":\"sea-incense\",\"url\":\"https://pokeapi.co/api/v2/item/231/\"},{\"name\":\"lax-incense\",\"url\":\"https://pokeapi.co/api/v2/item/232/\"},{\"name\":\"red-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/237/\"},{\"name\":\"blue-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/238/\"},{\"name\":\"pink-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/239/\"},{\"name\":\"green-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/240/\"},{\"name\":\"yellow-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/241/\"},{\"name\":\"wide-lens\",\"url\":\"https://pokeapi.co/api/v2/item/242/\"},{\"name\":\"muscle-band\",\"url\":\"https://pokeapi.co/api/v2/item/243/\"},{\"name\":\"wise-glasses\",\"url\":\"https://pokeapi.co/api/v2/item/244/\"},{\"name\":\"expert-belt\",\"url\":\"https://pokeapi.co/api/v2/item/245/\"},{\"name\":\"light-clay\",\"url\":\"https://pokeapi.co/api/v2/item/246/\"},{\"name\":\"life-orb\",\"url\":\"https://pokeapi.co/api/v2/item/247/\"},{\"name\":\"power-herb\",\"url\":\"https://pokeapi.co/api/v2/item/248/\"},{\"name\":\"toxic-orb\",\"url\":\"https://pokeapi.co/api/v2/item/249/\"},{\"name\":\"flame-orb\",\"url\":\"https://pokeapi.co/api/v2/item/250/\"},{\"name\":\"focus-sash\",\"url\":\"https://pokeapi.co/api/v2/item/252/\"},{\"name\":\"zoom-lens\",\"url\":\"https://pokeapi.co/api/v2/item/253/\"},{\"name\":\"metronome\",\"url\":\"https://pokeapi.co/api/v2/item/254/\"},{\"name\":\"iron-ball\",\"url\":\"https://pokeapi.co/api/v2/item/255/\"},{\"name\":\"lagging-tail\",\"url\":\"https://pokeapi.co/api/v2/item/256/\"},{\"name\":\"destiny-knot\",\"url\":\"https://pokeapi.co/api/v2/item/257/\"},{\"name\":\"black-sludge\",\"url\":\"https://pokeapi.co/api/v2/item/258/\"},{\"name\":\"icy-rock\",\"url\":\"https://pokeapi.co/api/v2/item/259/\"},{\"name\":\"smooth-rock\",\"url\":\"https://pokeapi.co/api/v2/item/260/\"},{\"name\":\"heat-rock\",\"url\":\"https://pokeapi.co/api/v2/item/261/\"},{\"name\":\"damp-rock\",\"url\":\"https://pokeapi.co/api/v2/item/262/\"},{\"name\":\"grip-claw\",\"url\":\"https://pokeapi.co/api/v2/item/263/\"},{\"name\":\"choice-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/264/\"},{\"name\":\"sticky-barb\",\"url\":\"https://pokeapi.co/api/v2/item/265/\"},{\"name\":\"power-bracer\",\"url\":\"https://pokeapi.co/api/v2/item/266/\"},{\"name\":\"power-belt\",\"url\":\"https://pokeapi.co/api/v2/item/267/\"},{\"name\":\"power-lens\",\"url\":\"https://pokeapi.co/api/v2/item/268/\"},{\"name\":\"power-band\",\"url\":\"https://pokeapi.co/api/v2/item/269/\"},{\"name\":\"power-anklet\",\"url\":\"https://pokeapi.co/api/v2/item/270/\"},{\"name\":\"power-weight\",\"url\":\"https://pokeapi.co/api/v2/item/271/\"},{\"name\":\"shed-shell\",\"url\":\"https://pokeapi.co/api/v2/item/272/\"},{\"name\":\"big-root\",\"url\":\"https://pokeapi.co/api/v2/item/273/\"},{\"name\":\"choice-specs\",\"url\":\"https://pokeapi.co/api/v2/item/274/\"},{\"name\":\"flame-plate\",\"url\":\"https://pokeapi.co/api/v2/item/275/\"},{\"name\":\"splash-plate\",\"url\":\"https://pokeapi.co/api/v2/item/276/\"},{\"name\":\"zap-plate\",\"url\":\"https://pokeapi.co/api/v2/item/277/\"},{\"name\":\"meadow-plate\",\"url\":\"https://pokeapi.co/api/v2/item/278/\"},{\"name\":\"icicle-plate\",\"url\":\"https://pokeapi.co/api/v2/item/279/\"},{\"name\":\"fist-plate\",\"url\":\"https://pokeapi.co/api/v2/item/280/\"},{\"name\":\"toxic-plate\",\"url\":\"https://pokeapi.co/api/v2/item/281/\"},{\"name\":\"earth-plate\",\"url\":\"https://pokeapi.co/api/v2/item/282/\"},{\"name\":\"sky-plate\",\"url\":\"https://pokeapi.co/api/v2/item/283/\"},{\"name\":\"mind-plate\",\"url\":\"https://pokeapi.co/api/v2/item/284/\"},{\"name\":\"insect-plate\",\"url\":\"https://pokeapi.co/api/v2/item/285/\"},{\"name\":\"stone-plate\",\"url\":\"https://pokeapi.co/api/v2/item/286/\"},{\"name\":\"spooky-plate\",\"url\":\"https://pokeapi.co/api/v2/item/287/\"},{\"name\":\"draco-plate\",\"url\":\"https://pokeapi.co/api/v2/item/288/\"},{\"name\":\"dread-plate\",\"url\":\"https://pokeapi.co/api/v2/item/289/\"},{\"name\":\"iron-plate\",\"url\":\"https://pokeapi.co/api/v2/item/290/\"},{\"name\":\"odd-incense\",\"url\":\"https://pokeapi.co/api/v2/item/291/\"},{\"name\":\"rock-incense\",\"url\":\"https://pokeapi.co/api/v2/item/292/\"},{\"name\":\"full-incense\",\"url\":\"https://pokeapi.co/api/v2/item/293/\"},{\"name\":\"wave-incense\",\"url\":\"https://pokeapi.co/api/v2/item/294/\"},{\"name\":\"rose-incense\",\"url\":\"https://pokeapi.co/api/v2/item/295/\"},{\"name\":\"luck-incense\",\"url\":\"https://pokeapi.co/api/v2/item/296/\"},{\"name\":\"razor-claw\",\"url\":\"https://pokeapi.co/api/v2/item/303/\"},{\"name\":\"razor-fang\",\"url\":\"https://pokeapi.co/api/v2/item/304/\"}],\"name\":\"holdable-active\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Holdable_active\"}]}","asText":null}}},"tags":[]},{"uuid":"7294ef1e-a81b-4107-ae6c-b19aedcadda1","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-attribute/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,80,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,64,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,223,8,10,5,105,116,101,109,115,18,213,8,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Usable outside battle\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":3,\"items\":[{\"name\":\"potion\",\"url\":\"https://pokeapi.co/api/v2/item/17/\"},{\"name\":\"antidote\",\"url\":\"https://pokeapi.co/api/v2/item/18/\"},{\"name\":\"burn-heal\",\"url\":\"https://pokeapi.co/api/v2/item/19/\"},{\"name\":\"ice-heal\",\"url\":\"https://pokeapi.co/api/v2/item/20/\"},{\"name\":\"awakening\",\"url\":\"https://pokeapi.co/api/v2/item/21/\"},{\"name\":\"paralyze-heal\",\"url\":\"https://pokeapi.co/api/v2/item/22/\"},{\"name\":\"full-restore\",\"url\":\"https://pokeapi.co/api/v2/item/23/\"},{\"name\":\"max-potion\",\"url\":\"https://pokeapi.co/api/v2/item/24/\"},{\"name\":\"hyper-potion\",\"url\":\"https://pokeapi.co/api/v2/item/25/\"},{\"name\":\"super-potion\",\"url\":\"https://pokeapi.co/api/v2/item/26/\"},{\"name\":\"full-heal\",\"url\":\"https://pokeapi.co/api/v2/item/27/\"},{\"name\":\"revive\",\"url\":\"https://pokeapi.co/api/v2/item/28/\"},{\"name\":\"max-revive\",\"url\":\"https://pokeapi.co/api/v2/item/29/\"},{\"name\":\"fresh-water\",\"url\":\"https://pokeapi.co/api/v2/item/30/\"},{\"name\":\"soda-pop\",\"url\":\"https://pokeapi.co/api/v2/item/31/\"},{\"name\":\"lemonade\",\"url\":\"https://pokeapi.co/api/v2/item/32/\"},{\"name\":\"moomoo-milk\",\"url\":\"https://pokeapi.co/api/v2/item/33/\"},{\"name\":\"energy-powder\",\"url\":\"https://pokeapi.co/api/v2/item/34/\"},{\"name\":\"energy-root\",\"url\":\"https://pokeapi.co/api/v2/item/35/\"},{\"name\":\"heal-powder\",\"url\":\"https://pokeapi.co/api/v2/item/36/\"},{\"name\":\"revival-herb\",\"url\":\"https://pokeapi.co/api/v2/item/37/\"},{\"name\":\"ether\",\"url\":\"https://pokeapi.co/api/v2/item/38/\"},{\"name\":\"max-ether\",\"url\":\"https://pokeapi.co/api/v2/item/39/\"},{\"name\":\"elixir\",\"url\":\"https://pokeapi.co/api/v2/item/40/\"},{\"name\":\"max-elixir\",\"url\":\"https://pokeapi.co/api/v2/item/41/\"},{\"name\":\"lava-cookie\",\"url\":\"https://pokeapi.co/api/v2/item/42/\"},{\"name\":\"berry-juice\",\"url\":\"https://pokeapi.co/api/v2/item/43/\"},{\"name\":\"sacred-ash\",\"url\":\"https://pokeapi.co/api/v2/item/44/\"},{\"name\":\"hp-up\",\"url\":\"https://pokeapi.co/api/v2/item/45/\"},{\"name\":\"protein\",\"url\":\"https://pokeapi.co/api/v2/item/46/\"},{\"name\":\"iron\",\"url\":\"https://pokeapi.co/api/v2/item/47/\"},{\"name\":\"carbos\",\"url\":\"https://pokeapi.co/api/v2/item/48/\"},{\"name\":\"calcium\",\"url\":\"https://pokeapi.co/api/v2/item/49/\"},{\"name\":\"rare-candy\",\"url\":\"https://pokeapi.co/api/v2/item/50/\"},{\"name\":\"pp-up\",\"url\":\"https://pokeapi.co/api/v2/item/51/\"},{\"name\":\"zinc\",\"url\":\"https://pokeapi.co/api/v2/item/52/\"},{\"name\":\"pp-max\",\"url\":\"https://pokeapi.co/api/v2/item/53/\"},{\"name\":\"old-gateau\",\"url\":\"https://pokeapi.co/api/v2/item/54/\"},{\"name\":\"blue-flute\",\"url\":\"https://pokeapi.co/api/v2/item/65/\"},{\"name\":\"black-flute\",\"url\":\"https://pokeapi.co/api/v2/item/68/\"},{\"name\":\"white-flute\",\"url\":\"https://pokeapi.co/api/v2/item/69/\"}],\"name\":\"usable-overworld\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Usable_overworld\"}]}","asText":null}}},"tags":[]},{"uuid":"cfbbe29b-eab2-44d1-84fd-f4080200a987","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-attribute/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,80,10,12,100,101,115,99,114,105,112,116,105,111,110,115,18,64,8,1,26,60,8,0,18,17,10,11,100,101,115,99,114,105,112,116,105,111,110,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,11,10,5,105,116,101,109,115,18,2,8,1,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"descriptions\":[{\"description\":\"Works passively when held\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":6,\"items\":[],\"name\":\"holdable-passive\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Holdable_passive\"}]}","asText":null}}},"tags":[]},{"uuid":"0fbd8904-7e11-41fa-9480-c0c74f3beaf8","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/location-area/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,170,4,10,7,114,101,115,117,108,116,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":651,\"next\":\"https://pokeapi.co/api/v2/location-area/?offset=20&limit=20\",\"previous\":null,\"results\":[{\"name\":\"canalave-city-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/1/\"},{\"name\":\"eterna-city-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/2/\"},{\"name\":\"pastoria-city-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/3/\"},{\"name\":\"sunyshore-city-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/4/\"},{\"name\":\"sinnoh-pokemon-league-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/5/\"},{\"name\":\"oreburgh-mine-1f\",\"url\":\"https://pokeapi.co/api/v2/location-area/6/\"},{\"name\":\"oreburgh-mine-b1f\",\"url\":\"https://pokeapi.co/api/v2/location-area/7/\"},{\"name\":\"valley-windworks-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/8/\"},{\"name\":\"eterna-forest-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/9/\"},{\"name\":\"fuego-ironworks-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/10/\"},{\"name\":\"mt-coronet-route-207\",\"url\":\"https://pokeapi.co/api/v2/location-area/11/\"},{\"name\":\"mt-coronet-2f\",\"url\":\"https://pokeapi.co/api/v2/location-area/12/\"},{\"name\":\"mt-coronet-3f\",\"url\":\"https://pokeapi.co/api/v2/location-area/13/\"},{\"name\":\"mt-coronet-snowfall\",\"url\":\"https://pokeapi.co/api/v2/location-area/14/\"},{\"name\":\"mt-coronet-blizzard\",\"url\":\"https://pokeapi.co/api/v2/location-area/15/\"},{\"name\":\"mt-coronet-4f\",\"url\":\"https://pokeapi.co/api/v2/location-area/16/\"},{\"name\":\"mt-coronet-5f\",\"url\":\"https://pokeapi.co/api/v2/location-area/17/\"},{\"name\":\"mt-coronet-6f\",\"url\":\"https://pokeapi.co/api/v2/location-area/18/\"},{\"name\":\"mt-coronet-7f\",\"url\":\"https://pokeapi.co/api/v2/location-area/19/\"},{\"name\":\"mt-coronet-cave\",\"url\":\"https://pokeapi.co/api/v2/location-area/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"9f6c37ef-444e-4ab0-b342-8bee104ce70e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,147,1,10,5,105,116,101,109,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":4,\"items\":[{\"name\":\"enigma-berry\",\"url\":\"https://pokeapi.co/api/v2/item/185/\"},{\"name\":\"jaboca-berry\",\"url\":\"https://pokeapi.co/api/v2/item/188/\"},{\"name\":\"rowap-berry\",\"url\":\"https://pokeapi.co/api/v2/item/189/\"},{\"name\":\"kee-berry\",\"url\":\"https://pokeapi.co/api/v2/item/724/\"},{\"name\":\"maranga-berry\",\"url\":\"https://pokeapi.co/api/v2/item/725/\"}],\"name\":\"other\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Other\"}],\"pocket\":{\"name\":\"berries\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/5/\"}}","asText":null}}},"tags":[]},{"uuid":"8b8d80ae-ed92-4e91-bddb-d4cc506d3b43","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,228,1,10,5,105,116,101,109,115,18,218,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":1,\"items\":[{\"name\":\"guard-spec\",\"url\":\"https://pokeapi.co/api/v2/item/55/\"},{\"name\":\"dire-hit\",\"url\":\"https://pokeapi.co/api/v2/item/56/\"},{\"name\":\"x-attack\",\"url\":\"https://pokeapi.co/api/v2/item/57/\"},{\"name\":\"x-defense\",\"url\":\"https://pokeapi.co/api/v2/item/58/\"},{\"name\":\"x-speed\",\"url\":\"https://pokeapi.co/api/v2/item/59/\"},{\"name\":\"x-accuracy\",\"url\":\"https://pokeapi.co/api/v2/item/60/\"},{\"name\":\"x-sp-atk\",\"url\":\"https://pokeapi.co/api/v2/item/61/\"},{\"name\":\"x-sp-def\",\"url\":\"https://pokeapi.co/api/v2/item/62/\"}],\"name\":\"stat-boosts\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Stat boosts\"}],\"pocket\":{\"name\":\"battle\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/7/\"}}","asText":null}}},"tags":[]},{"uuid":"785b367a-63a6-49ec-81e3-fcb42a0c6fb1","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,174,1,10,5,105,116,101,109,115,18,164,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":2,\"items\":[{\"name\":\"pomeg-berry\",\"url\":\"https://pokeapi.co/api/v2/item/146/\"},{\"name\":\"kelpsy-berry\",\"url\":\"https://pokeapi.co/api/v2/item/147/\"},{\"name\":\"qualot-berry\",\"url\":\"https://pokeapi.co/api/v2/item/148/\"},{\"name\":\"hondew-berry\",\"url\":\"https://pokeapi.co/api/v2/item/149/\"},{\"name\":\"grepa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/150/\"},{\"name\":\"tamato-berry\",\"url\":\"https://pokeapi.co/api/v2/item/151/\"}],\"name\":\"effort-drop\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Effort drop\"}],\"pocket\":{\"name\":\"berries\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/5/\"}}","asText":null}}},"tags":[]},{"uuid":"43bbd09f-d249-4290-8416-3f34f2219f43","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,255,1,10,5,105,116,101,109,115,18,245,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":5,\"items\":[{\"name\":\"liechi-berry\",\"url\":\"https://pokeapi.co/api/v2/item/178/\"},{\"name\":\"ganlon-berry\",\"url\":\"https://pokeapi.co/api/v2/item/179/\"},{\"name\":\"salac-berry\",\"url\":\"https://pokeapi.co/api/v2/item/180/\"},{\"name\":\"petaya-berry\",\"url\":\"https://pokeapi.co/api/v2/item/181/\"},{\"name\":\"apicot-berry\",\"url\":\"https://pokeapi.co/api/v2/item/182/\"},{\"name\":\"lansat-berry\",\"url\":\"https://pokeapi.co/api/v2/item/183/\"},{\"name\":\"starf-berry\",\"url\":\"https://pokeapi.co/api/v2/item/184/\"},{\"name\":\"micle-berry\",\"url\":\"https://pokeapi.co/api/v2/item/186/\"},{\"name\":\"custap-berry\",\"url\":\"https://pokeapi.co/api/v2/item/187/\"}],\"name\":\"in-a-pinch\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"In a pinch\"}],\"pocket\":{\"name\":\"berries\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/5/\"}}","asText":null}}},"tags":[]},{"uuid":"cc7e1113-ee09-45cb-8fe0-30c48d6031b3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,147,1,10,5,105,116,101,109,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":6,\"items\":[{\"name\":\"figy-berry\",\"url\":\"https://pokeapi.co/api/v2/item/136/\"},{\"name\":\"wiki-berry\",\"url\":\"https://pokeapi.co/api/v2/item/137/\"},{\"name\":\"mago-berry\",\"url\":\"https://pokeapi.co/api/v2/item/138/\"},{\"name\":\"aguav-berry\",\"url\":\"https://pokeapi.co/api/v2/item/139/\"},{\"name\":\"iapapa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/140/\"}],\"name\":\"picky-healing\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Picky healing\"}],\"pocket\":{\"name\":\"berries\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/5/\"}}","asText":null}}},"tags":[]},{"uuid":"82ad39e1-e7c1-42b9-95ca-98da8f488a8a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,134,3,10,5,105,116,101,109,115,18,252,2,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":8,\"items\":[{\"name\":\"razz-berry\",\"url\":\"https://pokeapi.co/api/v2/item/141/\"},{\"name\":\"bluk-berry\",\"url\":\"https://pokeapi.co/api/v2/item/142/\"},{\"name\":\"nanab-berry\",\"url\":\"https://pokeapi.co/api/v2/item/143/\"},{\"name\":\"wepear-berry\",\"url\":\"https://pokeapi.co/api/v2/item/144/\"},{\"name\":\"pinap-berry\",\"url\":\"https://pokeapi.co/api/v2/item/145/\"},{\"name\":\"cornn-berry\",\"url\":\"https://pokeapi.co/api/v2/item/152/\"},{\"name\":\"magost-berry\",\"url\":\"https://pokeapi.co/api/v2/item/153/\"},{\"name\":\"rabuta-berry\",\"url\":\"https://pokeapi.co/api/v2/item/154/\"},{\"name\":\"nomel-berry\",\"url\":\"https://pokeapi.co/api/v2/item/155/\"},{\"name\":\"spelon-berry\",\"url\":\"https://pokeapi.co/api/v2/item/156/\"},{\"name\":\"pamtre-berry\",\"url\":\"https://pokeapi.co/api/v2/item/157/\"},{\"name\":\"watmel-berry\",\"url\":\"https://pokeapi.co/api/v2/item/158/\"},{\"name\":\"durin-berry\",\"url\":\"https://pokeapi.co/api/v2/item/159/\"},{\"name\":\"belue-berry\",\"url\":\"https://pokeapi.co/api/v2/item/160/\"}],\"name\":\"baking-only\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Baking only\"}],\"pocket\":{\"name\":\"berries\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/5/\"}}","asText":null}}},"tags":[]},{"uuid":"7020c526-6400-4fda-8688-e944f977c3bb","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,195,4,10,5,105,116,101,109,115,18,185,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":10,\"items\":[{\"name\":\"sun-stone\",\"url\":\"https://pokeapi.co/api/v2/item/80/\"},{\"name\":\"moon-stone\",\"url\":\"https://pokeapi.co/api/v2/item/81/\"},{\"name\":\"fire-stone\",\"url\":\"https://pokeapi.co/api/v2/item/82/\"},{\"name\":\"thunder-stone\",\"url\":\"https://pokeapi.co/api/v2/item/83/\"},{\"name\":\"water-stone\",\"url\":\"https://pokeapi.co/api/v2/item/84/\"},{\"name\":\"leaf-stone\",\"url\":\"https://pokeapi.co/api/v2/item/85/\"},{\"name\":\"shiny-stone\",\"url\":\"https://pokeapi.co/api/v2/item/107/\"},{\"name\":\"dusk-stone\",\"url\":\"https://pokeapi.co/api/v2/item/108/\"},{\"name\":\"dawn-stone\",\"url\":\"https://pokeapi.co/api/v2/item/109/\"},{\"name\":\"oval-stone\",\"url\":\"https://pokeapi.co/api/v2/item/110/\"},{\"name\":\"dragon-scale\",\"url\":\"https://pokeapi.co/api/v2/item/212/\"},{\"name\":\"up-grade\",\"url\":\"https://pokeapi.co/api/v2/item/229/\"},{\"name\":\"protector\",\"url\":\"https://pokeapi.co/api/v2/item/298/\"},{\"name\":\"electirizer\",\"url\":\"https://pokeapi.co/api/v2/item/299/\"},{\"name\":\"magmarizer\",\"url\":\"https://pokeapi.co/api/v2/item/300/\"},{\"name\":\"dubious-disc\",\"url\":\"https://pokeapi.co/api/v2/item/301/\"},{\"name\":\"reaper-cloth\",\"url\":\"https://pokeapi.co/api/v2/item/302/\"},{\"name\":\"prism-scale\",\"url\":\"https://pokeapi.co/api/v2/item/580/\"},{\"name\":\"whipped-dream\",\"url\":\"https://pokeapi.co/api/v2/item/686/\"},{\"name\":\"sachet\",\"url\":\"https://pokeapi.co/api/v2/item/687/\"},{\"name\":\"ice-stone\",\"url\":\"https://pokeapi.co/api/v2/item/885/\"}],\"name\":\"evolution\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Evolution\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"cd34d130-42f0-4f7f-bed7-3390f79ba3fe","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,201,1,10,5,105,116,101,109,115,18,191,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":9,\"items\":[{\"name\":\"shoal-salt\",\"url\":\"https://pokeapi.co/api/v2/item/70/\"},{\"name\":\"shoal-shell\",\"url\":\"https://pokeapi.co/api/v2/item/71/\"},{\"name\":\"red-shard\",\"url\":\"https://pokeapi.co/api/v2/item/72/\"},{\"name\":\"blue-shard\",\"url\":\"https://pokeapi.co/api/v2/item/73/\"},{\"name\":\"yellow-shard\",\"url\":\"https://pokeapi.co/api/v2/item/74/\"},{\"name\":\"green-shard\",\"url\":\"https://pokeapi.co/api/v2/item/75/\"},{\"name\":\"heart-scale\",\"url\":\"https://pokeapi.co/api/v2/item/93/\"}],\"name\":\"collectibles\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Collectibles\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"943abf92-648b-49fd-ab29-c012dae30245","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,255,1,10,5,105,116,101,109,115,18,245,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":11,\"items\":[{\"name\":\"poke-doll\",\"url\":\"https://pokeapi.co/api/v2/item/63/\"},{\"name\":\"fluffy-tail\",\"url\":\"https://pokeapi.co/api/v2/item/64/\"},{\"name\":\"black-flute\",\"url\":\"https://pokeapi.co/api/v2/item/68/\"},{\"name\":\"white-flute\",\"url\":\"https://pokeapi.co/api/v2/item/69/\"},{\"name\":\"super-repel\",\"url\":\"https://pokeapi.co/api/v2/item/76/\"},{\"name\":\"max-repel\",\"url\":\"https://pokeapi.co/api/v2/item/77/\"},{\"name\":\"escape-rope\",\"url\":\"https://pokeapi.co/api/v2/item/78/\"},{\"name\":\"repel\",\"url\":\"https://pokeapi.co/api/v2/item/79/\"},{\"name\":\"poke-toy\",\"url\":\"https://pokeapi.co/api/v2/item/618/\"}],\"name\":\"spelunking\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Spelunking\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"5940e27c-668e-40de-bed8-b63d233b6e5c","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,154,2,10,5,105,116,101,109,115,18,144,2,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":3,\"items\":[{\"name\":\"cheri-berry\",\"url\":\"https://pokeapi.co/api/v2/item/126/\"},{\"name\":\"chesto-berry\",\"url\":\"https://pokeapi.co/api/v2/item/127/\"},{\"name\":\"pecha-berry\",\"url\":\"https://pokeapi.co/api/v2/item/128/\"},{\"name\":\"rawst-berry\",\"url\":\"https://pokeapi.co/api/v2/item/129/\"},{\"name\":\"aspear-berry\",\"url\":\"https://pokeapi.co/api/v2/item/130/\"},{\"name\":\"leppa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/131/\"},{\"name\":\"oran-berry\",\"url\":\"https://pokeapi.co/api/v2/item/132/\"},{\"name\":\"persim-berry\",\"url\":\"https://pokeapi.co/api/v2/item/133/\"},{\"name\":\"lum-berry\",\"url\":\"https://pokeapi.co/api/v2/item/134/\"},{\"name\":\"sitrus-berry\",\"url\":\"https://pokeapi.co/api/v2/item/135/\"}],\"name\":\"medicine\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Medicine\"}],\"pocket\":{\"name\":\"berries\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/5/\"}}","asText":null}}},"tags":[]},{"uuid":"b463bdde-7b28-495b-a907-fe3a722312c2","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/17/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,215,3,10,5,105,116,101,109,115,18,205,3,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":17,\"items\":[{\"name\":\"flame-plate\",\"url\":\"https://pokeapi.co/api/v2/item/275/\"},{\"name\":\"splash-plate\",\"url\":\"https://pokeapi.co/api/v2/item/276/\"},{\"name\":\"zap-plate\",\"url\":\"https://pokeapi.co/api/v2/item/277/\"},{\"name\":\"meadow-plate\",\"url\":\"https://pokeapi.co/api/v2/item/278/\"},{\"name\":\"icicle-plate\",\"url\":\"https://pokeapi.co/api/v2/item/279/\"},{\"name\":\"fist-plate\",\"url\":\"https://pokeapi.co/api/v2/item/280/\"},{\"name\":\"toxic-plate\",\"url\":\"https://pokeapi.co/api/v2/item/281/\"},{\"name\":\"earth-plate\",\"url\":\"https://pokeapi.co/api/v2/item/282/\"},{\"name\":\"sky-plate\",\"url\":\"https://pokeapi.co/api/v2/item/283/\"},{\"name\":\"mind-plate\",\"url\":\"https://pokeapi.co/api/v2/item/284/\"},{\"name\":\"insect-plate\",\"url\":\"https://pokeapi.co/api/v2/item/285/\"},{\"name\":\"stone-plate\",\"url\":\"https://pokeapi.co/api/v2/item/286/\"},{\"name\":\"spooky-plate\",\"url\":\"https://pokeapi.co/api/v2/item/287/\"},{\"name\":\"draco-plate\",\"url\":\"https://pokeapi.co/api/v2/item/288/\"},{\"name\":\"dread-plate\",\"url\":\"https://pokeapi.co/api/v2/item/289/\"},{\"name\":\"iron-plate\",\"url\":\"https://pokeapi.co/api/v2/item/290/\"},{\"name\":\"pixie-plate\",\"url\":\"https://pokeapi.co/api/v2/item/684/\"}],\"name\":\"plates\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Plates\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"baa3921e-f1d4-410e-8ae8-4294cd8d83ca","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/18/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,168,4,10,5,105,116,101,109,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":18,\"items\":[{\"name\":\"adamant-orb\",\"url\":\"https://pokeapi.co/api/v2/item/112/\"},{\"name\":\"lustrous-orb\",\"url\":\"https://pokeapi.co/api/v2/item/113/\"},{\"name\":\"soul-dew\",\"url\":\"https://pokeapi.co/api/v2/item/202/\"},{\"name\":\"deep-sea-tooth\",\"url\":\"https://pokeapi.co/api/v2/item/203/\"},{\"name\":\"deep-sea-scale\",\"url\":\"https://pokeapi.co/api/v2/item/204/\"},{\"name\":\"light-ball\",\"url\":\"https://pokeapi.co/api/v2/item/213/\"},{\"name\":\"lucky-punch\",\"url\":\"https://pokeapi.co/api/v2/item/233/\"},{\"name\":\"metal-powder\",\"url\":\"https://pokeapi.co/api/v2/item/234/\"},{\"name\":\"thick-club\",\"url\":\"https://pokeapi.co/api/v2/item/235/\"},{\"name\":\"stick\",\"url\":\"https://pokeapi.co/api/v2/item/236/\"},{\"name\":\"quick-powder\",\"url\":\"https://pokeapi.co/api/v2/item/251/\"},{\"name\":\"griseous-orb\",\"url\":\"https://pokeapi.co/api/v2/item/442/\"},{\"name\":\"douse-drive\",\"url\":\"https://pokeapi.co/api/v2/item/563/\"},{\"name\":\"shock-drive\",\"url\":\"https://pokeapi.co/api/v2/item/564/\"},{\"name\":\"burn-drive\",\"url\":\"https://pokeapi.co/api/v2/item/565/\"},{\"name\":\"chill-drive\",\"url\":\"https://pokeapi.co/api/v2/item/566/\"},{\"name\":\"red-nectar\",\"url\":\"https://pokeapi.co/api/v2/item/889/\"},{\"name\":\"yellow-nectar\",\"url\":\"https://pokeapi.co/api/v2/item/890/\"},{\"name\":\"pink-nectar\",\"url\":\"https://pokeapi.co/api/v2/item/891/\"},{\"name\":\"purple-nectar\",\"url\":\"https://pokeapi.co/api/v2/item/892/\"}],\"name\":\"species-specific\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Species-specific\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"f41769a3-ceac-49b2-86b7-fb94e316c853","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/15/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,174,1,10,5,105,116,101,109,115,18,164,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":15,\"items\":[{\"name\":\"toxic-orb\",\"url\":\"https://pokeapi.co/api/v2/item/249/\"},{\"name\":\"flame-orb\",\"url\":\"https://pokeapi.co/api/v2/item/250/\"},{\"name\":\"iron-ball\",\"url\":\"https://pokeapi.co/api/v2/item/255/\"},{\"name\":\"lagging-tail\",\"url\":\"https://pokeapi.co/api/v2/item/256/\"},{\"name\":\"sticky-barb\",\"url\":\"https://pokeapi.co/api/v2/item/265/\"},{\"name\":\"full-incense\",\"url\":\"https://pokeapi.co/api/v2/item/293/\"}],\"name\":\"bad-held-items\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Bad held items\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"c2fce460-d8ca-4120-9fdd-3ebef9519b0b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,217,11,10,5,105,116,101,109,115,18,207,11,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":12,\"items\":[{\"name\":\"bright-powder\",\"url\":\"https://pokeapi.co/api/v2/item/190/\"},{\"name\":\"white-herb\",\"url\":\"https://pokeapi.co/api/v2/item/191/\"},{\"name\":\"quick-claw\",\"url\":\"https://pokeapi.co/api/v2/item/194/\"},{\"name\":\"mental-herb\",\"url\":\"https://pokeapi.co/api/v2/item/196/\"},{\"name\":\"kings-rock\",\"url\":\"https://pokeapi.co/api/v2/item/198/\"},{\"name\":\"smoke-ball\",\"url\":\"https://pokeapi.co/api/v2/item/205/\"},{\"name\":\"focus-band\",\"url\":\"https://pokeapi.co/api/v2/item/207/\"},{\"name\":\"scope-lens\",\"url\":\"https://pokeapi.co/api/v2/item/209/\"},{\"name\":\"leftovers\",\"url\":\"https://pokeapi.co/api/v2/item/211/\"},{\"name\":\"shell-bell\",\"url\":\"https://pokeapi.co/api/v2/item/230/\"},{\"name\":\"lax-incense\",\"url\":\"https://pokeapi.co/api/v2/item/232/\"},{\"name\":\"wide-lens\",\"url\":\"https://pokeapi.co/api/v2/item/242/\"},{\"name\":\"muscle-band\",\"url\":\"https://pokeapi.co/api/v2/item/243/\"},{\"name\":\"wise-glasses\",\"url\":\"https://pokeapi.co/api/v2/item/244/\"},{\"name\":\"expert-belt\",\"url\":\"https://pokeapi.co/api/v2/item/245/\"},{\"name\":\"light-clay\",\"url\":\"https://pokeapi.co/api/v2/item/246/\"},{\"name\":\"life-orb\",\"url\":\"https://pokeapi.co/api/v2/item/247/\"},{\"name\":\"power-herb\",\"url\":\"https://pokeapi.co/api/v2/item/248/\"},{\"name\":\"focus-sash\",\"url\":\"https://pokeapi.co/api/v2/item/252/\"},{\"name\":\"zoom-lens\",\"url\":\"https://pokeapi.co/api/v2/item/253/\"},{\"name\":\"metronome\",\"url\":\"https://pokeapi.co/api/v2/item/254/\"},{\"name\":\"destiny-knot\",\"url\":\"https://pokeapi.co/api/v2/item/257/\"},{\"name\":\"black-sludge\",\"url\":\"https://pokeapi.co/api/v2/item/258/\"},{\"name\":\"icy-rock\",\"url\":\"https://pokeapi.co/api/v2/item/259/\"},{\"name\":\"smooth-rock\",\"url\":\"https://pokeapi.co/api/v2/item/260/\"},{\"name\":\"heat-rock\",\"url\":\"https://pokeapi.co/api/v2/item/261/\"},{\"name\":\"damp-rock\",\"url\":\"https://pokeapi.co/api/v2/item/262/\"},{\"name\":\"grip-claw\",\"url\":\"https://pokeapi.co/api/v2/item/263/\"},{\"name\":\"shed-shell\",\"url\":\"https://pokeapi.co/api/v2/item/272/\"},{\"name\":\"big-root\",\"url\":\"https://pokeapi.co/api/v2/item/273/\"},{\"name\":\"razor-claw\",\"url\":\"https://pokeapi.co/api/v2/item/303/\"},{\"name\":\"razor-fang\",\"url\":\"https://pokeapi.co/api/v2/item/304/\"},{\"name\":\"eviolite\",\"url\":\"https://pokeapi.co/api/v2/item/581/\"},{\"name\":\"float-stone\",\"url\":\"https://pokeapi.co/api/v2/item/582/\"},{\"name\":\"rocky-helmet\",\"url\":\"https://pokeapi.co/api/v2/item/583/\"},{\"name\":\"air-balloon\",\"url\":\"https://pokeapi.co/api/v2/item/584/\"},{\"name\":\"red-card\",\"url\":\"https://pokeapi.co/api/v2/item/585/\"},{\"name\":\"ring-target\",\"url\":\"https://pokeapi.co/api/v2/item/586/\"},{\"name\":\"binding-band\",\"url\":\"https://pokeapi.co/api/v2/item/587/\"},{\"name\":\"absorb-bulb\",\"url\":\"https://pokeapi.co/api/v2/item/588/\"},{\"name\":\"cell-battery\",\"url\":\"https://pokeapi.co/api/v2/item/589/\"},{\"name\":\"eject-button\",\"url\":\"https://pokeapi.co/api/v2/item/590/\"},{\"name\":\"pass-orb\",\"url\":\"https://pokeapi.co/api/v2/item/616/\"},{\"name\":\"weakness-policy\",\"url\":\"https://pokeapi.co/api/v2/item/682/\"},{\"name\":\"assault-vest\",\"url\":\"https://pokeapi.co/api/v2/item/683/\"},{\"name\":\"luminous-moss\",\"url\":\"https://pokeapi.co/api/v2/item/688/\"},{\"name\":\"snowball\",\"url\":\"https://pokeapi.co/api/v2/item/689/\"},{\"name\":\"safety-goggles\",\"url\":\"https://pokeapi.co/api/v2/item/690/\"},{\"name\":\"adrenaline-orb\",\"url\":\"https://pokeapi.co/api/v2/item/883/\"},{\"name\":\"terrain-extender\",\"url\":\"https://pokeapi.co/api/v2/item/896/\"},{\"name\":\"protective-pads\",\"url\":\"https://pokeapi.co/api/v2/item/897/\"},{\"name\":\"electric-seed\",\"url\":\"https://pokeapi.co/api/v2/item/898/\"},{\"name\":\"psychic-seed\",\"url\":\"https://pokeapi.co/api/v2/item/899/\"},{\"name\":\"misty-seed\",\"url\":\"https://pokeapi.co/api/v2/item/900/\"},{\"name\":\"grassy-seed\",\"url\":\"https://pokeapi.co/api/v2/item/901/\"}],\"name\":\"held-items\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Held items\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"ac9338ed-4107-45c9-a8d8-81a78e92542c","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/19/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,222,4,10,5,105,116,101,109,115,18,212,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":19,\"items\":[{\"name\":\"silver-powder\",\"url\":\"https://pokeapi.co/api/v2/item/199/\"},{\"name\":\"metal-coat\",\"url\":\"https://pokeapi.co/api/v2/item/210/\"},{\"name\":\"soft-sand\",\"url\":\"https://pokeapi.co/api/v2/item/214/\"},{\"name\":\"hard-stone\",\"url\":\"https://pokeapi.co/api/v2/item/215/\"},{\"name\":\"miracle-seed\",\"url\":\"https://pokeapi.co/api/v2/item/216/\"},{\"name\":\"black-glasses\",\"url\":\"https://pokeapi.co/api/v2/item/217/\"},{\"name\":\"black-belt\",\"url\":\"https://pokeapi.co/api/v2/item/218/\"},{\"name\":\"magnet\",\"url\":\"https://pokeapi.co/api/v2/item/219/\"},{\"name\":\"mystic-water\",\"url\":\"https://pokeapi.co/api/v2/item/220/\"},{\"name\":\"sharp-beak\",\"url\":\"https://pokeapi.co/api/v2/item/221/\"},{\"name\":\"poison-barb\",\"url\":\"https://pokeapi.co/api/v2/item/222/\"},{\"name\":\"never-melt-ice\",\"url\":\"https://pokeapi.co/api/v2/item/223/\"},{\"name\":\"spell-tag\",\"url\":\"https://pokeapi.co/api/v2/item/224/\"},{\"name\":\"twisted-spoon\",\"url\":\"https://pokeapi.co/api/v2/item/225/\"},{\"name\":\"charcoal\",\"url\":\"https://pokeapi.co/api/v2/item/226/\"},{\"name\":\"dragon-fang\",\"url\":\"https://pokeapi.co/api/v2/item/227/\"},{\"name\":\"silk-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/228/\"},{\"name\":\"sea-incense\",\"url\":\"https://pokeapi.co/api/v2/item/231/\"},{\"name\":\"odd-incense\",\"url\":\"https://pokeapi.co/api/v2/item/291/\"},{\"name\":\"rock-incense\",\"url\":\"https://pokeapi.co/api/v2/item/292/\"},{\"name\":\"wave-incense\",\"url\":\"https://pokeapi.co/api/v2/item/294/\"},{\"name\":\"rose-incense\",\"url\":\"https://pokeapi.co/api/v2/item/295/\"}],\"name\":\"type-enhancement\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Type enhancement\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"b1aefefd-123f-4eef-a172-bb9aa346d9b1","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/16/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,228,1,10,5,105,116,101,109,115,18,218,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":16,\"items\":[{\"name\":\"exp-share\",\"url\":\"https://pokeapi.co/api/v2/item/193/\"},{\"name\":\"soothe-bell\",\"url\":\"https://pokeapi.co/api/v2/item/195/\"},{\"name\":\"amulet-coin\",\"url\":\"https://pokeapi.co/api/v2/item/200/\"},{\"name\":\"cleanse-tag\",\"url\":\"https://pokeapi.co/api/v2/item/201/\"},{\"name\":\"everstone\",\"url\":\"https://pokeapi.co/api/v2/item/206/\"},{\"name\":\"lucky-egg\",\"url\":\"https://pokeapi.co/api/v2/item/208/\"},{\"name\":\"luck-incense\",\"url\":\"https://pokeapi.co/api/v2/item/296/\"},{\"name\":\"pure-incense\",\"url\":\"https://pokeapi.co/api/v2/item/297/\"}],\"name\":\"training\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Training\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"9ca53337-bf60-4394-b9e7-eb5a610147ff","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/14/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,201,1,10,5,105,116,101,109,115,18,191,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":14,\"items\":[{\"name\":\"macho-brace\",\"url\":\"https://pokeapi.co/api/v2/item/192/\"},{\"name\":\"power-bracer\",\"url\":\"https://pokeapi.co/api/v2/item/266/\"},{\"name\":\"power-belt\",\"url\":\"https://pokeapi.co/api/v2/item/267/\"},{\"name\":\"power-lens\",\"url\":\"https://pokeapi.co/api/v2/item/268/\"},{\"name\":\"power-band\",\"url\":\"https://pokeapi.co/api/v2/item/269/\"},{\"name\":\"power-anklet\",\"url\":\"https://pokeapi.co/api/v2/item/270/\"},{\"name\":\"power-weight\",\"url\":\"https://pokeapi.co/api/v2/item/271/\"}],\"name\":\"effort-training\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Effort training\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"00226251-2c6c-44d8-b6be-58702840ca3a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,242,3,10,5,105,116,101,109,115,18,232,3,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":7,\"items\":[{\"name\":\"occa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/161/\"},{\"name\":\"passho-berry\",\"url\":\"https://pokeapi.co/api/v2/item/162/\"},{\"name\":\"wacan-berry\",\"url\":\"https://pokeapi.co/api/v2/item/163/\"},{\"name\":\"rindo-berry\",\"url\":\"https://pokeapi.co/api/v2/item/164/\"},{\"name\":\"yache-berry\",\"url\":\"https://pokeapi.co/api/v2/item/165/\"},{\"name\":\"chople-berry\",\"url\":\"https://pokeapi.co/api/v2/item/166/\"},{\"name\":\"kebia-berry\",\"url\":\"https://pokeapi.co/api/v2/item/167/\"},{\"name\":\"shuca-berry\",\"url\":\"https://pokeapi.co/api/v2/item/168/\"},{\"name\":\"coba-berry\",\"url\":\"https://pokeapi.co/api/v2/item/169/\"},{\"name\":\"payapa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/170/\"},{\"name\":\"tanga-berry\",\"url\":\"https://pokeapi.co/api/v2/item/171/\"},{\"name\":\"charti-berry\",\"url\":\"https://pokeapi.co/api/v2/item/172/\"},{\"name\":\"kasib-berry\",\"url\":\"https://pokeapi.co/api/v2/item/173/\"},{\"name\":\"haban-berry\",\"url\":\"https://pokeapi.co/api/v2/item/174/\"},{\"name\":\"colbur-berry\",\"url\":\"https://pokeapi.co/api/v2/item/175/\"},{\"name\":\"babiri-berry\",\"url\":\"https://pokeapi.co/api/v2/item/176/\"},{\"name\":\"chilan-berry\",\"url\":\"https://pokeapi.co/api/v2/item/177/\"},{\"name\":\"roseli-berry\",\"url\":\"https://pokeapi.co/api/v2/item/723/\"}],\"name\":\"type-protection\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Type protection\"}],\"pocket\":{\"name\":\"berries\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/5/\"}}","asText":null}}},"tags":[]},{"uuid":"2db6e89c-73f9-4792-a13c-1906a2ce6d76","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/machine/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,186,2,10,7,114,101,115,117,108,116,115,18,174,2,8,1,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2,26,13,8,0,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":1442,\"next\":\"https://pokeapi.co/api/v2/machine/?offset=20&limit=20\",\"previous\":null,\"results\":[{\"url\":\"https://pokeapi.co/api/v2/machine/1/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/2/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/3/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/4/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/5/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/6/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/7/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/8/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/9/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/10/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/11/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/12/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/13/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/14/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/15/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/16/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/17/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/18/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/19/\"},{\"url\":\"https://pokeapi.co/api/v2/machine/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"433c2dd0-1763-44b6-aed6-20f71536d97d","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/13/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,92,10,5,105,116,101,109,115,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":13,\"items\":[{\"name\":\"choice-band\",\"url\":\"https://pokeapi.co/api/v2/item/197/\"},{\"name\":\"choice-scarf\",\"url\":\"https://pokeapi.co/api/v2/item/264/\"},{\"name\":\"choice-specs\",\"url\":\"https://pokeapi.co/api/v2/item/274/\"}],\"name\":\"choice\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Choice\"}],\"pocket\":{\"name\":\"misc\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/1/\"}}","asText":null}}},"tags":[]},{"uuid":"4d6a315e-6f0f-4da1-8669-d09c071c0c92","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-category/20/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,235,2,10,5,105,116,101,109,115,18,225,2,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,66,10,5,110,97,109,101,115,18,57,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,112,111,99,107,101,116,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"id\":20,\"items\":[{\"name\":\"suite-key\",\"url\":\"https://pokeapi.co/api/v2/item/428/\"},{\"name\":\"oaks-letter\",\"url\":\"https://pokeapi.co/api/v2/item/429/\"},{\"name\":\"lunar-wing\",\"url\":\"https://pokeapi.co/api/v2/item/430/\"},{\"name\":\"member-card\",\"url\":\"https://pokeapi.co/api/v2/item/431/\"},{\"name\":\"azure-flute\",\"url\":\"https://pokeapi.co/api/v2/item/432/\"},{\"name\":\"gracidea\",\"url\":\"https://pokeapi.co/api/v2/item/444/\"},{\"name\":\"secret-key\",\"url\":\"https://pokeapi.co/api/v2/item/445/\"},{\"name\":\"enigma-stone\",\"url\":\"https://pokeapi.co/api/v2/item/470/\"},{\"name\":\"eon-ticket\",\"url\":\"https://pokeapi.co/api/v2/item/534/\"},{\"name\":\"mysticticket\",\"url\":\"https://pokeapi.co/api/v2/item/556/\"},{\"name\":\"auroraticket\",\"url\":\"https://pokeapi.co/api/v2/item/557/\"},{\"name\":\"old-sea-map\",\"url\":\"https://pokeapi.co/api/v2/item/562/\"},{\"name\":\"liberty-pass\",\"url\":\"https://pokeapi.co/api/v2/item/615/\"}],\"name\":\"event-items\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Event items\"}],\"pocket\":{\"name\":\"key\",\"url\":\"https://pokeapi.co/api/v2/item-pocket/8/\"}}","asText":null}}},"tags":[]},{"uuid":"ab85e10f-e4f5-43ec-b97a-3605fd35feb3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-fling-effect/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,65,10,5,105,116,101,109,115,18,56,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"effect_entries\":[{\"effect\":\"Target will flinch if it has not yet gone this turn.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":7,\"items\":[{\"name\":\"kings-rock\",\"url\":\"https://pokeapi.co/api/v2/item/198/\"},{\"name\":\"razor-fang\",\"url\":\"https://pokeapi.co/api/v2/item/304/\"}],\"name\":\"flinch\"}","asText":null}}},"tags":[]},{"uuid":"eb8b8da5-d2b9-4769-a426-06a47aee8812","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-fling-effect/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,38,10,5,105,116,101,109,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"effect_entries\":[{\"effect\":\"Poisons the target.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":6,\"items\":[{\"name\":\"poison-barb\",\"url\":\"https://pokeapi.co/api/v2/item/222/\"}],\"name\":\"poison\"}","asText":null}}},"tags":[]},{"uuid":"111406d1-2115-4349-9fbe-b2854f2d7bce","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-fling-effect/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,38,10,5,105,116,101,109,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"effect_entries\":[{\"effect\":\"Paralyzes the target.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":5,\"items\":[{\"name\":\"light-ball\",\"url\":\"https://pokeapi.co/api/v2/item/213/\"}],\"name\":\"paralyze\"}","asText":null}}},"tags":[]},{"uuid":"8d45c51f-b033-4f07-8ec6-dcebe7b018a4","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-fling-effect/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,38,10,5,105,116,101,109,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"effect_entries\":[{\"effect\":\"Burns the target.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":2,\"items\":[{\"name\":\"flame-orb\",\"url\":\"https://pokeapi.co/api/v2/item/250/\"}],\"name\":\"burn\"}","asText":null}}},"tags":[]},{"uuid":"82017ccd-2694-4fdd-9120-98189011df5a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-fling-effect/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,249,4,10,5,105,116,101,109,115,18,239,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"effect_entries\":[{\"effect\":\"Immediately activates the berry's effect on the target.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":3,\"items\":[{\"name\":\"cheri-berry\",\"url\":\"https://pokeapi.co/api/v2/item/126/\"},{\"name\":\"chesto-berry\",\"url\":\"https://pokeapi.co/api/v2/item/127/\"},{\"name\":\"pecha-berry\",\"url\":\"https://pokeapi.co/api/v2/item/128/\"},{\"name\":\"rawst-berry\",\"url\":\"https://pokeapi.co/api/v2/item/129/\"},{\"name\":\"aspear-berry\",\"url\":\"https://pokeapi.co/api/v2/item/130/\"},{\"name\":\"leppa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/131/\"},{\"name\":\"oran-berry\",\"url\":\"https://pokeapi.co/api/v2/item/132/\"},{\"name\":\"persim-berry\",\"url\":\"https://pokeapi.co/api/v2/item/133/\"},{\"name\":\"lum-berry\",\"url\":\"https://pokeapi.co/api/v2/item/134/\"},{\"name\":\"sitrus-berry\",\"url\":\"https://pokeapi.co/api/v2/item/135/\"},{\"name\":\"figy-berry\",\"url\":\"https://pokeapi.co/api/v2/item/136/\"},{\"name\":\"wiki-berry\",\"url\":\"https://pokeapi.co/api/v2/item/137/\"},{\"name\":\"mago-berry\",\"url\":\"https://pokeapi.co/api/v2/item/138/\"},{\"name\":\"aguav-berry\",\"url\":\"https://pokeapi.co/api/v2/item/139/\"},{\"name\":\"iapapa-berry\",\"url\":\"https://pokeapi.co/api/v2/item/140/\"},{\"name\":\"liechi-berry\",\"url\":\"https://pokeapi.co/api/v2/item/178/\"},{\"name\":\"ganlon-berry\",\"url\":\"https://pokeapi.co/api/v2/item/179/\"},{\"name\":\"salac-berry\",\"url\":\"https://pokeapi.co/api/v2/item/180/\"},{\"name\":\"petaya-berry\",\"url\":\"https://pokeapi.co/api/v2/item/181/\"},{\"name\":\"apicot-berry\",\"url\":\"https://pokeapi.co/api/v2/item/182/\"},{\"name\":\"lansat-berry\",\"url\":\"https://pokeapi.co/api/v2/item/183/\"},{\"name\":\"starf-berry\",\"url\":\"https://pokeapi.co/api/v2/item/184/\"},{\"name\":\"micle-berry\",\"url\":\"https://pokeapi.co/api/v2/item/186/\"}],\"name\":\"berry-effect\"}","asText":null}}},"tags":[]},{"uuid":"01b9544c-64e7-4289-8f4e-161e5bb596e0","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-fling-effect/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,38,10,5,105,116,101,109,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"effect_entries\":[{\"effect\":\"Badly poisons the target.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":1,\"items\":[{\"name\":\"toxic-orb\",\"url\":\"https://pokeapi.co/api/v2/item/249/\"}],\"name\":\"badly-poison\"}","asText":null}}},"tags":[]},{"uuid":"ad33bf00-d9a8-4e55-ad1b-55e4bb58509a","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-fling-effect/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,77,10,14,101,102,102,101,99,116,95,101,110,116,114,105,101,115,18,59,8,1,26,55,8,0,18,12,10,6,101,102,102,101,99,116,18,2,8,2,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,65,10,5,105,116,101,109,115,18,56,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"effect_entries\":[{\"effect\":\"Immediately activates the herb's effect on the target.\",\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"}}],\"id\":4,\"items\":[{\"name\":\"white-herb\",\"url\":\"https://pokeapi.co/api/v2/item/191/\"},{\"name\":\"mental-herb\",\"url\":\"https://pokeapi.co/api/v2/item/196/\"}],\"name\":\"herb-effect\"}","asText":null}}},"tags":[]},{"uuid":"4a3c0f6e-5e43-4f16-ba85-a0ad13c6225f","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/move/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,170,4,10,7,114,101,115,117,108,116,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":746,\"next\":\"https://pokeapi.co/api/v2/move/?offset=20&limit=20\",\"previous\":null,\"results\":[{\"name\":\"pound\",\"url\":\"https://pokeapi.co/api/v2/move/1/\"},{\"name\":\"karate-chop\",\"url\":\"https://pokeapi.co/api/v2/move/2/\"},{\"name\":\"double-slap\",\"url\":\"https://pokeapi.co/api/v2/move/3/\"},{\"name\":\"comet-punch\",\"url\":\"https://pokeapi.co/api/v2/move/4/\"},{\"name\":\"mega-punch\",\"url\":\"https://pokeapi.co/api/v2/move/5/\"},{\"name\":\"pay-day\",\"url\":\"https://pokeapi.co/api/v2/move/6/\"},{\"name\":\"fire-punch\",\"url\":\"https://pokeapi.co/api/v2/move/7/\"},{\"name\":\"ice-punch\",\"url\":\"https://pokeapi.co/api/v2/move/8/\"},{\"name\":\"thunder-punch\",\"url\":\"https://pokeapi.co/api/v2/move/9/\"},{\"name\":\"scratch\",\"url\":\"https://pokeapi.co/api/v2/move/10/\"},{\"name\":\"vice-grip\",\"url\":\"https://pokeapi.co/api/v2/move/11/\"},{\"name\":\"guillotine\",\"url\":\"https://pokeapi.co/api/v2/move/12/\"},{\"name\":\"razor-wind\",\"url\":\"https://pokeapi.co/api/v2/move/13/\"},{\"name\":\"swords-dance\",\"url\":\"https://pokeapi.co/api/v2/move/14/\"},{\"name\":\"cut\",\"url\":\"https://pokeapi.co/api/v2/move/15/\"},{\"name\":\"gust\",\"url\":\"https://pokeapi.co/api/v2/move/16/\"},{\"name\":\"wing-attack\",\"url\":\"https://pokeapi.co/api/v2/move/17/\"},{\"name\":\"whirlwind\",\"url\":\"https://pokeapi.co/api/v2/move/18/\"},{\"name\":\"fly\",\"url\":\"https://pokeapi.co/api/v2/move/19/\"},{\"name\":\"bind\",\"url\":\"https://pokeapi.co/api/v2/move/20/\"}]}","asText":null}}},"tags":[]},{"uuid":"ec1b4e1c-10bf-40be-a440-1da1d2a9fec0","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-pocket/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,97,10,10,99,97,116,101,103,111,114,105,101,115,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"categories\":[{\"name\":\"special-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/33/\"},{\"name\":\"standard-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/34/\"},{\"name\":\"apricorn-balls\",\"url\":\"https://pokeapi.co/api/v2/item-category/39/\"}],\"id\":3,\"name\":\"pokeballs\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Balls\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Poké Balls\"}]}","asText":null}}},"tags":[]},{"uuid":"12f07126-1f50-42fb-a7bf-ed69c725948e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-pocket/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,43,10,10,99,97,116,101,103,111,114,105,101,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"categories\":[{\"name\":\"all-mail\",\"url\":\"https://pokeapi.co/api/v2/item-category/25/\"}],\"id\":6,\"name\":\"mail\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Lettres\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Mail\"}]}","asText":null}}},"tags":[]},{"uuid":"4beec58e-2cbd-4163-ac67-ccac20cc19ff","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-pocket/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,152,1,10,10,99,97,116,101,103,111,114,105,101,115,18,137,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"categories\":[{\"name\":\"vitamins\",\"url\":\"https://pokeapi.co/api/v2/item-category/26/\"},{\"name\":\"healing\",\"url\":\"https://pokeapi.co/api/v2/item-category/27/\"},{\"name\":\"pp-recovery\",\"url\":\"https://pokeapi.co/api/v2/item-category/28/\"},{\"name\":\"revival\",\"url\":\"https://pokeapi.co/api/v2/item-category/29/\"},{\"name\":\"status-cures\",\"url\":\"https://pokeapi.co/api/v2/item-category/30/\"}],\"id\":2,\"name\":\"medicine\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Médicaments\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Medicine\"}]}","asText":null}}},"tags":[]},{"uuid":"cded0d06-832a-48d6-8ea6-2f90bdf48d09","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/move-ailment/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,2,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,170,4,10,7,114,101,115,117,108,116,115,18,158,4,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":21,\"next\":\"https://pokeapi.co/api/v2/move-ailment/?offset=20&limit=1\",\"previous\":null,\"results\":[{\"name\":\"unknown\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/-1/\"},{\"name\":\"none\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/0/\"},{\"name\":\"paralysis\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/1/\"},{\"name\":\"sleep\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/2/\"},{\"name\":\"freeze\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/3/\"},{\"name\":\"burn\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/4/\"},{\"name\":\"poison\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/5/\"},{\"name\":\"confusion\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/6/\"},{\"name\":\"infatuation\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/7/\"},{\"name\":\"trap\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/8/\"},{\"name\":\"nightmare\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/9/\"},{\"name\":\"torment\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/12/\"},{\"name\":\"disable\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/13/\"},{\"name\":\"yawn\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/14/\"},{\"name\":\"heal-block\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/15/\"},{\"name\":\"no-type-immunity\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/17/\"},{\"name\":\"leech-seed\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/18/\"},{\"name\":\"embargo\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/19/\"},{\"name\":\"perish-song\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/20/\"},{\"name\":\"ingrain\",\"url\":\"https://pokeapi.co/api/v2/move-ailment/21/\"}]}","asText":null}}},"tags":[]},{"uuid":"ae59a15e-45fb-4091-b467-2213d3b031f6","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-pocket/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,247,3,10,10,99,97,116,101,103,111,114,105,101,115,18,232,3,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"categories\":[{\"name\":\"collectibles\",\"url\":\"https://pokeapi.co/api/v2/item-category/9/\"},{\"name\":\"evolution\",\"url\":\"https://pokeapi.co/api/v2/item-category/10/\"},{\"name\":\"spelunking\",\"url\":\"https://pokeapi.co/api/v2/item-category/11/\"},{\"name\":\"held-items\",\"url\":\"https://pokeapi.co/api/v2/item-category/12/\"},{\"name\":\"choice\",\"url\":\"https://pokeapi.co/api/v2/item-category/13/\"},{\"name\":\"effort-training\",\"url\":\"https://pokeapi.co/api/v2/item-category/14/\"},{\"name\":\"bad-held-items\",\"url\":\"https://pokeapi.co/api/v2/item-category/15/\"},{\"name\":\"training\",\"url\":\"https://pokeapi.co/api/v2/item-category/16/\"},{\"name\":\"plates\",\"url\":\"https://pokeapi.co/api/v2/item-category/17/\"},{\"name\":\"species-specific\",\"url\":\"https://pokeapi.co/api/v2/item-category/18/\"},{\"name\":\"type-enhancement\",\"url\":\"https://pokeapi.co/api/v2/item-category/19/\"},{\"name\":\"loot\",\"url\":\"https://pokeapi.co/api/v2/item-category/24/\"},{\"name\":\"mulch\",\"url\":\"https://pokeapi.co/api/v2/item-category/32/\"},{\"name\":\"dex-completion\",\"url\":\"https://pokeapi.co/api/v2/item-category/35/\"},{\"name\":\"scarves\",\"url\":\"https://pokeapi.co/api/v2/item-category/36/\"},{\"name\":\"jewels\",\"url\":\"https://pokeapi.co/api/v2/item-category/42/\"},{\"name\":\"mega-stones\",\"url\":\"https://pokeapi.co/api/v2/item-category/44/\"},{\"name\":\"memories\",\"url\":\"https://pokeapi.co/api/v2/item-category/45/\"}],\"id\":1,\"name\":\"misc\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Objets\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Items\"}]}","asText":null}}},"tags":[]},{"uuid":"586c38ba-f8aa-4c43-9033-180c202e2807","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-pocket/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,43,10,10,99,97,116,101,103,111,114,105,101,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"categories\":[{\"name\":\"all-machines\",\"url\":\"https://pokeapi.co/api/v2/item-category/37/\"}],\"id\":4,\"name\":\"machines\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"CT & CS\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"TMs and HMs\"}]}","asText":null}}},"tags":[]},{"uuid":"c56b0bc0-d3da-49fc-887b-9b3ad1fc9d1e","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-pocket/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,206,1,10,10,99,97,116,101,103,111,114,105,101,115,18,191,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"categories\":[{\"name\":\"effort-drop\",\"url\":\"https://pokeapi.co/api/v2/item-category/2/\"},{\"name\":\"medicine\",\"url\":\"https://pokeapi.co/api/v2/item-category/3/\"},{\"name\":\"other\",\"url\":\"https://pokeapi.co/api/v2/item-category/4/\"},{\"name\":\"in-a-pinch\",\"url\":\"https://pokeapi.co/api/v2/item-category/5/\"},{\"name\":\"picky-healing\",\"url\":\"https://pokeapi.co/api/v2/item-category/6/\"},{\"name\":\"type-protection\",\"url\":\"https://pokeapi.co/api/v2/item-category/7/\"},{\"name\":\"baking-only\",\"url\":\"https://pokeapi.co/api/v2/item-category/8/\"}],\"id\":5,\"name\":\"berries\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Baies\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Berries\"}]}","asText":null}}},"tags":[]},{"uuid":"68034318-33fa-441d-a36e-492b928e6efb","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-pocket/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,206,1,10,10,99,97,116,101,103,111,114,105,101,115,18,191,1,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"categories\":[{\"name\":\"event-items\",\"url\":\"https://pokeapi.co/api/v2/item-category/20/\"},{\"name\":\"gameplay\",\"url\":\"https://pokeapi.co/api/v2/item-category/21/\"},{\"name\":\"plot-advancement\",\"url\":\"https://pokeapi.co/api/v2/item-category/22/\"},{\"name\":\"unused\",\"url\":\"https://pokeapi.co/api/v2/item-category/23/\"},{\"name\":\"apricorn-box\",\"url\":\"https://pokeapi.co/api/v2/item-category/40/\"},{\"name\":\"data-cards\",\"url\":\"https://pokeapi.co/api/v2/item-category/41/\"},{\"name\":\"z-crystals\",\"url\":\"https://pokeapi.co/api/v2/item-category/46/\"}],\"id\":8,\"name\":\"key\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Object rares\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Key Items\"}]}","asText":null}}},"tags":[]},{"uuid":"6f0c91b2-8ecb-439d-9831-e44ad9f6c436","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/item-pocket/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,97,10,10,99,97,116,101,103,111,114,105,101,115,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2]}},"asJsonString":"{\"categories\":[{\"name\":\"stat-boosts\",\"url\":\"https://pokeapi.co/api/v2/item-category/1/\"},{\"name\":\"flutes\",\"url\":\"https://pokeapi.co/api/v2/item-category/38/\"},{\"name\":\"miracle-shooter\",\"url\":\"https://pokeapi.co/api/v2/item-category/43/\"}],\"id\":7,\"name\":\"battle\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Objets de combat\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Battle Items\"}]}","asText":null}}},"tags":[]},{"uuid":"b3417c12-ae3c-4628-aaac-4cf3698a04f9","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":2,\"iso3166\":\"jp\",\"iso639\":\"ja\",\"name\":\"roomaji\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"正式ローマジ\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Romaji\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Rōmaji\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Official roomaji\"}],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"42523e4f-d312-4793-8bea-e2ed7e7511ad","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/3/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":3,\"iso3166\":\"kr\",\"iso639\":\"ko\",\"name\":\"ko\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"韓国語\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Coréen\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Koreanisch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Korean\"}],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"12bb3761-977d-4e53-b226-a78aa65e2c6c","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":1,\"iso3166\":\"jp\",\"iso639\":\"ja\",\"name\":\"ja-Hrkt\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"日本語\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Japonais\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Japanisch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Japanese\"}],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"90b8a7ca-d311-4316-b4ee-a44fd177d16b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/10/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":10,\"iso3166\":\"cz\",\"iso639\":\"cs\",\"name\":\"cs\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"チェコ語\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Tchèque\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Tschechisch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Czech\"}],\"official\":false}","asText":null}}},"tags":[]},{"uuid":"2202f85c-fbbf-440f-9985-09102eddc16b","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/4/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":4,\"iso3166\":\"cn\",\"iso639\":\"zh\",\"name\":\"zh-Hant\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"中国語\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Chinois\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Chinesisch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Chinese\"}],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"54e60aa7-d3ed-41e8-b9a4-3f42fe56c6dd","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":8,\"iso3166\":\"it\",\"iso639\":\"it\",\"name\":\"it\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"伊語\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Italien\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Italienisch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Italian\"}],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"db40a1b5-758d-46f9-ac1f-35dce19ee671","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/9/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":9,\"iso3166\":\"us\",\"iso639\":\"en\",\"name\":\"en\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"英語\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Anglais\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Englisch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"English\"}],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"910907e0-60e2-452e-9a36-5972fcde2cc1","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/6/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":6,\"iso3166\":\"de\",\"iso639\":\"de\",\"name\":\"de\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"ドイツ語\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Allemand\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Deutsch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"German\"}],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"65575313-3d01-4204-8f87-82c6c46cc1be","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/move-battle-style/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,11,10,5,99,111,117,110,116,18,2,8,3,18,10,10,4,110,101,120,116,18,2,8,5,18,14,10,8,112,114,101,118,105,111,117,115,18,2,8,5,18,94,10,7,114,101,115,117,108,116,115,18,83,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"count\":3,\"next\":null,\"previous\":null,\"results\":[{\"name\":\"attack\",\"url\":\"https://pokeapi.co/api/v2/move-battle-style/1/\"},{\"name\":\"defense\",\"url\":\"https://pokeapi.co/api/v2/move-battle-style/2/\"},{\"name\":\"support\",\"url\":\"https://pokeapi.co/api/v2/move-battle-style/3/\"}]}","asText":null}}},"tags":[]},{"uuid":"619ff882-99b6-48ba-9e56-094f07e25fb6","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/11/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,110,97,109,101,115,18,2,8,1,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":11,\"iso3166\":\"jp\",\"iso639\":\"ja\",\"name\":\"ja\",\"names\":[],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"58805ced-c1d0-4d6e-8f55-7501cd25afb2","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/7/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":7,\"iso3166\":\"es\",\"iso639\":\"es\",\"name\":\"es\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"西語\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Espagnol\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Spanisch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Spanish\"}],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"b85463a8-86dd-4cbe-bbcd-3391dc297fd6","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/5/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,232,1,10,5,110,97,109,101,115,18,222,1,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":5,\"iso3166\":\"fr\",\"iso639\":\"fr\",\"name\":\"fr\",\"names\":[{\"language\":{\"name\":\"ja-Hrkt\",\"url\":\"https://pokeapi.co/api/v2/language/1/\"},\"name\":\"フランス語\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Français\"},{\"language\":{\"name\":\"de\",\"url\":\"https://pokeapi.co/api/v2/language/6/\"},\"name\":\"Französisch\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"French\"}],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"22a751ab-63e5-49e1-93d6-3444acde68dc","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/location/1/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,5,97,114,101,97,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,81,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,65,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"areas\":[{\"name\":\"canalave-city-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/1/\"}],\"game_indices\":[{\"game_index\":7,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}}],\"id\":1,\"name\":\"canalave-city\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Canalave City\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Joliberges\"}],\"region\":{\"name\":\"sinnoh\",\"url\":\"https://pokeapi.co/api/v2/region/4/\"}}","asText":null}}},"tags":[]},{"uuid":"b3463236-65b4-4b02-bfcd-c67b94b7c9a3","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/language/12/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,8,10,2,105,100,18,2,8,3,18,13,10,7,105,115,111,51,49,54,54,18,2,8,2,18,12,10,6,105,115,111,54,51,57,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,11,10,5,110,97,109,101,115,18,2,8,1,18,14,10,8,111,102,102,105,99,105,97,108,18,2,8,4]}},"asJsonString":"{\"id\":12,\"iso3166\":\"cn\",\"iso639\":\"zh\",\"name\":\"zh-Hans\",\"names\":[],\"official\":true}","asText":null}}},"tags":[]},{"uuid":"cd8ddccb-4fc3-47d7-a336-c68cf256a6a9","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/location/2/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,5,97,114,101,97,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,81,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,65,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"areas\":[{\"name\":\"eterna-city-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/2/\"}],\"game_indices\":[{\"game_index\":9,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}}],\"id\":2,\"name\":\"eterna-city\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Eterna City\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Vestigion\"}],\"region\":{\"name\":\"sinnoh\",\"url\":\"https://pokeapi.co/api/v2/region/4/\"}}","asText":null}}},"tags":[]},{"uuid":"d3397c09-4a7a-4bb0-bbd6-ff059a2a07b5","request":{"host":"pokeapi.co","method":"GET","path":"/api/v2/location/8/","query":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":null,"value":{"asShapeHashBytes":null,"asJsonString":null,"asText":null}}},"response":{"statusCode":200,"headers":{"asShapeHashBytes":null,"asJsonString":null,"asText":null},"body":{"contentType":"application/json; charset=utf-8","value":{"asShapeHashBytes":{"bytes":{"type":"Buffer","data":[8,0,18,38,10,5,97,114,101,97,115,18,29,8,1,26,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,81,10,12,103,97,109,101,95,105,110,100,105,99,101,115,18,65,8,1,26,61,8,0,18,16,10,10,103,97,109,101,95,105,110,100,101,120,18,2,8,3,18,39,10,10,103,101,110,101,114,97,116,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,8,10,2,105,100,18,2,8,3,18,10,10,4,110,97,109,101,18,2,8,2,18,121,10,5,110,97,109,101,115,18,112,8,1,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,26,53,8,0,18,37,10,8,108,97,110,103,117,97,103,101,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2,18,10,10,4,110,97,109,101,18,2,8,2,18,35,10,6,114,101,103,105,111,110,18,25,8,0,18,10,10,4,110,97,109,101,18,2,8,2,18,9,10,3,117,114,108,18,2,8,2]}},"asJsonString":"{\"areas\":[{\"name\":\"eterna-forest-area\",\"url\":\"https://pokeapi.co/api/v2/location-area/9/\"}],\"game_indices\":[{\"game_index\":48,\"generation\":{\"name\":\"generation-iv\",\"url\":\"https://pokeapi.co/api/v2/generation/4/\"}}],\"id\":8,\"name\":\"eterna-forest\",\"names\":[{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Eterna Forest\"},{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Forêt Vestigion\"}],\"region\":{\"name\":\"sinnoh\",\"url\":\"https://pokeapi.co/api/v2/region/4/\"}}","asText":null}}},"tags":[]}] diff --git a/core/optic/shared/src/test/scala/com/useoptic/contexts/rfc/OASProjectionSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/contexts/rfc/OASProjectionSpec.scala deleted file mode 100644 index 3502ac56f5..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/contexts/rfc/OASProjectionSpec.scala +++ /dev/null @@ -1,43 +0,0 @@ -package com.useoptic.contexts.rfc - -import com.useoptic.contexts.rfc.projections.OASProjection -import com.useoptic.contexts.shapes.projections.JsonSchemaProjection -import com.useoptic.diff.JsonFileFixture -import com.useoptic.dsa.OpticIds -import org.scalatest.FunSpec - -class OASProjectionSpec extends FunSpec with JsonFileFixture { - val commandContext: RfcCommandContext = RfcCommandContext("a", "b", "c") - - def fixture(slug: String): (InMemoryQueries, RfcService, RfcState) = { - implicit val ids = OpticIds.newDeterministicIdGenerator - val eventStore = RfcServiceJSFacade.makeEventStore() - eventStore.append("id", eventsFrom(slug)) - val rfcService: RfcService = new RfcService(eventStore) - - (new InMemoryQueries(eventStore, rfcService, "id"), rfcService, rfcService.currentState("id")) - } - - it("works for basic todo app") { - val (queries, rfcService, rfcState) = fixture("todo") - val oas = new OASProjection(queries, rfcService, "id", "ToDo") - assert(oas.generate.noSpaces == "{\"openapi\":\"3.0.1\",\"info\":{\"title\":\"ToDo\",\"version\":\"68\"},\"paths\":{\"/todos\":{\"get\":{\"operationId\":\"request_H4N9eE2ueT\",\"responses\":{\"200\":{\"content\":{\"application/json; charset=utf-8\":{\"schema\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"required\":[\"id\",\"isDone\",\"task\"],\"properties\":{\"dueDate\":{\"type\":\"string\"},\"id\":{\"type\":\"string\"},\"isDone\":{\"type\":\"boolean\"},\"task\":{\"type\":\"string\"}}}}}},\"description\":\"\"}}},\"post\":{\"operationId\":\"request_jSdvEiRo9a\",\"requestBody\":{\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"required\":[\"isDone\",\"task\"],\"properties\":{\"isDone\":{\"type\":\"boolean\"},\"task\":{\"type\":\"string\"}}}}}},\"responses\":{\"200\":{\"content\":{\"application/json; charset=utf-8\":{\"schema\":{\"type\":\"object\",\"required\":[\"id\",\"isDone\",\"task\"],\"properties\":{\"id\":{\"type\":\"string\"},\"isDone\":{\"type\":\"boolean\"},\"task\":{\"type\":\"string\"}}}}},\"description\":\"\"}}},\"parameters\":[]},\"/todos/{todoId}\":{\"patch\":{\"operationId\":\"request_Pa77UBarCD\",\"requestBody\":{\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"required\":[\"isDone\",\"task\"],\"properties\":{\"isDone\":{\"type\":\"boolean\"},\"task\":{\"type\":\"string\"}}}}}},\"responses\":{\"200\":{\"content\":{\"application/json; charset=utf-8\":{\"schema\":{\"type\":\"object\",\"required\":[\"dueDate\",\"id\",\"isDone\",\"task\"],\"properties\":{\"dueDate\":{\"type\":\"string\"},\"id\":{\"type\":\"string\"},\"isDone\":{\"type\":\"boolean\"},\"task\":{\"type\":\"string\"}}}}},\"description\":\"\"}}},\"parameters\":[{\"in\":\"path\",\"name\":\"todoId\",\"required\":true,\"schema\":{\"type\":\"string\"}}]}},\"components\":{\"schemas\":{}}}") - } - - it("works for basic dry todo app") { - val (queries, rfcService, rfcState) = fixture("todo-dry") - val oas = new OASProjection(queries, rfcService, "id", "Unnamed API") - assert(oas.generate.noSpaces == "{\"openapi\":\"3.0.1\",\"info\":{\"title\":\"Unnamed API\",\"version\":\"51\"},\"paths\":{\"/todos\":{\"get\":{\"operationId\":\"request_CRRIXlDlNB\",\"responses\":{\"200\":{\"content\":{\"application/json; charset=utf-8\":{\"schema\":{\"type\":\"array\",\"items\":{\"$ref\":\"#/components/schemas/ToDo\"}}}},\"description\":\"\"}}},\"post\":{\"operationId\":\"request_6yVKPpNNau\",\"requestBody\":{\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"required\":[\"isDone\",\"task\"],\"properties\":{\"isDone\":{\"type\":\"boolean\"},\"task\":{\"type\":\"string\"}}}}}},\"responses\":{\"200\":{\"content\":{\"application/json; charset=utf-8\":{\"schema\":{\"$ref\":\"#/components/schemas/ToDo\"}}},\"description\":\"\"}}},\"parameters\":[]},\"/todos/{todoId}\":{\"patch\":{\"operationId\":\"request_uKHqw2t5H7\",\"requestBody\":{\"content\":{\"application/json\":{\"schema\":{\"type\":\"object\",\"required\":[\"isDone\",\"task\"],\"properties\":{\"isDone\":{\"type\":\"boolean\"},\"task\":{\"type\":\"string\"}}}}}},\"responses\":{\"200\":{\"content\":{\"application/json; charset=utf-8\":{\"schema\":{\"$ref\":\"#/components/schemas/ToDo\"}}},\"description\":\"\"}}},\"parameters\":[{\"in\":\"path\",\"name\":\"todoId\",\"required\":true,\"schema\":{\"type\":\"string\"}}]}},\"components\":{\"schemas\":{\"ToDo\":{\"type\":\"object\",\"required\":[\"id\",\"isDone\",\"task\"],\"properties\":{\"dueDate\":{\"type\":\"string\"},\"id\":{\"type\":\"string\"},\"isDone\":{\"type\":\"boolean\"},\"task\":{\"type\":\"string\"}}}}}}") - } - - describe("Json Schema") { - - it("works for todo shape") { - val (queries, rfcService, rfcState) = fixture("todo") - val todoSchema = new JsonSchemaProjection(queries,"jghsd0_1").asJsonSchema(expand = false) - assert(todoSchema.noSpaces == "{\"type\":\"object\",\"required\":[\"id\",\"isDone\",\"task\"],\"properties\":{\"dueDate\":{\"type\":\"string\"},\"id\":{\"type\":\"string\"},\"isDone\":{\"type\":\"boolean\"},\"task\":{\"type\":\"string\"}}}") - } - - } -} - diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/CoverageVisitorSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/CoverageVisitorSpec.scala index 3f6eb39c30..9564b8bd2c 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/CoverageVisitorSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/CoverageVisitorSpec.scala @@ -11,60 +11,60 @@ import org.scalatest.FunSpec import io.circe.literal._ class CoverageVisitorSpec extends FunSpec { - describe("Coverage Visitors") { - describe("scenario 1") { - val specHelpers = new SpecHelpers() - - val rfcState: RfcState = TestHelpers.fromCommands( - specHelpers.simpleGet(json"""["a"]""") ++ - specHelpers.simplePost(json"""[1]""") - ) - val interactions: Seq[HttpInteraction] = Seq( - InteractionHelpers.simpleGet(json"""[]""", 200), - InteractionHelpers.simpleGet(json"""[1]""", 200), - ) - - def fixture(spec: RfcState, interactions: Seq[HttpInteraction]) = { - val resolvers = new DefaultShapesResolvers(rfcState) - val visitors = new CoverageVisitors(resolvers) - val traverser = new Traverser(rfcState, visitors) - interactions.foreach(interaction => traverser.traverse(interaction)) - println(visitors.report.coverageCounts.counts) - visitors - } - - it("should count the total number of interactions observed") { - val visitors = fixture(rfcState, interactions) - assert(visitors.report.coverageCounts.counts(TotalInteractions()) == 2) - } - it("should count the number of interactions by path") { - val visitors = fixture(rfcState, interactions) - assert(visitors.report.coverageCounts.counts(TotalForPath("root")) == 2) - } - it("should count the number of interactions by path and method") { - val visitors = fixture(rfcState, interactions) - assert(visitors.report.coverageCounts.counts(TotalForPathAndMethod("root", "GET")) == 2) - } - it("should count the number of interactions by path and method and request body content type") { - val visitors = fixture(rfcState, interactions) - assert(visitors.report.coverageCounts.counts(TotalForPathAndMethodWithoutBody("root", "GET")) == 2) - } - it("should count the number of interactions by path and method and status code") { - val visitors = fixture(rfcState, interactions) - assert(visitors.report.coverageCounts.counts(TotalForPathAndMethodAndStatusCode("root", "GET", 200)) == 2) - } - it("should count the number of interactions by path and method and status code and response body content type") { - val visitors = fixture(rfcState, interactions) - assert(visitors.report.coverageCounts.counts(TotalForPathAndMethodAndStatusCodeAndContentType("root", "GET", 200, "application/json")) == 2) - } - it("should count the number of interactions by requestId") { - val visitors = fixture(rfcState, interactions) - assert(visitors.report.coverageCounts.counts(TotalForRequest("request1")) == 2) - } - it("should count the number of interactions by responseId") { - val visitors = fixture(rfcState, interactions) - assert(visitors.report.coverageCounts.counts(TotalForResponse("response1")) == 2) - } - } - } +// describe("Coverage Visitors") { +// describe("scenario 1") { +// val specHelpers = new SpecHelpers() +// +// val rfcState: RfcState = TestHelpers.fromCommands( +// specHelpers.simpleGet(json"""["a"]""") ++ +// specHelpers.simplePost(json"""[1]""") +// ) +// val interactions: Seq[HttpInteraction] = Seq( +// InteractionHelpers.simpleGet(json"""[]""", 200), +// InteractionHelpers.simpleGet(json"""[1]""", 200), +// ) +// +// def fixture(spec: RfcState, interactions: Seq[HttpInteraction]) = { +// val resolvers = new DefaultShapesResolvers(rfcState) +// val visitors = new CoverageVisitors(resolvers) +// val traverser = new Traverser(rfcState, visitors) +// interactions.foreach(interaction => traverser.traverse(interaction)) +// println(visitors.report.coverageCounts.counts) +// visitors +// } +// +// it("should count the total number of interactions observed") { +// val visitors = fixture(rfcState, interactions) +// assert(visitors.report.coverageCounts.counts(TotalInteractions()) == 2) +// } +// it("should count the number of interactions by path") { +// val visitors = fixture(rfcState, interactions) +// assert(visitors.report.coverageCounts.counts(TotalForPath("root")) == 2) +// } +// it("should count the number of interactions by path and method") { +// val visitors = fixture(rfcState, interactions) +// assert(visitors.report.coverageCounts.counts(TotalForPathAndMethod("root", "GET")) == 2) +// } +// it("should count the number of interactions by path and method and request body content type") { +// val visitors = fixture(rfcState, interactions) +// assert(visitors.report.coverageCounts.counts(TotalForPathAndMethodWithoutBody("root", "GET")) == 2) +// } +// it("should count the number of interactions by path and method and status code") { +// val visitors = fixture(rfcState, interactions) +// assert(visitors.report.coverageCounts.counts(TotalForPathAndMethodAndStatusCode("root", "GET", 200)) == 2) +// } +// it("should count the number of interactions by path and method and status code and response body content type") { +// val visitors = fixture(rfcState, interactions) +// assert(visitors.report.coverageCounts.counts(TotalForPathAndMethodAndStatusCodeAndContentType("root", "GET", 200, "application/json")) == 2) +// } +// it("should count the number of interactions by requestId") { +// val visitors = fixture(rfcState, interactions) +// assert(visitors.report.coverageCounts.counts(TotalForRequest("request1")) == 2) +// } +// it("should count the number of interactions by responseId") { +// val visitors = fixture(rfcState, interactions) +// assert(visitors.report.coverageCounts.counts(TotalForResponse("response1")) == 2) +// } +// } +// } } diff --git a/core/optic/shared/src/test/scala/com/useoptic/serialization/CapturesDeserialization.scala b/core/optic/shared/src/test/scala/com/useoptic/serialization/CapturesDeserialization.scala deleted file mode 100644 index a44929c124..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/serialization/CapturesDeserialization.scala +++ /dev/null @@ -1,26 +0,0 @@ -package com.useoptic.serialization - -import java.io.File - -import com.useoptic.diff.JsonFileFixture -import io.circe.Json -import io.circe.jawn.parseFile - -import org.scalatest.FunSpec - -class CapturesDeserialization extends FunSpec{ - def fromFile(slug: String): Json = { - val filePath = "optic/shared/src/test/resources/captures/" + slug + ".json" - val attempt = parseFile(new File(filePath)) - if (attempt.isLeft) { - throw new Error(attempt.left.get) - } - attempt.right.get - } - - it("can deserialize a poke API capture") { - val jsonArray = fromFile("capture-pokeapi").asArray.get - assert(jsonArray.map(InteractionSerialization.fromJson).exists(_.response.body.value.asShapeHashBytes.isDefined)) - } - -} diff --git a/core/optic/shared/src/test/scala/com/useoptic/serialization/EventSerializationSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/serialization/EventSerializationSpec.scala deleted file mode 100644 index 4f0c1314fe..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/serialization/EventSerializationSpec.scala +++ /dev/null @@ -1,49 +0,0 @@ -package com.useoptic.serialization - -import com.useoptic.contexts.requests.Commands._ -import com.useoptic.contexts.requests.Events._ -import com.useoptic.contexts.shapes.Commands._ -import com.useoptic.contexts.shapes.Events._ -import org.scalatest.FunSpec - - -class EventSerializationSpec extends FunSpec { - - it("can serialize / deserialize events with primitives") { - - val exampleEvents = Vector( - ShapeAdded("sss", "bbb", DynamicParameterList(Seq.empty), "nnn"), - PathParameterAdded("123", "456", "789"), - ) - - val asJson = EventSerialization.toJson(exampleEvents) - - assert(asJson.noSpaces - === """[{"ShapeAdded":{"shapeId":"sss","baseShapeId":"bbb","parameters":{"DynamicParameterList":{"shapeParameterIds":[]}},"name":"nnn"}},{"PathParameterAdded":{"pathId":"123","parentPathId":"456","name":"789"}}]""") - - val decoded = EventSerialization.fromJson(asJson) - assert(decoded.isSuccess) - assert(decoded.get == exampleEvents) - } - - it("primitives and subtypes") { - - val exampleEvents = Vector( - ShapeAdded("sss", "bbb", NoParameterList(), "hij"), - PathParameterAdded("123", "456", "789"), - ResponseBodySet("Abc", ShapedBodyDescriptor("text/html", "id", isRemoved = false)) - ) - - val asJson = EventSerialization.toJson(exampleEvents) - - assert(asJson.noSpaces - === """[{"ShapeAdded":{"shapeId":"sss","baseShapeId":"bbb","parameters":{"NoParameterList":{}},"name":"hij"}},{"PathParameterAdded":{"pathId":"123","parentPathId":"456","name":"789"}},{"ResponseBodySet":{"responseId":"Abc","bodyDescriptor":{"httpContentType":"text/html","shapeId":"id","isRemoved":false}}}]""") - - - val decoded = EventSerialization.fromJson(asJson) - assert(decoded.isSuccess) - assert(decoded.get == exampleEvents) - - } - -} From 0404a05d639f2a55964c218890514c205e5b805a Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Wed, 24 Jun 2020 17:15:16 -0400 Subject: [PATCH 08/85] shape builder tests now rely on snapshots --- .../diff-scenarios/all-optic-commits.json | 1877 +++++++++++++++++ .../contexts/requests/otherspec.scala | 7 - .../diff/helpers/DiffHelpersSpec.scala | 1 - .../diff/helpers/InteractionHelpers.scala | 66 + .../DistributionAwareShapeBuilderSpec.scala | 198 -- .../interactions/CoverageVisitorSpec.scala | 1 - .../BasicInterpretationsSpec.scala | 214 -- .../MissingValueInterpreterSpec.scala | 32 - .../UnspecifiedShapeDiffInterpreterSpec.scala | 64 - .../DiffDescriptionInterpretersSpec.scala | 174 -- .../end_to_end/ShapeBuilderUseCases.scala | 63 + .../end_to_end/fixtures/JsonExamples.scala | 5 +- .../snapshot_task/BuildShapeTask.scala | 44 + .../snapshot_task/SnapShotDriverFixture.scala | 6 +- .../com/useoptic/ux/DiffManagerSpec.scala | 3 + .../com/useoptic/ux/DiffPreviewerSpec.scala | 24 - 16 files changed, 2060 insertions(+), 719 deletions(-) create mode 100644 core/optic/shared/src/test/resources/diff-scenarios/all-optic-commits.json delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/contexts/requests/otherspec.scala create mode 100644 core/optic/shared/src/test/scala/com/useoptic/diff/helpers/InteractionHelpers.scala delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilderSpec.scala delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretationsSpec.scala delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/MissingValueInterpreterSpec.scala delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/UnspecifiedShapeDiffInterpreterSpec.scala delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpreters/DiffDescriptionInterpretersSpec.scala create mode 100644 core/optic/shared/src/test/scala/com/useoptic/end_to_end/ShapeBuilderUseCases.scala create mode 100644 core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/BuildShapeTask.scala diff --git a/core/optic/shared/src/test/resources/diff-scenarios/all-optic-commits.json b/core/optic/shared/src/test/resources/diff-scenarios/all-optic-commits.json new file mode 100644 index 0000000000..522898d374 --- /dev/null +++ b/core/optic/shared/src/test/resources/diff-scenarios/all-optic-commits.json @@ -0,0 +1,1877 @@ +[ + { + "sha": "821e8fb5ba119cde825fd6c1e11e22542acd65f9", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjgyMWU4ZmI1YmExMTljZGU4MjVmZDZjMWUxMWUyMjU0MmFjZDY1Zjk=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "acunniffe@gmail.com", + "date": "2020-06-24T20:00:22Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-24T20:00:22Z" + }, + "message": "Merge pull request #225 from acunniffe/api-check-analytics\n\nAPI Check failures should be reported", + "tree": { + "sha": "0b2d8e9060c75fef9b6ed4386e514902c4a89463", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/0b2d8e9060c75fef9b6ed4386e514902c4a89463" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/821e8fb5ba119cde825fd6c1e11e22542acd65f9", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe87DXCRBK7hj4Ov3rIwAAdHIIAEVDJrNgDNEHIzK50w2UynFm\nNvQWkMMMYtKzsihscjCrSThcTi3BoTM0Mjap0ESTCdOvu1y/hypBcFB6HxRdVDP9\n+Fs3VrGDJ2I6vyMZtfRcTNueVoRmKKQAMRgNZtNAH9LVpjfyBW5QByFHGh7lhoZ1\n5qKUn7+mZuvLNIydWM7Yu6DSK3tqjP4RznuahQd/9tgLSPnrrUsdbGruE/pAEBJm\ndKyTWJcPI+2kL9B81gIFDcE/0PiGZvAoQa6K49Y7WeTsVxT0a/2yvLbpuFuO/OgF\nHvI0d1rjAVOt+nomMPQCNEJzLRNrKk/gi8SMSmDV540cyFBKYRZJ2JgZ8fimdrw=\n=4flw\n-----END PGP SIGNATURE-----\n", + "payload": "tree 0b2d8e9060c75fef9b6ed4386e514902c4a89463\nparent 79c9751c7293dd76f5b0549b850aa8ed7f0a29b5\nparent e2ea26beb3f375aab05c401a42c2ee534b2c5312\nauthor Aidan Cunniffe 1593028822 -0400\ncommitter GitHub 1593028822 -0400\n\nMerge pull request #225 from acunniffe/api-check-analytics\n\nAPI Check failures should be reported" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/821e8fb5ba119cde825fd6c1e11e22542acd65f9", + "html_url": "https://github.com/opticdev/optic/commit/821e8fb5ba119cde825fd6c1e11e22542acd65f9", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/821e8fb5ba119cde825fd6c1e11e22542acd65f9/comments", + "author": { + "login": "acunniffe", + "id": 5900338, + "node_id": "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url": "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/acunniffe", + "html_url": "https://github.com/acunniffe", + "followers_url": "https://api.github.com/users/acunniffe/followers", + "following_url": "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url": "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url": "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url": "https://api.github.com/users/acunniffe/orgs", + "repos_url": "https://api.github.com/users/acunniffe/repos", + "events_url": "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url": "https://api.github.com/users/acunniffe/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "url": "https://api.github.com/repos/opticdev/optic/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "html_url": "https://github.com/opticdev/optic/commit/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5" + }, + { + "sha": "e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "url": "https://api.github.com/repos/opticdev/optic/commits/e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "html_url": "https://github.com/opticdev/optic/commit/e2ea26beb3f375aab05c401a42c2ee534b2c5312" + } + ] + }, + { + "sha": "e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OmUyZWEyNmJlYjNmMzc1YWFiMDVjNDAxYTQyYzJlZTUzNGIyYzUzMTI=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-24T19:40:11Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-24T19:40:11Z" + }, + "message": "Merge branch 'api-check-analytics' of https://github.com/acunniffe/optic into api-check-analytics", + "tree": { + "sha": "0b2d8e9060c75fef9b6ed4386e514902c4a89463", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/0b2d8e9060c75fef9b6ed4386e514902c4a89463" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "html_url": "https://github.com/opticdev/optic/commit/e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/e2ea26beb3f375aab05c401a42c2ee534b2c5312/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "url": "https://api.github.com/repos/opticdev/optic/commits/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "html_url": "https://github.com/opticdev/optic/commit/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47" + }, + { + "sha": "438609fd68cc388ffa94dcb0895828d219deef33", + "url": "https://api.github.com/repos/opticdev/optic/commits/438609fd68cc388ffa94dcb0895828d219deef33", + "html_url": "https://github.com/opticdev/optic/commit/438609fd68cc388ffa94dcb0895828d219deef33" + } + ] + }, + { + "sha": "eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OmVhZWU2OTRkOWQ4ZGQyN2MyY2M0NDNiYWM2YjY4YjA0MmYxZWViNDc=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-24T19:39:43Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-24T19:39:43Z" + }, + "message": "added same config exploder to the task runner", + "tree": { + "sha": "d77550e1c004ec9d9f2e2b06900999ef0c3bff1a", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/d77550e1c004ec9d9f2e2b06900999ef0c3bff1a" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "html_url": "https://github.com/opticdev/optic/commit/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "1cafa499228f1a596b98f3b20905546768647bff", + "url": "https://api.github.com/repos/opticdev/optic/commits/1cafa499228f1a596b98f3b20905546768647bff", + "html_url": "https://github.com/opticdev/optic/commit/1cafa499228f1a596b98f3b20905546768647bff" + } + ] + }, + { + "sha": "438609fd68cc388ffa94dcb0895828d219deef33", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjQzODYwOWZkNjhjYzM4OGZmYTk0ZGNiMDg5NTgyOGQyMTlkZWVmMzM=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "acunniffe@gmail.com", + "date": "2020-06-24T14:53:13Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-24T14:53:13Z" + }, + "message": "Merge branch 'develop' into api-check-analytics", + "tree": { + "sha": "f7d28da5dd55d0edc813d926fcc21b954d8ae935", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/f7d28da5dd55d0edc813d926fcc21b954d8ae935" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/438609fd68cc388ffa94dcb0895828d219deef33", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe82jZCRBK7hj4Ov3rIwAAdHIIAHmlgpBQc1jsIuuI8DfDP2wI\nUb7k3pabe8G8IoCMHjPB0dVm4AcG1RteQ3dfCqcMpD6K2XlKj01dNormarmbbQY0\nQBwsgR8/hbi0YwBHljsknmvn3QqkimkSU9VN6F/MNDQeUL36yaskNS66TtT/5TBO\nCAM36tSVWXPCQBuKyfqhY0zKfGObqslNia9USdhDXKzUcI5KNleV3PqYAdD098nT\n4obnMGw9Q7YnLF8Wy1D671omoStWNw+RMSxOOk15+fJ0LH0N2Ue4GxRG9W7frpzq\niLE7MCoPcF5iRM90LYd5m5T4aScYPPcPOOUXt411kefLFILjh14WtsJKbzWiCTM=\n=18AY\n-----END PGP SIGNATURE-----\n", + "payload": "tree f7d28da5dd55d0edc813d926fcc21b954d8ae935\nparent 1cafa499228f1a596b98f3b20905546768647bff\nparent 79c9751c7293dd76f5b0549b850aa8ed7f0a29b5\nauthor Aidan Cunniffe 1593010393 -0400\ncommitter GitHub 1593010393 -0400\n\nMerge branch 'develop' into api-check-analytics" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/438609fd68cc388ffa94dcb0895828d219deef33", + "html_url": "https://github.com/opticdev/optic/commit/438609fd68cc388ffa94dcb0895828d219deef33", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/438609fd68cc388ffa94dcb0895828d219deef33/comments", + "author": { + "login": "acunniffe", + "id": 5900338, + "node_id": "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url": "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/acunniffe", + "html_url": "https://github.com/acunniffe", + "followers_url": "https://api.github.com/users/acunniffe/followers", + "following_url": "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url": "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url": "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url": "https://api.github.com/users/acunniffe/orgs", + "repos_url": "https://api.github.com/users/acunniffe/repos", + "events_url": "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url": "https://api.github.com/users/acunniffe/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "1cafa499228f1a596b98f3b20905546768647bff", + "url": "https://api.github.com/repos/opticdev/optic/commits/1cafa499228f1a596b98f3b20905546768647bff", + "html_url": "https://github.com/opticdev/optic/commit/1cafa499228f1a596b98f3b20905546768647bff" + }, + { + "sha": "79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "url": "https://api.github.com/repos/opticdev/optic/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "html_url": "https://github.com/opticdev/optic/commit/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5" + } + ] + }, + { + "sha": "79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1Ojc5Yzk3NTFjNzI5M2RkNzZmNWIwNTQ5Yjg1MGFhOGVkN2YwYTI5YjU=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "acunniffe@gmail.com", + "date": "2020-06-24T14:53:01Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-24T14:53:01Z" + }, + "message": "Merge pull request #223 from acunniffe/make-ids-deterministic\n\nMake ids deterministic", + "tree": { + "sha": "20ecd3410a4300f9f988c313eb05a43ce06aa431", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/20ecd3410a4300f9f988c313eb05a43ce06aa431" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe82jNCRBK7hj4Ov3rIwAAdHIIACwnhFk6RjzHIGLNB6e6eVLJ\nKy3Tye7bOheOyZUuvwaz90wCuFQuZFOSsc/fIURh4gnLSgci789vSnZLZe40Pb1n\nF3TBHzX/1ynA19p20hSvBMt754w2s4UiW8byoDtsYHkQl5ERRQfCSR1ECo0kNIDu\nstKA4k71injrotoqwkwKJvWxFgL8qQUHy5osOKxqxjda95GX8RobJ6JvLCyaCNbh\nSztAYQB7HrzUcjfsry9XjBRlbITMNXHX5mZTHoKxjUgYvulA+zz2NRY20E+ArNWV\nQW6lp0tA7q8yIniEKqNVHJlqT/G8PYeJgrJZmqa45nI8HnC++KybymMLhNA5um0=\n=vZOk\n-----END PGP SIGNATURE-----\n", + "payload": "tree 20ecd3410a4300f9f988c313eb05a43ce06aa431\nparent 1647413024116fc176536fdfe5cc737f95e592cb\nparent 99604d76e2b077e67b27709cdcebd54ce9777312\nauthor Aidan Cunniffe 1593010381 -0400\ncommitter GitHub 1593010381 -0400\n\nMerge pull request #223 from acunniffe/make-ids-deterministic\n\nMake ids deterministic" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "html_url": "https://github.com/opticdev/optic/commit/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5/comments", + "author": { + "login": "acunniffe", + "id": 5900338, + "node_id": "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url": "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/acunniffe", + "html_url": "https://github.com/acunniffe", + "followers_url": "https://api.github.com/users/acunniffe/followers", + "following_url": "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url": "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url": "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url": "https://api.github.com/users/acunniffe/orgs", + "repos_url": "https://api.github.com/users/acunniffe/repos", + "events_url": "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url": "https://api.github.com/users/acunniffe/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "1647413024116fc176536fdfe5cc737f95e592cb", + "url": "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "html_url": "https://github.com/opticdev/optic/commit/1647413024116fc176536fdfe5cc737f95e592cb" + }, + { + "sha": "99604d76e2b077e67b27709cdcebd54ce9777312", + "url": "https://api.github.com/repos/opticdev/optic/commits/99604d76e2b077e67b27709cdcebd54ce9777312", + "html_url": "https://github.com/opticdev/optic/commit/99604d76e2b077e67b27709cdcebd54ce9777312" + } + ] + }, + { + "sha": "1cafa499228f1a596b98f3b20905546768647bff", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjFjYWZhNDk5MjI4ZjFhNTk2Yjk4ZjNiMjA5MDU1NDY3Njg2NDdiZmY=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-24T14:28:38Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-24T14:28:38Z" + }, + "message": "Ensured errors make it to the analytics pipeline", + "tree": { + "sha": "0fe600b49c2642565c6928d5639fca3d9cc57d7b", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/0fe600b49c2642565c6928d5639fca3d9cc57d7b" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/1cafa499228f1a596b98f3b20905546768647bff", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/1cafa499228f1a596b98f3b20905546768647bff", + "html_url": "https://github.com/opticdev/optic/commit/1cafa499228f1a596b98f3b20905546768647bff", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/1cafa499228f1a596b98f3b20905546768647bff/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "1647413024116fc176536fdfe5cc737f95e592cb", + "url": "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "html_url": "https://github.com/opticdev/optic/commit/1647413024116fc176536fdfe5cc737f95e592cb" + } + ] + }, + { + "sha": "99604d76e2b077e67b27709cdcebd54ce9777312", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1Ojk5NjA0ZDc2ZTJiMDc3ZTY3YjI3NzA5Y2RjZWJkNTRjZTk3NzczMTI=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "acunniffe@gmail.com", + "date": "2020-06-23T20:41:23Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-23T20:41:23Z" + }, + "message": "Merge branch 'develop' into make-ids-deterministic", + "tree": { + "sha": "20ecd3410a4300f9f988c313eb05a43ce06aa431", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/20ecd3410a4300f9f988c313eb05a43ce06aa431" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/99604d76e2b077e67b27709cdcebd54ce9777312", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe8mjzCRBK7hj4Ov3rIwAAdHIIAJmDimdThP2bykwM3fD5Obwf\nQMFkVkzg+CXjoV2TzYCgt3xFsWvtqW1FNplImib3cg00PLS1uRnG1be8gcE9VJM0\nX0q3aHZUVuVHpedI76a8Z8qNPWlEh2ozE0hTKOdY8Mxg7J+1c4qjIyWftKoIwyyO\no1Qk8uWVN5h6YkE6ndhaMMjjxYFdB0XmdP/mXUwk0lUaWx7n3yNOLEWe99xqkdl6\nGdbZfwoi6ZYfObGqN1aKDMHs65nSclZcsJCZN6GQkGR3uG5tVr7fiBx0G994kJGy\nBbSN9qHXy1DOInAUlyDp3CsO+TT2x8vuWLsJyZ5fd5ZnadI2vc04jfMVPQKH1uY=\n=LRfW\n-----END PGP SIGNATURE-----\n", + "payload": "tree 20ecd3410a4300f9f988c313eb05a43ce06aa431\nparent e769026c73841089c3f906c9f2cd97107e723f64\nparent 1647413024116fc176536fdfe5cc737f95e592cb\nauthor Aidan Cunniffe 1592944883 -0400\ncommitter GitHub 1592944883 -0400\n\nMerge branch 'develop' into make-ids-deterministic" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/99604d76e2b077e67b27709cdcebd54ce9777312", + "html_url": "https://github.com/opticdev/optic/commit/99604d76e2b077e67b27709cdcebd54ce9777312", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/99604d76e2b077e67b27709cdcebd54ce9777312/comments", + "author": { + "login": "acunniffe", + "id": 5900338, + "node_id": "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url": "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/acunniffe", + "html_url": "https://github.com/acunniffe", + "followers_url": "https://api.github.com/users/acunniffe/followers", + "following_url": "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url": "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url": "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url": "https://api.github.com/users/acunniffe/orgs", + "repos_url": "https://api.github.com/users/acunniffe/repos", + "events_url": "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url": "https://api.github.com/users/acunniffe/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "e769026c73841089c3f906c9f2cd97107e723f64", + "url": "https://api.github.com/repos/opticdev/optic/commits/e769026c73841089c3f906c9f2cd97107e723f64", + "html_url": "https://github.com/opticdev/optic/commit/e769026c73841089c3f906c9f2cd97107e723f64" + }, + { + "sha": "1647413024116fc176536fdfe5cc737f95e592cb", + "url": "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "html_url": "https://github.com/opticdev/optic/commit/1647413024116fc176536fdfe5cc737f95e592cb" + } + ] + }, + { + "sha": "1647413024116fc176536fdfe5cc737f95e592cb", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjE2NDc0MTMwMjQxMTZmYzE3NjUzNmZkZmU1Y2M3MzdmOTVlNTkyY2I=", + "commit": { + "author": { + "name": "Jaap van Hardeveld", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T13:56:18Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-23T13:56:18Z" + }, + "message": "Merge pull request #224 from JaapRood/feature/local-transparent-proxy-config\n\nPrevent tasks with no command and target info from passing task config verification", + "tree": { + "sha": "6f7c6153e5da84aa306eb225af5c6cad979c6d73", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/6f7c6153e5da84aa306eb225af5c6cad979c6d73" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe8goCCRBK7hj4Ov3rIwAAdHIIAGnqMjO0Kx3N0uHCz8BJjWMi\nuOLmWfryRmBInPD49ezTO6gd8Kz+9dqt03W789A3qrcOMz27Eh0+URD1m/w6Qrl+\nUGXjo+cJ40EF+c8iPcHDGxa/XjcisbhAQg8LK7eivDrlmrFNRJYT8XO3D1jPls6P\nnRCp1ZltNbWp2HqdNIr4+BffT0Q5yHUngWXxXQDdT/k28Q68Hwddx2FGpQUvib/F\nNqCNAMvcXco26y+hflHYw6t9bTz/v8D/FkcT+n7Oce6d2pnfvUQY6LkTYtwI3d3S\nEBo6i1a8adS6hoS111EIPmEBvUES0oVJlpounW/a+tQEY3iR4hMthpa2OhmHuy8=\n=oZW3\n-----END PGP SIGNATURE-----\n", + "payload": "tree 6f7c6153e5da84aa306eb225af5c6cad979c6d73\nparent 5c11863d3c63f4ffc36251be198b6ac653c3273c\nparent 32c31f5e59ac39db31310be3ef84b1541e763cae\nauthor Jaap van Hardeveld 1592920578 +0200\ncommitter GitHub 1592920578 +0200\n\nMerge pull request #224 from JaapRood/feature/local-transparent-proxy-config\n\nPrevent tasks with no command and target info from passing task config verification" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "html_url": "https://github.com/opticdev/optic/commit/1647413024116fc176536fdfe5cc737f95e592cb", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb/comments", + "author": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "5c11863d3c63f4ffc36251be198b6ac653c3273c", + "url": "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "html_url": "https://github.com/opticdev/optic/commit/5c11863d3c63f4ffc36251be198b6ac653c3273c" + }, + { + "sha": "32c31f5e59ac39db31310be3ef84b1541e763cae", + "url": "https://api.github.com/repos/opticdev/optic/commits/32c31f5e59ac39db31310be3ef84b1541e763cae", + "html_url": "https://github.com/opticdev/optic/commit/32c31f5e59ac39db31310be3ef84b1541e763cae" + } + ] + }, + { + "sha": "32c31f5e59ac39db31310be3ef84b1541e763cae", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjMyYzMxZjVlNTlhYzM5ZGIzMTMxMGJlM2VmODRiMTU0MWU3NjNjYWU=", + "commit": { + "author": { + "name": "Jaap Rood", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T13:44:59Z" + }, + "committer": { + "name": "Jaap Rood", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T13:45:29Z" + }, + "message": "Prevent tasks with no command and target info from passing task config verification", + "tree": { + "sha": "6f7c6153e5da84aa306eb225af5c6cad979c6d73", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/6f7c6153e5da84aa306eb225af5c6cad979c6d73" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/32c31f5e59ac39db31310be3ef84b1541e763cae", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/32c31f5e59ac39db31310be3ef84b1541e763cae", + "html_url": "https://github.com/opticdev/optic/commit/32c31f5e59ac39db31310be3ef84b1541e763cae", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/32c31f5e59ac39db31310be3ef84b1541e763cae/comments", + "author": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "5c11863d3c63f4ffc36251be198b6ac653c3273c", + "url": "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "html_url": "https://github.com/opticdev/optic/commit/5c11863d3c63f4ffc36251be198b6ac653c3273c" + } + ] + }, + { + "sha": "e769026c73841089c3f906c9f2cd97107e723f64", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OmU3NjkwMjZjNzM4NDEwODljM2Y5MDZjOWYyY2Q5NzEwN2U3MjNmNjQ=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-23T13:35:40Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-23T13:35:40Z" + }, + "message": "Merge branch 'make-ids-deterministic' of https://github.com/acunniffe/optic into make-ids-deterministic", + "tree": { + "sha": "0359a90d99c5fd8598924d086201be3df9b20c43", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/0359a90d99c5fd8598924d086201be3df9b20c43" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/e769026c73841089c3f906c9f2cd97107e723f64", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/e769026c73841089c3f906c9f2cd97107e723f64", + "html_url": "https://github.com/opticdev/optic/commit/e769026c73841089c3f906c9f2cd97107e723f64", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/e769026c73841089c3f906c9f2cd97107e723f64/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "url": "https://api.github.com/repos/opticdev/optic/commits/044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "html_url": "https://github.com/opticdev/optic/commit/044ff0b82fd63f150ec12eb2d0f62fb6648e4183" + }, + { + "sha": "b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "url": "https://api.github.com/repos/opticdev/optic/commits/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "html_url": "https://github.com/opticdev/optic/commit/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34" + } + ] + }, + { + "sha": "044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjA0NGZmMGI4MmZkNjNmMTUwZWMxMmViMmQwZjYyZmI2NjQ4ZTQxODM=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-23T13:34:37Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-23T13:34:37Z" + }, + "message": "removed dead test data package", + "tree": { + "sha": "6b7c0f570d5c0623c7ecffef1b16fbb21c44cf8c", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/6b7c0f570d5c0623c7ecffef1b16fbb21c44cf8c" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "html_url": "https://github.com/opticdev/optic/commit/044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/044ff0b82fd63f150ec12eb2d0f62fb6648e4183/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "url": "https://api.github.com/repos/opticdev/optic/commits/bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "html_url": "https://github.com/opticdev/optic/commit/bd0d0dcc638d7f7e478adef7275166f60cf427ae" + } + ] + }, + { + "sha": "bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OmJkMGQwZGNjNjM4ZDdmN2U0NzhhZGVmNzI3NTE2NmY2MGNmNDI3YWU=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-23T13:34:29Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-23T13:34:29Z" + }, + "message": "Removed dead test data package", + "tree": { + "sha": "2aebfe17749fa248969635f037c2bab0a8524818", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/2aebfe17749fa248969635f037c2bab0a8524818" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "html_url": "https://github.com/opticdev/optic/commit/bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/bd0d0dcc638d7f7e478adef7275166f60cf427ae/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "url": "https://api.github.com/repos/opticdev/optic/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "html_url": "https://github.com/opticdev/optic/commit/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6" + } + ] + }, + { + "sha": "b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OmI1Y2RmZmMzNzhmZjY1NzRlYThhM2MwZDA0YWU4ZDhiNGEwYmFmMzQ=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "acunniffe@gmail.com", + "date": "2020-06-23T13:29:54Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-23T13:29:54Z" + }, + "message": "Merge branch 'develop' into make-ids-deterministic", + "tree": { + "sha": "2c7c881744e8630a511958c9e1794848a29542fd", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/2c7c881744e8630a511958c9e1794848a29542fd" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe8gPSCRBK7hj4Ov3rIwAAdHIIACRodW1qSkcFnasU/ZMH7Vn/\nWEloyFJCHP7lv5QAgdmhbDbgWRMxcSNwJTbpAwr4E9ynEHoWsHWyUsXU3OxVuTjb\noLkwConUfqtn460AlbbclbS4W8h46maBhWq9MEcEzqisZxqqvK0rna2InUkZUNdS\npJaU7b0fViGw+hDj2qmYpO3gV4+jo3dq2cku/aP107g7MURTVKPSpAV063waIgyo\n36GK2mkm6ktxMklllfO8UZcDX17Sd2j3XQDtcA47JOcKQKW4X+rBlHeyNysMw1vo\nf8BQ3HnwQp4m/Rha9bQTHvfoyE5RRhS/lJ1zoJef5up8XY95DP7Si8gLLxt401c=\n=aE66\n-----END PGP SIGNATURE-----\n", + "payload": "tree 2c7c881744e8630a511958c9e1794848a29542fd\nparent 66b988153d4ab5e1f04e74ebf068da2ddf8b14c6\nparent 5c11863d3c63f4ffc36251be198b6ac653c3273c\nauthor Aidan Cunniffe 1592918994 -0400\ncommitter GitHub 1592918994 -0400\n\nMerge branch 'develop' into make-ids-deterministic" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "html_url": "https://github.com/opticdev/optic/commit/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34/comments", + "author": { + "login": "acunniffe", + "id": 5900338, + "node_id": "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url": "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/acunniffe", + "html_url": "https://github.com/acunniffe", + "followers_url": "https://api.github.com/users/acunniffe/followers", + "following_url": "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url": "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url": "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url": "https://api.github.com/users/acunniffe/orgs", + "repos_url": "https://api.github.com/users/acunniffe/repos", + "events_url": "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url": "https://api.github.com/users/acunniffe/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "url": "https://api.github.com/repos/opticdev/optic/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "html_url": "https://github.com/opticdev/optic/commit/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6" + }, + { + "sha": "5c11863d3c63f4ffc36251be198b6ac653c3273c", + "url": "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "html_url": "https://github.com/opticdev/optic/commit/5c11863d3c63f4ffc36251be198b6ac653c3273c" + } + ] + }, + { + "sha": "66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjY2Yjk4ODE1M2Q0YWI1ZTFmMDRlNzRlYmYwNjhkYTJkZGY4YjE0YzY=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-23T13:26:32Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-23T13:26:32Z" + }, + "message": "added streaming distribution aware shape hash", + "tree": { + "sha": "e29524115846772bad72a0e7a7e93c129d171abc", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/e29524115846772bad72a0e7a7e93c129d171abc" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "html_url": "https://github.com/opticdev/optic/commit/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "519a5eb04b73e702964a30e544de938a44defd23", + "url": "https://api.github.com/repos/opticdev/optic/commits/519a5eb04b73e702964a30e544de938a44defd23", + "html_url": "https://github.com/opticdev/optic/commit/519a5eb04b73e702964a30e544de938a44defd23" + } + ] + }, + { + "sha": "5c11863d3c63f4ffc36251be198b6ac653c3273c", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjVjMTE4NjNkM2M2M2Y0ZmZjMzYyNTFiZTE5OGI2YWM2NTNjMzI3M2M=", + "commit": { + "author": { + "name": "Jaap van Hardeveld", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T13:10:19Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-23T13:10:19Z" + }, + "message": "Merge pull request #222 from JaapRood/feature/local-transparent-proxy-config\n\nAdd support for `targetUrl` in optic.yml", + "tree": { + "sha": "49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe8f87CRBK7hj4Ov3rIwAAdHIIAGT1pT5n8pRODKZ4ueQCB5Cb\nXSCP30gqXRkXp2h83Ju+snvOF6igw/rs8BenVC4+OerrIhbC05LAqp/3k9mngPS4\ng3LdP/RRRdYSGBfliI+2zp8gnaWIjDtEbNwyBwExt7PvZ+Kuupm5sMl1RMdbjZ6V\nCtrUd/jwZh5atAdKsdaS+s12IbuCuRlLwtEBWztziwAmj/ksPAPTBlQ5BxRhs/ft\nW9u6hmjTsahvLximU259m5qHdL/4Vi8M1AOEFSIHdTGj1aCkPBwEux6wauwA6R2k\nHAKHLpLHnlOBIqRYSPJay6IBUYvQ9BLSK3xMB0maopUdJSfVuAIU1KdSdzbQnSE=\n=gLWA\n-----END PGP SIGNATURE-----\n", + "payload": "tree 49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f\nparent 528cdf933d3785d359ff2667218b434bb05b590b\nparent 2cb2bdecd5bfba87c3f24defefaa959ea9602727\nauthor Jaap van Hardeveld 1592917819 +0200\ncommitter GitHub 1592917819 +0200\n\nMerge pull request #222 from JaapRood/feature/local-transparent-proxy-config\n\nAdd support for `targetUrl` in optic.yml" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "html_url": "https://github.com/opticdev/optic/commit/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c/comments", + "author": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "528cdf933d3785d359ff2667218b434bb05b590b", + "url": "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url": "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b" + }, + { + "sha": "2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "url": "https://api.github.com/repos/opticdev/optic/commits/2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "html_url": "https://github.com/opticdev/optic/commit/2cb2bdecd5bfba87c3f24defefaa959ea9602727" + } + ] + }, + { + "sha": "2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjJjYjJiZGVjZDViZmJhODdjM2YyNGRlZmVmYWE5NTllYTk2MDI3Mjc=", + "commit": { + "author": { + "name": "Jaap Rood", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T10:59:11Z" + }, + "committer": { + "name": "Jaap Rood", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T10:59:11Z" + }, + "message": "Support proxy as an alias for targetUrl, without deprecation warning for now", + "tree": { + "sha": "49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "html_url": "https://github.com/opticdev/optic/commit/2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/2cb2bdecd5bfba87c3f24defefaa959ea9602727/comments", + "author": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "url": "https://api.github.com/repos/opticdev/optic/commits/2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "html_url": "https://github.com/opticdev/optic/commit/2f71d7ad36c55a13095d4290721f1ee19ed4173b" + } + ] + }, + { + "sha": "2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjJmNzFkN2FkMzZjNTVhMTMwOTVkNDI5MDcyMWYxZWUxOWVkNDE3M2I=", + "commit": { + "author": { + "name": "Jaap Rood", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T10:33:24Z" + }, + "committer": { + "name": "Jaap Rood", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T10:33:24Z" + }, + "message": "Disable the verifying of a command when there isn't one through api check", + "tree": { + "sha": "055dcfaf198b0676fe48b5f39fa69c47fa425a7b", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/055dcfaf198b0676fe48b5f39fa69c47fa425a7b" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "html_url": "https://github.com/opticdev/optic/commit/2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/2f71d7ad36c55a13095d4290721f1ee19ed4173b/comments", + "author": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "url": "https://api.github.com/repos/opticdev/optic/commits/69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "html_url": "https://github.com/opticdev/optic/commit/69de581bf91cc0bd96d1494129bf793a1b7b9a9f" + } + ] + }, + { + "sha": "69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjY5ZGU1ODFiZjkxY2MwYmQ5NmQxNDk0MTI5YmY3OTNhMWI3YjlhOWY=", + "commit": { + "author": { + "name": "Jaap Rood", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T09:17:54Z" + }, + "committer": { + "name": "Jaap Rood", + "email": "jaap@jaaprood.nl", + "date": "2020-06-23T09:17:54Z" + }, + "message": "Add support for `targetUrl` in optic.yml, allowing control over where proxy points to", + "tree": { + "sha": "e86998b6a07f042570d96570a2784128ebf2e4a4", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/e86998b6a07f042570d96570a2784128ebf2e4a4" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "html_url": "https://github.com/opticdev/optic/commit/69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/69de581bf91cc0bd96d1494129bf793a1b7b9a9f/comments", + "author": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "JaapRood", + "id": 857549, + "node_id": "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url": "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/JaapRood", + "html_url": "https://github.com/JaapRood", + "followers_url": "https://api.github.com/users/JaapRood/followers", + "following_url": "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url": "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url": "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url": "https://api.github.com/users/JaapRood/orgs", + "repos_url": "https://api.github.com/users/JaapRood/repos", + "events_url": "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url": "https://api.github.com/users/JaapRood/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "528cdf933d3785d359ff2667218b434bb05b590b", + "url": "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url": "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b" + } + ] + }, + { + "sha": "519a5eb04b73e702964a30e544de938a44defd23", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjUxOWE1ZWIwNGI3M2U3MDI5NjRhMzBlNTQ0ZGU5MzhhNDRkZWZkMjM=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-18T15:08:46Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-18T15:08:46Z" + }, + "message": "Commit snapshots", + "tree": { + "sha": "0af9a5d332d96fceb10ff1c9c4ce31f5cd11bd6a", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/0af9a5d332d96fceb10ff1c9c4ce31f5cd11bd6a" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/519a5eb04b73e702964a30e544de938a44defd23", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/519a5eb04b73e702964a30e544de938a44defd23", + "html_url": "https://github.com/opticdev/optic/commit/519a5eb04b73e702964a30e544de938a44defd23", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/519a5eb04b73e702964a30e544de938a44defd23/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "2fda9b180b0456840cd2a6c8b93b5684cda77646", + "url": "https://api.github.com/repos/opticdev/optic/commits/2fda9b180b0456840cd2a6c8b93b5684cda77646", + "html_url": "https://github.com/opticdev/optic/commit/2fda9b180b0456840cd2a6c8b93b5684cda77646" + } + ] + }, + { + "sha": "2fda9b180b0456840cd2a6c8b93b5684cda77646", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjJmZGE5YjE4MGIwNDU2ODQwY2QyYTZjOGI5M2I1Njg0Y2RhNzc2NDY=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-18T15:06:23Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-18T15:06:23Z" + }, + "message": "Merge remote-tracking branch 'aidan-upstream/distribution-aware-shape-hash-rethink' into make-ids-deterministic", + "tree": { + "sha": "c2f993b10db2d10d2f5131a32f09383ad73f793e", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/c2f993b10db2d10d2f5131a32f09383ad73f793e" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/2fda9b180b0456840cd2a6c8b93b5684cda77646", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/2fda9b180b0456840cd2a6c8b93b5684cda77646", + "html_url": "https://github.com/opticdev/optic/commit/2fda9b180b0456840cd2a6c8b93b5684cda77646", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/2fda9b180b0456840cd2a6c8b93b5684cda77646/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "url": "https://api.github.com/repos/opticdev/optic/commits/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "html_url": "https://github.com/opticdev/optic/commit/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831" + }, + { + "sha": "efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "url": "https://api.github.com/repos/opticdev/optic/commits/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "html_url": "https://github.com/opticdev/optic/commit/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5" + } + ] + }, + { + "sha": "4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjRjMzE3YjU0NTc1NzY3ZTI2YWQ2YTc0YmRjOWVlYjllOWM4ZjY4MzE=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-18T14:47:29Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-18T14:47:29Z" + }, + "message": "making ids deterministic", + "tree": { + "sha": "b539f92f119fba107212ad5b49040861dc209069", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/b539f92f119fba107212ad5b49040861dc209069" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "html_url": "https://github.com/opticdev/optic/commit/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "url": "https://api.github.com/repos/opticdev/optic/commits/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "html_url": "https://github.com/opticdev/optic/commit/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f" + } + ] + }, + { + "sha": "6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjZhYjRjYmEyN2Y1YTJiNDdlNzg5NjZlZDFlMWM3Mzc3MWMyMDFlOWY=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-18T14:47:19Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-18T14:47:19Z" + }, + "message": "making ids deterministic", + "tree": { + "sha": "ae53e9ff304c94739412e9312e176218b8dfdd09", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/ae53e9ff304c94739412e9312e176218b8dfdd09" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "html_url": "https://github.com/opticdev/optic/commit/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "528cdf933d3785d359ff2667218b434bb05b590b", + "url": "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url": "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b" + } + ] + }, + { + "sha": "efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OmVmZDVhNDhhZjNlMmFmNjVkOGU0ZTk4NWU1ZWZlZTc1YmJmOWNlZjU=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-14T17:41:08Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-14T17:41:08Z" + }, + "message": "distribution aware shape builder should be memory efficient", + "tree": { + "sha": "b23bf0275d53ddf596e17c70a312ac33caa36e83", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/b23bf0275d53ddf596e17c70a312ac33caa36e83" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "html_url": "https://github.com/opticdev/optic/commit/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "528cdf933d3785d359ff2667218b434bb05b590b", + "url": "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url": "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b" + } + ] + }, + { + "sha": "528cdf933d3785d359ff2667218b434bb05b590b", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjUyOGNkZjkzM2QzNzg1ZDM1OWZmMjY2NzIxOGI0MzRiYjA1YjU5MGI=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "acunniffe@gmail.com", + "date": "2020-06-05T20:40:32Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-05T20:40:32Z" + }, + "message": "Merge pull request #220 from acunniffe/diff-manager-performance\n\nPartition diffs by pathId and method", + "tree": { + "sha": "967739f4d0395bdf708ad9a9eecd98497ff89185", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/967739f4d0395bdf708ad9a9eecd98497ff89185" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe2q3ACRBK7hj4Ov3rIwAAdHIIAIqfSK+vBmm10W8aGjMpgkFr\n2lrJZahXSpI06IdV+ws1pxBvmKZT/ZBb3+MyW2CZ7uiMxmL716KtgomQySUavFAa\nzvi1RTOJVx17u0XEAPf5ZX+0UyF+h+Q4qbY6fpZqmSIR4kvYcLdmkFW+cDB+V6oZ\ntXG2HuW61OSCRMAdIdxEFhUeMpukOwSFHpTYjuQ9xRRortBmmQ7hWFBzu7Q5sAQ5\nMi1fDtdl0DVqTrW+oIogeF02arSDsijGMD62UOERtAioRYIY0QEliSl2oNBaGBc0\nGlHGRLUj06uNu8MWsrrbmDSawHUd2cAbbBdmZw/BsmrEW638nYbffz5ubaScSoA=\n=CENH\n-----END PGP SIGNATURE-----\n", + "payload": "tree 967739f4d0395bdf708ad9a9eecd98497ff89185\nparent 2fe98ec33767389a022670f33791a3a57a402e38\nparent 3c96b5cd6a4d8d979115b97521b525e715859879\nauthor Aidan Cunniffe 1591389632 -0400\ncommitter GitHub 1591389632 -0400\n\nMerge pull request #220 from acunniffe/diff-manager-performance\n\nPartition diffs by pathId and method" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url": "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b/comments", + "author": { + "login": "acunniffe", + "id": 5900338, + "node_id": "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url": "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/acunniffe", + "html_url": "https://github.com/acunniffe", + "followers_url": "https://api.github.com/users/acunniffe/followers", + "following_url": "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url": "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url": "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url": "https://api.github.com/users/acunniffe/orgs", + "repos_url": "https://api.github.com/users/acunniffe/repos", + "events_url": "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url": "https://api.github.com/users/acunniffe/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "2fe98ec33767389a022670f33791a3a57a402e38", + "url": "https://api.github.com/repos/opticdev/optic/commits/2fe98ec33767389a022670f33791a3a57a402e38", + "html_url": "https://github.com/opticdev/optic/commit/2fe98ec33767389a022670f33791a3a57a402e38" + }, + { + "sha": "3c96b5cd6a4d8d979115b97521b525e715859879", + "url": "https://api.github.com/repos/opticdev/optic/commits/3c96b5cd6a4d8d979115b97521b525e715859879", + "html_url": "https://github.com/opticdev/optic/commit/3c96b5cd6a4d8d979115b97521b525e715859879" + } + ] + }, + { + "sha": "3c96b5cd6a4d8d979115b97521b525e715859879", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjNjOTZiNWNkNmE0ZDhkOTc5MTE1Yjk3NTIxYjUyNWU3MTU4NTk4Nzk=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-05T20:32:40Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-05T20:32:40Z" + }, + "message": "Merge branch 'diff-manager-performance' of https://github.com/acunniffe/optic into diff-manager-performance", + "tree": { + "sha": "967739f4d0395bdf708ad9a9eecd98497ff89185", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/967739f4d0395bdf708ad9a9eecd98497ff89185" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/3c96b5cd6a4d8d979115b97521b525e715859879", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/3c96b5cd6a4d8d979115b97521b525e715859879", + "html_url": "https://github.com/opticdev/optic/commit/3c96b5cd6a4d8d979115b97521b525e715859879", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/3c96b5cd6a4d8d979115b97521b525e715859879/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "url": "https://api.github.com/repos/opticdev/optic/commits/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "html_url": "https://github.com/opticdev/optic/commit/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e" + }, + { + "sha": "5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "url": "https://api.github.com/repos/opticdev/optic/commits/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "html_url": "https://github.com/opticdev/optic/commit/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3" + } + ] + }, + { + "sha": "ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OmVmM2VhMzc3MjljMzA0YzJjMmEwNDE0YWEyMjRkMGE0YzY1YmJmN2U=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-05T20:31:52Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-05T20:31:52Z" + }, + "message": "fixed incorrect name in optic-ci", + "tree": { + "sha": "cc2a22552387f9b55979fefccdcb2bd09a9884b2", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/cc2a22552387f9b55979fefccdcb2bd09a9884b2" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "html_url": "https://github.com/opticdev/optic/commit/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "url": "https://api.github.com/repos/opticdev/optic/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "html_url": "https://github.com/opticdev/optic/commit/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94" + } + ] + }, + { + "sha": "5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjVlYzM3NmJmNGU0ZWExOGMwZDViZjlmYjgzM2U4MTJhNzE0MTM5YjM=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "acunniffe@gmail.com", + "date": "2020-06-05T20:22:59Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-05T20:22:59Z" + }, + "message": "Merge branch 'develop' into diff-manager-performance", + "tree": { + "sha": "9738112e493a143e6943464b769229dbee4d8f47", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/9738112e493a143e6943464b769229dbee4d8f47" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe2qmjCRBK7hj4Ov3rIwAAdHIIAAdBdVfYCgX8tyxjIGL2nTkl\nFCjtmgciD2qG/aHqKksj1p8pOH58p8Yjb8fPy/MvnAI+WCmDovHX3pa4mX64xzBD\npIunTsvUzWhNcAlBCsRUXh9PNBHiYzyMZ/7EJMNKX+Sv9QrsRZ76a0wbz0+b2qWW\nlRQk4h7P11gQFkJH1rahAZTIi7MsiEUy8fSnkfDVkSpA+xfZWSNa6qq8S7vMBAlN\nlP6zXQ07ku4R1EOi1QkmY9u/oHYrshzARTTCZVKhF6XX71YiOYIxcaqBycWXneBl\nriKISNXeVi+3FhS4BoMX9VMIbjPdLPylZk7/cy35k1/VavFFSBnW9HHCw6H6gKM=\n=PwFy\n-----END PGP SIGNATURE-----\n", + "payload": "tree 9738112e493a143e6943464b769229dbee4d8f47\nparent 121000d75ccc57c3d2b3ad05e5a26fa0b2191e94\nparent 2fe98ec33767389a022670f33791a3a57a402e38\nauthor Aidan Cunniffe 1591388579 -0400\ncommitter GitHub 1591388579 -0400\n\nMerge branch 'develop' into diff-manager-performance" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "html_url": "https://github.com/opticdev/optic/commit/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3/comments", + "author": { + "login": "acunniffe", + "id": 5900338, + "node_id": "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url": "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/acunniffe", + "html_url": "https://github.com/acunniffe", + "followers_url": "https://api.github.com/users/acunniffe/followers", + "following_url": "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url": "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url": "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url": "https://api.github.com/users/acunniffe/orgs", + "repos_url": "https://api.github.com/users/acunniffe/repos", + "events_url": "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url": "https://api.github.com/users/acunniffe/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "url": "https://api.github.com/repos/opticdev/optic/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "html_url": "https://github.com/opticdev/optic/commit/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94" + }, + { + "sha": "2fe98ec33767389a022670f33791a3a57a402e38", + "url": "https://api.github.com/repos/opticdev/optic/commits/2fe98ec33767389a022670f33791a3a57a402e38", + "html_url": "https://github.com/opticdev/optic/commit/2fe98ec33767389a022670f33791a3a57a402e38" + } + ] + }, + { + "sha": "121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjEyMTAwMGQ3NWNjYzU3YzNkMmIzYWQwNWU1YTI2ZmEwYjIxOTFlOTQ=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-05T17:30:57Z" + }, + "committer": { + "name": "Aidan Cunniffe", + "email": "aidan@useoptic.com", + "date": "2020-06-05T17:30:57Z" + }, + "message": "Partition diffs by pathId and method", + "tree": { + "sha": "31e5a44b8a0c37b58b90adf2084a77d5a128b60f", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/31e5a44b8a0c37b58b90adf2084a77d5a128b60f" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "html_url": "https://github.com/opticdev/optic/commit/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94/comments", + "author": null, + "committer": null, + "parents": [ + { + "sha": "b2644945b854f7c351a9c944eaf8726ddb055b5e", + "url": "https://api.github.com/repos/opticdev/optic/commits/b2644945b854f7c351a9c944eaf8726ddb055b5e", + "html_url": "https://github.com/opticdev/optic/commit/b2644945b854f7c351a9c944eaf8726ddb055b5e" + } + ] + }, + { + "sha": "2fe98ec33767389a022670f33791a3a57a402e38", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1OjJmZTk4ZWMzMzc2NzM4OWEwMjI2NzBmMzM3OTFhM2E1N2E0MDJlMzg=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "acunniffe@gmail.com", + "date": "2020-06-05T17:21:53Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-05T17:21:53Z" + }, + "message": "Merge pull request #219 from acunniffe/changes-pre-release\n\nChanges for 8.1 release", + "tree": { + "sha": "10e9ff36b2f66343cd57b8da89317860b63d476c", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/10e9ff36b2f66343cd57b8da89317860b63d476c" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/2fe98ec33767389a022670f33791a3a57a402e38", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe2n8xCRBK7hj4Ov3rIwAAdHIIACAx1CSBk0TbRilQBhCazSmn\nHtuIi0zvam6wjpitcPdvRDErxFJ9bZ3kcc1yKoW+xitEXKnMn7wknx2KWHmczT2V\nRSmfV3TQPUIBMkTbdu/btvPfke2Wsu9k3mhXd2bGiUKkzHJkaUuazK1bl2l00Dfg\nqt3Mb5j/FQ5xTg0+k1kfTkENzMkHLJy7TVO2pLMiEZNDt3HqvPtmI/92Zhbyzgtp\nEBEepR6C7m+fTkxa8KAMs61laZxT5nzv0PIIjGqWHS+vW6eYKMPPTBUPmVUo+6ZC\nt7TxEWtmeHKX68fpVgxF7jEmKrhI/BYMqqFAsB1HBeNAfS3yAIHOs4dMWJ+FiEA=\n=1EQg\n-----END PGP SIGNATURE-----\n", + "payload": "tree 10e9ff36b2f66343cd57b8da89317860b63d476c\nparent b2644945b854f7c351a9c944eaf8726ddb055b5e\nparent 766e1258f2585affbef466dfd11ee80019725179\nauthor Aidan Cunniffe 1591377713 -0400\ncommitter GitHub 1591377713 -0400\n\nMerge pull request #219 from acunniffe/changes-pre-release\n\nChanges for 8.1 release " + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/2fe98ec33767389a022670f33791a3a57a402e38", + "html_url": "https://github.com/opticdev/optic/commit/2fe98ec33767389a022670f33791a3a57a402e38", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/2fe98ec33767389a022670f33791a3a57a402e38/comments", + "author": { + "login": "acunniffe", + "id": 5900338, + "node_id": "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url": "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/acunniffe", + "html_url": "https://github.com/acunniffe", + "followers_url": "https://api.github.com/users/acunniffe/followers", + "following_url": "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url": "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url": "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url": "https://api.github.com/users/acunniffe/orgs", + "repos_url": "https://api.github.com/users/acunniffe/repos", + "events_url": "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url": "https://api.github.com/users/acunniffe/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "b2644945b854f7c351a9c944eaf8726ddb055b5e", + "url": "https://api.github.com/repos/opticdev/optic/commits/b2644945b854f7c351a9c944eaf8726ddb055b5e", + "html_url": "https://github.com/opticdev/optic/commit/b2644945b854f7c351a9c944eaf8726ddb055b5e" + }, + { + "sha": "766e1258f2585affbef466dfd11ee80019725179", + "url": "https://api.github.com/repos/opticdev/optic/commits/766e1258f2585affbef466dfd11ee80019725179", + "html_url": "https://github.com/opticdev/optic/commit/766e1258f2585affbef466dfd11ee80019725179" + } + ] + }, + { + "sha": "766e1258f2585affbef466dfd11ee80019725179", + "node_id": "MDY6Q29tbWl0MTIzNjA2NzY1Ojc2NmUxMjU4ZjI1ODVhZmZiZWY0NjZkZmQxMWVlODAwMTk3MjUxNzk=", + "commit": { + "author": { + "name": "Aidan Cunniffe", + "email": "acunniffe@gmail.com", + "date": "2020-06-05T16:45:06Z" + }, + "committer": { + "name": "GitHub", + "email": "noreply@github.com", + "date": "2020-06-05T16:45:06Z" + }, + "message": "Merge branch 'develop' into changes-pre-release", + "tree": { + "sha": "10e9ff36b2f66343cd57b8da89317860b63d476c", + "url": "https://api.github.com/repos/opticdev/optic/git/trees/10e9ff36b2f66343cd57b8da89317860b63d476c" + }, + "url": "https://api.github.com/repos/opticdev/optic/git/commits/766e1258f2585affbef466dfd11ee80019725179", + "comment_count": 0, + "verification": { + "verified": true, + "reason": "valid", + "signature": "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe2naSCRBK7hj4Ov3rIwAAdHIIAJg+zZ4x590V9CTl+KQM2vNc\nqo1SshrjUPmgpLPuCVJxmYzleH00LM/3fG8y0BwQfg27rI/zw8/NxzMlSbQSVRGs\ne8yBj9mVJRGko6I3QziZuIbaidvV02lZ67qDl7y8hOE0lIl1cDsYPh63l1ZLqIcx\nFvYL4YgQPI/lnsLIObGCVWgPmwLmIMwMCoQv9+Xmzl7Nl18mBC6cJulxhLxJSKz6\nfrh7jLnfUvbmAERMEYtdw46//pBWmFvnAVaMPtnIx4u/cHOBUhcVlgm9gAnFdlgg\nd9uHfFxEJGVNTjBxsxYDd2634xCu74hdb5Roxd2DTMf8gzgNpx1fNKnb9IWGTIs=\n=caOt\n-----END PGP SIGNATURE-----\n", + "payload": "tree 10e9ff36b2f66343cd57b8da89317860b63d476c\nparent 5ea76af7a0e30692ab6ff65343d1fd59bfca8a3f\nparent b2644945b854f7c351a9c944eaf8726ddb055b5e\nauthor Aidan Cunniffe 1591375506 -0400\ncommitter GitHub 1591375506 -0400\n\nMerge branch 'develop' into changes-pre-release" + } + }, + "url": "https://api.github.com/repos/opticdev/optic/commits/766e1258f2585affbef466dfd11ee80019725179", + "html_url": "https://github.com/opticdev/optic/commit/766e1258f2585affbef466dfd11ee80019725179", + "comments_url": "https://api.github.com/repos/opticdev/optic/commits/766e1258f2585affbef466dfd11ee80019725179/comments", + "author": { + "login": "acunniffe", + "id": 5900338, + "node_id": "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url": "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/acunniffe", + "html_url": "https://github.com/acunniffe", + "followers_url": "https://api.github.com/users/acunniffe/followers", + "following_url": "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url": "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url": "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url": "https://api.github.com/users/acunniffe/orgs", + "repos_url": "https://api.github.com/users/acunniffe/repos", + "events_url": "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url": "https://api.github.com/users/acunniffe/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "web-flow", + "id": 19864447, + "node_id": "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url": "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/web-flow", + "html_url": "https://github.com/web-flow", + "followers_url": "https://api.github.com/users/web-flow/followers", + "following_url": "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url": "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url": "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/web-flow/subscriptions", + "organizations_url": "https://api.github.com/users/web-flow/orgs", + "repos_url": "https://api.github.com/users/web-flow/repos", + "events_url": "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url": "https://api.github.com/users/web-flow/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "sha": "5ea76af7a0e30692ab6ff65343d1fd59bfca8a3f", + "url": "https://api.github.com/repos/opticdev/optic/commits/5ea76af7a0e30692ab6ff65343d1fd59bfca8a3f", + "html_url": "https://github.com/opticdev/optic/commit/5ea76af7a0e30692ab6ff65343d1fd59bfca8a3f" + }, + { + "sha": "b2644945b854f7c351a9c944eaf8726ddb055b5e", + "url": "https://api.github.com/repos/opticdev/optic/commits/b2644945b854f7c351a9c944eaf8726ddb055b5e", + "html_url": "https://github.com/opticdev/optic/commit/b2644945b854f7c351a9c944eaf8726ddb055b5e" + } + ] + } +] diff --git a/core/optic/shared/src/test/scala/com/useoptic/contexts/requests/otherspec.scala b/core/optic/shared/src/test/scala/com/useoptic/contexts/requests/otherspec.scala deleted file mode 100644 index 049b21b69a..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/contexts/requests/otherspec.scala +++ /dev/null @@ -1,7 +0,0 @@ -package com.useoptic.contexts.requests - -import org.scalatest.FlatSpec - -class Otherspec extends FlatSpec { - -} diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/DiffHelpersSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/DiffHelpersSpec.scala index 693968eadd..69d1e66b5c 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/DiffHelpersSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/DiffHelpersSpec.scala @@ -6,7 +6,6 @@ import com.useoptic.contexts.rfc.Commands.RfcCommand import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.initial.{DistributionAwareShapeBuilder} import com.useoptic.diff.interactions.{InteractionTrail, ResponseBody, SpecResponseBody, TestHelpers, UnmatchedResponseBodyShape} -import com.useoptic.diff.interactions.interpretations.InteractionHelpers import com.useoptic.diff.shapes.JsonTrailPathComponent._ import com.useoptic.diff.shapes.resolvers.DefaultShapesResolvers import com.useoptic.diff.shapes.{JsonTrail, ListItemTrail, ObjectFieldTrail, ShapeTrail, UnmatchedShape} diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/InteractionHelpers.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/InteractionHelpers.scala new file mode 100644 index 0000000000..41ace64a63 --- /dev/null +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/InteractionHelpers.scala @@ -0,0 +1,66 @@ +package com.useoptic.diff.helpers + +import com.useoptic.types.capture.{ArbitraryData, Body, HttpInteraction, Request, Response} +import io.circe.Json + +object InteractionHelpers { + def simplePut(requestBody: Json, statusCode: Int = 200, contentType: String = "application/json"): HttpInteraction = { + HttpInteraction( + "uuid", + Request( + "some.host", + "PUT", + "/", + ArbitraryData(None, None, None), + ArbitraryData(None, None, None), + Body(Some(contentType), ArbitraryData(None, Some(requestBody.noSpaces), None)) + ), + Response( + statusCode, + ArbitraryData(None, None, None), + Body(None, ArbitraryData(None, None, None)) + ), + Vector() + ) + } + + def simplePost(requestBody: Json, statusCode: Int = 200, contentType: String = "application/json"): HttpInteraction = { + HttpInteraction( + "uuid", + Request( + "some.host", + "POST", + "/", + ArbitraryData(None, None, None), + ArbitraryData(None, None, None), + Body(Some(contentType), ArbitraryData(None, Some(requestBody.noSpaces), None)) + ), + Response( + statusCode, + ArbitraryData(None, None, None), + Body(None, ArbitraryData(None, None, None)) + ), + Vector() + ) + } + + def simpleGet(responseBody: Json, statusCode: Int = 200, contentType: String = "application/json"): HttpInteraction = { + HttpInteraction( + "uuid", + Request( + "some.host", + "GET", + "/", + ArbitraryData(None, None, None), + ArbitraryData(None, None, None), + Body(None, ArbitraryData(None, None, None)) + ), + Response( + statusCode, + ArbitraryData(None, None, None), + Body(Some(contentType), ArbitraryData(None, Some(responseBody.noSpaces), None)) + ), + Vector() + ) + } +} diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilderSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilderSpec.scala deleted file mode 100644 index ba48c9393d..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilderSpec.scala +++ /dev/null @@ -1,198 +0,0 @@ -package com.useoptic.diff.initial - -import com.useoptic.contexts.rfc.Commands.RfcCommand -import com.useoptic.contexts.rfc.{RfcCommandContext, RfcService, RfcServiceJSFacade} -import com.useoptic.contexts.shapes.Commands.ShapeId -import com.useoptic.contexts.shapes.ShapesHelper.StringKind -import com.useoptic.diff.shapes.{JsonLikeAndSpecDiffVisitors, JsonLikeAndSpecTraverser, ShapeDiffResult} -import com.useoptic.diff.shapes.resolvers.DefaultShapesResolvers -import com.useoptic.dsa.OpticIds -import com.useoptic.end_to_end.fixtures.JsonExamples -import com.useoptic.types.capture.{JsonLike, JsonLikeFrom} -import org.scalatest.FunSpec - -import scala.util.Try - -class DistributionAwareShapeBuilderSpec extends FunSpec { - - describe("aggregate values by trails") { - - lazy val todoMap = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.basicTodo).get, - JsonLikeFrom.json(JsonExamples.basicTodoWithDescription).get, - JsonLikeFrom.json(JsonExamples.basicTodoWithoutStatus).get, - ))(OpticIds.newDeterministicIdGenerator) - - - it("can stage object for creation with some optional fields") { - val shapesToMake = DistributionAwareShapeBuilder.toShapes(todoMap) - assert(shapesToMake.isInstanceOf[ObjectWithFields]) - assert(shapesToMake.asInstanceOf[ObjectWithFields].fields.size == 3) - println(shapesToMake.asInstanceOf[ObjectWithFields].fields) - assert(shapesToMake.asInstanceOf[ObjectWithFields].fields.count(_.shape.isInstanceOf[OptionalShape]) == 2) - } - - it("can stage array for creation with example items all of same type") { - - lazy val stringArrayMap = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.stringArray).get - ))(OpticIds.newDeterministicIdGenerator) - - val shapesToMake = DistributionAwareShapeBuilder.toShapes(stringArrayMap) - assert(shapesToMake.isInstanceOf[ListOfShape]) - assert(shapesToMake.asInstanceOf[ListOfShape].shape.isInstanceOf[PrimitiveKind]) - assert(shapesToMake.asInstanceOf[ListOfShape].shape.asInstanceOf[PrimitiveKind].baseShape == StringKind) - } - - it("can stage array for creation with example items all of different types") { - - lazy val stringArrayMap = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.stringArrayWithNumbers).get - ))(OpticIds.newDeterministicIdGenerator) - - val shapesToMake = DistributionAwareShapeBuilder.toShapes(stringArrayMap) - assert(shapesToMake.isInstanceOf[ListOfShape]) - assert(shapesToMake.asInstanceOf[ListOfShape].shape.isInstanceOf[OneOfShape]) - assert(shapesToMake.asInstanceOf[ListOfShape].shape.asInstanceOf[OneOfShape].branches.size == 2) - } - - it("can stage array with unknown type") { - - lazy val stringArrayMap = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.emptyArray).get - ))(OpticIds.newDeterministicIdGenerator) - - val shapesToMake = DistributionAwareShapeBuilder.toShapes(stringArrayMap) - assert(shapesToMake.isInstanceOf[ListOfShape]) - assert(shapesToMake.asInstanceOf[ListOfShape].shape.isInstanceOf[Unknown]) - } - - describe("nullable") { - - it("can stage a nullable of unknown if all examples were null") { - lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.objectWithNull).get, - JsonLikeFrom.json(JsonExamples.objectWithNull).get, - ))(OpticIds.newDeterministicIdGenerator) - - val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) - - val field = shapesToMake.asInstanceOf[ObjectWithFields].fields.head - val fieldShapeAsNullable = field.shape.asInstanceOf[NullableShape] - assert(fieldShapeAsNullable.shape.isInstanceOf[Unknown]) - } - - it("root one of") { - lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.emptyArray).get, - JsonLikeFrom.json(JsonExamples.emptyObject).get, - ))(OpticIds.newDeterministicIdGenerator) - - val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) - assert(shapesToMake.isInstanceOf[OneOfShape]) - } - - it("can stage a nullable of string") { - lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.objectWithNull).get, - JsonLikeFrom.json(JsonExamples.objectWithNullAsString).get, - ))(OpticIds.newDeterministicIdGenerator) - - val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) - - val field = shapesToMake.asInstanceOf[ObjectWithFields].fields.head - val fieldShapeAsNullable = field.shape.asInstanceOf[NullableShape] - assert(fieldShapeAsNullable.shape.isInstanceOf[PrimitiveKind]) - } - - it("can stage a nullable of one of string number") { - lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.objectWithNull).get, - JsonLikeFrom.json(JsonExamples.objectWithNullAsString).get, - JsonLikeFrom.json(JsonExamples.objectWithNullAsNumber).get, - ))(OpticIds.newDeterministicIdGenerator) - - val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) - - val field = shapesToMake.asInstanceOf[ObjectWithFields].fields.head - val fieldShapeAsNullable = field.shape.asInstanceOf[NullableShape] - assert(fieldShapeAsNullable.shape.isInstanceOf[OneOfShape]) - } - - } - - describe("lists of objects") { - it("can stage a list of the same object shape") { - lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.objectsWithOptionalsArray).get - ))(OpticIds.newDeterministicIdGenerator) - - val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) - val fields = shapesToMake.asInstanceOf[ListOfShape].shape.asInstanceOf[ObjectWithFields].fields - - assert(fields.forall(i => i.shape.isInstanceOf[OptionalShape])) - } - - it("can stage a list of objects and strings") { - lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( - JsonLikeFrom.json(JsonExamples.objectsAndStringsInArray).get - ))(OpticIds.newDeterministicIdGenerator) - - val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) - val branches = shapesToMake.asInstanceOf[ListOfShape].shape.asInstanceOf[OneOfShape].branches - assert(branches(0).isInstanceOf[PrimitiveKind]) - assert(branches(1).isInstanceOf[ObjectWithFields]) - } - } - - describe("to commands") { - - def tryCommands(commands: Vector[RfcCommand], shapeId: ShapeId, example: JsonLike) = { - val commandContext: RfcCommandContext = RfcCommandContext("a", "b", "c") - val eventStore = RfcServiceJSFacade.makeEventStore() - implicit val ids = OpticIds.newDeterministicIdGenerator - val rfcService: RfcService = new RfcService(eventStore) - rfcService.handleCommandSequence("id", commands, commandContext) - val rfcState = rfcService.currentState("id") - val resolvers = new DefaultShapesResolvers(rfcState) - - val diffs = scala.collection.mutable.ListBuffer[ShapeDiffResult]() - val traverser = new JsonLikeAndSpecTraverser(resolvers, rfcState, new JsonLikeAndSpecDiffVisitors(resolvers, rfcState, e => diffs.append(e), _ => Unit)) - traverser.traverseRootShape(Some(example), shapeId) - assert(diffs.isEmpty) - (rfcState, diffs) - } - - it("can create commands for basic shape") { - - val commands = DistributionAwareShapeBuilder.toCommands(Vector( - JsonLikeFrom.json(JsonExamples.basicTodo).get, - JsonLikeFrom.json(JsonExamples.basicTodoWithDescription).get - ))(OpticIds.newDeterministicIdGenerator) - - tryCommands(commands._2.flatten, commands._1, JsonLikeFrom.json(JsonExamples.basicTodo).get) - } - - it("can create commands for array of strings") { - lazy val commands = DistributionAwareShapeBuilder.toCommands(Vector( - JsonLikeFrom.json(JsonExamples.stringArray).get - ))(OpticIds.newDeterministicIdGenerator) - - tryCommands(commands._2.flatten, commands._1, JsonLikeFrom.json(JsonExamples.stringArray).get) - } - - it("can create a one of") { - - lazy val commands = DistributionAwareShapeBuilder.toCommands(Vector( - JsonLikeFrom.json(JsonExamples.stringArray).get, - JsonLikeFrom.json(JsonExamples.basicTodo).get - ))(OpticIds.newDeterministicIdGenerator) - - tryCommands(commands._2.flatten, commands._1, JsonLikeFrom.json(JsonExamples.stringArray).get) - } - - } - - } - -} diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/CoverageVisitorSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/CoverageVisitorSpec.scala index 9564b8bd2c..c69705b720 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/CoverageVisitorSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/CoverageVisitorSpec.scala @@ -3,7 +3,6 @@ package com.useoptic.diff.interactions import com.useoptic.contexts.rfc.RfcState import com.useoptic.coverage._ import com.useoptic.diff.helpers.SpecHelpers -import com.useoptic.diff.interactions.interpretations.InteractionHelpers import com.useoptic.diff.interactions.visitors.CoverageVisitors import com.useoptic.diff.shapes.resolvers.DefaultShapesResolvers import com.useoptic.types.capture.HttpInteraction diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretationsSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretationsSpec.scala deleted file mode 100644 index 13e776bd8f..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretationsSpec.scala +++ /dev/null @@ -1,214 +0,0 @@ -package com.useoptic.diff.interactions.interpretations - -import com.useoptic.contexts.requests.Commands -import com.useoptic.contexts.requests.Commands.ShapedBodyDescriptor -import com.useoptic.contexts.rfc.RfcState -import com.useoptic.diff.helpers.DiffHelpers -import com.useoptic.diff.initial.DistributionAwareShapeBuilder -import com.useoptic.diff.interactions.interpreters.BasicInterpreters -import com.useoptic.diff.interactions.{InteractionTrail, Method, RequestBody, ResponseBody, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, TestHelpers, Traverser, UnmatchedRequestBodyContentType, UnmatchedRequestBodyShape, UnmatchedResponseBodyContentType, UnmatchedResponseBodyShape, Url} -import com.useoptic.diff.shapes.{JsonTrail, ListItemTrail, ObjectFieldTrail, ShapeTrail, UnmatchedShape} -import com.useoptic.diff.shapes.JsonTrailPathComponent._ -import com.useoptic.diff.shapes.resolvers.DefaultShapesResolvers -import com.useoptic.dsa.OpticIds -import com.useoptic.types.capture._ -import io.circe.Json -import org.scalatest.FunSpec -import io.circe.literal._ - -object InteractionHelpers { - def simplePut(requestBody: Json, statusCode: Int = 200, contentType: String = "application/json"): HttpInteraction = { - HttpInteraction( - "uuid", - Request( - "some.host", - "PUT", - "/", - ArbitraryData(None, None, None), - ArbitraryData(None, None, None), - Body(Some(contentType), ArbitraryData(None, Some(requestBody.noSpaces), None)) - ), - Response( - statusCode, - ArbitraryData(None, None, None), - Body(None, ArbitraryData(None, None, None)) - ), - Vector() - ) - } - - def simplePost(requestBody: Json, statusCode: Int = 200, contentType: String = "application/json"): HttpInteraction = { - HttpInteraction( - "uuid", - Request( - "some.host", - "POST", - "/", - ArbitraryData(None, None, None), - ArbitraryData(None, None, None), - Body(Some(contentType), ArbitraryData(None, Some(requestBody.noSpaces), None)) - ), - Response( - statusCode, - ArbitraryData(None, None, None), - Body(None, ArbitraryData(None, None, None)) - ), - Vector() - ) - } - - def simpleGet(responseBody: Json, statusCode: Int = 200, contentType: String = "application/json"): HttpInteraction = { - HttpInteraction( - "uuid", - Request( - "some.host", - "GET", - "/", - ArbitraryData(None, None, None), - ArbitraryData(None, None, None), - Body(None, ArbitraryData(None, None, None)) - ), - Response( - statusCode, - ArbitraryData(None, None, None), - Body(Some(contentType), ArbitraryData(None, Some(responseBody.noSpaces), None)) - ), - Vector() - ) - } -} - - -class BasicInterpretationsSpec extends FunSpec { - describe("AddRequestBodyContentType") { - - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{}""").get))(OpticIds.newDeterministicIdGenerator) - val initialCommands = Seq( - Commands.AddRequest("request1", "root", "PUT") - ) ++ builtShape._2.flatten ++ Seq( - Commands.SetRequestBodyShape("request1", ShapedBodyDescriptor("text/plain", builtShape._1, false)), - Commands.AddResponseByPathAndMethod("response1", "root", "PUT", 200) - ) - - it("should add the expected content type to the spec") { - val rfcState: RfcState = TestHelpers.fromCommands(initialCommands) - val resolvers = new DefaultShapesResolvers(rfcState) - - val interaction: HttpInteraction = InteractionHelpers.simplePut(json"""999""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs == Seq( - UnmatchedRequestBodyContentType( - InteractionTrail(Seq(Url(), Method("PUT"), RequestBody("application/json"))), - SpecPath("root") - ) - )) - implicit val ids = OpticIds.newDeterministicIdGenerator - val diff = diffs.head - val interpretations = new BasicInterpreters(rfcState).interpret(diff, interaction) - assert(interpretations.length == 1) - val interpretation = interpretations.head - println(interpretation.commands) - val newRfcState = TestHelpers.fromCommands(initialCommands ++ interpretation.commands) - val newDiffs = DiffHelpers.diff(resolvers, newRfcState, interaction) - assert(newDiffs.isEmpty) - } - } - describe("AddResponseBodyContentType") { - - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{}""").get))(OpticIds.newDeterministicIdGenerator) - val initialCommands = Seq( - Commands.AddRequest("request1", "root", "GET") - ) ++ builtShape._2.flatten ++ Seq( - Commands.AddResponseByPathAndMethod("response1", "root", "GET", 200), - Commands.SetResponseBodyShape("response1", ShapedBodyDescriptor("text/plain", builtShape._1, false)), - ) - - it("should add the expected content type to the spec") { - val rfcState: RfcState = TestHelpers.fromCommands(initialCommands) - val resolvers = new DefaultShapesResolvers(rfcState) - - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""999""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs == Seq( - UnmatchedResponseBodyContentType( - InteractionTrail(Seq(ResponseBody("application/json", 200))), - SpecPath("root") - ) - )) - val diff = diffs.head - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretations = new BasicInterpreters(rfcState).interpret(diff, interaction) - assert(interpretations.length == 1) - val interpretation = interpretations.head - println(interpretation.commands) - val newRfcState = TestHelpers.fromCommands(initialCommands ++ interpretation.commands) - val newDiffs = DiffHelpers.diff(resolvers, newRfcState, interaction) - assert(newDiffs.isEmpty) - } - } - describe("ChangeShape") { - describe("changing a field's shape") { - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"k":1}""").get))(OpticIds.newDeterministicIdGenerator) - val initialCommands = Seq( - Commands.AddRequest("request1", "root", "PUT") - ) ++ builtShape._2.flatten ++ Seq( - Commands.SetRequestBodyShape("request1", ShapedBodyDescriptor("application/json", builtShape._1, false)), - Commands.AddResponseByPathAndMethod("response1", "root", "PUT", 200) - ) - val rfcState: RfcState = TestHelpers.fromCommands(initialCommands) - val resolvers = new DefaultShapesResolvers(rfcState) - - val interaction: HttpInteraction = InteractionHelpers.simplePut(json"""{"k":"s"}""") - it("should work") { - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs == Seq( - UnmatchedRequestBodyShape(InteractionTrail(Seq(RequestBody("application/json"))), SpecRequestBody("request1"), UnmatchedShape(JsonTrail(Seq(JsonObjectKey("k"))), ShapeTrail("s_0", Seq(ObjectFieldTrail("s_1", "s_2"))))) - )) - val diff = diffs.head - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretations = new BasicInterpreters(rfcState).interpret(diff, interaction) - assert(interpretations.length == 1) - val interpretation = interpretations.head - val newRfcState = TestHelpers.fromCommands(initialCommands ++ interpretation.commands) - val newDiffs = DiffHelpers.diff(resolvers, newRfcState, interaction) - assert(newDiffs.isEmpty) - } - } - describe("changing a list item's shape") { - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"k":[1]}""").get))(OpticIds.newDeterministicIdGenerator) - - val initialCommands = Seq( - Commands.AddRequest("request1", "root", "PUT") - ) ++ builtShape._2.flatten ++ Seq( - Commands.SetRequestBodyShape("request1", ShapedBodyDescriptor("application/json", builtShape._1, false)), - Commands.AddResponseByPathAndMethod("response1", "root", "PUT", 200) - ) - val rfcState: RfcState = TestHelpers.fromCommands(initialCommands) - val resolvers = new DefaultShapesResolvers(rfcState) - - val interaction: HttpInteraction = InteractionHelpers.simplePut(json"""{"k":["s"]}""") - it("should work") { - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs == Seq( - UnmatchedRequestBodyShape( - InteractionTrail(Seq(RequestBody("application/json"))), - SpecRequestBody("request1"), - UnmatchedShape( - JsonTrail(Seq(JsonObjectKey("k"), JsonArrayItem(0))), - ShapeTrail("s_0", Seq(ObjectFieldTrail("s_1", "s_2"), ListItemTrail("s_2", "s_3"))) - ) - ) - )) - val diff = diffs.head - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretations = new BasicInterpreters(rfcState).interpret(diff, interaction) - assert(interpretations.length == 1) - val interpretation = interpretations.head - val newRfcState = TestHelpers.fromCommands(initialCommands ++ interpretation.commands) - val newDiffs = DiffHelpers.diff(resolvers, newRfcState, interaction) - assert(newDiffs.isEmpty) - } - } - - } -} diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/MissingValueInterpreterSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/MissingValueInterpreterSpec.scala deleted file mode 100644 index fb5359ef90..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/MissingValueInterpreterSpec.scala +++ /dev/null @@ -1,32 +0,0 @@ -package com.useoptic.diff.interactions.interpretations - -import com.useoptic.diff.JsonFileFixture -import com.useoptic.diff.helpers.DiffHelpers -import com.useoptic.diff.interactions.TestHelpers -import com.useoptic.diff.interactions.interpreters.MissingValueInterpreter -import com.useoptic.diff.shapes.resolvers.DefaultShapesResolvers -import com.useoptic.dsa.OpticIds -import org.scalatest.FunSpec - -class MissingValueInterpreterSpec extends FunSpec with JsonFileFixture { - describe("oneOf") { - describe("given an array response") { - val universe = eventsAndInteractionsFrom("list-with-oneof") - implicit val ids = OpticIds.newDeterministicIdGenerator - it("should give a diff") { - val rfcState = universe.rfcService.currentState(universe.rfcId) - val resolvers = new DefaultShapesResolvers(rfcState) - var diffs = DiffHelpers.diffAll(resolvers, rfcState, universe.interactions) - assert(diffs.size == 3) - val diff = diffs.head - val interpretations = new MissingValueInterpreter(rfcState).interpret(diff, universe.interactions.head) - println(interpretations) - val newRfcState = TestHelpers.fromRfcStateAndCommands(universe.rfcService, interpretations.head.commands, universe.rfcId) - val newResolvers = new DefaultShapesResolvers(newRfcState) - diffs = DiffHelpers.diffAll(newResolvers, newRfcState, universe.interactions) - diffs.foreach(println) - assert(diffs.size == 3) - } - } - } -} diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/UnspecifiedShapeDiffInterpreterSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/UnspecifiedShapeDiffInterpreterSpec.scala deleted file mode 100644 index 81dc8fa392..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/UnspecifiedShapeDiffInterpreterSpec.scala +++ /dev/null @@ -1,64 +0,0 @@ -package com.useoptic.diff.interactions.interpretations - -import com.useoptic.contexts.rfc.RfcState -import com.useoptic.diff.helpers.{DiffHelpers, SpecHelpers} -import com.useoptic.diff.interactions.TestHelpers -import com.useoptic.diff.interactions.interpreters.UnspecifiedShapeDiffInterpreter -import com.useoptic.diff.shapes.resolvers.DefaultShapesResolvers -import com.useoptic.dsa.OpticIds -import com.useoptic.types.capture.HttpInteraction -import org.scalatest.FunSpec -import io.circe.literal._ - -class UnspecifiedShapeDiffInterpreterSpec extends FunSpec { - describe("response body unspecified shape") { - val specHelpers = new SpecHelpers() - val initialCommands = specHelpers.simpleGet(json"""{"x": {"k": "v"}}""") - val rfcState: RfcState = TestHelpers.fromCommands(initialCommands) - val resolvers = new DefaultShapesResolvers(rfcState) - describe("unexpected object key") { - it("should suggest adding a field") { - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""{"x":{"k":"v","surprise":"!"}}""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpreter = new UnspecifiedShapeDiffInterpreter(resolvers, rfcState) - val interpretations = interpreter.interpret(diff, interaction) - assert(interpretations.size == 1) - val interpretation = interpretations.head - println(interpretation) - val newRfcState = TestHelpers.fromCommands(initialCommands ++ interpretation.commands) - val newResolvers = new DefaultShapesResolvers(newRfcState) - val newDiffs = DiffHelpers.diff(newResolvers, newRfcState, interaction) - assert(newDiffs.isEmpty) - } - } - } - - describe("request body unspecified shape") { - val specHelpers = new SpecHelpers() - val initialCommands = specHelpers.simplePost(json"""{"x": {"k": "v"}}""") - val rfcState: RfcState = TestHelpers.fromCommands(initialCommands) - val resolvers = new DefaultShapesResolvers(rfcState) - it("should suggest adding a field") { - val interaction: HttpInteraction = InteractionHelpers.simplePost(json"""{"x":{"k":"v","surprise":"!"}}""", 204) - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpreter = new UnspecifiedShapeDiffInterpreter(resolvers, rfcState) - val interpretations = interpreter.interpret(diff, interaction) - assert(interpretations.size == 1) - val interpretation = interpretations.head - println(interpretation) - val newRfcState = TestHelpers.fromCommands(initialCommands ++ interpretation.commands) - val newResolvers = new DefaultShapesResolvers(newRfcState) - val newDiffs = DiffHelpers.diff(newResolvers, newRfcState, interaction) - assert(newDiffs.isEmpty) - } - - } -} diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpreters/DiffDescriptionInterpretersSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpreters/DiffDescriptionInterpretersSpec.scala deleted file mode 100644 index 9de55552ba..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpreters/DiffDescriptionInterpretersSpec.scala +++ /dev/null @@ -1,174 +0,0 @@ -package com.useoptic.diff.interactions.interpreters - -import com.useoptic.contexts.rfc.RfcState -import com.useoptic.diff.helpers.{DiffHelpers, SpecHelpers} -import com.useoptic.diff.interactions.TestHelpers -import com.useoptic.diff.interactions.interpretations.InteractionHelpers -import com.useoptic.diff.shapes.resolvers.DefaultShapesResolvers -import com.useoptic.dsa.OpticIds -import com.useoptic.types.capture.HttpInteraction -import org.scalatest.FunSpec -import io.circe.literal._ - -class DiffDescriptionInterpretersSpec extends FunSpec { - describe("Request Content Type Diff") { - it("should be x") { - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simplePost(json"""1""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simplePost(json"""1""", 204, "text/plain") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The text/plain content type is not documented in the spec") - } - } - describe("Response Content Type Diff") { - it("should be x") { - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simpleGet(json"""1""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""1""", 200, "text/plain") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The text/plain content type is not documented in the spec") - } - } - describe("Response Body Diff") { - describe("with a top level string") { - it("should be x") { - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simpleGet(json"""1""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json""""a"""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The shape was not a number") - } - } - describe("with a top level array") { - it("should be x") { - - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simpleGet(json"""[]""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""1""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The shape was not a List") - } - } - describe("with a top level object") { - it("should be x") { - - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simpleGet(json"""{}""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""1""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The shape was not a Object") - } - } - describe("with a nested object") { - describe("with an extra key") { - it("should be x") { - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simpleGet(json"""{}""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""{"k":1}""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The shape at key k was not expected") - } - } - describe("with a missing key") { - - it("should be x") { - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simpleGet(json"""{"k": 1}""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""{}""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The shape at key k was not a number") - } - } - describe("with a mismatched key") { - - it("should be x") { - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simpleGet(json"""{"k":"v"}""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""{"k":1}""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The shape at key k was not a string") - } - } - } - describe("with a list") { - describe("with a mismatched item") { - it("should be x") { - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simpleGet(json"""[{}]""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""["a"]""") - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The shape at index 0 was not a Object") - } - } - } - } - describe("Response Status Code Diff") { - it("should be x") { - val specHelpers = new SpecHelpers() - val rfcState: RfcState = TestHelpers.fromCommands(specHelpers.simpleGet(json"""1""")) - val resolvers = new DefaultShapesResolvers(rfcState) - val interaction: HttpInteraction = InteractionHelpers.simpleGet(json"""1""", 299) - val diffs = DiffHelpers.diff(resolvers, rfcState, interaction) - assert(diffs.size == 1) - val diff = diffs.head - println(diff) - implicit val ids = OpticIds.newDeterministicIdGenerator - val interpretation = new DiffDescriptionInterpreters(rfcState).interpret(diff, interaction) - assert(interpretation.title == "The 299 status code is not documented in the spec") - } - } -} diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/ShapeBuilderUseCases.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/ShapeBuilderUseCases.scala new file mode 100644 index 0000000000..ca44ba8a97 --- /dev/null +++ b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/ShapeBuilderUseCases.scala @@ -0,0 +1,63 @@ +package com.useoptic.end_to_end + +import com.useoptic.end_to_end.fixtures.JsonExamples +import com.useoptic.end_to_end.snapshot_task.BuildShapeTask +import io.circe.literal._ + +class ShapeBuilderUseCases extends BuildShapeTask { + + when("object is at root and some primitive fields are optional", () => BuildShapeTask.Input(Vector( + JsonExamples.basicTodo, + JsonExamples.basicTodoWithDescription, + JsonExamples.basicTodoWithoutStatus + ))) + + when("array of strings", () => BuildShapeTask.Input(Vector( + JsonExamples.stringArray, + ))) + + when("array of empty", () => BuildShapeTask.Input(Vector( + JsonExamples.emptyArray, + ))) + + when("empty object", () => BuildShapeTask.Input(Vector( + JsonExamples.emptyArray, + ))) + + when("empty object or empty array at root", () => BuildShapeTask.Input(Vector( + JsonExamples.emptyArray, + JsonExamples.emptyObject + ))) + + when("array with polymorhpism", () => BuildShapeTask.Input(Vector( + JsonExamples.stringArrayWithNumbers, + ))) + + when("nullable field, later provided value", () => BuildShapeTask.Input(Vector( + JsonExamples.objectWithNull, + JsonExamples.objectWithNullAsString + ))) + + when("nullable field, later provided two different types", () => BuildShapeTask.Input(Vector( + JsonExamples.objectWithNull, + JsonExamples.objectWithNullAsString, + JsonExamples.objectWithNullAsNumber + ))) + + when("field polymorphism, then nullable ", () => BuildShapeTask.Input(Vector( + JsonExamples.objectWithNullAsString, + JsonExamples.objectWithNullAsNumber, + JsonExamples.objectWithNull, + ))) + + + when("f1 race results", () => BuildShapeTask.Input(Vector( + JsonExamples.racecar + ))) + + when("github commits", () => BuildShapeTask.Input(Vector( + JsonExamples.allOpticCommits + ))) + + runSuite +} diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/fixtures/JsonExamples.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/fixtures/JsonExamples.scala index 588e3f8467..853822a256 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/fixtures/JsonExamples.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/fixtures/JsonExamples.scala @@ -1,6 +1,8 @@ package com.useoptic.end_to_end.fixtures +import com.useoptic.diff.JsonFileFixture +import io.circe.Json import io.circe.literal._ -object JsonExamples { +object JsonExamples extends JsonFileFixture { //todo val basicTodo = json"""{"message": "Hello", "isDone": true}""" @@ -29,6 +31,7 @@ object JsonExamples { val nestedSimple = json"""{"task": "Build It", "isDone": false, "dueData": "MONDAY"}""" val nestedSimpleNew = json"""{"task": "Build It", "isDone": false, "dueData": "MONDAY", "novelField": {"a": true}}""" val racecar = json"""{"MRData":{"xmlns":"http://ergast.com/mrd/1.4","series":"f1","url":"http://ergast.com/api/f1/2019/1/results.json","limit":"30","offset":"0","total":"20","RaceTable":{"season":"2019","round":"1","Races":[{"season":"2019","round":"1","url":"https://en.wikipedia.org/wiki/2019_Australian_Grand_Prix","raceName":"Australian Grand Prix","Circuit":{"circuitId":"albert_park","url":"http://en.wikipedia.org/wiki/Melbourne_Grand_Prix_Circuit","circuitName":"Albert Park Grand Prix Circuit","Location":{"lat":"-37.8497","long":"144.968","locality":"Melbourne","country":"Australia"}},"date":"2019-03-17","time":"05:10:00Z","Results":[{"number":"77","position":"1","positionText":"1","points":"26","Driver":{"driverId":"bottas","permanentNumber":"77","code":"BOT","url":"http://en.wikipedia.org/wiki/Valtteri_Bottas","givenName":"Valtteri","familyName":"Bottas","dateOfBirth":"1989-08-28","nationality":"Finnish"},"Constructor":{"constructorId":"mercedes","url":"http://en.wikipedia.org/wiki/Mercedes-Benz_in_Formula_One","name":"Mercedes","nationality":"German"},"grid":"2","laps":"58","status":"Finished","Time":{"millis":"5127325","time":"1:25:27.325"},"FastestLap":{"rank":"1","lap":"57","Time":{"time":"1:25.580"},"AverageSpeed":{"units":"kph","speed":"223.075"}}},{"number":"44","position":"2","positionText":"2","points":"18","Driver":{"driverId":"hamilton","permanentNumber":"44","code":"HAM","url":"http://en.wikipedia.org/wiki/Lewis_Hamilton","givenName":"Lewis","familyName":"Hamilton","dateOfBirth":"1985-01-07","nationality":"British"},"Constructor":{"constructorId":"mercedes","url":"http://en.wikipedia.org/wiki/Mercedes-Benz_in_Formula_One","name":"Mercedes","nationality":"German"},"grid":"1","laps":"58","status":"Finished","Time":{"millis":"5148211","time":"+20.886"},"FastestLap":{"rank":"2","lap":"57","Time":{"time":"1:26.057"},"AverageSpeed":{"units":"kph","speed":"221.839"}}},{"number":"33","position":"3","positionText":"3","points":"15","Driver":{"driverId":"max_verstappen","permanentNumber":"33","code":"VER","url":"http://en.wikipedia.org/wiki/Max_Verstappen","givenName":"Max","familyName":"Verstappen","dateOfBirth":"1997-09-30","nationality":"Dutch"},"Constructor":{"constructorId":"red_bull","url":"http://en.wikipedia.org/wiki/Red_Bull_Racing","name":"Red Bull","nationality":"Austrian"},"grid":"4","laps":"58","status":"Finished","Time":{"millis":"5149845","time":"+22.520"},"FastestLap":{"rank":"3","lap":"57","Time":{"time":"1:26.256"},"AverageSpeed":{"units":"kph","speed":"221.327"}}},{"number":"5","position":"4","positionText":"4","points":"12","Driver":{"driverId":"vettel","permanentNumber":"5","code":"VET","url":"http://en.wikipedia.org/wiki/Sebastian_Vettel","givenName":"Sebastian","familyName":"Vettel","dateOfBirth":"1987-07-03","nationality":"German"},"Constructor":{"constructorId":"ferrari","url":"http://en.wikipedia.org/wiki/Scuderia_Ferrari","name":"Ferrari","nationality":"Italian"},"grid":"3","laps":"58","status":"Finished","Time":{"millis":"5184434","time":"+57.109"},"FastestLap":{"rank":"8","lap":"16","Time":{"time":"1:27.954"},"AverageSpeed":{"units":"kph","speed":"217.054"}}},{"number":"16","position":"5","positionText":"5","points":"10","Driver":{"driverId":"leclerc","permanentNumber":"16","code":"LEC","url":"http://en.wikipedia.org/wiki/Charles_Leclerc","givenName":"Charles","familyName":"Leclerc","dateOfBirth":"1997-10-16","nationality":"Monegasque"},"Constructor":{"constructorId":"ferrari","url":"http://en.wikipedia.org/wiki/Scuderia_Ferrari","name":"Ferrari","nationality":"Italian"},"grid":"5","laps":"58","status":"Finished","Time":{"millis":"5185528","time":"+58.203"},"FastestLap":{"rank":"4","lap":"58","Time":{"time":"1:26.926"},"AverageSpeed":{"units":"kph","speed":"219.621"}}},{"number":"20","position":"6","positionText":"6","points":"8","Driver":{"driverId":"kevin_magnussen","permanentNumber":"20","code":"MAG","url":"http://en.wikipedia.org/wiki/Kevin_Magnussen","givenName":"Kevin","familyName":"Magnussen","dateOfBirth":"1992-10-05","nationality":"Danish"},"Constructor":{"constructorId":"haas","url":"http://en.wikipedia.org/wiki/Haas_F1_Team","name":"Haas F1 Team","nationality":"American"},"grid":"7","laps":"58","status":"Finished","Time":{"millis":"5214481","time":"+1:27.156"},"FastestLap":{"rank":"9","lap":"56","Time":{"time":"1:28.182"},"AverageSpeed":{"units":"kph","speed":"216.493"}}},{"number":"27","position":"7","positionText":"7","points":"6","Driver":{"driverId":"hulkenberg","permanentNumber":"27","code":"HUL","url":"http://en.wikipedia.org/wiki/Nico_H%C3%BClkenberg","givenName":"Nico","familyName":"Hülkenberg","dateOfBirth":"1987-08-19","nationality":"German"},"Constructor":{"constructorId":"renault","url":"http://en.wikipedia.org/wiki/Renault_in_Formula_One","name":"Renault","nationality":"French"},"grid":"11","laps":"57","status":"+1 Lap","FastestLap":{"rank":"12","lap":"52","Time":{"time":"1:28.444"},"AverageSpeed":{"units":"kph","speed":"215.851"}}},{"number":"7","position":"8","positionText":"8","points":"4","Driver":{"driverId":"raikkonen","permanentNumber":"7","code":"RAI","url":"http://en.wikipedia.org/wiki/Kimi_R%C3%A4ikk%C3%B6nen","givenName":"Kimi","familyName":"Räikkönen","dateOfBirth":"1979-10-17","nationality":"Finnish"},"Constructor":{"constructorId":"alfa","url":"http://en.wikipedia.org/wiki/Alfa_Romeo_in_Formula_One","name":"Alfa Romeo","nationality":"Italian"},"grid":"9","laps":"57","status":"+1 Lap","FastestLap":{"rank":"11","lap":"52","Time":{"time":"1:28.270"},"AverageSpeed":{"units":"kph","speed":"216.277"}}},{"number":"18","position":"9","positionText":"9","points":"2","Driver":{"driverId":"stroll","permanentNumber":"18","code":"STR","url":"http://en.wikipedia.org/wiki/Lance_Stroll","givenName":"Lance","familyName":"Stroll","dateOfBirth":"1998-10-29","nationality":"Canadian"},"Constructor":{"constructorId":"racing_point","url":"http://en.wikipedia.org/wiki/Racing_Point_F1_Team","name":"Racing Point","nationality":"British"},"grid":"16","laps":"57","status":"+1 Lap","FastestLap":{"rank":"7","lap":"29","Time":{"time":"1:27.568"},"AverageSpeed":{"units":"kph","speed":"218.011"}}},{"number":"26","position":"10","positionText":"10","points":"1","Driver":{"driverId":"kvyat","permanentNumber":"26","code":"KVY","url":"http://en.wikipedia.org/wiki/Daniil_Kvyat","givenName":"Daniil","familyName":"Kvyat","dateOfBirth":"1994-04-26","nationality":"Russian"},"Constructor":{"constructorId":"toro_rosso","url":"http://en.wikipedia.org/wiki/Scuderia_Toro_Rosso","name":"Toro Rosso","nationality":"Italian"},"grid":"15","laps":"57","status":"+1 Lap","FastestLap":{"rank":"6","lap":"39","Time":{"time":"1:27.448"},"AverageSpeed":{"units":"kph","speed":"218.310"}}},{"number":"10","position":"11","positionText":"11","points":"0","Driver":{"driverId":"gasly","permanentNumber":"10","code":"GAS","url":"http://en.wikipedia.org/wiki/Pierre_Gasly","givenName":"Pierre","familyName":"Gasly","dateOfBirth":"1996-02-07","nationality":"French"},"Constructor":{"constructorId":"red_bull","url":"http://en.wikipedia.org/wiki/Red_Bull_Racing","name":"Red Bull","nationality":"Austrian"},"grid":"17","laps":"57","status":"+1 Lap","FastestLap":{"rank":"5","lap":"39","Time":{"time":"1:27.229"},"AverageSpeed":{"units":"kph","speed":"218.858"}}},{"number":"4","position":"12","positionText":"12","points":"0","Driver":{"driverId":"norris","permanentNumber":"4","code":"NOR","url":"http://en.wikipedia.org/wiki/Lando_Norris","givenName":"Lando","familyName":"Norris","dateOfBirth":"1999-11-13","nationality":"British"},"Constructor":{"constructorId":"mclaren","url":"http://en.wikipedia.org/wiki/McLaren","name":"McLaren","nationality":"British"},"grid":"8","laps":"57","status":"+1 Lap","FastestLap":{"rank":"16","lap":"17","Time":{"time":"1:28.555"},"AverageSpeed":{"units":"kph","speed":"215.581"}}},{"number":"11","position":"13","positionText":"13","points":"0","Driver":{"driverId":"perez","permanentNumber":"11","code":"PER","url":"http://en.wikipedia.org/wiki/Sergio_P%C3%A9rez","givenName":"Sergio","familyName":"Pérez","dateOfBirth":"1990-01-26","nationality":"Mexican"},"Constructor":{"constructorId":"racing_point","url":"http://en.wikipedia.org/wiki/Racing_Point_F1_Team","name":"Racing Point","nationality":"British"},"grid":"10","laps":"57","status":"+1 Lap","FastestLap":{"rank":"15","lap":"41","Time":{"time":"1:28.485"},"AverageSpeed":{"units":"kph","speed":"215.751"}}},{"number":"23","position":"14","positionText":"14","points":"0","Driver":{"driverId":"albon","permanentNumber":"23","code":"ALB","url":"http://en.wikipedia.org/wiki/Alexander_Albon","givenName":"Alexander","familyName":"Albon","dateOfBirth":"1996-03-23","nationality":"Thai"},"Constructor":{"constructorId":"toro_rosso","url":"http://en.wikipedia.org/wiki/Scuderia_Toro_Rosso","name":"Toro Rosso","nationality":"Italian"},"grid":"13","laps":"57","status":"+1 Lap","FastestLap":{"rank":"10","lap":"43","Time":{"time":"1:28.188"},"AverageSpeed":{"units":"kph","speed":"216.478"}}},{"number":"99","position":"15","positionText":"15","points":"0","Driver":{"driverId":"giovinazzi","permanentNumber":"99","code":"GIO","url":"http://en.wikipedia.org/wiki/Antonio_Giovinazzi","givenName":"Antonio","familyName":"Giovinazzi","dateOfBirth":"1993-12-14","nationality":"Italian"},"Constructor":{"constructorId":"alfa","url":"http://en.wikipedia.org/wiki/Alfa_Romeo_in_Formula_One","name":"Alfa Romeo","nationality":"Italian"},"grid":"14","laps":"57","status":"+1 Lap","FastestLap":{"rank":"14","lap":"29","Time":{"time":"1:28.479"},"AverageSpeed":{"units":"kph","speed":"215.766"}}},{"number":"63","position":"16","positionText":"16","points":"0","Driver":{"driverId":"russell","permanentNumber":"63","code":"RUS","url":"http://en.wikipedia.org/wiki/George_Russell_(racing_driver)","givenName":"George","familyName":"Russell","dateOfBirth":"1998-02-15","nationality":"British"},"Constructor":{"constructorId":"williams","url":"http://en.wikipedia.org/wiki/Williams_Grand_Prix_Engineering","name":"Williams","nationality":"British"},"grid":"19","laps":"56","status":"+2 Laps","FastestLap":{"rank":"17","lap":"55","Time":{"time":"1:28.713"},"AverageSpeed":{"units":"kph","speed":"215.197"}}},{"number":"88","position":"17","positionText":"17","points":"0","Driver":{"driverId":"kubica","permanentNumber":"88","code":"KUB","url":"http://en.wikipedia.org/wiki/Robert_Kubica","givenName":"Robert","familyName":"Kubica","dateOfBirth":"1984-12-07","nationality":"Polish"},"Constructor":{"constructorId":"williams","url":"http://en.wikipedia.org/wiki/Williams_Grand_Prix_Engineering","name":"Williams","nationality":"British"},"grid":"20","laps":"55","status":"+3 Laps","FastestLap":{"rank":"18","lap":"30","Time":{"time":"1:29.284"},"AverageSpeed":{"units":"kph","speed":"213.821"}}},{"number":"8","position":"18","positionText":"R","points":"0","Driver":{"driverId":"grosjean","permanentNumber":"8","code":"GRO","url":"http://en.wikipedia.org/wiki/Romain_Grosjean","givenName":"Romain","familyName":"Grosjean","dateOfBirth":"1986-04-17","nationality":"French"},"Constructor":{"constructorId":"haas","url":"http://en.wikipedia.org/wiki/Haas_F1_Team","name":"Haas F1 Team","nationality":"American"},"grid":"6","laps":"29","status":"Wheel","FastestLap":{"rank":"13","lap":"17","Time":{"time":"1:28.462"},"AverageSpeed":{"units":"kph","speed":"215.807"}}},{"number":"3","position":"19","positionText":"R","points":"0","Driver":{"driverId":"ricciardo","permanentNumber":"3","code":"RIC","url":"http://en.wikipedia.org/wiki/Daniel_Ricciardo","givenName":"Daniel","familyName":"Ricciardo","dateOfBirth":"1989-07-01","nationality":"Australian"},"Constructor":{"constructorId":"renault","url":"http://en.wikipedia.org/wiki/Renault_in_Formula_One","name":"Renault","nationality":"French"},"grid":"12","laps":"28","status":"Damage","FastestLap":{"rank":"19","lap":"18","Time":{"time":"1:29.848"},"AverageSpeed":{"units":"kph","speed":"212.478"}}},{"number":"55","position":"20","positionText":"R","points":"0","Driver":{"driverId":"sainz","permanentNumber":"55","code":"SAI","url":"http://en.wikipedia.org/wiki/Carlos_Sainz_Jr.","givenName":"Carlos","familyName":"Sainz","dateOfBirth":"1994-09-01","nationality":"Spanish"},"Constructor":{"constructorId":"mclaren","url":"http://en.wikipedia.org/wiki/McLaren","name":"McLaren","nationality":"British"},"grid":"18","laps":"9","status":"Engine","FastestLap":{"rank":"20","lap":"9","Time":{"time":"1:30.899"},"AverageSpeed":{"units":"kph","speed":"210.022"}}}]}]}}}""" + val allOpticCommits = fromFile("all-optic-commits") val nestedArray = json"""{"a":{"b":["hello"]}}""" diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/BuildShapeTask.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/BuildShapeTask.scala new file mode 100644 index 0000000000..d5436a2524 --- /dev/null +++ b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/BuildShapeTask.scala @@ -0,0 +1,44 @@ +package com.useoptic.end_to_end.snapshot_task + +import com.useoptic.contexts.rfc.Events.RfcEvent +import com.useoptic.contexts.shapes.Commands.ShapeId +import com.useoptic.diff.MutableCommandStream +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapesToMake} +import com.useoptic.diff.interactions.InteractionDiffResult +import com.useoptic.dsa.OpticIds +import com.useoptic.serialization.CommandSerialization +import com.useoptic.types.capture.{HttpInteraction, JsonLikeFrom} +import io.circe.Json +import io.circe._ +import io.circe.generic.auto._ +import io.circe.syntax._ + + +object BuildShapeTask { + case class Input(inputJsons: Vector[Json]) + case class Output(shape: String, commandsJson: Json) +} + +class BuildShapeTask + extends SnapShotDriverFixture[BuildShapeTask.Input, BuildShapeTask.Output]("json-to-shapes", "Json to Shape") { + override def serializeOutput(output: BuildShapeTask.Output): Json = output.asJson + + override def deserializeInput(json: Json): BuildShapeTask.Input = json.as[BuildShapeTask.Input].right.get + + override def serializeInput(input: BuildShapeTask.Input): Json = input.asJson + + override def deserializeOutput(json: Json): BuildShapeTask.Output = json.as[BuildShapeTask.Output].right.get + + override def summary(input: BuildShapeTask.Input, result: BuildShapeTask.Output): String = { + input.inputJsons.map(_.noSpaces).mkString("\n") + "\n\n" + result.shape + } + + override def transform(input: BuildShapeTask.Input): BuildShapeTask.Output = { + implicit val ids = OpticIds.newDeterministicIdGenerator + val shape = DistributionAwareShapeBuilder.aggregateTrailsAndValues(input.inputJsons.flatMap(JsonLikeFrom.json)).getRoot.toShape + + implicit val commands = new MutableCommandStream + DistributionAwareShapeBuilder.buildCommandsFor(shape, None) + BuildShapeTask.Output(shape.toString, CommandSerialization.toJson(commands.toImmutable.flatten)) + } +} diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/SnapShotDriverFixture.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/SnapShotDriverFixture.scala index a472ef33bf..821494f143 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/SnapShotDriverFixture.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/SnapShotDriverFixture.scala @@ -62,16 +62,16 @@ abstract class SnapShotDriverFixture[InputJson, OutputJson](folderSlug: String, s"${file.nameWithoutExtension}" should { var input: Option[InputJson] = None var output: Try[OutputJson] = null - s"input should deserialize properly" in { + s"deserialize the input" in { input = Some(deserializeInput(parse(file.contentAsString).right.get)) } - s"input yields valid output" in { + s"perform task" in { output = Try(transform(input.get)) assert(output.isSuccess, if (output.isFailure) "Failed to transform: "+ output.failed.get.getMessage.toString else "") } - s"Matches Snapshot" in { + s"match snapshot" in { if (output.isSuccess) { if (!knownIssues.contains(file.nameWithoutExtension)) { println("THIS IS A KNOWN ISSUE:") diff --git a/core/optic/shared/src/test/scala/com/useoptic/ux/DiffManagerSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/ux/DiffManagerSpec.scala index 54ed342248..67cd4bc5d1 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/ux/DiffManagerSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/ux/DiffManagerSpec.scala @@ -10,6 +10,9 @@ import com.useoptic.types.capture.{ArbitraryData, Body, HttpInteraction, JsonLik import io.circe.Json import org.scalatest.FunSpec + +//pending deletion + class DiffManagerSpec extends FunSpec with JsonFileFixture { val interactionIdGenerator = new SequentialIdGenerator("interaction") diff --git a/core/optic/shared/src/test/scala/com/useoptic/ux/DiffPreviewerSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/ux/DiffPreviewerSpec.scala index 8b5204e173..341499e89a 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/ux/DiffPreviewerSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/ux/DiffPreviewerSpec.scala @@ -80,23 +80,6 @@ class DiffPreviewerSpec extends FunSpec with JsonFileFixture { assert(root.field("novelField").exampleShape.get.fields.size == 1) } - it("can render Racecar") { - val preview = diffPreview(ShapeExamples.racecar, JsonExamples.racecar) // it has internal polymorphism :) - val rootshape = preview.get.getRootShape.get - val races = rootshape.field("MRData") - .exampleShape.field("RaceTable") - .exampleShape.field("Races") - .exampleShape.get.items.head - .exampleShape.field("Results") - .exampleShape.get.itemsWithHidden(false) - - val display = races.map(_.display) - - // assert(display(14) == "visible") - - val givenName = races.map(race => race.exampleShape.field("Driver").exampleShape.field("givenName").exampleShape.get.example) - assert(givenName.distinct.size == givenName.size) //all are different - } } it("shape only render") { @@ -117,11 +100,4 @@ class DiffPreviewerSpec extends FunSpec with JsonFileFixture { val (commands, shapeOnly) = new DiffPreviewer(resolvers, rfcState).shapeOnlyFromShapeBuilder(Vector(JsonLikeFrom.json(JsonExamples.basicTodo).get)).get assert(shapeOnly.specShapes.size == 3) } - - // it("isolated") { - // val (commands, shapeOnly) = new DiffPreviewer(resolvers, ).shapeOnlyFromShapeBuilder(Vector(JsonLikeFrom.rawJson("{\"then\": [[\"string\", \"string\", \"string\", \"string\"]]}").get)).get - // - // - // } - } From 589f85a2dc4e666b93cb6c85ff7ed8bf33bbf3c7 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Thu, 25 Jun 2020 08:34:04 -0400 Subject: [PATCH 09/85] more snapshots for shape building. protocol for debugging a user session added. --- .../commands-to-events/Case name.managed.json | 2 - .../commands-to-events/example-commands.json | 75 --------- .../outputs/pending/Case name.managed.json | 2 - .../outputs/pending/example-commands.json | 147 ------------------ .../serialization/JvmStableHashableSpec.scala | 2 +- .../src/test/scala/com/useoptic/.gitignore | 5 + .../com/useoptic/debug_user_issues/.gitkeep | 0 .../com/useoptic/diff/JsonFileFixture.scala | 7 + .../CommandsToEventsSnapshotSpec.scala | 11 ++ .../CommandsToEventsSnapshotSpec.scala | 17 -- 10 files changed, 24 insertions(+), 244 deletions(-) delete mode 100644 core/domain-snapshots/commands-to-events/Case name.managed.json delete mode 100644 core/domain-snapshots/commands-to-events/example-commands.json delete mode 100644 core/domain-snapshots/commands-to-events/outputs/pending/Case name.managed.json delete mode 100644 core/domain-snapshots/commands-to-events/outputs/pending/example-commands.json create mode 100644 core/optic/shared/src/test/scala/com/useoptic/.gitignore create mode 100644 core/optic/shared/src/test/scala/com/useoptic/debug_user_issues/.gitkeep create mode 100644 core/optic/shared/src/test/scala/com/useoptic/end_to_end/CommandsToEventsSnapshotSpec.scala delete mode 100644 core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/CommandsToEventsSnapshotSpec.scala diff --git a/core/domain-snapshots/commands-to-events/Case name.managed.json b/core/domain-snapshots/commands-to-events/Case name.managed.json deleted file mode 100644 index 32960f8ced..0000000000 --- a/core/domain-snapshots/commands-to-events/Case name.managed.json +++ /dev/null @@ -1,2 +0,0 @@ -[ -] \ No newline at end of file diff --git a/core/domain-snapshots/commands-to-events/example-commands.json b/core/domain-snapshots/commands-to-events/example-commands.json deleted file mode 100644 index 8763fd7787..0000000000 --- a/core/domain-snapshots/commands-to-events/example-commands.json +++ /dev/null @@ -1,75 +0,0 @@ -[ - { - "AddShape" : { - "shapeId" : "basic_0", - "baseShapeId" : "$object", - "name" : "" - } - }, - { - "AddShape" : { - "shapeId" : "basic_2", - "baseShapeId" : "$string", - "name" : "" - } - }, - { - "AddField" : { - "fieldId" : "basic_1", - "shapeId" : "basic_0", - "name" : "a", - "shapeDescriptor" : { - "FieldShapeFromShape" : { - "fieldId" : "basic_1", - "shapeId" : "basic_2" - } - } - } - }, - { - "AddShape" : { - "shapeId" : "basic_4", - "baseShapeId" : "$string", - "name" : "" - } - }, - { - "AddField" : { - "fieldId" : "basic_3", - "shapeId" : "basic_0", - "name" : "b", - "shapeDescriptor" : { - "FieldShapeFromShape" : { - "fieldId" : "basic_3", - "shapeId" : "basic_4" - } - } - } - }, - { - "AddShape" : { - "shapeId" : "basic_6", - "baseShapeId" : "$string", - "name" : "" - } - }, - { - "AddField" : { - "fieldId" : "basic_5", - "shapeId" : "basic_0", - "name" : "c", - "shapeDescriptor" : { - "FieldShapeFromShape" : { - "fieldId" : "basic_5", - "shapeId" : "basic_6" - } - } - } - }, - { - "RenameShape" : { - "shapeId" : "basic_0", - "name" : "Basic" - } - } -] diff --git a/core/domain-snapshots/commands-to-events/outputs/pending/Case name.managed.json b/core/domain-snapshots/commands-to-events/outputs/pending/Case name.managed.json deleted file mode 100644 index 32960f8ced..0000000000 --- a/core/domain-snapshots/commands-to-events/outputs/pending/Case name.managed.json +++ /dev/null @@ -1,2 +0,0 @@ -[ -] \ No newline at end of file diff --git a/core/domain-snapshots/commands-to-events/outputs/pending/example-commands.json b/core/domain-snapshots/commands-to-events/outputs/pending/example-commands.json deleted file mode 100644 index 69da35e972..0000000000 --- a/core/domain-snapshots/commands-to-events/outputs/pending/example-commands.json +++ /dev/null @@ -1,147 +0,0 @@ -[ - { - "ShapeAdded" : { - "shapeId" : "basic_0", - "baseShapeId" : "$object", - "parameters" : { - "DynamicParameterList" : { - "shapeParameterIds" : [ - ] - } - }, - "name" : "", - "eventContext" : { - "clientId" : "ccc", - "clientSessionId" : "sss", - "clientCommandBatchId" : "bbb", - "createdAt" : "NOW" - } - } - }, - { - "ShapeAdded" : { - "shapeId" : "basic_2", - "baseShapeId" : "$string", - "parameters" : { - "DynamicParameterList" : { - "shapeParameterIds" : [ - ] - } - }, - "name" : "", - "eventContext" : { - "clientId" : "ccc", - "clientSessionId" : "sss", - "clientCommandBatchId" : "bbb", - "createdAt" : "NOW" - } - } - }, - { - "FieldAdded" : { - "fieldId" : "basic_1", - "shapeId" : "basic_0", - "name" : "a", - "shapeDescriptor" : { - "FieldShapeFromShape" : { - "fieldId" : "basic_1", - "shapeId" : "basic_2" - } - }, - "eventContext" : { - "clientId" : "ccc", - "clientSessionId" : "sss", - "clientCommandBatchId" : "bbb", - "createdAt" : "NOW" - } - } - }, - { - "ShapeAdded" : { - "shapeId" : "basic_4", - "baseShapeId" : "$string", - "parameters" : { - "DynamicParameterList" : { - "shapeParameterIds" : [ - ] - } - }, - "name" : "", - "eventContext" : { - "clientId" : "ccc", - "clientSessionId" : "sss", - "clientCommandBatchId" : "bbb", - "createdAt" : "NOW" - } - } - }, - { - "FieldAdded" : { - "fieldId" : "basic_3", - "shapeId" : "basic_0", - "name" : "b", - "shapeDescriptor" : { - "FieldShapeFromShape" : { - "fieldId" : "basic_3", - "shapeId" : "basic_4" - } - }, - "eventContext" : { - "clientId" : "ccc", - "clientSessionId" : "sss", - "clientCommandBatchId" : "bbb", - "createdAt" : "NOW" - } - } - }, - { - "ShapeAdded" : { - "shapeId" : "basic_6", - "baseShapeId" : "$string", - "parameters" : { - "DynamicParameterList" : { - "shapeParameterIds" : [ - ] - } - }, - "name" : "", - "eventContext" : { - "clientId" : "ccc", - "clientSessionId" : "sss", - "clientCommandBatchId" : "bbb", - "createdAt" : "NOW" - } - } - }, - { - "FieldAdded" : { - "fieldId" : "basic_5", - "shapeId" : "basic_0", - "name" : "c", - "shapeDescriptor" : { - "FieldShapeFromShape" : { - "fieldId" : "basic_5", - "shapeId" : "basic_6" - } - }, - "eventContext" : { - "clientId" : "ccc", - "clientSessionId" : "sss", - "clientCommandBatchId" : "bbb", - "createdAt" : "NOW" - } - } - }, - { - "ShapeRenamed" : { - "shapeId" : "basic_0", - "name" : "Basic", - "eventContext" : { - "clientId" : "ccc", - "clientSessionId" : "sss", - "clientCommandBatchId" : "bbb", - "createdAt" : "NOW" - } - } - } -] \ No newline at end of file diff --git a/core/optic/jvm/src/test/scala/com/useoptic/serialization/JvmStableHashableSpec.scala b/core/optic/jvm/src/test/scala/com/useoptic/serialization/JvmStableHashableSpec.scala index 4a3aa39b45..7d1812f09f 100644 --- a/core/optic/jvm/src/test/scala/com/useoptic/serialization/JvmStableHashableSpec.scala +++ b/core/optic/jvm/src/test/scala/com/useoptic/serialization/JvmStableHashableSpec.scala @@ -10,7 +10,7 @@ class JvmStableHashableSpec extends FunSpec { InteractionTrail(Seq(Url(), Method("GET"))), SpecPath("path_wYt9lgNJVf") ) - assert(diff.toHash()(JvmStableHashable.hash) == "03bbd8f6b62f7fa0661fa2040dbacc1a914a2970") + assert(diff.toHash()(JvmStableHashable.hash) == "756c80f2212b17c3da0c4a24079469644c9dac62") } } } diff --git a/core/optic/shared/src/test/scala/com/useoptic/.gitignore b/core/optic/shared/src/test/scala/com/useoptic/.gitignore new file mode 100644 index 0000000000..b8fec19f9b --- /dev/null +++ b/core/optic/shared/src/test/scala/com/useoptic/.gitignore @@ -0,0 +1,5 @@ +# exclude everything +debug_user_issues/* + +# exception to the rule +!debug_user_issues/.gitkeep diff --git a/core/optic/shared/src/test/scala/com/useoptic/debug_user_issues/.gitkeep b/core/optic/shared/src/test/scala/com/useoptic/debug_user_issues/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/JsonFileFixture.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/JsonFileFixture.scala index 84222a529e..dab689baaf 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/JsonFileFixture.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/JsonFileFixture.scala @@ -40,6 +40,13 @@ trait JsonFileFixture { eventsAndInteractionsFrom(json) } + def universeFromUserSession(slug: String): Universe = { + import better.files._ + val filePath = ("../workspaces/ui/public/private-sessions/"+slug+".json").toFile + val json = parseFile(filePath.toJava).right.get + eventsAndInteractionsFrom(json) + } + def universeFromFilePath(path: String): Universe = { import better.files._ val filePath = (path).toFile diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/CommandsToEventsSnapshotSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/CommandsToEventsSnapshotSpec.scala new file mode 100644 index 0000000000..97aee3632b --- /dev/null +++ b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/CommandsToEventsSnapshotSpec.scala @@ -0,0 +1,11 @@ +package com.useoptic.end_to_end + +import com.useoptic.end_to_end.snapshot_task.CommandsToEventsSnapshotTask + +class CommandsToEventsSnapshotSpec extends CommandsToEventsSnapshotTask { + //add managed cases + when("Case name", () => Vector()) + + //run the suite + runSuite +} diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/CommandsToEventsSnapshotSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/CommandsToEventsSnapshotSpec.scala deleted file mode 100644 index dd3d449d20..0000000000 --- a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/snapshot_task/CommandsToEventsSnapshotSpec.scala +++ /dev/null @@ -1,17 +0,0 @@ -package com.useoptic.end_to_end.snapshot_task - -import com.useoptic.contexts.rfc.Commands.RfcCommand -import com.useoptic.contexts.rfc.Events.RfcEvent -import com.useoptic.contexts.rfc.{RfcCommandContext, RfcService, RfcServiceJSFacade} -import com.useoptic.serialization.{CommandSerialization, EventSerialization} -import io.circe.{Decoder, Encoder, Json} -import io.circe.generic.semiauto.{deriveDecoder, deriveEncoder} -import org.scalatest.{BeforeAndAfter, BeforeAndAfterAll} - -class CommandsToEventsSnapshotSpec extends CommandsToEventsSnapshotTask { - //add managed cases - when("Case name", () => Vector()) - - //run the suite - runSuite -} From 97b962332785cc357f6e9b8afa1282cbed9f01b8 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Thu, 25 Jun 2020 08:34:22 -0400 Subject: [PATCH 10/85] protocol for testing private sessions --- .../commands-to-events/Case name.managed.json | 2 + .../outputs/Case name.managed.json | 2 + .../array of empty.managed.json | 6 + .../array of strings.managed.json | 11 + .../array with polymorhpism.managed.json | 18 + ...object or empty array at root.managed.json | 9 + .../json-to-shapes/empty object.managed.json | 6 + .../f1 race results.managed.json | 785 +++++++ ... polymorphism, then nullable .managed.json | 13 + .../github commits.managed.json | 1881 +++++++++++++++++ ... provided two different types.managed.json | 13 + ...e field, later provided value.managed.json | 10 + ...primitive fields are optional.managed.json | 16 + .../outputs/array of empty.managed.json | 34 + .../outputs/array of strings.managed.json | 34 + .../array with polymorhpism.managed.json | 92 + ...object or empty array at root.managed.json | 92 + .../outputs/empty object.managed.json | 34 + .../outputs/f1 race results.managed.json | 1258 +++++++++++ ... polymorphism, then nullable .managed.json | 112 + .../outputs/github commits.managed.json | 1484 +++++++++++++ ... provided two different types.managed.json | 112 + ...e field, later provided value.managed.json | 54 + ...primitive fields are optional.managed.json | 116 + 24 files changed, 6194 insertions(+) create mode 100644 core/domain-snapshots/commands-to-events/Case name.managed.json create mode 100644 core/domain-snapshots/commands-to-events/outputs/Case name.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/array of empty.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/array of strings.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/array with polymorhpism.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/empty object or empty array at root.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/empty object.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/f1 race results.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/field polymorphism, then nullable .managed.json create mode 100644 core/domain-snapshots/json-to-shapes/github commits.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/nullable field, later provided two different types.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/nullable field, later provided value.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/object is at root and some primitive fields are optional.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/array of empty.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/array of strings.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/array with polymorhpism.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/empty object or empty array at root.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/empty object.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/f1 race results.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/field polymorphism, then nullable .managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/github commits.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/nullable field, later provided two different types.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/nullable field, later provided value.managed.json create mode 100644 core/domain-snapshots/json-to-shapes/outputs/object is at root and some primitive fields are optional.managed.json diff --git a/core/domain-snapshots/commands-to-events/Case name.managed.json b/core/domain-snapshots/commands-to-events/Case name.managed.json new file mode 100644 index 0000000000..32960f8ced --- /dev/null +++ b/core/domain-snapshots/commands-to-events/Case name.managed.json @@ -0,0 +1,2 @@ +[ +] \ No newline at end of file diff --git a/core/domain-snapshots/commands-to-events/outputs/Case name.managed.json b/core/domain-snapshots/commands-to-events/outputs/Case name.managed.json new file mode 100644 index 0000000000..32960f8ced --- /dev/null +++ b/core/domain-snapshots/commands-to-events/outputs/Case name.managed.json @@ -0,0 +1,2 @@ +[ +] \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/array of empty.managed.json b/core/domain-snapshots/json-to-shapes/array of empty.managed.json new file mode 100644 index 0000000000..39f8d462bb --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/array of empty.managed.json @@ -0,0 +1,6 @@ +{ + "inputJsons" : [ + [ + ] + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/array of strings.managed.json b/core/domain-snapshots/json-to-shapes/array of strings.managed.json new file mode 100644 index 0000000000..0d75ba43e4 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/array of strings.managed.json @@ -0,0 +1,11 @@ +{ + "inputJsons" : [ + [ + "string1", + "string2", + "string3", + "string4", + "string5" + ] + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/array with polymorhpism.managed.json b/core/domain-snapshots/json-to-shapes/array with polymorhpism.managed.json new file mode 100644 index 0000000000..c649c47e8b --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/array with polymorhpism.managed.json @@ -0,0 +1,18 @@ +{ + "inputJsons" : [ + [ + "string1", + "string2", + 3, + "string4", + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12 + ] + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/empty object or empty array at root.managed.json b/core/domain-snapshots/json-to-shapes/empty object or empty array at root.managed.json new file mode 100644 index 0000000000..889bf2eae3 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/empty object or empty array at root.managed.json @@ -0,0 +1,9 @@ +{ + "inputJsons" : [ + [ + ], + { + + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/empty object.managed.json b/core/domain-snapshots/json-to-shapes/empty object.managed.json new file mode 100644 index 0000000000..39f8d462bb --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/empty object.managed.json @@ -0,0 +1,6 @@ +{ + "inputJsons" : [ + [ + ] + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/f1 race results.managed.json b/core/domain-snapshots/json-to-shapes/f1 race results.managed.json new file mode 100644 index 0000000000..94759e20df --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/f1 race results.managed.json @@ -0,0 +1,785 @@ +{ + "inputJsons" : [ + { + "MRData" : { + "xmlns" : "http://ergast.com/mrd/1.4", + "series" : "f1", + "url" : "http://ergast.com/api/f1/2019/1/results.json", + "limit" : "30", + "offset" : "0", + "total" : "20", + "RaceTable" : { + "season" : "2019", + "round" : "1", + "Races" : [ + { + "season" : "2019", + "round" : "1", + "url" : "https://en.wikipedia.org/wiki/2019_Australian_Grand_Prix", + "raceName" : "Australian Grand Prix", + "Circuit" : { + "circuitId" : "albert_park", + "url" : "http://en.wikipedia.org/wiki/Melbourne_Grand_Prix_Circuit", + "circuitName" : "Albert Park Grand Prix Circuit", + "Location" : { + "lat" : "-37.8497", + "long" : "144.968", + "locality" : "Melbourne", + "country" : "Australia" + } + }, + "date" : "2019-03-17", + "time" : "05:10:00Z", + "Results" : [ + { + "number" : "77", + "position" : "1", + "positionText" : "1", + "points" : "26", + "Driver" : { + "driverId" : "bottas", + "permanentNumber" : "77", + "code" : "BOT", + "url" : "http://en.wikipedia.org/wiki/Valtteri_Bottas", + "givenName" : "Valtteri", + "familyName" : "Bottas", + "dateOfBirth" : "1989-08-28", + "nationality" : "Finnish" + }, + "Constructor" : { + "constructorId" : "mercedes", + "url" : "http://en.wikipedia.org/wiki/Mercedes-Benz_in_Formula_One", + "name" : "Mercedes", + "nationality" : "German" + }, + "grid" : "2", + "laps" : "58", + "status" : "Finished", + "Time" : { + "millis" : "5127325", + "time" : "1:25:27.325" + }, + "FastestLap" : { + "rank" : "1", + "lap" : "57", + "Time" : { + "time" : "1:25.580" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "223.075" + } + } + }, + { + "number" : "44", + "position" : "2", + "positionText" : "2", + "points" : "18", + "Driver" : { + "driverId" : "hamilton", + "permanentNumber" : "44", + "code" : "HAM", + "url" : "http://en.wikipedia.org/wiki/Lewis_Hamilton", + "givenName" : "Lewis", + "familyName" : "Hamilton", + "dateOfBirth" : "1985-01-07", + "nationality" : "British" + }, + "Constructor" : { + "constructorId" : "mercedes", + "url" : "http://en.wikipedia.org/wiki/Mercedes-Benz_in_Formula_One", + "name" : "Mercedes", + "nationality" : "German" + }, + "grid" : "1", + "laps" : "58", + "status" : "Finished", + "Time" : { + "millis" : "5148211", + "time" : "+20.886" + }, + "FastestLap" : { + "rank" : "2", + "lap" : "57", + "Time" : { + "time" : "1:26.057" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "221.839" + } + } + }, + { + "number" : "33", + "position" : "3", + "positionText" : "3", + "points" : "15", + "Driver" : { + "driverId" : "max_verstappen", + "permanentNumber" : "33", + "code" : "VER", + "url" : "http://en.wikipedia.org/wiki/Max_Verstappen", + "givenName" : "Max", + "familyName" : "Verstappen", + "dateOfBirth" : "1997-09-30", + "nationality" : "Dutch" + }, + "Constructor" : { + "constructorId" : "red_bull", + "url" : "http://en.wikipedia.org/wiki/Red_Bull_Racing", + "name" : "Red Bull", + "nationality" : "Austrian" + }, + "grid" : "4", + "laps" : "58", + "status" : "Finished", + "Time" : { + "millis" : "5149845", + "time" : "+22.520" + }, + "FastestLap" : { + "rank" : "3", + "lap" : "57", + "Time" : { + "time" : "1:26.256" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "221.327" + } + } + }, + { + "number" : "5", + "position" : "4", + "positionText" : "4", + "points" : "12", + "Driver" : { + "driverId" : "vettel", + "permanentNumber" : "5", + "code" : "VET", + "url" : "http://en.wikipedia.org/wiki/Sebastian_Vettel", + "givenName" : "Sebastian", + "familyName" : "Vettel", + "dateOfBirth" : "1987-07-03", + "nationality" : "German" + }, + "Constructor" : { + "constructorId" : "ferrari", + "url" : "http://en.wikipedia.org/wiki/Scuderia_Ferrari", + "name" : "Ferrari", + "nationality" : "Italian" + }, + "grid" : "3", + "laps" : "58", + "status" : "Finished", + "Time" : { + "millis" : "5184434", + "time" : "+57.109" + }, + "FastestLap" : { + "rank" : "8", + "lap" : "16", + "Time" : { + "time" : "1:27.954" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "217.054" + } + } + }, + { + "number" : "16", + "position" : "5", + "positionText" : "5", + "points" : "10", + "Driver" : { + "driverId" : "leclerc", + "permanentNumber" : "16", + "code" : "LEC", + "url" : "http://en.wikipedia.org/wiki/Charles_Leclerc", + "givenName" : "Charles", + "familyName" : "Leclerc", + "dateOfBirth" : "1997-10-16", + "nationality" : "Monegasque" + }, + "Constructor" : { + "constructorId" : "ferrari", + "url" : "http://en.wikipedia.org/wiki/Scuderia_Ferrari", + "name" : "Ferrari", + "nationality" : "Italian" + }, + "grid" : "5", + "laps" : "58", + "status" : "Finished", + "Time" : { + "millis" : "5185528", + "time" : "+58.203" + }, + "FastestLap" : { + "rank" : "4", + "lap" : "58", + "Time" : { + "time" : "1:26.926" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "219.621" + } + } + }, + { + "number" : "20", + "position" : "6", + "positionText" : "6", + "points" : "8", + "Driver" : { + "driverId" : "kevin_magnussen", + "permanentNumber" : "20", + "code" : "MAG", + "url" : "http://en.wikipedia.org/wiki/Kevin_Magnussen", + "givenName" : "Kevin", + "familyName" : "Magnussen", + "dateOfBirth" : "1992-10-05", + "nationality" : "Danish" + }, + "Constructor" : { + "constructorId" : "haas", + "url" : "http://en.wikipedia.org/wiki/Haas_F1_Team", + "name" : "Haas F1 Team", + "nationality" : "American" + }, + "grid" : "7", + "laps" : "58", + "status" : "Finished", + "Time" : { + "millis" : "5214481", + "time" : "+1:27.156" + }, + "FastestLap" : { + "rank" : "9", + "lap" : "56", + "Time" : { + "time" : "1:28.182" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "216.493" + } + } + }, + { + "number" : "27", + "position" : "7", + "positionText" : "7", + "points" : "6", + "Driver" : { + "driverId" : "hulkenberg", + "permanentNumber" : "27", + "code" : "HUL", + "url" : "http://en.wikipedia.org/wiki/Nico_H%C3%BClkenberg", + "givenName" : "Nico", + "familyName" : "Hülkenberg", + "dateOfBirth" : "1987-08-19", + "nationality" : "German" + }, + "Constructor" : { + "constructorId" : "renault", + "url" : "http://en.wikipedia.org/wiki/Renault_in_Formula_One", + "name" : "Renault", + "nationality" : "French" + }, + "grid" : "11", + "laps" : "57", + "status" : "+1 Lap", + "FastestLap" : { + "rank" : "12", + "lap" : "52", + "Time" : { + "time" : "1:28.444" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "215.851" + } + } + }, + { + "number" : "7", + "position" : "8", + "positionText" : "8", + "points" : "4", + "Driver" : { + "driverId" : "raikkonen", + "permanentNumber" : "7", + "code" : "RAI", + "url" : "http://en.wikipedia.org/wiki/Kimi_R%C3%A4ikk%C3%B6nen", + "givenName" : "Kimi", + "familyName" : "Räikkönen", + "dateOfBirth" : "1979-10-17", + "nationality" : "Finnish" + }, + "Constructor" : { + "constructorId" : "alfa", + "url" : "http://en.wikipedia.org/wiki/Alfa_Romeo_in_Formula_One", + "name" : "Alfa Romeo", + "nationality" : "Italian" + }, + "grid" : "9", + "laps" : "57", + "status" : "+1 Lap", + "FastestLap" : { + "rank" : "11", + "lap" : "52", + "Time" : { + "time" : "1:28.270" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "216.277" + } + } + }, + { + "number" : "18", + "position" : "9", + "positionText" : "9", + "points" : "2", + "Driver" : { + "driverId" : "stroll", + "permanentNumber" : "18", + "code" : "STR", + "url" : "http://en.wikipedia.org/wiki/Lance_Stroll", + "givenName" : "Lance", + "familyName" : "Stroll", + "dateOfBirth" : "1998-10-29", + "nationality" : "Canadian" + }, + "Constructor" : { + "constructorId" : "racing_point", + "url" : "http://en.wikipedia.org/wiki/Racing_Point_F1_Team", + "name" : "Racing Point", + "nationality" : "British" + }, + "grid" : "16", + "laps" : "57", + "status" : "+1 Lap", + "FastestLap" : { + "rank" : "7", + "lap" : "29", + "Time" : { + "time" : "1:27.568" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "218.011" + } + } + }, + { + "number" : "26", + "position" : "10", + "positionText" : "10", + "points" : "1", + "Driver" : { + "driverId" : "kvyat", + "permanentNumber" : "26", + "code" : "KVY", + "url" : "http://en.wikipedia.org/wiki/Daniil_Kvyat", + "givenName" : "Daniil", + "familyName" : "Kvyat", + "dateOfBirth" : "1994-04-26", + "nationality" : "Russian" + }, + "Constructor" : { + "constructorId" : "toro_rosso", + "url" : "http://en.wikipedia.org/wiki/Scuderia_Toro_Rosso", + "name" : "Toro Rosso", + "nationality" : "Italian" + }, + "grid" : "15", + "laps" : "57", + "status" : "+1 Lap", + "FastestLap" : { + "rank" : "6", + "lap" : "39", + "Time" : { + "time" : "1:27.448" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "218.310" + } + } + }, + { + "number" : "10", + "position" : "11", + "positionText" : "11", + "points" : "0", + "Driver" : { + "driverId" : "gasly", + "permanentNumber" : "10", + "code" : "GAS", + "url" : "http://en.wikipedia.org/wiki/Pierre_Gasly", + "givenName" : "Pierre", + "familyName" : "Gasly", + "dateOfBirth" : "1996-02-07", + "nationality" : "French" + }, + "Constructor" : { + "constructorId" : "red_bull", + "url" : "http://en.wikipedia.org/wiki/Red_Bull_Racing", + "name" : "Red Bull", + "nationality" : "Austrian" + }, + "grid" : "17", + "laps" : "57", + "status" : "+1 Lap", + "FastestLap" : { + "rank" : "5", + "lap" : "39", + "Time" : { + "time" : "1:27.229" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "218.858" + } + } + }, + { + "number" : "4", + "position" : "12", + "positionText" : "12", + "points" : "0", + "Driver" : { + "driverId" : "norris", + "permanentNumber" : "4", + "code" : "NOR", + "url" : "http://en.wikipedia.org/wiki/Lando_Norris", + "givenName" : "Lando", + "familyName" : "Norris", + "dateOfBirth" : "1999-11-13", + "nationality" : "British" + }, + "Constructor" : { + "constructorId" : "mclaren", + "url" : "http://en.wikipedia.org/wiki/McLaren", + "name" : "McLaren", + "nationality" : "British" + }, + "grid" : "8", + "laps" : "57", + "status" : "+1 Lap", + "FastestLap" : { + "rank" : "16", + "lap" : "17", + "Time" : { + "time" : "1:28.555" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "215.581" + } + } + }, + { + "number" : "11", + "position" : "13", + "positionText" : "13", + "points" : "0", + "Driver" : { + "driverId" : "perez", + "permanentNumber" : "11", + "code" : "PER", + "url" : "http://en.wikipedia.org/wiki/Sergio_P%C3%A9rez", + "givenName" : "Sergio", + "familyName" : "Pérez", + "dateOfBirth" : "1990-01-26", + "nationality" : "Mexican" + }, + "Constructor" : { + "constructorId" : "racing_point", + "url" : "http://en.wikipedia.org/wiki/Racing_Point_F1_Team", + "name" : "Racing Point", + "nationality" : "British" + }, + "grid" : "10", + "laps" : "57", + "status" : "+1 Lap", + "FastestLap" : { + "rank" : "15", + "lap" : "41", + "Time" : { + "time" : "1:28.485" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "215.751" + } + } + }, + { + "number" : "23", + "position" : "14", + "positionText" : "14", + "points" : "0", + "Driver" : { + "driverId" : "albon", + "permanentNumber" : "23", + "code" : "ALB", + "url" : "http://en.wikipedia.org/wiki/Alexander_Albon", + "givenName" : "Alexander", + "familyName" : "Albon", + "dateOfBirth" : "1996-03-23", + "nationality" : "Thai" + }, + "Constructor" : { + "constructorId" : "toro_rosso", + "url" : "http://en.wikipedia.org/wiki/Scuderia_Toro_Rosso", + "name" : "Toro Rosso", + "nationality" : "Italian" + }, + "grid" : "13", + "laps" : "57", + "status" : "+1 Lap", + "FastestLap" : { + "rank" : "10", + "lap" : "43", + "Time" : { + "time" : "1:28.188" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "216.478" + } + } + }, + { + "number" : "99", + "position" : "15", + "positionText" : "15", + "points" : "0", + "Driver" : { + "driverId" : "giovinazzi", + "permanentNumber" : "99", + "code" : "GIO", + "url" : "http://en.wikipedia.org/wiki/Antonio_Giovinazzi", + "givenName" : "Antonio", + "familyName" : "Giovinazzi", + "dateOfBirth" : "1993-12-14", + "nationality" : "Italian" + }, + "Constructor" : { + "constructorId" : "alfa", + "url" : "http://en.wikipedia.org/wiki/Alfa_Romeo_in_Formula_One", + "name" : "Alfa Romeo", + "nationality" : "Italian" + }, + "grid" : "14", + "laps" : "57", + "status" : "+1 Lap", + "FastestLap" : { + "rank" : "14", + "lap" : "29", + "Time" : { + "time" : "1:28.479" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "215.766" + } + } + }, + { + "number" : "63", + "position" : "16", + "positionText" : "16", + "points" : "0", + "Driver" : { + "driverId" : "russell", + "permanentNumber" : "63", + "code" : "RUS", + "url" : "http://en.wikipedia.org/wiki/George_Russell_(racing_driver)", + "givenName" : "George", + "familyName" : "Russell", + "dateOfBirth" : "1998-02-15", + "nationality" : "British" + }, + "Constructor" : { + "constructorId" : "williams", + "url" : "http://en.wikipedia.org/wiki/Williams_Grand_Prix_Engineering", + "name" : "Williams", + "nationality" : "British" + }, + "grid" : "19", + "laps" : "56", + "status" : "+2 Laps", + "FastestLap" : { + "rank" : "17", + "lap" : "55", + "Time" : { + "time" : "1:28.713" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "215.197" + } + } + }, + { + "number" : "88", + "position" : "17", + "positionText" : "17", + "points" : "0", + "Driver" : { + "driverId" : "kubica", + "permanentNumber" : "88", + "code" : "KUB", + "url" : "http://en.wikipedia.org/wiki/Robert_Kubica", + "givenName" : "Robert", + "familyName" : "Kubica", + "dateOfBirth" : "1984-12-07", + "nationality" : "Polish" + }, + "Constructor" : { + "constructorId" : "williams", + "url" : "http://en.wikipedia.org/wiki/Williams_Grand_Prix_Engineering", + "name" : "Williams", + "nationality" : "British" + }, + "grid" : "20", + "laps" : "55", + "status" : "+3 Laps", + "FastestLap" : { + "rank" : "18", + "lap" : "30", + "Time" : { + "time" : "1:29.284" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "213.821" + } + } + }, + { + "number" : "8", + "position" : "18", + "positionText" : "R", + "points" : "0", + "Driver" : { + "driverId" : "grosjean", + "permanentNumber" : "8", + "code" : "GRO", + "url" : "http://en.wikipedia.org/wiki/Romain_Grosjean", + "givenName" : "Romain", + "familyName" : "Grosjean", + "dateOfBirth" : "1986-04-17", + "nationality" : "French" + }, + "Constructor" : { + "constructorId" : "haas", + "url" : "http://en.wikipedia.org/wiki/Haas_F1_Team", + "name" : "Haas F1 Team", + "nationality" : "American" + }, + "grid" : "6", + "laps" : "29", + "status" : "Wheel", + "FastestLap" : { + "rank" : "13", + "lap" : "17", + "Time" : { + "time" : "1:28.462" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "215.807" + } + } + }, + { + "number" : "3", + "position" : "19", + "positionText" : "R", + "points" : "0", + "Driver" : { + "driverId" : "ricciardo", + "permanentNumber" : "3", + "code" : "RIC", + "url" : "http://en.wikipedia.org/wiki/Daniel_Ricciardo", + "givenName" : "Daniel", + "familyName" : "Ricciardo", + "dateOfBirth" : "1989-07-01", + "nationality" : "Australian" + }, + "Constructor" : { + "constructorId" : "renault", + "url" : "http://en.wikipedia.org/wiki/Renault_in_Formula_One", + "name" : "Renault", + "nationality" : "French" + }, + "grid" : "12", + "laps" : "28", + "status" : "Damage", + "FastestLap" : { + "rank" : "19", + "lap" : "18", + "Time" : { + "time" : "1:29.848" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "212.478" + } + } + }, + { + "number" : "55", + "position" : "20", + "positionText" : "R", + "points" : "0", + "Driver" : { + "driverId" : "sainz", + "permanentNumber" : "55", + "code" : "SAI", + "url" : "http://en.wikipedia.org/wiki/Carlos_Sainz_Jr.", + "givenName" : "Carlos", + "familyName" : "Sainz", + "dateOfBirth" : "1994-09-01", + "nationality" : "Spanish" + }, + "Constructor" : { + "constructorId" : "mclaren", + "url" : "http://en.wikipedia.org/wiki/McLaren", + "name" : "McLaren", + "nationality" : "British" + }, + "grid" : "18", + "laps" : "9", + "status" : "Engine", + "FastestLap" : { + "rank" : "20", + "lap" : "9", + "Time" : { + "time" : "1:30.899" + }, + "AverageSpeed" : { + "units" : "kph", + "speed" : "210.022" + } + } + } + ] + } + ] + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/field polymorphism, then nullable .managed.json b/core/domain-snapshots/json-to-shapes/field polymorphism, then nullable .managed.json new file mode 100644 index 0000000000..0ec56a2e63 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/field polymorphism, then nullable .managed.json @@ -0,0 +1,13 @@ +{ + "inputJsons" : [ + { + "value" : "String" + }, + { + "value" : 123 + }, + { + "value" : null + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/github commits.managed.json b/core/domain-snapshots/json-to-shapes/github commits.managed.json new file mode 100644 index 0000000000..4c9974682d --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/github commits.managed.json @@ -0,0 +1,1881 @@ +{ + "inputJsons" : [ + [ + { + "sha" : "821e8fb5ba119cde825fd6c1e11e22542acd65f9", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjgyMWU4ZmI1YmExMTljZGU4MjVmZDZjMWUxMWUyMjU0MmFjZDY1Zjk=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "acunniffe@gmail.com", + "date" : "2020-06-24T20:00:22Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-24T20:00:22Z" + }, + "message" : "Merge pull request #225 from acunniffe/api-check-analytics\n\nAPI Check failures should be reported", + "tree" : { + "sha" : "0b2d8e9060c75fef9b6ed4386e514902c4a89463", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/0b2d8e9060c75fef9b6ed4386e514902c4a89463" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/821e8fb5ba119cde825fd6c1e11e22542acd65f9", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe87DXCRBK7hj4Ov3rIwAAdHIIAEVDJrNgDNEHIzK50w2UynFm\nNvQWkMMMYtKzsihscjCrSThcTi3BoTM0Mjap0ESTCdOvu1y/hypBcFB6HxRdVDP9\n+Fs3VrGDJ2I6vyMZtfRcTNueVoRmKKQAMRgNZtNAH9LVpjfyBW5QByFHGh7lhoZ1\n5qKUn7+mZuvLNIydWM7Yu6DSK3tqjP4RznuahQd/9tgLSPnrrUsdbGruE/pAEBJm\ndKyTWJcPI+2kL9B81gIFDcE/0PiGZvAoQa6K49Y7WeTsVxT0a/2yvLbpuFuO/OgF\nHvI0d1rjAVOt+nomMPQCNEJzLRNrKk/gi8SMSmDV540cyFBKYRZJ2JgZ8fimdrw=\n=4flw\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 0b2d8e9060c75fef9b6ed4386e514902c4a89463\nparent 79c9751c7293dd76f5b0549b850aa8ed7f0a29b5\nparent e2ea26beb3f375aab05c401a42c2ee534b2c5312\nauthor Aidan Cunniffe 1593028822 -0400\ncommitter GitHub 1593028822 -0400\n\nMerge pull request #225 from acunniffe/api-check-analytics\n\nAPI Check failures should be reported" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/821e8fb5ba119cde825fd6c1e11e22542acd65f9", + "html_url" : "https://github.com/opticdev/optic/commit/821e8fb5ba119cde825fd6c1e11e22542acd65f9", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/821e8fb5ba119cde825fd6c1e11e22542acd65f9/comments", + "author" : { + "login" : "acunniffe", + "id" : 5900338, + "node_id" : "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url" : "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/acunniffe", + "html_url" : "https://github.com/acunniffe", + "followers_url" : "https://api.github.com/users/acunniffe/followers", + "following_url" : "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url" : "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url" : "https://api.github.com/users/acunniffe/orgs", + "repos_url" : "https://api.github.com/users/acunniffe/repos", + "events_url" : "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url" : "https://api.github.com/users/acunniffe/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "url" : "https://api.github.com/repos/opticdev/optic/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "html_url" : "https://github.com/opticdev/optic/commit/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5" + }, + { + "sha" : "e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "url" : "https://api.github.com/repos/opticdev/optic/commits/e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "html_url" : "https://github.com/opticdev/optic/commit/e2ea26beb3f375aab05c401a42c2ee534b2c5312" + } + ] + }, + { + "sha" : "e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OmUyZWEyNmJlYjNmMzc1YWFiMDVjNDAxYTQyYzJlZTUzNGIyYzUzMTI=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-24T19:40:11Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-24T19:40:11Z" + }, + "message" : "Merge branch 'api-check-analytics' of https://github.com/acunniffe/optic into api-check-analytics", + "tree" : { + "sha" : "0b2d8e9060c75fef9b6ed4386e514902c4a89463", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/0b2d8e9060c75fef9b6ed4386e514902c4a89463" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "html_url" : "https://github.com/opticdev/optic/commit/e2ea26beb3f375aab05c401a42c2ee534b2c5312", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/e2ea26beb3f375aab05c401a42c2ee534b2c5312/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "url" : "https://api.github.com/repos/opticdev/optic/commits/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "html_url" : "https://github.com/opticdev/optic/commit/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47" + }, + { + "sha" : "438609fd68cc388ffa94dcb0895828d219deef33", + "url" : "https://api.github.com/repos/opticdev/optic/commits/438609fd68cc388ffa94dcb0895828d219deef33", + "html_url" : "https://github.com/opticdev/optic/commit/438609fd68cc388ffa94dcb0895828d219deef33" + } + ] + }, + { + "sha" : "eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OmVhZWU2OTRkOWQ4ZGQyN2MyY2M0NDNiYWM2YjY4YjA0MmYxZWViNDc=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-24T19:39:43Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-24T19:39:43Z" + }, + "message" : "added same config exploder to the task runner", + "tree" : { + "sha" : "d77550e1c004ec9d9f2e2b06900999ef0c3bff1a", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/d77550e1c004ec9d9f2e2b06900999ef0c3bff1a" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "html_url" : "https://github.com/opticdev/optic/commit/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/eaee694d9d8dd27c2cc443bac6b68b042f1eeb47/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "1cafa499228f1a596b98f3b20905546768647bff", + "url" : "https://api.github.com/repos/opticdev/optic/commits/1cafa499228f1a596b98f3b20905546768647bff", + "html_url" : "https://github.com/opticdev/optic/commit/1cafa499228f1a596b98f3b20905546768647bff" + } + ] + }, + { + "sha" : "438609fd68cc388ffa94dcb0895828d219deef33", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjQzODYwOWZkNjhjYzM4OGZmYTk0ZGNiMDg5NTgyOGQyMTlkZWVmMzM=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "acunniffe@gmail.com", + "date" : "2020-06-24T14:53:13Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-24T14:53:13Z" + }, + "message" : "Merge branch 'develop' into api-check-analytics", + "tree" : { + "sha" : "f7d28da5dd55d0edc813d926fcc21b954d8ae935", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/f7d28da5dd55d0edc813d926fcc21b954d8ae935" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/438609fd68cc388ffa94dcb0895828d219deef33", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe82jZCRBK7hj4Ov3rIwAAdHIIAHmlgpBQc1jsIuuI8DfDP2wI\nUb7k3pabe8G8IoCMHjPB0dVm4AcG1RteQ3dfCqcMpD6K2XlKj01dNormarmbbQY0\nQBwsgR8/hbi0YwBHljsknmvn3QqkimkSU9VN6F/MNDQeUL36yaskNS66TtT/5TBO\nCAM36tSVWXPCQBuKyfqhY0zKfGObqslNia9USdhDXKzUcI5KNleV3PqYAdD098nT\n4obnMGw9Q7YnLF8Wy1D671omoStWNw+RMSxOOk15+fJ0LH0N2Ue4GxRG9W7frpzq\niLE7MCoPcF5iRM90LYd5m5T4aScYPPcPOOUXt411kefLFILjh14WtsJKbzWiCTM=\n=18AY\n-----END PGP SIGNATURE-----\n", + "payload" : "tree f7d28da5dd55d0edc813d926fcc21b954d8ae935\nparent 1cafa499228f1a596b98f3b20905546768647bff\nparent 79c9751c7293dd76f5b0549b850aa8ed7f0a29b5\nauthor Aidan Cunniffe 1593010393 -0400\ncommitter GitHub 1593010393 -0400\n\nMerge branch 'develop' into api-check-analytics" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/438609fd68cc388ffa94dcb0895828d219deef33", + "html_url" : "https://github.com/opticdev/optic/commit/438609fd68cc388ffa94dcb0895828d219deef33", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/438609fd68cc388ffa94dcb0895828d219deef33/comments", + "author" : { + "login" : "acunniffe", + "id" : 5900338, + "node_id" : "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url" : "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/acunniffe", + "html_url" : "https://github.com/acunniffe", + "followers_url" : "https://api.github.com/users/acunniffe/followers", + "following_url" : "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url" : "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url" : "https://api.github.com/users/acunniffe/orgs", + "repos_url" : "https://api.github.com/users/acunniffe/repos", + "events_url" : "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url" : "https://api.github.com/users/acunniffe/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "1cafa499228f1a596b98f3b20905546768647bff", + "url" : "https://api.github.com/repos/opticdev/optic/commits/1cafa499228f1a596b98f3b20905546768647bff", + "html_url" : "https://github.com/opticdev/optic/commit/1cafa499228f1a596b98f3b20905546768647bff" + }, + { + "sha" : "79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "url" : "https://api.github.com/repos/opticdev/optic/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "html_url" : "https://github.com/opticdev/optic/commit/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5" + } + ] + }, + { + "sha" : "79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1Ojc5Yzk3NTFjNzI5M2RkNzZmNWIwNTQ5Yjg1MGFhOGVkN2YwYTI5YjU=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "acunniffe@gmail.com", + "date" : "2020-06-24T14:53:01Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-24T14:53:01Z" + }, + "message" : "Merge pull request #223 from acunniffe/make-ids-deterministic\n\nMake ids deterministic", + "tree" : { + "sha" : "20ecd3410a4300f9f988c313eb05a43ce06aa431", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/20ecd3410a4300f9f988c313eb05a43ce06aa431" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe82jNCRBK7hj4Ov3rIwAAdHIIACwnhFk6RjzHIGLNB6e6eVLJ\nKy3Tye7bOheOyZUuvwaz90wCuFQuZFOSsc/fIURh4gnLSgci789vSnZLZe40Pb1n\nF3TBHzX/1ynA19p20hSvBMt754w2s4UiW8byoDtsYHkQl5ERRQfCSR1ECo0kNIDu\nstKA4k71injrotoqwkwKJvWxFgL8qQUHy5osOKxqxjda95GX8RobJ6JvLCyaCNbh\nSztAYQB7HrzUcjfsry9XjBRlbITMNXHX5mZTHoKxjUgYvulA+zz2NRY20E+ArNWV\nQW6lp0tA7q8yIniEKqNVHJlqT/G8PYeJgrJZmqa45nI8HnC++KybymMLhNA5um0=\n=vZOk\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 20ecd3410a4300f9f988c313eb05a43ce06aa431\nparent 1647413024116fc176536fdfe5cc737f95e592cb\nparent 99604d76e2b077e67b27709cdcebd54ce9777312\nauthor Aidan Cunniffe 1593010381 -0400\ncommitter GitHub 1593010381 -0400\n\nMerge pull request #223 from acunniffe/make-ids-deterministic\n\nMake ids deterministic" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "html_url" : "https://github.com/opticdev/optic/commit/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/79c9751c7293dd76f5b0549b850aa8ed7f0a29b5/comments", + "author" : { + "login" : "acunniffe", + "id" : 5900338, + "node_id" : "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url" : "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/acunniffe", + "html_url" : "https://github.com/acunniffe", + "followers_url" : "https://api.github.com/users/acunniffe/followers", + "following_url" : "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url" : "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url" : "https://api.github.com/users/acunniffe/orgs", + "repos_url" : "https://api.github.com/users/acunniffe/repos", + "events_url" : "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url" : "https://api.github.com/users/acunniffe/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "1647413024116fc176536fdfe5cc737f95e592cb", + "url" : "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "html_url" : "https://github.com/opticdev/optic/commit/1647413024116fc176536fdfe5cc737f95e592cb" + }, + { + "sha" : "99604d76e2b077e67b27709cdcebd54ce9777312", + "url" : "https://api.github.com/repos/opticdev/optic/commits/99604d76e2b077e67b27709cdcebd54ce9777312", + "html_url" : "https://github.com/opticdev/optic/commit/99604d76e2b077e67b27709cdcebd54ce9777312" + } + ] + }, + { + "sha" : "1cafa499228f1a596b98f3b20905546768647bff", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjFjYWZhNDk5MjI4ZjFhNTk2Yjk4ZjNiMjA5MDU1NDY3Njg2NDdiZmY=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-24T14:28:38Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-24T14:28:38Z" + }, + "message" : "Ensured errors make it to the analytics pipeline", + "tree" : { + "sha" : "0fe600b49c2642565c6928d5639fca3d9cc57d7b", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/0fe600b49c2642565c6928d5639fca3d9cc57d7b" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/1cafa499228f1a596b98f3b20905546768647bff", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/1cafa499228f1a596b98f3b20905546768647bff", + "html_url" : "https://github.com/opticdev/optic/commit/1cafa499228f1a596b98f3b20905546768647bff", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/1cafa499228f1a596b98f3b20905546768647bff/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "1647413024116fc176536fdfe5cc737f95e592cb", + "url" : "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "html_url" : "https://github.com/opticdev/optic/commit/1647413024116fc176536fdfe5cc737f95e592cb" + } + ] + }, + { + "sha" : "99604d76e2b077e67b27709cdcebd54ce9777312", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1Ojk5NjA0ZDc2ZTJiMDc3ZTY3YjI3NzA5Y2RjZWJkNTRjZTk3NzczMTI=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "acunniffe@gmail.com", + "date" : "2020-06-23T20:41:23Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-23T20:41:23Z" + }, + "message" : "Merge branch 'develop' into make-ids-deterministic", + "tree" : { + "sha" : "20ecd3410a4300f9f988c313eb05a43ce06aa431", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/20ecd3410a4300f9f988c313eb05a43ce06aa431" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/99604d76e2b077e67b27709cdcebd54ce9777312", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe8mjzCRBK7hj4Ov3rIwAAdHIIAJmDimdThP2bykwM3fD5Obwf\nQMFkVkzg+CXjoV2TzYCgt3xFsWvtqW1FNplImib3cg00PLS1uRnG1be8gcE9VJM0\nX0q3aHZUVuVHpedI76a8Z8qNPWlEh2ozE0hTKOdY8Mxg7J+1c4qjIyWftKoIwyyO\no1Qk8uWVN5h6YkE6ndhaMMjjxYFdB0XmdP/mXUwk0lUaWx7n3yNOLEWe99xqkdl6\nGdbZfwoi6ZYfObGqN1aKDMHs65nSclZcsJCZN6GQkGR3uG5tVr7fiBx0G994kJGy\nBbSN9qHXy1DOInAUlyDp3CsO+TT2x8vuWLsJyZ5fd5ZnadI2vc04jfMVPQKH1uY=\n=LRfW\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 20ecd3410a4300f9f988c313eb05a43ce06aa431\nparent e769026c73841089c3f906c9f2cd97107e723f64\nparent 1647413024116fc176536fdfe5cc737f95e592cb\nauthor Aidan Cunniffe 1592944883 -0400\ncommitter GitHub 1592944883 -0400\n\nMerge branch 'develop' into make-ids-deterministic" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/99604d76e2b077e67b27709cdcebd54ce9777312", + "html_url" : "https://github.com/opticdev/optic/commit/99604d76e2b077e67b27709cdcebd54ce9777312", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/99604d76e2b077e67b27709cdcebd54ce9777312/comments", + "author" : { + "login" : "acunniffe", + "id" : 5900338, + "node_id" : "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url" : "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/acunniffe", + "html_url" : "https://github.com/acunniffe", + "followers_url" : "https://api.github.com/users/acunniffe/followers", + "following_url" : "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url" : "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url" : "https://api.github.com/users/acunniffe/orgs", + "repos_url" : "https://api.github.com/users/acunniffe/repos", + "events_url" : "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url" : "https://api.github.com/users/acunniffe/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "e769026c73841089c3f906c9f2cd97107e723f64", + "url" : "https://api.github.com/repos/opticdev/optic/commits/e769026c73841089c3f906c9f2cd97107e723f64", + "html_url" : "https://github.com/opticdev/optic/commit/e769026c73841089c3f906c9f2cd97107e723f64" + }, + { + "sha" : "1647413024116fc176536fdfe5cc737f95e592cb", + "url" : "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "html_url" : "https://github.com/opticdev/optic/commit/1647413024116fc176536fdfe5cc737f95e592cb" + } + ] + }, + { + "sha" : "1647413024116fc176536fdfe5cc737f95e592cb", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjE2NDc0MTMwMjQxMTZmYzE3NjUzNmZkZmU1Y2M3MzdmOTVlNTkyY2I=", + "commit" : { + "author" : { + "name" : "Jaap van Hardeveld", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T13:56:18Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-23T13:56:18Z" + }, + "message" : "Merge pull request #224 from JaapRood/feature/local-transparent-proxy-config\n\nPrevent tasks with no command and target info from passing task config verification", + "tree" : { + "sha" : "6f7c6153e5da84aa306eb225af5c6cad979c6d73", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/6f7c6153e5da84aa306eb225af5c6cad979c6d73" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe8goCCRBK7hj4Ov3rIwAAdHIIAGnqMjO0Kx3N0uHCz8BJjWMi\nuOLmWfryRmBInPD49ezTO6gd8Kz+9dqt03W789A3qrcOMz27Eh0+URD1m/w6Qrl+\nUGXjo+cJ40EF+c8iPcHDGxa/XjcisbhAQg8LK7eivDrlmrFNRJYT8XO3D1jPls6P\nnRCp1ZltNbWp2HqdNIr4+BffT0Q5yHUngWXxXQDdT/k28Q68Hwddx2FGpQUvib/F\nNqCNAMvcXco26y+hflHYw6t9bTz/v8D/FkcT+n7Oce6d2pnfvUQY6LkTYtwI3d3S\nEBo6i1a8adS6hoS111EIPmEBvUES0oVJlpounW/a+tQEY3iR4hMthpa2OhmHuy8=\n=oZW3\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 6f7c6153e5da84aa306eb225af5c6cad979c6d73\nparent 5c11863d3c63f4ffc36251be198b6ac653c3273c\nparent 32c31f5e59ac39db31310be3ef84b1541e763cae\nauthor Jaap van Hardeveld 1592920578 +0200\ncommitter GitHub 1592920578 +0200\n\nMerge pull request #224 from JaapRood/feature/local-transparent-proxy-config\n\nPrevent tasks with no command and target info from passing task config verification" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb", + "html_url" : "https://github.com/opticdev/optic/commit/1647413024116fc176536fdfe5cc737f95e592cb", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/1647413024116fc176536fdfe5cc737f95e592cb/comments", + "author" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "5c11863d3c63f4ffc36251be198b6ac653c3273c", + "url" : "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "html_url" : "https://github.com/opticdev/optic/commit/5c11863d3c63f4ffc36251be198b6ac653c3273c" + }, + { + "sha" : "32c31f5e59ac39db31310be3ef84b1541e763cae", + "url" : "https://api.github.com/repos/opticdev/optic/commits/32c31f5e59ac39db31310be3ef84b1541e763cae", + "html_url" : "https://github.com/opticdev/optic/commit/32c31f5e59ac39db31310be3ef84b1541e763cae" + } + ] + }, + { + "sha" : "32c31f5e59ac39db31310be3ef84b1541e763cae", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjMyYzMxZjVlNTlhYzM5ZGIzMTMxMGJlM2VmODRiMTU0MWU3NjNjYWU=", + "commit" : { + "author" : { + "name" : "Jaap Rood", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T13:44:59Z" + }, + "committer" : { + "name" : "Jaap Rood", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T13:45:29Z" + }, + "message" : "Prevent tasks with no command and target info from passing task config verification", + "tree" : { + "sha" : "6f7c6153e5da84aa306eb225af5c6cad979c6d73", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/6f7c6153e5da84aa306eb225af5c6cad979c6d73" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/32c31f5e59ac39db31310be3ef84b1541e763cae", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/32c31f5e59ac39db31310be3ef84b1541e763cae", + "html_url" : "https://github.com/opticdev/optic/commit/32c31f5e59ac39db31310be3ef84b1541e763cae", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/32c31f5e59ac39db31310be3ef84b1541e763cae/comments", + "author" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "5c11863d3c63f4ffc36251be198b6ac653c3273c", + "url" : "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "html_url" : "https://github.com/opticdev/optic/commit/5c11863d3c63f4ffc36251be198b6ac653c3273c" + } + ] + }, + { + "sha" : "e769026c73841089c3f906c9f2cd97107e723f64", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OmU3NjkwMjZjNzM4NDEwODljM2Y5MDZjOWYyY2Q5NzEwN2U3MjNmNjQ=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-23T13:35:40Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-23T13:35:40Z" + }, + "message" : "Merge branch 'make-ids-deterministic' of https://github.com/acunniffe/optic into make-ids-deterministic", + "tree" : { + "sha" : "0359a90d99c5fd8598924d086201be3df9b20c43", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/0359a90d99c5fd8598924d086201be3df9b20c43" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/e769026c73841089c3f906c9f2cd97107e723f64", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/e769026c73841089c3f906c9f2cd97107e723f64", + "html_url" : "https://github.com/opticdev/optic/commit/e769026c73841089c3f906c9f2cd97107e723f64", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/e769026c73841089c3f906c9f2cd97107e723f64/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "url" : "https://api.github.com/repos/opticdev/optic/commits/044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "html_url" : "https://github.com/opticdev/optic/commit/044ff0b82fd63f150ec12eb2d0f62fb6648e4183" + }, + { + "sha" : "b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "url" : "https://api.github.com/repos/opticdev/optic/commits/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "html_url" : "https://github.com/opticdev/optic/commit/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34" + } + ] + }, + { + "sha" : "044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjA0NGZmMGI4MmZkNjNmMTUwZWMxMmViMmQwZjYyZmI2NjQ4ZTQxODM=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-23T13:34:37Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-23T13:34:37Z" + }, + "message" : "removed dead test data package", + "tree" : { + "sha" : "6b7c0f570d5c0623c7ecffef1b16fbb21c44cf8c", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/6b7c0f570d5c0623c7ecffef1b16fbb21c44cf8c" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "html_url" : "https://github.com/opticdev/optic/commit/044ff0b82fd63f150ec12eb2d0f62fb6648e4183", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/044ff0b82fd63f150ec12eb2d0f62fb6648e4183/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "url" : "https://api.github.com/repos/opticdev/optic/commits/bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "html_url" : "https://github.com/opticdev/optic/commit/bd0d0dcc638d7f7e478adef7275166f60cf427ae" + } + ] + }, + { + "sha" : "bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OmJkMGQwZGNjNjM4ZDdmN2U0NzhhZGVmNzI3NTE2NmY2MGNmNDI3YWU=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-23T13:34:29Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-23T13:34:29Z" + }, + "message" : "Removed dead test data package", + "tree" : { + "sha" : "2aebfe17749fa248969635f037c2bab0a8524818", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/2aebfe17749fa248969635f037c2bab0a8524818" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "html_url" : "https://github.com/opticdev/optic/commit/bd0d0dcc638d7f7e478adef7275166f60cf427ae", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/bd0d0dcc638d7f7e478adef7275166f60cf427ae/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "url" : "https://api.github.com/repos/opticdev/optic/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "html_url" : "https://github.com/opticdev/optic/commit/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6" + } + ] + }, + { + "sha" : "b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OmI1Y2RmZmMzNzhmZjY1NzRlYThhM2MwZDA0YWU4ZDhiNGEwYmFmMzQ=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "acunniffe@gmail.com", + "date" : "2020-06-23T13:29:54Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-23T13:29:54Z" + }, + "message" : "Merge branch 'develop' into make-ids-deterministic", + "tree" : { + "sha" : "2c7c881744e8630a511958c9e1794848a29542fd", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/2c7c881744e8630a511958c9e1794848a29542fd" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe8gPSCRBK7hj4Ov3rIwAAdHIIACRodW1qSkcFnasU/ZMH7Vn/\nWEloyFJCHP7lv5QAgdmhbDbgWRMxcSNwJTbpAwr4E9ynEHoWsHWyUsXU3OxVuTjb\noLkwConUfqtn460AlbbclbS4W8h46maBhWq9MEcEzqisZxqqvK0rna2InUkZUNdS\npJaU7b0fViGw+hDj2qmYpO3gV4+jo3dq2cku/aP107g7MURTVKPSpAV063waIgyo\n36GK2mkm6ktxMklllfO8UZcDX17Sd2j3XQDtcA47JOcKQKW4X+rBlHeyNysMw1vo\nf8BQ3HnwQp4m/Rha9bQTHvfoyE5RRhS/lJ1zoJef5up8XY95DP7Si8gLLxt401c=\n=aE66\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 2c7c881744e8630a511958c9e1794848a29542fd\nparent 66b988153d4ab5e1f04e74ebf068da2ddf8b14c6\nparent 5c11863d3c63f4ffc36251be198b6ac653c3273c\nauthor Aidan Cunniffe 1592918994 -0400\ncommitter GitHub 1592918994 -0400\n\nMerge branch 'develop' into make-ids-deterministic" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "html_url" : "https://github.com/opticdev/optic/commit/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/b5cdffc378ff6574ea8a3c0d04ae8d8b4a0baf34/comments", + "author" : { + "login" : "acunniffe", + "id" : 5900338, + "node_id" : "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url" : "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/acunniffe", + "html_url" : "https://github.com/acunniffe", + "followers_url" : "https://api.github.com/users/acunniffe/followers", + "following_url" : "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url" : "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url" : "https://api.github.com/users/acunniffe/orgs", + "repos_url" : "https://api.github.com/users/acunniffe/repos", + "events_url" : "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url" : "https://api.github.com/users/acunniffe/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "url" : "https://api.github.com/repos/opticdev/optic/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "html_url" : "https://github.com/opticdev/optic/commit/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6" + }, + { + "sha" : "5c11863d3c63f4ffc36251be198b6ac653c3273c", + "url" : "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "html_url" : "https://github.com/opticdev/optic/commit/5c11863d3c63f4ffc36251be198b6ac653c3273c" + } + ] + }, + { + "sha" : "66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjY2Yjk4ODE1M2Q0YWI1ZTFmMDRlNzRlYmYwNjhkYTJkZGY4YjE0YzY=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-23T13:26:32Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-23T13:26:32Z" + }, + "message" : "added streaming distribution aware shape hash", + "tree" : { + "sha" : "e29524115846772bad72a0e7a7e93c129d171abc", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/e29524115846772bad72a0e7a7e93c129d171abc" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "html_url" : "https://github.com/opticdev/optic/commit/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/66b988153d4ab5e1f04e74ebf068da2ddf8b14c6/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "519a5eb04b73e702964a30e544de938a44defd23", + "url" : "https://api.github.com/repos/opticdev/optic/commits/519a5eb04b73e702964a30e544de938a44defd23", + "html_url" : "https://github.com/opticdev/optic/commit/519a5eb04b73e702964a30e544de938a44defd23" + } + ] + }, + { + "sha" : "5c11863d3c63f4ffc36251be198b6ac653c3273c", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjVjMTE4NjNkM2M2M2Y0ZmZjMzYyNTFiZTE5OGI2YWM2NTNjMzI3M2M=", + "commit" : { + "author" : { + "name" : "Jaap van Hardeveld", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T13:10:19Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-23T13:10:19Z" + }, + "message" : "Merge pull request #222 from JaapRood/feature/local-transparent-proxy-config\n\nAdd support for `targetUrl` in optic.yml", + "tree" : { + "sha" : "49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe8f87CRBK7hj4Ov3rIwAAdHIIAGT1pT5n8pRODKZ4ueQCB5Cb\nXSCP30gqXRkXp2h83Ju+snvOF6igw/rs8BenVC4+OerrIhbC05LAqp/3k9mngPS4\ng3LdP/RRRdYSGBfliI+2zp8gnaWIjDtEbNwyBwExt7PvZ+Kuupm5sMl1RMdbjZ6V\nCtrUd/jwZh5atAdKsdaS+s12IbuCuRlLwtEBWztziwAmj/ksPAPTBlQ5BxRhs/ft\nW9u6hmjTsahvLximU259m5qHdL/4Vi8M1AOEFSIHdTGj1aCkPBwEux6wauwA6R2k\nHAKHLpLHnlOBIqRYSPJay6IBUYvQ9BLSK3xMB0maopUdJSfVuAIU1KdSdzbQnSE=\n=gLWA\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f\nparent 528cdf933d3785d359ff2667218b434bb05b590b\nparent 2cb2bdecd5bfba87c3f24defefaa959ea9602727\nauthor Jaap van Hardeveld 1592917819 +0200\ncommitter GitHub 1592917819 +0200\n\nMerge pull request #222 from JaapRood/feature/local-transparent-proxy-config\n\nAdd support for `targetUrl` in optic.yml" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "html_url" : "https://github.com/opticdev/optic/commit/5c11863d3c63f4ffc36251be198b6ac653c3273c", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/5c11863d3c63f4ffc36251be198b6ac653c3273c/comments", + "author" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "528cdf933d3785d359ff2667218b434bb05b590b", + "url" : "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url" : "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b" + }, + { + "sha" : "2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "url" : "https://api.github.com/repos/opticdev/optic/commits/2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "html_url" : "https://github.com/opticdev/optic/commit/2cb2bdecd5bfba87c3f24defefaa959ea9602727" + } + ] + }, + { + "sha" : "2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjJjYjJiZGVjZDViZmJhODdjM2YyNGRlZmVmYWE5NTllYTk2MDI3Mjc=", + "commit" : { + "author" : { + "name" : "Jaap Rood", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T10:59:11Z" + }, + "committer" : { + "name" : "Jaap Rood", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T10:59:11Z" + }, + "message" : "Support proxy as an alias for targetUrl, without deprecation warning for now", + "tree" : { + "sha" : "49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/49e0f075e021b3cbf26e6cf76caf91aa5a0d4b8f" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "html_url" : "https://github.com/opticdev/optic/commit/2cb2bdecd5bfba87c3f24defefaa959ea9602727", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/2cb2bdecd5bfba87c3f24defefaa959ea9602727/comments", + "author" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "url" : "https://api.github.com/repos/opticdev/optic/commits/2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "html_url" : "https://github.com/opticdev/optic/commit/2f71d7ad36c55a13095d4290721f1ee19ed4173b" + } + ] + }, + { + "sha" : "2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjJmNzFkN2FkMzZjNTVhMTMwOTVkNDI5MDcyMWYxZWUxOWVkNDE3M2I=", + "commit" : { + "author" : { + "name" : "Jaap Rood", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T10:33:24Z" + }, + "committer" : { + "name" : "Jaap Rood", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T10:33:24Z" + }, + "message" : "Disable the verifying of a command when there isn't one through api check", + "tree" : { + "sha" : "055dcfaf198b0676fe48b5f39fa69c47fa425a7b", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/055dcfaf198b0676fe48b5f39fa69c47fa425a7b" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "html_url" : "https://github.com/opticdev/optic/commit/2f71d7ad36c55a13095d4290721f1ee19ed4173b", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/2f71d7ad36c55a13095d4290721f1ee19ed4173b/comments", + "author" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "url" : "https://api.github.com/repos/opticdev/optic/commits/69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "html_url" : "https://github.com/opticdev/optic/commit/69de581bf91cc0bd96d1494129bf793a1b7b9a9f" + } + ] + }, + { + "sha" : "69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjY5ZGU1ODFiZjkxY2MwYmQ5NmQxNDk0MTI5YmY3OTNhMWI3YjlhOWY=", + "commit" : { + "author" : { + "name" : "Jaap Rood", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T09:17:54Z" + }, + "committer" : { + "name" : "Jaap Rood", + "email" : "jaap@jaaprood.nl", + "date" : "2020-06-23T09:17:54Z" + }, + "message" : "Add support for `targetUrl` in optic.yml, allowing control over where proxy points to", + "tree" : { + "sha" : "e86998b6a07f042570d96570a2784128ebf2e4a4", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/e86998b6a07f042570d96570a2784128ebf2e4a4" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "html_url" : "https://github.com/opticdev/optic/commit/69de581bf91cc0bd96d1494129bf793a1b7b9a9f", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/69de581bf91cc0bd96d1494129bf793a1b7b9a9f/comments", + "author" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "JaapRood", + "id" : 857549, + "node_id" : "MDQ6VXNlcjg1NzU0OQ==", + "avatar_url" : "https://avatars1.githubusercontent.com/u/857549?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/JaapRood", + "html_url" : "https://github.com/JaapRood", + "followers_url" : "https://api.github.com/users/JaapRood/followers", + "following_url" : "https://api.github.com/users/JaapRood/following{/other_user}", + "gists_url" : "https://api.github.com/users/JaapRood/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/JaapRood/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/JaapRood/subscriptions", + "organizations_url" : "https://api.github.com/users/JaapRood/orgs", + "repos_url" : "https://api.github.com/users/JaapRood/repos", + "events_url" : "https://api.github.com/users/JaapRood/events{/privacy}", + "received_events_url" : "https://api.github.com/users/JaapRood/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "528cdf933d3785d359ff2667218b434bb05b590b", + "url" : "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url" : "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b" + } + ] + }, + { + "sha" : "519a5eb04b73e702964a30e544de938a44defd23", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjUxOWE1ZWIwNGI3M2U3MDI5NjRhMzBlNTQ0ZGU5MzhhNDRkZWZkMjM=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-18T15:08:46Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-18T15:08:46Z" + }, + "message" : "Commit snapshots", + "tree" : { + "sha" : "0af9a5d332d96fceb10ff1c9c4ce31f5cd11bd6a", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/0af9a5d332d96fceb10ff1c9c4ce31f5cd11bd6a" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/519a5eb04b73e702964a30e544de938a44defd23", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/519a5eb04b73e702964a30e544de938a44defd23", + "html_url" : "https://github.com/opticdev/optic/commit/519a5eb04b73e702964a30e544de938a44defd23", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/519a5eb04b73e702964a30e544de938a44defd23/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "2fda9b180b0456840cd2a6c8b93b5684cda77646", + "url" : "https://api.github.com/repos/opticdev/optic/commits/2fda9b180b0456840cd2a6c8b93b5684cda77646", + "html_url" : "https://github.com/opticdev/optic/commit/2fda9b180b0456840cd2a6c8b93b5684cda77646" + } + ] + }, + { + "sha" : "2fda9b180b0456840cd2a6c8b93b5684cda77646", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjJmZGE5YjE4MGIwNDU2ODQwY2QyYTZjOGI5M2I1Njg0Y2RhNzc2NDY=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-18T15:06:23Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-18T15:06:23Z" + }, + "message" : "Merge remote-tracking branch 'aidan-upstream/distribution-aware-shape-hash-rethink' into make-ids-deterministic", + "tree" : { + "sha" : "c2f993b10db2d10d2f5131a32f09383ad73f793e", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/c2f993b10db2d10d2f5131a32f09383ad73f793e" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/2fda9b180b0456840cd2a6c8b93b5684cda77646", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/2fda9b180b0456840cd2a6c8b93b5684cda77646", + "html_url" : "https://github.com/opticdev/optic/commit/2fda9b180b0456840cd2a6c8b93b5684cda77646", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/2fda9b180b0456840cd2a6c8b93b5684cda77646/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "url" : "https://api.github.com/repos/opticdev/optic/commits/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "html_url" : "https://github.com/opticdev/optic/commit/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831" + }, + { + "sha" : "efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "url" : "https://api.github.com/repos/opticdev/optic/commits/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "html_url" : "https://github.com/opticdev/optic/commit/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5" + } + ] + }, + { + "sha" : "4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjRjMzE3YjU0NTc1NzY3ZTI2YWQ2YTc0YmRjOWVlYjllOWM4ZjY4MzE=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-18T14:47:29Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-18T14:47:29Z" + }, + "message" : "making ids deterministic", + "tree" : { + "sha" : "b539f92f119fba107212ad5b49040861dc209069", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/b539f92f119fba107212ad5b49040861dc209069" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "html_url" : "https://github.com/opticdev/optic/commit/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/4c317b54575767e26ad6a74bdc9eeb9e9c8f6831/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "url" : "https://api.github.com/repos/opticdev/optic/commits/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "html_url" : "https://github.com/opticdev/optic/commit/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f" + } + ] + }, + { + "sha" : "6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjZhYjRjYmEyN2Y1YTJiNDdlNzg5NjZlZDFlMWM3Mzc3MWMyMDFlOWY=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-18T14:47:19Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-18T14:47:19Z" + }, + "message" : "making ids deterministic", + "tree" : { + "sha" : "ae53e9ff304c94739412e9312e176218b8dfdd09", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/ae53e9ff304c94739412e9312e176218b8dfdd09" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "html_url" : "https://github.com/opticdev/optic/commit/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/6ab4cba27f5a2b47e78966ed1e1c73771c201e9f/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "528cdf933d3785d359ff2667218b434bb05b590b", + "url" : "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url" : "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b" + } + ] + }, + { + "sha" : "efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OmVmZDVhNDhhZjNlMmFmNjVkOGU0ZTk4NWU1ZWZlZTc1YmJmOWNlZjU=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-14T17:41:08Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-14T17:41:08Z" + }, + "message" : "distribution aware shape builder should be memory efficient", + "tree" : { + "sha" : "b23bf0275d53ddf596e17c70a312ac33caa36e83", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/b23bf0275d53ddf596e17c70a312ac33caa36e83" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "html_url" : "https://github.com/opticdev/optic/commit/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/efd5a48af3e2af65d8e4e985e5efee75bbf9cef5/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "528cdf933d3785d359ff2667218b434bb05b590b", + "url" : "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url" : "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b" + } + ] + }, + { + "sha" : "528cdf933d3785d359ff2667218b434bb05b590b", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjUyOGNkZjkzM2QzNzg1ZDM1OWZmMjY2NzIxOGI0MzRiYjA1YjU5MGI=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "acunniffe@gmail.com", + "date" : "2020-06-05T20:40:32Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-05T20:40:32Z" + }, + "message" : "Merge pull request #220 from acunniffe/diff-manager-performance\n\nPartition diffs by pathId and method", + "tree" : { + "sha" : "967739f4d0395bdf708ad9a9eecd98497ff89185", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/967739f4d0395bdf708ad9a9eecd98497ff89185" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe2q3ACRBK7hj4Ov3rIwAAdHIIAIqfSK+vBmm10W8aGjMpgkFr\n2lrJZahXSpI06IdV+ws1pxBvmKZT/ZBb3+MyW2CZ7uiMxmL716KtgomQySUavFAa\nzvi1RTOJVx17u0XEAPf5ZX+0UyF+h+Q4qbY6fpZqmSIR4kvYcLdmkFW+cDB+V6oZ\ntXG2HuW61OSCRMAdIdxEFhUeMpukOwSFHpTYjuQ9xRRortBmmQ7hWFBzu7Q5sAQ5\nMi1fDtdl0DVqTrW+oIogeF02arSDsijGMD62UOERtAioRYIY0QEliSl2oNBaGBc0\nGlHGRLUj06uNu8MWsrrbmDSawHUd2cAbbBdmZw/BsmrEW638nYbffz5ubaScSoA=\n=CENH\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 967739f4d0395bdf708ad9a9eecd98497ff89185\nparent 2fe98ec33767389a022670f33791a3a57a402e38\nparent 3c96b5cd6a4d8d979115b97521b525e715859879\nauthor Aidan Cunniffe 1591389632 -0400\ncommitter GitHub 1591389632 -0400\n\nMerge pull request #220 from acunniffe/diff-manager-performance\n\nPartition diffs by pathId and method" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b", + "html_url" : "https://github.com/opticdev/optic/commit/528cdf933d3785d359ff2667218b434bb05b590b", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/528cdf933d3785d359ff2667218b434bb05b590b/comments", + "author" : { + "login" : "acunniffe", + "id" : 5900338, + "node_id" : "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url" : "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/acunniffe", + "html_url" : "https://github.com/acunniffe", + "followers_url" : "https://api.github.com/users/acunniffe/followers", + "following_url" : "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url" : "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url" : "https://api.github.com/users/acunniffe/orgs", + "repos_url" : "https://api.github.com/users/acunniffe/repos", + "events_url" : "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url" : "https://api.github.com/users/acunniffe/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "2fe98ec33767389a022670f33791a3a57a402e38", + "url" : "https://api.github.com/repos/opticdev/optic/commits/2fe98ec33767389a022670f33791a3a57a402e38", + "html_url" : "https://github.com/opticdev/optic/commit/2fe98ec33767389a022670f33791a3a57a402e38" + }, + { + "sha" : "3c96b5cd6a4d8d979115b97521b525e715859879", + "url" : "https://api.github.com/repos/opticdev/optic/commits/3c96b5cd6a4d8d979115b97521b525e715859879", + "html_url" : "https://github.com/opticdev/optic/commit/3c96b5cd6a4d8d979115b97521b525e715859879" + } + ] + }, + { + "sha" : "3c96b5cd6a4d8d979115b97521b525e715859879", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjNjOTZiNWNkNmE0ZDhkOTc5MTE1Yjk3NTIxYjUyNWU3MTU4NTk4Nzk=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-05T20:32:40Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-05T20:32:40Z" + }, + "message" : "Merge branch 'diff-manager-performance' of https://github.com/acunniffe/optic into diff-manager-performance", + "tree" : { + "sha" : "967739f4d0395bdf708ad9a9eecd98497ff89185", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/967739f4d0395bdf708ad9a9eecd98497ff89185" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/3c96b5cd6a4d8d979115b97521b525e715859879", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/3c96b5cd6a4d8d979115b97521b525e715859879", + "html_url" : "https://github.com/opticdev/optic/commit/3c96b5cd6a4d8d979115b97521b525e715859879", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/3c96b5cd6a4d8d979115b97521b525e715859879/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "url" : "https://api.github.com/repos/opticdev/optic/commits/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "html_url" : "https://github.com/opticdev/optic/commit/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e" + }, + { + "sha" : "5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "url" : "https://api.github.com/repos/opticdev/optic/commits/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "html_url" : "https://github.com/opticdev/optic/commit/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3" + } + ] + }, + { + "sha" : "ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OmVmM2VhMzc3MjljMzA0YzJjMmEwNDE0YWEyMjRkMGE0YzY1YmJmN2U=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-05T20:31:52Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-05T20:31:52Z" + }, + "message" : "fixed incorrect name in optic-ci", + "tree" : { + "sha" : "cc2a22552387f9b55979fefccdcb2bd09a9884b2", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/cc2a22552387f9b55979fefccdcb2bd09a9884b2" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "html_url" : "https://github.com/opticdev/optic/commit/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/ef3ea37729c304c2c2a0414aa224d0a4c65bbf7e/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "url" : "https://api.github.com/repos/opticdev/optic/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "html_url" : "https://github.com/opticdev/optic/commit/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94" + } + ] + }, + { + "sha" : "5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjVlYzM3NmJmNGU0ZWExOGMwZDViZjlmYjgzM2U4MTJhNzE0MTM5YjM=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "acunniffe@gmail.com", + "date" : "2020-06-05T20:22:59Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-05T20:22:59Z" + }, + "message" : "Merge branch 'develop' into diff-manager-performance", + "tree" : { + "sha" : "9738112e493a143e6943464b769229dbee4d8f47", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/9738112e493a143e6943464b769229dbee4d8f47" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe2qmjCRBK7hj4Ov3rIwAAdHIIAAdBdVfYCgX8tyxjIGL2nTkl\nFCjtmgciD2qG/aHqKksj1p8pOH58p8Yjb8fPy/MvnAI+WCmDovHX3pa4mX64xzBD\npIunTsvUzWhNcAlBCsRUXh9PNBHiYzyMZ/7EJMNKX+Sv9QrsRZ76a0wbz0+b2qWW\nlRQk4h7P11gQFkJH1rahAZTIi7MsiEUy8fSnkfDVkSpA+xfZWSNa6qq8S7vMBAlN\nlP6zXQ07ku4R1EOi1QkmY9u/oHYrshzARTTCZVKhF6XX71YiOYIxcaqBycWXneBl\nriKISNXeVi+3FhS4BoMX9VMIbjPdLPylZk7/cy35k1/VavFFSBnW9HHCw6H6gKM=\n=PwFy\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 9738112e493a143e6943464b769229dbee4d8f47\nparent 121000d75ccc57c3d2b3ad05e5a26fa0b2191e94\nparent 2fe98ec33767389a022670f33791a3a57a402e38\nauthor Aidan Cunniffe 1591388579 -0400\ncommitter GitHub 1591388579 -0400\n\nMerge branch 'develop' into diff-manager-performance" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "html_url" : "https://github.com/opticdev/optic/commit/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/5ec376bf4e4ea18c0d5bf9fb833e812a714139b3/comments", + "author" : { + "login" : "acunniffe", + "id" : 5900338, + "node_id" : "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url" : "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/acunniffe", + "html_url" : "https://github.com/acunniffe", + "followers_url" : "https://api.github.com/users/acunniffe/followers", + "following_url" : "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url" : "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url" : "https://api.github.com/users/acunniffe/orgs", + "repos_url" : "https://api.github.com/users/acunniffe/repos", + "events_url" : "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url" : "https://api.github.com/users/acunniffe/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "url" : "https://api.github.com/repos/opticdev/optic/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "html_url" : "https://github.com/opticdev/optic/commit/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94" + }, + { + "sha" : "2fe98ec33767389a022670f33791a3a57a402e38", + "url" : "https://api.github.com/repos/opticdev/optic/commits/2fe98ec33767389a022670f33791a3a57a402e38", + "html_url" : "https://github.com/opticdev/optic/commit/2fe98ec33767389a022670f33791a3a57a402e38" + } + ] + }, + { + "sha" : "121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjEyMTAwMGQ3NWNjYzU3YzNkMmIzYWQwNWU1YTI2ZmEwYjIxOTFlOTQ=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-05T17:30:57Z" + }, + "committer" : { + "name" : "Aidan Cunniffe", + "email" : "aidan@useoptic.com", + "date" : "2020-06-05T17:30:57Z" + }, + "message" : "Partition diffs by pathId and method", + "tree" : { + "sha" : "31e5a44b8a0c37b58b90adf2084a77d5a128b60f", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/31e5a44b8a0c37b58b90adf2084a77d5a128b60f" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "comment_count" : 0, + "verification" : { + "verified" : false, + "reason" : "unsigned", + "signature" : null, + "payload" : null + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "html_url" : "https://github.com/opticdev/optic/commit/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/121000d75ccc57c3d2b3ad05e5a26fa0b2191e94/comments", + "author" : null, + "committer" : null, + "parents" : [ + { + "sha" : "b2644945b854f7c351a9c944eaf8726ddb055b5e", + "url" : "https://api.github.com/repos/opticdev/optic/commits/b2644945b854f7c351a9c944eaf8726ddb055b5e", + "html_url" : "https://github.com/opticdev/optic/commit/b2644945b854f7c351a9c944eaf8726ddb055b5e" + } + ] + }, + { + "sha" : "2fe98ec33767389a022670f33791a3a57a402e38", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1OjJmZTk4ZWMzMzc2NzM4OWEwMjI2NzBmMzM3OTFhM2E1N2E0MDJlMzg=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "acunniffe@gmail.com", + "date" : "2020-06-05T17:21:53Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-05T17:21:53Z" + }, + "message" : "Merge pull request #219 from acunniffe/changes-pre-release\n\nChanges for 8.1 release", + "tree" : { + "sha" : "10e9ff36b2f66343cd57b8da89317860b63d476c", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/10e9ff36b2f66343cd57b8da89317860b63d476c" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/2fe98ec33767389a022670f33791a3a57a402e38", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe2n8xCRBK7hj4Ov3rIwAAdHIIACAx1CSBk0TbRilQBhCazSmn\nHtuIi0zvam6wjpitcPdvRDErxFJ9bZ3kcc1yKoW+xitEXKnMn7wknx2KWHmczT2V\nRSmfV3TQPUIBMkTbdu/btvPfke2Wsu9k3mhXd2bGiUKkzHJkaUuazK1bl2l00Dfg\nqt3Mb5j/FQ5xTg0+k1kfTkENzMkHLJy7TVO2pLMiEZNDt3HqvPtmI/92Zhbyzgtp\nEBEepR6C7m+fTkxa8KAMs61laZxT5nzv0PIIjGqWHS+vW6eYKMPPTBUPmVUo+6ZC\nt7TxEWtmeHKX68fpVgxF7jEmKrhI/BYMqqFAsB1HBeNAfS3yAIHOs4dMWJ+FiEA=\n=1EQg\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 10e9ff36b2f66343cd57b8da89317860b63d476c\nparent b2644945b854f7c351a9c944eaf8726ddb055b5e\nparent 766e1258f2585affbef466dfd11ee80019725179\nauthor Aidan Cunniffe 1591377713 -0400\ncommitter GitHub 1591377713 -0400\n\nMerge pull request #219 from acunniffe/changes-pre-release\n\nChanges for 8.1 release " + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/2fe98ec33767389a022670f33791a3a57a402e38", + "html_url" : "https://github.com/opticdev/optic/commit/2fe98ec33767389a022670f33791a3a57a402e38", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/2fe98ec33767389a022670f33791a3a57a402e38/comments", + "author" : { + "login" : "acunniffe", + "id" : 5900338, + "node_id" : "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url" : "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/acunniffe", + "html_url" : "https://github.com/acunniffe", + "followers_url" : "https://api.github.com/users/acunniffe/followers", + "following_url" : "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url" : "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url" : "https://api.github.com/users/acunniffe/orgs", + "repos_url" : "https://api.github.com/users/acunniffe/repos", + "events_url" : "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url" : "https://api.github.com/users/acunniffe/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "b2644945b854f7c351a9c944eaf8726ddb055b5e", + "url" : "https://api.github.com/repos/opticdev/optic/commits/b2644945b854f7c351a9c944eaf8726ddb055b5e", + "html_url" : "https://github.com/opticdev/optic/commit/b2644945b854f7c351a9c944eaf8726ddb055b5e" + }, + { + "sha" : "766e1258f2585affbef466dfd11ee80019725179", + "url" : "https://api.github.com/repos/opticdev/optic/commits/766e1258f2585affbef466dfd11ee80019725179", + "html_url" : "https://github.com/opticdev/optic/commit/766e1258f2585affbef466dfd11ee80019725179" + } + ] + }, + { + "sha" : "766e1258f2585affbef466dfd11ee80019725179", + "node_id" : "MDY6Q29tbWl0MTIzNjA2NzY1Ojc2NmUxMjU4ZjI1ODVhZmZiZWY0NjZkZmQxMWVlODAwMTk3MjUxNzk=", + "commit" : { + "author" : { + "name" : "Aidan Cunniffe", + "email" : "acunniffe@gmail.com", + "date" : "2020-06-05T16:45:06Z" + }, + "committer" : { + "name" : "GitHub", + "email" : "noreply@github.com", + "date" : "2020-06-05T16:45:06Z" + }, + "message" : "Merge branch 'develop' into changes-pre-release", + "tree" : { + "sha" : "10e9ff36b2f66343cd57b8da89317860b63d476c", + "url" : "https://api.github.com/repos/opticdev/optic/git/trees/10e9ff36b2f66343cd57b8da89317860b63d476c" + }, + "url" : "https://api.github.com/repos/opticdev/optic/git/commits/766e1258f2585affbef466dfd11ee80019725179", + "comment_count" : 0, + "verification" : { + "verified" : true, + "reason" : "valid", + "signature" : "-----BEGIN PGP SIGNATURE-----\n\nwsBcBAABCAAQBQJe2naSCRBK7hj4Ov3rIwAAdHIIAJg+zZ4x590V9CTl+KQM2vNc\nqo1SshrjUPmgpLPuCVJxmYzleH00LM/3fG8y0BwQfg27rI/zw8/NxzMlSbQSVRGs\ne8yBj9mVJRGko6I3QziZuIbaidvV02lZ67qDl7y8hOE0lIl1cDsYPh63l1ZLqIcx\nFvYL4YgQPI/lnsLIObGCVWgPmwLmIMwMCoQv9+Xmzl7Nl18mBC6cJulxhLxJSKz6\nfrh7jLnfUvbmAERMEYtdw46//pBWmFvnAVaMPtnIx4u/cHOBUhcVlgm9gAnFdlgg\nd9uHfFxEJGVNTjBxsxYDd2634xCu74hdb5Roxd2DTMf8gzgNpx1fNKnb9IWGTIs=\n=caOt\n-----END PGP SIGNATURE-----\n", + "payload" : "tree 10e9ff36b2f66343cd57b8da89317860b63d476c\nparent 5ea76af7a0e30692ab6ff65343d1fd59bfca8a3f\nparent b2644945b854f7c351a9c944eaf8726ddb055b5e\nauthor Aidan Cunniffe 1591375506 -0400\ncommitter GitHub 1591375506 -0400\n\nMerge branch 'develop' into changes-pre-release" + } + }, + "url" : "https://api.github.com/repos/opticdev/optic/commits/766e1258f2585affbef466dfd11ee80019725179", + "html_url" : "https://github.com/opticdev/optic/commit/766e1258f2585affbef466dfd11ee80019725179", + "comments_url" : "https://api.github.com/repos/opticdev/optic/commits/766e1258f2585affbef466dfd11ee80019725179/comments", + "author" : { + "login" : "acunniffe", + "id" : 5900338, + "node_id" : "MDQ6VXNlcjU5MDAzMzg=", + "avatar_url" : "https://avatars1.githubusercontent.com/u/5900338?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/acunniffe", + "html_url" : "https://github.com/acunniffe", + "followers_url" : "https://api.github.com/users/acunniffe/followers", + "following_url" : "https://api.github.com/users/acunniffe/following{/other_user}", + "gists_url" : "https://api.github.com/users/acunniffe/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/acunniffe/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/acunniffe/subscriptions", + "organizations_url" : "https://api.github.com/users/acunniffe/orgs", + "repos_url" : "https://api.github.com/users/acunniffe/repos", + "events_url" : "https://api.github.com/users/acunniffe/events{/privacy}", + "received_events_url" : "https://api.github.com/users/acunniffe/received_events", + "type" : "User", + "site_admin" : false + }, + "committer" : { + "login" : "web-flow", + "id" : 19864447, + "node_id" : "MDQ6VXNlcjE5ODY0NDQ3", + "avatar_url" : "https://avatars3.githubusercontent.com/u/19864447?v=4", + "gravatar_id" : "", + "url" : "https://api.github.com/users/web-flow", + "html_url" : "https://github.com/web-flow", + "followers_url" : "https://api.github.com/users/web-flow/followers", + "following_url" : "https://api.github.com/users/web-flow/following{/other_user}", + "gists_url" : "https://api.github.com/users/web-flow/gists{/gist_id}", + "starred_url" : "https://api.github.com/users/web-flow/starred{/owner}{/repo}", + "subscriptions_url" : "https://api.github.com/users/web-flow/subscriptions", + "organizations_url" : "https://api.github.com/users/web-flow/orgs", + "repos_url" : "https://api.github.com/users/web-flow/repos", + "events_url" : "https://api.github.com/users/web-flow/events{/privacy}", + "received_events_url" : "https://api.github.com/users/web-flow/received_events", + "type" : "User", + "site_admin" : false + }, + "parents" : [ + { + "sha" : "5ea76af7a0e30692ab6ff65343d1fd59bfca8a3f", + "url" : "https://api.github.com/repos/opticdev/optic/commits/5ea76af7a0e30692ab6ff65343d1fd59bfca8a3f", + "html_url" : "https://github.com/opticdev/optic/commit/5ea76af7a0e30692ab6ff65343d1fd59bfca8a3f" + }, + { + "sha" : "b2644945b854f7c351a9c944eaf8726ddb055b5e", + "url" : "https://api.github.com/repos/opticdev/optic/commits/b2644945b854f7c351a9c944eaf8726ddb055b5e", + "html_url" : "https://github.com/opticdev/optic/commit/b2644945b854f7c351a9c944eaf8726ddb055b5e" + } + ] + } + ] + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/nullable field, later provided two different types.managed.json b/core/domain-snapshots/json-to-shapes/nullable field, later provided two different types.managed.json new file mode 100644 index 0000000000..4e189fa07c --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/nullable field, later provided two different types.managed.json @@ -0,0 +1,13 @@ +{ + "inputJsons" : [ + { + "value" : null + }, + { + "value" : "String" + }, + { + "value" : 123 + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/nullable field, later provided value.managed.json b/core/domain-snapshots/json-to-shapes/nullable field, later provided value.managed.json new file mode 100644 index 0000000000..2ce86dd68e --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/nullable field, later provided value.managed.json @@ -0,0 +1,10 @@ +{ + "inputJsons" : [ + { + "value" : null + }, + { + "value" : "String" + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/object is at root and some primitive fields are optional.managed.json b/core/domain-snapshots/json-to-shapes/object is at root and some primitive fields are optional.managed.json new file mode 100644 index 0000000000..c9e482194c --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/object is at root and some primitive fields are optional.managed.json @@ -0,0 +1,16 @@ +{ + "inputJsons" : [ + { + "message" : "Hello", + "isDone" : true + }, + { + "message" : "Hello", + "isDone" : true, + "description" : "Do it!" + }, + { + "message" : "Hello" + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/array of empty.managed.json b/core/domain-snapshots/json-to-shapes/outputs/array of empty.managed.json new file mode 100644 index 0000000000..f564b991dd --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/array of empty.managed.json @@ -0,0 +1,34 @@ +{ + "shape" : "ListOfShape(Unknown(List(JsonArrayItem(0)),shape_2),List(),shape_3)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$unknown", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/array of strings.managed.json b/core/domain-snapshots/json-to-shapes/outputs/array of strings.managed.json new file mode 100644 index 0000000000..72870e2f94 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/array of strings.managed.json @@ -0,0 +1,34 @@ +{ + "shape" : "ListOfShape(PrimitiveKind(StringKind,List(JsonArrayItem(0)),shape_2),List(),shape_3)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/array with polymorhpism.managed.json b/core/domain-snapshots/json-to-shapes/outputs/array with polymorhpism.managed.json new file mode 100644 index 0000000000..3472388f0e --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/array with polymorhpism.managed.json @@ -0,0 +1,92 @@ +{ + "shape" : "ListOfShape(OneOfShape(Vector(PrimitiveKind(NumberKind,List(JsonArrayItem(0)),shape_5), PrimitiveKind(StringKind,List(JsonArrayItem(0)),shape_4)),List(JsonArrayItem(0)),shape_6),List(),shape_7)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_5", + "baseShapeId" : "$number", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_6", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_7", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_1", + "shapeId" : "shape_6", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_6", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_5" + } + }, + "consumingParameterId" : "parameter_1" + } + } + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_6", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_6", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_7", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_6" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/empty object or empty array at root.managed.json b/core/domain-snapshots/json-to-shapes/outputs/empty object or empty array at root.managed.json new file mode 100644 index 0000000000..fcde53d9b6 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/empty object or empty array at root.managed.json @@ -0,0 +1,92 @@ +{ + "shape" : "OneOfShape(Vector(ListOfShape(Unknown(List(JsonArrayItem(0)),shape_2),List(),shape_3), ObjectWithFields(Vector(),List(),shape_4)),List(),shape_5)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$unknown", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_5", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_1", + "shapeId" : "shape_5", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "parameter_1" + } + } + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_5", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_5", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_4" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/empty object.managed.json b/core/domain-snapshots/json-to-shapes/outputs/empty object.managed.json new file mode 100644 index 0000000000..f564b991dd --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/empty object.managed.json @@ -0,0 +1,34 @@ +{ + "shape" : "ListOfShape(Unknown(List(JsonArrayItem(0)),shape_2),List(),shape_3)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$unknown", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/f1 race results.managed.json b/core/domain-snapshots/json-to-shapes/outputs/f1 race results.managed.json new file mode 100644 index 0000000000..420c7fae69 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/f1 race results.managed.json @@ -0,0 +1,1258 @@ +{ + "shape" : "ObjectWithFields(Vector(FieldWithShape(MRData,ObjectWithFields(Vector(FieldWithShape(RaceTable,ObjectWithFields(Vector(FieldWithShape(Races,ListOfShape(ObjectWithFields(Vector(FieldWithShape(Circuit,ObjectWithFields(Vector(FieldWithShape(Location,ObjectWithFields(Vector(FieldWithShape(country,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location), JsonObjectKey(country)),shape_86),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location), JsonObjectKey(country)),parameter_81), FieldWithShape(lat,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location), JsonObjectKey(lat)),shape_87),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location), JsonObjectKey(lat)),parameter_82), FieldWithShape(locality,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location), JsonObjectKey(locality)),shape_88),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location), JsonObjectKey(locality)),parameter_83), FieldWithShape(long,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location), JsonObjectKey(long)),shape_89),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location), JsonObjectKey(long)),parameter_84)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location)),shape_90),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(Location)),parameter_85), FieldWithShape(circuitId,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(circuitId)),shape_91),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(circuitId)),parameter_86), FieldWithShape(circuitName,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(circuitName)),shape_92),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(circuitName)),parameter_87), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(url)),shape_93),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit), JsonObjectKey(url)),parameter_88)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit)),shape_94),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Circuit)),parameter_89), FieldWithShape(Results,ListOfShape(ObjectWithFields(Vector(FieldWithShape(Constructor,ObjectWithFields(Vector(FieldWithShape(constructorId,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor), JsonObjectKey(constructorId)),shape_129),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor), JsonObjectKey(constructorId)),parameter_122), FieldWithShape(name,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor), JsonObjectKey(name)),shape_130),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor), JsonObjectKey(name)),parameter_123), FieldWithShape(nationality,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor), JsonObjectKey(nationality)),shape_131),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor), JsonObjectKey(nationality)),parameter_124), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor), JsonObjectKey(url)),shape_132),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor), JsonObjectKey(url)),parameter_125)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor)),shape_133),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Constructor)),parameter_126), FieldWithShape(Driver,ObjectWithFields(Vector(FieldWithShape(code,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(code)),shape_134),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(code)),parameter_127), FieldWithShape(dateOfBirth,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(dateOfBirth)),shape_135),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(dateOfBirth)),parameter_128), FieldWithShape(driverId,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(driverId)),shape_136),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(driverId)),parameter_129), FieldWithShape(familyName,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(familyName)),shape_137),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(familyName)),parameter_130), FieldWithShape(givenName,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(givenName)),shape_138),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(givenName)),parameter_131), FieldWithShape(nationality,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(nationality)),shape_139),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(nationality)),parameter_132), FieldWithShape(permanentNumber,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(permanentNumber)),shape_140),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(permanentNumber)),parameter_133), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(url)),shape_141),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver), JsonObjectKey(url)),parameter_134)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver)),shape_142),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Driver)),parameter_135), FieldWithShape(FastestLap,ObjectWithFields(Vector(FieldWithShape(AverageSpeed,ObjectWithFields(Vector(FieldWithShape(speed,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(AverageSpeed), JsonObjectKey(speed)),shape_143),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(AverageSpeed), JsonObjectKey(speed)),parameter_136), FieldWithShape(units,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(AverageSpeed), JsonObjectKey(units)),shape_144),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(AverageSpeed), JsonObjectKey(units)),parameter_137)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(AverageSpeed)),shape_145),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(AverageSpeed)),parameter_138), FieldWithShape(Time,ObjectWithFields(Vector(FieldWithShape(time,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(Time), JsonObjectKey(time)),shape_146),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(Time), JsonObjectKey(time)),parameter_139)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(Time)),shape_147),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(Time)),parameter_140), FieldWithShape(lap,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(lap)),shape_148),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(lap)),parameter_141), FieldWithShape(rank,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(rank)),shape_149),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap), JsonObjectKey(rank)),parameter_142)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap)),shape_150),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(FastestLap)),parameter_143), FieldWithShape(Time,OptionalShape(ObjectWithFields(Vector(FieldWithShape(millis,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Time), JsonObjectKey(millis)),shape_151),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Time), JsonObjectKey(millis)),parameter_144), FieldWithShape(time,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Time), JsonObjectKey(time)),shape_152),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Time), JsonObjectKey(time)),parameter_145)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Time)),shape_153),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Time)),shape_154),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(Time)),parameter_146), FieldWithShape(grid,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(grid)),shape_155),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(grid)),parameter_147), FieldWithShape(laps,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(laps)),shape_156),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(laps)),parameter_148), FieldWithShape(number,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(number)),shape_157),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(number)),parameter_149), FieldWithShape(points,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(points)),shape_158),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(points)),parameter_150), FieldWithShape(position,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(position)),shape_159),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(position)),parameter_151), FieldWithShape(positionText,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(positionText)),shape_160),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(positionText)),parameter_152), FieldWithShape(status,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(status)),shape_161),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0), JsonObjectKey(status)),parameter_153)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results), JsonArrayItem(0)),shape_162),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results)),shape_163),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(Results)),parameter_154), FieldWithShape(date,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(date)),shape_164),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(date)),parameter_155), FieldWithShape(raceName,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(raceName)),shape_165),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(raceName)),parameter_156), FieldWithShape(round,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(round)),shape_166),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(round)),parameter_157), FieldWithShape(season,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(season)),shape_167),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(season)),parameter_158), FieldWithShape(time,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(time)),shape_168),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(time)),parameter_159), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(url)),shape_169),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0), JsonObjectKey(url)),parameter_160)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races), JsonArrayItem(0)),shape_170),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races)),shape_171),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(Races)),parameter_161), FieldWithShape(round,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(round)),shape_172),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(round)),parameter_162), FieldWithShape(season,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(season)),shape_173),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable), JsonObjectKey(season)),parameter_163)),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable)),shape_174),List(JsonObjectKey(MRData), JsonObjectKey(RaceTable)),parameter_164), FieldWithShape(limit,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(limit)),shape_175),List(JsonObjectKey(MRData), JsonObjectKey(limit)),parameter_165), FieldWithShape(offset,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(offset)),shape_176),List(JsonObjectKey(MRData), JsonObjectKey(offset)),parameter_166), FieldWithShape(series,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(series)),shape_177),List(JsonObjectKey(MRData), JsonObjectKey(series)),parameter_167), FieldWithShape(total,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(total)),shape_178),List(JsonObjectKey(MRData), JsonObjectKey(total)),parameter_168), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(url)),shape_179),List(JsonObjectKey(MRData), JsonObjectKey(url)),parameter_169), FieldWithShape(xmlns,PrimitiveKind(StringKind,List(JsonObjectKey(MRData), JsonObjectKey(xmlns)),shape_180),List(JsonObjectKey(MRData), JsonObjectKey(xmlns)),parameter_170)),List(JsonObjectKey(MRData)),shape_181),List(JsonObjectKey(MRData)),parameter_171)),List(),shape_182)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_182", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_181", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_174", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_170", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_94", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_90", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_86", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_81", + "shapeId" : "shape_90", + "name" : "country", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_81", + "shapeId" : "shape_86" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_87", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_82", + "shapeId" : "shape_90", + "name" : "lat", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_82", + "shapeId" : "shape_87" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_88", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_83", + "shapeId" : "shape_90", + "name" : "locality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_83", + "shapeId" : "shape_88" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_89", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_84", + "shapeId" : "shape_90", + "name" : "long", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_84", + "shapeId" : "shape_89" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_85", + "shapeId" : "shape_94", + "name" : "Location", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_85", + "shapeId" : "shape_90" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_91", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_86", + "shapeId" : "shape_94", + "name" : "circuitId", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_86", + "shapeId" : "shape_91" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_92", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_87", + "shapeId" : "shape_94", + "name" : "circuitName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_87", + "shapeId" : "shape_92" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_93", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_88", + "shapeId" : "shape_94", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_88", + "shapeId" : "shape_93" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_89", + "shapeId" : "shape_170", + "name" : "Circuit", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_89", + "shapeId" : "shape_94" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_162", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_133", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_129", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_122", + "shapeId" : "shape_133", + "name" : "constructorId", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_122", + "shapeId" : "shape_129" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_130", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_123", + "shapeId" : "shape_133", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_123", + "shapeId" : "shape_130" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_131", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_124", + "shapeId" : "shape_133", + "name" : "nationality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_124", + "shapeId" : "shape_131" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_132", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_125", + "shapeId" : "shape_133", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_125", + "shapeId" : "shape_132" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_126", + "shapeId" : "shape_162", + "name" : "Constructor", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_126", + "shapeId" : "shape_133" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_142", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_134", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_127", + "shapeId" : "shape_142", + "name" : "code", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_127", + "shapeId" : "shape_134" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_135", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_128", + "shapeId" : "shape_142", + "name" : "dateOfBirth", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_128", + "shapeId" : "shape_135" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_136", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_129", + "shapeId" : "shape_142", + "name" : "driverId", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_129", + "shapeId" : "shape_136" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_137", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_130", + "shapeId" : "shape_142", + "name" : "familyName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_130", + "shapeId" : "shape_137" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_138", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_131", + "shapeId" : "shape_142", + "name" : "givenName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_131", + "shapeId" : "shape_138" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_139", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_132", + "shapeId" : "shape_142", + "name" : "nationality", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_132", + "shapeId" : "shape_139" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_140", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_133", + "shapeId" : "shape_142", + "name" : "permanentNumber", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_133", + "shapeId" : "shape_140" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_141", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_134", + "shapeId" : "shape_142", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_134", + "shapeId" : "shape_141" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_135", + "shapeId" : "shape_162", + "name" : "Driver", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_135", + "shapeId" : "shape_142" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_150", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_145", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_143", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_136", + "shapeId" : "shape_145", + "name" : "speed", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_136", + "shapeId" : "shape_143" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_144", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_137", + "shapeId" : "shape_145", + "name" : "units", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_137", + "shapeId" : "shape_144" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_138", + "shapeId" : "shape_150", + "name" : "AverageSpeed", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_138", + "shapeId" : "shape_145" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_147", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_146", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_139", + "shapeId" : "shape_147", + "name" : "time", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_139", + "shapeId" : "shape_146" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_140", + "shapeId" : "shape_150", + "name" : "Time", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_140", + "shapeId" : "shape_147" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_148", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_141", + "shapeId" : "shape_150", + "name" : "lap", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_141", + "shapeId" : "shape_148" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_149", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_142", + "shapeId" : "shape_150", + "name" : "rank", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_142", + "shapeId" : "shape_149" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_143", + "shapeId" : "shape_162", + "name" : "FastestLap", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_143", + "shapeId" : "shape_150" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_153", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_151", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_144", + "shapeId" : "shape_153", + "name" : "millis", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_144", + "shapeId" : "shape_151" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_152", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_145", + "shapeId" : "shape_153", + "name" : "time", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_145", + "shapeId" : "shape_152" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_154", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_146", + "shapeId" : "shape_162", + "name" : "Time", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_146", + "shapeId" : "shape_154" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_155", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_147", + "shapeId" : "shape_162", + "name" : "grid", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_147", + "shapeId" : "shape_155" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_156", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_148", + "shapeId" : "shape_162", + "name" : "laps", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_148", + "shapeId" : "shape_156" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_157", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_149", + "shapeId" : "shape_162", + "name" : "number", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_149", + "shapeId" : "shape_157" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_158", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_150", + "shapeId" : "shape_162", + "name" : "points", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_150", + "shapeId" : "shape_158" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_159", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_151", + "shapeId" : "shape_162", + "name" : "position", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_151", + "shapeId" : "shape_159" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_160", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_152", + "shapeId" : "shape_162", + "name" : "positionText", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_152", + "shapeId" : "shape_160" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_161", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_153", + "shapeId" : "shape_162", + "name" : "status", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_153", + "shapeId" : "shape_161" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_163", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_154", + "shapeId" : "shape_170", + "name" : "Results", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_154", + "shapeId" : "shape_163" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_164", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_155", + "shapeId" : "shape_170", + "name" : "date", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_155", + "shapeId" : "shape_164" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_165", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_156", + "shapeId" : "shape_170", + "name" : "raceName", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_156", + "shapeId" : "shape_165" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_166", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_157", + "shapeId" : "shape_170", + "name" : "round", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_157", + "shapeId" : "shape_166" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_167", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_158", + "shapeId" : "shape_170", + "name" : "season", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_158", + "shapeId" : "shape_167" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_168", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_159", + "shapeId" : "shape_170", + "name" : "time", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_159", + "shapeId" : "shape_168" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_169", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_160", + "shapeId" : "shape_170", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_160", + "shapeId" : "shape_169" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_171", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_161", + "shapeId" : "shape_174", + "name" : "Races", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_161", + "shapeId" : "shape_171" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_172", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_162", + "shapeId" : "shape_174", + "name" : "round", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_162", + "shapeId" : "shape_172" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_173", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_163", + "shapeId" : "shape_174", + "name" : "season", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_163", + "shapeId" : "shape_173" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_164", + "shapeId" : "shape_181", + "name" : "RaceTable", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_164", + "shapeId" : "shape_174" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_175", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_165", + "shapeId" : "shape_181", + "name" : "limit", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_165", + "shapeId" : "shape_175" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_176", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_166", + "shapeId" : "shape_181", + "name" : "offset", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_166", + "shapeId" : "shape_176" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_177", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_167", + "shapeId" : "shape_181", + "name" : "series", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_167", + "shapeId" : "shape_177" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_178", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_168", + "shapeId" : "shape_181", + "name" : "total", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_168", + "shapeId" : "shape_178" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_179", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_169", + "shapeId" : "shape_181", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_169", + "shapeId" : "shape_179" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_180", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_170", + "shapeId" : "shape_181", + "name" : "xmlns", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_170", + "shapeId" : "shape_180" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_171", + "shapeId" : "shape_182", + "name" : "MRData", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_171", + "shapeId" : "shape_181" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_146", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_153" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_163", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_162" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_171", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_170" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/field polymorphism, then nullable .managed.json b/core/domain-snapshots/json-to-shapes/outputs/field polymorphism, then nullable .managed.json new file mode 100644 index 0000000000..3c892fbb30 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/field polymorphism, then nullable .managed.json @@ -0,0 +1,112 @@ +{ + "shape" : "ObjectWithFields(Vector(FieldWithShape(value,NullableShape(OneOfShape(Vector(PrimitiveKind(NumberKind,List(JsonObjectKey(value)),shape_2), PrimitiveKind(StringKind,List(JsonObjectKey(value)),shape_1)),List(JsonObjectKey(value)),shape_3),List(JsonObjectKey(value)),shape_4),List(JsonObjectKey(value)),parameter_1)),List(),shape_5)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$number", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$nullable", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_5", + "name" : "value", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4" + } + } + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_3", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_3", + "shapeId" : "shape_3", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_1" + } + }, + "consumingParameterId" : "parameter_3" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "$nullableInner" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/github commits.managed.json b/core/domain-snapshots/json-to-shapes/outputs/github commits.managed.json new file mode 100644 index 0000000000..da948fa141 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/github commits.managed.json @@ -0,0 +1,1484 @@ +{ + "shape" : "ListOfShape(ObjectWithFields(Vector(FieldWithShape(author,NullableShape(ObjectWithFields(Vector(FieldWithShape(avatar_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(avatar_url)),shape_78),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(avatar_url)),parameter_71), FieldWithShape(events_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(events_url)),shape_79),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(events_url)),parameter_72), FieldWithShape(followers_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(followers_url)),shape_80),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(followers_url)),parameter_73), FieldWithShape(following_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(following_url)),shape_81),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(following_url)),parameter_74), FieldWithShape(gists_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(gists_url)),shape_82),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(gists_url)),parameter_75), FieldWithShape(gravatar_id,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(gravatar_id)),shape_83),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(gravatar_id)),parameter_76), FieldWithShape(html_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(html_url)),shape_84),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(html_url)),parameter_77), FieldWithShape(id,PrimitiveKind(NumberKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(id)),shape_85),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(id)),parameter_78), FieldWithShape(login,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(login)),shape_86),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(login)),parameter_79), FieldWithShape(node_id,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(node_id)),shape_87),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(node_id)),parameter_80), FieldWithShape(organizations_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(organizations_url)),shape_88),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(organizations_url)),parameter_81), FieldWithShape(received_events_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(received_events_url)),shape_89),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(received_events_url)),parameter_82), FieldWithShape(repos_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(repos_url)),shape_90),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(repos_url)),parameter_83), FieldWithShape(site_admin,PrimitiveKind(BooleanKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(site_admin)),shape_91),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(site_admin)),parameter_84), FieldWithShape(starred_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(starred_url)),shape_92),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(starred_url)),parameter_85), FieldWithShape(subscriptions_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(subscriptions_url)),shape_93),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(subscriptions_url)),parameter_86), FieldWithShape(type,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(type)),shape_94),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(type)),parameter_87), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(url)),shape_95),List(JsonArrayItem(0), JsonObjectKey(author), JsonObjectKey(url)),parameter_88)),List(JsonArrayItem(0), JsonObjectKey(author)),shape_96),List(JsonArrayItem(0), JsonObjectKey(author)),shape_97),List(JsonArrayItem(0), JsonObjectKey(author)),parameter_89), FieldWithShape(comments_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(comments_url)),shape_98),List(JsonArrayItem(0), JsonObjectKey(comments_url)),parameter_90), FieldWithShape(commit,ObjectWithFields(Vector(FieldWithShape(author,ObjectWithFields(Vector(FieldWithShape(date,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(author), JsonObjectKey(date)),shape_99),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(author), JsonObjectKey(date)),parameter_91), FieldWithShape(email,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(author), JsonObjectKey(email)),shape_100),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(author), JsonObjectKey(email)),parameter_92), FieldWithShape(name,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(author), JsonObjectKey(name)),shape_101),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(author), JsonObjectKey(name)),parameter_93)),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(author)),shape_102),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(author)),parameter_94), FieldWithShape(comment_count,PrimitiveKind(NumberKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(comment_count)),shape_103),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(comment_count)),parameter_95), FieldWithShape(committer,ObjectWithFields(Vector(FieldWithShape(date,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(committer), JsonObjectKey(date)),shape_104),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(committer), JsonObjectKey(date)),parameter_96), FieldWithShape(email,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(committer), JsonObjectKey(email)),shape_105),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(committer), JsonObjectKey(email)),parameter_97), FieldWithShape(name,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(committer), JsonObjectKey(name)),shape_106),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(committer), JsonObjectKey(name)),parameter_98)),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(committer)),shape_107),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(committer)),parameter_99), FieldWithShape(message,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(message)),shape_108),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(message)),parameter_100), FieldWithShape(tree,ObjectWithFields(Vector(FieldWithShape(sha,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(tree), JsonObjectKey(sha)),shape_109),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(tree), JsonObjectKey(sha)),parameter_101), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(tree), JsonObjectKey(url)),shape_110),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(tree), JsonObjectKey(url)),parameter_102)),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(tree)),shape_111),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(tree)),parameter_103), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(url)),shape_112),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(url)),parameter_104), FieldWithShape(verification,ObjectWithFields(Vector(FieldWithShape(payload,NullableShape(PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(payload)),shape_113),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(payload)),shape_114),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(payload)),parameter_105), FieldWithShape(reason,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(reason)),shape_115),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(reason)),parameter_106), FieldWithShape(signature,NullableShape(PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(signature)),shape_116),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(signature)),shape_117),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(signature)),parameter_107), FieldWithShape(verified,PrimitiveKind(BooleanKind,List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(verified)),shape_118),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification), JsonObjectKey(verified)),parameter_108)),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification)),shape_119),List(JsonArrayItem(0), JsonObjectKey(commit), JsonObjectKey(verification)),parameter_109)),List(JsonArrayItem(0), JsonObjectKey(commit)),shape_120),List(JsonArrayItem(0), JsonObjectKey(commit)),parameter_110), FieldWithShape(committer,NullableShape(ObjectWithFields(Vector(FieldWithShape(avatar_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(avatar_url)),shape_121),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(avatar_url)),parameter_111), FieldWithShape(events_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(events_url)),shape_122),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(events_url)),parameter_112), FieldWithShape(followers_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(followers_url)),shape_123),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(followers_url)),parameter_113), FieldWithShape(following_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(following_url)),shape_124),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(following_url)),parameter_114), FieldWithShape(gists_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(gists_url)),shape_125),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(gists_url)),parameter_115), FieldWithShape(gravatar_id,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(gravatar_id)),shape_126),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(gravatar_id)),parameter_116), FieldWithShape(html_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(html_url)),shape_127),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(html_url)),parameter_117), FieldWithShape(id,PrimitiveKind(NumberKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(id)),shape_128),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(id)),parameter_118), FieldWithShape(login,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(login)),shape_129),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(login)),parameter_119), FieldWithShape(node_id,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(node_id)),shape_130),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(node_id)),parameter_120), FieldWithShape(organizations_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(organizations_url)),shape_131),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(organizations_url)),parameter_121), FieldWithShape(received_events_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(received_events_url)),shape_132),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(received_events_url)),parameter_122), FieldWithShape(repos_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(repos_url)),shape_133),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(repos_url)),parameter_123), FieldWithShape(site_admin,PrimitiveKind(BooleanKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(site_admin)),shape_134),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(site_admin)),parameter_124), FieldWithShape(starred_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(starred_url)),shape_135),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(starred_url)),parameter_125), FieldWithShape(subscriptions_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(subscriptions_url)),shape_136),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(subscriptions_url)),parameter_126), FieldWithShape(type,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(type)),shape_137),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(type)),parameter_127), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(url)),shape_138),List(JsonArrayItem(0), JsonObjectKey(committer), JsonObjectKey(url)),parameter_128)),List(JsonArrayItem(0), JsonObjectKey(committer)),shape_139),List(JsonArrayItem(0), JsonObjectKey(committer)),shape_140),List(JsonArrayItem(0), JsonObjectKey(committer)),parameter_129), FieldWithShape(html_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(html_url)),shape_141),List(JsonArrayItem(0), JsonObjectKey(html_url)),parameter_130), FieldWithShape(node_id,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(node_id)),shape_142),List(JsonArrayItem(0), JsonObjectKey(node_id)),parameter_131), FieldWithShape(parents,ListOfShape(ObjectWithFields(Vector(FieldWithShape(html_url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(parents), JsonArrayItem(0), JsonObjectKey(html_url)),shape_147),List(JsonArrayItem(0), JsonObjectKey(parents), JsonArrayItem(0), JsonObjectKey(html_url)),parameter_135), FieldWithShape(sha,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(parents), JsonArrayItem(0), JsonObjectKey(sha)),shape_148),List(JsonArrayItem(0), JsonObjectKey(parents), JsonArrayItem(0), JsonObjectKey(sha)),parameter_136), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(parents), JsonArrayItem(0), JsonObjectKey(url)),shape_149),List(JsonArrayItem(0), JsonObjectKey(parents), JsonArrayItem(0), JsonObjectKey(url)),parameter_137)),List(JsonArrayItem(0), JsonObjectKey(parents), JsonArrayItem(0)),shape_150),List(JsonArrayItem(0), JsonObjectKey(parents)),shape_151),List(JsonArrayItem(0), JsonObjectKey(parents)),parameter_138), FieldWithShape(sha,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(sha)),shape_152),List(JsonArrayItem(0), JsonObjectKey(sha)),parameter_139), FieldWithShape(url,PrimitiveKind(StringKind,List(JsonArrayItem(0), JsonObjectKey(url)),shape_153),List(JsonArrayItem(0), JsonObjectKey(url)),parameter_140)),List(JsonArrayItem(0)),shape_154),List(),shape_155)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_154", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_96", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_78", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_71", + "shapeId" : "shape_96", + "name" : "avatar_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_71", + "shapeId" : "shape_78" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_79", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_72", + "shapeId" : "shape_96", + "name" : "events_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_72", + "shapeId" : "shape_79" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_80", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_73", + "shapeId" : "shape_96", + "name" : "followers_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_73", + "shapeId" : "shape_80" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_81", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_74", + "shapeId" : "shape_96", + "name" : "following_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_74", + "shapeId" : "shape_81" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_82", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_75", + "shapeId" : "shape_96", + "name" : "gists_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_75", + "shapeId" : "shape_82" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_83", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_76", + "shapeId" : "shape_96", + "name" : "gravatar_id", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_76", + "shapeId" : "shape_83" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_84", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_77", + "shapeId" : "shape_96", + "name" : "html_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_77", + "shapeId" : "shape_84" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_85", + "baseShapeId" : "$number", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_78", + "shapeId" : "shape_96", + "name" : "id", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_78", + "shapeId" : "shape_85" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_86", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_79", + "shapeId" : "shape_96", + "name" : "login", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_79", + "shapeId" : "shape_86" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_87", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_80", + "shapeId" : "shape_96", + "name" : "node_id", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_80", + "shapeId" : "shape_87" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_88", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_81", + "shapeId" : "shape_96", + "name" : "organizations_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_81", + "shapeId" : "shape_88" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_89", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_82", + "shapeId" : "shape_96", + "name" : "received_events_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_82", + "shapeId" : "shape_89" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_90", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_83", + "shapeId" : "shape_96", + "name" : "repos_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_83", + "shapeId" : "shape_90" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_91", + "baseShapeId" : "$boolean", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_84", + "shapeId" : "shape_96", + "name" : "site_admin", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_84", + "shapeId" : "shape_91" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_92", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_85", + "shapeId" : "shape_96", + "name" : "starred_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_85", + "shapeId" : "shape_92" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_93", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_86", + "shapeId" : "shape_96", + "name" : "subscriptions_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_86", + "shapeId" : "shape_93" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_94", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_87", + "shapeId" : "shape_96", + "name" : "type", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_87", + "shapeId" : "shape_94" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_95", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_88", + "shapeId" : "shape_96", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_88", + "shapeId" : "shape_95" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_97", + "baseShapeId" : "$nullable", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_89", + "shapeId" : "shape_154", + "name" : "author", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_89", + "shapeId" : "shape_97" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_98", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_90", + "shapeId" : "shape_154", + "name" : "comments_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_90", + "shapeId" : "shape_98" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_120", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_102", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_99", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_91", + "shapeId" : "shape_102", + "name" : "date", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_91", + "shapeId" : "shape_99" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_100", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_92", + "shapeId" : "shape_102", + "name" : "email", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_92", + "shapeId" : "shape_100" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_101", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_93", + "shapeId" : "shape_102", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_93", + "shapeId" : "shape_101" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_94", + "shapeId" : "shape_120", + "name" : "author", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_94", + "shapeId" : "shape_102" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_103", + "baseShapeId" : "$number", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_95", + "shapeId" : "shape_120", + "name" : "comment_count", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_95", + "shapeId" : "shape_103" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_107", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_104", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_96", + "shapeId" : "shape_107", + "name" : "date", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_96", + "shapeId" : "shape_104" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_105", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_97", + "shapeId" : "shape_107", + "name" : "email", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_97", + "shapeId" : "shape_105" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_106", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_98", + "shapeId" : "shape_107", + "name" : "name", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_98", + "shapeId" : "shape_106" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_99", + "shapeId" : "shape_120", + "name" : "committer", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_99", + "shapeId" : "shape_107" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_108", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_100", + "shapeId" : "shape_120", + "name" : "message", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_100", + "shapeId" : "shape_108" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_111", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_109", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_101", + "shapeId" : "shape_111", + "name" : "sha", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_101", + "shapeId" : "shape_109" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_110", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_102", + "shapeId" : "shape_111", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_102", + "shapeId" : "shape_110" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_103", + "shapeId" : "shape_120", + "name" : "tree", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_103", + "shapeId" : "shape_111" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_112", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_104", + "shapeId" : "shape_120", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_104", + "shapeId" : "shape_112" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_119", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_113", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_114", + "baseShapeId" : "$nullable", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_105", + "shapeId" : "shape_119", + "name" : "payload", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_105", + "shapeId" : "shape_114" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_115", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_106", + "shapeId" : "shape_119", + "name" : "reason", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_106", + "shapeId" : "shape_115" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_116", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_117", + "baseShapeId" : "$nullable", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_107", + "shapeId" : "shape_119", + "name" : "signature", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_107", + "shapeId" : "shape_117" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_118", + "baseShapeId" : "$boolean", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_108", + "shapeId" : "shape_119", + "name" : "verified", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_108", + "shapeId" : "shape_118" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_109", + "shapeId" : "shape_120", + "name" : "verification", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_109", + "shapeId" : "shape_119" + } + } + } + }, + { + "AddField" : { + "fieldId" : "parameter_110", + "shapeId" : "shape_154", + "name" : "commit", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_110", + "shapeId" : "shape_120" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_139", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_121", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_111", + "shapeId" : "shape_139", + "name" : "avatar_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_111", + "shapeId" : "shape_121" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_122", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_112", + "shapeId" : "shape_139", + "name" : "events_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_112", + "shapeId" : "shape_122" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_123", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_113", + "shapeId" : "shape_139", + "name" : "followers_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_113", + "shapeId" : "shape_123" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_124", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_114", + "shapeId" : "shape_139", + "name" : "following_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_114", + "shapeId" : "shape_124" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_125", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_115", + "shapeId" : "shape_139", + "name" : "gists_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_115", + "shapeId" : "shape_125" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_126", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_116", + "shapeId" : "shape_139", + "name" : "gravatar_id", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_116", + "shapeId" : "shape_126" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_127", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_117", + "shapeId" : "shape_139", + "name" : "html_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_117", + "shapeId" : "shape_127" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_128", + "baseShapeId" : "$number", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_118", + "shapeId" : "shape_139", + "name" : "id", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_118", + "shapeId" : "shape_128" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_129", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_119", + "shapeId" : "shape_139", + "name" : "login", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_119", + "shapeId" : "shape_129" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_130", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_120", + "shapeId" : "shape_139", + "name" : "node_id", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_120", + "shapeId" : "shape_130" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_131", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_121", + "shapeId" : "shape_139", + "name" : "organizations_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_121", + "shapeId" : "shape_131" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_132", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_122", + "shapeId" : "shape_139", + "name" : "received_events_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_122", + "shapeId" : "shape_132" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_133", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_123", + "shapeId" : "shape_139", + "name" : "repos_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_123", + "shapeId" : "shape_133" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_134", + "baseShapeId" : "$boolean", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_124", + "shapeId" : "shape_139", + "name" : "site_admin", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_124", + "shapeId" : "shape_134" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_135", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_125", + "shapeId" : "shape_139", + "name" : "starred_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_125", + "shapeId" : "shape_135" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_136", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_126", + "shapeId" : "shape_139", + "name" : "subscriptions_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_126", + "shapeId" : "shape_136" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_137", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_127", + "shapeId" : "shape_139", + "name" : "type", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_127", + "shapeId" : "shape_137" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_138", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_128", + "shapeId" : "shape_139", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_128", + "shapeId" : "shape_138" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_140", + "baseShapeId" : "$nullable", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_129", + "shapeId" : "shape_154", + "name" : "committer", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_129", + "shapeId" : "shape_140" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_141", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_130", + "shapeId" : "shape_154", + "name" : "html_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_130", + "shapeId" : "shape_141" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_142", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_131", + "shapeId" : "shape_154", + "name" : "node_id", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_131", + "shapeId" : "shape_142" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_150", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_147", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_135", + "shapeId" : "shape_150", + "name" : "html_url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_135", + "shapeId" : "shape_147" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_148", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_136", + "shapeId" : "shape_150", + "name" : "sha", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_136", + "shapeId" : "shape_148" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_149", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_137", + "shapeId" : "shape_150", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_137", + "shapeId" : "shape_149" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_151", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_138", + "shapeId" : "shape_154", + "name" : "parents", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_138", + "shapeId" : "shape_151" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_152", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_139", + "shapeId" : "shape_154", + "name" : "sha", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_139", + "shapeId" : "shape_152" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_153", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_140", + "shapeId" : "shape_154", + "name" : "url", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_140", + "shapeId" : "shape_153" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_155", + "baseShapeId" : "$list", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_89", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_96" + } + }, + "consumingParameterId" : "$nullableInner" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_105", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_113" + } + }, + "consumingParameterId" : "$nullableInner" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_107", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_116" + } + }, + "consumingParameterId" : "$nullableInner" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_129", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_139" + } + }, + "consumingParameterId" : "$nullableInner" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_151", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_150" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_155", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_154" + } + }, + "consumingParameterId" : "$listItem" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/nullable field, later provided two different types.managed.json b/core/domain-snapshots/json-to-shapes/outputs/nullable field, later provided two different types.managed.json new file mode 100644 index 0000000000..3c892fbb30 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/nullable field, later provided two different types.managed.json @@ -0,0 +1,112 @@ +{ + "shape" : "ObjectWithFields(Vector(FieldWithShape(value,NullableShape(OneOfShape(Vector(PrimitiveKind(NumberKind,List(JsonObjectKey(value)),shape_2), PrimitiveKind(StringKind,List(JsonObjectKey(value)),shape_1)),List(JsonObjectKey(value)),shape_3),List(JsonObjectKey(value)),shape_4),List(JsonObjectKey(value)),parameter_1)),List(),shape_5)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_5", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$number", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$oneOf", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$nullable", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_5", + "name" : "value", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_4" + } + } + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_2", + "shapeId" : "shape_3", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_2" + } + }, + "consumingParameterId" : "parameter_2" + } + } + } + }, + { + "AddShapeParameter" : { + "shapeParameterId" : "parameter_3", + "shapeId" : "shape_3", + "name" : "" + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInShape" : { + "shapeId" : "shape_3", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_1" + } + }, + "consumingParameterId" : "parameter_3" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "$nullableInner" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/nullable field, later provided value.managed.json b/core/domain-snapshots/json-to-shapes/outputs/nullable field, later provided value.managed.json new file mode 100644 index 0000000000..67a3684022 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/nullable field, later provided value.managed.json @@ -0,0 +1,54 @@ +{ + "shape" : "ObjectWithFields(Vector(FieldWithShape(value,NullableShape(PrimitiveKind(StringKind,List(JsonObjectKey(value)),shape_1),List(JsonObjectKey(value)),shape_2),List(JsonObjectKey(value)),parameter_1)),List(),shape_3)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$nullable", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_3", + "name" : "value", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_1" + } + }, + "consumingParameterId" : "$nullableInner" + } + } + } + } + ] +} \ No newline at end of file diff --git a/core/domain-snapshots/json-to-shapes/outputs/object is at root and some primitive fields are optional.managed.json b/core/domain-snapshots/json-to-shapes/outputs/object is at root and some primitive fields are optional.managed.json new file mode 100644 index 0000000000..58c1a49832 --- /dev/null +++ b/core/domain-snapshots/json-to-shapes/outputs/object is at root and some primitive fields are optional.managed.json @@ -0,0 +1,116 @@ +{ + "shape" : "ObjectWithFields(Vector(FieldWithShape(description,OptionalShape(PrimitiveKind(StringKind,List(JsonObjectKey(description)),shape_1),List(JsonObjectKey(description)),shape_2),List(JsonObjectKey(description)),parameter_1), FieldWithShape(isDone,OptionalShape(PrimitiveKind(BooleanKind,List(JsonObjectKey(isDone)),shape_3),List(JsonObjectKey(isDone)),shape_4),List(JsonObjectKey(isDone)),parameter_2), FieldWithShape(message,PrimitiveKind(StringKind,List(JsonObjectKey(message)),shape_5),List(JsonObjectKey(message)),parameter_3)),List(),shape_6)", + "commandsJson" : [ + { + "AddShape" : { + "shapeId" : "shape_6", + "baseShapeId" : "$object", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_1", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_2", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_6", + "name" : "description", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_1", + "shapeId" : "shape_2" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_3", + "baseShapeId" : "$boolean", + "name" : "" + } + }, + { + "AddShape" : { + "shapeId" : "shape_4", + "baseShapeId" : "$optional", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_6", + "name" : "isDone", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_2", + "shapeId" : "shape_4" + } + } + } + }, + { + "AddShape" : { + "shapeId" : "shape_5", + "baseShapeId" : "$string", + "name" : "" + } + }, + { + "AddField" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_6", + "name" : "message", + "shapeDescriptor" : { + "FieldShapeFromShape" : { + "fieldId" : "parameter_3", + "shapeId" : "shape_5" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_1", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_1" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + }, + { + "SetParameterShape" : { + "shapeDescriptor" : { + "ProviderInField" : { + "fieldId" : "parameter_2", + "providerDescriptor" : { + "ShapeProvider" : { + "shapeId" : "shape_3" + } + }, + "consumingParameterId" : "$optionalInner" + } + } + } + } + ] +} \ No newline at end of file From 4a57b0b4298bc63ba35e96c906f1785c43c047ad Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Thu, 25 Jun 2020 15:52:42 -0400 Subject: [PATCH 11/85] - LocalCli services should match example services - diffs should use pointers to interactions - interactions should be loadable by capture - work to be done: ignoreRequests, undocumented urls, misc ui discrepancies --- .../com/useoptic/DiffSerialization.scala | 41 +++- .../useoptic/InteractionPointerHelpers.scala | 14 ++ .../useoptic/diff/helpers/DiffHelpers.scala | 23 ++ .../com/useoptic/ux/DiffResultHelper.scala | 25 +-- workspaces/cli-scripts/package.json | 3 +- .../cli-scripts/src/emit-diff-projections.ts | 15 ++ workspaces/cli-scripts/src/index.ts | 9 + workspaces/cli-server/package.json | 1 + .../cli-server/src/diffs/diff-manager.ts | 49 ++++ .../cli-server/src/routers/capture-router.ts | 209 ++++++++++++++++++ .../cli-server/src/routers/spec-router.ts | 81 +------ .../avro/file-system/interaction-iterator.ts | 110 +++++++++ .../cli-shared/src/diffs/diff-worker.ts | 150 +++++++++++++ workspaces/cli-shared/src/index.ts | 14 ++ workspaces/domain-utilities/src/index.ts | 5 +- .../ui/src/components/diff/v2/DiffHooks.js | 4 +- .../ui/src/components/diff/v2/DiffPreview.js | 4 +- workspaces/ui/src/contexts/CaptureContext.js | 30 ++- workspaces/ui/src/entrypoints/localcli.js | 26 ++- .../ui/src/entrypoints/testing-sessions.js | 63 +++++- .../src/services/diff/ExampleDiffService.ts | 96 +++----- .../src/services/diff/LocalCliDiffService.ts | 141 ++++++++++++ workspaces/ui/src/services/diff/index.ts | 8 +- 23 files changed, 941 insertions(+), 180 deletions(-) create mode 100644 core/optic/js/src/main/scala/com/useoptic/InteractionPointerHelpers.scala create mode 100644 workspaces/cli-scripts/src/emit-diff-projections.ts create mode 100644 workspaces/cli-server/src/diffs/diff-manager.ts create mode 100644 workspaces/cli-server/src/routers/capture-router.ts create mode 100644 workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts create mode 100644 workspaces/cli-shared/src/diffs/diff-worker.ts create mode 100644 workspaces/ui/src/services/diff/LocalCliDiffService.ts diff --git a/core/optic/js/src/main/scala/com/useoptic/DiffSerialization.scala b/core/optic/js/src/main/scala/com/useoptic/DiffSerialization.scala index 11f1573ceb..0ea6707853 100644 --- a/core/optic/js/src/main/scala/com/useoptic/DiffSerialization.scala +++ b/core/optic/js/src/main/scala/com/useoptic/DiffSerialization.scala @@ -1,10 +1,12 @@ package com.useoptic -import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff -import io.circe.{Encoder, Json} -import io.circe.scalajs.convertJsonToJs -import io.circe.syntax._ +import com.useoptic.diff.helpers.DiffHelpers.{InteractionPointersGroupedByDiff, InteractionsGroupedByDiff} +import com.useoptic.diff.interactions.InteractionDiffResult + +import io.circe.{Decoder, Encoder, Json} +import io.circe.scalajs.{convertJsToJson, convertJsonToJs} import io.circe.generic.auto._ +import io.circe.syntax._ import scala.scalajs.js import scala.scalajs.js.annotation.{JSExportAll, JSExportTopLevel} @@ -24,4 +26,35 @@ object DiffJsonSerializer { def toJs(interactionsGroupedByDiff: InteractionsGroupedByDiff): js.Any = { convertJsonToJs(interactionsGroupedByDiff.asJson) } +} + +@JSExportTopLevel("DiffWithPointersJsonSerializer") +@JSExportAll +object DiffWithPointersJsonSerializer { + implicit val diffResultEncoder: Encoder[InteractionPointersGroupedByDiff] = x => { + x.toVector.asJson + } + + def toJson(interactionsGroupedByDiff: InteractionPointersGroupedByDiff): Json = { + interactionsGroupedByDiff.asJson + } + + def toJs(interactionsGroupedByDiff: InteractionPointersGroupedByDiff): js.Any = { + convertJsonToJs(interactionsGroupedByDiff.asJson) + } +} +@JSExportTopLevel("DiffWithPointersJsonDeserializer") +@JSExportAll +object DiffWithPointersJsonDeserializer { + implicit val diffResultDecoder: Decoder[InteractionPointersGroupedByDiff] = x => { + Right(x.as[Seq[(InteractionDiffResult, Seq[String])]].right.get.toMap) + } + + def fromJs(x: js.Any) = { + fromJson(convertJsToJson(x).right.get) + } + + def fromJson(x: Json): InteractionPointersGroupedByDiff = { + x.as[InteractionPointersGroupedByDiff].right.get + } } \ No newline at end of file diff --git a/core/optic/js/src/main/scala/com/useoptic/InteractionPointerHelpers.scala b/core/optic/js/src/main/scala/com/useoptic/InteractionPointerHelpers.scala new file mode 100644 index 0000000000..60e0fc7666 --- /dev/null +++ b/core/optic/js/src/main/scala/com/useoptic/InteractionPointerHelpers.scala @@ -0,0 +1,14 @@ +package com.useoptic + +import com.useoptic.types.capture.HttpInteraction + +import scala.scalajs.js +import scala.scalajs.js.annotation.{JSExport, JSExportAll} + +@JSExport +@JSExportAll +class InteractionPointerHelpers(converter: js.Function1[HttpInteraction, String]) { + def toPointer(interaction: HttpInteraction): String = { + converter(interaction) + } +} diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/DiffHelpers.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/DiffHelpers.scala index 7c68d3314a..2a04be5e93 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/DiffHelpers.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/DiffHelpers.scala @@ -34,6 +34,7 @@ object DiffHelpers { } type InteractionsGroupedByDiff = Map[InteractionDiffResult, Seq[HttpInteraction]] + type InteractionPointersGroupedByDiff = Map[InteractionDiffResult, Seq[String]] def groupByDiffs(resolvers: ShapesResolvers, rfcState: RfcState, interactions: Seq[HttpInteraction], initial: InteractionsGroupedByDiff = Map.empty): InteractionsGroupedByDiff = { interactions.foldLeft(initial)((acc, interaction) => { @@ -58,6 +59,28 @@ object DiffHelpers { }) } + type InteractionToPointer = (HttpInteraction) => String + + def groupInteractionPointersByNormalizedDiffs(resolvers: ShapesResolvers, rfcState: RfcState, interactions: Seq[HttpInteraction], toPointer: InteractionToPointer, initial: InteractionPointersGroupedByDiff = Map.empty): InteractionPointersGroupedByDiff = { + interactions.foldLeft(initial)((acc, interaction) => { + val diffs = diff(resolvers, rfcState, interaction) + val changedItems = + diffs.map((diff) => { + val normalized = diff.normalize() + (normalized -> (acc.getOrElse(normalized, Seq.empty) :+ toPointer(interaction))) + }).toMap + acc ++ changedItems + }) + } + + def groupInteractionPointerByNormalizedDiffs(resolvers: ShapesResolvers, rfcState: RfcState, interaction: HttpInteraction, pointer: String, initial: InteractionPointersGroupedByDiff = Map.empty): InteractionPointersGroupedByDiff = { + groupInteractionPointersByNormalizedDiffs(resolvers, rfcState, Seq(interaction), (_) => pointer, initial) + } + + def emptyInteractionsGroupedByDiff(): InteractionsGroupedByDiff = Map.empty + + def emptyInteractionPointersGroupedByDiff(): InteractionPointersGroupedByDiff = Map.empty + def hasDiff(diff: InteractionsGroupedByDiff) = diff.isEmpty def distinctDiffCount(diff: InteractionsGroupedByDiff) = diff.keys.size diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index 8bcf627669..bc2605b459 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -1,13 +1,11 @@ package com.useoptic.ux import com.useoptic.contexts.requests.Commands.PathComponentId -import com.useoptic.contexts.rfc.Commands.RfcCommand import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} -import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff +import com.useoptic.diff.helpers.DiffHelpers.InteractionPointersGroupedByDiff import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescription, DiffDescriptionInterpreters} -import com.useoptic.diff.interactions.{BodyUtilities, InteractionDiffResult, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers, Resolvers, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, SpecRoot, UnmatchedRequestBodyContentType, UnmatchedRequestBodyShape, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseBodyShape, UnmatchedResponseStatusCode} -import com.useoptic.diff.shapes.ShapeDiffResult +import com.useoptic.diff.interactions._ import com.useoptic.diff.shapes.resolvers.ShapesResolvers import com.useoptic.types.capture.{Body, HttpInteraction} @@ -18,15 +16,10 @@ import scala.util.Try @JSExportAll object DiffResultHelper { - def unmatchedUrls(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { - diffs.collect { - case (newUrl: UnmatchedRequestUrl, interactions) => NewEndpoint(interactions.head.request.path, interactions.head.request.method, None, interactions.size) - case (newMethod: UnmatchedRequestMethod, interactions) => { - val location = getLocationForDiff(newMethod, rfcState) - NewEndpoint(interactions.head.request.path, interactions.head.request.method, Some(location.get.pathId), interactions.size) - } - } - }.toVector.sortBy(i => (i.method + i.path)) + def unmatchedUrls(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { + //@TODO: implement this + Vector.empty + } def diffsForPathAndMethod(allEndpointDiffs: Seq[EndpointDiffs], pathId: PathComponentId, method: String, ignoredDiffs: Seq[DiffResult]): Map[InteractionDiffResult, Seq[String]] = { allEndpointDiffs.find(i => i.method == method && i.pathId == pathId) @@ -34,14 +27,14 @@ object DiffResultHelper { .getOrElse(Map.empty) } - def endpointDiffs(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { + def endpointDiffs(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { diffs.filterNot { case (a: UnmatchedRequestUrl, _) => true case (a: UnmatchedRequestMethod, _) => true case _ => false }.flatMap { - case (diff, interactions) => getLocationForDiff(diff, rfcState).map(location => { - EndpointDiffs(location.method, location.pathId, Map(diff -> interactions.map(i => i.uuid))) + case (diff, interactionPointers) => getLocationForDiff(diff, rfcState).map(location => { + EndpointDiffs(location.method, location.pathId, Map(diff -> interactionPointers)) }) }.groupBy(i => (i.pathId, i.method)).map { case ((path, method), diffs) => { diff --git a/workspaces/cli-scripts/package.json b/workspaces/cli-scripts/package.json index cc0251d46f..399094e00c 100644 --- a/workspaces/cli-scripts/package.json +++ b/workspaces/cli-scripts/package.json @@ -15,7 +15,8 @@ "types": "build/index.d.ts", "dependencies": { "node-notifier": "^7.0.0", - "analytics-node": "^3.4.0-beta.1" + "analytics-node": "^3.4.0-beta.1", + "@useoptic/cli-shared": "8.1.0" }, "devDependencies": { "@types/node-notifier": "^6.0.1" diff --git a/workspaces/cli-scripts/src/emit-diff-projections.ts b/workspaces/cli-scripts/src/emit-diff-projections.ts new file mode 100644 index 0000000000..3cca7d078f --- /dev/null +++ b/workspaces/cli-scripts/src/emit-diff-projections.ts @@ -0,0 +1,15 @@ +import { + DiffWorker, + IDiffProjectionEmitterConfig, +} from '@useoptic/cli-shared/build/diffs/diff-worker'; + +async function run(config: IDiffProjectionEmitterConfig) { + await new DiffWorker(config).run(); +} + +const [, , configJsonString] = process.argv; +const config: IDiffProjectionEmitterConfig = JSON.parse(configJsonString); +console.log({ config }); +run(config).catch((e) => { + console.error(e); +}); diff --git a/workspaces/cli-scripts/src/index.ts b/workspaces/cli-scripts/src/index.ts index ca568552f1..6efd80a46e 100644 --- a/workspaces/cli-scripts/src/index.ts +++ b/workspaces/cli-scripts/src/index.ts @@ -11,3 +11,12 @@ export function runStandaloneScript(modulePath: string, ...args: string[]) { export function runScriptByName(name: string, ...args: string[]) { return runStandaloneScript(path.join(basePath, name), ...args); } + +export function runManagedScript(modulePath: string, ...args: string[]) { + const child = cp.fork(modulePath, args, { execArgv: ['--inspect=0'] }); + return child; +} + +export function runManagedScriptByName(name: string, ...args: string[]) { + return runManagedScript(path.join(basePath, name), ...args); +} diff --git a/workspaces/cli-server/package.json b/workspaces/cli-server/package.json index 227b5a6a76..439974086f 100644 --- a/workspaces/cli-server/package.json +++ b/workspaces/cli-server/package.json @@ -16,6 +16,7 @@ "dependencies": { "@useoptic/cli-client": "8.1.0", "@useoptic/cli-config": "8.1.0", + "@useoptic/cli-scripts": "8.1.0", "@useoptic/cli-shared": "8.1.0", "@useoptic/ui": "8.1.0", "avsc": "^5.4.18", diff --git a/workspaces/cli-server/src/diffs/diff-manager.ts b/workspaces/cli-server/src/diffs/diff-manager.ts new file mode 100644 index 0000000000..a9c8b9a56f --- /dev/null +++ b/workspaces/cli-server/src/diffs/diff-manager.ts @@ -0,0 +1,49 @@ +import { EventEmitter } from 'events'; +import { runManagedScriptByName } from '@useoptic/cli-scripts'; +import { IDiffProjectionEmitterConfig } from '@useoptic/cli-shared/build/diffs/diff-worker'; +import { ChildProcess } from 'child_process'; +import { getDiffOutputBaseDirectory } from '../routers/capture-router'; + +export interface IDiffManagerConfig { + diffId: string; + captureId: string; + captureBaseDirectory: string; +} + +export class DiffManager { + public readonly events: EventEmitter = new EventEmitter(); + private child!: ChildProcess; + + constructor() {} + + async start(config: IDiffManagerConfig) { + const outputPaths = getDiffOutputBaseDirectory(config); + const scriptConfig: IDiffProjectionEmitterConfig = { + captureId: config.captureId, + diffId: config.diffId, + captureBaseDirectory: config.captureBaseDirectory, + specFilePath: outputPaths.events, + ignoreRequestsFilePath: outputPaths.ignoreRequests, + additionalCommandsFilePath: outputPaths.additionalCommands, + }; + + const child = runManagedScriptByName( + 'emit-diff-projections', + JSON.stringify(scriptConfig) + ); + child.on('message', (x: any) => { + console.log(x); + this.events.emit('progress'); + }); + child.on('exit', function () { + console.log(arguments); + }); + this.child = child; + } + + async stop() { + if (this.child) { + this.child.kill(); + } + } +} diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts new file mode 100644 index 0000000000..c73581b30f --- /dev/null +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -0,0 +1,209 @@ +import express from 'express'; +import bodyParser from 'body-parser'; +import { delay, IdGenerator } from '@useoptic/cli-shared'; +import { CaptureId } from '@useoptic/saas-types'; +import { + IInteractionPointerConverter, + LocalCaptureInteractionContext, +} from '@useoptic/cli-shared/build/captures/avro/file-system/interaction-iterator'; +import { DiffManager } from '../diffs/diff-manager'; +import path from 'path'; +import fs from 'fs-extra'; + +export interface ICaptureRouterDependencies { + idGenerator: IdGenerator; + interactionPointerConverterFactory: (config: { + captureId: CaptureId; + captureBaseDirectory: string; + }) => IInteractionPointerConverter; +} + +export interface ICaptureDiffMetadata { + id: string; + manager: DiffManager; +} + +export function makeRouter(dependencies: ICaptureRouterDependencies) { + const router = express.Router({ mergeParams: true }); + + router.put('/status', bodyParser.json({ limit: '1kb' }), async (req, res) => { + const { status } = req.body; + if (status !== 'completed') { + debugger; + return res.sendStatus(400); + } + try { + const { captureId } = req.params; + const captureInfo = await req.optic.capturesHelpers.loadCaptureState( + captureId + ); + captureInfo.status = 'completed'; + await req.optic.capturesHelpers.updateCaptureState(captureInfo); + res.sendStatus(204); + } catch (e) { + console.error(e); + debugger; + return res.sendStatus(400); + } + }); + + router.get('/status', async (req, res) => { + try { + const { captureId } = req.params; + const captureInfo = await req.optic.capturesHelpers.loadCaptureState( + captureId + ); + const captureSummary = await req.optic.capturesHelpers.loadCaptureSummary( + captureId + ); + res.json({ + status: captureInfo.status, + diffsCount: captureSummary.diffsCount, + interactionsCount: captureSummary.interactionsCount, + }); + } catch (e) { + return res.sendStatus(400); + } + }); + + //////////////////////////////////////////////////////////////////////////////// + + const diffs = new Map(); + router.post( + '/diffs', + bodyParser.json({ limit: '100mb' }), + async (req, res) => { + const { captureId } = req.params; + const { ignoreRequests, events, additionalCommands } = req.body; + const id = dependencies.idGenerator.nextId(); + const manager = new DiffManager(); + const diffOutputPaths = getDiffOutputBaseDirectory({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + diffId: id, + }); + await fs.ensureDir(diffOutputPaths.base); + await fs.writeJson(diffOutputPaths.events, events); + await fs.writeJson(diffOutputPaths.ignoreRequests, ignoreRequests); + await fs.writeJson( + diffOutputPaths.additionalCommands, + additionalCommands + ); + const workerStarted = new Promise((resolve, reject) => { + manager.events.once('progress', resolve); + }); + await manager.start({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId: captureId, + diffId: id, + }); + + await workerStarted; + + const diffMetadata = { + id, + manager, + }; + diffs.set(id, diffMetadata); + + res.json({ + diffId: id, + notificationsUrl: `${req.baseUrl}/${id}/notifications`, + }); + } + ); + + //////////////////////////////////////////////////////////////////////////////// + //@TODO: router.get('/diffs/:diffId/{diffs,undocumented-urls,statistics,notifications}') + //////////////////////////////////////////////////////////////////////////////// + + router.get('/diffs/:diffId/notifications', async (req, res) => { + const { diffId } = req.params; + const diffMetadata = diffs.get(diffId); + if (!diffMetadata) { + return res.json(404); + } + + function emit(data: any) { + res.write(`data: ${JSON.stringify(data)}\n\n`); + } + + const headers = { + 'Content-Type': 'text/event-stream', + Connection: 'keep-alive', + 'Cache-Control': 'no-cache', + }; + res.writeHead(200, headers); + emit({ type: 'message', data: {} }); + + diffMetadata.manager.events.on('progress', () => { + emit({ type: 'message', data: {} }); + }); + + req.on('close', () => { + diffMetadata.manager.stop(); + }); + }); + + //////////////////////////////////////////////////////////////////////////////// + + router.get('/diffs/:diffId/diffs', async (req, res) => { + const { captureId, diffId } = req.params; + const diffOutputPaths = getDiffOutputBaseDirectory({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + diffId, + }); + try { + //@TODO: streamify + const contents = await fs.readJson(diffOutputPaths.diffs); + res.json(contents); + } catch (e) { + res.status(404).json({ + message: e.message, + }); + } + }); + //////////////////////////////////////////////////////////////////////////////// + + router.get('/interactions/:interactionPointer', async (req, res) => { + const { captureId, interactionPointer } = req.params; + const interactionPointerConverter = dependencies.interactionPointerConverterFactory( + { + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + } + ); + const interaction = await interactionPointerConverter.fromPointer( + interactionPointer + ); + res.json({ + interaction, + }); + }); + + //////////////////////////////////////////////////////////////////////////////// + + return router; +} + +export function getDiffOutputBaseDirectory(values: { + captureBaseDirectory: string; + captureId: string; + diffId: string; +}) { + const { captureBaseDirectory, captureId, diffId } = values; + const base = path.join(captureBaseDirectory, captureId, 'diffs', diffId); + const diffs = path.join(base, 'diffs.json'); + const events = path.join(base, 'events.json'); + const ignoreRequests = path.join(base, 'ignoreRequests.json'); + const additionalCommands = path.join(base, 'additionalCommands.json'); + + return { + base, + diffs, + events, + ignoreRequests, + additionalCommands, + }; +} diff --git a/workspaces/cli-server/src/routers/spec-router.ts b/workspaces/cli-server/src/routers/spec-router.ts index 1574740668..1bed6486b0 100644 --- a/workspaces/cli-server/src/routers/spec-router.ts +++ b/workspaces/cli-server/src/routers/spec-router.ts @@ -4,21 +4,15 @@ import { readApiConfig, readTestingConfig, } from '@useoptic/cli-config'; -import { parseIgnore } from '@useoptic/cli-config'; -import express, { RequestHandler } from 'express'; +import express from 'express'; import bodyParser from 'body-parser'; import path from 'path'; import fs from 'fs-extra'; import { ICliServerSession } from '../server'; import sortBy from 'lodash.sortby'; -import { - developerDebugLogger, - FileSystemAvroCaptureLoader, - ICaptureLoader, -} from '@useoptic/cli-shared'; -import * as http from 'http'; -import * as url from 'url'; - +import { DefaultIdGenerator, developerDebugLogger } from '@useoptic/cli-shared'; +import { makeRouter as makeCaptureRouter } from './capture-router'; +import { LocalCaptureInteractionPointerConverter } from '@useoptic/cli-shared/build/captures/avro/file-system/interaction-iterator'; type CaptureId = string; type Iso8601Timestamp = string; export type InvalidCaptureState = { @@ -268,68 +262,15 @@ ${events.map((x: any) => JSON.stringify(x)).join('\n,')} })), }); }); - router.put( - '/captures/:captureId/status', - bodyParser.json({ limit: '1kb' }), - async (req, res) => { - const { status } = req.body; - if (status !== 'completed') { - debugger; - return res.sendStatus(400); - } - try { - const { captureId } = req.params; - const captureInfo = await req.optic.capturesHelpers.loadCaptureState( - captureId - ); - captureInfo.status = 'completed'; - await req.optic.capturesHelpers.updateCaptureState(captureInfo); - res.sendStatus(204); - } catch (e) { - console.error(e); - debugger; - return res.sendStatus(400); - } - } - ); - router.get('/captures/:captureId/status', async (req, res) => { - try { - const { captureId } = req.params; - const captureInfo = await req.optic.capturesHelpers.loadCaptureState( - captureId - ); - const captureSummary = await req.optic.capturesHelpers.loadCaptureSummary( - captureId - ); - res.json({ - status: captureInfo.status, - diffsCount: captureSummary.diffsCount, - interactionsCount: captureSummary.interactionsCount, - }); - } catch (e) { - return res.sendStatus(400); - } - }); - router.get('/captures/:captureId/samples', async (req, res) => { - const { captureId } = req.params; - const loader: ICaptureLoader = new FileSystemAvroCaptureLoader({ - captureId, - captureBaseDirectory: req.optic.paths.capturesPath, - }); - try { - const filter = parseIgnore(req.optic.config.ignoreRequests || []); - const capture = await loader.loadWithFilter(filter); - res.json({ - metadata: {}, - samples: capture.samples, - links: [{ rel: 'next', href: '' }], - }); - } catch (e) { - console.error(e); - res.sendStatus(500); - } + const captureRouter = makeCaptureRouter({ + idGenerator: new DefaultIdGenerator(), + interactionPointerConverterFactory: (config: { + captureId: CaptureId; + captureBaseDirectory: string; + }) => new LocalCaptureInteractionPointerConverter(config), }); + router.use('/captures/:captureId', captureRouter); router.get('/testing-credentials', async (req, res) => { const { paths } = req.optic; diff --git a/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts new file mode 100644 index 0000000000..bf0d09ee16 --- /dev/null +++ b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts @@ -0,0 +1,110 @@ +import path from 'path'; +import fs from 'fs-extra'; +import { IHttpInteraction, IInteractionBatch } from '@useoptic/domain-types'; +import { IFileSystemCaptureLoaderConfig } from './capture-loader'; +import { captureFileSuffix } from './index'; +import avro from 'avsc'; +import { CaptureId } from '@useoptic/saas-types'; + +export interface FilterPredicate { + (item: T): boolean; +} + +export async function* CaptureInteractionIterator( + config: IFileSystemCaptureLoaderConfig, + filter: FilterPredicate + //@TODO: add a way to check if the capture has completed +) { + let shouldStop = false; + let currentBatchId = BigInt(0); + while (!shouldStop) { + const batchFilePath = path.join( + config.captureBaseDirectory, + config.captureId, + `${currentBatchId.toString()}${captureFileSuffix}` + ); + if (!(await fs.pathExists(batchFilePath))) { + //@TODO: determine if we should wait + return; + } + console.log(batchFilePath + '\n\nxxx\n\n'); + let index = 0; + const items = BatchInteractionIterator(batchFilePath); + for await (const x of items) { + const shouldEmit = filter(x); + if (shouldEmit) { + yield { + batchId: currentBatchId.toString(), + index, + interaction: x, + }; + } else { + console.log(`skipping ${x.request.method} ${x.request.path}`); + } + index = index + 1; + } + currentBatchId = currentBatchId + BigInt(1); + } +} + +export async function* BatchInteractionIterator(batchFilePath: string) { + const contents = await loadBatchFile(batchFilePath); + for (const item of contents.batchItems) { + yield item; + } +} + +export async function loadBatchFile(batchFilePath: string) { + console.time(`loadBatchFile-${batchFilePath}`); + const decoder = avro.createFileDecoder(batchFilePath); + const contents = await new Promise((resolve, reject) => { + decoder.once('data', (contents: IInteractionBatch) => { + resolve(contents); + }); + decoder.once('error', (err) => reject(err)); + }); + console.timeEnd(`loadBatchFile-${batchFilePath}`); + return contents; +} + +export type InteractionPointer = string; + +export interface IInteractionPointerConverter { + toPointer(interaction: IHttpInteraction, context: C): InteractionPointer; + + fromPointer(pointer: InteractionPointer): Promise; +} + +export interface LocalCaptureInteractionContext { + batchId: string; + interactionIndex: number; +} + +export class LocalCaptureInteractionPointerConverter + implements IInteractionPointerConverter { + constructor( + private config: { + captureId: CaptureId; + captureBaseDirectory: string; + } + ) {} + + async fromPointer(pointer: InteractionPointer): Promise { + const [batchId, interactionIndexString] = pointer.split('-'); + const interactionIndex = parseInt(interactionIndexString, 10); + const batchFilePath = path.join( + this.config.captureBaseDirectory, + this.config.captureId, + `${batchId}${captureFileSuffix}` + ); + const contents = await loadBatchFile(batchFilePath); + return contents.batchItems[interactionIndex]; + } + + toPointer( + interaction: IHttpInteraction, + context: LocalCaptureInteractionContext + ): InteractionPointer { + return `${context.batchId}-${context.interactionIndex}`; + } +} diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts new file mode 100644 index 0000000000..de9328fe93 --- /dev/null +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -0,0 +1,150 @@ +import { cachingResolversAndRfcStateFromEventsAndAdditionalCommands } from '@useoptic/domain-utilities'; +import { parseIgnore } from '@useoptic/cli-config'; +import { IHttpInteraction } from '@useoptic/domain-types'; +import { + CaptureInteractionIterator, + LocalCaptureInteractionPointerConverter, +} from '../captures/avro/file-system/interaction-iterator'; +import { + DiffHelpers, + JsonHelper, + opticEngine, + RfcCommandContext, +} from '@useoptic/domain'; +import fs from 'fs-extra'; +import Bottleneck from 'bottleneck'; +import path from 'path'; + +export interface IDiffProjectionEmitterConfig { + diffId: string; + specFilePath: string; + ignoreRequestsFilePath: string; + additionalCommandsFilePath: string; + captureBaseDirectory: string; + captureId: string; +} + +export class DiffWorker { + constructor(private config: IDiffProjectionEmitterConfig) {} + + async run() { + debugger; + console.log('running'); + console.time('load spec'); + const ignoreRequests = await fs.readJson( + this.config.ignoreRequestsFilePath + ); + const events: any[] = await fs.readJson(this.config.specFilePath); + const additionalCommands: any[] = await fs.readJson( + this.config.additionalCommandsFilePath + ); + console.timeEnd('load spec'); + console.time('build state'); + const batchId = 'bbb'; + const clientId = 'ccc'; //@TODO: should use real values + const clientSessionId = 'sss'; //@TODO: should use real values + const commandsContext = RfcCommandContext( + clientId, + clientSessionId, + batchId + ); + const { + rfcState, + resolvers, + } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + events, + commandsContext, + additionalCommands + ); + console.timeEnd('build state'); + const ignoredRequests = parseIgnore(ignoreRequests); + + function filterIgnoredRequests(interaction: IHttpInteraction) { + return !ignoredRequests.shouldIgnore( + interaction.request.method, + interaction.request.path + ); + } + + const interactionIterator = CaptureInteractionIterator( + { + captureId: this.config.captureId, + captureBaseDirectory: this.config.captureBaseDirectory, + }, + filterIgnoredRequests + ); + debugger; + let diffs = DiffHelpers.emptyInteractionPointersGroupedByDiff(); + + let interactionCounter = BigInt(0); + const batcher = new Bottleneck.Batcher({ + maxSize: 100, + maxTime: 100, + }); + const diffOutputFilePath = path.join( + this.config.captureBaseDirectory, + this.config.captureId, + 'diffs', + this.config.diffId, + 'diffs.json' + ); + const queue = new Bottleneck({ + maxConcurrent: 1, + }); + + async function flush() { + const c = interactionCounter.toString(); + + console.time(`flushing ${c}`); + await fs.ensureFile(diffOutputFilePath); + await fs.writeJson( + diffOutputFilePath, + opticEngine.DiffWithPointersJsonSerializer.toJs(diffs) + ); + + if (process && process.send) { + process.send({ + type: 'progress', + data: { interactionCounter: interactionCounter.toString() }, + }); + } else { + console.log(interactionCounter.toString()); + } + console.timeEnd(`flushing ${c}`); + } + + batcher.on('batch', () => { + queue.schedule(() => flush()); + }); + + const interactionPointerConverter = new LocalCaptureInteractionPointerConverter( + { + captureBaseDirectory: this.config.captureBaseDirectory, + captureId: this.config.captureId, + } + ); + await flush(); + + for await (const item of interactionIterator) { + // for (const x of [1, 2, 3]) { + const { batchId, interaction, index } = item; + + interactionCounter = interactionCounter + BigInt(1); + console.time(`diff ${batchId} ${index}`); + diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( + resolvers, + rfcState, + JsonHelper.fromInteraction(interaction), + interactionPointerConverter.toPointer(interaction, { + interactionIndex: index, + batchId, + }), + diffs + ); + console.timeEnd(`diff ${batchId} ${index}`); + // } + + batcher.add(null); + } + } +} diff --git a/workspaces/cli-shared/src/index.ts b/workspaces/cli-shared/src/index.ts index 1b1f8de16e..cd01a3372d 100644 --- a/workspaces/cli-shared/src/index.ts +++ b/workspaces/cli-shared/src/index.ts @@ -114,3 +114,17 @@ export async function delay(milliseconds: number) { setTimeout(resolve, milliseconds); }); } + +//////////////////////////////////////////////////////////////////////////////// + +import * as uuid from 'uuid'; + +export interface IdGenerator { + nextId(): T; +} + +export class DefaultIdGenerator implements IdGenerator { + nextId() { + return uuid.v4(); + } +} diff --git a/workspaces/domain-utilities/src/index.ts b/workspaces/domain-utilities/src/index.ts index d317f5497a..dbc2df7490 100644 --- a/workspaces/domain-utilities/src/index.ts +++ b/workspaces/domain-utilities/src/index.ts @@ -1,5 +1,6 @@ import { StableHasher } from './coverage'; import { DiffHelpers, JsonHelper, opticEngine } from '@useoptic/domain'; +import { IHttpInteraction } from '@useoptic/domain-types'; export { StableHasher } from './coverage'; @@ -115,7 +116,7 @@ export function deserializeInteractions(serializedInteractions: any) { export function diffFromRfcStateAndInteractions( shapesResolvers: any, rfcState: any, - interactions: any[] + interactions: IHttpInteraction[] ) { const diffResults = DiffHelpers.groupByDiffs( shapesResolvers, @@ -127,7 +128,7 @@ export function diffFromRfcStateAndInteractions( export function normalizedDiffFromRfcStateAndInteractions( shapesResolvers: any, rfcState: any, - interactions: any[] + interactions: IHttpInteraction[] ) { const diffResults = DiffHelpers.groupByNormalizedDiffs( shapesResolvers, diff --git a/workspaces/ui/src/components/diff/v2/DiffHooks.js b/workspaces/ui/src/components/diff/v2/DiffHooks.js index a377ec28e5..caf78bc228 100644 --- a/workspaces/ui/src/components/diff/v2/DiffHooks.js +++ b/workspaces/ui/src/components/diff/v2/DiffHooks.js @@ -17,7 +17,7 @@ export function useDiffDescription(diff) { } export function useInteractionWithPointer(pointer) { - const { diffService } = useCaptureContext(); + const { captureService } = useCaptureContext(); const [interaction, setInteraction] = useState(null); const [interactionScala, setInteractionScala] = useState(null); @@ -25,7 +25,7 @@ export function useInteractionWithPointer(pointer) { const getInteraction = async () => { if (pointer) { const interaction = - (await diffService.loadInteraction(pointer)).interaction || null; + (await captureService.loadInteraction(pointer)).interaction || null; setInteraction(interaction); setInteractionScala(JsonHelper.fromInteraction(interaction)); } else { diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 69209ba484..1cbe34efed 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -337,7 +337,7 @@ function _NewRegions(props) { } = props; const classes = useStyles(); - const { diffService } = useCaptureContext(); + const { diffService, captureService } = useCaptureContext(); const [deselected, setDeselected] = useState([]); const [showExpanded, setShowExpanded] = useState(false); @@ -370,7 +370,7 @@ function _NewRegions(props) { .filter((diffBlock) => !isDeselected(diffBlock)) .map(async (i) => { //@todo this is messy and doubles the compute - const { interaction } = await diffService.loadInteraction( + const { interaction } = await captureService.loadInteraction( i.firstInteractionPointer ); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index e109ab9dc3..60c0f48dd1 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -14,9 +14,10 @@ export function CaptureStateStore(props) { const { captureId } = props; const [diffService, setDiffService] = useState(null); + const [captureService, setCaptureService] = useState(null); const [additionalCommands, setAdditionalCommands] = useState([]); - const { eventStore, rfcId } = useContext(RfcContext); + const { eventStore, rfcService, rfcId } = useContext(RfcContext); // diff state const [endpointDiffs, setEndpointDiffs] = useState([]); @@ -33,26 +34,40 @@ export function CaptureStateStore(props) { async function restart() { if (diffService) { diffService.loadStats().then(setStats); - diffService.listDiffs().then(setEndpointDiffs); - diffService.listUnrecognizedUrls().then(setUnrecognizedUrls); + diffService.listDiffs().then((x) => { + setEndpointDiffs(x.diffs); + }); + diffService.listUnrecognizedUrls().then((x) => { + setUnrecognizedUrls(x.urls); + }); setDiffId(diffService.diffId()); } } useEffect(() => { - const captureService = captureServiceFactory(specService, captureId); async function task() { + const captureService = await captureServiceFactory( + specService, + captureId + ); //@TODO: handle error //@TODO:getConfig for ignoreRequests config + const events = eventStore.listEvents(rfcId); const config = await captureService.startDiff( - ScalaJSHelpers.eventsJsArray(eventStore.listEvents(rfcId)), + ScalaJSHelpers.eventsJsArray(events), [], additionalCommands ); - const diffServiceForCapture = diffServiceFactory( + const rfcState = rfcService.currentState(rfcId); + + const diffServiceForCapture = await diffServiceFactory( specService, + captureService, + rfcState, additionalCommands, - config + config, + captureId ); + setCaptureService(captureService); setDiffService(diffServiceForCapture); } task(); @@ -73,6 +88,7 @@ export function CaptureStateStore(props) { const value = { diffService, + captureService, restart, updatedAdditionalCommands, diffId, diff --git a/workspaces/ui/src/entrypoints/localcli.js b/workspaces/ui/src/entrypoints/localcli.js index 5699b2c2fc..b289211297 100644 --- a/workspaces/ui/src/entrypoints/localcli.js +++ b/workspaces/ui/src/entrypoints/localcli.js @@ -5,6 +5,10 @@ import { ApiRoutes } from '../routes'; import EventEmitter from 'events'; import { Provider as BaseUrlContext } from '../contexts/BaseUrlContext'; import { SpecServiceClient } from '@useoptic/cli-client'; +import { + LocalCliCaptureService, + LocalCliDiffService, +} from '../services/diff/LocalCliDiffService'; export default function LocalCli(props) { const match = useRouteMatch(); @@ -13,9 +17,29 @@ export default function LocalCli(props) { const eventEmitter = new EventEmitter(); const specService = new SpecServiceClient(apiId, eventEmitter); + const captureServiceFactory = async function (specService, captureId) { + const baseUrl = `/api/specs/${apiId}/captures/${captureId}`; + return new LocalCliCaptureService(baseUrl); + }; + const diffServiceFactory = async function ( + specService, + captureService, + rfcState, + additionalCommands, + config, + captureId + ) { + const baseUrl = `/api/specs/${apiId}/captures/${captureId}/diffs/${config.diffId}`; + return new LocalCliDiffService(captureService, baseUrl, rfcState); + }; + return ( - + diff --git a/workspaces/ui/src/entrypoints/testing-sessions.js b/workspaces/ui/src/entrypoints/testing-sessions.js index aec3add97a..8a00cf1772 100644 --- a/workspaces/ui/src/entrypoints/testing-sessions.js +++ b/workspaces/ui/src/entrypoints/testing-sessions.js @@ -11,6 +11,11 @@ import { ExampleCaptureService, ExampleDiffService, } from '../services/diff/ExampleDiffService'; +import { DiffHelpers, JsonHelper, RfcCommandContext } from '@useoptic/domain'; +import { + cachingResolversAndRfcStateFromEventsAndAdditionalCommands, + normalizedDiffFromRfcStateAndInteractions, +} from '@useoptic/domain-utilities'; export default function TestingSessions(props) { const match = useRouteMatch(); @@ -21,12 +26,62 @@ export default function TestingSessions(props) { exampleSessionCollection: 'example-sessions', }); - const captureServiceFactory = (specService, captureId) => { - return new ExampleCaptureService(specService, captureId); + const captureServiceFactory = async (specService, captureId) => { + return new ExampleCaptureService(specService); }; - const diffServiceFactory = (specService, additionalCommands, config) => { - return new ExampleDiffService(specService, additionalCommands, config); + const diffServiceFactory = async ( + specService, + captureService, + _rfcState, + additionalCommands, + config, + captureId + ) => { + async function computeInitialDiff() { + const capture = await specService.listCapturedSamples(captureId); + const events = await specService.listEvents(); + + const commandContext = new RfcCommandContext( + 'simulated', + 'simulated', + 'simulated' + ); + + const { + resolvers, + rfcState, + } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + JSON.parse(events), + commandContext, + additionalCommands + ); + let diffs = DiffHelpers.emptyInteractionPointersGroupedByDiff(); + for (const interaction of capture.samples) { + diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( + resolvers, + rfcState, + JsonHelper.fromInteraction(interaction), + interaction.uuid, + diffs + ); + } + return { + diffs, + rfcState, + resolvers, + }; + } + + const { diffs, rfcState } = await computeInitialDiff(); + + return new ExampleDiffService( + specService, + captureService, + config, + diffs, + rfcState + ); }; return ( diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index aea49fb6ed..9240d24149 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -13,11 +13,6 @@ import { import { IHttpInteraction } from '@useoptic/domain-types'; import { ISpecService } from '@useoptic/cli-client/build/spec-service-client'; import { captureId } from '../../components/loaders/ApiLoader'; -import { - cachingResolversAndRfcStateFromEvents, - cachingResolversAndRfcStateFromEventsAndAdditionalCommands, - normalizedDiffFromRfcStateAndInteractions, -} from '@useoptic/domain-utilities'; import { DiffResultHelper, JsonHelper, @@ -28,90 +23,60 @@ import uuidv4 from 'uuid/v4'; import { getOrUndefined } from '@useoptic/domain'; export class ExampleCaptureService implements ICaptureService { + constructor(private specService: ISpecService) {} + async startDiff( events: any[], ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise { return { + diffId: uuidv4(), loadDiffUrl: '', loadUnrecognizedUrlsUrl: '', notificationUrl: '', }; } + + async loadInteraction( + interactionPointer: string + ): Promise { + const capture = await this.specService.listCapturedSamples(captureId); + const interaction = capture.samples.find( + (x: IHttpInteraction) => x.uuid === interactionPointer + ); + return { + interaction, + }; + } } export class ExampleDiffService implements IDiffService { - private readonly diffsPromise: Promise; - constructor( private specService: ISpecService, - private additionalCommands: IRfcCommand[] - ) { - async function computeInitialDiff() { - const capture = await specService.listCapturedSamples(captureId); - const events = await specService.listEvents(); - - const commandContext = new RfcCommandContext( - 'simulated', - 'simulated', - 'simulated' - ); + private captureService: ICaptureService, + private diffConfig: IStartDiffResponse, + private diffs: any, + private rfcState: any + ) {} - const { - resolvers, - rfcState, - } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( - JSON.parse(events), - commandContext, - additionalCommands - ); - const diffs = normalizedDiffFromRfcStateAndInteractions( - resolvers, - rfcState, - capture.samples - ); - return { - diffs, - rfcState, - resolvers, - }; - } - this.diffsPromise = computeInitialDiff(); - } - private _diffId: string = uuidv4(); diffId(): string { - return this._diffId; + return this.diffConfig.diffId; } async listDiffs(): Promise { - const { diffs, rfcState } = await this.diffsPromise; const endpointDiffs = ScalaJSHelpers.toJsArray( - DiffResultHelper.endpointDiffs(diffs, rfcState) + DiffResultHelper.endpointDiffs(this.diffs, this.rfcState) ); return endpointDiffs; } async listUnrecognizedUrls(): Promise { - const { diffs, rfcState } = await this.diffsPromise; - const urls = ScalaJSHelpers.toJsArray( - DiffResultHelper.unmatchedUrls(diffs, rfcState) + DiffResultHelper.unmatchedUrls(this.diffs, this.rfcState) ); - return Promise.resolve(urls); - } - - async loadInteraction( - interactionPointer: string - ): Promise { - const capture = await this.specService.listCapturedSamples(captureId); - const interaction = capture.samples.find( - (x: IHttpInteraction) => x.uuid === interactionPointer - ); - return { - interaction, - }; + return Promise.resolve({ urls }); } async loadStats(): Promise { @@ -124,15 +89,14 @@ export class ExampleDiffService implements IDiffService { } async loadDescription(diff: any): Promise { - const { rfcState } = await this.diffsPromise; - const interaction = await this.loadInteraction( + const interaction = await this.captureService.loadInteraction( diff.firstInteractionPointer ); if (interaction.interaction) { return getOrUndefined( DiffResultHelper.descriptionFromDiff( diff.diff, - rfcState, + this.rfcState, JsonHelper.fromInteraction(interaction.interaction) ) ); @@ -145,9 +109,8 @@ export class ExampleDiffService implements IDiffService { diff: any, interaction: any ): Promise { - const { rfcState } = await this.diffsPromise; return ScalaJSHelpers.toJsArray( - DiffResultHelper.suggestionsForDiff(diff, interaction, rfcState) + DiffResultHelper.suggestionsForDiff(diff, interaction, this.rfcState) ); } @@ -156,14 +119,13 @@ export class ExampleDiffService implements IDiffService { currentInteraction: any, inferPolymorphism: boolean ) { - const { rfcState } = await this.diffsPromise; const bodyPreview = diff.previewBodyRender(currentInteraction); let interactions = []; if (inferPolymorphism) { interactions = await Promise.all( ScalaJSHelpers.toJsArray(diff.interactionPointers).map(async (i) => { - const { interaction } = await this.loadInteraction(i); + const { interaction } = await this.captureService.loadInteraction(i); return JsonHelper.fromInteraction(interaction); }) ); @@ -172,7 +134,7 @@ export class ExampleDiffService implements IDiffService { } const shapePreview = diff.previewShapeRender( - rfcState, + this.rfcState, JsonHelper.jsArrayToVector(interactions), inferPolymorphism ); diff --git a/workspaces/ui/src/services/diff/LocalCliDiffService.ts b/workspaces/ui/src/services/diff/LocalCliDiffService.ts new file mode 100644 index 0000000000..ed84be016d --- /dev/null +++ b/workspaces/ui/src/services/diff/LocalCliDiffService.ts @@ -0,0 +1,141 @@ +import { + ICaptureService, + IDiffService, + IGetDescriptionResponse, + IListDiffsResponse, + IListSuggestionsResponse, + IListUnrecognizedUrlsResponse, + ILoadInteractionResponse, + ILoadStatsResponse, + IRfcCommand, + IStartDiffResponse, +} from './index'; +import { JsonHttpClient } from '@useoptic/client-utilities'; +import { + DiffResultHelper, + getOrUndefined, + JsonHelper, + opticEngine, + ScalaJSHelpers, +} from '@useoptic/domain'; + +export class LocalCliDiffService implements IDiffService { + constructor( + private captureService: ICaptureService, + private baseUrl: string, + private config: IStartDiffResponse, + private rfcState: any + ) {} + diffId(): string { + return this.config.diffId; + } + + async listDiffs(): Promise { + const url = `${this.baseUrl}/diffs`; + const diffsJson = await JsonHttpClient.getJson(url); + const diffs = opticEngine.DiffWithPointersJsonDeserializer.fromJs( + diffsJson + ); + return { + diffs: ScalaJSHelpers.toJsArray( + DiffResultHelper.endpointDiffs(diffs, this.rfcState) + ), + }; + } + + async listUnrecognizedUrls(): Promise { + return Promise.resolve({ + urls: [], + }); + } + + async loadStats(): Promise { + return Promise.resolve({ + captureCompleted: false, + processed: 124, + totalInteractions: 8675309, + }); + } + + async loadDescription(diff: any): Promise { + const interaction = await this.captureService.loadInteraction( + diff.firstInteractionPointer + ); + if (interaction.interaction) { + return getOrUndefined( + DiffResultHelper.descriptionFromDiff( + diff.diff, + this.rfcState, + JsonHelper.fromInteraction(interaction.interaction) + ) + ); + } else { + return null; + } + } + + async listSuggestions( + diff: any, + interaction: any + ): Promise { + return ScalaJSHelpers.toJsArray( + DiffResultHelper.suggestionsForDiff(diff, interaction, this.rfcState) + ); + } + + async loadInitialPreview( + diff: any, + currentInteraction: any, + inferPolymorphism: boolean + ) { + const bodyPreview = diff.previewBodyRender(currentInteraction); + + let interactions = []; + if (inferPolymorphism) { + interactions = await Promise.all( + ScalaJSHelpers.toJsArray(diff.interactionPointers).map(async (i) => { + const { interaction } = await this.captureService.loadInteraction(i); + return JsonHelper.fromInteraction(interaction); + }) + ); + } else { + interactions = [currentInteraction]; + } + + const shapePreview = diff.previewShapeRender( + this.rfcState, + JsonHelper.jsArrayToVector(interactions), + inferPolymorphism + ); + + return { + bodyPreview, + shapePreview: shapePreview.shape, + suggestion: shapePreview.suggestion, + }; + } +} + +export class LocalCliCaptureService implements ICaptureService { + constructor(private baseUrl: string) {} + + async startDiff( + events: any[], + ignoreRequests: string[], + additionalCommands: IRfcCommand[] + ): Promise { + const url = `${this.baseUrl}/diffs`; + return JsonHttpClient.postJson(url, { + ignoreRequests, + additionalCommands, + events, + }); + } + + loadInteraction( + interactionPointer: string + ): Promise { + const url = `${this.baseUrl}/interactions/${interactionPointer}`; + return JsonHttpClient.getJson(url); + } +} diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 4f02e4a404..edbcd31913 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -6,14 +6,14 @@ export interface ICaptureService { ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise; + loadInteraction( + interactionPointer: string + ): Promise; } export interface IDiffService { diffId(): string; // backend - loadInteraction( - interactionPointer: string - ): Promise; listDiffs(): Promise; listUnrecognizedUrls(): Promise; loadStats(): Promise; @@ -39,6 +39,7 @@ export interface ILoadStatsResponse { } export interface IStartDiffResponse { + diffId: string; notificationUrl: string; loadDiffUrl: string; loadUnrecognizedUrlsUrl: string; @@ -48,7 +49,6 @@ export interface ILoadInteractionResponse { } export interface IListDiffsResponse { diffs: any[]; - rfcState: any; } export interface IListUnrecognizedUrlsResponse { From 87eefae2e71d864a8c94341a67a187562ed4786b Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Thu, 25 Jun 2020 15:57:38 -0400 Subject: [PATCH 12/85] example service result should match interface --- workspaces/ui/src/services/diff/ExampleDiffService.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index 9240d24149..b15788e50c 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -68,7 +68,7 @@ export class ExampleDiffService implements IDiffService { const endpointDiffs = ScalaJSHelpers.toJsArray( DiffResultHelper.endpointDiffs(this.diffs, this.rfcState) ); - return endpointDiffs; + return Promise.resolve({ diffs: endpointDiffs }); } async listUnrecognizedUrls(): Promise { From 7121120b42cf467f4d87dcbc89c153f2da0e5c66 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Fri, 26 Jun 2020 16:25:08 -0400 Subject: [PATCH 13/85] constructor should receive the correct inputs --- workspaces/ui/src/entrypoints/localcli.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workspaces/ui/src/entrypoints/localcli.js b/workspaces/ui/src/entrypoints/localcli.js index b289211297..38f15d8f71 100644 --- a/workspaces/ui/src/entrypoints/localcli.js +++ b/workspaces/ui/src/entrypoints/localcli.js @@ -30,7 +30,7 @@ export default function LocalCli(props) { captureId ) { const baseUrl = `/api/specs/${apiId}/captures/${captureId}/diffs/${config.diffId}`; - return new LocalCliDiffService(captureService, baseUrl, rfcState); + return new LocalCliDiffService(captureService, baseUrl, config, rfcState); }; return ( From 11168872664f4d1dab4c9222ea3a9cf5cb72742b Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Fri, 26 Jun 2020 16:25:43 -0400 Subject: [PATCH 14/85] clients should be able to subscribe to updates from diffs --- workspaces/cli-server/src/routers/capture-router.ts | 2 +- workspaces/ui/src/contexts/CaptureContext.js | 10 ++++++++++ workspaces/ui/src/services/diff/ExampleDiffService.ts | 4 +--- workspaces/ui/src/services/diff/index.ts | 4 +--- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index c73581b30f..320660520f 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -108,7 +108,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { res.json({ diffId: id, - notificationsUrl: `${req.baseUrl}/${id}/notifications`, + notificationsUrl: `${req.baseUrl}/diffs/${id}/notifications`, }); } ); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 60c0f48dd1..ac0dfb4662 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -44,6 +44,7 @@ export function CaptureStateStore(props) { } } useEffect(() => { + let notifications; async function task() { const captureService = await captureServiceFactory( specService, @@ -57,6 +58,10 @@ export function CaptureStateStore(props) { [], additionalCommands ); + const notifications = new EventSource(config.notificationsUrl); + notifications.onmessage = (event) => { + debugger; + }; const rfcState = rfcService.currentState(rfcId); const diffServiceForCapture = await diffServiceFactory( @@ -71,6 +76,11 @@ export function CaptureStateStore(props) { setDiffService(diffServiceForCapture); } task(); + return function cleanup() { + if (notifications) { + notifications.close(); + } + }; }, [captureId, additionalCommands]); useEffect(() => { diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index b15788e50c..ca915a3162 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -32,9 +32,7 @@ export class ExampleCaptureService implements ICaptureService { ): Promise { return { diffId: uuidv4(), - loadDiffUrl: '', - loadUnrecognizedUrlsUrl: '', - notificationUrl: '', + notificationsUrl: '', }; } diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index edbcd31913..2660752492 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -40,9 +40,7 @@ export interface ILoadStatsResponse { export interface IStartDiffResponse { diffId: string; - notificationUrl: string; - loadDiffUrl: string; - loadUnrecognizedUrlsUrl: string; + notificationsUrl?: string; } export interface ILoadInteractionResponse { interaction: IHttpInteraction; From 8dd21041e432f82474185c842edfcce7b2b05c64 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Fri, 26 Jun 2020 16:41:22 -0400 Subject: [PATCH 15/85] merge in latest --- workspaces/ui/src/contexts/CaptureContext.js | 14 ++++++++++++-- workspaces/ui/src/entrypoints/localcli.js | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 60c0f48dd1..7f6f78936c 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -43,7 +43,7 @@ export function CaptureStateStore(props) { setDiffId(diffService.diffId()); } } - useEffect(() => { + useEffect(async () => { async function task() { const captureService = await captureServiceFactory( specService, @@ -57,6 +57,12 @@ export function CaptureStateStore(props) { [], additionalCommands ); + + const notifications = new EventSource(config.notificationUrl); + notifications.onmessage = (event) => { + debugger; + }; + const rfcState = rfcService.currentState(rfcId); const diffServiceForCapture = await diffServiceFactory( @@ -69,8 +75,12 @@ export function CaptureStateStore(props) { ); setCaptureService(captureService); setDiffService(diffServiceForCapture); + + return notifications; } - task(); + + const notifications = await task(); + return () => notifications.close(); }, [captureId, additionalCommands]); useEffect(() => { diff --git a/workspaces/ui/src/entrypoints/localcli.js b/workspaces/ui/src/entrypoints/localcli.js index b289211297..38f15d8f71 100644 --- a/workspaces/ui/src/entrypoints/localcli.js +++ b/workspaces/ui/src/entrypoints/localcli.js @@ -30,7 +30,7 @@ export default function LocalCli(props) { captureId ) { const baseUrl = `/api/specs/${apiId}/captures/${captureId}/diffs/${config.diffId}`; - return new LocalCliDiffService(captureService, baseUrl, rfcState); + return new LocalCliDiffService(captureService, baseUrl, config, rfcState); }; return ( From a310fa50345b3c84839738cb0467f92402e62a27 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Fri, 26 Jun 2020 16:41:59 -0400 Subject: [PATCH 16/85] diffs should use ignoreRequests from config --- .../cli-client/src/spec-service-client.ts | 8 ++++ .../cli-server/src/routers/spec-router.ts | 41 ++++++++++++------- .../ui/src/components/loaders/ApiLoader.js | 3 +- workspaces/ui/src/contexts/CaptureContext.js | 4 +- 4 files changed, 38 insertions(+), 18 deletions(-) diff --git a/workspaces/cli-client/src/spec-service-client.ts b/workspaces/cli-client/src/spec-service-client.ts index cb16b56b07..8a35b54759 100644 --- a/workspaces/cli-client/src/spec-service-client.ts +++ b/workspaces/cli-client/src/spec-service-client.ts @@ -1,6 +1,7 @@ import Bottleneck from 'bottleneck'; import { EventEmitter } from 'events'; import { JsonHttpClient } from '@useoptic/client-utilities'; +import { IApiCliConfig } from '@useoptic/cli-config'; const outgoingPoll = new Bottleneck({ maxConcurrent: 1, @@ -21,6 +22,7 @@ type ListCapturedSamplesResponse = any; type GetCaptureSummaryResponse = any; export interface ISpecService { + loadConfig(): Promise<{ config: IApiCliConfig }>; listEvents(): Promise; saveEvents(eventStore: IEventStore, rfcId: RfcId): Promise; @@ -41,6 +43,12 @@ export class Client implements ISpecService { private baseUrl: string = '/api' ) {} + loadConfig(): Promise<{ config: IApiCliConfig }> { + return JsonHttpClient.getJson( + `${this.baseUrl}/specs/${this.specId}/config` + ); + } + listEvents() { return JsonHttpClient.getJsonAsText( `${this.baseUrl}/specs/${this.specId}/events` diff --git a/workspaces/cli-server/src/routers/spec-router.ts b/workspaces/cli-server/src/routers/spec-router.ts index 1bed6486b0..16d1c3d82a 100644 --- a/workspaces/cli-server/src/routers/spec-router.ts +++ b/workspaces/cli-server/src/routers/spec-router.ts @@ -171,21 +171,26 @@ ${events.map((x: any) => JSON.stringify(x)).join('\n,')} res.sendStatus(404); return; } - - const paths = await getPathsRelativeToCwd(session.path); - const { configPath, capturesPath, exampleRequestsPath } = paths; - const config = await readApiConfig(configPath); - const capturesHelpers = new CapturesHelpers(capturesPath); - const exampleRequestsHelpers = new ExampleRequestsHelpers( - exampleRequestsPath - ); - req.optic = { - config, - paths, - capturesHelpers, - exampleRequestsHelpers, - }; - next(); + try { + const paths = await getPathsRelativeToCwd(session.path); + const { configPath, capturesPath, exampleRequestsPath } = paths; + const config = await readApiConfig(configPath); + const capturesHelpers = new CapturesHelpers(capturesPath); + const exampleRequestsHelpers = new ExampleRequestsHelpers( + exampleRequestsPath + ); + req.optic = { + config, + paths, + capturesHelpers, + exampleRequestsHelpers, + }; + next(); + } catch (e) { + res.status(500).json({ + message: e.message, + }); + } } const router = express.Router({ mergeParams: true }); @@ -263,6 +268,12 @@ ${events.map((x: any) => JSON.stringify(x)).join('\n,')} }); }); + router.get('/config', async (req, res) => { + res.json({ + config: req.optic.config, + }); + }); + const captureRouter = makeCaptureRouter({ idGenerator: new DefaultIdGenerator(), interactionPointerConverterFactory: (config: { diff --git a/workspaces/ui/src/components/loaders/ApiLoader.js b/workspaces/ui/src/components/loaders/ApiLoader.js index 49869b0aa2..895a9966da 100644 --- a/workspaces/ui/src/components/loaders/ApiLoader.js +++ b/workspaces/ui/src/components/loaders/ApiLoader.js @@ -118,10 +118,11 @@ async function createExampleSpecServiceFactory(data) { const specService = { eventEmitter, - getConfig: async function () { + loadConfig: async function () { return Promise.resolve({ config: { apiName: 'Example API', + ignoreRequests: [], }, }); }, diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index ac0dfb4662..54fbc405b5 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -51,11 +51,11 @@ export function CaptureStateStore(props) { captureId ); //@TODO: handle error - //@TODO:getConfig for ignoreRequests config + const apiConfig = await specService.loadConfig(); const events = eventStore.listEvents(rfcId); const config = await captureService.startDiff( ScalaJSHelpers.eventsJsArray(events), - [], + apiConfig.config.ignoreRequests || [], additionalCommands ); const notifications = new EventSource(config.notificationsUrl); From c8b984b2822785690c19554a774ca8e32c55d589 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Fri, 26 Jun 2020 16:55:42 -0400 Subject: [PATCH 17/85] capture context should not listen for notifications when the url is not present --- workspaces/ui/src/contexts/CaptureContext.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 54fbc405b5..0f9861cf4c 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -58,10 +58,12 @@ export function CaptureStateStore(props) { apiConfig.config.ignoreRequests || [], additionalCommands ); - const notifications = new EventSource(config.notificationsUrl); - notifications.onmessage = (event) => { - debugger; - }; + if (config.notificationsUrl) { + const notifications = new EventSource(config.notificationsUrl); + notifications.onmessage = (event) => { + debugger; + }; + } const rfcState = rfcService.currentState(rfcId); const diffServiceForCapture = await diffServiceFactory( From a9cddcd2c2d6b3c4748e7ddd59ec4d43021263e7 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Sat, 27 Jun 2020 11:46:55 -0400 Subject: [PATCH 18/85] should pool (for debug) --- workspaces/ui/src/contexts/CaptureContext.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index ac0dfb4662..fe7cd53a4d 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -31,7 +31,7 @@ export function CaptureStateStore(props) { diffServiceFactory, } = useServices(); - async function restart() { + async function update() { if (diffService) { diffService.loadStats().then(setStats); diffService.listDiffs().then((x) => { @@ -58,10 +58,12 @@ export function CaptureStateStore(props) { [], additionalCommands ); - const notifications = new EventSource(config.notificationsUrl); + + notifications = new EventSource(config.notificationsUrl); notifications.onmessage = (event) => { debugger; }; + const rfcState = rfcService.currentState(rfcId); const diffServiceForCapture = await diffServiceFactory( @@ -84,8 +86,10 @@ export function CaptureStateStore(props) { }, [captureId, additionalCommands]); useEffect(() => { - restart(); - return () => {}; + const poll = setInterval(() => update(), 3000); + return () => { + clearInterval(poll); + }; }, [diffService]); if (!diffService) { @@ -99,7 +103,7 @@ export function CaptureStateStore(props) { const value = { diffService, captureService, - restart, + restart: update, updatedAdditionalCommands, diffId, endpointDiffs, From 6e48072607de0b66aa10db8ba6531281d3c0c4d6 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Sat, 27 Jun 2020 14:36:40 -0400 Subject: [PATCH 19/85] - webpack dev server should disable compression to allow Server Sent Events to pass unmangled - diff worker should build stats and undocumented-urls --- .../diff/helpers/UndocumentedUrlHelpers.scala | 24 ++++++- .../main/scala/com/useoptic/dsa/Counter.scala | 2 + workspaces/cli-scripts/src/index.ts | 8 ++- .../cli-server/src/diffs/diff-manager.ts | 10 +-- .../cli-server/src/routers/capture-router.ts | 69 ++++++++++++------- .../cli-shared/src/diffs/diff-worker.ts | 67 ++++++++++++++---- .../ui/config/webpackDevServer.config.js | 4 +- .../components/diff/v2/CaptureManagerPage.js | 4 +- workspaces/ui/src/contexts/CaptureContext.js | 10 ++- .../src/services/diff/ExampleDiffService.ts | 18 +++-- .../src/services/diff/LocalCliDiffService.ts | 12 ++-- workspaces/ui/src/services/diff/index.ts | 4 +- 12 files changed, 162 insertions(+), 70 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala index 19be0a6708..dc8743b5bd 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala @@ -6,14 +6,14 @@ import com.useoptic.diff.helpers.UndocumentedUrlHelpers.{MethodAndPath, UrlCount import com.useoptic.dsa.Counter import com.useoptic.types.capture.HttpInteraction -import scala.scalajs.js.annotation.{JSExport, JSExportAll} +import scala.scalajs.js.annotation.{JSExport, JSExportAll, JSExportTopLevel} @JSExport @JSExportAll class UndocumentedUrlHelpers { def countUndocumentedUrls(spec: RfcState, interactions: Seq[HttpInteraction]): UrlCounter = { val grouping = Utilities.groupPathsByParentId(spec.requestsState.pathComponents) - val urlCounter = UndocumentedUrlHelpers.newCounter + val urlCounter = UndocumentedUrlHelpers.newCounter() interactions.foreach(interaction => { val pathId = Utilities.resolvePathByGrouping(interaction.request.path, grouping) if (pathId.isEmpty) { @@ -24,10 +24,28 @@ class UndocumentedUrlHelpers { } } +@JSExport +@JSExportAll +class UndocumentedUrlIncrementalHelpers(spec: RfcState) { + val grouping = Utilities.groupPathsByParentId(spec.requestsState.pathComponents) + + def countUndocumentedUrls(interaction: HttpInteraction, urlCounter: UrlCounter): UrlCounter = { + val pathId = Utilities.resolvePathByGrouping(interaction.request.path, grouping) + if (pathId.isEmpty) { + urlCounter.increment(MethodAndPath(interaction.request.method, interaction.request.path)) + } + urlCounter + } +} + +@JSExportTopLevel("UndocumentedUrlHelpers") +@JSExportAll object UndocumentedUrlHelpers { type UrlCounter = Counter[MethodAndPath] case class MethodAndPath(method: String, path: String) - def newCounter = new Counter[MethodAndPath] + def newCounter() = { + new Counter[MethodAndPath] + } } diff --git a/core/optic/shared/src/main/scala/com/useoptic/dsa/Counter.scala b/core/optic/shared/src/main/scala/com/useoptic/dsa/Counter.scala index 7215876b13..1de5424348 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/dsa/Counter.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/dsa/Counter.scala @@ -1,7 +1,9 @@ package com.useoptic.dsa import scala.collection.mutable.Map +import scala.scalajs.js.annotation.JSExportAll +@JSExportAll class Counter[T] { var counts: Map[T, Int] = Map() diff --git a/workspaces/cli-scripts/src/index.ts b/workspaces/cli-scripts/src/index.ts index 6efd80a46e..ae8f2ead1c 100644 --- a/workspaces/cli-scripts/src/index.ts +++ b/workspaces/cli-scripts/src/index.ts @@ -13,7 +13,13 @@ export function runScriptByName(name: string, ...args: string[]) { } export function runManagedScript(modulePath: string, ...args: string[]) { - const child = cp.fork(modulePath, args, { execArgv: ['--inspect=0'] }); + //@GOTCHA: execArgv is inherited from the parent, so if you are using --inspect in the parent, the child will fail + // instead, you can use --inspect=0 or --inspect= + + const isDebuggingEnabled = + process.env.OPTIC_DAEMON_ENABLE_DEBUGGING === 'yes'; + const execArgv = isDebuggingEnabled ? ['--inspect=63694'] : []; + const child = cp.fork(modulePath, args, { execArgv }); return child; } diff --git a/workspaces/cli-server/src/diffs/diff-manager.ts b/workspaces/cli-server/src/diffs/diff-manager.ts index a9c8b9a56f..b8d2804647 100644 --- a/workspaces/cli-server/src/diffs/diff-manager.ts +++ b/workspaces/cli-server/src/diffs/diff-manager.ts @@ -1,8 +1,10 @@ import { EventEmitter } from 'events'; import { runManagedScriptByName } from '@useoptic/cli-scripts'; -import { IDiffProjectionEmitterConfig } from '@useoptic/cli-shared/build/diffs/diff-worker'; +import { + getDiffOutputPaths, + IDiffProjectionEmitterConfig, +} from '@useoptic/cli-shared/build/diffs/diff-worker'; import { ChildProcess } from 'child_process'; -import { getDiffOutputBaseDirectory } from '../routers/capture-router'; export interface IDiffManagerConfig { diffId: string; @@ -17,7 +19,7 @@ export class DiffManager { constructor() {} async start(config: IDiffManagerConfig) { - const outputPaths = getDiffOutputBaseDirectory(config); + const outputPaths = getDiffOutputPaths(config); const scriptConfig: IDiffProjectionEmitterConfig = { captureId: config.captureId, diffId: config.diffId, @@ -26,7 +28,7 @@ export class DiffManager { ignoreRequestsFilePath: outputPaths.ignoreRequests, additionalCommandsFilePath: outputPaths.additionalCommands, }; - + console.log(JSON.stringify(scriptConfig)); const child = runManagedScriptByName( 'emit-diff-projections', JSON.stringify(scriptConfig) diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index 320660520f..270c87e3fe 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -1,14 +1,14 @@ import express from 'express'; import bodyParser from 'body-parser'; -import { delay, IdGenerator } from '@useoptic/cli-shared'; +import { IdGenerator } from '@useoptic/cli-shared'; import { CaptureId } from '@useoptic/saas-types'; import { IInteractionPointerConverter, LocalCaptureInteractionContext, } from '@useoptic/cli-shared/build/captures/avro/file-system/interaction-iterator'; import { DiffManager } from '../diffs/diff-manager'; -import path from 'path'; import fs from 'fs-extra'; +import { getDiffOutputPaths } from '@useoptic/cli-shared/build/diffs/diff-worker'; export interface ICaptureRouterDependencies { idGenerator: IdGenerator; @@ -77,7 +77,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { const { ignoreRequests, events, additionalCommands } = req.body; const id = dependencies.idGenerator.nextId(); const manager = new DiffManager(); - const diffOutputPaths = getDiffOutputBaseDirectory({ + const diffOutputPaths = getDiffOutputPaths({ captureBaseDirectory: req.optic.paths.capturesPath, captureId, diffId: id, @@ -125,7 +125,8 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { } function emit(data: any) { - res.write(`data: ${JSON.stringify(data)}\n\n`); + console.log('emit'); + res.write(`data: {}\n\n`); } const headers = { @@ -142,6 +143,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { req.on('close', () => { diffMetadata.manager.stop(); + diffs.delete(diffId); }); }); @@ -149,7 +151,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { router.get('/diffs/:diffId/diffs', async (req, res) => { const { captureId, diffId } = req.params; - const diffOutputPaths = getDiffOutputBaseDirectory({ + const diffOutputPaths = getDiffOutputPaths({ captureBaseDirectory: req.optic.paths.capturesPath, captureId, diffId, @@ -164,6 +166,42 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); } }); + router.get('/diffs/:diffId/undocumented-urls', async (req, res) => { + const { captureId, diffId } = req.params; + const diffOutputPaths = getDiffOutputPaths({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + diffId, + }); + try { + //@TODO: streamify + const contents = await fs.readJson(diffOutputPaths.undocumentedUrls); + res.json({ + urls: contents, + }); + } catch (e) { + res.status(404).json({ + message: e.message, + }); + } + }); + router.get('/diffs/:diffId/stats', async (req, res) => { + const { captureId, diffId } = req.params; + const diffOutputPaths = getDiffOutputPaths({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + diffId, + }); + try { + //@TODO: streamify + const contents = await fs.readJson(diffOutputPaths.stats); + res.json(contents); + } catch (e) { + res.status(404).json({ + message: e.message, + }); + } + }); //////////////////////////////////////////////////////////////////////////////// router.get('/interactions/:interactionPointer', async (req, res) => { @@ -186,24 +224,3 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { return router; } - -export function getDiffOutputBaseDirectory(values: { - captureBaseDirectory: string; - captureId: string; - diffId: string; -}) { - const { captureBaseDirectory, captureId, diffId } = values; - const base = path.join(captureBaseDirectory, captureId, 'diffs', diffId); - const diffs = path.join(base, 'diffs.json'); - const events = path.join(base, 'events.json'); - const ignoreRequests = path.join(base, 'ignoreRequests.json'); - const additionalCommands = path.join(base, 'additionalCommands.json'); - - return { - base, - diffs, - events, - ignoreRequests, - additionalCommands, - }; -} diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts index de9328fe93..410a35e4b6 100644 --- a/workspaces/cli-shared/src/diffs/diff-worker.ts +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -24,6 +24,31 @@ export interface IDiffProjectionEmitterConfig { captureId: string; } +export function getDiffOutputPaths(values: { + captureBaseDirectory: string; + captureId: string; + diffId: string; +}) { + const { captureBaseDirectory, captureId, diffId } = values; + const base = path.join(captureBaseDirectory, captureId, 'diffs', diffId); + const diffs = path.join(base, 'diffs.json'); + const stats = path.join(base, 'stats.json'); + const undocumentedUrls = path.join(base, 'undocumentedUrls.json'); + const events = path.join(base, 'events.json'); + const ignoreRequests = path.join(base, 'ignoreRequests.json'); + const additionalCommands = path.join(base, 'additionalCommands.json'); + + return { + base, + diffs, + stats, + undocumentedUrls, + events, + ignoreRequests, + additionalCommands, + }; +} + export class DiffWorker { constructor(private config: IDiffProjectionEmitterConfig) {} @@ -75,19 +100,17 @@ export class DiffWorker { ); debugger; let diffs = DiffHelpers.emptyInteractionPointersGroupedByDiff(); - + let undocumentedUrls = opticEngine.UndocumentedUrlHelpers.newCounter(); + const undocumentedUrlHelpers = new opticEngine.com.useoptic.diff.helpers.UndocumentedUrlIncrementalHelpers( + rfcState + ); let interactionCounter = BigInt(0); const batcher = new Bottleneck.Batcher({ maxSize: 100, maxTime: 100, }); - const diffOutputFilePath = path.join( - this.config.captureBaseDirectory, - this.config.captureId, - 'diffs', - this.config.diffId, - 'diffs.json' - ); + const diffOutputPaths = getDiffOutputPaths(this.config); + const queue = new Bottleneck({ maxConcurrent: 1, }); @@ -96,11 +119,19 @@ export class DiffWorker { const c = interactionCounter.toString(); console.time(`flushing ${c}`); - await fs.ensureFile(diffOutputFilePath); - await fs.writeJson( - diffOutputFilePath, + const outputDiff = fs.writeJson( + diffOutputPaths.diffs, opticEngine.DiffWithPointersJsonSerializer.toJs(diffs) ); + const outputCount = fs.writeJson( + diffOutputPaths.undocumentedUrls, + opticEngine.UrlCounterJsonSerializer.toFriendlyJs(undocumentedUrls) + ); + const outputStats = fs.writeJson(diffOutputPaths.stats, { + interactionsCounter: c, + }); + + await Promise.all([outputDiff, outputCount, outputStats]); if (process && process.send) { process.send({ @@ -110,6 +141,7 @@ export class DiffWorker { } else { console.log(interactionCounter.toString()); } + console.timeEnd(`flushing ${c}`); } @@ -123,6 +155,9 @@ export class DiffWorker { captureId: this.config.captureId, } ); + + await fs.ensureFile(diffOutputPaths.diffs); + await fs.ensureFile; await flush(); for await (const item of interactionIterator) { @@ -130,11 +165,12 @@ export class DiffWorker { const { batchId, interaction, index } = item; interactionCounter = interactionCounter + BigInt(1); + const deserializedInteraction = JsonHelper.fromInteraction(interaction); console.time(`diff ${batchId} ${index}`); diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( resolvers, rfcState, - JsonHelper.fromInteraction(interaction), + deserializedInteraction, interactionPointerConverter.toPointer(interaction, { interactionIndex: index, batchId, @@ -142,6 +178,13 @@ export class DiffWorker { diffs ); console.timeEnd(`diff ${batchId} ${index}`); + console.time(`count ${batchId} ${index}`); + undocumentedUrls = undocumentedUrlHelpers.countUndocumentedUrls( + deserializedInteraction, + undocumentedUrls + ); + console.timeEnd(`count ${batchId} ${index}`); + // } batcher.add(null); diff --git a/workspaces/ui/config/webpackDevServer.config.js b/workspaces/ui/config/webpackDevServer.config.js index 33ab8d3a9d..b64dceebf1 100644 --- a/workspaces/ui/config/webpackDevServer.config.js +++ b/workspaces/ui/config/webpackDevServer.config.js @@ -10,7 +10,7 @@ const fs = require('fs'); const protocol = process.env.HTTPS === 'true' ? 'https' : 'http'; const host = process.env.HOST || '0.0.0.0'; -module.exports = function(proxy, allowedHost) { +module.exports = function (proxy, allowedHost) { return { // WebpackDevServer 2.4.3 introduced a security fix that prevents remote // websites from potentially accessing local content through DNS rebinding: @@ -31,7 +31,7 @@ module.exports = function(proxy, allowedHost) { disableHostCheck: !proxy || process.env.DANGEROUSLY_DISABLE_HOST_CHECK === 'true', // Enable gzip compression of generated files. - compress: true, + compress: false, // Silence WebpackDevServer's own logs since they're generally not useful. // It will still show compile warnings and errors with this setting. clientLogLevel: 'none', diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index ceab20fb64..dd8924a1b9 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -326,8 +326,8 @@ function CaptureDiffStates() {
Optic observed{' '} - , - yielding in and{' '} + , + yielding and{' '} { - debugger; + const notificationsSource = new EventSource(config.notificationsUrl); + notificationsSource.onmessage = (event) => {}; + notificationsSource.onerror = (e) => { + console.error(e); + }; + notificationsSource.onopen = (e) => { + console.log(e); }; } const rfcState = rfcService.currentState(rfcId); diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index ca915a3162..dde6bff7b0 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -20,7 +20,7 @@ import { ScalaJSHelpers, } from '@useoptic/domain/build'; import uuidv4 from 'uuid/v4'; -import { getOrUndefined } from '@useoptic/domain'; +import { getOrUndefined, opticEngine } from '@useoptic/domain'; export class ExampleCaptureService implements ICaptureService { constructor(private specService: ISpecService) {} @@ -70,19 +70,25 @@ export class ExampleDiffService implements IDiffService { } async listUnrecognizedUrls(): Promise { - const urls = ScalaJSHelpers.toJsArray( - DiffResultHelper.unmatchedUrls(this.diffs, this.rfcState) + const capture = await this.specService.listCapturedSamples(captureId); + const samplesSeq = JsonHelper.jsArrayToSeq( + capture.samples.map((x) => JsonHelper.fromInteraction(x)) + ); + const undocumentedUrlHelpers = new opticEngine.com.useoptic.diff.helpers.UndocumentedUrlHelpers(); + const counter = undocumentedUrlHelpers.countUndocumentedUrls( + this.rfcState, + samplesSeq ); + const urls = opticEngine.UrlCounterJsonSerializer.toFriendlyJs(counter); return Promise.resolve({ urls }); } async loadStats(): Promise { const capture = await this.specService.listCapturedSamples(captureId); + return Promise.resolve({ - totalInteractions: capture.samples.length, - processed: capture.samples.length, - captureCompleted: true, + interactionsCounter: capture.samples.length.toString(), }); } diff --git a/workspaces/ui/src/services/diff/LocalCliDiffService.ts b/workspaces/ui/src/services/diff/LocalCliDiffService.ts index ed84be016d..583d2e4572 100644 --- a/workspaces/ui/src/services/diff/LocalCliDiffService.ts +++ b/workspaces/ui/src/services/diff/LocalCliDiffService.ts @@ -44,17 +44,13 @@ export class LocalCliDiffService implements IDiffService { } async listUnrecognizedUrls(): Promise { - return Promise.resolve({ - urls: [], - }); + const url = `${this.baseUrl}/undocumented-urls`; + return JsonHttpClient.getJson(url); } async loadStats(): Promise { - return Promise.resolve({ - captureCompleted: false, - processed: 124, - totalInteractions: 8675309, - }); + const url = `${this.baseUrl}/stats`; + return JsonHttpClient.getJson(url); } async loadDescription(diff: any): Promise { diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 2660752492..9019fe3c05 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -33,9 +33,7 @@ export interface IDiffService { export interface IRfcCommand {} export interface ILoadStatsResponse { - totalInteractions: number; - processed: number; - captureCompleted: boolean; + interactionsCounter: string; } export interface IStartDiffResponse { From fe9cc5bbc2fd221b358eee7c8a80d581406fd902 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Sat, 27 Jun 2020 15:23:16 -0400 Subject: [PATCH 20/85] progress --- .../scala/com/useoptic/CompareEquality.scala | 14 +- .../com/useoptic/ux/DiffResultHelper.scala | 6 + .../cli-server/src/routers/capture-router.ts | 3 + .../components/diff/v2/CaptureManagerPage.js | 13 +- .../ui/src/components/diff/v2/DiffPageNew.js | 3 +- .../ui/src/components/diff/v2/DiffPreview.js | 21 ++- workspaces/ui/src/contexts/CaptureContext.js | 16 +- .../ui/src/contexts/TrafficSessionContext.js | 141 ------------------ 8 files changed, 58 insertions(+), 159 deletions(-) delete mode 100644 workspaces/ui/src/contexts/TrafficSessionContext.js diff --git a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala index 331713b463..719bc96ab9 100644 --- a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala +++ b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala @@ -3,8 +3,9 @@ package com.useoptic import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.interactions.InteractionDiffResult import com.useoptic.diff.shapes.ShapeDiffResult -import com.useoptic.ux.{BodyShapeDiffBlock, DiffBlock} +import com.useoptic.ux.{BodyShapeDiffBlock, DiffBlock, NewRegionDiff} +import scala.scalajs.js import scala.scalajs.js.annotation.{JSExport, JSExportAll} @JSExport @@ -20,4 +21,15 @@ object CompareEquality { def betweenWithoutCommands(a: InteractiveDiffInterpretation, b: InteractiveDiffInterpretation): Boolean = { a.action == b.action && a.pastTenseAction == a.pastTenseAction && a.commands.size == b.commands.size } + + + def between(aNewRegions: js.Array[NewRegionDiff], bNewRegions: js.Array[NewRegionDiff]): Boolean = { + if (aNewRegions.size == bNewRegions.size) { + aNewRegions.zip(bNewRegions).forall { + case (a, b) => a.isSameAs(b) + } + } else { + false + } + } } diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index bc2605b459..58337c9e7d 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -180,6 +180,12 @@ case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[Int @JSExportAll abstract class NewRegionDiff { + + def isSameAs(b: NewRegionDiff): Boolean = { + this.diff == b.diff && + this.interactionPointers == b.interactionPointers + } + val diff: InteractionDiffResult val interactionPointers: Seq[String] val inRequest: Boolean diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index 320660520f..d3d2205fae 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -125,7 +125,10 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { } function emit(data: any) { + res.write('event: updated\n'); res.write(`data: ${JSON.stringify(data)}\n\n`); + // @ts-ignore + res.flush(); } const headers = { diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index ceab20fb64..240ba57dc2 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -18,10 +18,6 @@ import WarningIcon from '@material-ui/icons/Warning'; import { Link, Redirect, Route, Switch, useHistory } from 'react-router-dom'; import Chip from '@material-ui/core/Chip'; import { dumpSpecServiceState } from '../../../utilities/dump-spec-service-state'; -import { - TrafficSessionContext, - TrafficSessionStore, -} from '../../../contexts/TrafficSessionContext'; import { GenericContextFactory } from '../../../contexts/GenericContextFactory'; import { useServices, @@ -282,12 +278,9 @@ function CaptureChooserComponent(props) { function RequestDiffWrapper(props) { const specService = useSpecService(); return ( - - - + // sessionId={props.match.params.captureId} + // specService={specService} + ); } diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 38dd48dda9..dd8bf50f87 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -6,7 +6,6 @@ import { EndpointsContextStore, withEndpointsContext, } from '../../../contexts/EndpointContext'; -import { withTrafficSessionContext } from '../../../contexts/TrafficSessionContext'; import { SpecServiceContext, withSpecServiceContext, @@ -208,6 +207,8 @@ function _DiffPageContent(props) { diffsForThisEndpoint ); + console.log('hasNewRegions', hasNewRegions); + return ( {({ ignoreDiff, ignoredDiffs }) => ( diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 1cbe34efed..b47462ece4 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -335,6 +335,7 @@ function _NewRegions(props) { method, fullPath, } = props; + const classes = useStyles(); const { diffService, captureService } = useCaptureContext(); @@ -514,6 +515,7 @@ function _NewRegions(props) { return ( ); @@ -527,6 +529,7 @@ function _NewRegions(props) { return ( ); @@ -625,7 +628,23 @@ function _NewRegions(props) { ); } -export const NewRegions = withDiffContext(_NewRegions); +export class NewRegions extends React.Component { + shouldComponentUpdate(nextProps, nextState, nextContext) { + const result = CompareEquality.between( + nextProps.newRegions, + this.props.newRegions + ); + + console.log('rerender ', result); + //@todo add ignore here + return !result; + } + + render() { + console.log('rendering all over again'); + return <_NewRegions {...this.props} />; + } +} export const BreadcumbX = (props) => { const classes = useStyles(); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index fe7cd53a4d..3a16994e5a 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -4,6 +4,8 @@ import { useServices } from './SpecServiceContext'; import { RfcContext } from './RfcContext'; import { ScalaJSHelpers } from '@useoptic/domain'; +let notifications; + export const CaptureContext = React.createContext(null); export function useCaptureContext() { @@ -44,7 +46,6 @@ export function CaptureStateStore(props) { } } useEffect(() => { - let notifications; async function task() { const captureService = await captureServiceFactory( specService, @@ -60,9 +61,14 @@ export function CaptureStateStore(props) { ); notifications = new EventSource(config.notificationsUrl); - notifications.onmessage = (event) => { - debugger; - }; + // notifications.onopen = (e) => { + // console.log('GOT OPEN'); + // console.log(e); + // }; + // notifications.onmessage = (e) => { + // console.log('GOT HERE'); + // console.log(e); + // }; const rfcState = rfcService.currentState(rfcId); @@ -86,7 +92,7 @@ export function CaptureStateStore(props) { }, [captureId, additionalCommands]); useEffect(() => { - const poll = setInterval(() => update(), 3000); + const poll = setInterval(() => update(), 4000); return () => { clearInterval(poll); }; diff --git a/workspaces/ui/src/contexts/TrafficSessionContext.js b/workspaces/ui/src/contexts/TrafficSessionContext.js deleted file mode 100644 index 27fa65bb41..0000000000 --- a/workspaces/ui/src/contexts/TrafficSessionContext.js +++ /dev/null @@ -1,141 +0,0 @@ -import React from 'react'; -import { GenericContextFactory } from './GenericContextFactory.js'; -import compose from 'lodash.compose'; -import { DiffManagerFacade } from '@useoptic/domain'; - -const { - Context: TrafficSessionContext, - withContext: withTrafficSessionContext, -} = GenericContextFactory(null); - -class TrafficSessionStoreBase extends React.Component { - state = { - isLoading: true, - session: null, - error: null, - diffManager: null, - }; - - componentDidMount() { - this.setState({ - isLoading: true, - error: null, - session: null, - diffManager: DiffManagerFacade.newFromInteractions([], () => { - this.forceUpdate(); - }), - }); - const { specService, sessionId } = this.props; - - if (!sessionId) { - this.setState({ - noSession: true, - isLoading: false, - }); - return; - } - - specService - .listCapturedSamples(sessionId) - .then((result) => { - const session = result; - this.setState({ - session, - isLoading: false, - error: null, - noSession: false, - }); - DiffManagerFacade.updateInteractions( - session.samples, - this.state.diffManager - ); - - this.checkForUpdates(); - }) - .catch((e) => { - console.error(e); - this.setState({ - isLoading: false, - error: e, - // diffSessionManager: null - }); - - DiffManagerFacade.updateInteractions([], this.state.diffManager); - }); - } - - checkForUpdates() { - setTimeout(async () => { - const { specService, sessionId } = this.props; - - if (!sessionId) { - return; - } - - try { - const { status } = await specService.getCaptureStatus(sessionId); - const result = await specService.listCapturedSamples(sessionId); - const { session } = this.state; - const latestSession = result; - if (!session) { - this.checkForUpdates(); - - return; - } - if (latestSession.samples.length > session.samples.length) { - this.setState({ - session: latestSession, - }); - DiffManagerFacade.updateInteractions( - session.samples, - this.state.diffManager - ); - } - //@TODO: add flag prop to disable checking for updates? - if (status !== 'completed') { - this.checkForUpdates(); - } - } catch (e) { - console.error(e); - } - }, 1000); - } - - render() { - const { sessionId, children, renderNoSession } = this.props; - const { isLoading, error, session, noSession, diffManager } = this.state; - - if (isLoading) { - return null; - } - - if (noSession) { - return renderNoSession || null; - } - - if (error) { - console.error(error); - return
; - } - - const context = { - sessionId, - session, - diffManager, - }; - - return ( - - {children} - - ); - } -} - -const TrafficSessionStore = compose()(TrafficSessionStoreBase); - -export { - TrafficSessionStore, - TrafficSessionContext, - withTrafficSessionContext, -}; From 408d5c97d13ade4ee80ce0fb0a896004ba687926 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Sat, 27 Jun 2020 18:17:38 -0400 Subject: [PATCH 21/85] Class Component for Capture Store --- .../components/diff/v2/CaptureManagerPage.js | 34 +- workspaces/ui/src/contexts/CaptureContext.js | 327 +++++++++++++----- 2 files changed, 255 insertions(+), 106 deletions(-) diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index f966ae2ade..dd8c39383b 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -299,33 +299,38 @@ function CaptureDiffWrapper(props) { const { captureId } = props.match.params; const classes = useStyles(); + const rfcContext = useContext(RfcContext); + const services = useServices(); + return ( - + - + ); } -function CaptureDiffStates() { +function CaptureDiffStat() { const classes = useStyles(); - const { stats } = useCaptureContext(); + // const { stats } = useCaptureContext(); //also available // stats.captureCompleted // stats.processed return (
- Optic observed{' '} - , - yielding and{' '} - - . + Optic observed , yielding{' '} + and{' '} + . + {/*,*/} + {/*yielding and{' '}*/} + {/**/} + {/*.*/}
); @@ -338,14 +343,19 @@ function EndpointDiffs(props) { const history = useHistory(); const baseUrl = useBaseUrl(); + console.log('i am here ', endpointDiffs); + console.log('i am here ', Boolean(endpointDiffs.length)); + //also available // stats.captureCompleted // stats.processed return ( + I AM HERE {endpointDiffs.map((i) => { + console.log(i); const to = `${baseUrl}/diffs/${captureId}/paths/${i.pathId}/methods/${i.method}`; return ( { + return { + diffService: null, + captureService: null, + notificationChannel: null, + config: null, + additionalCommands: [], + lastUpdate: null, + pendingUpdates: false, + + reloadDebounce: null, + unrecognizedUrls: [], + endpointDiffs: [], + }; +}; - const [diffService, setDiffService] = useState(null); - const [captureService, setCaptureService] = useState(null); - const [additionalCommands, setAdditionalCommands] = useState([]); +export class CaptureStateStore extends React.Component { + state = initialState(); - const { eventStore, rfcService, rfcId } = useContext(RfcContext); + componentDidMount = async () => { + this.setState( + { + reloadDebounce: debounce(this.reload, 1000, { leading: true }), + }, + async () => await this.startDiff() + ); + }; - // diff state - const [endpointDiffs, setEndpointDiffs] = useState([]); - const [unrecognizedUrls, setUnrecognizedUrls] = useState([]); - const [stats, setStats] = useState({}); - const [diffId, setDiffId] = useState(''); + componentWillUnmount() { + if (this.state.notificationChannel) { + this.state.notificationChannel.close(); + } + } - const { - specService, - captureServiceFactory, - diffServiceFactory, - } = useServices(); + reload = async () => { + this.setState({ pendingUpdates: true, lastUpdate: new Date() }); + + const { diffService } = this.state; - async function restart() { if (diffService) { - diffService.loadStats().then(setStats); - diffService.listDiffs().then((x) => { - setEndpointDiffs(x.diffs); - }); - diffService.listUnrecognizedUrls().then((x) => { - setUnrecognizedUrls(x.urls); + const [diffsResponse, urlsResponse] = await Promise.all([ + diffService.listDiffs(), + diffService.listUnrecognizedUrls(), + ]); + + console.log('results', [ + diffsResponse.diffs.length, + urlsResponse.urls.length, + ]); + + this.setState({ + endpointDiffs: diffsResponse.diffs, + unrecognizedUrls: urlsResponse.urls, }); - setDiffId(diffService.diffId()); } - } - useEffect(() => { - let notifications; - async function task() { - const captureService = await captureServiceFactory( - specService, - captureId - ); - //@TODO: handle error - const apiConfig = await specService.loadConfig(); - const events = eventStore.listEvents(rfcId); - const config = await captureService.startDiff( - ScalaJSHelpers.eventsJsArray(events), - apiConfig.config.ignoreRequests || [], - additionalCommands - ); - if (config.notificationsUrl) { - const notificationsSource = new EventSource(config.notificationsUrl); - notificationsSource.onmessage = (event) => {}; - notificationsSource.onerror = (e) => { - console.error(e); - }; - notificationsSource.onopen = (e) => { - console.log(e); - }; - } - const rfcState = rfcService.currentState(rfcId); - - const diffServiceForCapture = await diffServiceFactory( - specService, - captureService, - rfcState, - additionalCommands, - config, - captureId - ); - setCaptureService(captureService); - setDiffService(diffServiceForCapture); + }; + + startDiff = async () => { + const { + specService, + captureServiceFactory, + diffServiceFactory, + captureId, + eventStore, + rfcId, + rfcService, + } = this.props; + + const captureService = await captureServiceFactory(specService, captureId); + //@TODO: handle error + const apiConfig = await specService.loadConfig(); + const events = eventStore.listEvents(rfcId); + const config = await captureService.startDiff( + ScalaJSHelpers.eventsJsArray(events), + apiConfig.config.ignoreRequests || [], + this.state.additionalCommands + ); + + let notificationChannel = null; + if (config.notificationsUrl) { + notificationChannel = new EventSource(config.notificationsUrl); + notificationChannel.onmessage = (event) => { + this.state.reloadDebounce(); + }; + notificationChannel.onerror = (e) => { + console.error(e); + }; + notificationChannel.onopen = (e) => { + console.log(e); + }; } - task(); - return function cleanup() { - if (notifications) { - notifications.close(); - } - }; - }, [captureId, additionalCommands]); - useEffect(() => { - restart(); - return () => {}; - }, [diffService]); + const rfcState = rfcService.currentState(rfcId); - if (!diffService) { - return
loading...
; - } + const diffService = await diffServiceFactory( + specService, + captureService, + rfcState, + this.state.additionalCommands, + config, + captureId + ); - const updatedAdditionalCommands = (additionalCommands) => { - setAdditionalCommands(additionalCommands); + this.setState({ + config, + diffService, + captureService, + notificationChannel, + pendingUpdates: false, + }); }; - const value = { - diffService, - captureService, - restart, - updatedAdditionalCommands, - diffId, - endpointDiffs, - unrecognizedUrls, - stats, - }; + render = () => { + const { + pendingUpdates, + unrecognizedUrls, + endpointDiffs, + lastUpdate, + config, + } = this.state; + const value = { + pendingUpdates, + config, + lastUpdate, + endpointDiffs, + unrecognizedUrls, + }; - return ( - - {props.children} - - ); + return ( + + {JSON.stringify(value)} + {this.props.children} + + ); + }; } + +// export function CaptureStateStore(props) { +// const { captureId } = props; +// +// const [diffService, setDiffService] = useState(null); +// const [captureService, setCaptureService] = useState(null); +// const [additionalCommands, setAdditionalCommands] = useState([]); +// +// const { eventStore, rfcService, rfcId } = useContext(RfcContext); +// +// // diff state +// const [endpointDiffs, setEndpointDiffs] = useState([]); +// const [unrecognizedUrls, setUnrecognizedUrls] = useState([]); +// const [stats, setStats] = useState({}); +// const [diffId, setDiffId] = useState(''); +// +// const { +// specService, +// captureServiceFactory, +// diffServiceFactory, +// } = useServices(); +// +// async function restart() { +// if (diffService) { +// diffService.loadStats().then(setStats); +// diffService.listDiffs().then((x) => { +// setEndpointDiffs(x.diffs); +// }); +// diffService.listUnrecognizedUrls().then((x) => { +// setUnrecognizedUrls(x.urls); +// }); +// setDiffId(diffService.diffId()); +// } +// } +// useEffect(() => { +// let notifications; +// async function task() { +// const captureService = await captureServiceFactory( +// specService, +// captureId +// ); +// //@TODO: handle error +// const apiConfig = await specService.loadConfig(); +// const events = eventStore.listEvents(rfcId); +// const config = await captureService.startDiff( +// ScalaJSHelpers.eventsJsArray(events), +// apiConfig.config.ignoreRequests || [], +// additionalCommands +// ); +// if (config.notificationsUrl) { +// const notificationsSource = new EventSource(config.notificationsUrl); +// notificationsSource.onmessage = (event) => { +// debugger; +// }; +// notificationsSource.onerror = (e) => { +// console.error(e); +// }; +// notificationsSource.onopen = (e) => { +// console.log(e); +// }; +// } +// const rfcState = rfcService.currentState(rfcId); +// +// const diffServiceForCapture = await diffServiceFactory( +// specService, +// captureService, +// rfcState, +// additionalCommands, +// config, +// captureId +// ); +// setCaptureService(captureService); +// setDiffService(diffServiceForCapture); +// } +// task(); +// return function cleanup() { +// if (notifications) { +// notifications.close(); +// } +// }; +// }, [captureId, additionalCommands]); +// +// useEffect(() => { +// restart(); +// return () => {}; +// }, [diffService]); +// +// if (!diffService) { +// return
loading...
; +// } +// +// const updatedAdditionalCommands = (additionalCommands) => { +// setAdditionalCommands(additionalCommands); +// }; +// +// const value = { +// diffService, +// captureService, +// restart, +// updatedAdditionalCommands, +// diffId, +// endpointDiffs, +// unrecognizedUrls, +// stats, +// }; +// +// return ( +// +// {props.children} +// +// ); +// } From 2318337f10a4fcfc3ec59c84b5b6992d2ec4abf0 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Sun, 28 Jun 2020 17:39:17 -0400 Subject: [PATCH 22/85] Basic functionality --- .../UndocumentedUrlCounterConverter.scala | 20 ++++++- .../com/useoptic/ux/DiffResultHelper.scala | 28 +++++++++- workspaces/domain/src/index.ts | 1 + .../components/diff/v2/CaptureManagerPage.js | 27 +++++---- .../ui/src/components/diff/v2/DiffPageNew.js | 13 +++-- .../ui/src/components/diff/v2/DiffPreview.js | 10 +--- workspaces/ui/src/contexts/CaptureContext.js | 56 ++++++++++++++++--- .../src/services/diff/LocalCliDiffService.ts | 5 +- 8 files changed, 125 insertions(+), 35 deletions(-) diff --git a/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala b/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala index 94b0eaf8cc..b8047dfd33 100644 --- a/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala +++ b/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala @@ -1,13 +1,16 @@ package com.useoptic +import com.useoptic.UrlCounterDeserializer.fromJson import com.useoptic.diff.helpers.UndocumentedUrlHelpers.{MethodAndPath, UrlCounter} +import com.useoptic.ux.{NewEndpoint} import io.circe.{Decoder, Encoder, Json} import io.circe.scalajs.{convertJsToJson, convertJsonToJs} import io.circe.syntax._ import io.circe.generic.auto._ +import scala.collection.immutable import scala.scalajs.js -import scala.scalajs.js.annotation.{JSExportAll, JSExportTopLevel} +import scala.scalajs.js.annotation.{JSExport, JSExportAll, JSExportTopLevel} @JSExportTopLevel("UrlCounterJsonSerializer") @@ -57,4 +60,17 @@ object UrlCounterDeserializer { def fromJs(x: js.Any) = { fromJson(convertJsToJson(x).right.get) } -} \ No newline at end of file + + +} + +@JSExport +@JSExportAll +object UrlCounterHelper { + import UrlCounterDeserializer._ + def fromJsonToSeq(jsJson: js.Any): js.Array[NewEndpoint] = { + js.Array.apply( + convertJsToJson(jsJson).right.get.as[Seq[NewEndpoint]].right.get:_* + ) + } +} diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index 58337c9e7d..e7beb98254 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -4,6 +4,7 @@ import com.useoptic.contexts.requests.Commands.PathComponentId import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.helpers.DiffHelpers.InteractionPointersGroupedByDiff +import com.useoptic.diff.helpers.UndocumentedUrlHelpers.UrlCounter import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescription, DiffDescriptionInterpreters} import com.useoptic.diff.interactions._ import com.useoptic.diff.shapes.resolvers.ShapesResolvers @@ -16,11 +17,30 @@ import scala.util.Try @JSExportAll object DiffResultHelper { + private val stableRandomSeed = scala.util.Random.nextLong() + def unmatchedUrls(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { //@TODO: implement this Vector.empty } + def splitUnmatchedUrls(urls: Seq[NewEndpoint]): SplitUndocumentedUrls = { + val random = scala.util.Random + random.setSeed(stableRandomSeed) + + def getRandomElement: Option[NewEndpoint] = urls match { + case _ => urls.lift(random.nextInt(urls.size)) + } + + if (urls.size > 250) { + val urlsToShow = Range(0, 250).flatMap(i => getRandomElement).distinct + SplitUndocumentedUrls(urlsToShow.toVector.sortBy(_.count).reverse, urls.size, urls.map(_.path).distinct) + } else { + SplitUndocumentedUrls(urls.sortBy(_.count).reverse, urls.size, urls.map(_.path).distinct) + } + + } + def diffsForPathAndMethod(allEndpointDiffs: Seq[EndpointDiffs], pathId: PathComponentId, method: String, ignoredDiffs: Seq[DiffResult]): Map[InteractionDiffResult, Seq[String]] = { allEndpointDiffs.find(i => i.method == method && i.pathId == pathId) .map(i => i.diffs) @@ -180,7 +200,7 @@ case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[Int @JSExportAll abstract class NewRegionDiff { - + def isSameAs(b: NewRegionDiff): Boolean = { this.diff == b.diff && this.interactionPointers == b.interactionPointers @@ -259,3 +279,9 @@ abstract class BodyDiff { @JSExportAll case class PreviewShapeAndCommands(shape: Option[ShapeOnlyRenderHelper], suggestion: Option[InteractiveDiffInterpretation]) + + +@JSExportAll +case class SplitUndocumentedUrls(urls: Seq[NewEndpoint], totalCount: Int, allPaths: Seq[String]) { + def showing: Int = urls.length +} diff --git a/workspaces/domain/src/index.ts b/workspaces/domain/src/index.ts index 8d26619ccb..e80d1e82cf 100644 --- a/workspaces/domain/src/index.ts +++ b/workspaces/domain/src/index.ts @@ -98,3 +98,4 @@ export const DiffManagerFacade = opticEngine.com.useoptic.DiffManagerFacade(); export const DiffPreviewer = opticEngine.com.useoptic.ux.DiffPreviewer; export const DiffHelpers = opticEngine.com.useoptic.diff.helpers.DiffHelpers(); export const DiffResultHelper = opticEngine.com.useoptic.ux.DiffResultHelper(); +export const UrlCounterHelper = opticEngine.com.useoptic.UrlCounterHelper(); diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index dd8c39383b..39851592fd 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -25,7 +25,12 @@ import { } from '../../../contexts/SpecServiceContext'; import { useRouterPaths } from '../../../RouterPaths'; import { RfcContext } from '../../../contexts/RfcContext'; -import { JsonHelper, lengthScala, mapScala } from '@useoptic/domain'; +import { + DiffResultHelper, + JsonHelper, + lengthScala, + mapScala, +} from '@useoptic/domain'; import { NewUrlModal } from './AddUrlModal'; import DiffPageNew, { IgnoreDiffContext, IgnoreDiffStore } from './DiffPageNew'; import { Show, ShowSpan } from '../../shared/Show'; @@ -343,15 +348,11 @@ function EndpointDiffs(props) { const history = useHistory(); const baseUrl = useBaseUrl(); - console.log('i am here ', endpointDiffs); - console.log('i am here ', Boolean(endpointDiffs.length)); - //also available // stats.captureCompleted // stats.processed return ( - I AM HERE {endpointDiffs.map((i) => { @@ -435,16 +436,22 @@ function UnrecognizedUrls(props) { const { unrecognizedUrls } = useCaptureContext(); const baseUrl = useBaseUrl(); - const allUnmatchedPaths = unrecognizedUrls.map((i) => i.url); + const urlsSplit = DiffResultHelper.splitUnmatchedUrls( + JsonHelper.jsArrayToSeq(unrecognizedUrls) + ); + + const allUnmatchedPaths = JsonHelper.seqToJsArray(urlsSplit.allPaths); + const urls = JsonHelper.seqToJsArray(urlsSplit.urls); return ( - 0}> - + 0}> + - {unrecognizedUrls.map((i) => { + {urls.map((i) => { return ( + //
{i.toString()}
{ diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index dd8bf50f87..76047c287a 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -8,10 +8,11 @@ import { } from '../../../contexts/EndpointContext'; import { SpecServiceContext, + useServices, withSpecServiceContext, } from '../../../contexts/SpecServiceContext'; -import { DiffContextStore, withDiffContext } from './DiffContext'; -import { withRfcContext } from '../../../contexts/RfcContext'; +import { DiffContext, DiffContextStore, withDiffContext } from './DiffContext'; +import { RfcContext, withRfcContext } from '../../../contexts/RfcContext'; import LinearProgress from '@material-ui/core/LinearProgress'; import { DiffResultHelper, @@ -83,9 +84,13 @@ const styles = (theme) => ({ function DiffPageNew(props) { const { specStore } = useContext(SpecServiceContext); const baseUrl = useBaseUrl(); + const rfcContext = useContext(RfcContext); + const services = useServices(); + const { pathId, method, captureId } = props.match.params; + return ( - + diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index b47462ece4..ba156fba23 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -327,17 +327,11 @@ export default function DiffPreview() { } function _NewRegions(props) { - const { - newRegions, - ignoreDiff, - acceptSuggestion, - endpointPurpose, - method, - fullPath, - } = props; + const { newRegions, ignoreDiff, endpointPurpose, method, fullPath } = props; const classes = useStyles(); + const { acceptSuggestion } = useContext(DiffContext); const { diffService, captureService } = useCaptureContext(); const [deselected, setDeselected] = useState([]); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 1555429a18..bb15ea0841 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -10,7 +10,7 @@ export function useCaptureContext() { return useContext(CaptureContext); } -const initialState = () => { +const initialState = (debouncer = null) => { return { diffService: null, captureService: null, @@ -20,7 +20,7 @@ const initialState = () => { lastUpdate: null, pendingUpdates: false, - reloadDebounce: null, + reloadDebounce: debouncer, unrecognizedUrls: [], endpointDiffs: [], }; @@ -32,7 +32,10 @@ export class CaptureStateStore extends React.Component { componentDidMount = async () => { this.setState( { - reloadDebounce: debounce(this.reload, 1000, { leading: true }), + reloadDebounce: debounce(this.reload, 1000, { + leading: true, + maxWait: 1500, + }), }, async () => await this.startDiff() ); @@ -55,18 +58,33 @@ export class CaptureStateStore extends React.Component { diffService.listUnrecognizedUrls(), ]); - console.log('results', [ - diffsResponse.diffs.length, - urlsResponse.urls.length, - ]); + console.log('results', [diffsResponse.diffs.length, urlsResponse.length]); this.setState({ endpointDiffs: diffsResponse.diffs, - unrecognizedUrls: urlsResponse.urls, + unrecognizedUrls: urlsResponse, }); } }; + cleanupDiff = async () => { + if (this.state.notificationChannel) { + this.state.notificationChannel.close(); + } + return await new Promise((resolve) => { + this.setState( + { + unrecognizedUrls: [], + endpointDiffs: [], + lastUpdate: null, + pendingUpdates: false, + config: null, + }, + resolve + ); + }); + }; + startDiff = async () => { const { specService, @@ -78,6 +96,9 @@ export class CaptureStateStore extends React.Component { rfcService, } = this.props; + //clear diff + await this.cleanupDiff(); + const captureService = await captureServiceFactory(specService, captureId); //@TODO: handle error const apiConfig = await specService.loadConfig(); @@ -122,6 +143,12 @@ export class CaptureStateStore extends React.Component { }); }; + updatedAdditionalCommands = (additionalCommands) => { + this.setState({ additionalCommands }, () => { + this.startDiff(); + }); + }; + render = () => { const { pendingUpdates, @@ -129,18 +156,29 @@ export class CaptureStateStore extends React.Component { endpointDiffs, lastUpdate, config, + diffService, + captureService, } = this.state; + const value = { pendingUpdates, config, lastUpdate, endpointDiffs, unrecognizedUrls, + diffService, + captureService, + updatedAdditionalCommands: this.updatedAdditionalCommands, }; return ( - {JSON.stringify(value)} + {JSON.stringify({ + pendingUpdates, + lastUpdate, + endpointDiffs: endpointDiffs.length, + unrecognizedUrls: unrecognizedUrls.length, + })} {this.props.children} ); diff --git a/workspaces/ui/src/services/diff/LocalCliDiffService.ts b/workspaces/ui/src/services/diff/LocalCliDiffService.ts index 583d2e4572..6095ba610c 100644 --- a/workspaces/ui/src/services/diff/LocalCliDiffService.ts +++ b/workspaces/ui/src/services/diff/LocalCliDiffService.ts @@ -17,6 +17,7 @@ import { JsonHelper, opticEngine, ScalaJSHelpers, + UrlCounterHelper, } from '@useoptic/domain'; export class LocalCliDiffService implements IDiffService { @@ -45,7 +46,9 @@ export class LocalCliDiffService implements IDiffService { async listUnrecognizedUrls(): Promise { const url = `${this.baseUrl}/undocumented-urls`; - return JsonHttpClient.getJson(url); + const json = (await JsonHttpClient.getJson(url)).urls; + const result = UrlCounterHelper.fromJsonToSeq(json); + return result; } async loadStats(): Promise { From a53a4f18320d9b93dfd19dad34f8f97bbf9452ec Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Thu, 18 Jun 2020 15:36:34 -0400 Subject: [PATCH 23/85] Progress from our work session defining the diff interface --- .../components/diff/v2/CaptureManagerPage.js | 16 ++++- .../ui/src/components/loaders/ApiLoader.js | 9 ++- workspaces/ui/src/contexts/CaptureContext.js | 53 +++++++++++++++ .../ui/src/contexts/DiffServiceContext.js | 11 ++++ .../ui/src/contexts/SpecServiceContext.js | 22 ++++++- .../ui/src/entrypoints/testing-sessions.js | 19 +++++- .../src/services/diff/ExampleDiffService.ts | 66 +++++++++++++++++++ workspaces/ui/src/services/diff/index.ts | 34 ++++++++++ 8 files changed, 223 insertions(+), 7 deletions(-) create mode 100644 workspaces/ui/src/contexts/CaptureContext.js create mode 100644 workspaces/ui/src/contexts/DiffServiceContext.js create mode 100644 workspaces/ui/src/services/diff/ExampleDiffService.ts create mode 100644 workspaces/ui/src/services/diff/index.ts diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index 5eedb3b335..8f2502728b 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -23,7 +23,10 @@ import { TrafficSessionStore, } from '../../../contexts/TrafficSessionContext'; import { GenericContextFactory } from '../../../contexts/GenericContextFactory'; -import { useSpecService } from '../../../contexts/SpecServiceContext'; +import { + useServices, + useSpecService, +} from '../../../contexts/SpecServiceContext'; import { useRouterPaths } from '../../../RouterPaths'; import { RfcContext } from '../../../contexts/RfcContext'; import { JsonHelper, lengthScala, mapScala } from '@useoptic/domain'; @@ -45,6 +48,7 @@ import { } from '../../../theme'; import { AddOpticLink } from '../../support/Links'; import { debugDump } from '../../../utilities/debug-dump'; +import { CaptureContext } from '../../../contexts/CaptureContext'; const useStyles = makeStyles((theme) => ({ container: { @@ -294,6 +298,16 @@ Not setup yet? Follow the [Getting Started Tutorial](${AddOpticLink}) /> ); +function CaptureDiffWrapper2(props) { + const { captureId } = props.match.params; + + return ( + +
asdf
+
+ ); +} + function CaptureDiffWrapper(props) { const { captureId } = props.match.params; const baseUrl = useBaseUrl(); diff --git a/workspaces/ui/src/components/loaders/ApiLoader.js b/workspaces/ui/src/components/loaders/ApiLoader.js index 24a4d65d0f..49869b0aa2 100644 --- a/workspaces/ui/src/components/loaders/ApiLoader.js +++ b/workspaces/ui/src/components/loaders/ApiLoader.js @@ -7,6 +7,7 @@ import { InitialRfcCommandsStore } from '../../contexts/InitialRfcCommandsContex import EventEmitter from 'events'; export function ApiSpecServiceLoader(props) { + const { diffServiceFactory, captureServiceFactory } = props; const debugData = useMockData(); const [service, setService] = useState(null); @@ -46,6 +47,8 @@ export function ApiSpecServiceLoader(props) { { @@ -89,6 +93,8 @@ export function LocalCliSpecServiceLoader(props) { { + const captureService = captureServiceFactory(specService, captureId); + async function task() { + //@TODO: handle error + //@TODO:getConfig for ignoreRequests config + debugger; + const config = await captureService.startDiff(); + const diffServiceForCapture = diffServiceFactory(specService, config); + setDiffService(diffServiceForCapture); + } + + task(); + }); + + if (!diffService) { + return
loading...
; + } + + const value = { + diffService, + restart, + }; + + return ( + + {props.children} + + ); +} diff --git a/workspaces/ui/src/contexts/DiffServiceContext.js b/workspaces/ui/src/contexts/DiffServiceContext.js new file mode 100644 index 0000000000..068814a263 --- /dev/null +++ b/workspaces/ui/src/contexts/DiffServiceContext.js @@ -0,0 +1,11 @@ +import * as React from 'react'; +import { useContext } from 'react'; + +export const DiffServiceContext = React.createContext(); + +export function useDiffServiceContext() { + const { diffServiceFactory } = useContext(DiffServiceContext); + return { + diffServiceFactory, + }; +} diff --git a/workspaces/ui/src/contexts/SpecServiceContext.js b/workspaces/ui/src/contexts/SpecServiceContext.js index b0802899a7..485096d8fa 100644 --- a/workspaces/ui/src/contexts/SpecServiceContext.js +++ b/workspaces/ui/src/contexts/SpecServiceContext.js @@ -30,11 +30,20 @@ class SpecServiceStore extends React.Component { } render() { - const { specService } = this.props; + const { + specService, + captureServiceFactory, + diffServiceFactory, + } = this.props; const { enabledFeatures } = this.state; - + const value = { + specService, + captureServiceFactory, + diffServiceFactory, + enabledFeatures, + }; return ( - + {this.props.children} ); @@ -46,6 +55,12 @@ function useSpecService() { return specService; } +function useServices() { + const { specService, diffServiceFactory, captureServiceFactory } = useContext( + SpecServiceContext + ); +} + function useEnabledFeatures() { const specContext = useContext(SpecServiceContext); @@ -62,5 +77,6 @@ export { SpecServiceContext, SpecServiceStore, useSpecService, + useServices, useEnabledFeatures, }; diff --git a/workspaces/ui/src/entrypoints/testing-sessions.js b/workspaces/ui/src/entrypoints/testing-sessions.js index 3bd2b014a4..2606ec187a 100644 --- a/workspaces/ui/src/entrypoints/testing-sessions.js +++ b/workspaces/ui/src/entrypoints/testing-sessions.js @@ -7,6 +7,10 @@ import { } from '../contexts/MockDataContext'; import { ApiRoutes } from '../routes'; import { Provider as BaseUrlContext } from '../contexts/BaseUrlContext'; +import { + ExampleCaptureService, + ExampleDiffService, +} from '../services/diff/ExampleDiffService'; export default function TestingSessions(props) { const match = useRouteMatch(); @@ -17,10 +21,23 @@ export default function TestingSessions(props) { exampleSessionCollection: 'example-sessions', }); + const captureServiceFactory = (specService, captureId) => { + debugger; + return new ExampleCaptureService(specService, captureId); + }; + + const diffServiceFactory = (specService, config) => { + debugger; + return new ExampleDiffService(specService, config); + }; + return ( - + diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts new file mode 100644 index 0000000000..4b92e6fe8e --- /dev/null +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -0,0 +1,66 @@ +import { + ICaptureService, + IDiffService, + IListDiffsResponse, + IListUnrecognizedUrlsResponse, + ILoadInteractionResponse, + IRfcCommand, + IStartDiffResponse, +} from './index'; +import { IHttpInteraction } from '@useoptic/domain-types'; +import { ISpecService } from '@useoptic/cli-client/build/spec-service-client'; +import { captureId } from '../../components/loaders/ApiLoader'; +import { + cachingResolversAndRfcStateFromEvents, + normalizedDiffFromRfcStateAndInteractions, +} from '@useoptic/domain-utilities'; +export class ExampleCaptureService implements ICaptureService { + async startDiff( + ignoreRequests: string[], + additionalCommands: IRfcCommand[] + ): Promise { + return { + loadDiffUrl: '', + loadUnrecognizedUrlsUrl: '', + notificationUrl: '', + }; + } +} + +export class ExampleDiffService implements IDiffService { + constructor(private specService: ISpecService) {} + + async listDiffs(): Promise { + const interactions = await this.specService.listCapturedSamples(captureId); + const events = await this.specService.listEvents(); + const { resolvers, rfcState } = cachingResolversAndRfcStateFromEvents( + JSON.parse(events) + ); + const diffs = normalizedDiffFromRfcStateAndInteractions( + resolvers, + rfcState, + interactions + ); + return { + diffs, + }; + } + + async listUnrecognizedUrls(): Promise { + return Promise.resolve({ + urls: [], + }); + } + + async loadInteraction( + interactionPointer: string + ): Promise { + const interactions = await this.specService.listCapturedSamples(captureId); + const interaction = interactions.find( + (x: IHttpInteraction) => x.uuid === interactionPointer + ); + return { + interaction, + }; + } +} diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts new file mode 100644 index 0000000000..9188e8860b --- /dev/null +++ b/workspaces/ui/src/services/diff/index.ts @@ -0,0 +1,34 @@ +import { IHttpInteraction } from '@useoptic/domain-types'; + +export interface ICaptureService { + startDiff( + ignoreRequests: string[], + additionalCommands: IRfcCommand[] + ): Promise; +} + +export interface IDiffService { + // backend + loadInteraction( + interactionPointer: string + ): Promise; + listDiffs(): Promise; + listUnrecognizedUrls(): Promise; +} + +export interface IRfcCommand {} +export interface IStartDiffResponse { + notificationUrl: string; + loadDiffUrl: string; + loadUnrecognizedUrlsUrl: string; +} +export interface ILoadInteractionResponse { + interaction: IHttpInteraction; +} +export interface IListDiffsResponse { + diffs: any[]; +} + +export interface IListUnrecognizedUrlsResponse { + urls: any[]; +} From 8c286929539bc7d23054ae74033847b272ef4e63 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Fri, 19 Jun 2020 15:37:27 -0400 Subject: [PATCH 24/85] capture manager page now works off of the new interface --- .../com/useoptic/ux/DiffResultHelper.scala | 75 ++++ workspaces/domain/src/index.ts | 1 + .../components/diff/v2/CaptureManagerPage.js | 345 ++++++++---------- workspaces/ui/src/contexts/CaptureContext.js | 32 +- .../ui/src/contexts/SpecServiceContext.js | 6 + .../ui/src/entrypoints/testing-sessions.js | 2 - .../src/services/diff/ExampleDiffService.ts | 60 ++- workspaces/ui/src/services/diff/index.ts | 9 + 8 files changed, 317 insertions(+), 213 deletions(-) create mode 100644 core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala new file mode 100644 index 0000000000..fea3e12319 --- /dev/null +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -0,0 +1,75 @@ +package com.useoptic.ux + +import com.useoptic.contexts.requests.Commands.PathComponentId +import com.useoptic.contexts.rfc.RfcState +import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff +import com.useoptic.diff.interactions.{InteractionDiffResult, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers, Resolvers, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, SpecRoot, UnmatchedRequestBodyContentType, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseStatusCode} +import com.useoptic.logging.Logger +import com.useoptic.types.capture.HttpInteraction + +import scala.scalajs.js.annotation.{JSExport, JSExportAll} + +@JSExportAll +case class NewEndpoint(path: String, method: String, pathId: Option[PathComponentId], count: Int) +@JSExportAll +case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Vector[InteractionDiffResult], interactionPointers: Seq[String]) { + def count = diffs.size +} + +@JSExport +@JSExportAll +object DiffResultHelper { + def diffCount(diffs: InteractionsGroupedByDiff): Int = diffs.keys.size + def unmatchedUrls(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { + diffs.collect { + case (newUrl: UnmatchedRequestUrl, interactions) => NewEndpoint(interactions.head.request.path, interactions.head.request.method, None, interactions.size) + case (newMethod: UnmatchedRequestMethod, interactions) => { + val location = getLocationForDiff(newMethod, interactions, rfcState) + NewEndpoint(interactions.head.request.path, interactions.head.request.method, Some(location.get._1), interactions.size) + } + } + }.toVector.sortBy(i => (i.method + i.path)) + + def endpointDiffs(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { + diffs.filterNot { + case (a: UnmatchedRequestUrl, _) => true + case (a: UnmatchedRequestMethod, _) => true + case _ => false + }.flatMap { + case (diff, interactions) => getLocationForDiff(diff, interactions, rfcState).map(location => { + EndpointDiffs(location._2, location._1, diffs.keys.toVector, interactions.map(_.uuid)) + }) + }.groupBy(i => (i.pathId, i.method)).map { + case ((path, method), diffs) => EndpointDiffs(method, path, diffs.flatMap(_.diffs).toVector, diffs.flatMap(_.interactionPointers).toVector.distinct) + } + }.toVector.sortBy(_.diffs.size).reverse + + + def getLocationForDiff(diff: InteractionDiffResult, interactions: Seq[HttpInteraction], rfcState: RfcState): Option[(PathComponentId, String, InteractionDiffResult)] = (diff, interactions) match { + case (_: UnmatchedRequestUrl, interactions) => None + case (d: InteractionDiffResult, interactions) => { + d.requestsTrail match { + case SpecRoot() => None + case SpecPath(pathId) => Some(pathId, interactions.head.request.method, d) + case SpecRequestRoot(requestId) => { + val request = rfcState.requestsState.requests(requestId).requestDescriptor + Some(request.pathComponentId, request.httpMethod, d) + } + case SpecRequestBody(requestId) => { + val request = rfcState.requestsState.requests(requestId).requestDescriptor + Some(request.pathComponentId, request.httpMethod, d) + } + case SpecResponseRoot(responseId) => { + val response = rfcState.requestsState.responses(responseId).responseDescriptor + Some(response.pathId, response.httpMethod, d) + } + case SpecResponseBody(responseId) => { + val response = rfcState.requestsState.responses(responseId).responseDescriptor + Some(response.pathId, response.httpMethod, d) + } + } + } + case _ => None + } + +} diff --git a/workspaces/domain/src/index.ts b/workspaces/domain/src/index.ts index 7893a7dd2d..8d26619ccb 100644 --- a/workspaces/domain/src/index.ts +++ b/workspaces/domain/src/index.ts @@ -97,3 +97,4 @@ export const StableHashableWrapper = export const DiffManagerFacade = opticEngine.com.useoptic.DiffManagerFacade(); export const DiffPreviewer = opticEngine.com.useoptic.ux.DiffPreviewer; export const DiffHelpers = opticEngine.com.useoptic.diff.helpers.DiffHelpers(); +export const DiffResultHelper = opticEngine.com.useoptic.ux.DiffResultHelper(); diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index 8f2502728b..ceab20fb64 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -48,7 +48,11 @@ import { } from '../../../theme'; import { AddOpticLink } from '../../support/Links'; import { debugDump } from '../../../utilities/debug-dump'; -import { CaptureContext } from '../../../contexts/CaptureContext'; +import { + CaptureContext, + CaptureStateStore, + useCaptureContext, +} from '../../../contexts/CaptureContext'; const useStyles = makeStyles((theme) => ({ container: { @@ -298,206 +302,175 @@ Not setup yet? Follow the [Getting Started Tutorial](${AddOpticLink}) /> ); -function CaptureDiffWrapper2(props) { +function CaptureDiffWrapper(props) { const { captureId } = props.match.params; + const classes = useStyles(); return ( - -
asdf
-
+ + + + + + ); } -function CaptureDiffWrapper(props) { - const { captureId } = props.match.params; - const baseUrl = useBaseUrl(); +function CaptureDiffStates() { const classes = useStyles(); - const specService = useSpecService(); + const { stats } = useCaptureContext(); + //also available + // stats.captureCompleted + // stats.processed + return ( +
+ + Optic observed{' '} + , + yielding in and{' '} + + . + +
+ ); +} + +function EndpointDiffs(props) { + const { captureId } = props; + const classes = useStyles(); + const { endpointDiffs } = useCaptureContext(); const history = useHistory(); - const [alphabetize, setAlphabetize] = useState(true); - const { ignoredDiffs } = useContext(IgnoreDiffContext); - const { rfcService, rfcId, queries } = useContext(RfcContext); - const rfcState = rfcService.currentState(rfcId); - const shapesResolvers = queries.shapesResolvers(); - const { captures } = useContext(AllCapturesContext); - if (captures.length === 0) { - return empty; - } + const baseUrl = useBaseUrl(); + //also available + // stats.captureCompleted + // stats.processed return ( - <> - - No Capture
} - > - - {({ diffManager }) => { - diffManager.updatedRfcState(rfcState, shapesResolvers); - diffManager.clearEndpointFilter(); - - const ignoredAsSeq = JsonHelper.jsArrayToSeq(ignoredDiffs); - const stats = diffManager.stats(ignoredAsSeq); - const allUnmatchedPaths = JsonHelper.seqToJsArray( - diffManager.allUnmatchedPaths - ); - const newUrls = diffManager.unmatchedUrls( - alphabetize, - ignoredAsSeq - ); - const endpointDiffs = diffManager.endpointDiffs( - ignoredAsSeq, - /* filter ouunmatched URLs */ true + + + + {endpointDiffs.map((i) => { + const to = `${baseUrl}/diffs/${captureId}/paths/${i.pathId}/methods/${i.method}`; + return ( + + + {({ endpointDescriptor }) => ( + +
+ + {endpointDescriptor.purpose} + + +
+ + 0}> + + + 0}> + + + 0}> + + + +
+ )} +
+
); + })} +
+
+
+ ); +} + +function UnrecognizedUrls(props) { + const { captureId } = props; + const classes = useStyles(); + const history = useHistory(); + const { unrecognizedUrls } = useCaptureContext(); + const baseUrl = useBaseUrl(); + + const allUnmatchedPaths = unrecognizedUrls.map((i) => i.url); + return ( + 0}> + + + {unrecognizedUrls.map((i) => { return ( - <> -
- - Optic observed{' '} - - , yielding in{' '} - and{' '} - { + const { pathId, method } = result; + const to = `${baseUrl}/diffs/${captureId}/paths/${pathId}/methods/${method}`; + history.push(to); + }} + > + +
+ +
+ + - . -
-
- 0}> - - - {mapScala(endpointDiffs)((i) => { - const to = `${baseUrl}/diffs/${captureId}/paths/${i.pathId}/methods/${i.method}`; - return ( - - - {({ endpointDescriptor }) => ( - -
- - {endpointDescriptor.purpose} - - -
- - 0}> - - - 0}> - - - 0}> - - - -
- )} -
-
- ); - })} -
-
-
- - 0}> - - - {mapScala(newUrls)((i) => { - return ( - { - const { pathId, method } = result; - const to = `${baseUrl}/diffs/${captureId}/paths/${pathId}/methods/${method}`; - history.push(to); - }} - > - -
- -
- - - -
-
- ); - })} -
-
-
- - + + + ); - }} -
- - + })} + + + ); } diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index b968eb8ff0..51a493129f 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -5,36 +5,47 @@ import { useServices } from './SpecServiceContext'; export const CaptureContext = React.createContext(null); export function useCaptureContext() { - const { diffServiceFactory } = useContext(CaptureContext); - return { - diffServiceFactory, - }; + return useContext(CaptureContext); } export function CaptureStateStore(props) { const { captureId } = props; const [diffService, setDiffService] = useState(null); + + // diff state + const [endpointDiffs, setEndpointDiffs] = useState([]); + const [unrecognizedUrls, setUnrecognizedUrls] = useState([]); + const [stats, setStats] = useState({}); + const { specService, captureServiceFactory, diffServiceFactory, } = useServices(); - function restart() { - debugger; + + async function restart() { + if (diffService) { + diffService.loadStats().then(setStats); + diffService.listDiffs().then(setEndpointDiffs); + diffService.listUnrecognizedUrls().then(setUnrecognizedUrls); + } } useEffect(() => { const captureService = captureServiceFactory(specService, captureId); async function task() { //@TODO: handle error //@TODO:getConfig for ignoreRequests config - debugger; const config = await captureService.startDiff(); const diffServiceForCapture = diffServiceFactory(specService, config); setDiffService(diffServiceForCapture); } - task(); - }); + }, [captureId]); + + useEffect(() => { + restart(); + return () => {}; + }, [diffService]); if (!diffService) { return
loading...
; @@ -43,6 +54,9 @@ export function CaptureStateStore(props) { const value = { diffService, restart, + endpointDiffs, + unrecognizedUrls, + stats, }; return ( diff --git a/workspaces/ui/src/contexts/SpecServiceContext.js b/workspaces/ui/src/contexts/SpecServiceContext.js index 485096d8fa..bb683154ae 100644 --- a/workspaces/ui/src/contexts/SpecServiceContext.js +++ b/workspaces/ui/src/contexts/SpecServiceContext.js @@ -59,6 +59,12 @@ function useServices() { const { specService, diffServiceFactory, captureServiceFactory } = useContext( SpecServiceContext ); + + return { + specService, + diffServiceFactory, + captureServiceFactory, + }; } function useEnabledFeatures() { diff --git a/workspaces/ui/src/entrypoints/testing-sessions.js b/workspaces/ui/src/entrypoints/testing-sessions.js index 2606ec187a..7bd775c38d 100644 --- a/workspaces/ui/src/entrypoints/testing-sessions.js +++ b/workspaces/ui/src/entrypoints/testing-sessions.js @@ -22,12 +22,10 @@ export default function TestingSessions(props) { }); const captureServiceFactory = (specService, captureId) => { - debugger; return new ExampleCaptureService(specService, captureId); }; const diffServiceFactory = (specService, config) => { - debugger; return new ExampleDiffService(specService, config); }; diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index 4b92e6fe8e..1635963848 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -4,6 +4,7 @@ import { IListDiffsResponse, IListUnrecognizedUrlsResponse, ILoadInteractionResponse, + ILoadStatsResponse, IRfcCommand, IStartDiffResponse, } from './index'; @@ -14,6 +15,7 @@ import { cachingResolversAndRfcStateFromEvents, normalizedDiffFromRfcStateAndInteractions, } from '@useoptic/domain-utilities'; +import { DiffResultHelper, ScalaJSHelpers } from '@useoptic/domain/build'; export class ExampleCaptureService implements ICaptureService { async startDiff( ignoreRequests: string[], @@ -28,28 +30,45 @@ export class ExampleCaptureService implements ICaptureService { } export class ExampleDiffService implements IDiffService { - constructor(private specService: ISpecService) {} + private readonly diffsPromise: Promise; + + constructor(private specService: ISpecService) { + async function computeInitialDiff() { + const capture = await specService.listCapturedSamples(captureId); + const events = await specService.listEvents(); + const { resolvers, rfcState } = cachingResolversAndRfcStateFromEvents( + JSON.parse(events) + ); + const diffs = normalizedDiffFromRfcStateAndInteractions( + resolvers, + rfcState, + capture.samples + ); + return { + diffs, + rfcState, + resolvers, + }; + } + this.diffsPromise = computeInitialDiff(); + } async listDiffs(): Promise { - const interactions = await this.specService.listCapturedSamples(captureId); - const events = await this.specService.listEvents(); - const { resolvers, rfcState } = cachingResolversAndRfcStateFromEvents( - JSON.parse(events) - ); - const diffs = normalizedDiffFromRfcStateAndInteractions( - resolvers, - rfcState, - interactions + const { diffs, rfcState } = await this.diffsPromise; + const endpointDiffs = ScalaJSHelpers.toJsArray( + DiffResultHelper.endpointDiffs(diffs, rfcState) ); - return { - diffs, - }; + return endpointDiffs; } async listUnrecognizedUrls(): Promise { - return Promise.resolve({ - urls: [], - }); + const { diffs, rfcState } = await this.diffsPromise; + + const urls = ScalaJSHelpers.toJsArray( + DiffResultHelper.unmatchedUrls(diffs, rfcState) + ); + + return Promise.resolve(urls); } async loadInteraction( @@ -63,4 +82,13 @@ export class ExampleDiffService implements IDiffService { interaction, }; } + + async loadStats(): Promise { + const capture = await this.specService.listCapturedSamples(captureId); + return Promise.resolve({ + totalInteractions: capture.samples.length, + processed: capture.samples.length, + captureCompleted: true, + }); + } } diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 9188e8860b..6a9c338580 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -14,9 +14,17 @@ export interface IDiffService { ): Promise; listDiffs(): Promise; listUnrecognizedUrls(): Promise; + loadStats(): Promise; } export interface IRfcCommand {} + +export interface ILoadStatsResponse { + totalInteractions: number; + processed: number; + captureCompleted: boolean; +} + export interface IStartDiffResponse { notificationUrl: string; loadDiffUrl: string; @@ -27,6 +35,7 @@ export interface ILoadInteractionResponse { } export interface IListDiffsResponse { diffs: any[]; + rfcState: any; } export interface IListUnrecognizedUrlsResponse { From dd5962ff09eff6512dd976db3141d12402422e9c Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Mon, 22 Jun 2020 12:51:06 -0400 Subject: [PATCH 25/85] End-end with a few small issues with diff sorting --- .../main/scala/com/useoptic/JsonHelper.scala | 1 + .../scala/com/useoptic/ScalaJSHelpers.scala | 7 + .../useoptic/contexts/rfc/RfcService.scala | 2 +- .../com/useoptic/ux/DiffResultHelper.scala | 212 +++++++- ...teractionsGroupedByDiffSerialization.scala | 23 + workspaces/domain-utilities/src/index.ts | 44 +- .../ui/public/example-sessions/todos.json | 480 ++++++++++++++++++ .../ui/src/components/diff/v2/DiffContext.js | 50 +- .../src/components/diff/v2/DiffHelperCard.js | 13 +- .../ui/src/components/diff/v2/DiffHooks.js | 91 ++++ .../ui/src/components/diff/v2/DiffPageNew.js | 292 ++++++----- .../ui/src/components/diff/v2/DiffPreview.js | 118 +++-- .../components/diff/v2/DiffReviewExpanded.js | 82 ++- workspaces/ui/src/contexts/CaptureContext.js | 28 +- .../ui/src/entrypoints/testing-sessions.js | 4 +- .../src/services/diff/ExampleDiffService.ts | 102 +++- workspaces/ui/src/services/diff/index.ts | 16 + 17 files changed, 1296 insertions(+), 269 deletions(-) create mode 100644 core/optic/shared/src/main/scala/com/useoptic/ux/InteractionsGroupedByDiffSerialization.scala create mode 100644 workspaces/ui/public/example-sessions/todos.json create mode 100644 workspaces/ui/src/components/diff/v2/DiffHooks.js diff --git a/core/optic/js/src/main/scala/com/useoptic/JsonHelper.scala b/core/optic/js/src/main/scala/com/useoptic/JsonHelper.scala index ef3422de04..7c0ff831aa 100644 --- a/core/optic/js/src/main/scala/com/useoptic/JsonHelper.scala +++ b/core/optic/js/src/main/scala/com/useoptic/JsonHelper.scala @@ -53,6 +53,7 @@ object JsonHelper { def jsArrayToSeq(x: js.Array[Any]): Seq[Any] = { x.toSeq } + def jsArrayToVector(x: js.Array[Any]): Vector[Any] = { x.toVector } diff --git a/core/optic/js/src/main/scala/com/useoptic/ScalaJSHelpers.scala b/core/optic/js/src/main/scala/com/useoptic/ScalaJSHelpers.scala index 5a4aabd7d0..c923971f8d 100644 --- a/core/optic/js/src/main/scala/com/useoptic/ScalaJSHelpers.scala +++ b/core/optic/js/src/main/scala/com/useoptic/ScalaJSHelpers.scala @@ -1,6 +1,9 @@ package com.useoptic +import com.useoptic.contexts.rfc.Events.RfcEvent +import com.useoptic.ddd.{AggregateId, EventStore} +import com.useoptic.serialization.EventSerialization import io.circe.Json import scala.scalajs.js @@ -49,4 +52,8 @@ object ScalaJSHelpers { def getJson(j: Json): js.Any = convertJsonToJs(j) + def eventsJsArray(events: Vector[RfcEvent]): js.Any = { + convertJsonToJs(EventSerialization.toJson(events)) + } + } diff --git a/core/optic/shared/src/main/scala/com/useoptic/contexts/rfc/RfcService.scala b/core/optic/shared/src/main/scala/com/useoptic/contexts/rfc/RfcService.scala index afe9727da7..5f2913ed4f 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/contexts/rfc/RfcService.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/contexts/rfc/RfcService.scala @@ -5,7 +5,7 @@ import com.useoptic.contexts.rfc.Events.RfcEvent import com.useoptic.ddd._ import com.useoptic.dsa.{OpticDomainIds, OpticIds} import com.useoptic.logging.Logger -import com.useoptic.serialization.CommandSerialization +import com.useoptic.serialization.{CommandSerialization, EventSerialization} import scala.scalajs.js.annotation.{JSExport, JSExportAll} import scala.util.Try diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index fea3e12319..11a86ab57a 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -2,74 +2,238 @@ package com.useoptic.ux import com.useoptic.contexts.requests.Commands.PathComponentId import com.useoptic.contexts.rfc.RfcState +import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff -import com.useoptic.diff.interactions.{InteractionDiffResult, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers, Resolvers, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, SpecRoot, UnmatchedRequestBodyContentType, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseStatusCode} -import com.useoptic.logging.Logger -import com.useoptic.types.capture.HttpInteraction +import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescription, DiffDescriptionInterpreters} +import com.useoptic.diff.interactions.{BodyUtilities, InteractionDiffResult, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers, Resolvers, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, SpecRoot, UnmatchedRequestBodyContentType, UnmatchedRequestBodyShape, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseBodyShape, UnmatchedResponseStatusCode} +import com.useoptic.diff.shapes.ShapeDiffResult +import com.useoptic.diff.shapes.resolvers.ShapesResolvers +import com.useoptic.types.capture.{Body, HttpInteraction} import scala.scalajs.js.annotation.{JSExport, JSExportAll} -@JSExportAll -case class NewEndpoint(path: String, method: String, pathId: Option[PathComponentId], count: Int) -@JSExportAll -case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Vector[InteractionDiffResult], interactionPointers: Seq[String]) { - def count = diffs.size -} - @JSExport @JSExportAll object DiffResultHelper { - def diffCount(diffs: InteractionsGroupedByDiff): Int = diffs.keys.size + def unmatchedUrls(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { diffs.collect { case (newUrl: UnmatchedRequestUrl, interactions) => NewEndpoint(interactions.head.request.path, interactions.head.request.method, None, interactions.size) case (newMethod: UnmatchedRequestMethod, interactions) => { - val location = getLocationForDiff(newMethod, interactions, rfcState) - NewEndpoint(interactions.head.request.path, interactions.head.request.method, Some(location.get._1), interactions.size) + val location = getLocationForDiff(newMethod, rfcState) + NewEndpoint(interactions.head.request.path, interactions.head.request.method, Some(location.get.pathId), interactions.size) } } }.toVector.sortBy(i => (i.method + i.path)) + def diffsForPathAndMethod(allEndpointDiffs: Seq[EndpointDiffs], pathId: PathComponentId, method: String, ignoredDiffs: Seq[DiffResult]): Map[InteractionDiffResult, Seq[String]] = { + allEndpointDiffs.find(i => i.method == method && i.pathId == pathId) + .map(i => i.diffs) + .getOrElse(Map.empty) + } + def endpointDiffs(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { diffs.filterNot { case (a: UnmatchedRequestUrl, _) => true case (a: UnmatchedRequestMethod, _) => true case _ => false }.flatMap { - case (diff, interactions) => getLocationForDiff(diff, interactions, rfcState).map(location => { - EndpointDiffs(location._2, location._1, diffs.keys.toVector, interactions.map(_.uuid)) + case (diff, interactions) => getLocationForDiff(diff, rfcState).map(location => { + EndpointDiffs(location.pathId, location.method, Map(diff -> interactions.map(i => i.uuid))) }) }.groupBy(i => (i.pathId, i.method)).map { - case ((path, method), diffs) => EndpointDiffs(method, path, diffs.flatMap(_.diffs).toVector, diffs.flatMap(_.interactionPointers).toVector.distinct) + case ((path, method), diffs) => { + val diffsForTHisOne = diffs.flatMap(_.diffs).toMap + println(s"NEW ENDPOINT DIFF for ${method} ${path} ${diffsForTHisOne.size}") + EndpointDiffs(method, path, diffsForTHisOne) + } } }.toVector.sortBy(_.diffs.size).reverse + def diffCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.size + + def newRegionDiffs(diffs: Map[InteractionDiffResult, Seq[String]]): Seq[NewRegionDiff] = { + val newRegions = diffs.filterKeys { + case _: UnmatchedRequestBodyContentType => true + case _: UnmatchedResponseBodyContentType => true + case _: UnmatchedResponseStatusCode => true + case _ => false + } + + newRegions.map{ case (_diff, _interactionPointers) => { + val _inRequest = _diff match { + case _:UnmatchedRequestBodyContentType => true + case _:UnmatchedResponseBodyContentType => false + case _:UnmatchedResponseStatusCode => false + } + new NewRegionDiff { + override val diff = _diff + override val interactionPointers: Seq[String] = _interactionPointers + override val inRequest: Boolean = _inRequest + override val inResponse: Boolean = !_inRequest + override val contentType: Option[String] = _diff match { + case d: UnmatchedRequestBodyContentType => d.interactionTrail.responseBodyContentTypeOption() + case d: UnmatchedResponseBodyContentType => d.interactionTrail.responseBodyContentTypeOption() + case d: UnmatchedResponseStatusCode => d.interactionTrail.responseBodyContentTypeOption() + case _ => None + } + override val statusCode: Option[Int] = _diff match { + case d: UnmatchedResponseStatusCode => Some(d.interactionTrail.statusCode()) + case _ => None + } + } + }}.toVector + } + + def bodyDiffs(diffs: Map[InteractionDiffResult, Seq[String]]): Seq[BodyDiff] = { + val bodyRegions = diffs.filterKeys { + case _: UnmatchedRequestBodyShape => true + case _: UnmatchedResponseBodyShape => true + case _ => false + } + + bodyRegions.map { case (_diff, _interactionPointers) => { + val _inRequest = _diff match {case _: UnmatchedRequestBodyShape => true; case _ => false} + val _inResponse = _diff match {case _: UnmatchedResponseBodyShape => true; case _ => false} + + val _location = if (_inRequest) Seq("Request Body", _diff.interactionTrail.requestContentType()) else + Seq(s"${_diff.interactionTrail.statusCode()} Response", "Body", _diff.interactionTrail.responseBodyContentTypeOption().getOrElse("")) + + new BodyDiff { + override val diff = _diff + override val location = _location + override val interactionPointers = _interactionPointers + override val inRequest: Boolean = _inRequest + override val inResponse: Boolean = _inResponse + } + }}.toVector + } - def getLocationForDiff(diff: InteractionDiffResult, interactions: Seq[HttpInteraction], rfcState: RfcState): Option[(PathComponentId, String, InteractionDiffResult)] = (diff, interactions) match { - case (_: UnmatchedRequestUrl, interactions) => None - case (d: InteractionDiffResult, interactions) => { + + case class DiffLocation(pathId: PathComponentId, method: String) + def getLocationForDiff(diff: InteractionDiffResult, rfcState: RfcState): Option[DiffLocation] = (diff) match { + case (_: UnmatchedRequestUrl) => None + case (d: InteractionDiffResult) => { d.requestsTrail match { case SpecRoot() => None - case SpecPath(pathId) => Some(pathId, interactions.head.request.method, d) + case SpecPath(pathId) => d.interactionTrail.httpMethod().flatMap(method => Some(DiffLocation(pathId, method))) case SpecRequestRoot(requestId) => { val request = rfcState.requestsState.requests(requestId).requestDescriptor - Some(request.pathComponentId, request.httpMethod, d) + Some(DiffLocation(request.pathComponentId, request.httpMethod)) } case SpecRequestBody(requestId) => { val request = rfcState.requestsState.requests(requestId).requestDescriptor - Some(request.pathComponentId, request.httpMethod, d) + Some(DiffLocation(request.pathComponentId, request.httpMethod)) } case SpecResponseRoot(responseId) => { val response = rfcState.requestsState.responses(responseId).responseDescriptor - Some(response.pathId, response.httpMethod, d) + Some(DiffLocation(response.pathId, response.httpMethod)) } case SpecResponseBody(responseId) => { val response = rfcState.requestsState.responses(responseId).responseDescriptor - Some(response.pathId, response.httpMethod, d) + Some(DiffLocation(response.pathId, response.httpMethod)) } } } case _ => None } + def descriptionFromDiff(diff: InteractionDiffResult, rfcState: RfcState, anInteraction: HttpInteraction): DiffDescription = { + val descriptionInterpreters = new DiffDescriptionInterpreters(rfcState) + descriptionInterpreters.interpret(diff, anInteraction) + } + + def previewDiff(bodyDiff: BodyDiff, anInteraction: HttpInteraction, currentRfcState: RfcState): Option[SideBySideRenderHelper] = { + val simulatedDiffPreviewer = new DiffPreviewer(currentRfcState) + val diff = bodyDiff.diff.asInstanceOf[InteractionDiffResult] + //@todo review this interface + def previewForBodyAndDiff(body: Body) = { + simulatedDiffPreviewer.previewDiff( + BodyUtilities.parseBody(body), + Some(diff.shapeDiffResultOption.get.shapeTrail.rootShapeId), + Set(diff.shapeDiffResultOption).flatten, + Set.empty) + } + + previewForBodyAndDiff(if (bodyDiff.inRequest) anInteraction.request.body else anInteraction.response.body) + } + + def previewBody(body: Body, currentRfcState: RfcState): Option[SideBySideRenderHelper] = { + val simulatedDiffPreviewer = new DiffPreviewer(currentRfcState) + simulatedDiffPreviewer.previewBody(body) + } + + def suggestionsForDiff(bodyDiff: BodyDiff, anInteraction: HttpInteraction, currentRfcState: RfcState): Seq[InteractiveDiffInterpretation] = { + val resolvers = ShapesResolvers.newResolver(currentRfcState) + val basicInterpreter = new DefaultInterpreters(resolvers, currentRfcState) + basicInterpreter.interpret(bodyDiff.diff, Vector(anInteraction)) + } + + +} + + +// Helper Classes +@JSExportAll +case class NewEndpoint(path: String, method: String, pathId: Option[PathComponentId], count: Int) +@JSExportAll +case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[InteractionDiffResult, Seq[String]]) { + def count = diffs.keys.size +} + + +@JSExportAll +abstract class NewRegionDiff { + val diff: DiffResult + val interactionPointers: Seq[String] + val inRequest: Boolean + val inResponse: Boolean + val contentType: Option[String] + val statusCode: Option[Int] + + def firstInteractionPointer: String = interactionPointers.head + def interactionsCount: Int = interactionPointers.size + + def previewBodyRender(currentInteraction: HttpInteraction): Option[SideBySideRenderHelper] = { + val body = if (inRequest) { + currentInteraction.request.body + } else { + currentInteraction.response.body + } + new DiffPreviewer(null, null).previewBody(body) + } + + def previewShapeRender(rfcState: RfcState, interactions: Vector[HttpInteraction], inferPolymorphism: Boolean): Option[ShapeOnlyRenderHelper] = { + val diffPreviewer = new DiffPreviewer(ShapesResolvers.newResolver(rfcState), rfcState) + + def getBody(i: HttpInteraction) = { + if (inRequest) { + i.request.body + } else { + i.response.body + } + } + + val firstInteraction = interactions.head + + if (inferPolymorphism) { + val bodies = interactions.map(getBody).flatMap(BodyUtilities.parseBody) + val preview = diffPreviewer.shapeOnlyFromShapeBuilder(bodies) + preview.map(_._2) + } else { + diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten).map(_._2) + } + } +} + +@JSExportAll +abstract class BodyDiff { + val diff: InteractionDiffResult + val location: Seq[String] + val interactionPointers: Seq[String] + val inRequest: Boolean + val inResponse: Boolean + + def firstInteractionPointer: String = interactionPointers.head + def interactionsCount: Int = interactionPointers.size } diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/InteractionsGroupedByDiffSerialization.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/InteractionsGroupedByDiffSerialization.scala new file mode 100644 index 0000000000..3a42717725 --- /dev/null +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/InteractionsGroupedByDiffSerialization.scala @@ -0,0 +1,23 @@ +package com.useoptic.ux + +import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff +import com.useoptic.diff.interactions.InteractionDiffResult +import com.useoptic.types.capture.HttpInteraction +import io.circe.Json +import io.circe._ +import io.circe.generic.auto._ +import io.circe.syntax._ + +import scala.scalajs.js.annotation.{JSExport, JSExportAll} + +@JSExport +@JSExportAll +object InteractionsGroupedByDiffSerialization { + case class InteractionsGroupedByDiffJson(diff: InteractionDiffResult, interactionPointers: Seq[String]) + def toJson(interactionsGroupedByDiff: InteractionsGroupedByDiff, toPointer: HttpInteraction => String): Json = { + val allDiffs = interactionsGroupedByDiff.map { + case (diff, interactions) => InteractionsGroupedByDiffJson(diff, interactions.map(toPointer)).asJson + } + Json.fromValues(allDiffs) + } +} diff --git a/workspaces/domain-utilities/src/index.ts b/workspaces/domain-utilities/src/index.ts index 24dbd25e2e..d317f5497a 100644 --- a/workspaces/domain-utilities/src/index.ts +++ b/workspaces/domain-utilities/src/index.ts @@ -21,12 +21,54 @@ export function universeFromEvents(events: any[]) { }; } -export function cachingResolversAndRfcStateFromEvents(events: any[]) { +export function universeFromEventsAndAdditionalCommands( + events: any[], + commandsContext: any, + commands: any[] +) { + const { contexts } = opticEngine.com.useoptic; + const { RfcServiceJSFacade } = contexts.rfc; + const rfcServiceFacade = RfcServiceJSFacade(); + const eventStore = rfcServiceFacade.makeEventStore(); + const rfcId = 'testRfcId'; + const eventsAsJson = opticEngine.EventSerialization.fromJs(events); + //process the initial events + eventStore.append(rfcId, eventsAsJson); + const rfcService = rfcServiceFacade.makeRfcService(eventStore); + //tack on the additional commands + rfcService.handleCommands(rfcId, commandsContext, ...commands); + const rfcState = rfcService.currentState(rfcId); + return { + rfcState, + eventStore, + rfcId, + rfcService, + }; +} + +export function cachingResolversAndRfcStateFromEvents( + events: any[], + extraCommands: any[] +) { const { rfcState } = universeFromEvents(events); const resolvers = opticEngine.ShapesResolvers.newCachingResolver(rfcState); return { resolvers, rfcState }; } +export function cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + events: any[], + commandsContext: any, + additionalCommands: any[] +) { + const { rfcState } = universeFromEventsAndAdditionalCommands( + events, + commandsContext, + additionalCommands + ); + const resolvers = opticEngine.ShapesResolvers.newCachingResolver(rfcState); + return { resolvers, rfcState }; +} + export function rfcStateFromEvents(events: any[]) { const { rfcState } = universeFromEvents(events); return rfcState; diff --git a/workspaces/ui/public/example-sessions/todos.json b/workspaces/ui/public/example-sessions/todos.json new file mode 100644 index 0000000000..a31c1358de --- /dev/null +++ b/workspaces/ui/public/example-sessions/todos.json @@ -0,0 +1,480 @@ +{ + "events": [ + { + "PathComponentAdded": { + "pathId": "path_ynIxTwZeam", + "parentPathId": "root", + "name": "todos", + "eventContext": { + "clientId": "anonymous", + "clientSessionId": "2dac8498-2e2c-47df-b46e-9e3c6532f833", + "clientCommandBatchId": "849615a9-7cf7-44dd-b2a6-037f035e09bc", + "createdAt": "2020-06-21T14:16:36.014Z" + } + } + }, + { + "ContributionAdded": { + "id": "path_ynIxTwZeam.POST", + "key": "purpose", + "value": "Create Todo", + "eventContext": { + "clientId": "anonymous", + "clientSessionId": "2dac8498-2e2c-47df-b46e-9e3c6532f833", + "clientCommandBatchId": "849615a9-7cf7-44dd-b2a6-037f035e09bc", + "createdAt": "2020-06-21T14:16:36.018Z" + } + } + }, + { + "ContributionAdded": { + "id": "path_ynIxTwZeam.GET", + "key": "purpose", + "value": "Get Todos", + "eventContext": { + "clientId": "anonymous", + "clientSessionId": "2dac8498-2e2c-47df-b46e-9e3c6532f833", + "clientCommandBatchId": "6e380af4-fc6e-4158-a620-85b425cf4e54", + "createdAt": "2020-06-21T14:16:43.707Z" + } + } + }, + { + "PathParameterAdded": { + "pathId": "path_YbfNjsHZzT", + "parentPathId": "path_ynIxTwZeam", + "name": "id", + "eventContext": null + } + }, + { + "ShapeAdded": { + "shapeId": "shape_gVIdoRBD7X", + "baseShapeId": "$string", + "parameters": { + "DynamicParameterList": { + "shapeParameterIds": [] + } + }, + "name": "", + "eventContext": null + } + }, + { + "PathParameterShapeSet": { + "pathId": "path_YbfNjsHZzT", + "shapeDescriptor": { + "shapeId": "shape_gVIdoRBD7X", + "isRemoved": false + }, + "eventContext": null + } + }, + { + "ContributionAdded": { + "id": "path_YbfNjsHZzT.PATCH", + "key": "purpose", + "value": "Update todo by Id", + "eventContext": { + "clientId": "anonymous", + "clientSessionId": "2dac8498-2e2c-47df-b46e-9e3c6532f833", + "clientCommandBatchId": "d41c5140-18fd-4452-868f-0b671fd07044", + "createdAt": "2020-06-21T14:16:55.311Z" + } + } + } + ], + "session": { + "samples": [ + { + "uuid": "8eff95b1-4f6d-4d3c-ba71-5e3792780ce4", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 502, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "fa0def96-abf8-41a7-ba1f-7fd09c509090", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 502, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "1c0b722f-107c-4082-abe7-f3cdd1d92475", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAEaNQgAEgoKBHRhc2sSAggCEg0KB2R1ZURhdGUSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAhomCAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAIaJggAEgoKBHRhc2sSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggC", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "2488a433-85f6-4b1f-bd80-23c2c46a5c87", + "request": { + "host": "localhost", + "method": "PATCH", + "path": "/todos/5exvbk000", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBA==", + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAI=", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "1c47baf2-0b1d-43a1-a5c5-64f9249801a5", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAEaNQgAEgoKBHRhc2sSAggCEg0KB2R1ZURhdGUSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAhomCAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAIaJggAEgoKBHRhc2sSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggC", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "a5eaf726-5548-4e37-8bc8-d5fb2accb2e9", + "request": { + "host": "localhost", + "method": "POST", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBA==", + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAI=", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "e930e3f5-a006-46d8-85ae-447ce3150906", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAEaNQgAEgoKBHRhc2sSAggCEg0KB2R1ZURhdGUSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAhomCAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAIaJggAEgoKBHRhc2sSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAg==", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "75f97fe4-4b0c-47e3-834f-ba991dd525a7", + "request": { + "host": "localhost", + "method": "PATCH", + "path": "/todos/5exvbk000", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBA==", + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAI=", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + }, + { + "uuid": "a3af782f-8e44-4e17-806d-025c8fb0a4fd", + "request": { + "host": "localhost", + "method": "GET", + "path": "/todos", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAEaNQgAEgoKBHRhc2sSAggCEg0KB2R1ZURhdGUSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAhomCAASCgoEdGFzaxICCAISDAoGaXNEb25lEgIIBBIICgJpZBICCAIaJggAEgoKBHRhc2sSAggCEgwKBmlzRG9uZRICCAQSCAoCaWQSAggCGiYIABIKCgR0YXNrEgIIAhIMCgZpc0RvbmUSAggEEggKAmlkEgIIAg==", + "asJsonString": null, + "asText": null + } + } + }, + "tags": [] + } + ], + "metadata": {} + }, + "examples": {} +} diff --git a/workspaces/ui/src/components/diff/v2/DiffContext.js b/workspaces/ui/src/components/diff/v2/DiffContext.js index 1a37dac861..161a1c0ad1 100644 --- a/workspaces/ui/src/components/diff/v2/DiffContext.js +++ b/workspaces/ui/src/components/diff/v2/DiffContext.js @@ -1,47 +1,53 @@ import React from 'react'; -import {GenericContextFactory} from '../../../contexts/GenericContextFactory'; -import {withRequestTabsContext} from '../../docs/ContentTabs'; +import { GenericContextFactory } from '../../../contexts/GenericContextFactory'; +import { withRequestTabsContext } from '../../docs/ContentTabs'; const { Context: DiffContext, - withContext: withDiffContext + withContext: withDiffContext, } = GenericContextFactory(); - class _DiffContextStore extends React.Component { - state = { selectedDiff: null, selectedInterpretation: null, - isFinishing: false + isFinishing: false, }; + componentDidUpdate(prevProps, prevState, snapshot) { + if (prevProps.diffId !== this.props.diffId) { + this.setState({ + selectedDiff: null, + selectedInterpretation: null, + }); + } + } render() { const { - endpointDiffManger, setSuggestionToPreview, acceptSuggestion, acceptedSuggestions, - setTabTo + setTabTo, + diffsForThisEndpoint, } = this.props; const setSelectedDiff = (diff) => { - this.setState({selectedDiff: diff || null, selectedInterpretation: null}) + this.setState({ + selectedDiff: diff || null, + selectedInterpretation: null, + }); }; + const setSelectedInterpretation = (interpretation) => { setSuggestionToPreview(interpretation); - this.setState({selectedInterpretation: interpretation}); + this.setState({ selectedInterpretation: interpretation }); }; // const setIsFinishing = (bool) => this.setState({isFinishing: bool}); const context = { - endpointDiffManger, - // regions, - // getDiffDescription, - // getInteractionsForDiff, - //selected diff + diffsForThisEndpoint, selectedDiff: this.state.selectedDiff, setSelectedDiff, isFinishing: this.state.isFinishing, @@ -53,7 +59,7 @@ class _DiffContextStore extends React.Component { exampleInteractions: [], selectedInterpretation: null, selectedInterpretationIndex: null, - isFinishing: false + isFinishing: false, }); }, reset: () => { @@ -63,14 +69,14 @@ class _DiffContextStore extends React.Component { exampleInteractions: [], selectedInterpretation: null, selectedInterpretationIndex: null, - isFinishing: false + isFinishing: false, }); }, selectedInterpretation: this.state.selectedInterpretation, setSelectedInterpretation, acceptSuggestion, - acceptedSuggestions + acceptedSuggestions, }; return ( @@ -81,10 +87,6 @@ class _DiffContextStore extends React.Component { } } -const DiffContextStore = withRequestTabsContext(_DiffContextStore) +const DiffContextStore = withRequestTabsContext(_DiffContextStore); -export { - DiffContext, - withDiffContext, - DiffContextStore -}; +export { DiffContext, withDiffContext, DiffContextStore }; diff --git a/workspaces/ui/src/components/diff/v2/DiffHelperCard.js b/workspaces/ui/src/components/diff/v2/DiffHelperCard.js index 9c7afb35e1..008986e263 100644 --- a/workspaces/ui/src/components/diff/v2/DiffHelperCard.js +++ b/workspaces/ui/src/components/diff/v2/DiffHelperCard.js @@ -11,6 +11,8 @@ import Button from '@material-ui/core/Button'; import { DiffContext } from './DiffContext'; import { CompareEquality, mapScala } from '@useoptic/domain'; import { IgnoreDiffContext } from './DiffPageNew'; +import { useDiffDescription, useSuggestionsForDiff } from './DiffHooks'; +import { diff } from 'react-ace'; const useStyles = makeStyles((theme) => ({ root: { @@ -51,7 +53,7 @@ const useStyles = makeStyles((theme) => ({ export const DiffHelperCard = (props) => { const classes = useStyles(); - const { inRequest, inResponse } = props; + const { inRequest, inResponse, description, currentInteraction } = props; const { selectedInterpretation, setSelectedDiff, @@ -60,6 +62,9 @@ export const DiffHelperCard = (props) => { acceptSuggestion, clearPreview, } = useContext(DiffContext); + + const suggestions = useSuggestionsForDiff(selectedDiff, currentInteraction); + const showIt = (selectedDiff && selectedDiff.inRequest && inRequest) || (selectedDiff.inResponse && inResponse); @@ -68,14 +73,12 @@ export const DiffHelperCard = (props) => { return null; } - const suggestions = selectedDiff.suggestions; - return (
- {selectedDiff.description.summary} + {description.summary}
@@ -85,7 +88,7 @@ export const DiffHelperCard = (props) => { - {mapScala(suggestions)((suggestion, n) => { + {suggestions.map((suggestion, n) => { return ( { + const getDescription = async () => { + setDescription((await diffService.loadDescription(diff)) || null); + }; + getDescription(); + }, [diff.toString()]); + + return description; +} + +export function useInteractionWithPointer(pointer) { + const { diffService } = useCaptureContext(); + const [interaction, setInteraction] = useState(null); + const [interactionScala, setInteractionScala] = useState(null); + + useEffect(() => { + const getInteraction = async () => { + if (pointer) { + const interaction = + (await diffService.loadInteraction(pointer)).interaction || null; + setInteraction(interaction); + setInteractionScala(JsonHelper.fromInteraction(interaction)); + } else { + setInteraction(null); + setInteractionScala(null); + } + }; + getInteraction(); + }, [pointer]); + + if (interaction && interactionScala) { + return { interaction, interactionScala }; + } +} + +export function useSuggestionsForDiff(diff, currentInteraction) { + const { diffService } = useCaptureContext(); + const [suggestions, setSuggestions] = useState([]); + + useEffect(() => { + const getSuggestions = async () => { + if (diff) { + setSuggestions( + await diffService.listSuggestions(diff, currentInteraction) + ); + } else { + setSuggestions([]); + } + }; + getSuggestions(); + }, [diff.toString()]); + + return suggestions; +} + +export function useInitialBodyPreview( + diff, + currentInteraction, + inferPolymorphism = false +) { + const { diffService } = useCaptureContext(); + + const [preview, setPreview] = useState(null); + + useEffect(() => { + const getInitialPreview = async () => { + if (diff && currentInteraction) { + setPreview( + await diffService.loadInitialPreview( + diff, + currentInteraction, + inferPolymorphism + ) + ); + } else { + setPreview(null); + } + }; + getInitialPreview(); + }, [diff.toString(), currentInteraction]); + + return preview; +} diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 9b4501ae98..0afd4fa81a 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -14,7 +14,12 @@ import { import { DiffContextStore, withDiffContext } from './DiffContext'; import { withRfcContext } from '../../../contexts/RfcContext'; import LinearProgress from '@material-ui/core/LinearProgress'; -import { Facade, opticEngine, RfcCommandContext } from '@useoptic/domain'; +import { + DiffResultHelper, + Facade, + opticEngine, + RfcCommandContext, +} from '@useoptic/domain'; import SimulatedCommandContext from '../SimulatedCommandContext'; import { primary } from '../../../theme'; import uuidv4 from 'uuid/v4'; @@ -28,6 +33,10 @@ import { PathAndMethod } from './PathAndMethod'; import { useBaseUrl } from '../../../contexts/BaseUrlContext'; import { usePageTitle } from '../../Page'; import { track } from '../../../Analytics'; +import { + CaptureStateStore, + useCaptureContext, +} from '../../../contexts/CaptureContext'; const { diff, JsonHelper } = opticEngine.com.useoptic; const { helpers } = diff; @@ -77,21 +86,23 @@ function DiffPageNew(props) { const baseUrl = useBaseUrl(); const { pathId, method, captureId } = props.match.params; return ( - - + } > - - - + } + > + + + + ); } @@ -118,13 +129,13 @@ function _DiffPageContent(props) { const { history, endpointDescriptor, - endpointDiffManger, classes, initialEventStore, rfcId, acceptedSuggestions, acceptSuggestion, selectedDiff, + diffsForThisEndpoint, clientId, clientSessionId, reset, @@ -183,7 +194,16 @@ function _DiffPageContent(props) { history.push(`${baseUrl}/diffs/${captureId}`); } - const diffRegions = endpointDiffManger.diffRegions; + const newRegions = jsonHelper.seqToJsArray( + DiffResultHelper.newRegionDiffs(diffsForThisEndpoint) + ); + + const bodyDiffs = jsonHelper.seqToJsArray( + DiffResultHelper.bodyDiffs(diffsForThisEndpoint) + ); + + const hasNewRegions = newRegions.length > 0; + const diffCount = DiffResultHelper.diffCount(diffsForThisEndpoint); return ( @@ -198,46 +218,48 @@ function _DiffPageContent(props) {
- + {hasNewRegions && ( + + )} - {!diffRegions.hasNewRegions && ( + {!hasNewRegions && ( <> - + {selectedDiff && } )} - {/**/} - - {/**/} - - {endpointDiffManger.diffCount !== 0 && ( - - )} - - + {/*/!**!/*/} + + {/*/!**!/*/} + + {/*{endpointDiffManger.diffCount !== 0 && (*/} + {/* */} + {/*)}*/} + + {/**/}
)} @@ -304,98 +326,96 @@ function flatten(acc, array) { return [...acc, ...array]; } -const InnerDiffWrapper = withTrafficSessionContext( - withRfcContext(function InnerDiffWrapperBase(props) { - const { - eventStore, - initialEventStore, - rfcService, - rfcId, - cachedQueryResults, - diffManager, - pathId, - method, - } = props; - const { isLoading, session } = props; - const { children } = props; - const { - setSuggestionToPreview, - setAcceptedSuggestions, - acceptedSuggestions, - suggestionToPreview, - ignoredDiffs, - resetIgnored, - resetAccepted, - } = props; - - if (isLoading) { - return ; - } - const rfcState = rfcService.currentState(rfcId); - const { shapesResolvers } = cachedQueryResults; - diffManager.updateEndpointFilter(pathId, method, true); - diffManager.updatedRfcState(rfcState, shapesResolvers); - - const ignored = jsonHelper.jsArrayToSeq(ignoredDiffs); - - const endpointDiffManger = diffManager.managerForPathAndMethod( - pathId, - method, - ignored - ); +const InnerDiffWrapper = function (props) { + const { isLoading, session } = props; + const { children } = props; + const { + endpointDiffs, + updatedAdditionalCommands, + diffId, + } = useCaptureContext(); + const { + setSuggestionToPreview, + setAcceptedSuggestions, + setSelectedDiff, + acceptedSuggestions, + suggestionToPreview, + ignoredDiffs, + resetIgnored, + resetAccepted, + pathId, + method, + } = props; + + if (isLoading) { + return ; + } - const simulatedCommands = suggestionToPreview - ? jsonHelper.seqToJsArray(suggestionToPreview.commands) - : []; - - global.opticDebug.diffContext = { - samples: session ? session.samples : [], - samplesSeq: jsonHelper.jsArrayToSeq( - (session ? session.samples : []).map((x) => - jsonHelper.fromInteraction(x) - ) - ), - // diffResults, - acceptedSuggestions, - suggestionToPreview, - // regions, - // getInteractionsForDiff, - // interpreter, - // interpretationsForDiffAndInteraction, - simulatedCommands, - eventStore, - initialEventStore, - rfcState, - opticEngine, - StableHasher, - }; - /* + const simulatedCommands = suggestionToPreview + ? jsonHelper.seqToJsArray(suggestionToPreview.commands) + : []; + + const diffsForThisEndpoint = DiffResultHelper.diffsForPathAndMethod( + jsonHelper.jsArrayToSeq(endpointDiffs), + pathId, + method, + jsonHelper.jsArrayToSeq(ignoredDiffs) + ); + + // global.opticDebug.diffContext = { + // samples: session ? session.samples : [], + // samplesSeq: jsonHelper.jsArrayToSeq( + // (session ? session.samples : []).map((x) => + // jsonHelper.fromInteraction(x) + // ) + // ), + // // diffResults, + // acceptedSuggestions, + // suggestionToPreview, + // // regions, + // // getInteractionsForDiff, + // // interpreter, + // // interpretationsForDiffAndInteraction, + // simulatedCommands, + // eventStore, + // initialEventStore, + // rfcState, + // opticEngine, + // StableHasher, + // }; + /* const converter = new opticDebug.diffContext.opticEngine.com.useoptic.CoverageReportConverter(opticDebug.diffContext.StableHasher) const report = opticDebug.diffContext.opticEngine.com.useoptic.diff.helpers.CoverageHelpers().getCoverage(opticDebug.diffContext.rfcState, opticDebug.diffContext.samples) converter.toJs(report) - */ + */ - return ( - { - resetIgnored(); - resetAccepted(); - }} - acceptSuggestion={(...suggestions) => { - if (suggestions) { - setAcceptedSuggestions([...acceptedSuggestions, ...suggestions]); - setSuggestionToPreview(null); - } - }} - acceptedSuggestions={acceptedSuggestions} - > - {children} - - ); - }) -); + return ( + { + resetIgnored(); + resetAccepted(); + }} + acceptSuggestion={(...suggestions) => { + if (suggestions) { + const updatedSuggestions = [...acceptedSuggestions, ...suggestions]; + setAcceptedSuggestions(updatedSuggestions); + setSuggestionToPreview(null); + const simulatedCommands = updatedSuggestions + .map((x) => jsonHelper.seqToJsArray(x.commands)) + .reduce(flatten, []); + updatedAdditionalCommands(simulatedCommands); + } + }} + acceptedSuggestions={acceptedSuggestions} + > + {children} + + ); + // }) +}; class _CaptureSessionInlineContext extends React.Component { render() { diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 92381dc78f..04f223e36d 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -51,6 +51,13 @@ import FormGroup from '@material-ui/core/FormGroup'; import FormControlLabel from '@material-ui/core/FormControlLabel'; import Switch from '@material-ui/core/Switch'; import { LightTooltip } from '../../tooltips/LightTooltip'; +import { useCaptureContext } from '../../../contexts/CaptureContext'; +import LinearProgress from '@material-ui/core/LinearProgress'; +import { + useDiffDescription, + useInitialBodyPreview, + useInteractionWithPointer, +} from './DiffHooks'; const useStyles = makeStyles((theme) => ({ root: { @@ -202,7 +209,7 @@ const removal = ( export function DiffCursor(props) { const classes = useStyles(); const { diffs } = props; - const diffCount = lengthScala(diffs); + const diffCount = diffs.length; const { selectedDiff, setSelectedDiff } = useContext(DiffContext); @@ -210,12 +217,14 @@ export function DiffCursor(props) { useEffect(() => { if (selectedDiff === null && diffCount > 0) { - setSelectedDiff(headOrUndefined(diffs)); + setSelectedDiff(diffs[0]); setShowAllDiffs(false); } }, [selectedDiff, diffCount]); const DiffItem = ({ diff, button }) => { + const description = useDiffDescription(diff); + return ( - - {diff.description.title} - + {description && ( + + {description.title} + {/*{diff.toString()}*/} + + )} ); @@ -248,7 +260,7 @@ export function DiffCursor(props) { Choose a diff to review - {mapScala(diffs)((diff, n) => ( + {diffs.map((diff, n) => ( ))} @@ -329,7 +341,7 @@ function _NewRegions(props) { const [showExpanded, setShowExpanded] = useState(false); const [inferPolymorphism, setInferPolymorphism] = React.useState(false); - if (lengthScala(newRegions) === 0) { + if (newRegions.length === 0) { return null; } @@ -350,23 +362,24 @@ function _NewRegions(props) { isDeselected(diffBlock) ).map((i) => i.diff); ignoreDiff(...allIgnored); - const allApproved = filterScala(newRegions)( - (diffBlock) => !isDeselected(diffBlock) - ).map((i) => { - return i.suggestion(inferPolymorphism); - }); + const allApproved = newRegions + .filter((diffBlock) => !isDeselected(diffBlock)) + .map((i) => { + return i.suggestion(inferPolymorphism); + }); acceptSuggestion(...allApproved); }; const ignoreAll = () => { - const allIgnored = mapScala(newRegions)((i) => i.diff); + const allIgnored = newRegions.map((i) => i.diff); ignoreDiff(...allIgnored); }; const PreviewNewBodyRegion = ({ diff, inferPolymorphism }) => { const isChecked = !isDeselected(diff); - const { interactions } = diff; - const length = lengthScala(interactions); + const length = diff.interactionsCount; + + console.log('new bodies? ', diff.diff.toString()); const [interactionIndex, setInteractionIndex] = React.useState(1); @@ -374,12 +387,27 @@ function _NewRegions(props) { setInteractionIndex(1); }, [diff]); - const currentInteraction = getIndex(interactions)(interactionIndex - 1); - const preview = getOrUndefined(diff.previewRender(currentInteraction)); - const shapePreview = getOrUndefined( - diff.previewShape(currentInteraction, inferPolymorphism) + const currentInteractionPointer = getIndex(diff.interactionPointers)( + interactionIndex - 1 + ); + + const currentInteraction = useInteractionWithPointer( + currentInteractionPointer + ); + + const initialBody = useInitialBodyPreview( + diff, + currentInteraction && currentInteraction.interactionScala, + inferPolymorphism ); + if (!currentInteraction || !initialBody) { + return ; + } + + const bodyPreview = getOrUndefined(initialBody.bodyPreview); + const shapePreview = getOrUndefined(initialBody.shapePreview); + return ( <> @@ -399,7 +427,7 @@ function _NewRegions(props) { getOrUndefined(diff.contentType) || 'No Body' }` } - secondary={`Observed ${diff.count} times`} + secondary={`Observed ${diff.interactionsCount} times`} primaryTypographyProps={{ style: { fontSize: 14 } }} secondaryTypographyProps={{ style: { fontSize: 12 } }} /> @@ -425,7 +453,7 @@ function _NewRegions(props) { })} >
- {preview && ( + {bodyPreview && ( @@ -439,7 +467,7 @@ function _NewRegions(props) { } > - + )} @@ -465,27 +493,31 @@ function _NewRegions(props) { ); }; - const newRequests = mapScala(newRegions)((diff) => { - if (diff.inRequest) { - return ( - - ); - } - }).filter((i) => !!i); - - const newResponses = mapScala(newRegions)((diff) => { - if (diff.inResponse) { - return ( - - ); - } - }).filter((i) => !!i); + const newRequests = newRegions + .map((diff) => { + if (diff.inRequest) { + return ( + + ); + } + }) + .filter((i) => !!i); + + const newResponses = newRegions + .map((diff) => { + if (diff.inResponse) { + return ( + + ); + } + }) + .filter((i) => !!i); const copy = newResponses.length > 0 && diff --git a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js index 5ce6347978..25e4348b04 100644 --- a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js +++ b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js @@ -4,6 +4,7 @@ import Typography from '@material-ui/core/Typography'; import Pagination from '@material-ui/lab/Pagination'; import { DiffPreviewer, + DiffResultHelper, getIndex, getOrUndefined, JsonHelper, @@ -21,6 +22,8 @@ import { DiffHelperCard } from './DiffHelperCard'; import SimulatedCommandContext from '../SimulatedCommandContext'; import { BreadcumbX } from './DiffPreview'; import { primary } from '../../../theme'; +import { useDiffDescription, useInteractionWithPointer } from './DiffHooks'; +import LinearProgress from '@material-ui/core/LinearProgress'; const useStyles = makeStyles((theme) => ({ root: { @@ -67,14 +70,15 @@ const useStyles = makeStyles((theme) => ({ export default (props) => { const classes = useStyles(); const { diff } = props; - const { description, interactions } = diff; + + const description = useDiffDescription(diff); const { selectedInterpretation } = useContext(DiffContext); const { rfcId, rfcService, cachedQueryResults, eventStore } = useContext( RfcContext ); - const length = lengthScala(interactions); + const length = diff.interactionsCount; const [interactionIndex, setInteractionIndex] = React.useState(1); @@ -85,9 +89,22 @@ export default (props) => { const currentRfcState = rfcService.currentState(rfcId); const { shapesResolvers } = cachedQueryResults; - const currentInteraction = getIndex(interactions)(interactionIndex - 1); - const { method, path } = currentInteraction.request; - const diffPreviewer = new DiffPreviewer(shapesResolvers, currentRfcState); + const currentInteractionPointer = getIndex(diff.interactionPointers)( + interactionIndex - 1 + ); + + const currentInteraction = useInteractionWithPointer( + currentInteractionPointer + ); + + if (!currentInteraction || !description) { + return ; + } + + const { interaction, interactionScala } = currentInteraction; + + const { method, path } = interactionScala.request; + return (
@@ -113,7 +130,7 @@ export default (props) => {
- + { location={[ `Request Body`, getOrUndefined( - currentInteraction.request.body.contentType + interactionScala.request.body.contentType ), ]} /> @@ -149,15 +166,17 @@ export default (props) => { rfcId ); - const preview = diff.previewRender( - currentInteraction, - toOption(currentRfcState) + const preview = DiffResultHelper.previewDiff( + diff, + interactionScala, + currentRfcState ); + return ( ); @@ -170,8 +189,9 @@ export default (props) => { @@ -180,7 +200,13 @@ export default (props) => { })()} } - right={} + right={ + + } />
@@ -188,7 +214,7 @@ export default (props) => {
- + { @@ -223,15 +249,16 @@ export default (props) => { const currentRfcState = rfcService.currentState( rfcId ); - const preview = diff.previewRender( - currentInteraction, - toOption(currentRfcState) + const preview = DiffResultHelper.previewDiff( + diff, + interactionScala, + currentRfcState ); return ( ); @@ -244,8 +271,9 @@ export default (props) => { @@ -254,7 +282,13 @@ export default (props) => { })()} } - right={} + right={ + + } />
diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 51a493129f..18448fc5af 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -1,6 +1,8 @@ import * as React from 'react'; import { useContext, useEffect, useState } from 'react'; import { useServices } from './SpecServiceContext'; +import { RfcContext } from './RfcContext'; +import { ScalaJSHelpers } from '@useoptic/domain'; export const CaptureContext = React.createContext(null); @@ -10,12 +12,17 @@ export function useCaptureContext() { export function CaptureStateStore(props) { const { captureId } = props; + const [diffService, setDiffService] = useState(null); + const [additionalCommands, setAdditionalCommands] = useState([]); + + const { eventStore, rfcId } = useContext(RfcContext); // diff state const [endpointDiffs, setEndpointDiffs] = useState([]); const [unrecognizedUrls, setUnrecognizedUrls] = useState([]); const [stats, setStats] = useState({}); + const [diffId, setDiffId] = useState(''); const { specService, @@ -28,6 +35,7 @@ export function CaptureStateStore(props) { diffService.loadStats().then(setStats); diffService.listDiffs().then(setEndpointDiffs); diffService.listUnrecognizedUrls().then(setUnrecognizedUrls); + setDiffId(diffService.diffId()); } } useEffect(() => { @@ -35,12 +43,20 @@ export function CaptureStateStore(props) { async function task() { //@TODO: handle error //@TODO:getConfig for ignoreRequests config - const config = await captureService.startDiff(); - const diffServiceForCapture = diffServiceFactory(specService, config); + const config = await captureService.startDiff( + ScalaJSHelpers.eventsJsArray(eventStore.listEvents(rfcId)), + [], + setAdditionalCommands + ); + const diffServiceForCapture = diffServiceFactory( + specService, + additionalCommands, + config + ); setDiffService(diffServiceForCapture); } task(); - }, [captureId]); + }, [captureId, additionalCommands]); useEffect(() => { restart(); @@ -51,9 +67,15 @@ export function CaptureStateStore(props) { return
loading...
; } + const updatedAdditionalCommands = (additionalCommands) => { + setAdditionalCommands(additionalCommands); + }; + const value = { diffService, restart, + updatedAdditionalCommands, + diffId, endpointDiffs, unrecognizedUrls, stats, diff --git a/workspaces/ui/src/entrypoints/testing-sessions.js b/workspaces/ui/src/entrypoints/testing-sessions.js index 7bd775c38d..aec3add97a 100644 --- a/workspaces/ui/src/entrypoints/testing-sessions.js +++ b/workspaces/ui/src/entrypoints/testing-sessions.js @@ -25,8 +25,8 @@ export default function TestingSessions(props) { return new ExampleCaptureService(specService, captureId); }; - const diffServiceFactory = (specService, config) => { - return new ExampleDiffService(specService, config); + const diffServiceFactory = (specService, additionalCommands, config) => { + return new ExampleDiffService(specService, additionalCommands, config); }; return ( diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index 1635963848..8bc26f1fca 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -1,7 +1,9 @@ import { ICaptureService, IDiffService, + IGetDescriptionResponse, IListDiffsResponse, + IListSuggestionsResponse, IListUnrecognizedUrlsResponse, ILoadInteractionResponse, ILoadStatsResponse, @@ -13,14 +15,25 @@ import { ISpecService } from '@useoptic/cli-client/build/spec-service-client'; import { captureId } from '../../components/loaders/ApiLoader'; import { cachingResolversAndRfcStateFromEvents, + cachingResolversAndRfcStateFromEventsAndAdditionalCommands, normalizedDiffFromRfcStateAndInteractions, } from '@useoptic/domain-utilities'; -import { DiffResultHelper, ScalaJSHelpers } from '@useoptic/domain/build'; +import { + DiffResultHelper, + JsonHelper, + RfcCommandContext, + ScalaJSHelpers, +} from '@useoptic/domain/build'; +import uuidv4 from 'uuid/v4'; + export class ExampleCaptureService implements ICaptureService { async startDiff( + events: any[], ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise { + debugger; + return { loadDiffUrl: '', loadUnrecognizedUrlsUrl: '', @@ -32,12 +45,27 @@ export class ExampleCaptureService implements ICaptureService { export class ExampleDiffService implements IDiffService { private readonly diffsPromise: Promise; - constructor(private specService: ISpecService) { + constructor( + private specService: ISpecService, + private additionalCommands: IRfcCommand[] + ) { async function computeInitialDiff() { const capture = await specService.listCapturedSamples(captureId); const events = await specService.listEvents(); - const { resolvers, rfcState } = cachingResolversAndRfcStateFromEvents( - JSON.parse(events) + + const commandContext = new RfcCommandContext( + 'simulated', + 'simulated', + 'simulated' + ); + + const { + resolvers, + rfcState, + } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + JSON.parse(events), + commandContext, + additionalCommands ); const diffs = normalizedDiffFromRfcStateAndInteractions( resolvers, @@ -52,6 +80,10 @@ export class ExampleDiffService implements IDiffService { } this.diffsPromise = computeInitialDiff(); } + private _diffId: string = uuidv4(); + diffId(): string { + return this._diffId; + } async listDiffs(): Promise { const { diffs, rfcState } = await this.diffsPromise; @@ -74,8 +106,8 @@ export class ExampleDiffService implements IDiffService { async loadInteraction( interactionPointer: string ): Promise { - const interactions = await this.specService.listCapturedSamples(captureId); - const interaction = interactions.find( + const capture = await this.specService.listCapturedSamples(captureId); + const interaction = capture.samples.find( (x: IHttpInteraction) => x.uuid === interactionPointer ); return { @@ -91,4 +123,62 @@ export class ExampleDiffService implements IDiffService { captureCompleted: true, }); } + + async loadDescription(diff: any): Promise { + const { rfcState } = await this.diffsPromise; + const interaction = await this.loadInteraction( + diff.firstInteractionPointer + ); + if (interaction.interaction) { + return DiffResultHelper.descriptionFromDiff( + diff.diff, + rfcState, + JsonHelper.fromInteraction(interaction.interaction) + ); + } else { + return null; + } + } + + async listSuggestions( + diff: any, + interaction: any + ): Promise { + const { rfcState } = await this.diffsPromise; + return ScalaJSHelpers.toJsArray( + DiffResultHelper.suggestionsForDiff(diff, interaction, rfcState) + ); + } + + async loadInitialPreview( + diff: any, + currentInteraction: any, + inferPolymorphism: boolean + ) { + const { rfcState } = await this.diffsPromise; + const bodyPreview = diff.previewBodyRender(currentInteraction); + + let interactions = []; + if (inferPolymorphism) { + interactions = await Promise.all( + ScalaJSHelpers.toJsArray(diff.interactionPointers).map(async (i) => { + const { interaction } = await this.loadInteraction(i); + return JsonHelper.fromInteraction(interaction); + }) + ); + } else { + interactions = [currentInteraction]; + } + + const shapePreview = diff.previewShapeRender( + rfcState, + JsonHelper.jsArrayToVector(interactions), + inferPolymorphism + ); + + return { + bodyPreview, + shapePreview, + }; + } } diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 6a9c338580..4f02e4a404 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -2,12 +2,14 @@ import { IHttpInteraction } from '@useoptic/domain-types'; export interface ICaptureService { startDiff( + events: any[], ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise; } export interface IDiffService { + diffId(): string; // backend loadInteraction( interactionPointer: string @@ -15,6 +17,17 @@ export interface IDiffService { listDiffs(): Promise; listUnrecognizedUrls(): Promise; loadStats(): Promise; + // frontend for now + loadDescription(diff: any): Promise; + listSuggestions( + diff: any, + interaction: any + ): Promise; + loadInitialPreview( + diff: any, + currentInteraction: any, + inferPolymorphism: boolean + ); } export interface IRfcCommand {} @@ -41,3 +54,6 @@ export interface IListDiffsResponse { export interface IListUnrecognizedUrlsResponse { urls: any[]; } + +export interface IGetDescriptionResponse {} +export interface IListSuggestionsResponse {} From da46f53ac12556c161d93095c4d24e3b58a0bd86 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Mon, 22 Jun 2020 18:12:35 -0400 Subject: [PATCH 26/85] working poc --- .../com/useoptic/ux/DiffResultHelper.scala | 40 +++++++++++++++---- .../ui/src/components/diff/v2/DiffPageNew.js | 35 ++++++++-------- .../ui/src/components/diff/v2/DiffPreview.js | 39 ++++++++++++------ .../components/diff/v2/DiffReviewExpanded.js | 3 ++ workspaces/ui/src/contexts/CaptureContext.js | 2 +- .../src/services/diff/ExampleDiffService.ts | 5 +-- 6 files changed, 83 insertions(+), 41 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index 11a86ab57a..f9373c71d1 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -1,6 +1,7 @@ package com.useoptic.ux import com.useoptic.contexts.requests.Commands.PathComponentId +import com.useoptic.contexts.rfc.Commands.RfcCommand import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff @@ -39,17 +40,17 @@ object DiffResultHelper { case _ => false }.flatMap { case (diff, interactions) => getLocationForDiff(diff, rfcState).map(location => { - EndpointDiffs(location.pathId, location.method, Map(diff -> interactions.map(i => i.uuid))) + EndpointDiffs(location.method, location.pathId, Map(diff -> interactions.map(i => i.uuid))) }) }.groupBy(i => (i.pathId, i.method)).map { case ((path, method), diffs) => { val diffsForTHisOne = diffs.flatMap(_.diffs).toMap - println(s"NEW ENDPOINT DIFF for ${method} ${path} ${diffsForTHisOne.size}") EndpointDiffs(method, path, diffsForTHisOne) } } }.toVector.sortBy(_.diffs.size).reverse + def interactionsWithDiffsCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.flatMap(_._2).toSet.size def diffCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.size def newRegionDiffs(diffs: Map[InteractionDiffResult, Seq[String]]): Seq[NewRegionDiff] = { @@ -79,10 +80,11 @@ object DiffResultHelper { } override val statusCode: Option[Int] = _diff match { case d: UnmatchedResponseStatusCode => Some(d.interactionTrail.statusCode()) + case d: UnmatchedResponseBodyContentType => Some(d.interactionTrail.statusCode()) case _ => None } } - }}.toVector + }}.toVector.sortBy(_.statusCode) } def bodyDiffs(diffs: Map[InteractionDiffResult, Seq[String]]): Seq[BodyDiff] = { @@ -184,7 +186,7 @@ case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[Int @JSExportAll abstract class NewRegionDiff { - val diff: DiffResult + val diff: InteractionDiffResult val interactionPointers: Seq[String] val inRequest: Boolean val inResponse: Boolean @@ -203,7 +205,7 @@ abstract class NewRegionDiff { new DiffPreviewer(null, null).previewBody(body) } - def previewShapeRender(rfcState: RfcState, interactions: Vector[HttpInteraction], inferPolymorphism: Boolean): Option[ShapeOnlyRenderHelper] = { + def previewShapeRender(rfcState: RfcState, interactions: Vector[HttpInteraction], inferPolymorphism: Boolean): PreviewShapeAndCommands = { val diffPreviewer = new DiffPreviewer(ShapesResolvers.newResolver(rfcState), rfcState) def getBody(i: HttpInteraction) = { @@ -216,14 +218,31 @@ abstract class NewRegionDiff { val firstInteraction = interactions.head - if (inferPolymorphism) { + val result = if (inferPolymorphism) { val bodies = interactions.map(getBody).flatMap(BodyUtilities.parseBody) val preview = diffPreviewer.shapeOnlyFromShapeBuilder(bodies) - preview.map(_._2) + preview.map(i => PreviewShapeAndCommands(Some(i._2), toSuggestion(Vector(interactions.head), rfcState, inferPolymorphism).headOption)) } else { - diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten).map(_._2) + diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten) + .map(i => PreviewShapeAndCommands(Some(i._2), toSuggestion(interactions, rfcState, inferPolymorphism).headOption)) } + + result.getOrElse(PreviewShapeAndCommands(None, None)) } + + + def toSuggestion(interactions: Vector[HttpInteraction], currentRfcState: RfcState, inferPolymorphism: Boolean): Seq[InteractiveDiffInterpretation] = { + val resolvers = ShapesResolvers.newResolver(currentRfcState) + val basicInterpreter = new DefaultInterpreters(resolvers, currentRfcState) + if (inferPolymorphism) { + basicInterpreter.interpret(diff, interactions) + } else { + basicInterpreter.interpret(diff, interactions.head) + } + } + + override def toString: PathComponentId = diff.toString + interactionPointers.toString() + } @JSExportAll @@ -234,6 +253,11 @@ abstract class BodyDiff { val inRequest: Boolean val inResponse: Boolean + override def toString: PathComponentId = diff.toString + interactionPointers.toString() + def firstInteractionPointer: String = interactionPointers.head def interactionsCount: Int = interactionPointers.size } + +@JSExportAll +case class PreviewShapeAndCommands(shape: Option[ShapeOnlyRenderHelper], suggestion: Option[InteractiveDiffInterpretation]) diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 0afd4fa81a..1357c4ca8f 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -204,6 +204,9 @@ function _DiffPageContent(props) { const hasNewRegions = newRegions.length > 0; const diffCount = DiffResultHelper.diffCount(diffsForThisEndpoint); + const interactionsWithDiffsCount = DiffResultHelper.interactionsWithDiffsCount( + diffsForThisEndpoint + ); return ( @@ -243,23 +246,21 @@ function _DiffPageContent(props) { {/*/!* region={endpointDiffManger.diffRegions.responseRegions}*!/*/} {/*/!* title="Response Body Diffs"/>*!/*/} - {/*{endpointDiffManger.diffCount !== 0 && (*/} - {/* */} - {/*)}*/} - - {/**/} + {diffCount !== 0 && ( + + )} + +
)} diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 04f223e36d..b3cea6e0d4 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -220,7 +220,7 @@ export function DiffCursor(props) { setSelectedDiff(diffs[0]); setShowAllDiffs(false); } - }, [selectedDiff, diffCount]); + }, [diffs.join((i) => i.toString())]); const DiffItem = ({ diff, button }) => { const description = useDiffDescription(diff); @@ -337,6 +337,8 @@ function _NewRegions(props) { } = props; const classes = useStyles(); + const { diffService } = useCaptureContext(); + const [deselected, setDeselected] = useState([]); const [showExpanded, setShowExpanded] = useState(false); const [inferPolymorphism, setInferPolymorphism] = React.useState(false); @@ -357,16 +359,31 @@ function _NewRegions(props) { } }; - const onApply = () => { - const allIgnored = filterScala(newRegions)((diffBlock) => - isDeselected(diffBlock) - ).map((i) => i.diff); + const onApply = async () => { + const allIgnored = newRegions + .map((diffBlock) => isDeselected(diffBlock)) + .map((i) => i.diff); + ignoreDiff(...allIgnored); - const allApproved = newRegions - .filter((diffBlock) => !isDeselected(diffBlock)) - .map((i) => { - return i.suggestion(inferPolymorphism); - }); + const allApproved = await Promise.all( + newRegions + .filter((diffBlock) => !isDeselected(diffBlock)) + .map(async (i) => { + //@todo this is messy and doubles the compute + const { interaction } = await diffService.loadInteraction( + i.firstInteractionPointer + ); + + const { suggestion } = await diffService.loadInitialPreview( + i, + JsonHelper.fromInteraction(interaction), + inferPolymorphism + ); + + return getOrUndefined(suggestion); + }) + ).filter((i) => Boolean(i)); + acceptSuggestion(...allApproved); }; @@ -379,8 +396,6 @@ function _NewRegions(props) { const isChecked = !isDeselected(diff); const length = diff.interactionsCount; - console.log('new bodies? ', diff.diff.toString()); - const [interactionIndex, setInteractionIndex] = React.useState(1); useEffect(() => { diff --git a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js index 25e4348b04..6705c96bff 100644 --- a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js +++ b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js @@ -71,6 +71,9 @@ export default (props) => { const classes = useStyles(); const { diff } = props; + const ds = diff.toString(); + console.log('diff string ', ds); + const description = useDiffDescription(diff); const { selectedInterpretation } = useContext(DiffContext); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 18448fc5af..e109ab9dc3 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -46,7 +46,7 @@ export function CaptureStateStore(props) { const config = await captureService.startDiff( ScalaJSHelpers.eventsJsArray(eventStore.listEvents(rfcId)), [], - setAdditionalCommands + additionalCommands ); const diffServiceForCapture = diffServiceFactory( specService, diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index 8bc26f1fca..b71da0abb4 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -32,8 +32,6 @@ export class ExampleCaptureService implements ICaptureService { ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise { - debugger; - return { loadDiffUrl: '', loadUnrecognizedUrlsUrl: '', @@ -178,7 +176,8 @@ export class ExampleDiffService implements IDiffService { return { bodyPreview, - shapePreview, + shapePreview: shapePreview.shape, + suggestion: shapePreview.suggestion, }; } } From 7264399eea82a6e8a650d8d4d10c578b556fd20a Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Tue, 23 Jun 2020 09:07:40 -0400 Subject: [PATCH 27/85] temp fix for reset --- .../scala/com/useoptic/ux/DiffResultHelper.scala | 15 +++++++-------- .../ui/src/components/diff/v2/DiffPageNew.js | 1 + .../ui/src/components/diff/v2/DiffPreview.js | 2 +- .../ui/src/services/diff/ExampleDiffService.ts | 11 +++++++---- 4 files changed, 16 insertions(+), 13 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index f9373c71d1..8bcf627669 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -12,6 +12,7 @@ import com.useoptic.diff.shapes.resolvers.ShapesResolvers import com.useoptic.types.capture.{Body, HttpInteraction} import scala.scalajs.js.annotation.{JSExport, JSExportAll} +import scala.util.Try @JSExport @JSExportAll @@ -140,10 +141,10 @@ object DiffResultHelper { case _ => None } - def descriptionFromDiff(diff: InteractionDiffResult, rfcState: RfcState, anInteraction: HttpInteraction): DiffDescription = { + def descriptionFromDiff(diff: InteractionDiffResult, rfcState: RfcState, anInteraction: HttpInteraction): Option[DiffDescription] = Try { val descriptionInterpreters = new DiffDescriptionInterpreters(rfcState) descriptionInterpreters.interpret(diff, anInteraction) - } + }.toOption def previewDiff(bodyDiff: BodyDiff, anInteraction: HttpInteraction, currentRfcState: RfcState): Option[SideBySideRenderHelper] = { val simulatedDiffPreviewer = new DiffPreviewer(currentRfcState) @@ -218,16 +219,14 @@ abstract class NewRegionDiff { val firstInteraction = interactions.head - val result = if (inferPolymorphism) { + if (inferPolymorphism) { val bodies = interactions.map(getBody).flatMap(BodyUtilities.parseBody) val preview = diffPreviewer.shapeOnlyFromShapeBuilder(bodies) - preview.map(i => PreviewShapeAndCommands(Some(i._2), toSuggestion(Vector(interactions.head), rfcState, inferPolymorphism).headOption)) + PreviewShapeAndCommands(preview.map(_._2), toSuggestion(Vector(interactions.head), rfcState, inferPolymorphism).headOption) } else { - diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten) - .map(i => PreviewShapeAndCommands(Some(i._2), toSuggestion(interactions, rfcState, inferPolymorphism).headOption)) + val preview = diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten) + PreviewShapeAndCommands(preview.map(_._2), toSuggestion(interactions, rfcState, inferPolymorphism).headOption) } - - result.getOrElse(PreviewShapeAndCommands(None, None)) } diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 1357c4ca8f..38dd48dda9 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -396,6 +396,7 @@ converter.toJs(report) diffsForThisEndpoint={diffsForThisEndpoint} setSuggestionToPreview={setSuggestionToPreview} reset={() => { + updatedAdditionalCommands([]); resetIgnored(); resetAccepted(); }} diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index b3cea6e0d4..69209ba484 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -382,7 +382,7 @@ function _NewRegions(props) { return getOrUndefined(suggestion); }) - ).filter((i) => Boolean(i)); + ); acceptSuggestion(...allApproved); }; diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index b71da0abb4..aea49fb6ed 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -25,6 +25,7 @@ import { ScalaJSHelpers, } from '@useoptic/domain/build'; import uuidv4 from 'uuid/v4'; +import { getOrUndefined } from '@useoptic/domain'; export class ExampleCaptureService implements ICaptureService { async startDiff( @@ -128,10 +129,12 @@ export class ExampleDiffService implements IDiffService { diff.firstInteractionPointer ); if (interaction.interaction) { - return DiffResultHelper.descriptionFromDiff( - diff.diff, - rfcState, - JsonHelper.fromInteraction(interaction.interaction) + return getOrUndefined( + DiffResultHelper.descriptionFromDiff( + diff.diff, + rfcState, + JsonHelper.fromInteraction(interaction.interaction) + ) ); } else { return null; From 0fb9bb7b50ba0bb5da2f00aab4e6e559c21d289c Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Thu, 25 Jun 2020 15:52:42 -0400 Subject: [PATCH 28/85] - LocalCli services should match example services - diffs should use pointers to interactions - interactions should be loadable by capture - work to be done: ignoreRequests, undocumented urls, misc ui discrepancies --- .../com/useoptic/DiffSerialization.scala | 41 +++- .../useoptic/InteractionPointerHelpers.scala | 14 ++ .../useoptic/diff/helpers/DiffHelpers.scala | 23 ++ .../com/useoptic/ux/DiffResultHelper.scala | 25 +-- workspaces/cli-scripts/package.json | 3 +- .../cli-scripts/src/emit-diff-projections.ts | 15 ++ workspaces/cli-scripts/src/index.ts | 9 + workspaces/cli-server/package.json | 1 + .../cli-server/src/diffs/diff-manager.ts | 49 ++++ .../cli-server/src/routers/capture-router.ts | 209 ++++++++++++++++++ .../cli-server/src/routers/spec-router.ts | 81 +------ .../avro/file-system/interaction-iterator.ts | 110 +++++++++ .../cli-shared/src/diffs/diff-worker.ts | 150 +++++++++++++ workspaces/cli-shared/src/index.ts | 14 ++ workspaces/domain-utilities/src/index.ts | 5 +- .../ui/src/components/diff/v2/DiffHooks.js | 4 +- .../ui/src/components/diff/v2/DiffPreview.js | 4 +- workspaces/ui/src/contexts/CaptureContext.js | 30 ++- workspaces/ui/src/entrypoints/localcli.js | 26 ++- .../ui/src/entrypoints/testing-sessions.js | 63 +++++- .../src/services/diff/ExampleDiffService.ts | 96 +++----- .../src/services/diff/LocalCliDiffService.ts | 141 ++++++++++++ workspaces/ui/src/services/diff/index.ts | 8 +- 23 files changed, 941 insertions(+), 180 deletions(-) create mode 100644 core/optic/js/src/main/scala/com/useoptic/InteractionPointerHelpers.scala create mode 100644 workspaces/cli-scripts/src/emit-diff-projections.ts create mode 100644 workspaces/cli-server/src/diffs/diff-manager.ts create mode 100644 workspaces/cli-server/src/routers/capture-router.ts create mode 100644 workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts create mode 100644 workspaces/cli-shared/src/diffs/diff-worker.ts create mode 100644 workspaces/ui/src/services/diff/LocalCliDiffService.ts diff --git a/core/optic/js/src/main/scala/com/useoptic/DiffSerialization.scala b/core/optic/js/src/main/scala/com/useoptic/DiffSerialization.scala index 11f1573ceb..0ea6707853 100644 --- a/core/optic/js/src/main/scala/com/useoptic/DiffSerialization.scala +++ b/core/optic/js/src/main/scala/com/useoptic/DiffSerialization.scala @@ -1,10 +1,12 @@ package com.useoptic -import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff -import io.circe.{Encoder, Json} -import io.circe.scalajs.convertJsonToJs -import io.circe.syntax._ +import com.useoptic.diff.helpers.DiffHelpers.{InteractionPointersGroupedByDiff, InteractionsGroupedByDiff} +import com.useoptic.diff.interactions.InteractionDiffResult + +import io.circe.{Decoder, Encoder, Json} +import io.circe.scalajs.{convertJsToJson, convertJsonToJs} import io.circe.generic.auto._ +import io.circe.syntax._ import scala.scalajs.js import scala.scalajs.js.annotation.{JSExportAll, JSExportTopLevel} @@ -24,4 +26,35 @@ object DiffJsonSerializer { def toJs(interactionsGroupedByDiff: InteractionsGroupedByDiff): js.Any = { convertJsonToJs(interactionsGroupedByDiff.asJson) } +} + +@JSExportTopLevel("DiffWithPointersJsonSerializer") +@JSExportAll +object DiffWithPointersJsonSerializer { + implicit val diffResultEncoder: Encoder[InteractionPointersGroupedByDiff] = x => { + x.toVector.asJson + } + + def toJson(interactionsGroupedByDiff: InteractionPointersGroupedByDiff): Json = { + interactionsGroupedByDiff.asJson + } + + def toJs(interactionsGroupedByDiff: InteractionPointersGroupedByDiff): js.Any = { + convertJsonToJs(interactionsGroupedByDiff.asJson) + } +} +@JSExportTopLevel("DiffWithPointersJsonDeserializer") +@JSExportAll +object DiffWithPointersJsonDeserializer { + implicit val diffResultDecoder: Decoder[InteractionPointersGroupedByDiff] = x => { + Right(x.as[Seq[(InteractionDiffResult, Seq[String])]].right.get.toMap) + } + + def fromJs(x: js.Any) = { + fromJson(convertJsToJson(x).right.get) + } + + def fromJson(x: Json): InteractionPointersGroupedByDiff = { + x.as[InteractionPointersGroupedByDiff].right.get + } } \ No newline at end of file diff --git a/core/optic/js/src/main/scala/com/useoptic/InteractionPointerHelpers.scala b/core/optic/js/src/main/scala/com/useoptic/InteractionPointerHelpers.scala new file mode 100644 index 0000000000..60e0fc7666 --- /dev/null +++ b/core/optic/js/src/main/scala/com/useoptic/InteractionPointerHelpers.scala @@ -0,0 +1,14 @@ +package com.useoptic + +import com.useoptic.types.capture.HttpInteraction + +import scala.scalajs.js +import scala.scalajs.js.annotation.{JSExport, JSExportAll} + +@JSExport +@JSExportAll +class InteractionPointerHelpers(converter: js.Function1[HttpInteraction, String]) { + def toPointer(interaction: HttpInteraction): String = { + converter(interaction) + } +} diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/DiffHelpers.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/DiffHelpers.scala index 7c68d3314a..2a04be5e93 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/DiffHelpers.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/DiffHelpers.scala @@ -34,6 +34,7 @@ object DiffHelpers { } type InteractionsGroupedByDiff = Map[InteractionDiffResult, Seq[HttpInteraction]] + type InteractionPointersGroupedByDiff = Map[InteractionDiffResult, Seq[String]] def groupByDiffs(resolvers: ShapesResolvers, rfcState: RfcState, interactions: Seq[HttpInteraction], initial: InteractionsGroupedByDiff = Map.empty): InteractionsGroupedByDiff = { interactions.foldLeft(initial)((acc, interaction) => { @@ -58,6 +59,28 @@ object DiffHelpers { }) } + type InteractionToPointer = (HttpInteraction) => String + + def groupInteractionPointersByNormalizedDiffs(resolvers: ShapesResolvers, rfcState: RfcState, interactions: Seq[HttpInteraction], toPointer: InteractionToPointer, initial: InteractionPointersGroupedByDiff = Map.empty): InteractionPointersGroupedByDiff = { + interactions.foldLeft(initial)((acc, interaction) => { + val diffs = diff(resolvers, rfcState, interaction) + val changedItems = + diffs.map((diff) => { + val normalized = diff.normalize() + (normalized -> (acc.getOrElse(normalized, Seq.empty) :+ toPointer(interaction))) + }).toMap + acc ++ changedItems + }) + } + + def groupInteractionPointerByNormalizedDiffs(resolvers: ShapesResolvers, rfcState: RfcState, interaction: HttpInteraction, pointer: String, initial: InteractionPointersGroupedByDiff = Map.empty): InteractionPointersGroupedByDiff = { + groupInteractionPointersByNormalizedDiffs(resolvers, rfcState, Seq(interaction), (_) => pointer, initial) + } + + def emptyInteractionsGroupedByDiff(): InteractionsGroupedByDiff = Map.empty + + def emptyInteractionPointersGroupedByDiff(): InteractionPointersGroupedByDiff = Map.empty + def hasDiff(diff: InteractionsGroupedByDiff) = diff.isEmpty def distinctDiffCount(diff: InteractionsGroupedByDiff) = diff.keys.size diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index 8bcf627669..bc2605b459 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -1,13 +1,11 @@ package com.useoptic.ux import com.useoptic.contexts.requests.Commands.PathComponentId -import com.useoptic.contexts.rfc.Commands.RfcCommand import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} -import com.useoptic.diff.helpers.DiffHelpers.InteractionsGroupedByDiff +import com.useoptic.diff.helpers.DiffHelpers.InteractionPointersGroupedByDiff import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescription, DiffDescriptionInterpreters} -import com.useoptic.diff.interactions.{BodyUtilities, InteractionDiffResult, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers, Resolvers, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, SpecRoot, UnmatchedRequestBodyContentType, UnmatchedRequestBodyShape, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseBodyShape, UnmatchedResponseStatusCode} -import com.useoptic.diff.shapes.ShapeDiffResult +import com.useoptic.diff.interactions._ import com.useoptic.diff.shapes.resolvers.ShapesResolvers import com.useoptic.types.capture.{Body, HttpInteraction} @@ -18,15 +16,10 @@ import scala.util.Try @JSExportAll object DiffResultHelper { - def unmatchedUrls(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { - diffs.collect { - case (newUrl: UnmatchedRequestUrl, interactions) => NewEndpoint(interactions.head.request.path, interactions.head.request.method, None, interactions.size) - case (newMethod: UnmatchedRequestMethod, interactions) => { - val location = getLocationForDiff(newMethod, rfcState) - NewEndpoint(interactions.head.request.path, interactions.head.request.method, Some(location.get.pathId), interactions.size) - } - } - }.toVector.sortBy(i => (i.method + i.path)) + def unmatchedUrls(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { + //@TODO: implement this + Vector.empty + } def diffsForPathAndMethod(allEndpointDiffs: Seq[EndpointDiffs], pathId: PathComponentId, method: String, ignoredDiffs: Seq[DiffResult]): Map[InteractionDiffResult, Seq[String]] = { allEndpointDiffs.find(i => i.method == method && i.pathId == pathId) @@ -34,14 +27,14 @@ object DiffResultHelper { .getOrElse(Map.empty) } - def endpointDiffs(diffs: InteractionsGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { + def endpointDiffs(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { diffs.filterNot { case (a: UnmatchedRequestUrl, _) => true case (a: UnmatchedRequestMethod, _) => true case _ => false }.flatMap { - case (diff, interactions) => getLocationForDiff(diff, rfcState).map(location => { - EndpointDiffs(location.method, location.pathId, Map(diff -> interactions.map(i => i.uuid))) + case (diff, interactionPointers) => getLocationForDiff(diff, rfcState).map(location => { + EndpointDiffs(location.method, location.pathId, Map(diff -> interactionPointers)) }) }.groupBy(i => (i.pathId, i.method)).map { case ((path, method), diffs) => { diff --git a/workspaces/cli-scripts/package.json b/workspaces/cli-scripts/package.json index cc0251d46f..399094e00c 100644 --- a/workspaces/cli-scripts/package.json +++ b/workspaces/cli-scripts/package.json @@ -15,7 +15,8 @@ "types": "build/index.d.ts", "dependencies": { "node-notifier": "^7.0.0", - "analytics-node": "^3.4.0-beta.1" + "analytics-node": "^3.4.0-beta.1", + "@useoptic/cli-shared": "8.1.0" }, "devDependencies": { "@types/node-notifier": "^6.0.1" diff --git a/workspaces/cli-scripts/src/emit-diff-projections.ts b/workspaces/cli-scripts/src/emit-diff-projections.ts new file mode 100644 index 0000000000..3cca7d078f --- /dev/null +++ b/workspaces/cli-scripts/src/emit-diff-projections.ts @@ -0,0 +1,15 @@ +import { + DiffWorker, + IDiffProjectionEmitterConfig, +} from '@useoptic/cli-shared/build/diffs/diff-worker'; + +async function run(config: IDiffProjectionEmitterConfig) { + await new DiffWorker(config).run(); +} + +const [, , configJsonString] = process.argv; +const config: IDiffProjectionEmitterConfig = JSON.parse(configJsonString); +console.log({ config }); +run(config).catch((e) => { + console.error(e); +}); diff --git a/workspaces/cli-scripts/src/index.ts b/workspaces/cli-scripts/src/index.ts index ca568552f1..6efd80a46e 100644 --- a/workspaces/cli-scripts/src/index.ts +++ b/workspaces/cli-scripts/src/index.ts @@ -11,3 +11,12 @@ export function runStandaloneScript(modulePath: string, ...args: string[]) { export function runScriptByName(name: string, ...args: string[]) { return runStandaloneScript(path.join(basePath, name), ...args); } + +export function runManagedScript(modulePath: string, ...args: string[]) { + const child = cp.fork(modulePath, args, { execArgv: ['--inspect=0'] }); + return child; +} + +export function runManagedScriptByName(name: string, ...args: string[]) { + return runManagedScript(path.join(basePath, name), ...args); +} diff --git a/workspaces/cli-server/package.json b/workspaces/cli-server/package.json index 227b5a6a76..439974086f 100644 --- a/workspaces/cli-server/package.json +++ b/workspaces/cli-server/package.json @@ -16,6 +16,7 @@ "dependencies": { "@useoptic/cli-client": "8.1.0", "@useoptic/cli-config": "8.1.0", + "@useoptic/cli-scripts": "8.1.0", "@useoptic/cli-shared": "8.1.0", "@useoptic/ui": "8.1.0", "avsc": "^5.4.18", diff --git a/workspaces/cli-server/src/diffs/diff-manager.ts b/workspaces/cli-server/src/diffs/diff-manager.ts new file mode 100644 index 0000000000..a9c8b9a56f --- /dev/null +++ b/workspaces/cli-server/src/diffs/diff-manager.ts @@ -0,0 +1,49 @@ +import { EventEmitter } from 'events'; +import { runManagedScriptByName } from '@useoptic/cli-scripts'; +import { IDiffProjectionEmitterConfig } from '@useoptic/cli-shared/build/diffs/diff-worker'; +import { ChildProcess } from 'child_process'; +import { getDiffOutputBaseDirectory } from '../routers/capture-router'; + +export interface IDiffManagerConfig { + diffId: string; + captureId: string; + captureBaseDirectory: string; +} + +export class DiffManager { + public readonly events: EventEmitter = new EventEmitter(); + private child!: ChildProcess; + + constructor() {} + + async start(config: IDiffManagerConfig) { + const outputPaths = getDiffOutputBaseDirectory(config); + const scriptConfig: IDiffProjectionEmitterConfig = { + captureId: config.captureId, + diffId: config.diffId, + captureBaseDirectory: config.captureBaseDirectory, + specFilePath: outputPaths.events, + ignoreRequestsFilePath: outputPaths.ignoreRequests, + additionalCommandsFilePath: outputPaths.additionalCommands, + }; + + const child = runManagedScriptByName( + 'emit-diff-projections', + JSON.stringify(scriptConfig) + ); + child.on('message', (x: any) => { + console.log(x); + this.events.emit('progress'); + }); + child.on('exit', function () { + console.log(arguments); + }); + this.child = child; + } + + async stop() { + if (this.child) { + this.child.kill(); + } + } +} diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts new file mode 100644 index 0000000000..c73581b30f --- /dev/null +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -0,0 +1,209 @@ +import express from 'express'; +import bodyParser from 'body-parser'; +import { delay, IdGenerator } from '@useoptic/cli-shared'; +import { CaptureId } from '@useoptic/saas-types'; +import { + IInteractionPointerConverter, + LocalCaptureInteractionContext, +} from '@useoptic/cli-shared/build/captures/avro/file-system/interaction-iterator'; +import { DiffManager } from '../diffs/diff-manager'; +import path from 'path'; +import fs from 'fs-extra'; + +export interface ICaptureRouterDependencies { + idGenerator: IdGenerator; + interactionPointerConverterFactory: (config: { + captureId: CaptureId; + captureBaseDirectory: string; + }) => IInteractionPointerConverter; +} + +export interface ICaptureDiffMetadata { + id: string; + manager: DiffManager; +} + +export function makeRouter(dependencies: ICaptureRouterDependencies) { + const router = express.Router({ mergeParams: true }); + + router.put('/status', bodyParser.json({ limit: '1kb' }), async (req, res) => { + const { status } = req.body; + if (status !== 'completed') { + debugger; + return res.sendStatus(400); + } + try { + const { captureId } = req.params; + const captureInfo = await req.optic.capturesHelpers.loadCaptureState( + captureId + ); + captureInfo.status = 'completed'; + await req.optic.capturesHelpers.updateCaptureState(captureInfo); + res.sendStatus(204); + } catch (e) { + console.error(e); + debugger; + return res.sendStatus(400); + } + }); + + router.get('/status', async (req, res) => { + try { + const { captureId } = req.params; + const captureInfo = await req.optic.capturesHelpers.loadCaptureState( + captureId + ); + const captureSummary = await req.optic.capturesHelpers.loadCaptureSummary( + captureId + ); + res.json({ + status: captureInfo.status, + diffsCount: captureSummary.diffsCount, + interactionsCount: captureSummary.interactionsCount, + }); + } catch (e) { + return res.sendStatus(400); + } + }); + + //////////////////////////////////////////////////////////////////////////////// + + const diffs = new Map(); + router.post( + '/diffs', + bodyParser.json({ limit: '100mb' }), + async (req, res) => { + const { captureId } = req.params; + const { ignoreRequests, events, additionalCommands } = req.body; + const id = dependencies.idGenerator.nextId(); + const manager = new DiffManager(); + const diffOutputPaths = getDiffOutputBaseDirectory({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + diffId: id, + }); + await fs.ensureDir(diffOutputPaths.base); + await fs.writeJson(diffOutputPaths.events, events); + await fs.writeJson(diffOutputPaths.ignoreRequests, ignoreRequests); + await fs.writeJson( + diffOutputPaths.additionalCommands, + additionalCommands + ); + const workerStarted = new Promise((resolve, reject) => { + manager.events.once('progress', resolve); + }); + await manager.start({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId: captureId, + diffId: id, + }); + + await workerStarted; + + const diffMetadata = { + id, + manager, + }; + diffs.set(id, diffMetadata); + + res.json({ + diffId: id, + notificationsUrl: `${req.baseUrl}/${id}/notifications`, + }); + } + ); + + //////////////////////////////////////////////////////////////////////////////// + //@TODO: router.get('/diffs/:diffId/{diffs,undocumented-urls,statistics,notifications}') + //////////////////////////////////////////////////////////////////////////////// + + router.get('/diffs/:diffId/notifications', async (req, res) => { + const { diffId } = req.params; + const diffMetadata = diffs.get(diffId); + if (!diffMetadata) { + return res.json(404); + } + + function emit(data: any) { + res.write(`data: ${JSON.stringify(data)}\n\n`); + } + + const headers = { + 'Content-Type': 'text/event-stream', + Connection: 'keep-alive', + 'Cache-Control': 'no-cache', + }; + res.writeHead(200, headers); + emit({ type: 'message', data: {} }); + + diffMetadata.manager.events.on('progress', () => { + emit({ type: 'message', data: {} }); + }); + + req.on('close', () => { + diffMetadata.manager.stop(); + }); + }); + + //////////////////////////////////////////////////////////////////////////////// + + router.get('/diffs/:diffId/diffs', async (req, res) => { + const { captureId, diffId } = req.params; + const diffOutputPaths = getDiffOutputBaseDirectory({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + diffId, + }); + try { + //@TODO: streamify + const contents = await fs.readJson(diffOutputPaths.diffs); + res.json(contents); + } catch (e) { + res.status(404).json({ + message: e.message, + }); + } + }); + //////////////////////////////////////////////////////////////////////////////// + + router.get('/interactions/:interactionPointer', async (req, res) => { + const { captureId, interactionPointer } = req.params; + const interactionPointerConverter = dependencies.interactionPointerConverterFactory( + { + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + } + ); + const interaction = await interactionPointerConverter.fromPointer( + interactionPointer + ); + res.json({ + interaction, + }); + }); + + //////////////////////////////////////////////////////////////////////////////// + + return router; +} + +export function getDiffOutputBaseDirectory(values: { + captureBaseDirectory: string; + captureId: string; + diffId: string; +}) { + const { captureBaseDirectory, captureId, diffId } = values; + const base = path.join(captureBaseDirectory, captureId, 'diffs', diffId); + const diffs = path.join(base, 'diffs.json'); + const events = path.join(base, 'events.json'); + const ignoreRequests = path.join(base, 'ignoreRequests.json'); + const additionalCommands = path.join(base, 'additionalCommands.json'); + + return { + base, + diffs, + events, + ignoreRequests, + additionalCommands, + }; +} diff --git a/workspaces/cli-server/src/routers/spec-router.ts b/workspaces/cli-server/src/routers/spec-router.ts index 1574740668..1bed6486b0 100644 --- a/workspaces/cli-server/src/routers/spec-router.ts +++ b/workspaces/cli-server/src/routers/spec-router.ts @@ -4,21 +4,15 @@ import { readApiConfig, readTestingConfig, } from '@useoptic/cli-config'; -import { parseIgnore } from '@useoptic/cli-config'; -import express, { RequestHandler } from 'express'; +import express from 'express'; import bodyParser from 'body-parser'; import path from 'path'; import fs from 'fs-extra'; import { ICliServerSession } from '../server'; import sortBy from 'lodash.sortby'; -import { - developerDebugLogger, - FileSystemAvroCaptureLoader, - ICaptureLoader, -} from '@useoptic/cli-shared'; -import * as http from 'http'; -import * as url from 'url'; - +import { DefaultIdGenerator, developerDebugLogger } from '@useoptic/cli-shared'; +import { makeRouter as makeCaptureRouter } from './capture-router'; +import { LocalCaptureInteractionPointerConverter } from '@useoptic/cli-shared/build/captures/avro/file-system/interaction-iterator'; type CaptureId = string; type Iso8601Timestamp = string; export type InvalidCaptureState = { @@ -268,68 +262,15 @@ ${events.map((x: any) => JSON.stringify(x)).join('\n,')} })), }); }); - router.put( - '/captures/:captureId/status', - bodyParser.json({ limit: '1kb' }), - async (req, res) => { - const { status } = req.body; - if (status !== 'completed') { - debugger; - return res.sendStatus(400); - } - try { - const { captureId } = req.params; - const captureInfo = await req.optic.capturesHelpers.loadCaptureState( - captureId - ); - captureInfo.status = 'completed'; - await req.optic.capturesHelpers.updateCaptureState(captureInfo); - res.sendStatus(204); - } catch (e) { - console.error(e); - debugger; - return res.sendStatus(400); - } - } - ); - router.get('/captures/:captureId/status', async (req, res) => { - try { - const { captureId } = req.params; - const captureInfo = await req.optic.capturesHelpers.loadCaptureState( - captureId - ); - const captureSummary = await req.optic.capturesHelpers.loadCaptureSummary( - captureId - ); - res.json({ - status: captureInfo.status, - diffsCount: captureSummary.diffsCount, - interactionsCount: captureSummary.interactionsCount, - }); - } catch (e) { - return res.sendStatus(400); - } - }); - router.get('/captures/:captureId/samples', async (req, res) => { - const { captureId } = req.params; - const loader: ICaptureLoader = new FileSystemAvroCaptureLoader({ - captureId, - captureBaseDirectory: req.optic.paths.capturesPath, - }); - try { - const filter = parseIgnore(req.optic.config.ignoreRequests || []); - const capture = await loader.loadWithFilter(filter); - res.json({ - metadata: {}, - samples: capture.samples, - links: [{ rel: 'next', href: '' }], - }); - } catch (e) { - console.error(e); - res.sendStatus(500); - } + const captureRouter = makeCaptureRouter({ + idGenerator: new DefaultIdGenerator(), + interactionPointerConverterFactory: (config: { + captureId: CaptureId; + captureBaseDirectory: string; + }) => new LocalCaptureInteractionPointerConverter(config), }); + router.use('/captures/:captureId', captureRouter); router.get('/testing-credentials', async (req, res) => { const { paths } = req.optic; diff --git a/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts new file mode 100644 index 0000000000..bf0d09ee16 --- /dev/null +++ b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts @@ -0,0 +1,110 @@ +import path from 'path'; +import fs from 'fs-extra'; +import { IHttpInteraction, IInteractionBatch } from '@useoptic/domain-types'; +import { IFileSystemCaptureLoaderConfig } from './capture-loader'; +import { captureFileSuffix } from './index'; +import avro from 'avsc'; +import { CaptureId } from '@useoptic/saas-types'; + +export interface FilterPredicate { + (item: T): boolean; +} + +export async function* CaptureInteractionIterator( + config: IFileSystemCaptureLoaderConfig, + filter: FilterPredicate + //@TODO: add a way to check if the capture has completed +) { + let shouldStop = false; + let currentBatchId = BigInt(0); + while (!shouldStop) { + const batchFilePath = path.join( + config.captureBaseDirectory, + config.captureId, + `${currentBatchId.toString()}${captureFileSuffix}` + ); + if (!(await fs.pathExists(batchFilePath))) { + //@TODO: determine if we should wait + return; + } + console.log(batchFilePath + '\n\nxxx\n\n'); + let index = 0; + const items = BatchInteractionIterator(batchFilePath); + for await (const x of items) { + const shouldEmit = filter(x); + if (shouldEmit) { + yield { + batchId: currentBatchId.toString(), + index, + interaction: x, + }; + } else { + console.log(`skipping ${x.request.method} ${x.request.path}`); + } + index = index + 1; + } + currentBatchId = currentBatchId + BigInt(1); + } +} + +export async function* BatchInteractionIterator(batchFilePath: string) { + const contents = await loadBatchFile(batchFilePath); + for (const item of contents.batchItems) { + yield item; + } +} + +export async function loadBatchFile(batchFilePath: string) { + console.time(`loadBatchFile-${batchFilePath}`); + const decoder = avro.createFileDecoder(batchFilePath); + const contents = await new Promise((resolve, reject) => { + decoder.once('data', (contents: IInteractionBatch) => { + resolve(contents); + }); + decoder.once('error', (err) => reject(err)); + }); + console.timeEnd(`loadBatchFile-${batchFilePath}`); + return contents; +} + +export type InteractionPointer = string; + +export interface IInteractionPointerConverter { + toPointer(interaction: IHttpInteraction, context: C): InteractionPointer; + + fromPointer(pointer: InteractionPointer): Promise; +} + +export interface LocalCaptureInteractionContext { + batchId: string; + interactionIndex: number; +} + +export class LocalCaptureInteractionPointerConverter + implements IInteractionPointerConverter { + constructor( + private config: { + captureId: CaptureId; + captureBaseDirectory: string; + } + ) {} + + async fromPointer(pointer: InteractionPointer): Promise { + const [batchId, interactionIndexString] = pointer.split('-'); + const interactionIndex = parseInt(interactionIndexString, 10); + const batchFilePath = path.join( + this.config.captureBaseDirectory, + this.config.captureId, + `${batchId}${captureFileSuffix}` + ); + const contents = await loadBatchFile(batchFilePath); + return contents.batchItems[interactionIndex]; + } + + toPointer( + interaction: IHttpInteraction, + context: LocalCaptureInteractionContext + ): InteractionPointer { + return `${context.batchId}-${context.interactionIndex}`; + } +} diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts new file mode 100644 index 0000000000..de9328fe93 --- /dev/null +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -0,0 +1,150 @@ +import { cachingResolversAndRfcStateFromEventsAndAdditionalCommands } from '@useoptic/domain-utilities'; +import { parseIgnore } from '@useoptic/cli-config'; +import { IHttpInteraction } from '@useoptic/domain-types'; +import { + CaptureInteractionIterator, + LocalCaptureInteractionPointerConverter, +} from '../captures/avro/file-system/interaction-iterator'; +import { + DiffHelpers, + JsonHelper, + opticEngine, + RfcCommandContext, +} from '@useoptic/domain'; +import fs from 'fs-extra'; +import Bottleneck from 'bottleneck'; +import path from 'path'; + +export interface IDiffProjectionEmitterConfig { + diffId: string; + specFilePath: string; + ignoreRequestsFilePath: string; + additionalCommandsFilePath: string; + captureBaseDirectory: string; + captureId: string; +} + +export class DiffWorker { + constructor(private config: IDiffProjectionEmitterConfig) {} + + async run() { + debugger; + console.log('running'); + console.time('load spec'); + const ignoreRequests = await fs.readJson( + this.config.ignoreRequestsFilePath + ); + const events: any[] = await fs.readJson(this.config.specFilePath); + const additionalCommands: any[] = await fs.readJson( + this.config.additionalCommandsFilePath + ); + console.timeEnd('load spec'); + console.time('build state'); + const batchId = 'bbb'; + const clientId = 'ccc'; //@TODO: should use real values + const clientSessionId = 'sss'; //@TODO: should use real values + const commandsContext = RfcCommandContext( + clientId, + clientSessionId, + batchId + ); + const { + rfcState, + resolvers, + } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + events, + commandsContext, + additionalCommands + ); + console.timeEnd('build state'); + const ignoredRequests = parseIgnore(ignoreRequests); + + function filterIgnoredRequests(interaction: IHttpInteraction) { + return !ignoredRequests.shouldIgnore( + interaction.request.method, + interaction.request.path + ); + } + + const interactionIterator = CaptureInteractionIterator( + { + captureId: this.config.captureId, + captureBaseDirectory: this.config.captureBaseDirectory, + }, + filterIgnoredRequests + ); + debugger; + let diffs = DiffHelpers.emptyInteractionPointersGroupedByDiff(); + + let interactionCounter = BigInt(0); + const batcher = new Bottleneck.Batcher({ + maxSize: 100, + maxTime: 100, + }); + const diffOutputFilePath = path.join( + this.config.captureBaseDirectory, + this.config.captureId, + 'diffs', + this.config.diffId, + 'diffs.json' + ); + const queue = new Bottleneck({ + maxConcurrent: 1, + }); + + async function flush() { + const c = interactionCounter.toString(); + + console.time(`flushing ${c}`); + await fs.ensureFile(diffOutputFilePath); + await fs.writeJson( + diffOutputFilePath, + opticEngine.DiffWithPointersJsonSerializer.toJs(diffs) + ); + + if (process && process.send) { + process.send({ + type: 'progress', + data: { interactionCounter: interactionCounter.toString() }, + }); + } else { + console.log(interactionCounter.toString()); + } + console.timeEnd(`flushing ${c}`); + } + + batcher.on('batch', () => { + queue.schedule(() => flush()); + }); + + const interactionPointerConverter = new LocalCaptureInteractionPointerConverter( + { + captureBaseDirectory: this.config.captureBaseDirectory, + captureId: this.config.captureId, + } + ); + await flush(); + + for await (const item of interactionIterator) { + // for (const x of [1, 2, 3]) { + const { batchId, interaction, index } = item; + + interactionCounter = interactionCounter + BigInt(1); + console.time(`diff ${batchId} ${index}`); + diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( + resolvers, + rfcState, + JsonHelper.fromInteraction(interaction), + interactionPointerConverter.toPointer(interaction, { + interactionIndex: index, + batchId, + }), + diffs + ); + console.timeEnd(`diff ${batchId} ${index}`); + // } + + batcher.add(null); + } + } +} diff --git a/workspaces/cli-shared/src/index.ts b/workspaces/cli-shared/src/index.ts index 1b1f8de16e..cd01a3372d 100644 --- a/workspaces/cli-shared/src/index.ts +++ b/workspaces/cli-shared/src/index.ts @@ -114,3 +114,17 @@ export async function delay(milliseconds: number) { setTimeout(resolve, milliseconds); }); } + +//////////////////////////////////////////////////////////////////////////////// + +import * as uuid from 'uuid'; + +export interface IdGenerator { + nextId(): T; +} + +export class DefaultIdGenerator implements IdGenerator { + nextId() { + return uuid.v4(); + } +} diff --git a/workspaces/domain-utilities/src/index.ts b/workspaces/domain-utilities/src/index.ts index d317f5497a..dbc2df7490 100644 --- a/workspaces/domain-utilities/src/index.ts +++ b/workspaces/domain-utilities/src/index.ts @@ -1,5 +1,6 @@ import { StableHasher } from './coverage'; import { DiffHelpers, JsonHelper, opticEngine } from '@useoptic/domain'; +import { IHttpInteraction } from '@useoptic/domain-types'; export { StableHasher } from './coverage'; @@ -115,7 +116,7 @@ export function deserializeInteractions(serializedInteractions: any) { export function diffFromRfcStateAndInteractions( shapesResolvers: any, rfcState: any, - interactions: any[] + interactions: IHttpInteraction[] ) { const diffResults = DiffHelpers.groupByDiffs( shapesResolvers, @@ -127,7 +128,7 @@ export function diffFromRfcStateAndInteractions( export function normalizedDiffFromRfcStateAndInteractions( shapesResolvers: any, rfcState: any, - interactions: any[] + interactions: IHttpInteraction[] ) { const diffResults = DiffHelpers.groupByNormalizedDiffs( shapesResolvers, diff --git a/workspaces/ui/src/components/diff/v2/DiffHooks.js b/workspaces/ui/src/components/diff/v2/DiffHooks.js index a377ec28e5..caf78bc228 100644 --- a/workspaces/ui/src/components/diff/v2/DiffHooks.js +++ b/workspaces/ui/src/components/diff/v2/DiffHooks.js @@ -17,7 +17,7 @@ export function useDiffDescription(diff) { } export function useInteractionWithPointer(pointer) { - const { diffService } = useCaptureContext(); + const { captureService } = useCaptureContext(); const [interaction, setInteraction] = useState(null); const [interactionScala, setInteractionScala] = useState(null); @@ -25,7 +25,7 @@ export function useInteractionWithPointer(pointer) { const getInteraction = async () => { if (pointer) { const interaction = - (await diffService.loadInteraction(pointer)).interaction || null; + (await captureService.loadInteraction(pointer)).interaction || null; setInteraction(interaction); setInteractionScala(JsonHelper.fromInteraction(interaction)); } else { diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 69209ba484..1cbe34efed 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -337,7 +337,7 @@ function _NewRegions(props) { } = props; const classes = useStyles(); - const { diffService } = useCaptureContext(); + const { diffService, captureService } = useCaptureContext(); const [deselected, setDeselected] = useState([]); const [showExpanded, setShowExpanded] = useState(false); @@ -370,7 +370,7 @@ function _NewRegions(props) { .filter((diffBlock) => !isDeselected(diffBlock)) .map(async (i) => { //@todo this is messy and doubles the compute - const { interaction } = await diffService.loadInteraction( + const { interaction } = await captureService.loadInteraction( i.firstInteractionPointer ); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index e109ab9dc3..60c0f48dd1 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -14,9 +14,10 @@ export function CaptureStateStore(props) { const { captureId } = props; const [diffService, setDiffService] = useState(null); + const [captureService, setCaptureService] = useState(null); const [additionalCommands, setAdditionalCommands] = useState([]); - const { eventStore, rfcId } = useContext(RfcContext); + const { eventStore, rfcService, rfcId } = useContext(RfcContext); // diff state const [endpointDiffs, setEndpointDiffs] = useState([]); @@ -33,26 +34,40 @@ export function CaptureStateStore(props) { async function restart() { if (diffService) { diffService.loadStats().then(setStats); - diffService.listDiffs().then(setEndpointDiffs); - diffService.listUnrecognizedUrls().then(setUnrecognizedUrls); + diffService.listDiffs().then((x) => { + setEndpointDiffs(x.diffs); + }); + diffService.listUnrecognizedUrls().then((x) => { + setUnrecognizedUrls(x.urls); + }); setDiffId(diffService.diffId()); } } useEffect(() => { - const captureService = captureServiceFactory(specService, captureId); async function task() { + const captureService = await captureServiceFactory( + specService, + captureId + ); //@TODO: handle error //@TODO:getConfig for ignoreRequests config + const events = eventStore.listEvents(rfcId); const config = await captureService.startDiff( - ScalaJSHelpers.eventsJsArray(eventStore.listEvents(rfcId)), + ScalaJSHelpers.eventsJsArray(events), [], additionalCommands ); - const diffServiceForCapture = diffServiceFactory( + const rfcState = rfcService.currentState(rfcId); + + const diffServiceForCapture = await diffServiceFactory( specService, + captureService, + rfcState, additionalCommands, - config + config, + captureId ); + setCaptureService(captureService); setDiffService(diffServiceForCapture); } task(); @@ -73,6 +88,7 @@ export function CaptureStateStore(props) { const value = { diffService, + captureService, restart, updatedAdditionalCommands, diffId, diff --git a/workspaces/ui/src/entrypoints/localcli.js b/workspaces/ui/src/entrypoints/localcli.js index 5699b2c2fc..b289211297 100644 --- a/workspaces/ui/src/entrypoints/localcli.js +++ b/workspaces/ui/src/entrypoints/localcli.js @@ -5,6 +5,10 @@ import { ApiRoutes } from '../routes'; import EventEmitter from 'events'; import { Provider as BaseUrlContext } from '../contexts/BaseUrlContext'; import { SpecServiceClient } from '@useoptic/cli-client'; +import { + LocalCliCaptureService, + LocalCliDiffService, +} from '../services/diff/LocalCliDiffService'; export default function LocalCli(props) { const match = useRouteMatch(); @@ -13,9 +17,29 @@ export default function LocalCli(props) { const eventEmitter = new EventEmitter(); const specService = new SpecServiceClient(apiId, eventEmitter); + const captureServiceFactory = async function (specService, captureId) { + const baseUrl = `/api/specs/${apiId}/captures/${captureId}`; + return new LocalCliCaptureService(baseUrl); + }; + const diffServiceFactory = async function ( + specService, + captureService, + rfcState, + additionalCommands, + config, + captureId + ) { + const baseUrl = `/api/specs/${apiId}/captures/${captureId}/diffs/${config.diffId}`; + return new LocalCliDiffService(captureService, baseUrl, rfcState); + }; + return ( - + diff --git a/workspaces/ui/src/entrypoints/testing-sessions.js b/workspaces/ui/src/entrypoints/testing-sessions.js index aec3add97a..8a00cf1772 100644 --- a/workspaces/ui/src/entrypoints/testing-sessions.js +++ b/workspaces/ui/src/entrypoints/testing-sessions.js @@ -11,6 +11,11 @@ import { ExampleCaptureService, ExampleDiffService, } from '../services/diff/ExampleDiffService'; +import { DiffHelpers, JsonHelper, RfcCommandContext } from '@useoptic/domain'; +import { + cachingResolversAndRfcStateFromEventsAndAdditionalCommands, + normalizedDiffFromRfcStateAndInteractions, +} from '@useoptic/domain-utilities'; export default function TestingSessions(props) { const match = useRouteMatch(); @@ -21,12 +26,62 @@ export default function TestingSessions(props) { exampleSessionCollection: 'example-sessions', }); - const captureServiceFactory = (specService, captureId) => { - return new ExampleCaptureService(specService, captureId); + const captureServiceFactory = async (specService, captureId) => { + return new ExampleCaptureService(specService); }; - const diffServiceFactory = (specService, additionalCommands, config) => { - return new ExampleDiffService(specService, additionalCommands, config); + const diffServiceFactory = async ( + specService, + captureService, + _rfcState, + additionalCommands, + config, + captureId + ) => { + async function computeInitialDiff() { + const capture = await specService.listCapturedSamples(captureId); + const events = await specService.listEvents(); + + const commandContext = new RfcCommandContext( + 'simulated', + 'simulated', + 'simulated' + ); + + const { + resolvers, + rfcState, + } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + JSON.parse(events), + commandContext, + additionalCommands + ); + let diffs = DiffHelpers.emptyInteractionPointersGroupedByDiff(); + for (const interaction of capture.samples) { + diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( + resolvers, + rfcState, + JsonHelper.fromInteraction(interaction), + interaction.uuid, + diffs + ); + } + return { + diffs, + rfcState, + resolvers, + }; + } + + const { diffs, rfcState } = await computeInitialDiff(); + + return new ExampleDiffService( + specService, + captureService, + config, + diffs, + rfcState + ); }; return ( diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index aea49fb6ed..9240d24149 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -13,11 +13,6 @@ import { import { IHttpInteraction } from '@useoptic/domain-types'; import { ISpecService } from '@useoptic/cli-client/build/spec-service-client'; import { captureId } from '../../components/loaders/ApiLoader'; -import { - cachingResolversAndRfcStateFromEvents, - cachingResolversAndRfcStateFromEventsAndAdditionalCommands, - normalizedDiffFromRfcStateAndInteractions, -} from '@useoptic/domain-utilities'; import { DiffResultHelper, JsonHelper, @@ -28,90 +23,60 @@ import uuidv4 from 'uuid/v4'; import { getOrUndefined } from '@useoptic/domain'; export class ExampleCaptureService implements ICaptureService { + constructor(private specService: ISpecService) {} + async startDiff( events: any[], ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise { return { + diffId: uuidv4(), loadDiffUrl: '', loadUnrecognizedUrlsUrl: '', notificationUrl: '', }; } + + async loadInteraction( + interactionPointer: string + ): Promise { + const capture = await this.specService.listCapturedSamples(captureId); + const interaction = capture.samples.find( + (x: IHttpInteraction) => x.uuid === interactionPointer + ); + return { + interaction, + }; + } } export class ExampleDiffService implements IDiffService { - private readonly diffsPromise: Promise; - constructor( private specService: ISpecService, - private additionalCommands: IRfcCommand[] - ) { - async function computeInitialDiff() { - const capture = await specService.listCapturedSamples(captureId); - const events = await specService.listEvents(); - - const commandContext = new RfcCommandContext( - 'simulated', - 'simulated', - 'simulated' - ); + private captureService: ICaptureService, + private diffConfig: IStartDiffResponse, + private diffs: any, + private rfcState: any + ) {} - const { - resolvers, - rfcState, - } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( - JSON.parse(events), - commandContext, - additionalCommands - ); - const diffs = normalizedDiffFromRfcStateAndInteractions( - resolvers, - rfcState, - capture.samples - ); - return { - diffs, - rfcState, - resolvers, - }; - } - this.diffsPromise = computeInitialDiff(); - } - private _diffId: string = uuidv4(); diffId(): string { - return this._diffId; + return this.diffConfig.diffId; } async listDiffs(): Promise { - const { diffs, rfcState } = await this.diffsPromise; const endpointDiffs = ScalaJSHelpers.toJsArray( - DiffResultHelper.endpointDiffs(diffs, rfcState) + DiffResultHelper.endpointDiffs(this.diffs, this.rfcState) ); return endpointDiffs; } async listUnrecognizedUrls(): Promise { - const { diffs, rfcState } = await this.diffsPromise; - const urls = ScalaJSHelpers.toJsArray( - DiffResultHelper.unmatchedUrls(diffs, rfcState) + DiffResultHelper.unmatchedUrls(this.diffs, this.rfcState) ); - return Promise.resolve(urls); - } - - async loadInteraction( - interactionPointer: string - ): Promise { - const capture = await this.specService.listCapturedSamples(captureId); - const interaction = capture.samples.find( - (x: IHttpInteraction) => x.uuid === interactionPointer - ); - return { - interaction, - }; + return Promise.resolve({ urls }); } async loadStats(): Promise { @@ -124,15 +89,14 @@ export class ExampleDiffService implements IDiffService { } async loadDescription(diff: any): Promise { - const { rfcState } = await this.diffsPromise; - const interaction = await this.loadInteraction( + const interaction = await this.captureService.loadInteraction( diff.firstInteractionPointer ); if (interaction.interaction) { return getOrUndefined( DiffResultHelper.descriptionFromDiff( diff.diff, - rfcState, + this.rfcState, JsonHelper.fromInteraction(interaction.interaction) ) ); @@ -145,9 +109,8 @@ export class ExampleDiffService implements IDiffService { diff: any, interaction: any ): Promise { - const { rfcState } = await this.diffsPromise; return ScalaJSHelpers.toJsArray( - DiffResultHelper.suggestionsForDiff(diff, interaction, rfcState) + DiffResultHelper.suggestionsForDiff(diff, interaction, this.rfcState) ); } @@ -156,14 +119,13 @@ export class ExampleDiffService implements IDiffService { currentInteraction: any, inferPolymorphism: boolean ) { - const { rfcState } = await this.diffsPromise; const bodyPreview = diff.previewBodyRender(currentInteraction); let interactions = []; if (inferPolymorphism) { interactions = await Promise.all( ScalaJSHelpers.toJsArray(diff.interactionPointers).map(async (i) => { - const { interaction } = await this.loadInteraction(i); + const { interaction } = await this.captureService.loadInteraction(i); return JsonHelper.fromInteraction(interaction); }) ); @@ -172,7 +134,7 @@ export class ExampleDiffService implements IDiffService { } const shapePreview = diff.previewShapeRender( - rfcState, + this.rfcState, JsonHelper.jsArrayToVector(interactions), inferPolymorphism ); diff --git a/workspaces/ui/src/services/diff/LocalCliDiffService.ts b/workspaces/ui/src/services/diff/LocalCliDiffService.ts new file mode 100644 index 0000000000..ed84be016d --- /dev/null +++ b/workspaces/ui/src/services/diff/LocalCliDiffService.ts @@ -0,0 +1,141 @@ +import { + ICaptureService, + IDiffService, + IGetDescriptionResponse, + IListDiffsResponse, + IListSuggestionsResponse, + IListUnrecognizedUrlsResponse, + ILoadInteractionResponse, + ILoadStatsResponse, + IRfcCommand, + IStartDiffResponse, +} from './index'; +import { JsonHttpClient } from '@useoptic/client-utilities'; +import { + DiffResultHelper, + getOrUndefined, + JsonHelper, + opticEngine, + ScalaJSHelpers, +} from '@useoptic/domain'; + +export class LocalCliDiffService implements IDiffService { + constructor( + private captureService: ICaptureService, + private baseUrl: string, + private config: IStartDiffResponse, + private rfcState: any + ) {} + diffId(): string { + return this.config.diffId; + } + + async listDiffs(): Promise { + const url = `${this.baseUrl}/diffs`; + const diffsJson = await JsonHttpClient.getJson(url); + const diffs = opticEngine.DiffWithPointersJsonDeserializer.fromJs( + diffsJson + ); + return { + diffs: ScalaJSHelpers.toJsArray( + DiffResultHelper.endpointDiffs(diffs, this.rfcState) + ), + }; + } + + async listUnrecognizedUrls(): Promise { + return Promise.resolve({ + urls: [], + }); + } + + async loadStats(): Promise { + return Promise.resolve({ + captureCompleted: false, + processed: 124, + totalInteractions: 8675309, + }); + } + + async loadDescription(diff: any): Promise { + const interaction = await this.captureService.loadInteraction( + diff.firstInteractionPointer + ); + if (interaction.interaction) { + return getOrUndefined( + DiffResultHelper.descriptionFromDiff( + diff.diff, + this.rfcState, + JsonHelper.fromInteraction(interaction.interaction) + ) + ); + } else { + return null; + } + } + + async listSuggestions( + diff: any, + interaction: any + ): Promise { + return ScalaJSHelpers.toJsArray( + DiffResultHelper.suggestionsForDiff(diff, interaction, this.rfcState) + ); + } + + async loadInitialPreview( + diff: any, + currentInteraction: any, + inferPolymorphism: boolean + ) { + const bodyPreview = diff.previewBodyRender(currentInteraction); + + let interactions = []; + if (inferPolymorphism) { + interactions = await Promise.all( + ScalaJSHelpers.toJsArray(diff.interactionPointers).map(async (i) => { + const { interaction } = await this.captureService.loadInteraction(i); + return JsonHelper.fromInteraction(interaction); + }) + ); + } else { + interactions = [currentInteraction]; + } + + const shapePreview = diff.previewShapeRender( + this.rfcState, + JsonHelper.jsArrayToVector(interactions), + inferPolymorphism + ); + + return { + bodyPreview, + shapePreview: shapePreview.shape, + suggestion: shapePreview.suggestion, + }; + } +} + +export class LocalCliCaptureService implements ICaptureService { + constructor(private baseUrl: string) {} + + async startDiff( + events: any[], + ignoreRequests: string[], + additionalCommands: IRfcCommand[] + ): Promise { + const url = `${this.baseUrl}/diffs`; + return JsonHttpClient.postJson(url, { + ignoreRequests, + additionalCommands, + events, + }); + } + + loadInteraction( + interactionPointer: string + ): Promise { + const url = `${this.baseUrl}/interactions/${interactionPointer}`; + return JsonHttpClient.getJson(url); + } +} diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 4f02e4a404..edbcd31913 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -6,14 +6,14 @@ export interface ICaptureService { ignoreRequests: string[], additionalCommands: IRfcCommand[] ): Promise; + loadInteraction( + interactionPointer: string + ): Promise; } export interface IDiffService { diffId(): string; // backend - loadInteraction( - interactionPointer: string - ): Promise; listDiffs(): Promise; listUnrecognizedUrls(): Promise; loadStats(): Promise; @@ -39,6 +39,7 @@ export interface ILoadStatsResponse { } export interface IStartDiffResponse { + diffId: string; notificationUrl: string; loadDiffUrl: string; loadUnrecognizedUrlsUrl: string; @@ -48,7 +49,6 @@ export interface ILoadInteractionResponse { } export interface IListDiffsResponse { diffs: any[]; - rfcState: any; } export interface IListUnrecognizedUrlsResponse { From aeda7f1d0c8a5db8c38f02cb3993457e802abffb Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Thu, 25 Jun 2020 15:57:38 -0400 Subject: [PATCH 29/85] example service result should match interface --- workspaces/ui/src/services/diff/ExampleDiffService.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index 9240d24149..b15788e50c 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -68,7 +68,7 @@ export class ExampleDiffService implements IDiffService { const endpointDiffs = ScalaJSHelpers.toJsArray( DiffResultHelper.endpointDiffs(this.diffs, this.rfcState) ); - return endpointDiffs; + return Promise.resolve({ diffs: endpointDiffs }); } async listUnrecognizedUrls(): Promise { From 7146bb8a7fbaea12eb86757f49f35058c2bf0fd7 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Fri, 26 Jun 2020 16:25:08 -0400 Subject: [PATCH 30/85] constructor should receive the correct inputs --- workspaces/ui/src/entrypoints/localcli.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workspaces/ui/src/entrypoints/localcli.js b/workspaces/ui/src/entrypoints/localcli.js index b289211297..38f15d8f71 100644 --- a/workspaces/ui/src/entrypoints/localcli.js +++ b/workspaces/ui/src/entrypoints/localcli.js @@ -30,7 +30,7 @@ export default function LocalCli(props) { captureId ) { const baseUrl = `/api/specs/${apiId}/captures/${captureId}/diffs/${config.diffId}`; - return new LocalCliDiffService(captureService, baseUrl, rfcState); + return new LocalCliDiffService(captureService, baseUrl, config, rfcState); }; return ( From 25075ce499da95352b23c2b36eef728eda675de2 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Fri, 26 Jun 2020 16:25:43 -0400 Subject: [PATCH 31/85] clients should be able to subscribe to updates from diffs --- workspaces/cli-server/src/routers/capture-router.ts | 2 +- workspaces/ui/src/contexts/CaptureContext.js | 10 ++++++++++ workspaces/ui/src/services/diff/ExampleDiffService.ts | 4 +--- workspaces/ui/src/services/diff/index.ts | 4 +--- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index c73581b30f..320660520f 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -108,7 +108,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { res.json({ diffId: id, - notificationsUrl: `${req.baseUrl}/${id}/notifications`, + notificationsUrl: `${req.baseUrl}/diffs/${id}/notifications`, }); } ); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 60c0f48dd1..ac0dfb4662 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -44,6 +44,7 @@ export function CaptureStateStore(props) { } } useEffect(() => { + let notifications; async function task() { const captureService = await captureServiceFactory( specService, @@ -57,6 +58,10 @@ export function CaptureStateStore(props) { [], additionalCommands ); + const notifications = new EventSource(config.notificationsUrl); + notifications.onmessage = (event) => { + debugger; + }; const rfcState = rfcService.currentState(rfcId); const diffServiceForCapture = await diffServiceFactory( @@ -71,6 +76,11 @@ export function CaptureStateStore(props) { setDiffService(diffServiceForCapture); } task(); + return function cleanup() { + if (notifications) { + notifications.close(); + } + }; }, [captureId, additionalCommands]); useEffect(() => { diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index b15788e50c..ca915a3162 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -32,9 +32,7 @@ export class ExampleCaptureService implements ICaptureService { ): Promise { return { diffId: uuidv4(), - loadDiffUrl: '', - loadUnrecognizedUrlsUrl: '', - notificationUrl: '', + notificationsUrl: '', }; } diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index edbcd31913..2660752492 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -40,9 +40,7 @@ export interface ILoadStatsResponse { export interface IStartDiffResponse { diffId: string; - notificationUrl: string; - loadDiffUrl: string; - loadUnrecognizedUrlsUrl: string; + notificationsUrl?: string; } export interface ILoadInteractionResponse { interaction: IHttpInteraction; From 362072847304e20b4bd05ab5f4e01e9b0f7882b5 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Fri, 26 Jun 2020 16:41:59 -0400 Subject: [PATCH 32/85] diffs should use ignoreRequests from config --- .../cli-client/src/spec-service-client.ts | 8 ++++ .../cli-server/src/routers/spec-router.ts | 41 ++++++++++++------- .../ui/src/components/loaders/ApiLoader.js | 3 +- workspaces/ui/src/contexts/CaptureContext.js | 4 +- 4 files changed, 38 insertions(+), 18 deletions(-) diff --git a/workspaces/cli-client/src/spec-service-client.ts b/workspaces/cli-client/src/spec-service-client.ts index cb16b56b07..8a35b54759 100644 --- a/workspaces/cli-client/src/spec-service-client.ts +++ b/workspaces/cli-client/src/spec-service-client.ts @@ -1,6 +1,7 @@ import Bottleneck from 'bottleneck'; import { EventEmitter } from 'events'; import { JsonHttpClient } from '@useoptic/client-utilities'; +import { IApiCliConfig } from '@useoptic/cli-config'; const outgoingPoll = new Bottleneck({ maxConcurrent: 1, @@ -21,6 +22,7 @@ type ListCapturedSamplesResponse = any; type GetCaptureSummaryResponse = any; export interface ISpecService { + loadConfig(): Promise<{ config: IApiCliConfig }>; listEvents(): Promise; saveEvents(eventStore: IEventStore, rfcId: RfcId): Promise; @@ -41,6 +43,12 @@ export class Client implements ISpecService { private baseUrl: string = '/api' ) {} + loadConfig(): Promise<{ config: IApiCliConfig }> { + return JsonHttpClient.getJson( + `${this.baseUrl}/specs/${this.specId}/config` + ); + } + listEvents() { return JsonHttpClient.getJsonAsText( `${this.baseUrl}/specs/${this.specId}/events` diff --git a/workspaces/cli-server/src/routers/spec-router.ts b/workspaces/cli-server/src/routers/spec-router.ts index 1bed6486b0..16d1c3d82a 100644 --- a/workspaces/cli-server/src/routers/spec-router.ts +++ b/workspaces/cli-server/src/routers/spec-router.ts @@ -171,21 +171,26 @@ ${events.map((x: any) => JSON.stringify(x)).join('\n,')} res.sendStatus(404); return; } - - const paths = await getPathsRelativeToCwd(session.path); - const { configPath, capturesPath, exampleRequestsPath } = paths; - const config = await readApiConfig(configPath); - const capturesHelpers = new CapturesHelpers(capturesPath); - const exampleRequestsHelpers = new ExampleRequestsHelpers( - exampleRequestsPath - ); - req.optic = { - config, - paths, - capturesHelpers, - exampleRequestsHelpers, - }; - next(); + try { + const paths = await getPathsRelativeToCwd(session.path); + const { configPath, capturesPath, exampleRequestsPath } = paths; + const config = await readApiConfig(configPath); + const capturesHelpers = new CapturesHelpers(capturesPath); + const exampleRequestsHelpers = new ExampleRequestsHelpers( + exampleRequestsPath + ); + req.optic = { + config, + paths, + capturesHelpers, + exampleRequestsHelpers, + }; + next(); + } catch (e) { + res.status(500).json({ + message: e.message, + }); + } } const router = express.Router({ mergeParams: true }); @@ -263,6 +268,12 @@ ${events.map((x: any) => JSON.stringify(x)).join('\n,')} }); }); + router.get('/config', async (req, res) => { + res.json({ + config: req.optic.config, + }); + }); + const captureRouter = makeCaptureRouter({ idGenerator: new DefaultIdGenerator(), interactionPointerConverterFactory: (config: { diff --git a/workspaces/ui/src/components/loaders/ApiLoader.js b/workspaces/ui/src/components/loaders/ApiLoader.js index 49869b0aa2..895a9966da 100644 --- a/workspaces/ui/src/components/loaders/ApiLoader.js +++ b/workspaces/ui/src/components/loaders/ApiLoader.js @@ -118,10 +118,11 @@ async function createExampleSpecServiceFactory(data) { const specService = { eventEmitter, - getConfig: async function () { + loadConfig: async function () { return Promise.resolve({ config: { apiName: 'Example API', + ignoreRequests: [], }, }); }, diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index ac0dfb4662..54fbc405b5 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -51,11 +51,11 @@ export function CaptureStateStore(props) { captureId ); //@TODO: handle error - //@TODO:getConfig for ignoreRequests config + const apiConfig = await specService.loadConfig(); const events = eventStore.listEvents(rfcId); const config = await captureService.startDiff( ScalaJSHelpers.eventsJsArray(events), - [], + apiConfig.config.ignoreRequests || [], additionalCommands ); const notifications = new EventSource(config.notificationsUrl); From b0caa8d20d2fb6ee0ff6d3801d93699b7eb8e024 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Fri, 26 Jun 2020 16:55:42 -0400 Subject: [PATCH 33/85] capture context should not listen for notifications when the url is not present --- workspaces/ui/src/contexts/CaptureContext.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 54fbc405b5..0f9861cf4c 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -58,10 +58,12 @@ export function CaptureStateStore(props) { apiConfig.config.ignoreRequests || [], additionalCommands ); - const notifications = new EventSource(config.notificationsUrl); - notifications.onmessage = (event) => { - debugger; - }; + if (config.notificationsUrl) { + const notifications = new EventSource(config.notificationsUrl); + notifications.onmessage = (event) => { + debugger; + }; + } const rfcState = rfcService.currentState(rfcId); const diffServiceForCapture = await diffServiceFactory( From c1acbf3a7fc1ba9047af84f99406ff03a99c3298 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Sat, 27 Jun 2020 14:36:40 -0400 Subject: [PATCH 34/85] - webpack dev server should disable compression to allow Server Sent Events to pass unmangled - diff worker should build stats and undocumented-urls --- .../diff/helpers/UndocumentedUrlHelpers.scala | 24 ++++++- .../main/scala/com/useoptic/dsa/Counter.scala | 2 + workspaces/cli-scripts/src/index.ts | 8 ++- .../cli-server/src/diffs/diff-manager.ts | 10 +-- .../cli-server/src/routers/capture-router.ts | 69 ++++++++++++------- .../cli-shared/src/diffs/diff-worker.ts | 67 ++++++++++++++---- .../ui/config/webpackDevServer.config.js | 4 +- .../components/diff/v2/CaptureManagerPage.js | 4 +- workspaces/ui/src/contexts/CaptureContext.js | 10 ++- .../src/services/diff/ExampleDiffService.ts | 18 +++-- .../src/services/diff/LocalCliDiffService.ts | 12 ++-- workspaces/ui/src/services/diff/index.ts | 4 +- 12 files changed, 162 insertions(+), 70 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala index 19be0a6708..dc8743b5bd 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala @@ -6,14 +6,14 @@ import com.useoptic.diff.helpers.UndocumentedUrlHelpers.{MethodAndPath, UrlCount import com.useoptic.dsa.Counter import com.useoptic.types.capture.HttpInteraction -import scala.scalajs.js.annotation.{JSExport, JSExportAll} +import scala.scalajs.js.annotation.{JSExport, JSExportAll, JSExportTopLevel} @JSExport @JSExportAll class UndocumentedUrlHelpers { def countUndocumentedUrls(spec: RfcState, interactions: Seq[HttpInteraction]): UrlCounter = { val grouping = Utilities.groupPathsByParentId(spec.requestsState.pathComponents) - val urlCounter = UndocumentedUrlHelpers.newCounter + val urlCounter = UndocumentedUrlHelpers.newCounter() interactions.foreach(interaction => { val pathId = Utilities.resolvePathByGrouping(interaction.request.path, grouping) if (pathId.isEmpty) { @@ -24,10 +24,28 @@ class UndocumentedUrlHelpers { } } +@JSExport +@JSExportAll +class UndocumentedUrlIncrementalHelpers(spec: RfcState) { + val grouping = Utilities.groupPathsByParentId(spec.requestsState.pathComponents) + + def countUndocumentedUrls(interaction: HttpInteraction, urlCounter: UrlCounter): UrlCounter = { + val pathId = Utilities.resolvePathByGrouping(interaction.request.path, grouping) + if (pathId.isEmpty) { + urlCounter.increment(MethodAndPath(interaction.request.method, interaction.request.path)) + } + urlCounter + } +} + +@JSExportTopLevel("UndocumentedUrlHelpers") +@JSExportAll object UndocumentedUrlHelpers { type UrlCounter = Counter[MethodAndPath] case class MethodAndPath(method: String, path: String) - def newCounter = new Counter[MethodAndPath] + def newCounter() = { + new Counter[MethodAndPath] + } } diff --git a/core/optic/shared/src/main/scala/com/useoptic/dsa/Counter.scala b/core/optic/shared/src/main/scala/com/useoptic/dsa/Counter.scala index 7215876b13..1de5424348 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/dsa/Counter.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/dsa/Counter.scala @@ -1,7 +1,9 @@ package com.useoptic.dsa import scala.collection.mutable.Map +import scala.scalajs.js.annotation.JSExportAll +@JSExportAll class Counter[T] { var counts: Map[T, Int] = Map() diff --git a/workspaces/cli-scripts/src/index.ts b/workspaces/cli-scripts/src/index.ts index 6efd80a46e..ae8f2ead1c 100644 --- a/workspaces/cli-scripts/src/index.ts +++ b/workspaces/cli-scripts/src/index.ts @@ -13,7 +13,13 @@ export function runScriptByName(name: string, ...args: string[]) { } export function runManagedScript(modulePath: string, ...args: string[]) { - const child = cp.fork(modulePath, args, { execArgv: ['--inspect=0'] }); + //@GOTCHA: execArgv is inherited from the parent, so if you are using --inspect in the parent, the child will fail + // instead, you can use --inspect=0 or --inspect= + + const isDebuggingEnabled = + process.env.OPTIC_DAEMON_ENABLE_DEBUGGING === 'yes'; + const execArgv = isDebuggingEnabled ? ['--inspect=63694'] : []; + const child = cp.fork(modulePath, args, { execArgv }); return child; } diff --git a/workspaces/cli-server/src/diffs/diff-manager.ts b/workspaces/cli-server/src/diffs/diff-manager.ts index a9c8b9a56f..b8d2804647 100644 --- a/workspaces/cli-server/src/diffs/diff-manager.ts +++ b/workspaces/cli-server/src/diffs/diff-manager.ts @@ -1,8 +1,10 @@ import { EventEmitter } from 'events'; import { runManagedScriptByName } from '@useoptic/cli-scripts'; -import { IDiffProjectionEmitterConfig } from '@useoptic/cli-shared/build/diffs/diff-worker'; +import { + getDiffOutputPaths, + IDiffProjectionEmitterConfig, +} from '@useoptic/cli-shared/build/diffs/diff-worker'; import { ChildProcess } from 'child_process'; -import { getDiffOutputBaseDirectory } from '../routers/capture-router'; export interface IDiffManagerConfig { diffId: string; @@ -17,7 +19,7 @@ export class DiffManager { constructor() {} async start(config: IDiffManagerConfig) { - const outputPaths = getDiffOutputBaseDirectory(config); + const outputPaths = getDiffOutputPaths(config); const scriptConfig: IDiffProjectionEmitterConfig = { captureId: config.captureId, diffId: config.diffId, @@ -26,7 +28,7 @@ export class DiffManager { ignoreRequestsFilePath: outputPaths.ignoreRequests, additionalCommandsFilePath: outputPaths.additionalCommands, }; - + console.log(JSON.stringify(scriptConfig)); const child = runManagedScriptByName( 'emit-diff-projections', JSON.stringify(scriptConfig) diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index 320660520f..270c87e3fe 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -1,14 +1,14 @@ import express from 'express'; import bodyParser from 'body-parser'; -import { delay, IdGenerator } from '@useoptic/cli-shared'; +import { IdGenerator } from '@useoptic/cli-shared'; import { CaptureId } from '@useoptic/saas-types'; import { IInteractionPointerConverter, LocalCaptureInteractionContext, } from '@useoptic/cli-shared/build/captures/avro/file-system/interaction-iterator'; import { DiffManager } from '../diffs/diff-manager'; -import path from 'path'; import fs from 'fs-extra'; +import { getDiffOutputPaths } from '@useoptic/cli-shared/build/diffs/diff-worker'; export interface ICaptureRouterDependencies { idGenerator: IdGenerator; @@ -77,7 +77,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { const { ignoreRequests, events, additionalCommands } = req.body; const id = dependencies.idGenerator.nextId(); const manager = new DiffManager(); - const diffOutputPaths = getDiffOutputBaseDirectory({ + const diffOutputPaths = getDiffOutputPaths({ captureBaseDirectory: req.optic.paths.capturesPath, captureId, diffId: id, @@ -125,7 +125,8 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { } function emit(data: any) { - res.write(`data: ${JSON.stringify(data)}\n\n`); + console.log('emit'); + res.write(`data: {}\n\n`); } const headers = { @@ -142,6 +143,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { req.on('close', () => { diffMetadata.manager.stop(); + diffs.delete(diffId); }); }); @@ -149,7 +151,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { router.get('/diffs/:diffId/diffs', async (req, res) => { const { captureId, diffId } = req.params; - const diffOutputPaths = getDiffOutputBaseDirectory({ + const diffOutputPaths = getDiffOutputPaths({ captureBaseDirectory: req.optic.paths.capturesPath, captureId, diffId, @@ -164,6 +166,42 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); } }); + router.get('/diffs/:diffId/undocumented-urls', async (req, res) => { + const { captureId, diffId } = req.params; + const diffOutputPaths = getDiffOutputPaths({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + diffId, + }); + try { + //@TODO: streamify + const contents = await fs.readJson(diffOutputPaths.undocumentedUrls); + res.json({ + urls: contents, + }); + } catch (e) { + res.status(404).json({ + message: e.message, + }); + } + }); + router.get('/diffs/:diffId/stats', async (req, res) => { + const { captureId, diffId } = req.params; + const diffOutputPaths = getDiffOutputPaths({ + captureBaseDirectory: req.optic.paths.capturesPath, + captureId, + diffId, + }); + try { + //@TODO: streamify + const contents = await fs.readJson(diffOutputPaths.stats); + res.json(contents); + } catch (e) { + res.status(404).json({ + message: e.message, + }); + } + }); //////////////////////////////////////////////////////////////////////////////// router.get('/interactions/:interactionPointer', async (req, res) => { @@ -186,24 +224,3 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { return router; } - -export function getDiffOutputBaseDirectory(values: { - captureBaseDirectory: string; - captureId: string; - diffId: string; -}) { - const { captureBaseDirectory, captureId, diffId } = values; - const base = path.join(captureBaseDirectory, captureId, 'diffs', diffId); - const diffs = path.join(base, 'diffs.json'); - const events = path.join(base, 'events.json'); - const ignoreRequests = path.join(base, 'ignoreRequests.json'); - const additionalCommands = path.join(base, 'additionalCommands.json'); - - return { - base, - diffs, - events, - ignoreRequests, - additionalCommands, - }; -} diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts index de9328fe93..410a35e4b6 100644 --- a/workspaces/cli-shared/src/diffs/diff-worker.ts +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -24,6 +24,31 @@ export interface IDiffProjectionEmitterConfig { captureId: string; } +export function getDiffOutputPaths(values: { + captureBaseDirectory: string; + captureId: string; + diffId: string; +}) { + const { captureBaseDirectory, captureId, diffId } = values; + const base = path.join(captureBaseDirectory, captureId, 'diffs', diffId); + const diffs = path.join(base, 'diffs.json'); + const stats = path.join(base, 'stats.json'); + const undocumentedUrls = path.join(base, 'undocumentedUrls.json'); + const events = path.join(base, 'events.json'); + const ignoreRequests = path.join(base, 'ignoreRequests.json'); + const additionalCommands = path.join(base, 'additionalCommands.json'); + + return { + base, + diffs, + stats, + undocumentedUrls, + events, + ignoreRequests, + additionalCommands, + }; +} + export class DiffWorker { constructor(private config: IDiffProjectionEmitterConfig) {} @@ -75,19 +100,17 @@ export class DiffWorker { ); debugger; let diffs = DiffHelpers.emptyInteractionPointersGroupedByDiff(); - + let undocumentedUrls = opticEngine.UndocumentedUrlHelpers.newCounter(); + const undocumentedUrlHelpers = new opticEngine.com.useoptic.diff.helpers.UndocumentedUrlIncrementalHelpers( + rfcState + ); let interactionCounter = BigInt(0); const batcher = new Bottleneck.Batcher({ maxSize: 100, maxTime: 100, }); - const diffOutputFilePath = path.join( - this.config.captureBaseDirectory, - this.config.captureId, - 'diffs', - this.config.diffId, - 'diffs.json' - ); + const diffOutputPaths = getDiffOutputPaths(this.config); + const queue = new Bottleneck({ maxConcurrent: 1, }); @@ -96,11 +119,19 @@ export class DiffWorker { const c = interactionCounter.toString(); console.time(`flushing ${c}`); - await fs.ensureFile(diffOutputFilePath); - await fs.writeJson( - diffOutputFilePath, + const outputDiff = fs.writeJson( + diffOutputPaths.diffs, opticEngine.DiffWithPointersJsonSerializer.toJs(diffs) ); + const outputCount = fs.writeJson( + diffOutputPaths.undocumentedUrls, + opticEngine.UrlCounterJsonSerializer.toFriendlyJs(undocumentedUrls) + ); + const outputStats = fs.writeJson(diffOutputPaths.stats, { + interactionsCounter: c, + }); + + await Promise.all([outputDiff, outputCount, outputStats]); if (process && process.send) { process.send({ @@ -110,6 +141,7 @@ export class DiffWorker { } else { console.log(interactionCounter.toString()); } + console.timeEnd(`flushing ${c}`); } @@ -123,6 +155,9 @@ export class DiffWorker { captureId: this.config.captureId, } ); + + await fs.ensureFile(diffOutputPaths.diffs); + await fs.ensureFile; await flush(); for await (const item of interactionIterator) { @@ -130,11 +165,12 @@ export class DiffWorker { const { batchId, interaction, index } = item; interactionCounter = interactionCounter + BigInt(1); + const deserializedInteraction = JsonHelper.fromInteraction(interaction); console.time(`diff ${batchId} ${index}`); diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( resolvers, rfcState, - JsonHelper.fromInteraction(interaction), + deserializedInteraction, interactionPointerConverter.toPointer(interaction, { interactionIndex: index, batchId, @@ -142,6 +178,13 @@ export class DiffWorker { diffs ); console.timeEnd(`diff ${batchId} ${index}`); + console.time(`count ${batchId} ${index}`); + undocumentedUrls = undocumentedUrlHelpers.countUndocumentedUrls( + deserializedInteraction, + undocumentedUrls + ); + console.timeEnd(`count ${batchId} ${index}`); + // } batcher.add(null); diff --git a/workspaces/ui/config/webpackDevServer.config.js b/workspaces/ui/config/webpackDevServer.config.js index 33ab8d3a9d..b64dceebf1 100644 --- a/workspaces/ui/config/webpackDevServer.config.js +++ b/workspaces/ui/config/webpackDevServer.config.js @@ -10,7 +10,7 @@ const fs = require('fs'); const protocol = process.env.HTTPS === 'true' ? 'https' : 'http'; const host = process.env.HOST || '0.0.0.0'; -module.exports = function(proxy, allowedHost) { +module.exports = function (proxy, allowedHost) { return { // WebpackDevServer 2.4.3 introduced a security fix that prevents remote // websites from potentially accessing local content through DNS rebinding: @@ -31,7 +31,7 @@ module.exports = function(proxy, allowedHost) { disableHostCheck: !proxy || process.env.DANGEROUSLY_DISABLE_HOST_CHECK === 'true', // Enable gzip compression of generated files. - compress: true, + compress: false, // Silence WebpackDevServer's own logs since they're generally not useful. // It will still show compile warnings and errors with this setting. clientLogLevel: 'none', diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index ceab20fb64..dd8924a1b9 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -326,8 +326,8 @@ function CaptureDiffStates() {
Optic observed{' '} - , - yielding in and{' '} + , + yielding and{' '} { - debugger; + const notificationsSource = new EventSource(config.notificationsUrl); + notificationsSource.onmessage = (event) => {}; + notificationsSource.onerror = (e) => { + console.error(e); + }; + notificationsSource.onopen = (e) => { + console.log(e); }; } const rfcState = rfcService.currentState(rfcId); diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index ca915a3162..dde6bff7b0 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -20,7 +20,7 @@ import { ScalaJSHelpers, } from '@useoptic/domain/build'; import uuidv4 from 'uuid/v4'; -import { getOrUndefined } from '@useoptic/domain'; +import { getOrUndefined, opticEngine } from '@useoptic/domain'; export class ExampleCaptureService implements ICaptureService { constructor(private specService: ISpecService) {} @@ -70,19 +70,25 @@ export class ExampleDiffService implements IDiffService { } async listUnrecognizedUrls(): Promise { - const urls = ScalaJSHelpers.toJsArray( - DiffResultHelper.unmatchedUrls(this.diffs, this.rfcState) + const capture = await this.specService.listCapturedSamples(captureId); + const samplesSeq = JsonHelper.jsArrayToSeq( + capture.samples.map((x) => JsonHelper.fromInteraction(x)) + ); + const undocumentedUrlHelpers = new opticEngine.com.useoptic.diff.helpers.UndocumentedUrlHelpers(); + const counter = undocumentedUrlHelpers.countUndocumentedUrls( + this.rfcState, + samplesSeq ); + const urls = opticEngine.UrlCounterJsonSerializer.toFriendlyJs(counter); return Promise.resolve({ urls }); } async loadStats(): Promise { const capture = await this.specService.listCapturedSamples(captureId); + return Promise.resolve({ - totalInteractions: capture.samples.length, - processed: capture.samples.length, - captureCompleted: true, + interactionsCounter: capture.samples.length.toString(), }); } diff --git a/workspaces/ui/src/services/diff/LocalCliDiffService.ts b/workspaces/ui/src/services/diff/LocalCliDiffService.ts index ed84be016d..583d2e4572 100644 --- a/workspaces/ui/src/services/diff/LocalCliDiffService.ts +++ b/workspaces/ui/src/services/diff/LocalCliDiffService.ts @@ -44,17 +44,13 @@ export class LocalCliDiffService implements IDiffService { } async listUnrecognizedUrls(): Promise { - return Promise.resolve({ - urls: [], - }); + const url = `${this.baseUrl}/undocumented-urls`; + return JsonHttpClient.getJson(url); } async loadStats(): Promise { - return Promise.resolve({ - captureCompleted: false, - processed: 124, - totalInteractions: 8675309, - }); + const url = `${this.baseUrl}/stats`; + return JsonHttpClient.getJson(url); } async loadDescription(diff: any): Promise { diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 2660752492..9019fe3c05 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -33,9 +33,7 @@ export interface IDiffService { export interface IRfcCommand {} export interface ILoadStatsResponse { - totalInteractions: number; - processed: number; - captureCompleted: boolean; + interactionsCounter: string; } export interface IStartDiffResponse { From cca1f9bb5bd312b62c361e583198c59e0f9ac86d Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Sat, 27 Jun 2020 15:23:16 -0400 Subject: [PATCH 35/85] progress --- .../scala/com/useoptic/CompareEquality.scala | 14 +- .../com/useoptic/ux/DiffResultHelper.scala | 6 + .../components/diff/v2/CaptureManagerPage.js | 13 +- .../ui/src/components/diff/v2/DiffPageNew.js | 3 +- .../ui/src/components/diff/v2/DiffPreview.js | 21 ++- .../ui/src/contexts/TrafficSessionContext.js | 141 ------------------ 6 files changed, 44 insertions(+), 154 deletions(-) delete mode 100644 workspaces/ui/src/contexts/TrafficSessionContext.js diff --git a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala index 331713b463..719bc96ab9 100644 --- a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala +++ b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala @@ -3,8 +3,9 @@ package com.useoptic import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.interactions.InteractionDiffResult import com.useoptic.diff.shapes.ShapeDiffResult -import com.useoptic.ux.{BodyShapeDiffBlock, DiffBlock} +import com.useoptic.ux.{BodyShapeDiffBlock, DiffBlock, NewRegionDiff} +import scala.scalajs.js import scala.scalajs.js.annotation.{JSExport, JSExportAll} @JSExport @@ -20,4 +21,15 @@ object CompareEquality { def betweenWithoutCommands(a: InteractiveDiffInterpretation, b: InteractiveDiffInterpretation): Boolean = { a.action == b.action && a.pastTenseAction == a.pastTenseAction && a.commands.size == b.commands.size } + + + def between(aNewRegions: js.Array[NewRegionDiff], bNewRegions: js.Array[NewRegionDiff]): Boolean = { + if (aNewRegions.size == bNewRegions.size) { + aNewRegions.zip(bNewRegions).forall { + case (a, b) => a.isSameAs(b) + } + } else { + false + } + } } diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index bc2605b459..58337c9e7d 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -180,6 +180,12 @@ case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[Int @JSExportAll abstract class NewRegionDiff { + + def isSameAs(b: NewRegionDiff): Boolean = { + this.diff == b.diff && + this.interactionPointers == b.interactionPointers + } + val diff: InteractionDiffResult val interactionPointers: Seq[String] val inRequest: Boolean diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index dd8924a1b9..f966ae2ade 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -18,10 +18,6 @@ import WarningIcon from '@material-ui/icons/Warning'; import { Link, Redirect, Route, Switch, useHistory } from 'react-router-dom'; import Chip from '@material-ui/core/Chip'; import { dumpSpecServiceState } from '../../../utilities/dump-spec-service-state'; -import { - TrafficSessionContext, - TrafficSessionStore, -} from '../../../contexts/TrafficSessionContext'; import { GenericContextFactory } from '../../../contexts/GenericContextFactory'; import { useServices, @@ -282,12 +278,9 @@ function CaptureChooserComponent(props) { function RequestDiffWrapper(props) { const specService = useSpecService(); return ( - - - + // sessionId={props.match.params.captureId} + // specService={specService} + ); } diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 38dd48dda9..dd8bf50f87 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -6,7 +6,6 @@ import { EndpointsContextStore, withEndpointsContext, } from '../../../contexts/EndpointContext'; -import { withTrafficSessionContext } from '../../../contexts/TrafficSessionContext'; import { SpecServiceContext, withSpecServiceContext, @@ -208,6 +207,8 @@ function _DiffPageContent(props) { diffsForThisEndpoint ); + console.log('hasNewRegions', hasNewRegions); + return ( {({ ignoreDiff, ignoredDiffs }) => ( diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 1cbe34efed..b47462ece4 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -335,6 +335,7 @@ function _NewRegions(props) { method, fullPath, } = props; + const classes = useStyles(); const { diffService, captureService } = useCaptureContext(); @@ -514,6 +515,7 @@ function _NewRegions(props) { return ( ); @@ -527,6 +529,7 @@ function _NewRegions(props) { return ( ); @@ -625,7 +628,23 @@ function _NewRegions(props) { ); } -export const NewRegions = withDiffContext(_NewRegions); +export class NewRegions extends React.Component { + shouldComponentUpdate(nextProps, nextState, nextContext) { + const result = CompareEquality.between( + nextProps.newRegions, + this.props.newRegions + ); + + console.log('rerender ', result); + //@todo add ignore here + return !result; + } + + render() { + console.log('rendering all over again'); + return <_NewRegions {...this.props} />; + } +} export const BreadcumbX = (props) => { const classes = useStyles(); diff --git a/workspaces/ui/src/contexts/TrafficSessionContext.js b/workspaces/ui/src/contexts/TrafficSessionContext.js deleted file mode 100644 index 27fa65bb41..0000000000 --- a/workspaces/ui/src/contexts/TrafficSessionContext.js +++ /dev/null @@ -1,141 +0,0 @@ -import React from 'react'; -import { GenericContextFactory } from './GenericContextFactory.js'; -import compose from 'lodash.compose'; -import { DiffManagerFacade } from '@useoptic/domain'; - -const { - Context: TrafficSessionContext, - withContext: withTrafficSessionContext, -} = GenericContextFactory(null); - -class TrafficSessionStoreBase extends React.Component { - state = { - isLoading: true, - session: null, - error: null, - diffManager: null, - }; - - componentDidMount() { - this.setState({ - isLoading: true, - error: null, - session: null, - diffManager: DiffManagerFacade.newFromInteractions([], () => { - this.forceUpdate(); - }), - }); - const { specService, sessionId } = this.props; - - if (!sessionId) { - this.setState({ - noSession: true, - isLoading: false, - }); - return; - } - - specService - .listCapturedSamples(sessionId) - .then((result) => { - const session = result; - this.setState({ - session, - isLoading: false, - error: null, - noSession: false, - }); - DiffManagerFacade.updateInteractions( - session.samples, - this.state.diffManager - ); - - this.checkForUpdates(); - }) - .catch((e) => { - console.error(e); - this.setState({ - isLoading: false, - error: e, - // diffSessionManager: null - }); - - DiffManagerFacade.updateInteractions([], this.state.diffManager); - }); - } - - checkForUpdates() { - setTimeout(async () => { - const { specService, sessionId } = this.props; - - if (!sessionId) { - return; - } - - try { - const { status } = await specService.getCaptureStatus(sessionId); - const result = await specService.listCapturedSamples(sessionId); - const { session } = this.state; - const latestSession = result; - if (!session) { - this.checkForUpdates(); - - return; - } - if (latestSession.samples.length > session.samples.length) { - this.setState({ - session: latestSession, - }); - DiffManagerFacade.updateInteractions( - session.samples, - this.state.diffManager - ); - } - //@TODO: add flag prop to disable checking for updates? - if (status !== 'completed') { - this.checkForUpdates(); - } - } catch (e) { - console.error(e); - } - }, 1000); - } - - render() { - const { sessionId, children, renderNoSession } = this.props; - const { isLoading, error, session, noSession, diffManager } = this.state; - - if (isLoading) { - return null; - } - - if (noSession) { - return renderNoSession || null; - } - - if (error) { - console.error(error); - return
; - } - - const context = { - sessionId, - session, - diffManager, - }; - - return ( - - {children} - - ); - } -} - -const TrafficSessionStore = compose()(TrafficSessionStoreBase); - -export { - TrafficSessionStore, - TrafficSessionContext, - withTrafficSessionContext, -}; From 5ea3b3647cfc00ebf81dbeabc42704397057ba56 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Sat, 27 Jun 2020 18:17:38 -0400 Subject: [PATCH 36/85] Class Component for Capture Store --- .../components/diff/v2/CaptureManagerPage.js | 34 +- workspaces/ui/src/contexts/CaptureContext.js | 327 +++++++++++++----- 2 files changed, 255 insertions(+), 106 deletions(-) diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index f966ae2ade..dd8c39383b 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -299,33 +299,38 @@ function CaptureDiffWrapper(props) { const { captureId } = props.match.params; const classes = useStyles(); + const rfcContext = useContext(RfcContext); + const services = useServices(); + return ( - + - + ); } -function CaptureDiffStates() { +function CaptureDiffStat() { const classes = useStyles(); - const { stats } = useCaptureContext(); + // const { stats } = useCaptureContext(); //also available // stats.captureCompleted // stats.processed return (
- Optic observed{' '} - , - yielding and{' '} - - . + Optic observed , yielding{' '} + and{' '} + . + {/*,*/} + {/*yielding and{' '}*/} + {/**/} + {/*.*/}
); @@ -338,14 +343,19 @@ function EndpointDiffs(props) { const history = useHistory(); const baseUrl = useBaseUrl(); + console.log('i am here ', endpointDiffs); + console.log('i am here ', Boolean(endpointDiffs.length)); + //also available // stats.captureCompleted // stats.processed return ( + I AM HERE {endpointDiffs.map((i) => { + console.log(i); const to = `${baseUrl}/diffs/${captureId}/paths/${i.pathId}/methods/${i.method}`; return ( { + return { + diffService: null, + captureService: null, + notificationChannel: null, + config: null, + additionalCommands: [], + lastUpdate: null, + pendingUpdates: false, + + reloadDebounce: null, + unrecognizedUrls: [], + endpointDiffs: [], + }; +}; - const [diffService, setDiffService] = useState(null); - const [captureService, setCaptureService] = useState(null); - const [additionalCommands, setAdditionalCommands] = useState([]); +export class CaptureStateStore extends React.Component { + state = initialState(); - const { eventStore, rfcService, rfcId } = useContext(RfcContext); + componentDidMount = async () => { + this.setState( + { + reloadDebounce: debounce(this.reload, 1000, { leading: true }), + }, + async () => await this.startDiff() + ); + }; - // diff state - const [endpointDiffs, setEndpointDiffs] = useState([]); - const [unrecognizedUrls, setUnrecognizedUrls] = useState([]); - const [stats, setStats] = useState({}); - const [diffId, setDiffId] = useState(''); + componentWillUnmount() { + if (this.state.notificationChannel) { + this.state.notificationChannel.close(); + } + } - const { - specService, - captureServiceFactory, - diffServiceFactory, - } = useServices(); + reload = async () => { + this.setState({ pendingUpdates: true, lastUpdate: new Date() }); + + const { diffService } = this.state; - async function restart() { if (diffService) { - diffService.loadStats().then(setStats); - diffService.listDiffs().then((x) => { - setEndpointDiffs(x.diffs); - }); - diffService.listUnrecognizedUrls().then((x) => { - setUnrecognizedUrls(x.urls); + const [diffsResponse, urlsResponse] = await Promise.all([ + diffService.listDiffs(), + diffService.listUnrecognizedUrls(), + ]); + + console.log('results', [ + diffsResponse.diffs.length, + urlsResponse.urls.length, + ]); + + this.setState({ + endpointDiffs: diffsResponse.diffs, + unrecognizedUrls: urlsResponse.urls, }); - setDiffId(diffService.diffId()); } - } - useEffect(() => { - let notifications; - async function task() { - const captureService = await captureServiceFactory( - specService, - captureId - ); - //@TODO: handle error - const apiConfig = await specService.loadConfig(); - const events = eventStore.listEvents(rfcId); - const config = await captureService.startDiff( - ScalaJSHelpers.eventsJsArray(events), - apiConfig.config.ignoreRequests || [], - additionalCommands - ); - if (config.notificationsUrl) { - const notificationsSource = new EventSource(config.notificationsUrl); - notificationsSource.onmessage = (event) => {}; - notificationsSource.onerror = (e) => { - console.error(e); - }; - notificationsSource.onopen = (e) => { - console.log(e); - }; - } - const rfcState = rfcService.currentState(rfcId); - - const diffServiceForCapture = await diffServiceFactory( - specService, - captureService, - rfcState, - additionalCommands, - config, - captureId - ); - setCaptureService(captureService); - setDiffService(diffServiceForCapture); + }; + + startDiff = async () => { + const { + specService, + captureServiceFactory, + diffServiceFactory, + captureId, + eventStore, + rfcId, + rfcService, + } = this.props; + + const captureService = await captureServiceFactory(specService, captureId); + //@TODO: handle error + const apiConfig = await specService.loadConfig(); + const events = eventStore.listEvents(rfcId); + const config = await captureService.startDiff( + ScalaJSHelpers.eventsJsArray(events), + apiConfig.config.ignoreRequests || [], + this.state.additionalCommands + ); + + let notificationChannel = null; + if (config.notificationsUrl) { + notificationChannel = new EventSource(config.notificationsUrl); + notificationChannel.onmessage = (event) => { + this.state.reloadDebounce(); + }; + notificationChannel.onerror = (e) => { + console.error(e); + }; + notificationChannel.onopen = (e) => { + console.log(e); + }; } - task(); - return function cleanup() { - if (notifications) { - notifications.close(); - } - }; - }, [captureId, additionalCommands]); - useEffect(() => { - restart(); - return () => {}; - }, [diffService]); + const rfcState = rfcService.currentState(rfcId); - if (!diffService) { - return
loading...
; - } + const diffService = await diffServiceFactory( + specService, + captureService, + rfcState, + this.state.additionalCommands, + config, + captureId + ); - const updatedAdditionalCommands = (additionalCommands) => { - setAdditionalCommands(additionalCommands); + this.setState({ + config, + diffService, + captureService, + notificationChannel, + pendingUpdates: false, + }); }; - const value = { - diffService, - captureService, - restart, - updatedAdditionalCommands, - diffId, - endpointDiffs, - unrecognizedUrls, - stats, - }; + render = () => { + const { + pendingUpdates, + unrecognizedUrls, + endpointDiffs, + lastUpdate, + config, + } = this.state; + const value = { + pendingUpdates, + config, + lastUpdate, + endpointDiffs, + unrecognizedUrls, + }; - return ( - - {props.children} - - ); + return ( + + {JSON.stringify(value)} + {this.props.children} + + ); + }; } + +// export function CaptureStateStore(props) { +// const { captureId } = props; +// +// const [diffService, setDiffService] = useState(null); +// const [captureService, setCaptureService] = useState(null); +// const [additionalCommands, setAdditionalCommands] = useState([]); +// +// const { eventStore, rfcService, rfcId } = useContext(RfcContext); +// +// // diff state +// const [endpointDiffs, setEndpointDiffs] = useState([]); +// const [unrecognizedUrls, setUnrecognizedUrls] = useState([]); +// const [stats, setStats] = useState({}); +// const [diffId, setDiffId] = useState(''); +// +// const { +// specService, +// captureServiceFactory, +// diffServiceFactory, +// } = useServices(); +// +// async function restart() { +// if (diffService) { +// diffService.loadStats().then(setStats); +// diffService.listDiffs().then((x) => { +// setEndpointDiffs(x.diffs); +// }); +// diffService.listUnrecognizedUrls().then((x) => { +// setUnrecognizedUrls(x.urls); +// }); +// setDiffId(diffService.diffId()); +// } +// } +// useEffect(() => { +// let notifications; +// async function task() { +// const captureService = await captureServiceFactory( +// specService, +// captureId +// ); +// //@TODO: handle error +// const apiConfig = await specService.loadConfig(); +// const events = eventStore.listEvents(rfcId); +// const config = await captureService.startDiff( +// ScalaJSHelpers.eventsJsArray(events), +// apiConfig.config.ignoreRequests || [], +// additionalCommands +// ); +// if (config.notificationsUrl) { +// const notificationsSource = new EventSource(config.notificationsUrl); +// notificationsSource.onmessage = (event) => { +// debugger; +// }; +// notificationsSource.onerror = (e) => { +// console.error(e); +// }; +// notificationsSource.onopen = (e) => { +// console.log(e); +// }; +// } +// const rfcState = rfcService.currentState(rfcId); +// +// const diffServiceForCapture = await diffServiceFactory( +// specService, +// captureService, +// rfcState, +// additionalCommands, +// config, +// captureId +// ); +// setCaptureService(captureService); +// setDiffService(diffServiceForCapture); +// } +// task(); +// return function cleanup() { +// if (notifications) { +// notifications.close(); +// } +// }; +// }, [captureId, additionalCommands]); +// +// useEffect(() => { +// restart(); +// return () => {}; +// }, [diffService]); +// +// if (!diffService) { +// return
loading...
; +// } +// +// const updatedAdditionalCommands = (additionalCommands) => { +// setAdditionalCommands(additionalCommands); +// }; +// +// const value = { +// diffService, +// captureService, +// restart, +// updatedAdditionalCommands, +// diffId, +// endpointDiffs, +// unrecognizedUrls, +// stats, +// }; +// +// return ( +// +// {props.children} +// +// ); +// } From 9c7f674ab0b5b42a0a0e206cd70b958031b1fc30 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Sun, 28 Jun 2020 17:39:17 -0400 Subject: [PATCH 37/85] Basic functionality --- .../UndocumentedUrlCounterConverter.scala | 20 ++++++- .../com/useoptic/ux/DiffResultHelper.scala | 28 +++++++++- workspaces/domain/src/index.ts | 1 + .../components/diff/v2/CaptureManagerPage.js | 27 +++++---- .../ui/src/components/diff/v2/DiffPageNew.js | 13 +++-- .../ui/src/components/diff/v2/DiffPreview.js | 10 +--- workspaces/ui/src/contexts/CaptureContext.js | 56 ++++++++++++++++--- .../src/services/diff/LocalCliDiffService.ts | 5 +- 8 files changed, 125 insertions(+), 35 deletions(-) diff --git a/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala b/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala index 94b0eaf8cc..b8047dfd33 100644 --- a/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala +++ b/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala @@ -1,13 +1,16 @@ package com.useoptic +import com.useoptic.UrlCounterDeserializer.fromJson import com.useoptic.diff.helpers.UndocumentedUrlHelpers.{MethodAndPath, UrlCounter} +import com.useoptic.ux.{NewEndpoint} import io.circe.{Decoder, Encoder, Json} import io.circe.scalajs.{convertJsToJson, convertJsonToJs} import io.circe.syntax._ import io.circe.generic.auto._ +import scala.collection.immutable import scala.scalajs.js -import scala.scalajs.js.annotation.{JSExportAll, JSExportTopLevel} +import scala.scalajs.js.annotation.{JSExport, JSExportAll, JSExportTopLevel} @JSExportTopLevel("UrlCounterJsonSerializer") @@ -57,4 +60,17 @@ object UrlCounterDeserializer { def fromJs(x: js.Any) = { fromJson(convertJsToJson(x).right.get) } -} \ No newline at end of file + + +} + +@JSExport +@JSExportAll +object UrlCounterHelper { + import UrlCounterDeserializer._ + def fromJsonToSeq(jsJson: js.Any): js.Array[NewEndpoint] = { + js.Array.apply( + convertJsToJson(jsJson).right.get.as[Seq[NewEndpoint]].right.get:_* + ) + } +} diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index 58337c9e7d..e7beb98254 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -4,6 +4,7 @@ import com.useoptic.contexts.requests.Commands.PathComponentId import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.helpers.DiffHelpers.InteractionPointersGroupedByDiff +import com.useoptic.diff.helpers.UndocumentedUrlHelpers.UrlCounter import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescription, DiffDescriptionInterpreters} import com.useoptic.diff.interactions._ import com.useoptic.diff.shapes.resolvers.ShapesResolvers @@ -16,11 +17,30 @@ import scala.util.Try @JSExportAll object DiffResultHelper { + private val stableRandomSeed = scala.util.Random.nextLong() + def unmatchedUrls(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { //@TODO: implement this Vector.empty } + def splitUnmatchedUrls(urls: Seq[NewEndpoint]): SplitUndocumentedUrls = { + val random = scala.util.Random + random.setSeed(stableRandomSeed) + + def getRandomElement: Option[NewEndpoint] = urls match { + case _ => urls.lift(random.nextInt(urls.size)) + } + + if (urls.size > 250) { + val urlsToShow = Range(0, 250).flatMap(i => getRandomElement).distinct + SplitUndocumentedUrls(urlsToShow.toVector.sortBy(_.count).reverse, urls.size, urls.map(_.path).distinct) + } else { + SplitUndocumentedUrls(urls.sortBy(_.count).reverse, urls.size, urls.map(_.path).distinct) + } + + } + def diffsForPathAndMethod(allEndpointDiffs: Seq[EndpointDiffs], pathId: PathComponentId, method: String, ignoredDiffs: Seq[DiffResult]): Map[InteractionDiffResult, Seq[String]] = { allEndpointDiffs.find(i => i.method == method && i.pathId == pathId) .map(i => i.diffs) @@ -180,7 +200,7 @@ case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[Int @JSExportAll abstract class NewRegionDiff { - + def isSameAs(b: NewRegionDiff): Boolean = { this.diff == b.diff && this.interactionPointers == b.interactionPointers @@ -259,3 +279,9 @@ abstract class BodyDiff { @JSExportAll case class PreviewShapeAndCommands(shape: Option[ShapeOnlyRenderHelper], suggestion: Option[InteractiveDiffInterpretation]) + + +@JSExportAll +case class SplitUndocumentedUrls(urls: Seq[NewEndpoint], totalCount: Int, allPaths: Seq[String]) { + def showing: Int = urls.length +} diff --git a/workspaces/domain/src/index.ts b/workspaces/domain/src/index.ts index 8d26619ccb..e80d1e82cf 100644 --- a/workspaces/domain/src/index.ts +++ b/workspaces/domain/src/index.ts @@ -98,3 +98,4 @@ export const DiffManagerFacade = opticEngine.com.useoptic.DiffManagerFacade(); export const DiffPreviewer = opticEngine.com.useoptic.ux.DiffPreviewer; export const DiffHelpers = opticEngine.com.useoptic.diff.helpers.DiffHelpers(); export const DiffResultHelper = opticEngine.com.useoptic.ux.DiffResultHelper(); +export const UrlCounterHelper = opticEngine.com.useoptic.UrlCounterHelper(); diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index dd8c39383b..39851592fd 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -25,7 +25,12 @@ import { } from '../../../contexts/SpecServiceContext'; import { useRouterPaths } from '../../../RouterPaths'; import { RfcContext } from '../../../contexts/RfcContext'; -import { JsonHelper, lengthScala, mapScala } from '@useoptic/domain'; +import { + DiffResultHelper, + JsonHelper, + lengthScala, + mapScala, +} from '@useoptic/domain'; import { NewUrlModal } from './AddUrlModal'; import DiffPageNew, { IgnoreDiffContext, IgnoreDiffStore } from './DiffPageNew'; import { Show, ShowSpan } from '../../shared/Show'; @@ -343,15 +348,11 @@ function EndpointDiffs(props) { const history = useHistory(); const baseUrl = useBaseUrl(); - console.log('i am here ', endpointDiffs); - console.log('i am here ', Boolean(endpointDiffs.length)); - //also available // stats.captureCompleted // stats.processed return ( - I AM HERE {endpointDiffs.map((i) => { @@ -435,16 +436,22 @@ function UnrecognizedUrls(props) { const { unrecognizedUrls } = useCaptureContext(); const baseUrl = useBaseUrl(); - const allUnmatchedPaths = unrecognizedUrls.map((i) => i.url); + const urlsSplit = DiffResultHelper.splitUnmatchedUrls( + JsonHelper.jsArrayToSeq(unrecognizedUrls) + ); + + const allUnmatchedPaths = JsonHelper.seqToJsArray(urlsSplit.allPaths); + const urls = JsonHelper.seqToJsArray(urlsSplit.urls); return ( - 0}> - + 0}> + - {unrecognizedUrls.map((i) => { + {urls.map((i) => { return ( + //
{i.toString()}
{ diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index dd8bf50f87..76047c287a 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -8,10 +8,11 @@ import { } from '../../../contexts/EndpointContext'; import { SpecServiceContext, + useServices, withSpecServiceContext, } from '../../../contexts/SpecServiceContext'; -import { DiffContextStore, withDiffContext } from './DiffContext'; -import { withRfcContext } from '../../../contexts/RfcContext'; +import { DiffContext, DiffContextStore, withDiffContext } from './DiffContext'; +import { RfcContext, withRfcContext } from '../../../contexts/RfcContext'; import LinearProgress from '@material-ui/core/LinearProgress'; import { DiffResultHelper, @@ -83,9 +84,13 @@ const styles = (theme) => ({ function DiffPageNew(props) { const { specStore } = useContext(SpecServiceContext); const baseUrl = useBaseUrl(); + const rfcContext = useContext(RfcContext); + const services = useServices(); + const { pathId, method, captureId } = props.match.params; + return ( - + diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index b47462ece4..ba156fba23 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -327,17 +327,11 @@ export default function DiffPreview() { } function _NewRegions(props) { - const { - newRegions, - ignoreDiff, - acceptSuggestion, - endpointPurpose, - method, - fullPath, - } = props; + const { newRegions, ignoreDiff, endpointPurpose, method, fullPath } = props; const classes = useStyles(); + const { acceptSuggestion } = useContext(DiffContext); const { diffService, captureService } = useCaptureContext(); const [deselected, setDeselected] = useState([]); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 1555429a18..bb15ea0841 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -10,7 +10,7 @@ export function useCaptureContext() { return useContext(CaptureContext); } -const initialState = () => { +const initialState = (debouncer = null) => { return { diffService: null, captureService: null, @@ -20,7 +20,7 @@ const initialState = () => { lastUpdate: null, pendingUpdates: false, - reloadDebounce: null, + reloadDebounce: debouncer, unrecognizedUrls: [], endpointDiffs: [], }; @@ -32,7 +32,10 @@ export class CaptureStateStore extends React.Component { componentDidMount = async () => { this.setState( { - reloadDebounce: debounce(this.reload, 1000, { leading: true }), + reloadDebounce: debounce(this.reload, 1000, { + leading: true, + maxWait: 1500, + }), }, async () => await this.startDiff() ); @@ -55,18 +58,33 @@ export class CaptureStateStore extends React.Component { diffService.listUnrecognizedUrls(), ]); - console.log('results', [ - diffsResponse.diffs.length, - urlsResponse.urls.length, - ]); + console.log('results', [diffsResponse.diffs.length, urlsResponse.length]); this.setState({ endpointDiffs: diffsResponse.diffs, - unrecognizedUrls: urlsResponse.urls, + unrecognizedUrls: urlsResponse, }); } }; + cleanupDiff = async () => { + if (this.state.notificationChannel) { + this.state.notificationChannel.close(); + } + return await new Promise((resolve) => { + this.setState( + { + unrecognizedUrls: [], + endpointDiffs: [], + lastUpdate: null, + pendingUpdates: false, + config: null, + }, + resolve + ); + }); + }; + startDiff = async () => { const { specService, @@ -78,6 +96,9 @@ export class CaptureStateStore extends React.Component { rfcService, } = this.props; + //clear diff + await this.cleanupDiff(); + const captureService = await captureServiceFactory(specService, captureId); //@TODO: handle error const apiConfig = await specService.loadConfig(); @@ -122,6 +143,12 @@ export class CaptureStateStore extends React.Component { }); }; + updatedAdditionalCommands = (additionalCommands) => { + this.setState({ additionalCommands }, () => { + this.startDiff(); + }); + }; + render = () => { const { pendingUpdates, @@ -129,18 +156,29 @@ export class CaptureStateStore extends React.Component { endpointDiffs, lastUpdate, config, + diffService, + captureService, } = this.state; + const value = { pendingUpdates, config, lastUpdate, endpointDiffs, unrecognizedUrls, + diffService, + captureService, + updatedAdditionalCommands: this.updatedAdditionalCommands, }; return ( - {JSON.stringify(value)} + {JSON.stringify({ + pendingUpdates, + lastUpdate, + endpointDiffs: endpointDiffs.length, + unrecognizedUrls: unrecognizedUrls.length, + })} {this.props.children} ); diff --git a/workspaces/ui/src/services/diff/LocalCliDiffService.ts b/workspaces/ui/src/services/diff/LocalCliDiffService.ts index 583d2e4572..6095ba610c 100644 --- a/workspaces/ui/src/services/diff/LocalCliDiffService.ts +++ b/workspaces/ui/src/services/diff/LocalCliDiffService.ts @@ -17,6 +17,7 @@ import { JsonHelper, opticEngine, ScalaJSHelpers, + UrlCounterHelper, } from '@useoptic/domain'; export class LocalCliDiffService implements IDiffService { @@ -45,7 +46,9 @@ export class LocalCliDiffService implements IDiffService { async listUnrecognizedUrls(): Promise { const url = `${this.baseUrl}/undocumented-urls`; - return JsonHttpClient.getJson(url); + const json = (await JsonHttpClient.getJson(url)).urls; + const result = UrlCounterHelper.fromJsonToSeq(json); + return result; } async loadStats(): Promise { From c66cdabe5bf57522661f994d23d039f4f69d2baf Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Mon, 29 Jun 2020 09:26:06 -0400 Subject: [PATCH 38/85] Tested body issues --- .../example-poke.interaction.json | 43 +++++++++++++++++++ .../diff/helpers/BodyParserSpec.scala | 19 ++++++++ .../ui/src/components/diff/v2/DiffPreview.js | 2 +- 3 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 core/optic/shared/src/test/resources/diff-scenarios/example-poke.interaction.json create mode 100644 core/optic/shared/src/test/scala/com/useoptic/diff/helpers/BodyParserSpec.scala diff --git a/core/optic/shared/src/test/resources/diff-scenarios/example-poke.interaction.json b/core/optic/shared/src/test/resources/diff-scenarios/example-poke.interaction.json new file mode 100644 index 0000000000..ef77e758c9 --- /dev/null +++ b/core/optic/shared/src/test/resources/diff-scenarios/example-poke.interaction.json @@ -0,0 +1,43 @@ +{ + "uuid": "450905a2-d474-4d23-836b-39bb11e619ad", + "request": { + "host": "pokeapi.co", + "method": "GET", + "path": "/api/v2/berry-flavor/1/", + "query": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": null, + "value": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + } + } + }, + "response": { + "statusCode": 200, + "headers": { + "shapeHashV1Base64": null, + "asJsonString": null, + "asText": null + }, + "body": { + "contentType": "application/json", + "value": { + "shapeHashV1Base64": "CAASyQwKB2JlcnJpZXMSvQwIARo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDGjUIABIiCgViZXJyeRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhINCgdwb3RlbmN5EgIIAxo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDGjUIABIiCgViZXJyeRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhINCgdwb3RlbmN5EgIIAxo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDGjUIABIiCgViZXJyeRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhINCgdwb3RlbmN5EgIIAxo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDGjUIABIiCgViZXJyeRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhINCgdwb3RlbmN5EgIIAxo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDGjUIABIiCgViZXJyeRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhINCgdwb3RlbmN5EgIIAxo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDGjUIABIiCgViZXJyeRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhINCgdwb3RlbmN5EgIIAxo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDGjUIABIiCgViZXJyeRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhINCgdwb3RlbmN5EgIIAxo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDGjUIABIiCgViZXJyeRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhINCgdwb3RlbmN5EgIIAxo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDGjUIABIiCgViZXJyeRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhINCgdwb3RlbmN5EgIIAxo1CAASIgoFYmVycnkSGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISDQoHcG90ZW5jeRICCAMaNQgAEiIKBWJlcnJ5EhkIABIKCgRuYW1lEgIIAhIJCgN1cmwSAggCEg0KB3BvdGVuY3kSAggDEikKDGNvbnRlc3RfdHlwZRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhIICgJpZBICCAMSCgoEbmFtZRICCAISeQoFbmFtZXMScAgBGjUIABIlCghsYW5ndWFnZRIZCAASCgoEbmFtZRICCAISCQoDdXJsEgIIAhIKCgRuYW1lEgIIAho1CAASJQoIbGFuZ3VhZ2USGQgAEgoKBG5hbWUSAggCEgkKA3VybBICCAISCgoEbmFtZRICCAI=", + "asJsonString": null, + "asText": "{\"berries\":[{\"berry\":{\"name\":\"rowap\",\"url\":\"https://pokeapi.co/api/v2/berry/64/\"},\"potency\":10},{\"berry\":{\"name\":\"leppa\",\"url\":\"https://pokeapi.co/api/v2/berry/6/\"},\"potency\":10},{\"berry\":{\"name\":\"oran\",\"url\":\"https://pokeapi.co/api/v2/berry/7/\"},\"potency\":10},{\"berry\":{\"name\":\"persim\",\"url\":\"https://pokeapi.co/api/v2/berry/8/\"},\"potency\":10},{\"berry\":{\"name\":\"lum\",\"url\":\"https://pokeapi.co/api/v2/berry/9/\"},\"potency\":10},{\"berry\":{\"name\":\"razz\",\"url\":\"https://pokeapi.co/api/v2/berry/16/\"},\"potency\":10},{\"berry\":{\"name\":\"pinap\",\"url\":\"https://pokeapi.co/api/v2/berry/20/\"},\"potency\":10},{\"berry\":{\"name\":\"pomeg\",\"url\":\"https://pokeapi.co/api/v2/berry/21/\"},\"potency\":10},{\"berry\":{\"name\":\"qualot\",\"url\":\"https://pokeapi.co/api/v2/berry/23/\"},\"potency\":10},{\"berry\":{\"name\":\"hondew\",\"url\":\"https://pokeapi.co/api/v2/berry/24/\"},\"potency\":10},{\"berry\":{\"name\":\"nomel\",\"url\":\"https://pokeapi.co/api/v2/berry/30/\"},\"potency\":10},{\"berry\":{\"name\":\"belue\",\"url\":\"https://pokeapi.co/api/v2/berry/35/\"},\"potency\":10},{\"berry\":{\"name\":\"rindo\",\"url\":\"https://pokeapi.co/api/v2/berry/39/\"},\"potency\":10},{\"berry\":{\"name\":\"shuca\",\"url\":\"https://pokeapi.co/api/v2/berry/43/\"},\"potency\":10},{\"berry\":{\"name\":\"charti\",\"url\":\"https://pokeapi.co/api/v2/berry/47/\"},\"potency\":10},{\"berry\":{\"name\":\"apicot\",\"url\":\"https://pokeapi.co/api/v2/berry/57/\"},\"potency\":10},{\"berry\":{\"name\":\"cheri\",\"url\":\"https://pokeapi.co/api/v2/berry/1/\"},\"potency\":10},{\"berry\":{\"name\":\"chople\",\"url\":\"https://pokeapi.co/api/v2/berry/41/\"},\"potency\":15},{\"berry\":{\"name\":\"figy\",\"url\":\"https://pokeapi.co/api/v2/berry/11/\"},\"potency\":15},{\"berry\":{\"name\":\"occa\",\"url\":\"https://pokeapi.co/api/v2/berry/36/\"},\"potency\":15},{\"berry\":{\"name\":\"tamato\",\"url\":\"https://pokeapi.co/api/v2/berry/26/\"},\"potency\":20},{\"berry\":{\"name\":\"tanga\",\"url\":\"https://pokeapi.co/api/v2/berry/46/\"},\"potency\":20},{\"berry\":{\"name\":\"babiri\",\"url\":\"https://pokeapi.co/api/v2/berry/51/\"},\"potency\":25},{\"berry\":{\"name\":\"starf\",\"url\":\"https://pokeapi.co/api/v2/berry/59/\"},\"potency\":30},{\"berry\":{\"name\":\"liechi\",\"url\":\"https://pokeapi.co/api/v2/berry/53/\"},\"potency\":30},{\"berry\":{\"name\":\"spelon\",\"url\":\"https://pokeapi.co/api/v2/berry/31/\"},\"potency\":30},{\"berry\":{\"name\":\"petaya\",\"url\":\"https://pokeapi.co/api/v2/berry/56/\"},\"potency\":30},{\"berry\":{\"name\":\"lansat\",\"url\":\"https://pokeapi.co/api/v2/berry/58/\"},\"potency\":30},{\"berry\":{\"name\":\"enigma\",\"url\":\"https://pokeapi.co/api/v2/berry/60/\"},\"potency\":40}],\"contest_type\":{\"name\":\"cool\",\"url\":\"https://pokeapi.co/api/v2/contest-type/1/\"},\"id\":1,\"name\":\"spicy\",\"names\":[{\"language\":{\"name\":\"fr\",\"url\":\"https://pokeapi.co/api/v2/language/5/\"},\"name\":\"Épicé\"},{\"language\":{\"name\":\"en\",\"url\":\"https://pokeapi.co/api/v2/language/9/\"},\"name\":\"Spicy\"}]}" + } + } + }, + "tags": [] +} diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/BodyParserSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/BodyParserSpec.scala new file mode 100644 index 0000000000..3fa974c1fa --- /dev/null +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/BodyParserSpec.scala @@ -0,0 +1,19 @@ +package com.useoptic.diff.helpers + +import com.useoptic.diff.JsonFileFixture +import com.useoptic.diff.interactions.BodyUtilities +import com.useoptic.serialization.InteractionSerialization +import org.scalatest.FunSpec + +class BodyParserSpec extends FunSpec with JsonFileFixture { + + it("will parse JSON properly in an interaction with both json and shape hash") { + val a = fromFile("example-poke.interaction") + null + val interaction = InteractionSerialization.fromJson(a) + + val parsedJsonLike = BodyUtilities.parseBody(interaction.response.body) + null + } + +} diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index ba156fba23..2dd10ff368 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -395,7 +395,7 @@ function _NewRegions(props) { useEffect(() => { setInteractionIndex(1); - }, [diff]); + }, [diff.toString()]); const currentInteractionPointer = getIndex(diff.interactionPointers)( interactionIndex - 1 From b060d55b2493dd35efb2dbfa0957f46591629402 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Mon, 29 Jun 2020 12:29:24 -0400 Subject: [PATCH 39/85] Update DiffResultHelper.scala --- .../src/main/scala/com/useoptic/ux/DiffResultHelper.scala | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index e7beb98254..64982c5064 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -9,7 +9,7 @@ import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDes import com.useoptic.diff.interactions._ import com.useoptic.diff.shapes.resolvers.ShapesResolvers import com.useoptic.types.capture.{Body, HttpInteraction} - +import com.useoptic.dsa.OpticIds import scala.scalajs.js.annotation.{JSExport, JSExportAll} import scala.util.Try @@ -17,6 +17,7 @@ import scala.util.Try @JSExportAll object DiffResultHelper { + implicit val ids = OpticIds.generator private val stableRandomSeed = scala.util.Random.nextLong() def unmatchedUrls(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { @@ -250,6 +251,7 @@ abstract class NewRegionDiff { def toSuggestion(interactions: Vector[HttpInteraction], currentRfcState: RfcState, inferPolymorphism: Boolean): Seq[InteractiveDiffInterpretation] = { + implicit val ids = OpticIds.generator val resolvers = ShapesResolvers.newResolver(currentRfcState) val basicInterpreter = new DefaultInterpreters(resolvers, currentRfcState) if (inferPolymorphism) { From 85a7e15912c3634bd72130d1f528e3b9ec87138e Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Mon, 29 Jun 2020 15:08:31 -0400 Subject: [PATCH 40/85] - worker should track processed and skipped interactions counts - code should use locks when reading/writing files - worker should know when it is complete --- .../cli-server/src/diffs/diff-manager.ts | 6 +- .../cli-server/src/routers/capture-router.ts | 17 +++-- workspaces/cli-shared/package.json | 1 + .../avro/file-system/interaction-iterator.ts | 6 ++ .../cli-shared/src/diffs/diff-worker.ts | 65 +++++++++++++------ .../src/services/diff/ExampleDiffService.ts | 3 +- workspaces/ui/src/services/diff/index.ts | 3 +- 7 files changed, 69 insertions(+), 32 deletions(-) diff --git a/workspaces/cli-server/src/diffs/diff-manager.ts b/workspaces/cli-server/src/diffs/diff-manager.ts index b8d2804647..b7660ba34f 100644 --- a/workspaces/cli-server/src/diffs/diff-manager.ts +++ b/workspaces/cli-server/src/diffs/diff-manager.ts @@ -16,8 +16,6 @@ export class DiffManager { public readonly events: EventEmitter = new EventEmitter(); private child!: ChildProcess; - constructor() {} - async start(config: IDiffManagerConfig) { const outputPaths = getDiffOutputPaths(config); const scriptConfig: IDiffProjectionEmitterConfig = { @@ -35,7 +33,7 @@ export class DiffManager { ); child.on('message', (x: any) => { console.log(x); - this.events.emit('progress'); + this.events.emit(x.type, x.data); }); child.on('exit', function () { console.log(arguments); @@ -45,7 +43,7 @@ export class DiffManager { async stop() { if (this.child) { - this.child.kill(); + this.child.kill('SIGTERM'); } } } diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index 270c87e3fe..b997e046b2 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -9,6 +9,7 @@ import { import { DiffManager } from '../diffs/diff-manager'; import fs from 'fs-extra'; import { getDiffOutputPaths } from '@useoptic/cli-shared/build/diffs/diff-worker'; +import lockfile from 'proper-lockfile'; export interface ICaptureRouterDependencies { idGenerator: IdGenerator; @@ -113,8 +114,6 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { } ); - //////////////////////////////////////////////////////////////////////////////// - //@TODO: router.get('/diffs/:diffId/{diffs,undocumented-urls,statistics,notifications}') //////////////////////////////////////////////////////////////////////////////// router.get('/diffs/:diffId/notifications', async (req, res) => { @@ -126,7 +125,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { function emit(data: any) { console.log('emit'); - res.write(`data: {}\n\n`); + res.write(`data: ${JSON.stringify(data)}\n\n`); } const headers = { @@ -137,8 +136,8 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { res.writeHead(200, headers); emit({ type: 'message', data: {} }); - diffMetadata.manager.events.on('progress', () => { - emit({ type: 'message', data: {} }); + diffMetadata.manager.events.on('progress', (data) => { + emit({ type: 'message', data }); }); req.on('close', () => { @@ -158,7 +157,9 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); try { //@TODO: streamify + await lockfile.lock(diffOutputPaths.diffs); const contents = await fs.readJson(diffOutputPaths.diffs); + await lockfile.unlock(diffOutputPaths.diffs); res.json(contents); } catch (e) { res.status(404).json({ @@ -175,7 +176,10 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); try { //@TODO: streamify + await lockfile.lock(diffOutputPaths.undocumentedUrls); const contents = await fs.readJson(diffOutputPaths.undocumentedUrls); + await lockfile.unlock(diffOutputPaths.undocumentedUrls); + res.json({ urls: contents, }); @@ -194,7 +198,10 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); try { //@TODO: streamify + await lockfile.lock(diffOutputPaths.stats); const contents = await fs.readJson(diffOutputPaths.stats); + await lockfile.unlock(diffOutputPaths.stats); + res.json(contents); } catch (e) { res.status(404).json({ diff --git a/workspaces/cli-shared/package.json b/workspaces/cli-shared/package.json index 624051b690..ac98897796 100644 --- a/workspaces/cli-shared/package.json +++ b/workspaces/cli-shared/package.json @@ -22,6 +22,7 @@ "@useoptic/domain-types": "8.1.0", "@useoptic/domain-utilities": "8.1.0", "avsc": "^5.4.21", + "proper-lockfile": "^4.1.1", "bottleneck": "^2.19.5", "colors": "^1.4.0", "fs-extra": "^9.0.0", diff --git a/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts index bf0d09ee16..54da22b0fa 100644 --- a/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts +++ b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts @@ -16,6 +16,8 @@ export async function* CaptureInteractionIterator( //@TODO: add a way to check if the capture has completed ) { let shouldStop = false; + let skippedInteractionsCounter = BigInt(0); + let diffedInteractionsCounter = BigInt(0); let currentBatchId = BigInt(0); while (!shouldStop) { const batchFilePath = path.join( @@ -33,12 +35,16 @@ export async function* CaptureInteractionIterator( for await (const x of items) { const shouldEmit = filter(x); if (shouldEmit) { + diffedInteractionsCounter = diffedInteractionsCounter + BigInt(1); yield { batchId: currentBatchId.toString(), index, interaction: x, + skippedInteractionsCounter, + diffedInteractionsCounter, }; } else { + skippedInteractionsCounter = skippedInteractionsCounter + BigInt(1); console.log(`skipping ${x.request.method} ${x.request.path}`); } index = index + 1; diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts index 410a35e4b6..a755e36ae9 100644 --- a/workspaces/cli-shared/src/diffs/diff-worker.ts +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -14,6 +14,7 @@ import { import fs from 'fs-extra'; import Bottleneck from 'bottleneck'; import path from 'path'; +import lockfile from 'proper-lockfile'; export interface IDiffProjectionEmitterConfig { diffId: string; @@ -48,7 +49,12 @@ export function getDiffOutputPaths(values: { additionalCommands, }; } - +async function safeWriteJson(filePath: string, contents: any) { + await fs.ensureFile(filePath); + await lockfile.lock(filePath); + await fs.writeJson(filePath, contents); + await lockfile.unlock(filePath); +} export class DiffWorker { constructor(private config: IDiffProjectionEmitterConfig) {} @@ -104,7 +110,9 @@ export class DiffWorker { const undocumentedUrlHelpers = new opticEngine.com.useoptic.diff.helpers.UndocumentedUrlIncrementalHelpers( rfcState ); - let interactionCounter = BigInt(0); + let hasMoreInteractions = true; + let diffedInteractionsCounter = BigInt(0); + let skippedInteractionsCounter = BigInt(0); const batcher = new Bottleneck.Batcher({ maxSize: 100, maxTime: 100, @@ -114,39 +122,52 @@ export class DiffWorker { const queue = new Bottleneck({ maxConcurrent: 1, }); - + function notifyParent() { + const progress = { + diffedInteractionsCounter: diffedInteractionsCounter.toString(), + skippedInteractionsCounter: skippedInteractionsCounter.toString(), + hasMoreInteractions, + }; + if (process && process.send) { + process.send({ + type: 'progress', + data: progress, + }); + } else { + console.log(progress); + } + } async function flush() { - const c = interactionCounter.toString(); + const c = diffedInteractionsCounter.toString(); console.time(`flushing ${c}`); - const outputDiff = fs.writeJson( + const outputDiff = safeWriteJson( diffOutputPaths.diffs, opticEngine.DiffWithPointersJsonSerializer.toJs(diffs) ); - const outputCount = fs.writeJson( + const outputCount = safeWriteJson( diffOutputPaths.undocumentedUrls, opticEngine.UrlCounterJsonSerializer.toFriendlyJs(undocumentedUrls) ); - const outputStats = fs.writeJson(diffOutputPaths.stats, { - interactionsCounter: c, + const outputStats = safeWriteJson(diffOutputPaths.stats, { + diffedInteractionsCounter: diffedInteractionsCounter.toString(), + skippedInteractionsCounter: skippedInteractionsCounter.toString(), + isDone: !hasMoreInteractions, }); await Promise.all([outputDiff, outputCount, outputStats]); - if (process && process.send) { - process.send({ - type: 'progress', - data: { interactionCounter: interactionCounter.toString() }, - }); - } else { - console.log(interactionCounter.toString()); - } + notifyParent(); console.timeEnd(`flushing ${c}`); } batcher.on('batch', () => { - queue.schedule(() => flush()); + console.log('scheduling batch flush'); + queue.schedule(() => { + console.log('executing batch flush'); + return flush(); + }); }); const interactionPointerConverter = new LocalCaptureInteractionPointerConverter( @@ -156,16 +177,17 @@ export class DiffWorker { } ); - await fs.ensureFile(diffOutputPaths.diffs); - await fs.ensureFile; + await fs.ensureDir(diffOutputPaths.base); await flush(); for await (const item of interactionIterator) { // for (const x of [1, 2, 3]) { const { batchId, interaction, index } = item; - - interactionCounter = interactionCounter + BigInt(1); + skippedInteractionsCounter = item.skippedInteractionsCounter; + diffedInteractionsCounter = item.diffedInteractionsCounter; + console.time(`serdes ${batchId} ${index}`); const deserializedInteraction = JsonHelper.fromInteraction(interaction); + console.timeEnd(`serdes ${batchId} ${index}`); console.time(`diff ${batchId} ${index}`); diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( resolvers, @@ -189,5 +211,6 @@ export class DiffWorker { batcher.add(null); } + hasMoreInteractions = false; } } diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index dde6bff7b0..018c66bd46 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -88,7 +88,8 @@ export class ExampleDiffService implements IDiffService { const capture = await this.specService.listCapturedSamples(captureId); return Promise.resolve({ - interactionsCounter: capture.samples.length.toString(), + diffedInteractionsCounter: capture.samples.length.toString(), + skippedInteractionsCounter: '0', }); } diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 9019fe3c05..a4fe686064 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -33,7 +33,8 @@ export interface IDiffService { export interface IRfcCommand {} export interface ILoadStatsResponse { - interactionsCounter: string; + diffedInteractionsCounter: string; + skippedInteractionsCounter: string; } export interface IStartDiffResponse { From 1bb665f4861557fea2c8bbae6e6de64bfdb2de25 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Mon, 29 Jun 2020 15:44:48 -0400 Subject: [PATCH 41/85] ux improved for diff overview page --- .../UndocumentedUrlCounterConverter.scala | 19 +- .../com/useoptic/ux/DiffResultHelper.scala | 55 +- .../components/diff/v2/CaptureManagerPage.js | 487 +++++++++++------- .../ui/src/components/diff/v2/CustomNavTab.js | 28 + .../ui/src/components/docs/DocConstants.js | 61 ++- workspaces/ui/src/contexts/CaptureContext.js | 55 +- .../src/services/diff/LocalCliDiffService.ts | 2 +- 7 files changed, 456 insertions(+), 251 deletions(-) create mode 100644 workspaces/ui/src/components/diff/v2/CustomNavTab.js diff --git a/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala b/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala index b8047dfd33..330abe87c6 100644 --- a/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala +++ b/core/optic/js/src/main/scala/com/useoptic/UndocumentedUrlCounterConverter.scala @@ -1,8 +1,12 @@ package com.useoptic import com.useoptic.UrlCounterDeserializer.fromJson +import com.useoptic.contexts.requests.Utilities +import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.helpers.UndocumentedUrlHelpers.{MethodAndPath, UrlCounter} -import com.useoptic.ux.{NewEndpoint} +import com.useoptic.diff.interactions.Resolvers +import com.useoptic.types.capture.HttpInteraction +import com.useoptic.ux.NewEndpoint import io.circe.{Decoder, Encoder, Json} import io.circe.scalajs.{convertJsToJson, convertJsonToJs} import io.circe.syntax._ @@ -68,9 +72,14 @@ object UrlCounterDeserializer { @JSExportAll object UrlCounterHelper { import UrlCounterDeserializer._ - def fromJsonToSeq(jsJson: js.Any): js.Array[NewEndpoint] = { - js.Array.apply( - convertJsToJson(jsJson).right.get.as[Seq[NewEndpoint]].right.get:_* - ) + def fromJsonToSeq(jsJson: js.Any, rfcState: RfcState): js.Array[NewEndpoint] = { + + val undocumented = convertJsToJson(jsJson).right.get.as[Seq[NewEndpoint]].right.get.map(i => { + //add back path Id for quick adding + val pathId = Utilities.resolvePath(i.path, rfcState.requestsState.pathComponents) + i.copy(pathId = pathId) + }) + + js.Array.apply(undocumented:_*) } } diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index e7beb98254..5e795bf197 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -1,6 +1,7 @@ package com.useoptic.ux import com.useoptic.contexts.requests.Commands.PathComponentId +import com.useoptic.contexts.requests.projections.AllEndpointsProjection import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.helpers.DiffHelpers.InteractionPointersGroupedByDiff @@ -8,6 +9,7 @@ import com.useoptic.diff.helpers.UndocumentedUrlHelpers.UrlCounter import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescription, DiffDescriptionInterpreters} import com.useoptic.diff.interactions._ import com.useoptic.diff.shapes.resolvers.ShapesResolvers +import com.useoptic.dsa.OpticIds import com.useoptic.types.capture.{Body, HttpInteraction} import scala.scalajs.js.annotation.{JSExport, JSExportAll} @@ -17,6 +19,7 @@ import scala.util.Try @JSExportAll object DiffResultHelper { + implicit val ids = OpticIds.generator private val stableRandomSeed = scala.util.Random.nextLong() def unmatchedUrls(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[NewEndpoint] = { @@ -28,13 +31,12 @@ object DiffResultHelper { val random = scala.util.Random random.setSeed(stableRandomSeed) - def getRandomElement: Option[NewEndpoint] = urls match { - case _ => urls.lift(random.nextInt(urls.size)) - } - if (urls.size > 250) { - val urlsToShow = Range(0, 250).flatMap(i => getRandomElement).distinct - SplitUndocumentedUrls(urlsToShow.toVector.sortBy(_.count).reverse, urls.size, urls.map(_.path).distinct) + import com.useoptic.utilities.DistinctBy._ + //known paths should of course get preference + val knownPaths = urls.filter(_.pathId.isDefined).distinctByIfDefined(i => (Some(i.pathId, i.method))) + val urlsToShow = random.shuffle(urls).take(250 - knownPaths.length) + SplitUndocumentedUrls( (knownPaths ++ urlsToShow).toVector.sortBy(_.count).reverse, urls.size, urls.map(_.path).distinct) } else { SplitUndocumentedUrls(urls.sortBy(_.count).reverse, urls.size, urls.map(_.path).distinct) } @@ -48,21 +50,35 @@ object DiffResultHelper { } def endpointDiffs(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { - diffs.filterNot { - case (a: UnmatchedRequestUrl, _) => true - case (a: UnmatchedRequestMethod, _) => true - case _ => false - }.flatMap { - case (diff, interactionPointers) => getLocationForDiff(diff, rfcState).map(location => { - EndpointDiffs(location.method, location.pathId, Map(diff -> interactionPointers)) - }) - }.groupBy(i => (i.pathId, i.method)).map { - case ((path, method), diffs) => { - val diffsForTHisOne = diffs.flatMap(_.diffs).toMap - EndpointDiffs(method, path, diffsForTHisOne) + + val endpointsFromDiff = { + diffs.filterNot { + case (a: UnmatchedRequestUrl, _) => true + case (a: UnmatchedRequestMethod, _) => true + case _ => false + }.flatMap { + case (diff, interactionPointers) => getLocationForDiff(diff, rfcState).map(location => { + EndpointDiffs(location.method, location.pathId, Map(diff -> interactionPointers)) + }) + }.groupBy(i => (i.pathId, i.method)).map { + case ((path, method), diffs) => { + val diffsForTHisOne = diffs.flatMap(_.diffs).toMap + EndpointDiffs(method, path, diffsForTHisOne) + } + } + }.toVector + + val additionalEndpointsWithoutDiffs = AllEndpointsProjection.fromRfcState(rfcState).collect { + //collect other endpoints we know exist, that don't have a diff + case endpoint if !endpointsFromDiff.exists(i => i.pathId == endpoint.pathId && i.method == endpoint.method) => { + EndpointDiffs(endpoint.method, endpoint.pathId, Map.empty /* always empty */) } } - }.toVector.sortBy(_.diffs.size).reverse + + endpointsFromDiff.map(i => s"${i.method} ${i.pathId} ${i.count}").foreach(println) + + (endpointsFromDiff ++ additionalEndpointsWithoutDiffs).sortBy(_.count).reverse + } def interactionsWithDiffsCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.flatMap(_._2).toSet.size def diffCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.size @@ -250,6 +266,7 @@ abstract class NewRegionDiff { def toSuggestion(interactions: Vector[HttpInteraction], currentRfcState: RfcState, inferPolymorphism: Boolean): Seq[InteractiveDiffInterpretation] = { + implicit val ids = OpticIds.generator val resolvers = ShapesResolvers.newResolver(currentRfcState) val basicInterpreter = new DefaultInterpreters(resolvers, currentRfcState) if (inferPolymorphism) { diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index 39851592fd..e1cee12edb 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -9,7 +9,12 @@ import FiberManualRecordIcon from '@material-ui/icons/FiberManualRecord'; import FormControl from '@material-ui/core/FormControl'; import Select from '@material-ui/core/Select'; import MenuItem from '@material-ui/core/MenuItem'; -import { DocDarkGrey } from '../../docs/DocConstants'; +import { + Dark, + DocDarkGrey, + DocDivider, + DocGrey, +} from '../../docs/DocConstants'; import { DocSubGroup } from '../../docs/DocSubGroup'; import ListItem from '@material-ui/core/ListItem'; import List from '@material-ui/core/List'; @@ -25,6 +30,7 @@ import { } from '../../../contexts/SpecServiceContext'; import { useRouterPaths } from '../../../RouterPaths'; import { RfcContext } from '../../../contexts/RfcContext'; +import classNames from 'classnames'; import { DiffResultHelper, JsonHelper, @@ -54,60 +60,12 @@ import { CaptureStateStore, useCaptureContext, } from '../../../contexts/CaptureContext'; - -const useStyles = makeStyles((theme) => ({ - container: { - width: '100%', - alignSelf: 'center', // center on page - flexGrow: 1, // grow to fill whole page vertically - display: 'flex', - flexDirection: 'column', - maxWidth: theme.breakpoints.values.lg, - paddingTop: 35, - }, - chips: { - marginLeft: 10, - }, - scroll: { - overflow: 'scroll', - flex: 1, - paddingLeft: 40, - paddingRight: 40, - paddingBottom: 300, - maxWidth: 1200, - }, - header: { - display: 'flex', - flexDirection: 'row', - flex: 1, - width: '100%', - alignItems: 'center', - padding: 8, - paddingLeft: 20, - }, - formControl: { - margin: theme.spacing(1), - width: 250, - }, - selectEmpty: { - marginTop: theme.spacing(2), - }, - stats: { - marginTop: 20, - paddingBottom: 15, - alignItems: 'center', - display: 'flex', - justifyContent: 'center', - flexDirection: 'row', - }, - listItemInner: { - display: 'flex', - flexDirection: 'column', - }, - row: { - marginBottom: 11, - }, -})); +import Tabs from '@material-ui/core/Tabs'; +import Tab from '@material-ui/core/Tab'; +import { CustomNavTab } from './CustomNavTab'; +import LinearProgress from '@material-ui/core/LinearProgress'; +import TypeModal from '../../shared/JsonTextarea'; +import Fade from '@material-ui/core/Fade'; const { Context: AllCapturesContext, @@ -176,7 +134,7 @@ export function CaptureManagerPage(props) { return ( - + @@ -217,14 +175,26 @@ export const CaptureManager = ({}) => { ); }; +const subtabs = { + ENDPOINT_DIFF: 'ENDPOINT_DIFF', + UNDOCUMENTED_URL: 'UNDOCUMENTED_URL', +}; + function CaptureChooserComponent(props) { const { captureId } = props; const specService = useSpecService(); const classes = useStyles(); const captureContext = useContext(AllCapturesContext); + const { endpointDiffs, unrecognizedUrls } = useCaptureContext(); const history = useHistory(); const baseUrl = useBaseUrl(); + const realEndpointDiffCount = endpointDiffs.filter((i) => i.count > 0).length; + //these numbers are a bit funcky because it also counts requests/reponses the other count does not + const totalEndpoints = endpointDiffs.length; + + const [tab, setTab] = useState(subtabs.ENDPOINT_DIFF); + useEffect(() => { global.debugOptic = debugDump(specService, captureId); }); @@ -235,57 +205,117 @@ function CaptureChooserComponent(props) { } return ( - -
- - - Local Capture - -
- - - + {captureContext.captures.map((capture, index) => { + return ( + + + + {capture.hasDiff && ( + + )} + + + ); + })} + + + + + + setTab(value)} + value={tab} > - {captureContext.captures.map((capture, index) => { - return ( - - - - {capture.hasDiff && ( - - )} - - - ); - })} - - + + + + + + +
+ +
+
+ + + +
+ + {'124'} processed {' | '} {'124'} skipped + + + Last observation {'9 minutes ago'} + +
+
- +
+
+ {subtabs.ENDPOINT_DIFF === tab && ( + + )} + {subtabs.UNDOCUMENTED_URL === tab && ( + + )} +
+
+ ); } function RequestDiffWrapper(props) { const specService = useSpecService(); + const classes = useStyles(); return ( // sessionId={props.match.params.captureId} // specService={specService} - +
+ +
); } @@ -310,9 +340,6 @@ function CaptureDiffWrapper(props) { return ( - - - ); } @@ -348,21 +375,30 @@ function EndpointDiffs(props) { const history = useHistory(); const baseUrl = useBaseUrl(); + const realCount = endpointDiffs.filter((i) => i.count > 0).length; + //also available // stats.captureCompleted // stats.processed return ( - - - - {endpointDiffs.map((i) => { - console.log(i); - const to = `${baseUrl}/diffs/${captureId}/paths/${i.pathId}/methods/${i.method}`; - return ( - +
+ + {realCount > 0 + ? 'Some endpoints are exhibiting undocumented behavior' + : 'All endpoints are working as specified'} + +
+ + {endpointDiffs.map((i) => { + console.log(i); + const to = `${baseUrl}/diffs/${captureId}/paths/${i.pathId}/methods/${i.method}`; + return ( + + {({ endpointDescriptor }) => ( @@ -373,12 +409,12 @@ function EndpointDiffs(props) { to={to} >
- - {endpointDescriptor.purpose} + + {endpointDescriptor.endpointPurpose || ( + + Unamed Endpoint + + )}
- 0}> - - - 0}> + 0}> - 0}> + @@ -420,12 +446,12 @@ function EndpointDiffs(props) { )}
-
- ); - })} -
-
-
+ + + ); + })} + + ); } @@ -444,43 +470,56 @@ function UnrecognizedUrls(props) { const urls = JsonHelper.seqToJsArray(urlsSplit.urls); return ( - 0}> - - - {urls.map((i) => { - return ( - //
{i.toString()}
- { - const { pathId, method } = result; - const to = `${baseUrl}/diffs/${captureId}/paths/${pathId}/methods/${method}`; - history.push(to); - }} - > - -
- -
- - - -
-
- ); - })} -
-
-
+ <> +
+ + Optic observed{' '} + . + +
+ + = 250}> +
+ + Showing {urls.length} undocumented URLs. Start documenting the new + endpoints or ignore the paths in your optic.yml file. + +
+
+ + + {urls.map((i) => { + return ( + { + const { pathId, method } = result; + const to = `${baseUrl}/diffs/${captureId}/paths/${pathId}/methods/${method}`; + history.push(to); + }} + > + +
+ +
+ + + +
+
+ ); + })} +
+ ); } @@ -505,3 +544,99 @@ const Stat = ({ number, label }) => { ); }; + +const useStyles = makeStyles((theme) => ({ + container: { + display: 'flex', + height: '100vh', + overflow: 'hidden', + }, + navigationContainer: { + width: 280, + overflow: 'hidden', + display: 'flex', + }, + pageContainer: { + display: 'flex', + flexGrow: 1, + flexShrink: 1, + overflow: 'scroll', + height: '100vh', + justifyContent: 'center', + }, + navRoot: { + flexGrow: 1, + position: 'fixed', + width: 'inherit', + height: '100vh', + overflowY: 'scroll', + display: 'flex', + flexDirection: 'column', + borderRight: `1px solid ${theme.palette.grey[300]}`, + background: theme.palette.grey[100], + }, + chips: { + marginLeft: 10, + }, + tabs: { + marginLeft: theme.spacing(4), + }, + center: { + flex: 1, + paddingBottom: 300, + maxWidth: 1200, + }, + statsSection: {}, + progressStats: { + paddingLeft: theme.spacing(1), + color: DocDarkGrey, + }, + progressWrapper: { + height: 6, + width: '100%', + }, + header: { + display: 'flex', + flexDirection: 'row', + flexShrink: 1, + width: '100%', + alignItems: 'center', + margin: theme.spacing(2), + }, + formControl: { + paddingLeft: 35, + paddingRight: 15, + }, + selectEmpty: { + marginTop: theme.spacing(2), + }, + stats: { + marginTop: 20, + paddingBottom: 15, + alignItems: 'center', + display: 'flex', + justifyContent: 'center', + flexDirection: 'row', + }, + subStat: { + paddingBottom: 15, + alignItems: 'center', + display: 'flex', + justifyContent: 'center', + flexDirection: 'row', + }, + listItemInner: { + display: 'flex', + flexDirection: 'column', + }, + row: { + marginBottom: 11, + }, + disabled: { + pointerEvents: 'none', + opacity: 0.5, + }, + paper: { + marginBottom: 15, + }, +})); diff --git a/workspaces/ui/src/components/diff/v2/CustomNavTab.js b/workspaces/ui/src/components/diff/v2/CustomNavTab.js new file mode 100644 index 0000000000..fe96bd2b76 --- /dev/null +++ b/workspaces/ui/src/components/diff/v2/CustomNavTab.js @@ -0,0 +1,28 @@ +import withStyles from '@material-ui/core/styles/withStyles'; +import Tab from '@material-ui/core/Tab'; +import React from 'react'; +import { primary } from '../../../theme'; + +export const CustomNavTab = withStyles((theme) => { + return { + root: { + textTransform: 'none', + color: primary, + padding: 0, + marginTop: 5, + height: 35, + minHeight: 'inherit', + minWidth: 'inherit', + fontWeight: 500, + textAlign: 'left', + fontSize: theme.typography.pxToRem(16), + marginRight: theme.spacing(2), + '&:focus': { + opacity: 1, + }, + }, + wrapper: { + alignItems: 'flex-start', + }, + }; +})((props) => ); diff --git a/workspaces/ui/src/components/docs/DocConstants.js b/workspaces/ui/src/components/docs/DocConstants.js index 3ce758d6cb..0a492f67b3 100644 --- a/workspaces/ui/src/components/docs/DocConstants.js +++ b/workspaces/ui/src/components/docs/DocConstants.js @@ -1,49 +1,49 @@ import Divider from '@material-ui/core/Divider'; import React from 'react'; -import {Typography} from '@material-ui/core'; -import {primary} from '../../theme'; +import { Typography } from '@material-ui/core'; +import { primary } from '../../theme'; -export const SubHeadingTitleColor = primary -export const DocGrey = '#a3acb9' -export const DocDarkGrey = '#818892' -export const Dark = '#3d4045' +export const SubHeadingTitleColor = primary; +export const DocGrey = '#a3acb9'; +export const DocDarkGrey = '#818892'; +export const Dark = '#3d4045'; export const ParametersStyles = { fontWeight: 600, - fontSize: 13 -} + fontSize: 13, +}; export const SubHeadingStyles = { - color : SubHeadingTitleColor, + color: SubHeadingTitleColor, fontWeight: 600, letterSpacing: '.41px', - textTransform: 'none' -} + textTransform: 'none', +}; export const DocSubGroupHeadingStyles = { - color : DocGrey, + color: DocGrey, fontSize: '12px', fontWeight: 500, letterSpacing: '.41px', -} +}; export const DocSubGroupHeadingBigStyles = { - color : DocDarkGrey, + color: DocDarkGrey, fontSize: '15px', fontWeight: 500, letterSpacing: '.41px', -} +}; export const methodColors = { - 'GET': '#52e2a3', - 'POST': '#5aaad1', - 'PUT': '#ee7517', - 'PATCH': '#c8a5dc', - 'DELETE': '#cd8d8c', + GET: '#52e2a3', + POST: '#5aaad1', + PUT: '#ee7517', + PATCH: '#c8a5dc', + DELETE: '#cd8d8c', }; export const methodColorsDark = { - 'GET': '#276c4e', - 'POST': '#264859', - 'PUT': '#69340a', - 'PATCH': '#796384', - 'DELETE': '#634444', + GET: '#276c4e', + POST: '#264859', + PUT: '#69340a', + PATCH: '#796384', + DELETE: '#634444', }; export const primitiveDocColors = { @@ -56,5 +56,12 @@ export const primitiveDocColors = { $unknown: '#027a7d', }; -export const DocDivider = ({style}) => -export const DocSubHeading = ({title, onClick}) => {title} +export const DocDivider = ({ style }) => ( + +); +export const DocSubHeading = ({ title, onClick }) => ( + + {' '} + {title}{' '} + +); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index bb15ea0841..3abcb22a4a 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -53,17 +53,23 @@ export class CaptureStateStore extends React.Component { const { diffService } = this.state; if (diffService) { - const [diffsResponse, urlsResponse] = await Promise.all([ - diffService.listDiffs(), - diffService.listUnrecognizedUrls(), - ]); + try { + const [diffsResponse, urlsResponse] = await Promise.all([ + diffService.listDiffs(), + diffService.listUnrecognizedUrls(), + ]); - console.log('results', [diffsResponse.diffs.length, urlsResponse.length]); - - this.setState({ - endpointDiffs: diffsResponse.diffs, - unrecognizedUrls: urlsResponse, - }); + console.log('results', [ + diffsResponse.diffs.length, + urlsResponse.length, + ]); + this.setState({ + endpointDiffs: diffsResponse.diffs, + unrecognizedUrls: urlsResponse, + }); + } catch (e) { + console.error('issue with reload, skipping', e); + } } }; @@ -134,13 +140,16 @@ export class CaptureStateStore extends React.Component { captureId ); - this.setState({ - config, - diffService, - captureService, - notificationChannel, - pendingUpdates: false, - }); + this.setState( + { + config, + diffService, + captureService, + notificationChannel, + pendingUpdates: false, + }, + () => this.reload() + ); }; updatedAdditionalCommands = (additionalCommands) => { @@ -173,12 +182,12 @@ export class CaptureStateStore extends React.Component { return ( - {JSON.stringify({ - pendingUpdates, - lastUpdate, - endpointDiffs: endpointDiffs.length, - unrecognizedUrls: unrecognizedUrls.length, - })} + {/*{JSON.stringify({*/} + {/* pendingUpdates,*/} + {/* lastUpdate,*/} + {/* endpointDiffs: endpointDiffs.length,*/} + {/* unrecognizedUrls: unrecognizedUrls.length,*/} + {/*})}*/} {this.props.children} ); diff --git a/workspaces/ui/src/services/diff/LocalCliDiffService.ts b/workspaces/ui/src/services/diff/LocalCliDiffService.ts index 6095ba610c..6751c964bb 100644 --- a/workspaces/ui/src/services/diff/LocalCliDiffService.ts +++ b/workspaces/ui/src/services/diff/LocalCliDiffService.ts @@ -47,7 +47,7 @@ export class LocalCliDiffService implements IDiffService { async listUnrecognizedUrls(): Promise { const url = `${this.baseUrl}/undocumented-urls`; const json = (await JsonHttpClient.getJson(url)).urls; - const result = UrlCounterHelper.fromJsonToSeq(json); + const result = UrlCounterHelper.fromJsonToSeq(json, this.rfcState); return result; } From 615b807a1960d867815eea5716b37222252a466a Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Mon, 29 Jun 2020 15:45:16 -0400 Subject: [PATCH 42/85] Merge branch 'aidan-diff-incrimental' of https://github.com/opticdev/optic into aidan-diff-incrimental --- .../com/useoptic/ux/DiffResultHelper.scala | 2 +- .../cli-server/src/diffs/diff-manager.ts | 6 +- .../cli-server/src/routers/capture-router.ts | 17 +++-- workspaces/cli-shared/package.json | 1 + .../avro/file-system/interaction-iterator.ts | 6 ++ .../cli-shared/src/diffs/diff-worker.ts | 65 +++++++++++++------ .../src/services/diff/ExampleDiffService.ts | 3 +- workspaces/ui/src/services/diff/index.ts | 3 +- 8 files changed, 70 insertions(+), 33 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index 5e795bf197..ffa740c7de 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -11,7 +11,7 @@ import com.useoptic.diff.interactions._ import com.useoptic.diff.shapes.resolvers.ShapesResolvers import com.useoptic.dsa.OpticIds import com.useoptic.types.capture.{Body, HttpInteraction} - +import com.useoptic.dsa.OpticIds import scala.scalajs.js.annotation.{JSExport, JSExportAll} import scala.util.Try diff --git a/workspaces/cli-server/src/diffs/diff-manager.ts b/workspaces/cli-server/src/diffs/diff-manager.ts index b8d2804647..b7660ba34f 100644 --- a/workspaces/cli-server/src/diffs/diff-manager.ts +++ b/workspaces/cli-server/src/diffs/diff-manager.ts @@ -16,8 +16,6 @@ export class DiffManager { public readonly events: EventEmitter = new EventEmitter(); private child!: ChildProcess; - constructor() {} - async start(config: IDiffManagerConfig) { const outputPaths = getDiffOutputPaths(config); const scriptConfig: IDiffProjectionEmitterConfig = { @@ -35,7 +33,7 @@ export class DiffManager { ); child.on('message', (x: any) => { console.log(x); - this.events.emit('progress'); + this.events.emit(x.type, x.data); }); child.on('exit', function () { console.log(arguments); @@ -45,7 +43,7 @@ export class DiffManager { async stop() { if (this.child) { - this.child.kill(); + this.child.kill('SIGTERM'); } } } diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index 270c87e3fe..b997e046b2 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -9,6 +9,7 @@ import { import { DiffManager } from '../diffs/diff-manager'; import fs from 'fs-extra'; import { getDiffOutputPaths } from '@useoptic/cli-shared/build/diffs/diff-worker'; +import lockfile from 'proper-lockfile'; export interface ICaptureRouterDependencies { idGenerator: IdGenerator; @@ -113,8 +114,6 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { } ); - //////////////////////////////////////////////////////////////////////////////// - //@TODO: router.get('/diffs/:diffId/{diffs,undocumented-urls,statistics,notifications}') //////////////////////////////////////////////////////////////////////////////// router.get('/diffs/:diffId/notifications', async (req, res) => { @@ -126,7 +125,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { function emit(data: any) { console.log('emit'); - res.write(`data: {}\n\n`); + res.write(`data: ${JSON.stringify(data)}\n\n`); } const headers = { @@ -137,8 +136,8 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { res.writeHead(200, headers); emit({ type: 'message', data: {} }); - diffMetadata.manager.events.on('progress', () => { - emit({ type: 'message', data: {} }); + diffMetadata.manager.events.on('progress', (data) => { + emit({ type: 'message', data }); }); req.on('close', () => { @@ -158,7 +157,9 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); try { //@TODO: streamify + await lockfile.lock(diffOutputPaths.diffs); const contents = await fs.readJson(diffOutputPaths.diffs); + await lockfile.unlock(diffOutputPaths.diffs); res.json(contents); } catch (e) { res.status(404).json({ @@ -175,7 +176,10 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); try { //@TODO: streamify + await lockfile.lock(diffOutputPaths.undocumentedUrls); const contents = await fs.readJson(diffOutputPaths.undocumentedUrls); + await lockfile.unlock(diffOutputPaths.undocumentedUrls); + res.json({ urls: contents, }); @@ -194,7 +198,10 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); try { //@TODO: streamify + await lockfile.lock(diffOutputPaths.stats); const contents = await fs.readJson(diffOutputPaths.stats); + await lockfile.unlock(diffOutputPaths.stats); + res.json(contents); } catch (e) { res.status(404).json({ diff --git a/workspaces/cli-shared/package.json b/workspaces/cli-shared/package.json index 624051b690..ac98897796 100644 --- a/workspaces/cli-shared/package.json +++ b/workspaces/cli-shared/package.json @@ -22,6 +22,7 @@ "@useoptic/domain-types": "8.1.0", "@useoptic/domain-utilities": "8.1.0", "avsc": "^5.4.21", + "proper-lockfile": "^4.1.1", "bottleneck": "^2.19.5", "colors": "^1.4.0", "fs-extra": "^9.0.0", diff --git a/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts index bf0d09ee16..54da22b0fa 100644 --- a/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts +++ b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts @@ -16,6 +16,8 @@ export async function* CaptureInteractionIterator( //@TODO: add a way to check if the capture has completed ) { let shouldStop = false; + let skippedInteractionsCounter = BigInt(0); + let diffedInteractionsCounter = BigInt(0); let currentBatchId = BigInt(0); while (!shouldStop) { const batchFilePath = path.join( @@ -33,12 +35,16 @@ export async function* CaptureInteractionIterator( for await (const x of items) { const shouldEmit = filter(x); if (shouldEmit) { + diffedInteractionsCounter = diffedInteractionsCounter + BigInt(1); yield { batchId: currentBatchId.toString(), index, interaction: x, + skippedInteractionsCounter, + diffedInteractionsCounter, }; } else { + skippedInteractionsCounter = skippedInteractionsCounter + BigInt(1); console.log(`skipping ${x.request.method} ${x.request.path}`); } index = index + 1; diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts index 410a35e4b6..a755e36ae9 100644 --- a/workspaces/cli-shared/src/diffs/diff-worker.ts +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -14,6 +14,7 @@ import { import fs from 'fs-extra'; import Bottleneck from 'bottleneck'; import path from 'path'; +import lockfile from 'proper-lockfile'; export interface IDiffProjectionEmitterConfig { diffId: string; @@ -48,7 +49,12 @@ export function getDiffOutputPaths(values: { additionalCommands, }; } - +async function safeWriteJson(filePath: string, contents: any) { + await fs.ensureFile(filePath); + await lockfile.lock(filePath); + await fs.writeJson(filePath, contents); + await lockfile.unlock(filePath); +} export class DiffWorker { constructor(private config: IDiffProjectionEmitterConfig) {} @@ -104,7 +110,9 @@ export class DiffWorker { const undocumentedUrlHelpers = new opticEngine.com.useoptic.diff.helpers.UndocumentedUrlIncrementalHelpers( rfcState ); - let interactionCounter = BigInt(0); + let hasMoreInteractions = true; + let diffedInteractionsCounter = BigInt(0); + let skippedInteractionsCounter = BigInt(0); const batcher = new Bottleneck.Batcher({ maxSize: 100, maxTime: 100, @@ -114,39 +122,52 @@ export class DiffWorker { const queue = new Bottleneck({ maxConcurrent: 1, }); - + function notifyParent() { + const progress = { + diffedInteractionsCounter: diffedInteractionsCounter.toString(), + skippedInteractionsCounter: skippedInteractionsCounter.toString(), + hasMoreInteractions, + }; + if (process && process.send) { + process.send({ + type: 'progress', + data: progress, + }); + } else { + console.log(progress); + } + } async function flush() { - const c = interactionCounter.toString(); + const c = diffedInteractionsCounter.toString(); console.time(`flushing ${c}`); - const outputDiff = fs.writeJson( + const outputDiff = safeWriteJson( diffOutputPaths.diffs, opticEngine.DiffWithPointersJsonSerializer.toJs(diffs) ); - const outputCount = fs.writeJson( + const outputCount = safeWriteJson( diffOutputPaths.undocumentedUrls, opticEngine.UrlCounterJsonSerializer.toFriendlyJs(undocumentedUrls) ); - const outputStats = fs.writeJson(diffOutputPaths.stats, { - interactionsCounter: c, + const outputStats = safeWriteJson(diffOutputPaths.stats, { + diffedInteractionsCounter: diffedInteractionsCounter.toString(), + skippedInteractionsCounter: skippedInteractionsCounter.toString(), + isDone: !hasMoreInteractions, }); await Promise.all([outputDiff, outputCount, outputStats]); - if (process && process.send) { - process.send({ - type: 'progress', - data: { interactionCounter: interactionCounter.toString() }, - }); - } else { - console.log(interactionCounter.toString()); - } + notifyParent(); console.timeEnd(`flushing ${c}`); } batcher.on('batch', () => { - queue.schedule(() => flush()); + console.log('scheduling batch flush'); + queue.schedule(() => { + console.log('executing batch flush'); + return flush(); + }); }); const interactionPointerConverter = new LocalCaptureInteractionPointerConverter( @@ -156,16 +177,17 @@ export class DiffWorker { } ); - await fs.ensureFile(diffOutputPaths.diffs); - await fs.ensureFile; + await fs.ensureDir(diffOutputPaths.base); await flush(); for await (const item of interactionIterator) { // for (const x of [1, 2, 3]) { const { batchId, interaction, index } = item; - - interactionCounter = interactionCounter + BigInt(1); + skippedInteractionsCounter = item.skippedInteractionsCounter; + diffedInteractionsCounter = item.diffedInteractionsCounter; + console.time(`serdes ${batchId} ${index}`); const deserializedInteraction = JsonHelper.fromInteraction(interaction); + console.timeEnd(`serdes ${batchId} ${index}`); console.time(`diff ${batchId} ${index}`); diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( resolvers, @@ -189,5 +211,6 @@ export class DiffWorker { batcher.add(null); } + hasMoreInteractions = false; } } diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index dde6bff7b0..018c66bd46 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -88,7 +88,8 @@ export class ExampleDiffService implements IDiffService { const capture = await this.specService.listCapturedSamples(captureId); return Promise.resolve({ - interactionsCounter: capture.samples.length.toString(), + diffedInteractionsCounter: capture.samples.length.toString(), + skippedInteractionsCounter: '0', }); } diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index 9019fe3c05..a4fe686064 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -33,7 +33,8 @@ export interface IDiffService { export interface IRfcCommand {} export interface ILoadStatsResponse { - interactionsCounter: string; + diffedInteractionsCounter: string; + skippedInteractionsCounter: string; } export interface IStartDiffResponse { From ec5dab8e31237be4d1c7c300caf453c8db3d71e3 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Mon, 29 Jun 2020 16:22:33 -0400 Subject: [PATCH 43/85] diffs should be able to be limited to specific pathId + methods --- .../diff/helpers/UndocumentedUrlHelpers.scala | 8 ++- .../cli-server/src/diffs/diff-manager.ts | 1 + .../cli-server/src/routers/capture-router.ts | 3 +- .../cli-shared/src/diffs/diff-worker.ts | 50 +++++++++++++++---- workspaces/ui/src/contexts/CaptureContext.js | 3 +- .../src/services/diff/ExampleDiffService.ts | 3 +- .../src/services/diff/LocalCliDiffService.ts | 4 +- workspaces/ui/src/services/diff/index.ts | 3 +- 8 files changed, 59 insertions(+), 16 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala index dc8743b5bd..fa8b1315bb 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/helpers/UndocumentedUrlHelpers.scala @@ -1,5 +1,6 @@ package com.useoptic.diff.helpers +import com.useoptic.contexts.requests.Commands.PathComponentId import com.useoptic.contexts.requests.Utilities import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.helpers.UndocumentedUrlHelpers.{MethodAndPath, UrlCounter} @@ -29,8 +30,13 @@ class UndocumentedUrlHelpers { class UndocumentedUrlIncrementalHelpers(spec: RfcState) { val grouping = Utilities.groupPathsByParentId(spec.requestsState.pathComponents) + def tryResolvePathId(url: String): Option[PathComponentId] = { + val pathId = Utilities.resolvePathByGrouping(url, grouping) + pathId + } + def countUndocumentedUrls(interaction: HttpInteraction, urlCounter: UrlCounter): UrlCounter = { - val pathId = Utilities.resolvePathByGrouping(interaction.request.path, grouping) + val pathId = tryResolvePathId(interaction.request.path) if (pathId.isEmpty) { urlCounter.increment(MethodAndPath(interaction.request.method, interaction.request.path)) } diff --git a/workspaces/cli-server/src/diffs/diff-manager.ts b/workspaces/cli-server/src/diffs/diff-manager.ts index b7660ba34f..08d2bc6584 100644 --- a/workspaces/cli-server/src/diffs/diff-manager.ts +++ b/workspaces/cli-server/src/diffs/diff-manager.ts @@ -25,6 +25,7 @@ export class DiffManager { specFilePath: outputPaths.events, ignoreRequestsFilePath: outputPaths.ignoreRequests, additionalCommandsFilePath: outputPaths.additionalCommands, + filtersFilePath: outputPaths.filters, }; console.log(JSON.stringify(scriptConfig)); const child = runManagedScriptByName( diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index b997e046b2..af4752c66d 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -75,7 +75,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { bodyParser.json({ limit: '100mb' }), async (req, res) => { const { captureId } = req.params; - const { ignoreRequests, events, additionalCommands } = req.body; + const { ignoreRequests, events, additionalCommands, filters } = req.body; const id = dependencies.idGenerator.nextId(); const manager = new DiffManager(); const diffOutputPaths = getDiffOutputPaths({ @@ -86,6 +86,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { await fs.ensureDir(diffOutputPaths.base); await fs.writeJson(diffOutputPaths.events, events); await fs.writeJson(diffOutputPaths.ignoreRequests, ignoreRequests); + await fs.writeJson(diffOutputPaths.filters, filters); await fs.writeJson( diffOutputPaths.additionalCommands, additionalCommands diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts index a755e36ae9..78ae8a99e3 100644 --- a/workspaces/cli-shared/src/diffs/diff-worker.ts +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -10,6 +10,7 @@ import { JsonHelper, opticEngine, RfcCommandContext, + ScalaJSHelpers, } from '@useoptic/domain'; import fs from 'fs-extra'; import Bottleneck from 'bottleneck'; @@ -20,6 +21,7 @@ export interface IDiffProjectionEmitterConfig { diffId: string; specFilePath: string; ignoreRequestsFilePath: string; + filtersFilePath: string; additionalCommandsFilePath: string; captureBaseDirectory: string; captureId: string; @@ -37,6 +39,7 @@ export function getDiffOutputPaths(values: { const undocumentedUrls = path.join(base, 'undocumentedUrls.json'); const events = path.join(base, 'events.json'); const ignoreRequests = path.join(base, 'ignoreRequests.json'); + const filters = path.join(base, 'filters.json'); const additionalCommands = path.join(base, 'additionalCommands.json'); return { @@ -46,30 +49,37 @@ export function getDiffOutputPaths(values: { undocumentedUrls, events, ignoreRequests, + filters, additionalCommands, }; } + async function safeWriteJson(filePath: string, contents: any) { await fs.ensureFile(filePath); await lockfile.lock(filePath); await fs.writeJson(filePath, contents); await lockfile.unlock(filePath); } + export class DiffWorker { constructor(private config: IDiffProjectionEmitterConfig) {} async run() { debugger; console.log('running'); - console.time('load spec'); - const ignoreRequests = await fs.readJson( - this.config.ignoreRequestsFilePath - ); - const events: any[] = await fs.readJson(this.config.specFilePath); - const additionalCommands: any[] = await fs.readJson( - this.config.additionalCommandsFilePath - ); - console.timeEnd('load spec'); + console.time('load inputs'); + const [ + ignoreRequests, + events, + additionalCommands, + filters, + ] = await Promise.all([ + fs.readJson(this.config.ignoreRequestsFilePath), + fs.readJson(this.config.specFilePath), + fs.readJson(this.config.additionalCommandsFilePath), + fs.readJson(this.config.filtersFilePath), + ]); + console.timeEnd('load inputs'); console.time('build state'); const batchId = 'bbb'; const clientId = 'ccc'; //@TODO: should use real values @@ -96,15 +106,33 @@ export class DiffWorker { interaction.request.path ); } + function filterByEndpoint(endpoint: { pathId: string; method: string }) { + return function (interaction: IHttpInteraction) { + const pathId = ScalaJSHelpers.getOrUndefined( + undocumentedUrlHelpers.tryResolvePathId(interaction.request.path) + ); + return ( + endpoint.method === interaction.request.method && + endpoint.pathId === pathId && + !ignoredRequests.shouldIgnore( + interaction.request.method, + interaction.request.path + ) + ); + }; + } + const interactionFilter = + filters.length > 0 ? filterByEndpoint(filters[0]) : filterIgnoredRequests; const interactionIterator = CaptureInteractionIterator( { captureId: this.config.captureId, captureBaseDirectory: this.config.captureBaseDirectory, }, - filterIgnoredRequests + interactionFilter ); debugger; + let diffs = DiffHelpers.emptyInteractionPointersGroupedByDiff(); let undocumentedUrls = opticEngine.UndocumentedUrlHelpers.newCounter(); const undocumentedUrlHelpers = new opticEngine.com.useoptic.diff.helpers.UndocumentedUrlIncrementalHelpers( @@ -122,6 +150,7 @@ export class DiffWorker { const queue = new Bottleneck({ maxConcurrent: 1, }); + function notifyParent() { const progress = { diffedInteractionsCounter: diffedInteractionsCounter.toString(), @@ -137,6 +166,7 @@ export class DiffWorker { console.log(progress); } } + async function flush() { const c = diffedInteractionsCounter.toString(); diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index bb15ea0841..0d1d78d03c 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -106,7 +106,8 @@ export class CaptureStateStore extends React.Component { const config = await captureService.startDiff( ScalaJSHelpers.eventsJsArray(events), apiConfig.config.ignoreRequests || [], - this.state.additionalCommands + this.state.additionalCommands, + [] ); let notificationChannel = null; diff --git a/workspaces/ui/src/services/diff/ExampleDiffService.ts b/workspaces/ui/src/services/diff/ExampleDiffService.ts index 018c66bd46..d4d0c506f3 100644 --- a/workspaces/ui/src/services/diff/ExampleDiffService.ts +++ b/workspaces/ui/src/services/diff/ExampleDiffService.ts @@ -28,7 +28,8 @@ export class ExampleCaptureService implements ICaptureService { async startDiff( events: any[], ignoreRequests: string[], - additionalCommands: IRfcCommand[] + additionalCommands: IRfcCommand[], + filters: { pathId: string; method: string }[] ): Promise { return { diffId: uuidv4(), diff --git a/workspaces/ui/src/services/diff/LocalCliDiffService.ts b/workspaces/ui/src/services/diff/LocalCliDiffService.ts index 6095ba610c..a811e9cfc8 100644 --- a/workspaces/ui/src/services/diff/LocalCliDiffService.ts +++ b/workspaces/ui/src/services/diff/LocalCliDiffService.ts @@ -121,13 +121,15 @@ export class LocalCliCaptureService implements ICaptureService { async startDiff( events: any[], ignoreRequests: string[], - additionalCommands: IRfcCommand[] + additionalCommands: IRfcCommand[], + filters: { pathId: string; method: string }[] ): Promise { const url = `${this.baseUrl}/diffs`; return JsonHttpClient.postJson(url, { ignoreRequests, additionalCommands, events, + filters, }); } diff --git a/workspaces/ui/src/services/diff/index.ts b/workspaces/ui/src/services/diff/index.ts index a4fe686064..2c9147cdfa 100644 --- a/workspaces/ui/src/services/diff/index.ts +++ b/workspaces/ui/src/services/diff/index.ts @@ -4,7 +4,8 @@ export interface ICaptureService { startDiff( events: any[], ignoreRequests: string[], - additionalCommands: IRfcCommand[] + additionalCommands: IRfcCommand[], + filters: { pathId: string; method: string }[] ): Promise; loadInteraction( interactionPointer: string From 2caef5f24d204114b60bdb44f8e44e32edf9fd9f Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Mon, 29 Jun 2020 16:22:59 -0400 Subject: [PATCH 44/85] stats should display with progress --- .../com/useoptic/ux/DiffResultHelper.scala | 4 +-- .../components/diff/v2/CaptureManagerPage.js | 18 ++++++++--- workspaces/ui/src/contexts/CaptureContext.js | 32 +++++++++++++++++-- 3 files changed, 43 insertions(+), 11 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index ffa740c7de..baeb328a66 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -74,9 +74,7 @@ object DiffResultHelper { EndpointDiffs(endpoint.method, endpoint.pathId, Map.empty /* always empty */) } } - - endpointsFromDiff.map(i => s"${i.method} ${i.pathId} ${i.count}").foreach(println) - + (endpointsFromDiff ++ additionalEndpointsWithoutDiffs).sortBy(_.count).reverse } diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index e1cee12edb..47896c02ab 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -185,7 +185,13 @@ function CaptureChooserComponent(props) { const specService = useSpecService(); const classes = useStyles(); const captureContext = useContext(AllCapturesContext); - const { endpointDiffs, unrecognizedUrls } = useCaptureContext(); + const { + endpointDiffs, + unrecognizedUrls, + completed, + skipped, + processed, + } = useCaptureContext(); const history = useHistory(); const baseUrl = useBaseUrl(); @@ -272,16 +278,17 @@ function CaptureChooserComponent(props) {
- +
- {'124'} processed {' | '} {'124'} skipped + {processed} processed {' | '} {skipped} skipped {endpointDiffs.map((i) => { - console.log(i); const to = `${baseUrl}/diffs/${captureId}/paths/${i.pathId}/methods/${i.method}`; return ( @@ -586,7 +592,9 @@ const useStyles = makeStyles((theme) => ({ paddingBottom: 300, maxWidth: 1200, }, - statsSection: {}, + statsSection: { + paddingBottom: theme.spacing(2), + }, progressStats: { paddingLeft: theme.spacing(1), color: DocDarkGrey, diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 3abcb22a4a..5f4cc4e6be 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -19,6 +19,9 @@ const initialState = (debouncer = null) => { additionalCommands: [], lastUpdate: null, pendingUpdates: false, + completed: false, + skipped: '0', + processed: '0', reloadDebounce: debouncer, unrecognizedUrls: [], @@ -47,8 +50,18 @@ export class CaptureStateStore extends React.Component { } } - reload = async () => { - this.setState({ pendingUpdates: true, lastUpdate: new Date() }); + reload = async (notifData) => { + const notifDataUpdates = (() => { + if (notifData && notifData.hasOwnProperty('hasMoreInteractions')) { + return { + completed: !notifData.hasMoreInteractions, + skipped: notifData.skippedInteractionsCounter, + processed: notifData.diffedInteractionsCounter, + }; + } else { + return {}; + } + })(); const { diffService } = this.state; @@ -66,6 +79,9 @@ export class CaptureStateStore extends React.Component { this.setState({ endpointDiffs: diffsResponse.diffs, unrecognizedUrls: urlsResponse, + pendingUpdates: true, + lastUpdate: new Date(), + ...notifDataUpdates, }); } catch (e) { console.error('issue with reload, skipping', e); @@ -85,6 +101,9 @@ export class CaptureStateStore extends React.Component { lastUpdate: null, pendingUpdates: false, config: null, + completed: false, + skipped: '0', + processed: '0', }, resolve ); @@ -119,7 +138,8 @@ export class CaptureStateStore extends React.Component { if (config.notificationsUrl) { notificationChannel = new EventSource(config.notificationsUrl); notificationChannel.onmessage = (event) => { - this.state.reloadDebounce(); + const { data } = JSON.parse(event.data); + this.state.reloadDebounce(data); }; notificationChannel.onerror = (e) => { console.error(e); @@ -167,6 +187,9 @@ export class CaptureStateStore extends React.Component { config, diffService, captureService, + completed, + skipped, + processed, } = this.state; const value = { @@ -177,6 +200,9 @@ export class CaptureStateStore extends React.Component { unrecognizedUrls, diffService, captureService, + completed, + skipped, + processed, updatedAdditionalCommands: this.updatedAdditionalCommands, }; From 592cdaceb57baafdf341d591cff0f579455f0728 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Tue, 30 Jun 2020 10:25:01 -0400 Subject: [PATCH 45/85] incremental progress on diff page --- .../ui/src/components/diff/v2/CaptureManagerPage.js | 4 +++- workspaces/ui/src/components/diff/v2/DiffPageNew.js | 8 +++++++- workspaces/ui/src/contexts/CaptureContext.js | 4 +++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index 47896c02ab..8041ec2e91 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -321,7 +321,9 @@ function RequestDiffWrapper(props) { // sessionId={props.match.params.captureId} // specService={specService}
- +
+ +
); } diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 76047c287a..9f40ae8df2 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -90,7 +90,13 @@ function DiffPageNew(props) { const { pathId, method, captureId } = props.match.params; return ( - + Date: Tue, 30 Jun 2020 12:09:24 -0400 Subject: [PATCH 46/85] server should retry when attempting to get exclusive access to read models --- workspaces/cli-server/src/routers/capture-router.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index af4752c66d..121761b244 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -158,7 +158,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); try { //@TODO: streamify - await lockfile.lock(diffOutputPaths.diffs); + await lockfile.lock(diffOutputPaths.diffs, { retries: { retries: 10 } }); const contents = await fs.readJson(diffOutputPaths.diffs); await lockfile.unlock(diffOutputPaths.diffs); res.json(contents); @@ -177,7 +177,9 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); try { //@TODO: streamify - await lockfile.lock(diffOutputPaths.undocumentedUrls); + await lockfile.lock(diffOutputPaths.undocumentedUrls, { + retries: { retries: 10 }, + }); const contents = await fs.readJson(diffOutputPaths.undocumentedUrls); await lockfile.unlock(diffOutputPaths.undocumentedUrls); @@ -199,7 +201,7 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { }); try { //@TODO: streamify - await lockfile.lock(diffOutputPaths.stats); + await lockfile.lock(diffOutputPaths.stats, { retries: { retries: 10 } }); const contents = await fs.readJson(diffOutputPaths.stats); await lockfile.unlock(diffOutputPaths.stats); From 7b792225dd6269f12115468b04fb211e976e9077 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Tue, 30 Jun 2020 12:09:35 -0400 Subject: [PATCH 47/85] local captures should include json bodies --- workspaces/local-cli/src/shared/local-cli-task-runner.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workspaces/local-cli/src/shared/local-cli-task-runner.ts b/workspaces/local-cli/src/shared/local-cli-task-runner.ts index db2866e37e..b01706249e 100644 --- a/workspaces/local-cli/src/shared/local-cli-task-runner.ts +++ b/workspaces/local-cli/src/shared/local-cli-task-runner.ts @@ -122,7 +122,7 @@ ${blockers.map((x) => `[pid ${x.pid}]: ${x.cmd}`).join('\n')} ); //////////////////////////////////////////////////////////////////////////////// - + process.env.OPTIC_ENABLE_CAPTURE_BODY = 'yes'; const sessionManager = new CommandAndProxySessionManager(taskConfig); await sessionManager.run(persistenceManager); From 4ab798a4e25f312b970378a71230bdc8c0424531 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Tue, 30 Jun 2020 12:15:42 -0400 Subject: [PATCH 48/85] interaction iterator should indicate when it is done and handle when the last 1+ interactions are skipped --- .../avro/file-system/interaction-iterator.ts | 42 +++++++++++++++++-- .../cli-shared/src/diffs/diff-worker.ts | 21 ++++++---- 2 files changed, 53 insertions(+), 10 deletions(-) diff --git a/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts index 54da22b0fa..cba0bd29eb 100644 --- a/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts +++ b/workspaces/cli-shared/src/captures/avro/file-system/interaction-iterator.ts @@ -9,12 +9,30 @@ import { CaptureId } from '@useoptic/saas-types'; export interface FilterPredicate { (item: T): boolean; } - +export type InteractionIteratorItem = + | { + hasMoreInteractions: false; + interaction: null; + skippedInteractionsCounter: bigint; + diffedInteractionsCounter: bigint; + } + | { + hasMoreInteractions: true; + interaction: { + context: { + batchId: string; + index: number; + }; + value: IHttpInteraction; + } | null; + skippedInteractionsCounter: bigint; + diffedInteractionsCounter: bigint; + }; export async function* CaptureInteractionIterator( config: IFileSystemCaptureLoaderConfig, filter: FilterPredicate //@TODO: add a way to check if the capture has completed -) { +): AsyncGenerator { let shouldStop = false; let skippedInteractionsCounter = BigInt(0); let diffedInteractionsCounter = BigInt(0); @@ -37,20 +55,38 @@ export async function* CaptureInteractionIterator( if (shouldEmit) { diffedInteractionsCounter = diffedInteractionsCounter + BigInt(1); yield { + hasMoreInteractions: true, + interaction: { + context: { batchId: currentBatchId.toString(), index, - interaction: x, + }, + value: x, + }, skippedInteractionsCounter, diffedInteractionsCounter, }; } else { skippedInteractionsCounter = skippedInteractionsCounter + BigInt(1); + yield { + hasMoreInteractions: true, + interaction: null, + skippedInteractionsCounter, + diffedInteractionsCounter, + }; console.log(`skipping ${x.request.method} ${x.request.path}`); } index = index + 1; } currentBatchId = currentBatchId + BigInt(1); } + + yield { + hasMoreInteractions: false, + interaction: null, + skippedInteractionsCounter, + diffedInteractionsCounter, + }; } export async function* BatchInteractionIterator(batchFilePath: string) { diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts index 78ae8a99e3..9129be1e16 100644 --- a/workspaces/cli-shared/src/diffs/diff-worker.ts +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -211,19 +211,28 @@ export class DiffWorker { await flush(); for await (const item of interactionIterator) { - // for (const x of [1, 2, 3]) { - const { batchId, interaction, index } = item; skippedInteractionsCounter = item.skippedInteractionsCounter; diffedInteractionsCounter = item.diffedInteractionsCounter; + hasMoreInteractions = item.hasMoreInteractions; + if (!hasMoreInteractions) { + // @GOTCHA item.interaction.value should not be present when hasMoreInteractions is false + break; + } + if (!item.interaction) { + continue; + } + const { batchId, index } = item.interaction.context; console.time(`serdes ${batchId} ${index}`); - const deserializedInteraction = JsonHelper.fromInteraction(interaction); + const deserializedInteraction = JsonHelper.fromInteraction( + item.interaction.value + ); console.timeEnd(`serdes ${batchId} ${index}`); console.time(`diff ${batchId} ${index}`); diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( resolvers, rfcState, deserializedInteraction, - interactionPointerConverter.toPointer(interaction, { + interactionPointerConverter.toPointer(item.interaction.value, { interactionIndex: index, batchId, }), @@ -236,11 +245,9 @@ export class DiffWorker { undocumentedUrls ); console.timeEnd(`count ${batchId} ${index}`); - - // } - batcher.add(null); } hasMoreInteractions = false; + batcher.add(null); } } From debb68bf4f2a2caf4b0467a12fee325573f2cbd0 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Tue, 30 Jun 2020 15:48:51 -0400 Subject: [PATCH 49/85] diff worker should deserialize commands --- .../main/scala/com/useoptic/CommandSerializationJs.scala | 9 ++++++--- workspaces/cli-shared/src/diffs/diff-worker.ts | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/core/optic/js/src/main/scala/com/useoptic/CommandSerializationJs.scala b/core/optic/js/src/main/scala/com/useoptic/CommandSerializationJs.scala index 7f9f152e12..e38bb1d262 100644 --- a/core/optic/js/src/main/scala/com/useoptic/CommandSerializationJs.scala +++ b/core/optic/js/src/main/scala/com/useoptic/CommandSerializationJs.scala @@ -9,11 +9,13 @@ import io.circe.Decoder.Result import io.circe._ import io.circe.generic.auto._ import io.circe.syntax._ +import io.circe.parser._ import scala.collection.immutable import scala.scalajs.js import scala.scalajs.js.annotation.{JSExportAll, JSExportTopLevel} import scala.util.{Failure, Try} +import io.circe.scalajs.{convertJsonToJs, convertJsToJson} @JSExportTopLevel("CommandSerialization") @JSExportAll @@ -23,7 +25,6 @@ object CommandSerializationJs { } def toJs(vector: Seq[RfcCommand]): js.Any = { - import io.circe.scalajs.convertJsonToJs convertJsonToJs(toJson(vector)) } @@ -38,7 +39,6 @@ object CommandSerializationJs { } def toJs(command: RfcCommand): js.Any = { - import io.circe.scalajs.convertJsonToJs convertJsonToJs(toJson(command)) } @@ -59,6 +59,10 @@ object CommandSerializationJs { private def decodeRfcCommand(item: Json): Result[ContributionCommand] = item.as[ContributionCommand] + def fromJs(x: js.Any): Vector[RfcCommand] = { + fromJson(convertJsToJson(x).right.get).get + } + def fromJson(json: Json): Try[Vector[RfcCommand]] = Try { if (!json.isArray) { return Failure(new Exception("not an array")) @@ -81,7 +85,6 @@ object CommandSerializationJs { } def fromJsonString(jsonString: String): immutable.Seq[RfcCommand] = { - import io.circe.parser._ val commandsVector = for { diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts index 9129be1e16..1e94817d6a 100644 --- a/workspaces/cli-shared/src/diffs/diff-worker.ts +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -95,7 +95,7 @@ export class DiffWorker { } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( events, commandsContext, - additionalCommands + opticEngine.CommandSerialization.fromJs(additionalCommands) ); console.timeEnd('build state'); const ignoredRequests = parseIgnore(ignoreRequests); From 4c26add5bb1165d9f72526121472f423546a0885 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Tue, 30 Jun 2020 16:17:47 -0400 Subject: [PATCH 50/85] progress --- .../scala/com/useoptic/CompareEquality.scala | 15 +- .../com/useoptic/ux/DiffResultHelper.scala | 7 +- .../components/diff/v2/CaptureManagerPage.js | 58 +- .../ui/src/components/diff/v2/DiffContext.js | 2 + .../ui/src/components/diff/v2/DiffCursor.js | 261 ++++++++ .../ui/src/components/diff/v2/DiffHooks.js | 63 +- .../ui/src/components/diff/v2/DiffPageNew.js | 20 +- .../ui/src/components/diff/v2/DiffPreview.js | 602 ++++++++---------- .../src/components/diff/v2/LoadingNextDiff.js | 65 ++ .../v2/shape_viewers/SideBySideShapeRows.js | 8 +- workspaces/ui/src/contexts/CaptureContext.js | 11 +- 11 files changed, 709 insertions(+), 403 deletions(-) create mode 100644 workspaces/ui/src/components/diff/v2/DiffCursor.js create mode 100644 workspaces/ui/src/components/diff/v2/LoadingNextDiff.js diff --git a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala index 719bc96ab9..45d2964186 100644 --- a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala +++ b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala @@ -3,7 +3,7 @@ package com.useoptic import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.interactions.InteractionDiffResult import com.useoptic.diff.shapes.ShapeDiffResult -import com.useoptic.ux.{BodyShapeDiffBlock, DiffBlock, NewRegionDiff} +import com.useoptic.ux.{BodyDiff, BodyShapeDiffBlock, DiffBlock, NewRegionDiff} import scala.scalajs.js import scala.scalajs.js.annotation.{JSExport, JSExportAll} @@ -32,4 +32,17 @@ object CompareEquality { false } } + + def betweenBodyDiffs(aBodyRegions: js.Array[BodyDiff], bBodyRegions: js.Array[BodyDiff]): Boolean = { + if (aBodyRegions.size == bBodyRegions.size) { + aBodyRegions.zip(bBodyRegions).forall { + case (a, b) => a.isSameAs(b) + } + } else { + false + } + } + def betweenSelectedDiffs(aBodyRegions: js.UndefOr[BodyDiff], bBodyRegions: js.UndefOr[BodyDiff]): Boolean = { + aBodyRegions.toOption != bBodyRegions.toOption + } } diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index baeb328a66..fb803e2ae8 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -74,7 +74,7 @@ object DiffResultHelper { EndpointDiffs(endpoint.method, endpoint.pathId, Map.empty /* always empty */) } } - + (endpointsFromDiff ++ additionalEndpointsWithoutDiffs).sortBy(_.count).reverse } @@ -274,12 +274,15 @@ abstract class NewRegionDiff { } } - override def toString: PathComponentId = diff.toString + interactionPointers.toString() + override def toString(): String = diff.toString + interactionPointers.toString() } @JSExportAll abstract class BodyDiff { + + def isSameAs(b: BodyDiff): Boolean = this.diff == b.diff + val diff: InteractionDiffResult val location: Seq[String] val interactionPointers: Seq[String] diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index 8041ec2e91..71482b9f8d 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -154,24 +154,22 @@ export const CaptureManager = ({}) => { const baseUrl = useBaseUrl(); return ( -
- - - - {captures.length && ( - - )} - empty} /> - -
+ + + + {captures.length && ( + + )} + empty} /> + ); }; @@ -211,7 +209,7 @@ function CaptureChooserComponent(props) { } return ( - <> +
@@ -310,7 +308,7 @@ function CaptureChooserComponent(props) { )}
- +
); } @@ -320,8 +318,8 @@ function RequestDiffWrapper(props) { return ( // sessionId={props.match.params.captureId} // specService={specService} -
-
+
+
@@ -649,4 +647,20 @@ const useStyles = makeStyles((theme) => ({ paper: { marginBottom: 15, }, + diffContainer: { + display: 'flex', + height: '100vh', + paddingLeft: 32, + paddingRight: 32, + flexDirection: 'row', + overflow: 'scroll', + flexGrow: 1, + flexShrink: 1, + justifyContent: 'center', + }, + diffWrapper: { + flex: 1, + padding: '24px 0px 144px', + maxWidth: 1280, + }, })); diff --git a/workspaces/ui/src/components/diff/v2/DiffContext.js b/workspaces/ui/src/components/diff/v2/DiffContext.js index 161a1c0ad1..6f54b327ae 100644 --- a/workspaces/ui/src/components/diff/v2/DiffContext.js +++ b/workspaces/ui/src/components/diff/v2/DiffContext.js @@ -30,6 +30,7 @@ class _DiffContextStore extends React.Component { acceptedSuggestions, setTabTo, diffsForThisEndpoint, + completed, } = this.props; const setSelectedDiff = (diff) => { @@ -48,6 +49,7 @@ class _DiffContextStore extends React.Component { const context = { diffsForThisEndpoint, + completed, selectedDiff: this.state.selectedDiff, setSelectedDiff, isFinishing: this.state.isFinishing, diff --git a/workspaces/ui/src/components/diff/v2/DiffCursor.js b/workspaces/ui/src/components/diff/v2/DiffCursor.js new file mode 100644 index 0000000000..f3181198b6 --- /dev/null +++ b/workspaces/ui/src/components/diff/v2/DiffCursor.js @@ -0,0 +1,261 @@ +import React, { useContext, useEffect, useState } from 'react'; +import { DiffContext } from './DiffContext'; +import { useDiffDescription } from './DiffHooks'; +import ListItem from '@material-ui/core/ListItem'; +import Typography from '@material-ui/core/Typography'; +import { CompareEquality, JsonHelper } from '@useoptic/domain'; +import Card from '@material-ui/core/Card'; +import { Collapse, withStyles } from '@material-ui/core'; +import List from '@material-ui/core/List'; +import { DocDarkGrey } from '../../docs/DocConstants'; +import { DiffToolTip } from './shape_viewers/styles'; +import IconButton from '@material-ui/core/IconButton'; +import MenuOpenIcon from '@material-ui/icons/MenuOpen'; +import { BreadcumbX } from './DiffPreview'; +import { makeStyles } from '@material-ui/core/styles'; +import { UpdatedBlue } from '../../../theme'; + +const useStyles = makeStyles((theme) => ({ + diffCursor: { + position: 'sticky', + top: 0, + zIndex: 500, + paddingTop: 10, + paddingBottom: 10, + display: 'flex', + justifyContent: 'center', + flexDirection: 'row', + borderLeft: `3px solid ${UpdatedBlue}`, + }, + diffTitle: { + fontSize: 19, + fontWeight: 400, + paddingLeft: 11, + }, + diffCursorActions: { + display: 'flex', + alignItems: 'center', + flexDirection: 'row', + paddingRight: 10, + }, + diffItem: { + display: 'flex', + flexDirection: 'column', + alignItems: 'baseline', + paddingLeft: 5, + }, +})); + +export class DiffCursor extends React.Component { + state = { + showAllDiffs: false, + }; + + toggle = (value) => this.setState({ showAllDiffs: value }); + + shouldComponentUpdate(nextProps, nextState, nextContext) { + return ( + !CompareEquality.betweenBodyDiffs(this.props.diffs, nextProps.diffs) || + !CompareEquality.betweenSelectedDiffs( + this.props.selectedDiff || undefined, + nextProps.selectedDiff || undefined + ) || + this.state.showAllDiffs != nextState.showAllDiffs + ); + } + + componentDidUpdate(prevProps, prevState, snapshot) { + if (this.props.selectedDiff === null && this.props.diffs.length > 0) { + this.props.setSelectedDiff(this.props.diffs[0]); + if (this.state.showAllDiffs) { + this.setState({ showAllDiffs: false }); + } + } + } + + render = () => { + const { selectedDiff, setSelectedDiff, diffs } = this.props; + const diffCount = diffs.length; + const { showAllDiffs } = this.state; + + if (diffCount === 0 || !selectedDiff) { + return null; + } + + const props = { + selectedDiff, + setSelectedDiff, + diffs, + diffCount, + showAllDiffs, + toggle: this.toggle, + }; + + console.log('aaaaa', props); + + return ; + }; +} + +const Cursor = ({ + showAllDiffs, + diffs, + setSelectedDiff, + selectedDiff, + diffCount, + toggle, +}) => { + const classes = useStyles(); + + return ( + +
+ {!showAllDiffs && selectedDiff && ( + + )} + + + Choose a diff to review + + + {diffs.map((diff) => ( + + ))} + + +
+ {!showAllDiffs && ( +
+ + {diffCount} diffs + + + toggle(true)} + > + + + +
+ )} +
+ ); +}; + +const DiffItem = ({ diff, button, setSelectedDiff, toggle }) => { + const description = useDiffDescription(diff); + const classes = useStyles(); + + return ( + { + setSelectedDiff(diff); + toggle(false); + }} + > + {description && ( + + {description.title} + {/*{diff.toString()}*/} + + )} + + + ); +}; + +// export function DiffCursor(props) { +// const classes = useStyles(); +// const { diffs } = props; +// const diffCount = diffs.length; +// +// const { selectedDiff, setSelectedDiff } = useContext(DiffContext); +// +// const [showAllDiffs, setShowAllDiffs] = useState(false); +// +// useEffect(() => { +// if (selectedDiff === null && diffCount > 0) { +// setSelectedDiff(diffs[0]); +// setShowAllDiffs(false); +// } +// }, [diffs.join((i) => i.toString())]); +// +// const DiffItem = ({ diff, button }) => { +// const description = useDiffDescription(diff); +// +// return ( +// { +// setSelectedDiff(diff); +// setShowAllDiffs(false); +// }} +// > +// {description && ( +// +// {description.title} +// {/*{diff.toString()}*/} +// +// )} +// +// +// ); +// }; +// +// if (!selectedDiff && diffCount === 0) { +// return null; +// } +// +// return ( +// +//
+// {!showAllDiffs && selectedDiff && ( +// +// )} +// +// +// Choose a diff to review +// +// +// {diffs.map((diff, n) => ( +// +// ))} +// +// +//
+// {!showAllDiffs && ( +//
+// +// {diffCount} diffs +// +// +// setShowAllDiffs(true)} +// > +// +// +// +//
+// )} +//
+// ); +// } diff --git a/workspaces/ui/src/components/diff/v2/DiffHooks.js b/workspaces/ui/src/components/diff/v2/DiffHooks.js index caf78bc228..c912c6c15b 100644 --- a/workspaces/ui/src/components/diff/v2/DiffHooks.js +++ b/workspaces/ui/src/components/diff/v2/DiffHooks.js @@ -11,7 +11,7 @@ export function useDiffDescription(diff) { setDescription((await diffService.loadDescription(diff)) || null); }; getDescription(); - }, [diff.toString()]); + }, [diff.diff.toString()]); return description; } @@ -19,26 +19,33 @@ export function useDiffDescription(diff) { export function useInteractionWithPointer(pointer) { const { captureService } = useCaptureContext(); const [interaction, setInteraction] = useState(null); - const [interactionScala, setInteractionScala] = useState(null); useEffect(() => { + let mounted = true; const getInteraction = async () => { if (pointer) { + setInteraction(null); const interaction = (await captureService.loadInteraction(pointer)).interaction || null; - setInteraction(interaction); - setInteractionScala(JsonHelper.fromInteraction(interaction)); + if (mounted) { + setInteraction({ + interaction, + interactionScala: JsonHelper.fromInteraction(interaction), + }); + } } else { - setInteraction(null); - setInteractionScala(null); + if (mounted) { + setInteraction(null); + } } }; + getInteraction(); + + return () => (mounted = false); }, [pointer]); - if (interaction && interactionScala) { - return { interaction, interactionScala }; - } + return interaction; } export function useSuggestionsForDiff(diff, currentInteraction) { @@ -46,16 +53,24 @@ export function useSuggestionsForDiff(diff, currentInteraction) { const [suggestions, setSuggestions] = useState([]); useEffect(() => { + let mounted = true; const getSuggestions = async () => { if (diff) { - setSuggestions( - await diffService.listSuggestions(diff, currentInteraction) + const result = await diffService.listSuggestions( + diff, + currentInteraction ); + if (mounted) { + setSuggestions(result); + } } else { - setSuggestions([]); + if (mounted) { + setSuggestions([]); + } } }; getSuggestions(); + return () => (mounted = false); }, [diff.toString()]); return suggestions; @@ -71,21 +86,29 @@ export function useInitialBodyPreview( const [preview, setPreview] = useState(null); useEffect(() => { + let mounted = true; const getInitialPreview = async () => { if (diff && currentInteraction) { - setPreview( - await diffService.loadInitialPreview( - diff, - currentInteraction, - inferPolymorphism - ) + const result = await diffService.loadInitialPreview( + diff, + currentInteraction, + inferPolymorphism ); + if (mounted) { + setPreview(result); + } } else { - setPreview(null); + if (mounted) { + setPreview(null); + } } }; getInitialPreview(); - }, [diff.toString(), currentInteraction]); + return () => (mounted = false); + }, [ + diff.diff.toString(), + currentInteraction && currentInteraction.toString(), + ]); return preview; } diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 9f40ae8df2..9365885878 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -24,7 +24,7 @@ import SimulatedCommandContext from '../SimulatedCommandContext'; import { primary } from '../../../theme'; import uuidv4 from 'uuid/v4'; import { Redirect, withRouter } from 'react-router-dom'; -import { DiffCursor, NewRegions } from './DiffPreview'; +import { NewRegions } from './DiffPreview'; import { CommitCard } from './CommitCard'; import { StableHasher } from '../../../utilities/CoverageUtilities'; import DiffReviewExpanded from './DiffReviewExpanded'; @@ -37,6 +37,8 @@ import { CaptureStateStore, useCaptureContext, } from '../../../contexts/CaptureContext'; +import { DiffLoading } from './LoadingNextDiff'; +import { DiffCursor } from './DiffCursor'; const { diff, JsonHelper } = opticEngine.com.useoptic; const { helpers } = diff; @@ -145,7 +147,9 @@ function _DiffPageContent(props) { acceptedSuggestions, acceptSuggestion, selectedDiff, + setSelectedDiff, diffsForThisEndpoint, + completed, clientId, clientSessionId, reset, @@ -220,6 +224,9 @@ function _DiffPageContent(props) { const diffContext = useContext(DiffContext); + const showLoader = + newRegions.length === 0 && bodyDiffs.length === 0 && !completed; + return ( {({ ignoreDiff, ignoredDiffs }) => ( @@ -233,6 +240,8 @@ function _DiffPageContent(props) {
+ + {hasNewRegions && ( - + {selectedDiff && } )} @@ -346,6 +360,7 @@ const InnerDiffWrapper = function (props) { endpointDiffs, updatedAdditionalCommands, diffId, + completed, } = useCaptureContext(); const { setSuggestionToPreview, @@ -407,6 +422,7 @@ converter.toJs(report) diffId={diffId} diffsForThisEndpoint={diffsForThisEndpoint} setSuggestionToPreview={setSuggestionToPreview} + completed={completed} reset={() => { updatedAdditionalCommands([]); resetIgnored(); diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 2dd10ff368..2b2cd55101 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -58,236 +58,7 @@ import { useInitialBodyPreview, useInteractionWithPointer, } from './DiffHooks'; - -const useStyles = makeStyles((theme) => ({ - root: { - width: '100%', - }, - blur: { - opacity: 0.3, - pointerEvents: 'none', - }, - header: { - paddingLeft: 20, - paddingRight: 10, - paddingTop: 10, - paddingBottom: 5, - fontWeight: 800, - }, - region: { - padding: 18, - }, - regionHeader: { - display: 'flex', - flexDirection: 'row', - marginTop: 16, - }, - approveNewRegions: { - position: 'sticky', - top: 0, - width: '100%', - height: 55, - display: 'flex', - alignItems: 'flex-end', - justifyContent: 'flex-end', - paddingRight: 20, - }, - newContentPreview: { - paddingTop: 16, - paddingRight: 8, - display: 'flex', - flexDirection: 'row', - }, - unchecked: { - pointerEvents: 'none', - opacity: 0.38, - }, - uncheckedText: { - pointerEvents: 'none', - opacity: 0.68, - }, - hunkHeader: { - paddingRight: 10, - paddingTop: 5, - paddingBottom: 5, - color: '#25292e', - minHeight: 40, - backgroundColor: '#eaebff', - fontWeight: 800, - display: 'flex', - flexDirection: 'row', - alignItems: 'start', - justifyContent: 'start', - }, - location: { - marginLeft: 12, - }, - diff: { - fontSize: 12, - fontWeight: 600, - color: '#f8333c', - marginLeft: 11, - flex: 1, - paddingLeft: 30, - }, - crumb: { - fontSize: 12, - textTransform: 'uppercase', - }, - heading: { - fontSize: theme.typography.pxToRem(17), - padding: 0, - fontWeight: theme.typography.fontWeightRegular, - }, - wrapper: { - overflow: 'hidden', - borderLeft: `3px solid ${UpdatedBlue}`, - }, - hunk: { - backgroundColor: 'white', - minHeight: 300, - }, - subheader: { - fontWeight: 100, - paddingBottom: 0, - marginBottom: 0, - height: 33, - }, - diffsNewRegion: { - display: 'flex', - flexDirection: 'column', - paddingLeft: 5, - justifyContent: 'center', - }, - diffCursor: { - position: 'sticky', - top: 0, - zIndex: 500, - paddingTop: 10, - paddingBottom: 10, - display: 'flex', - justifyContent: 'center', - flexDirection: 'row', - borderLeft: `3px solid ${UpdatedBlue}`, - }, - diffTitle: { - fontSize: 19, - fontWeight: 400, - paddingLeft: 11, - }, - diffCursorActions: { - display: 'flex', - alignItems: 'center', - flexDirection: 'row', - paddingRight: 10, - }, - diffItem: { - display: 'flex', - flexDirection: 'column', - alignItems: 'baseline', - paddingLeft: 5, - }, -})); -const addition = ( - -); - -const update = ( - -); - -const removal = ( - -); - -export function DiffCursor(props) { - const classes = useStyles(); - const { diffs } = props; - const diffCount = diffs.length; - - const { selectedDiff, setSelectedDiff } = useContext(DiffContext); - - const [showAllDiffs, setShowAllDiffs] = useState(false); - - useEffect(() => { - if (selectedDiff === null && diffCount > 0) { - setSelectedDiff(diffs[0]); - setShowAllDiffs(false); - } - }, [diffs.join((i) => i.toString())]); - - const DiffItem = ({ diff, button }) => { - const description = useDiffDescription(diff); - - return ( - { - setSelectedDiff(diff); - setShowAllDiffs(false); - }} - > - {description && ( - - {description.title} - {/*{diff.toString()}*/} - - )} - - - ); - }; - - if (!selectedDiff && diffCount === 0) { - return null; - } - - return ( - -
- {!showAllDiffs && selectedDiff && ( - - )} - - - Choose a diff to review - - - {diffs.map((diff, n) => ( - - ))} - - -
- {!showAllDiffs && ( -
- - {diffCount} diffs - - - setShowAllDiffs(true)} - > - - - -
- )} -
- ); -} +import { Show } from '../../shared/Show'; export default function DiffPreview() { const classes = useStyles(); @@ -387,129 +158,15 @@ function _NewRegions(props) { ignoreDiff(...allIgnored); }; - const PreviewNewBodyRegion = ({ diff, inferPolymorphism }) => { - const isChecked = !isDeselected(diff); - const length = diff.interactionsCount; - - const [interactionIndex, setInteractionIndex] = React.useState(1); - - useEffect(() => { - setInteractionIndex(1); - }, [diff.toString()]); - - const currentInteractionPointer = getIndex(diff.interactionPointers)( - interactionIndex - 1 - ); - - const currentInteraction = useInteractionWithPointer( - currentInteractionPointer - ); - - const initialBody = useInitialBodyPreview( - diff, - currentInteraction && currentInteraction.interactionScala, - inferPolymorphism - ); - - if (!currentInteraction || !initialBody) { - return ; - } - - const bodyPreview = getOrUndefined(initialBody.bodyPreview); - const shapePreview = getOrUndefined(initialBody.shapePreview); - - return ( - <> - - - - -
- {length > 1 && getOrUndefined(diff.contentType) && ( - 5} - size="small" - onChange={(e, pageNumber) => setInteractionIndex(pageNumber)} - /> - )} - - -
-
- {bodyPreview && ( - - -
- -
- } - > - - - - - )} -
-
- {shapePreview && ( - - } - > - - - - - )} -
-
- - ); - }; - const newRequests = newRegions .map((diff) => { if (diff.inRequest) { return ( ); @@ -523,7 +180,9 @@ function _NewRegions(props) { return ( ); @@ -607,7 +266,9 @@ function _NewRegions(props) {
)} - + + + {newResponses.length > 0 && (
@@ -629,7 +290,6 @@ export class NewRegions extends React.Component { this.props.newRegions ); - console.log('rerender ', result); //@todo add ignore here return !result; } @@ -664,3 +324,245 @@ export const BreadcumbX = (props) => { ); }; + +const PreviewNewBodyRegion = ({ + diff, + inferPolymorphism, + isDeselected, + onChange, +}) => { + const isChecked = !isDeselected(diff); + const classes = useStyles(); + const length = diff.interactionsCount; + + const [interactionIndex, setInteractionIndex] = React.useState(1); + + useEffect(() => { + setInteractionIndex(1); + }, [diff.diff ? diff.diff.toString() : undefined]); + + const currentInteractionPointer = getIndex(diff.interactionPointers)( + interactionIndex - 1 + ); + + const currentInteraction = useInteractionWithPointer( + currentInteractionPointer + ); + + const initialBody = useInitialBodyPreview( + diff, + currentInteraction && currentInteraction.interactionScala, + inferPolymorphism + ); + + if (!currentInteraction || !initialBody) { + return ; + } + + const bodyPreview = getOrUndefined(initialBody.bodyPreview); + const shapePreview = getOrUndefined(initialBody.shapePreview); + + return ( + <> + + + + +
+ {length > 1 && getOrUndefined(diff.contentType) && ( + 5} + size="small" + onChange={(e, pageNumber) => setInteractionIndex(pageNumber)} + /> + )} + + +
+
+ {bodyPreview && ( + + +
+ +
+ } + > + + + + + )} +
+
+ {shapePreview && ( + + } + > + + + + + )} +
+
+ + ); +}; + +const useStyles = makeStyles((theme) => ({ + root: { + width: '100%', + }, + blur: { + opacity: 0.3, + pointerEvents: 'none', + }, + header: { + paddingLeft: 20, + paddingRight: 10, + paddingTop: 10, + paddingBottom: 5, + fontWeight: 800, + }, + region: { + padding: 18, + }, + regionHeader: { + display: 'flex', + flexDirection: 'row', + marginTop: 16, + }, + approveNewRegions: { + position: 'sticky', + top: 0, + width: '100%', + height: 55, + display: 'flex', + alignItems: 'flex-end', + justifyContent: 'flex-end', + paddingRight: 20, + }, + newContentPreview: { + paddingTop: 16, + paddingRight: 8, + display: 'flex', + flexDirection: 'row', + }, + unchecked: { + pointerEvents: 'none', + opacity: 0.38, + }, + uncheckedText: { + pointerEvents: 'none', + opacity: 0.68, + }, + hunkHeader: { + paddingRight: 10, + paddingTop: 5, + paddingBottom: 5, + color: '#25292e', + minHeight: 40, + backgroundColor: '#eaebff', + fontWeight: 800, + display: 'flex', + flexDirection: 'row', + alignItems: 'start', + justifyContent: 'start', + }, + location: { + marginLeft: 12, + }, + diff: { + fontSize: 12, + fontWeight: 600, + color: '#f8333c', + marginLeft: 11, + flex: 1, + paddingLeft: 30, + }, + crumb: { + fontSize: 12, + textTransform: 'uppercase', + }, + heading: { + fontSize: theme.typography.pxToRem(17), + padding: 0, + fontWeight: theme.typography.fontWeightRegular, + }, + wrapper: { + overflow: 'hidden', + borderLeft: `3px solid ${UpdatedBlue}`, + }, + hunk: { + backgroundColor: 'white', + minHeight: 300, + }, + subheader: { + fontWeight: 100, + paddingBottom: 0, + marginBottom: 0, + height: 33, + }, + diffsNewRegion: { + display: 'flex', + flexDirection: 'column', + paddingLeft: 5, + justifyContent: 'center', + }, +})); + +const addition = ( + +); + +const update = ( + +); + +const removal = ( + +); diff --git a/workspaces/ui/src/components/diff/v2/LoadingNextDiff.js b/workspaces/ui/src/components/diff/v2/LoadingNextDiff.js new file mode 100644 index 0000000000..b2fa7b29ae --- /dev/null +++ b/workspaces/ui/src/components/diff/v2/LoadingNextDiff.js @@ -0,0 +1,65 @@ +import React from 'react'; +import Skeleton from '@material-ui/lab/Skeleton'; +import { primary } from '../../../theme'; +import { makeStyles } from '@material-ui/core/styles'; +import Typography from '@material-ui/core/Typography'; +import { DocDarkGrey } from '../../docs/DocConstants'; + +export function DiffLoading({ show }) { + const classes = useStyles(); + + if (!show) { + return null; + } + + return ( +
+
+ +
+
+ + + Waiting for Next Diff... + + +
+ +
+
+ ); +} + +const useStyles = makeStyles((theme) => ({ + root: { + width: '100%', + }, + text: { + margin: '0 auto', + fontSize: 20, + fontWeight: 400, + color: '#959191', + }, + textParent: { + display: 'flex', + justifyContent: 'center', + flex: 1, + alignItems: 'center', + }, + top: { + paddingBottom: 20, + }, + sideBySide: { + display: 'flex', + flexDirection: 'row', + }, +})); diff --git a/workspaces/ui/src/components/diff/v2/shape_viewers/SideBySideShapeRows.js b/workspaces/ui/src/components/diff/v2/shape_viewers/SideBySideShapeRows.js index 651b054a7c..548c28493c 100644 --- a/workspaces/ui/src/components/diff/v2/shape_viewers/SideBySideShapeRows.js +++ b/workspaces/ui/src/components/diff/v2/shape_viewers/SideBySideShapeRows.js @@ -652,10 +652,10 @@ function useCompassTargetTracker(isEnabled) { compassState.width, ]); - useEffect(() => { - animationRaf.current = requestAnimationFrame(onAnimationFrame); - return () => cancelAnimationFrame(animationRaf.current); - }, [onAnimationFrame]); + // useEffect(() => { + // animationRaf.current = requestAnimationFrame(onAnimationFrame); + // return () => cancelAnimationFrame(animationRaf.current); + // }, [onAnimationFrame]); return { ref: elementRef, diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index 580eb82c1b..e3c78555e1 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -2,7 +2,7 @@ import * as React from 'react'; import { useContext, useEffect, useState } from 'react'; import { useServices } from './SpecServiceContext'; import { RfcContext } from './RfcContext'; -import { ScalaJSHelpers } from '@useoptic/domain'; +import { commandsToJson, ScalaJSHelpers } from '@useoptic/domain'; import debounce from 'lodash.debounce'; export const CaptureContext = React.createContext(null); @@ -53,6 +53,9 @@ export class CaptureStateStore extends React.Component { reload = async (notifData) => { const notifDataUpdates = (() => { if (notifData && notifData.hasOwnProperty('hasMoreInteractions')) { + if (!notifData.hasMoreInteractions) { + console.log('completed diff'); + } return { completed: !notifData.hasMoreInteractions, skipped: notifData.skippedInteractionsCounter, @@ -130,13 +133,17 @@ export class CaptureStateStore extends React.Component { //@TODO: handle error const apiConfig = await specService.loadConfig(); const events = eventStore.listEvents(rfcId); + + console.log('trying to start a new diff'); const config = await captureService.startDiff( ScalaJSHelpers.eventsJsArray(events), apiConfig.config.ignoreRequests || [], - this.state.additionalCommands, + commandsToJson(this.state.additionalCommands), //commands serialize me pathId && method ? [{ pathId, method }] : [] // partition diff when on an endpoint page ); + console.log('Starting new Diff ', config); + let notificationChannel = null; if (config.notificationsUrl) { notificationChannel = new EventSource(config.notificationsUrl); From 8c17da527facc2cbac6812bcb685544d6ccde8e8 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Tue, 30 Jun 2020 17:33:08 -0400 Subject: [PATCH 51/85] state should be able to be built from js/json IRfcCommand[] -> Seq[RfcCommand] -> RfcCommand[] --- workspaces/cli-shared/src/diffs/diff-worker.ts | 4 ++-- workspaces/domain-utilities/src/index.ts | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts index 1e94817d6a..6c8d4470f1 100644 --- a/workspaces/cli-shared/src/diffs/diff-worker.ts +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -1,4 +1,4 @@ -import { cachingResolversAndRfcStateFromEventsAndAdditionalCommands } from '@useoptic/domain-utilities'; +import { cachingResolversAndRfcStateFromEventsAndAdditionalCommandsSeq } from '@useoptic/domain-utilities'; import { parseIgnore } from '@useoptic/cli-config'; import { IHttpInteraction } from '@useoptic/domain-types'; import { @@ -92,7 +92,7 @@ export class DiffWorker { const { rfcState, resolvers, - } = cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + } = cachingResolversAndRfcStateFromEventsAndAdditionalCommandsSeq( events, commandsContext, opticEngine.CommandSerialization.fromJs(additionalCommands) diff --git a/workspaces/domain-utilities/src/index.ts b/workspaces/domain-utilities/src/index.ts index dbc2df7490..91f94ea01b 100644 --- a/workspaces/domain-utilities/src/index.ts +++ b/workspaces/domain-utilities/src/index.ts @@ -70,6 +70,18 @@ export function cachingResolversAndRfcStateFromEventsAndAdditionalCommands( return { resolvers, rfcState }; } +export function cachingResolversAndRfcStateFromEventsAndAdditionalCommandsSeq( + events: any[], + commandsContext: any, + additionalCommandsSeq: any +) { + return cachingResolversAndRfcStateFromEventsAndAdditionalCommands( + events, + commandsContext, + JsonHelper.seqToJsArray(additionalCommandsSeq) + ); +} + export function rfcStateFromEvents(events: any[]) { const { rfcState } = universeFromEvents(events); return rfcState; From 8c1911762485c412d1b0186d583a2c0a1e2e06d0 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Wed, 1 Jul 2020 09:48:40 -0400 Subject: [PATCH 52/85] Context fixes --- .../com/useoptic/ux/DiffResultHelper.scala | 37 +++++ .../components/diff/v2/CaptureManagerPage.js | 6 +- .../ui/src/components/diff/v2/DiffCursor.js | 2 +- .../ui/src/components/diff/v2/DiffPageNew.js | 72 +++++---- .../components/diff/v2/DiffReviewExpanded.js | 2 +- workspaces/ui/src/contexts/CaptureContext.js | 149 ++---------------- workspaces/ui/src/contexts/RfcContext.js | 1 - 7 files changed, 95 insertions(+), 174 deletions(-) diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index fb803e2ae8..b2f84bbc0f 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -78,6 +78,29 @@ object DiffResultHelper { (endpointsFromDiff ++ additionalEndpointsWithoutDiffs).sortBy(_.count).reverse } + + def groupEndpointDiffsByRegion(diffs: Map[InteractionDiffResult, Seq[String]]): EndpointDiffGrouping = { + + val regions = newRegionDiffs(diffs) + val body = bodyDiffs(diffs) + + val requestBodyDiffs = body.collect { case i if i.inRequest => i }.groupBy(_.contentType).map(i => { + EndpointBodyDiffRegion(i._1, None, i._2.toVector) + }) + + val responseBodyDiffs = body.collect { case i if i.inResponse => i }.groupBy(i => (i.contentType, i.statusCode) ).map(i => { + val (ct, sc) = i._1 + EndpointBodyDiffRegion(ct, sc, i._2.toVector) + }) + + + EndpointDiffGrouping( + requestBodyDiffs.toVector, + responseBodyDiffs.toVector, + regions + ) + } + def interactionsWithDiffsCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.flatMap(_._2).toSet.size def diffCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.size @@ -135,6 +158,8 @@ object DiffResultHelper { override val interactionPointers = _interactionPointers override val inRequest: Boolean = _inRequest override val inResponse: Boolean = _inResponse + override val contentType: Option[String] = if (_inRequest) _diff.interactionTrail.requestBodyContentTypeOption() else _diff.interactionTrail.responseBodyContentTypeOption() + override val statusCode: Option[Int] = Try(_diff.interactionTrail.statusCode()).toOption } }}.toVector } @@ -286,6 +311,8 @@ abstract class BodyDiff { val diff: InteractionDiffResult val location: Seq[String] val interactionPointers: Seq[String] + val contentType: Option[String] + val statusCode: Option[Int] val inRequest: Boolean val inResponse: Boolean @@ -295,6 +322,16 @@ abstract class BodyDiff { def interactionsCount: Int = interactionPointers.size } +@JSExportAll +case class EndpointDiffGrouping(requestDiffs: Seq[EndpointBodyDiffRegion], + responseDiffs: Seq[EndpointBodyDiffRegion], + newRegions: Seq[NewRegionDiff]) { + def hasNewRegions: Boolean = newRegions.nonEmpty + def empty: Boolean = requestDiffs.isEmpty && responseDiffs.isEmpty && newRegions.isEmpty +} +@JSExportAll +case class EndpointBodyDiffRegion(contentType: Option[String], statusCode: Option[Int], bodyDiffs: Vector[BodyDiff]) + @JSExportAll case class PreviewShapeAndCommands(shape: Option[ShapeOnlyRenderHelper], suggestion: Option[InteractiveDiffInterpretation]) diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index 71482b9f8d..ce839755c0 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -57,7 +57,7 @@ import { AddOpticLink } from '../../support/Links'; import { debugDump } from '../../../utilities/debug-dump'; import { CaptureContext, - CaptureStateStore, + CaptureContextStore, useCaptureContext, } from '../../../contexts/CaptureContext'; import Tabs from '@material-ui/core/Tabs'; @@ -345,9 +345,9 @@ function CaptureDiffWrapper(props) { const services = useServices(); return ( - + - + ); } diff --git a/workspaces/ui/src/components/diff/v2/DiffCursor.js b/workspaces/ui/src/components/diff/v2/DiffCursor.js index f3181198b6..e12e149ede 100644 --- a/workspaces/ui/src/components/diff/v2/DiffCursor.js +++ b/workspaces/ui/src/components/diff/v2/DiffCursor.js @@ -60,7 +60,7 @@ export class DiffCursor extends React.Component { this.props.selectedDiff || undefined, nextProps.selectedDiff || undefined ) || - this.state.showAllDiffs != nextState.showAllDiffs + this.state.showAllDiffs !== nextState.showAllDiffs ); } diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 9365885878..596390803e 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -13,7 +13,6 @@ import { } from '../../../contexts/SpecServiceContext'; import { DiffContext, DiffContextStore, withDiffContext } from './DiffContext'; import { RfcContext, withRfcContext } from '../../../contexts/RfcContext'; -import LinearProgress from '@material-ui/core/LinearProgress'; import { DiffResultHelper, Facade, @@ -34,7 +33,7 @@ import { useBaseUrl } from '../../../contexts/BaseUrlContext'; import { usePageTitle } from '../../Page'; import { track } from '../../../Analytics'; import { - CaptureStateStore, + CaptureContextStore, useCaptureContext, } from '../../../contexts/CaptureContext'; import { DiffLoading } from './LoadingNextDiff'; @@ -86,35 +85,27 @@ const styles = (theme) => ({ function DiffPageNew(props) { const { specStore } = useContext(SpecServiceContext); const baseUrl = useBaseUrl(); - const rfcContext = useContext(RfcContext); const services = useServices(); const { pathId, method, captureId } = props.match.params; return ( - - } > - } - > - - - - + + + ); } @@ -376,7 +367,7 @@ const InnerDiffWrapper = function (props) { } = props; if (isLoading) { - return ; + return null; } const simulatedCommands = suggestionToPreview @@ -450,7 +441,15 @@ converter.toJs(report) class _CaptureSessionInlineContext extends React.Component { render() { const jsonHelper = JsonHelper(); - const { rfcId, eventStore, children, pathId, method } = this.props; + const { + captureId, + services, + rfcId, + eventStore, + children, + pathId, + method, + } = this.props; return ( //@todo refactor sessionId to captureId @@ -468,10 +467,6 @@ class _CaptureSessionInlineContext extends React.Component { const simulatedCommands = acceptedSuggestions .map((x) => jsonHelper.seqToJsArray(x.commands)) .reduce(flatten, []); - console.log({ - suggestionToPreview, - acceptedSuggestions, - }); return ( - - {children} - + + {children} + + ); }} diff --git a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js index 6705c96bff..e540acc209 100644 --- a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js +++ b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js @@ -101,7 +101,7 @@ export default (props) => { ); if (!currentInteraction || !description) { - return ; + return null; } const { interaction, interactionScala } = currentInteraction; diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index e3c78555e1..fd91e30bca 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -1,7 +1,7 @@ import * as React from 'react'; import { useContext, useEffect, useState } from 'react'; import { useServices } from './SpecServiceContext'; -import { RfcContext } from './RfcContext'; +import { RfcContext, withRfcContext } from './RfcContext'; import { commandsToJson, ScalaJSHelpers } from '@useoptic/domain'; import debounce from 'lodash.debounce'; export const CaptureContext = React.createContext(null); @@ -29,7 +29,7 @@ const initialState = (debouncer = null) => { }; }; -export class CaptureStateStore extends React.Component { +class _CaptureContextStore extends React.Component { state = initialState(); componentDidMount = async () => { @@ -69,26 +69,19 @@ export class CaptureStateStore extends React.Component { const { diffService } = this.state; if (diffService) { - try { - const [diffsResponse, urlsResponse] = await Promise.all([ - diffService.listDiffs(), - diffService.listUnrecognizedUrls(), - ]); - - console.log('results', [ - diffsResponse.diffs.length, - urlsResponse.length, - ]); - this.setState({ - endpointDiffs: diffsResponse.diffs, - unrecognizedUrls: urlsResponse, - pendingUpdates: true, - lastUpdate: new Date(), - ...notifDataUpdates, - }); - } catch (e) { - console.error('issue with reload, skipping', e); - } + const [diffsResponse, urlsResponse] = await Promise.all([ + diffService.listDiffs(), + diffService.listUnrecognizedUrls(), + ]); + + console.log('results', [diffsResponse.diffs.length, urlsResponse.length]); + this.setState({ + endpointDiffs: diffsResponse.diffs, + unrecognizedUrls: urlsResponse, + pendingUpdates: true, + lastUpdate: new Date(), + ...notifDataUpdates, + }); } }; @@ -230,114 +223,4 @@ export class CaptureStateStore extends React.Component { }; } -// export function CaptureStateStore(props) { -// const { captureId } = props; -// -// const [diffService, setDiffService] = useState(null); -// const [captureService, setCaptureService] = useState(null); -// const [additionalCommands, setAdditionalCommands] = useState([]); -// -// const { eventStore, rfcService, rfcId } = useContext(RfcContext); -// -// // diff state -// const [endpointDiffs, setEndpointDiffs] = useState([]); -// const [unrecognizedUrls, setUnrecognizedUrls] = useState([]); -// const [stats, setStats] = useState({}); -// const [diffId, setDiffId] = useState(''); -// -// const { -// specService, -// captureServiceFactory, -// diffServiceFactory, -// } = useServices(); -// -// async function restart() { -// if (diffService) { -// diffService.loadStats().then(setStats); -// diffService.listDiffs().then((x) => { -// setEndpointDiffs(x.diffs); -// }); -// diffService.listUnrecognizedUrls().then((x) => { -// setUnrecognizedUrls(x.urls); -// }); -// setDiffId(diffService.diffId()); -// } -// } -// useEffect(() => { -// let notifications; -// async function task() { -// const captureService = await captureServiceFactory( -// specService, -// captureId -// ); -// //@TODO: handle error -// const apiConfig = await specService.loadConfig(); -// const events = eventStore.listEvents(rfcId); -// const config = await captureService.startDiff( -// ScalaJSHelpers.eventsJsArray(events), -// apiConfig.config.ignoreRequests || [], -// additionalCommands -// ); -// if (config.notificationsUrl) { -// const notificationsSource = new EventSource(config.notificationsUrl); -// notificationsSource.onmessage = (event) => { -// debugger; -// }; -// notificationsSource.onerror = (e) => { -// console.error(e); -// }; -// notificationsSource.onopen = (e) => { -// console.log(e); -// }; -// } -// const rfcState = rfcService.currentState(rfcId); -// -// const diffServiceForCapture = await diffServiceFactory( -// specService, -// captureService, -// rfcState, -// additionalCommands, -// config, -// captureId -// ); -// setCaptureService(captureService); -// setDiffService(diffServiceForCapture); -// } -// task(); -// return function cleanup() { -// if (notifications) { -// notifications.close(); -// } -// }; -// }, [captureId, additionalCommands]); -// -// useEffect(() => { -// restart(); -// return () => {}; -// }, [diffService]); -// -// if (!diffService) { -// return
loading...
; -// } -// -// const updatedAdditionalCommands = (additionalCommands) => { -// setAdditionalCommands(additionalCommands); -// }; -// -// const value = { -// diffService, -// captureService, -// restart, -// updatedAdditionalCommands, -// diffId, -// endpointDiffs, -// unrecognizedUrls, -// stats, -// }; -// -// return ( -// -// {props.children} -// -// ); -// } +export const CaptureContextStore = withRfcContext(_CaptureContextStore); diff --git a/workspaces/ui/src/contexts/RfcContext.js b/workspaces/ui/src/contexts/RfcContext.js index 877e914f11..90082cf939 100644 --- a/workspaces/ui/src/contexts/RfcContext.js +++ b/workspaces/ui/src/contexts/RfcContext.js @@ -147,7 +147,6 @@ function BaseRfcStore(props) { const cachedQueryResults = stuffFromQueries(queries); const { specService } = props; const value = { - specService, rfcId, clientSessionId, clientId, From 4c9b3c1e21c9b9cfaf8ba5e04442a302397f96a4 Mon Sep 17 00:00:00 2001 From: Dev Doshi Date: Wed, 1 Jul 2020 18:14:48 -0400 Subject: [PATCH 53/85] incremental diff should be able to emit errors on diff start and during processing --- .../cli-server/src/routers/capture-router.ts | 27 +- .../cli-shared/src/diffs/diff-worker.ts | 345 ++++++++++-------- workspaces/ui/src/contexts/CaptureContext.js | 9 +- 3 files changed, 207 insertions(+), 174 deletions(-) diff --git a/workspaces/cli-server/src/routers/capture-router.ts b/workspaces/cli-server/src/routers/capture-router.ts index 121761b244..a07c5a07e5 100644 --- a/workspaces/cli-server/src/routers/capture-router.ts +++ b/workspaces/cli-server/src/routers/capture-router.ts @@ -84,24 +84,28 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { diffId: id, }); await fs.ensureDir(diffOutputPaths.base); - await fs.writeJson(diffOutputPaths.events, events); - await fs.writeJson(diffOutputPaths.ignoreRequests, ignoreRequests); - await fs.writeJson(diffOutputPaths.filters, filters); - await fs.writeJson( - diffOutputPaths.additionalCommands, - additionalCommands - ); + await Promise.all([ + fs.writeJson(diffOutputPaths.events, events), + fs.writeJson(diffOutputPaths.ignoreRequests, ignoreRequests), + fs.writeJson(diffOutputPaths.filters, filters), + fs.writeJson(diffOutputPaths.additionalCommands, additionalCommands), + ]); const workerStarted = new Promise((resolve, reject) => { manager.events.once('progress', resolve); + manager.events.once('error', reject); }); await manager.start({ captureBaseDirectory: req.optic.paths.capturesPath, captureId: captureId, diffId: id, }); - - await workerStarted; - + try { + await workerStarted; + } catch (e) { + return res.status(500).json({ + message: e.message, + }); + } const diffMetadata = { id, manager, @@ -140,6 +144,9 @@ export function makeRouter(dependencies: ICaptureRouterDependencies) { diffMetadata.manager.events.on('progress', (data) => { emit({ type: 'message', data }); }); + diffMetadata.manager.events.on('error', (data) => { + emit({ type: 'error', data }); + }); req.on('close', () => { diffMetadata.manager.stop(); diff --git a/workspaces/cli-shared/src/diffs/diff-worker.ts b/workspaces/cli-shared/src/diffs/diff-worker.ts index 6c8d4470f1..52d40b2288 100644 --- a/workspaces/cli-shared/src/diffs/diff-worker.ts +++ b/workspaces/cli-shared/src/diffs/diff-worker.ts @@ -65,189 +65,210 @@ export class DiffWorker { constructor(private config: IDiffProjectionEmitterConfig) {} async run() { - debugger; console.log('running'); - console.time('load inputs'); - const [ - ignoreRequests, - events, - additionalCommands, - filters, - ] = await Promise.all([ - fs.readJson(this.config.ignoreRequestsFilePath), - fs.readJson(this.config.specFilePath), - fs.readJson(this.config.additionalCommandsFilePath), - fs.readJson(this.config.filtersFilePath), - ]); - console.timeEnd('load inputs'); - console.time('build state'); - const batchId = 'bbb'; - const clientId = 'ccc'; //@TODO: should use real values - const clientSessionId = 'sss'; //@TODO: should use real values - const commandsContext = RfcCommandContext( - clientId, - clientSessionId, - batchId - ); - const { - rfcState, - resolvers, - } = cachingResolversAndRfcStateFromEventsAndAdditionalCommandsSeq( - events, - commandsContext, - opticEngine.CommandSerialization.fromJs(additionalCommands) - ); - console.timeEnd('build state'); - const ignoredRequests = parseIgnore(ignoreRequests); - - function filterIgnoredRequests(interaction: IHttpInteraction) { - return !ignoredRequests.shouldIgnore( - interaction.request.method, - interaction.request.path - ); - } - function filterByEndpoint(endpoint: { pathId: string; method: string }) { - return function (interaction: IHttpInteraction) { - const pathId = ScalaJSHelpers.getOrUndefined( - undocumentedUrlHelpers.tryResolvePathId(interaction.request.path) - ); - return ( - endpoint.method === interaction.request.method && - endpoint.pathId === pathId && - !ignoredRequests.shouldIgnore( - interaction.request.method, - interaction.request.path - ) - ); - }; - } - const interactionFilter = - filters.length > 0 ? filterByEndpoint(filters[0]) : filterIgnoredRequests; - const interactionIterator = CaptureInteractionIterator( - { - captureId: this.config.captureId, - captureBaseDirectory: this.config.captureBaseDirectory, - }, - interactionFilter - ); - debugger; - - let diffs = DiffHelpers.emptyInteractionPointersGroupedByDiff(); - let undocumentedUrls = opticEngine.UndocumentedUrlHelpers.newCounter(); - const undocumentedUrlHelpers = new opticEngine.com.useoptic.diff.helpers.UndocumentedUrlIncrementalHelpers( - rfcState - ); - let hasMoreInteractions = true; - let diffedInteractionsCounter = BigInt(0); - let skippedInteractionsCounter = BigInt(0); - const batcher = new Bottleneck.Batcher({ - maxSize: 100, - maxTime: 100, - }); - const diffOutputPaths = getDiffOutputPaths(this.config); - - const queue = new Bottleneck({ - maxConcurrent: 1, - }); - - function notifyParent() { - const progress = { - diffedInteractionsCounter: diffedInteractionsCounter.toString(), - skippedInteractionsCounter: skippedInteractionsCounter.toString(), - hasMoreInteractions, - }; + function notifyParentOfError(e: Error) { if (process && process.send) { process.send({ - type: 'progress', - data: progress, + type: 'error', + data: { + message: e.message, + }, }); } else { - console.log(progress); + console.error(e); } } - async function flush() { - const c = diffedInteractionsCounter.toString(); - - console.time(`flushing ${c}`); - const outputDiff = safeWriteJson( - diffOutputPaths.diffs, - opticEngine.DiffWithPointersJsonSerializer.toJs(diffs) + try { + console.time('load inputs'); + const [ + ignoreRequests, + events, + additionalCommands, + filters, + ] = await Promise.all([ + fs.readJson(this.config.ignoreRequestsFilePath), + fs.readJson(this.config.specFilePath), + fs.readJson(this.config.additionalCommandsFilePath), + fs.readJson(this.config.filtersFilePath), + ]); + console.timeEnd('load inputs'); + console.time('build state'); + const batchId = 'bbb'; + const clientId = 'ccc'; //@TODO: should use real values + const clientSessionId = 'sss'; //@TODO: should use real values + const commandsContext = RfcCommandContext( + clientId, + clientSessionId, + batchId ); - const outputCount = safeWriteJson( - diffOutputPaths.undocumentedUrls, - opticEngine.UrlCounterJsonSerializer.toFriendlyJs(undocumentedUrls) + const { + rfcState, + resolvers, + } = cachingResolversAndRfcStateFromEventsAndAdditionalCommandsSeq( + events, + commandsContext, + opticEngine.CommandSerialization.fromJs(additionalCommands) ); - const outputStats = safeWriteJson(diffOutputPaths.stats, { - diffedInteractionsCounter: diffedInteractionsCounter.toString(), - skippedInteractionsCounter: skippedInteractionsCounter.toString(), - isDone: !hasMoreInteractions, - }); + console.timeEnd('build state'); + const ignoredRequests = parseIgnore(ignoreRequests); + + function filterIgnoredRequests(interaction: IHttpInteraction) { + return !ignoredRequests.shouldIgnore( + interaction.request.method, + interaction.request.path + ); + } - await Promise.all([outputDiff, outputCount, outputStats]); + function filterByEndpoint(endpoint: { pathId: string; method: string }) { + return function (interaction: IHttpInteraction) { + const pathId = ScalaJSHelpers.getOrUndefined( + undocumentedUrlHelpers.tryResolvePathId(interaction.request.path) + ); + return ( + endpoint.method === interaction.request.method && + endpoint.pathId === pathId && + !ignoredRequests.shouldIgnore( + interaction.request.method, + interaction.request.path + ) + ); + }; + } - notifyParent(); + const interactionFilter = + filters.length > 0 + ? filterByEndpoint(filters[0]) + : filterIgnoredRequests; + const interactionIterator = CaptureInteractionIterator( + { + captureId: this.config.captureId, + captureBaseDirectory: this.config.captureBaseDirectory, + }, + interactionFilter + ); - console.timeEnd(`flushing ${c}`); - } + let diffs = DiffHelpers.emptyInteractionPointersGroupedByDiff(); + let undocumentedUrls = opticEngine.UndocumentedUrlHelpers.newCounter(); + const undocumentedUrlHelpers = new opticEngine.com.useoptic.diff.helpers.UndocumentedUrlIncrementalHelpers( + rfcState + ); + let hasMoreInteractions = true; + let diffedInteractionsCounter = BigInt(0); + let skippedInteractionsCounter = BigInt(0); + const batcher = new Bottleneck.Batcher({ + maxSize: 100, + maxTime: 100, + }); + const diffOutputPaths = getDiffOutputPaths(this.config); - batcher.on('batch', () => { - console.log('scheduling batch flush'); - queue.schedule(() => { - console.log('executing batch flush'); - return flush(); + const queue = new Bottleneck({ + maxConcurrent: 1, }); - }); - const interactionPointerConverter = new LocalCaptureInteractionPointerConverter( - { - captureBaseDirectory: this.config.captureBaseDirectory, - captureId: this.config.captureId, - } - ); - - await fs.ensureDir(diffOutputPaths.base); - await flush(); - - for await (const item of interactionIterator) { - skippedInteractionsCounter = item.skippedInteractionsCounter; - diffedInteractionsCounter = item.diffedInteractionsCounter; - hasMoreInteractions = item.hasMoreInteractions; - if (!hasMoreInteractions) { - // @GOTCHA item.interaction.value should not be present when hasMoreInteractions is false - break; + function notifyParent() { + const progress = { + diffedInteractionsCounter: diffedInteractionsCounter.toString(), + skippedInteractionsCounter: skippedInteractionsCounter.toString(), + hasMoreInteractions, + }; + if (process && process.send) { + process.send({ + type: 'progress', + data: progress, + }); + } else { + console.log(progress); + } } - if (!item.interaction) { - continue; + + async function flush() { + const c = diffedInteractionsCounter.toString(); + + console.time(`flushing ${c}`); + const outputDiff = safeWriteJson( + diffOutputPaths.diffs, + opticEngine.DiffWithPointersJsonSerializer.toJs(diffs) + ); + const outputCount = safeWriteJson( + diffOutputPaths.undocumentedUrls, + opticEngine.UrlCounterJsonSerializer.toFriendlyJs(undocumentedUrls) + ); + const outputStats = safeWriteJson(diffOutputPaths.stats, { + diffedInteractionsCounter: diffedInteractionsCounter.toString(), + skippedInteractionsCounter: skippedInteractionsCounter.toString(), + isDone: !hasMoreInteractions, + }); + + await Promise.all([outputDiff, outputCount, outputStats]); + + notifyParent(); + + console.timeEnd(`flushing ${c}`); } - const { batchId, index } = item.interaction.context; - console.time(`serdes ${batchId} ${index}`); - const deserializedInteraction = JsonHelper.fromInteraction( - item.interaction.value - ); - console.timeEnd(`serdes ${batchId} ${index}`); - console.time(`diff ${batchId} ${index}`); - diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( - resolvers, - rfcState, - deserializedInteraction, - interactionPointerConverter.toPointer(item.interaction.value, { - interactionIndex: index, - batchId, - }), - diffs - ); - console.timeEnd(`diff ${batchId} ${index}`); - console.time(`count ${batchId} ${index}`); - undocumentedUrls = undocumentedUrlHelpers.countUndocumentedUrls( - deserializedInteraction, - undocumentedUrls + + batcher.on('batch', () => { + console.log('scheduling batch flush'); + queue.schedule(() => { + console.log('executing batch flush'); + return flush().catch((e) => { + notifyParentOfError(e); + }); + }); + }); + + const interactionPointerConverter = new LocalCaptureInteractionPointerConverter( + { + captureBaseDirectory: this.config.captureBaseDirectory, + captureId: this.config.captureId, + } ); - console.timeEnd(`count ${batchId} ${index}`); + + await fs.ensureDir(diffOutputPaths.base); + await flush(); + + for await (const item of interactionIterator) { + skippedInteractionsCounter = item.skippedInteractionsCounter; + diffedInteractionsCounter = item.diffedInteractionsCounter; + hasMoreInteractions = item.hasMoreInteractions; + if (!hasMoreInteractions) { + // @GOTCHA item.interaction.value should not be present when hasMoreInteractions is false + break; + } + if (!item.interaction) { + continue; + } + const { batchId, index } = item.interaction.context; + console.time(`serdes ${batchId} ${index}`); + const deserializedInteraction = JsonHelper.fromInteraction( + item.interaction.value + ); + console.timeEnd(`serdes ${batchId} ${index}`); + console.time(`diff ${batchId} ${index}`); + diffs = DiffHelpers.groupInteractionPointerByNormalizedDiffs( + resolvers, + rfcState, + deserializedInteraction, + interactionPointerConverter.toPointer(item.interaction.value, { + interactionIndex: index, + batchId, + }), + diffs + ); + console.timeEnd(`diff ${batchId} ${index}`); + console.time(`count ${batchId} ${index}`); + undocumentedUrls = undocumentedUrlHelpers.countUndocumentedUrls( + deserializedInteraction, + undocumentedUrls + ); + console.timeEnd(`count ${batchId} ${index}`); + batcher.add(null); + } + hasMoreInteractions = false; batcher.add(null); + } catch (e) { + notifyParentOfError(e); } - hasMoreInteractions = false; - batcher.add(null); } } diff --git a/workspaces/ui/src/contexts/CaptureContext.js b/workspaces/ui/src/contexts/CaptureContext.js index e3c78555e1..8f84243a32 100644 --- a/workspaces/ui/src/contexts/CaptureContext.js +++ b/workspaces/ui/src/contexts/CaptureContext.js @@ -148,8 +148,13 @@ export class CaptureStateStore extends React.Component { if (config.notificationsUrl) { notificationChannel = new EventSource(config.notificationsUrl); notificationChannel.onmessage = (event) => { - const { data } = JSON.parse(event.data); - this.state.reloadDebounce(data); + const { type, data } = JSON.parse(event.data); + if (type === 'message') { + this.state.reloadDebounce(data); + } else if (type === 'error') { + console.error(data); + debugger; + } }; notificationChannel.onerror = (e) => { console.error(e); From aee8764db9c08a8fca79b1d8d141cf10b4702b32 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Thu, 2 Jul 2020 10:09:20 -0400 Subject: [PATCH 54/85] New Design for Diff Review Page --- workspaces/ui/src/components/diff/v2/DiffReviewPage.js | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 workspaces/ui/src/components/diff/v2/DiffReviewPage.js diff --git a/workspaces/ui/src/components/diff/v2/DiffReviewPage.js b/workspaces/ui/src/components/diff/v2/DiffReviewPage.js new file mode 100644 index 0000000000..e69de29bb2 From a9fcfe70ee91d00588acbee7ea4ac945f87fdb96 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Thu, 2 Jul 2020 10:09:29 -0400 Subject: [PATCH 55/85] New Design for Diff Review Page --- .../scala/com/useoptic/CompareEquality.scala | 9 +- .../com/useoptic/ux/DiffResultHelper.scala | 83 ++++- .../components/diff/v2/CaptureManagerPage.js | 6 +- .../ui/src/components/diff/v2/CustomNavTab.js | 41 ++- .../ui/src/components/diff/v2/DiffCursor.js | 5 +- .../ui/src/components/diff/v2/DiffPageNew.js | 4 +- .../ui/src/components/diff/v2/DiffPreview.js | 2 +- .../components/diff/v2/DiffReviewExpanded.js | 4 +- .../src/components/diff/v2/DiffReviewPage.js | 346 ++++++++++++++++++ .../src/components/diff/v2/LoadingNextDiff.js | 35 ++ .../src/components/diff/v2/PathAndMethod.js | 176 +++++++-- workspaces/ui/src/components/shared/Show.js | 14 +- 12 files changed, 659 insertions(+), 66 deletions(-) diff --git a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala index 45d2964186..1350d1ce9d 100644 --- a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala +++ b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala @@ -43,6 +43,13 @@ object CompareEquality { } } def betweenSelectedDiffs(aBodyRegions: js.UndefOr[BodyDiff], bBodyRegions: js.UndefOr[BodyDiff]): Boolean = { - aBodyRegions.toOption != bBodyRegions.toOption + val a = aBodyRegions.toOption + val b = bBodyRegions.toOption + + if ( (a.isDefined && b.isEmpty) || (a.isEmpty && b.isDefined) ) { + false + } else { + a.map(_.diff) == b.map(_.diff) && a.map(_.firstInteractionPointer) == b.map(_.firstInteractionPointer) + } } } diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index b2f84bbc0f..20fa5bca23 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -1,5 +1,6 @@ package com.useoptic.ux +import com.useoptic.contexts.requests.Commands import com.useoptic.contexts.requests.Commands.PathComponentId import com.useoptic.contexts.requests.projections.AllEndpointsProjection import com.useoptic.contexts.rfc.RfcState @@ -12,6 +13,7 @@ import com.useoptic.diff.shapes.resolvers.ShapesResolvers import com.useoptic.dsa.OpticIds import com.useoptic.types.capture.{Body, HttpInteraction} import com.useoptic.dsa.OpticIds + import scala.scalajs.js.annotation.{JSExport, JSExportAll} import scala.util.Try @@ -79,7 +81,18 @@ object DiffResultHelper { } - def groupEndpointDiffsByRegion(diffs: Map[InteractionDiffResult, Seq[String]]): EndpointDiffGrouping = { + def groupEndpointDiffsByRegion(diffs: Map[InteractionDiffResult, Seq[String]], rfcState: RfcState, method: String, pathId: PathComponentId): EndpointDiffGrouping = { + + + val allRequests = rfcState.requestsState.requests.collect { + case (id, request) if !request.isRemoved && request.requestDescriptor.pathComponentId == pathId && request.requestDescriptor.httpMethod == method => request + } + + + val allResponses = rfcState.requestsState.responses.collect { + case (id, response) if !response.isRemoved && response.responseDescriptor.pathId == pathId && response.responseDescriptor.httpMethod == method => response + } + val regions = newRegionDiffs(diffs) val body = bodyDiffs(diffs) @@ -88,15 +101,51 @@ object DiffResultHelper { EndpointBodyDiffRegion(i._1, None, i._2.toVector) }) - val responseBodyDiffs = body.collect { case i if i.inResponse => i }.groupBy(i => (i.contentType, i.statusCode) ).map(i => { + val otherRequests = allRequests.flatMap(i => { + val contentTypeOption = i.requestDescriptor.bodyDescriptor match { + case Commands.UnsetBodyDescriptor() => None + case Commands.ShapedBodyDescriptor(httpContentType, shapeId, isRemoved) => Some(httpContentType) + } + if (requestBodyDiffs.exists(_.contentType == contentTypeOption)) { + None + } else { + Some(EndpointBodyDiffRegion(contentTypeOption, None, Seq.empty)) + } + }) + + + val collectResponses = body.collect { case i if i.inResponse => i }.groupBy(i => (i.contentType, i.statusCode) ).map(i => { val (ct, sc) = i._1 EndpointBodyDiffRegion(ct, sc, i._2.toVector) + }).groupBy(_.statusCode.get) + + val allKnownStatusCodes = allResponses.map(_.responseDescriptor.httpStatusCode).filterNot(sc => collectResponses.keySet.contains(sc)) + + val combinedResponses = (collectResponses ++ allKnownStatusCodes.map(i => (i, Iterable.empty))) + val responseBodyDiffs = combinedResponses.map(i => { + + val contentTypeResponses = i._2.toSeq + + val otherResponsesForStatusCode = allResponses.filter(_.responseDescriptor.httpStatusCode == i._1).flatMap(res => { + val contentTypeOption = res.responseDescriptor.bodyDescriptor match { + case Commands.UnsetBodyDescriptor() => None + case Commands.ShapedBodyDescriptor(httpContentType, _, __) => Some(httpContentType) + } + if (contentTypeResponses.exists(_.contentType == contentTypeOption)) { + None + } else { + Some(EndpointBodyDiffRegion(contentTypeOption, Some(i._1), Seq.empty)) + } + }) + + EndpointResponseRegion(i._1, (contentTypeResponses ++ otherResponsesForStatusCode).sortBy(_.contentType.getOrElse(""))) }) + EndpointDiffGrouping( - requestBodyDiffs.toVector, - responseBodyDiffs.toVector, + (requestBodyDiffs ++ otherRequests).toSeq.sortBy(_.contentType.getOrElse("")), + responseBodyDiffs.toSeq.sortBy(_.statusCode), regions ) } @@ -324,13 +373,35 @@ abstract class BodyDiff { @JSExportAll case class EndpointDiffGrouping(requestDiffs: Seq[EndpointBodyDiffRegion], - responseDiffs: Seq[EndpointBodyDiffRegion], + responseDiffs: Seq[EndpointResponseRegion], newRegions: Seq[NewRegionDiff]) { def hasNewRegions: Boolean = newRegions.nonEmpty def empty: Boolean = requestDiffs.isEmpty && responseDiffs.isEmpty && newRegions.isEmpty + + def newRegionsCount = newRegions.size + def requestCount = requestDiffs.size + def responseCount = responseDiffs.size + + def firstRequestIdWithDiff: Option[String] = requestDiffs.find(_.bodyDiffs.nonEmpty).map(_.id) + def firstResponseIdWithDiff: Option[String] = { + val all = responseDiffs.flatMap(_.regions) + all.find(_.bodyDiffs.nonEmpty).map(_.id) + } + + + def bodyDiffsForId(id: String): Seq[BodyDiff] = { + Seq(requestDiffs.find(_.id == id), responseDiffs.flatMap(_.regions).find(_.id == id)).flatten.headOption.map(_.bodyDiffs) + .getOrElse(Seq.empty) + } + +} +@JSExportAll +case class EndpointBodyDiffRegion(contentType: Option[String], statusCode: Option[Int], bodyDiffs: Seq[BodyDiff]) { + def id = s"${statusCode.toString} ${contentType.getOrElse("no_body")}" + def count = bodyDiffs.size } @JSExportAll -case class EndpointBodyDiffRegion(contentType: Option[String], statusCode: Option[Int], bodyDiffs: Vector[BodyDiff]) +case class EndpointResponseRegion(statusCode: Int, regions: Seq[EndpointBodyDiffRegion]) @JSExportAll case class PreviewShapeAndCommands(shape: Option[ShapeOnlyRenderHelper], suggestion: Option[InteractiveDiffInterpretation]) diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index ce839755c0..60a9925a3d 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -318,11 +318,7 @@ function RequestDiffWrapper(props) { return ( // sessionId={props.match.params.captureId} // specService={specService} -
-
- -
-
+ ); } diff --git a/workspaces/ui/src/components/diff/v2/CustomNavTab.js b/workspaces/ui/src/components/diff/v2/CustomNavTab.js index fe96bd2b76..b652e7211a 100644 --- a/workspaces/ui/src/components/diff/v2/CustomNavTab.js +++ b/workspaces/ui/src/components/diff/v2/CustomNavTab.js @@ -15,7 +15,9 @@ export const CustomNavTab = withStyles((theme) => { minWidth: 'inherit', fontWeight: 500, textAlign: 'left', - fontSize: theme.typography.pxToRem(16), + fontSize: theme.typography.pxToRem(13), + textOverflow: 'ellipsis', + whiteSpace: 'nowrap', marginRight: theme.spacing(2), '&:focus': { opacity: 1, @@ -26,3 +28,40 @@ export const CustomNavTab = withStyles((theme) => { }, }; })((props) => ); + +export const CustomNavTabDense = withStyles((theme) => { + return { + root: { + textTransform: 'none', + color: primary, + padding: 0, + marginTop: 5, + height: 20, + minHeight: 'inherit', + minWidth: 'inherit', + fontWeight: 500, + textAlign: 'left', + fontSize: theme.typography.pxToRem(12), + textOverflow: 'ellipsis', + whiteSpace: 'nowrap', + marginRight: theme.spacing(2), + '&:focus': { + opacity: 1, + }, + }, + wrapper: { + alignItems: 'flex-start', + }, + }; +})((props) => ( + +
{props.label}
+
{props.count}
+
+ } + /> +)); diff --git a/workspaces/ui/src/components/diff/v2/DiffCursor.js b/workspaces/ui/src/components/diff/v2/DiffCursor.js index e12e149ede..2cd55ed510 100644 --- a/workspaces/ui/src/components/diff/v2/DiffCursor.js +++ b/workspaces/ui/src/components/diff/v2/DiffCursor.js @@ -60,7 +60,8 @@ export class DiffCursor extends React.Component { this.props.selectedDiff || undefined, nextProps.selectedDiff || undefined ) || - this.state.showAllDiffs !== nextState.showAllDiffs + this.state.showAllDiffs !== nextState.showAllDiffs || + (nextProps.selectedDiff === null && nextProps.diffs.length > 0) ); } @@ -78,6 +79,8 @@ export class DiffCursor extends React.Component { const diffCount = diffs.length; const { showAllDiffs } = this.state; + console.log('rendering cursor ', { diffCount, selectedDiff }); + if (diffCount === 0 || !selectedDiff) { return null; } diff --git a/workspaces/ui/src/components/diff/v2/DiffPageNew.js b/workspaces/ui/src/components/diff/v2/DiffPageNew.js index 596390803e..902ef6efc1 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPageNew.js +++ b/workspaces/ui/src/components/diff/v2/DiffPageNew.js @@ -38,6 +38,7 @@ import { } from '../../../contexts/CaptureContext'; import { DiffLoading } from './LoadingNextDiff'; import { DiffCursor } from './DiffCursor'; +import { DiffReviewPage } from './DiffReviewPage'; const { diff, JsonHelper } = opticEngine.com.useoptic; const { helpers } = diff; @@ -103,7 +104,8 @@ function DiffPageNew(props) { inContextOfDiff={true} notFound={} > - + {/**/} + ); diff --git a/workspaces/ui/src/components/diff/v2/DiffPreview.js b/workspaces/ui/src/components/diff/v2/DiffPreview.js index 2b2cd55101..34a2dbbd7a 100644 --- a/workspaces/ui/src/components/diff/v2/DiffPreview.js +++ b/workspaces/ui/src/components/diff/v2/DiffPreview.js @@ -98,7 +98,7 @@ export default function DiffPreview() { } function _NewRegions(props) { - const { newRegions, ignoreDiff, endpointPurpose, method, fullPath } = props; + const { newRegions, ignoreDiff } = props; const classes = useStyles(); diff --git a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js index e540acc209..9323aea14d 100644 --- a/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js +++ b/workspaces/ui/src/components/diff/v2/DiffReviewExpanded.js @@ -24,6 +24,7 @@ import { BreadcumbX } from './DiffPreview'; import { primary } from '../../../theme'; import { useDiffDescription, useInteractionWithPointer } from './DiffHooks'; import LinearProgress from '@material-ui/core/LinearProgress'; +import { DiffReviewLoading } from './LoadingNextDiff'; const useStyles = makeStyles((theme) => ({ root: { @@ -72,7 +73,6 @@ export default (props) => { const { diff } = props; const ds = diff.toString(); - console.log('diff string ', ds); const description = useDiffDescription(diff); @@ -101,7 +101,7 @@ export default (props) => { ); if (!currentInteraction || !description) { - return null; + return ; } const { interaction, interactionScala } = currentInteraction; diff --git a/workspaces/ui/src/components/diff/v2/DiffReviewPage.js b/workspaces/ui/src/components/diff/v2/DiffReviewPage.js index e69de29bb2..f7a555bf70 100644 --- a/workspaces/ui/src/components/diff/v2/DiffReviewPage.js +++ b/workspaces/ui/src/components/diff/v2/DiffReviewPage.js @@ -0,0 +1,346 @@ +import React, { useContext, useEffect, useState } from 'react'; +import { DocDarkGrey, DocDivider } from '../../docs/DocConstants'; +import Tabs from '@material-ui/core/Tabs'; +import { CustomNavTab, CustomNavTabDense } from './CustomNavTab'; +import { makeStyles } from '@material-ui/core/styles'; +import Typography from '@material-ui/core/Typography'; +import Fab from '@material-ui/core/Fab'; +import DoneIcon from '@material-ui/icons/Done'; +import { EndpointsContext } from '../../../contexts/EndpointContext'; +import { PathAndMethod, PathAndMethodOverflowFriendly } from './PathAndMethod'; +import { CaptureContext } from '../../../contexts/CaptureContext'; +import { + DiffResultHelper, + getOrUndefined, + JsonHelper, + mapScala, +} from '@useoptic/domain'; +import { DiffContext } from './DiffContext'; +import { NewRegions } from './DiffPreview'; +import { DiffCursor } from './DiffCursor'; +import DiffReviewExpanded from './DiffReviewExpanded'; +import { RfcContext } from '../../../contexts/RfcContext'; +const newRegionsConst = 'new_regions'; + +export function DiffReviewPage(props) { + const { captureId, method, pathId } = props; + const classes = useStyles(); + + const { rfcId, rfcService } = useContext(RfcContext); + const rfcState = rfcService.currentState(rfcId); + + const { endpointDescriptor } = useContext(EndpointsContext); + const { + diffsForThisEndpoint, + completed, + setSelectedDiff, + selectedDiff, + } = useContext(DiffContext); + + const [currentTab, setCurrentTab] = useState(null); + + const regions = DiffResultHelper.groupEndpointDiffsByRegion( + diffsForThisEndpoint, + rfcState, + method, + pathId + ); + + useEffect(() => { + if (!currentTab) { + const firstRequestIdWithDiff = getOrUndefined( + regions.firstRequestIdWithDiff + ); + + const firstResponseIdWithDiff = getOrUndefined( + regions.firstResponseIdWithDiff + ); + + if (regions.newRegionCount > 0) { + setCurrentTab(newRegionsConst); + } else if (firstRequestIdWithDiff) { + setCurrentTab(firstRequestIdWithDiff); + } else if (firstResponseIdWithDiff) { + setCurrentTab(firstResponseIdWithDiff); + } + } + }); + + const requestBodyTabs = mapScala(regions.requestDiffs)((i) => { + return ( + + ); + }); + + const responseBodyTabs = mapScala(regions.responseDiffs)((i) => { + //must be flat for some reason. has to do with tab context and a material UI bug + return [ + + {i.statusCode} Response Body + , + mapScala(i.regions)((c) => { + return ( + + ); + }), + , + ]; + }); + + return ( +
+
+
+
+ + {endpointDescriptor.endpointPurpose} + + +
+ + + +
+ { + setSelectedDiff(null); + setCurrentTab(value); + }} + value={currentTab} + > + + + + {regions.requestCount && ( + + Request Body Diffs + + )} + + {requestBodyTabs} + + {regions.requestCount && ( + + )} + + {responseBodyTabs} + +
+
+
+
+
+ {currentTab === newRegionsConst && ( + + )} + + {currentTab && currentTab !== newRegionsConst && ( + <> + + {selectedDiff && } + + )} + + + + Finalize + +
+
+
+ ); +} + +const useStyles = makeStyles((theme) => ({ + container: { + display: 'flex', + height: '100vh', + overflow: 'hidden', + }, + navigationContainer: { + width: 230, + overflow: 'hidden', + display: 'flex', + }, + pageContainer: { + display: 'flex', + flex: 1, + overflow: 'scroll', + height: '100vh', + justifyContent: 'center', + }, + navRoot: { + flexGrow: 1, + position: 'fixed', + width: 'inherit', + height: '100vh', + overflowY: 'scroll', + display: 'flex', + flexDirection: 'column', + borderRight: `1px solid ${theme.palette.grey[300]}`, + background: theme.palette.grey[100], + }, + chips: { + marginLeft: 10, + }, + tabScroll: { + paddingTop: 16, + flexGrow: 1, + flexShirnk: 1, + overflow: 'scroll', + }, + tabs: { + marginLeft: theme.spacing(2), + }, + indent: { + display: 'flex', + flexDirection: 'column', + marginLeft: theme.spacing(1), + }, + center: { + flex: 1, + paddingBottom: 300, + maxWidth: 1200, + paddingLeft: 20, + paddingRight: 20, + paddingTop: 22, + }, + statsSection: { + paddingBottom: theme.spacing(2), + }, + progressStats: { + paddingLeft: theme.spacing(1), + color: DocDarkGrey, + }, + progressWrapper: { + height: 6, + width: '100%', + }, + header: { + display: 'flex', + flexDirection: 'column', + flexShrink: 1, + width: '100%', + alignItems: 'center', + justifyContent: 'center', + paddingBottom: 6, + margin: theme.spacing(1), + }, + formControl: { + paddingLeft: 35, + paddingRight: 15, + }, + selectEmpty: { + marginTop: theme.spacing(2), + }, + stats: { + marginTop: 20, + paddingBottom: 15, + alignItems: 'center', + display: 'flex', + justifyContent: 'center', + flexDirection: 'row', + }, + subStat: { + paddingBottom: 15, + alignItems: 'center', + display: 'flex', + justifyContent: 'center', + flexDirection: 'row', + }, + listItemInner: { + display: 'flex', + flexDirection: 'column', + }, + row: { + marginBottom: 11, + }, + disabled: { + pointerEvents: 'none', + opacity: 0.5, + }, + paper: { + marginBottom: 15, + }, + diffContainer: { + display: 'flex', + height: '100vh', + paddingLeft: 32, + paddingRight: 32, + flexDirection: 'row', + overflow: 'scroll', + flexGrow: 1, + flexShrink: 1, + justifyContent: 'center', + }, + diffWrapper: { + flex: 1, + padding: '24px 0px 144px', + maxWidth: 1280, + }, + sectionHeader: { + fontWeight: 400, + fontSize: 11, + color: DocDarkGrey, + }, + fab: { + position: 'fixed', + bottom: 15, + right: 15, + }, + fabLabel: { + paddingRight: 8, + }, + title: { + fontSize: 14, + padding: 7, + textAlign: 'center', + marginBottom: 4, + }, +})); diff --git a/workspaces/ui/src/components/diff/v2/LoadingNextDiff.js b/workspaces/ui/src/components/diff/v2/LoadingNextDiff.js index b2fa7b29ae..56297551fb 100644 --- a/workspaces/ui/src/components/diff/v2/LoadingNextDiff.js +++ b/workspaces/ui/src/components/diff/v2/LoadingNextDiff.js @@ -39,10 +39,45 @@ export function DiffLoading({ show }) { ); } +export function DiffReviewLoading({ show }) { + const classes = useStyles(); + + if (!show) { + return null; + } + + return ( +
+
+ + + Loading Example and Diff... + + +
+ +
+
+ ); +} + const useStyles = makeStyles((theme) => ({ root: { width: '100%', }, + rootUnder: { + width: '100%', + marginTop: 70, + }, text: { margin: '0 auto', fontSize: 20, diff --git a/workspaces/ui/src/components/diff/v2/PathAndMethod.js b/workspaces/ui/src/components/diff/v2/PathAndMethod.js index f073b84e1b..cc42726363 100644 --- a/workspaces/ui/src/components/diff/v2/PathAndMethod.js +++ b/workspaces/ui/src/components/diff/v2/PathAndMethod.js @@ -1,52 +1,148 @@ import React from 'react'; import Typography from '@material-ui/core/Typography'; -import {methodColorsDark} from '../../docs/DocConstants'; +import { methodColorsDark } from '../../docs/DocConstants'; +import { LightTooltip } from '../../tooltips/LightTooltip'; -export const PathAndMethod = ({path, method}) => { - - const methodRender = {method.toUpperCase()}; - const pathRender = {path}; +export const PathAndMethod = ({ path, method }) => { + const methodRender = ( + + {method.toUpperCase()} + + ); + const pathRender = ( + + {path} + + ); - return ( {methodRender} {pathRender} ); + return ( + + {' '} + {methodRender} {pathRender}{' '} + + ); }; -export const PathAndMethodLarge = ({path, method}) => { - - const methodRender = {method.toUpperCase()}; - const pathRender = {path}; +export const PathAndMethodOverflowFriendly = ({ path, method }) => { + const methodRender = ( + + {method.toUpperCase()} + + ); + const pathRender = ( + + {path} + + ); - return ( {methodRender} {pathRender} ); + return ( + }> +
+ {' '} + {methodRender} {pathRender}{' '} +
+
+ ); }; +export const PathAndMethodLarge = ({ path, method }) => { + const methodRender = ( + + {method.toUpperCase()} + + ); + const pathRender = ( + + {path} + + ); + + return ( + + {' '} + {methodRender} {pathRender}{' '} + + ); +}; -export const SquareChip = ({label, color, bgColor, style}) => { - return ({label} +export const SquareChip = ({ label, color, bgColor, style }) => { + return ( + + {label} + ); }; diff --git a/workspaces/ui/src/components/shared/Show.js b/workspaces/ui/src/components/shared/Show.js index 6c82f81c90..adfff1243b 100644 --- a/workspaces/ui/src/components/shared/Show.js +++ b/workspaces/ui/src/components/shared/Show.js @@ -1,17 +1,15 @@ import React from 'react'; -export function Show({when, children, style}) { +export function Show({ when, children, style }) { return ( -
- {when && children} -
- ) +
{when && children}
+ ); } -export function ShowSpan({when, children, style}) { +export function ShowSpan({ when, children, style }) { return ( - + {when && children} - ) + ); } From ad3a97079c42a0164800122c44e60cfa6a3798a8 Mon Sep 17 00:00:00 2001 From: Aidan Cunniffe Date: Fri, 3 Jul 2020 16:07:43 -0400 Subject: [PATCH 56/85] new UX for diff review page --- .../scala/com/useoptic/CompareEquality.scala | 7 +- .../DistributionAwareShapeBuilder.scala | 64 ++-- .../BasicInterpretations.scala | 3 +- .../interpreters/BasicInterpreters.scala | 2 + .../MissingValueInterpreter.scala | 3 +- .../UnspecifiedShapeDiffInterpreter.scala | 5 +- .../scala/com/useoptic/ux/DiffManager.scala | 4 + .../scala/com/useoptic/ux/DiffPreviewer.scala | 7 +- .../com/useoptic/ux/DiffResultHelper.scala | 67 +++- .../diff/helpers/DiffHelpersSpec.scala | 8 +- .../DistributionAwareShapeBuilderSpec.scala | 28 +- .../diff/interactions/DiffVisitorSpec.scala | 6 +- .../BasicInterpretationsSpec.scala | 16 +- .../useoptic/diff/shapes/ResolverSpec.scala | 7 +- .../end_to_end/fixtures/ShapeExamples.scala | 4 +- .../com/useoptic/ux/DiffPreviewerSpec.scala | 4 +- .../components/diff/v2/CaptureManagerPage.js | 127 +++++-- .../ui/src/components/diff/v2/DiffContext.js | 36 -- .../ui/src/components/diff/v2/DiffCursor.js | 152 +++------ .../src/components/diff/v2/DiffHelperCard.js | 17 +- .../ui/src/components/diff/v2/DiffHooks.js | 12 +- .../v2/{DiffPreview.js => DiffNewRegions.js} | 311 +++++++++--------- .../ui/src/components/diff/v2/DiffPageNew.js | 256 +------------- .../components/diff/v2/DiffReviewExpanded.js | 60 ++-- .../src/components/diff/v2/DiffReviewPage.js | 148 ++++++--- .../ui/src/components/diff/v2/Finalize.js | 172 ++++++++++ .../src/components/diff/v2/LoadingNextDiff.js | 42 +++ workspaces/ui/src/components/diff/v2/Stats.js | 51 +++ workspaces/ui/src/components/docs/DocsPage.js | 2 +- workspaces/ui/src/contexts/EndpointContext.js | 39 ++- .../src/services/diff/LocalCliDiffService.ts | 4 +- 31 files changed, 892 insertions(+), 772 deletions(-) rename workspaces/ui/src/components/diff/v2/{DiffPreview.js => DiffNewRegions.js} (69%) create mode 100644 workspaces/ui/src/components/diff/v2/Finalize.js create mode 100644 workspaces/ui/src/components/diff/v2/Stats.js diff --git a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala index 1350d1ce9d..16c608586d 100644 --- a/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala +++ b/core/optic/js/src/main/scala/com/useoptic/CompareEquality.scala @@ -14,8 +14,6 @@ object CompareEquality { def between(a: InteractionDiffResult, b: InteractionDiffResult): Boolean = a == b def between(a: DiffResult, b: DiffResult): Boolean = a == b def between(a: ShapeDiffResult, b: ShapeDiffResult): Boolean = a == b - def between(a: DiffBlock, b: DiffBlock): Boolean = a == b - def between(a: BodyShapeDiffBlock, b: BodyShapeDiffBlock): Boolean = a == b def between(a: InteractiveDiffInterpretation, b: InteractiveDiffInterpretation): Boolean = a == b def betweenWithoutCommands(a: InteractiveDiffInterpretation, b: InteractiveDiffInterpretation): Boolean = { @@ -42,6 +40,11 @@ object CompareEquality { false } } + + def containsDiff(bodyDiffs: js.Array[BodyDiff], diff: BodyDiff): Boolean = { + bodyDiffs.contains(diff) + } + def betweenSelectedDiffs(aBodyRegions: js.UndefOr[BodyDiff], bBodyRegions: js.UndefOr[BodyDiff]): Boolean = { val a = aBodyRegions.toOption val b = bBodyRegions.toOption diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilder.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilder.scala index 923de96a39..2a8ee08dd1 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilder.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilder.scala @@ -14,9 +14,9 @@ import scala.util.Random object DistributionAwareShapeBuilder { - def streaming(implicit ids: OpticDomainIds) = new StreamingShapeBuilder() + def streaming(implicit ids: OpticDomainIds, shapeBuildingStrategy: ShapeBuildingStrategy) = new StreamingShapeBuilder() - def toCommands(bodies: Vector[JsonLike])(implicit ids: OpticDomainIds): (ShapeId, ImmutableCommandStream) = { + def toCommands(bodies: Vector[JsonLike])(implicit ids: OpticDomainIds, shapeBuildingStrategy: ShapeBuildingStrategy): (ShapeId, ImmutableCommandStream) = { val aggregator = aggregateTrailsAndValues(bodies) @@ -101,9 +101,9 @@ object DistributionAwareShapeBuilder { } } - def aggregateTrailsAndValues(bodies: Vector[JsonLike])(implicit ids: OpticDomainIds): TrailValueMap = { + def aggregateTrailsAndValues(bodies: Vector[JsonLike])(implicit ids: OpticDomainIds, shapeBuildingStrategy: ShapeBuildingStrategy): TrailValueMap = { - val aggregator = new TrailValueMap() + val aggregator = new TrailValueMap(shapeBuildingStrategy) val visitor = new ShapeBuilderVisitor(aggregator) @@ -117,9 +117,9 @@ object DistributionAwareShapeBuilder { def toShapes(trailValues: TrailValueMap): ShapesToMake = trailValues.getRoot.toShape } -class StreamingShapeBuilder()(implicit ids: OpticDomainIds) { +class StreamingShapeBuilder()(implicit ids: OpticDomainIds, shapeBuildingStrategy: ShapeBuildingStrategy) { - private val aggregator = new TrailValueMap() + private val aggregator = new TrailValueMap(shapeBuildingStrategy) private val visitor = new ShapeBuilderVisitor(aggregator) private val jsonLikeTraverser = new JsonLikeTraverser(RfcState.empty, visitor) @@ -148,8 +148,15 @@ case class FieldWithShape(key: String, shape: ShapesToMake, trail: JsonTrail, id case class PrimitiveKind(baseShape: CoreShapeKind, trail: JsonTrail, id: String) extends ShapesToMake case class Unknown(trail: JsonTrail, id: String) extends ShapesToMake +/// Strategy +case class ShapeBuildingStrategy(learnFromFirstOccurrenceOnly: Boolean) +object ShapeBuildingStrategy { + val learnASingleInteraction = ShapeBuildingStrategy(true) + val inferPolymorphism = ShapeBuildingStrategy(false) +} + -class TrailValueMap()(implicit ids: OpticDomainIds) { +class TrailValueMap(strategy: ShapeBuildingStrategy)(implicit ids: OpticDomainIds) { class ValueAffordanceMap(var trail: JsonTrail) { @@ -239,27 +246,32 @@ class TrailValueMap()(implicit ids: OpticDomainIds) { private val _internal = scala.collection.mutable.Map[JsonTrail, ValueAffordanceMap]() def putValue(trail: JsonTrail, value: JsonLike): Unit = { - val affordanceMap = _internal.getOrElseUpdate(trail, new ValueAffordanceMap(trail)) - if (value.isString) { - affordanceMap.wasString = true - } - if (value.isNumber) { - affordanceMap.wasNumber = true - } - if (value.isBoolean) { - affordanceMap.wasBoolean = true - } - if (value.isNull) { - affordanceMap.wasNull = true - } - if (value.isArray) { - affordanceMap.wasArray = true - } - if (value.isObject) { - affordanceMap.touchObject(value.fields.keySet) - } + if (_internal.get(trail).isDefined && strategy.learnFromFirstOccurrenceOnly) { + return Unit + } else { + val affordanceMap = _internal.getOrElseUpdate(trail, new ValueAffordanceMap(trail)) + + if (value.isString) { + affordanceMap.wasString = true + } + if (value.isNumber) { + affordanceMap.wasNumber = true + } + if (value.isBoolean) { + affordanceMap.wasBoolean = true + } + if (value.isNull) { + affordanceMap.wasNull = true + } + if (value.isArray) { + affordanceMap.wasArray = true + } + if (value.isObject) { + affordanceMap.touchObject(value.fields.keySet) + } + } } def getRoot: ValueAffordanceMap = _internal(JsonTrail(Seq.empty)) diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretations.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretations.scala index 7b63668c39..51feee1e7d 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretations.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretations.scala @@ -8,7 +8,7 @@ import com.useoptic.contexts.shapes.Commands.{FieldShapeFromShape, ProviderInSha import com.useoptic.contexts.shapes.ShapesHelper.{ListKind, ObjectKind} import com.useoptic.contexts.shapes.{ShapesAggregate, ShapesHelper, Commands => ShapesCommands} import com.useoptic.diff.{ChangeType, InteractiveDiffInterpretation} -import com.useoptic.diff.initial.{DistributionAwareShapeBuilder} +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.diff.interactions.interpreters.DiffDescriptionInterpreters import com.useoptic.diff.interactions.{BodyUtilities, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers} import com.useoptic.diff.shapes.{JsonTrail, ListItemTrail, ListTrail, ObjectFieldTrail, ObjectTrail, OneOfItemTrail, ShapeTrail, UnknownTrail} @@ -21,6 +21,7 @@ import com.useoptic.types.capture.{HttpInteraction, JsonLikeFrom} class BasicInterpretations(rfcState: RfcState)(implicit ids: OpticDomainIds) { private val descriptionInterpreters = new DiffDescriptionInterpreters(rfcState) + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.learnASingleInteraction def AddResponse(interactionTrail: InteractionTrail, requestsTrail: RequestSpecTrail): InteractiveDiffInterpretation = { val requestId = RequestSpecTrailHelpers.requestId(requestsTrail).get diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/BasicInterpreters.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/BasicInterpreters.scala index 4df925ea48..bb66fe0068 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/BasicInterpreters.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/BasicInterpreters.scala @@ -2,6 +2,7 @@ package com.useoptic.diff.interactions.interpreters import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.InteractiveDiffInterpretation +import com.useoptic.diff.initial.ShapeBuildingStrategy import com.useoptic.diff.interactions.interpretations.BasicInterpretations import com.useoptic.diff.interactions._ import com.useoptic.diff.interpreters.InteractiveDiffInterpreter @@ -14,6 +15,7 @@ import scala.scalajs.js.annotation.{JSExport, JSExportAll} @JSExport @JSExportAll class BasicInterpreters(rfcState: RfcState)(implicit ids: OpticDomainIds) extends InteractiveDiffInterpreter[InteractionDiffResult] { + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.learnASingleInteraction override def interpret(diff: InteractionDiffResult, interactions: Vector[HttpInteraction]): Seq[InteractiveDiffInterpretation] = { val interpretations = new BasicInterpretations(rfcState) diff match { diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/MissingValueInterpreter.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/MissingValueInterpreter.scala index 44958709b7..1641015a1e 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/MissingValueInterpreter.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/MissingValueInterpreter.scala @@ -4,7 +4,7 @@ import com.useoptic.contexts.rfc.RfcState import com.useoptic.contexts.shapes.Commands._ import com.useoptic.contexts.shapes.{Commands, ShapesAggregate} import com.useoptic.contexts.shapes.ShapesHelper.{ListKind, NullableKind, OneOfKind, OptionalKind} -import com.useoptic.diff.initial.DistributionAwareShapeBuilder +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.diff.interactions.interpretations.BasicInterpretations import com.useoptic.diff.{ChangeType, InteractiveDiffInterpretation} import com.useoptic.diff.interactions._ @@ -19,6 +19,7 @@ class MissingValueInterpreter(rfcState: RfcState)(implicit ids: OpticDomainIds) private val basicInterpretations = new BasicInterpretations(rfcState) private val descriptionInterpreters = new DiffDescriptionInterpreters(rfcState) + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.learnASingleInteraction override def interpret(diff: InteractionDiffResult, interaction: HttpInteraction): Seq[InteractiveDiffInterpretation] = { diff match { diff --git a/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/UnspecifiedShapeDiffInterpreter.scala b/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/UnspecifiedShapeDiffInterpreter.scala index 4c5688a83a..b9930dfe23 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/UnspecifiedShapeDiffInterpreter.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/diff/interactions/interpreters/UnspecifiedShapeDiffInterpreter.scala @@ -4,7 +4,7 @@ import com.useoptic.contexts.rfc.RfcState import com.useoptic.contexts.shapes.Commands.{AddField, FieldShapeFromShape, ProviderInShape, SetParameterShape, ShapeProvider} import com.useoptic.contexts.shapes.{ShapesAggregate, ShapesHelper} import com.useoptic.contexts.shapes.ShapesHelper.{ListKind, ObjectKind, UnknownKind} -import com.useoptic.diff.initial.DistributionAwareShapeBuilder +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.diff.{ChangeType, InteractiveDiffInterpretation} import com.useoptic.diff.interactions.{InteractionDiffResult, InteractionTrail, UnmatchedRequestBodyShape, UnmatchedResponseBodyShape} import com.useoptic.diff.interpreters.InteractiveDiffInterpreter @@ -16,6 +16,9 @@ import com.useoptic.logging.Logger import com.useoptic.types.capture.HttpInteraction class UnspecifiedShapeDiffInterpreter(resolvers: ShapesResolvers, rfcState: RfcState)(implicit ids: OpticDomainIds) extends InteractiveDiffInterpreter[InteractionDiffResult] { + + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.learnASingleInteraction + override def interpret(diff: InteractionDiffResult, interaction: HttpInteraction): Seq[InteractiveDiffInterpretation] = { diff match { case d: UnmatchedRequestBodyShape => { diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffManager.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffManager.scala index 820f8867d8..7bd63efc33 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffManager.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffManager.scala @@ -6,6 +6,7 @@ import com.useoptic.contexts.requests.Utilities import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.{ChangeType, DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.helpers.DiffHelpers +import com.useoptic.diff.initial.ShapeBuildingStrategy import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescriptionInterpreters} import com.useoptic.diff.interactions.{BodyUtilities, InteractionDiffResult, InteractionTrail, RequestSpecTrail, RequestSpecTrailHelpers, Resolvers, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, SpecRoot, UnmatchedRequestBodyContentType, UnmatchedRequestBodyShape, UnmatchedRequestMethod, UnmatchedRequestUrl, UnmatchedResponseBodyContentType, UnmatchedResponseBodyShape, UnmatchedResponseStatusCode} import com.useoptic.diff.shapes.ShapeDiffResult @@ -264,6 +265,9 @@ class DiffManager(initialInteractions: Seq[HttpInteraction], onUpdated: () => Un @JSExportAll abstract class PathAndMethodDiffManager(pathComponentId: PathComponentId, httpMethod: String)(implicit val interactionsGroupedByDiffs: DiffsToInteractionsMap, ungroupedShapeDiffs: Set[ShapeDiffResult], rfcState: RfcState, resolvers: ShapesResolvers, diffPreviewer: DiffPreviewer) { + + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism + def updatedRfcState(rfcState: RfcState, resolvers: ShapesResolvers): Unit def suggestionsForDiff(diff: InteractionDiffResult, interactions: Vector[HttpInteraction]): Seq[InteractiveDiffInterpretation] = { diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffPreviewer.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffPreviewer.scala index 7a6e8232c0..24baaeaf09 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffPreviewer.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffPreviewer.scala @@ -7,7 +7,7 @@ import com.useoptic.contexts.shapes.ShapesHelper._ import com.useoptic.contexts.shapes.{ShapeEntity, ShapesHelper} import com.useoptic.ddd.InMemoryEventStore import com.useoptic.diff.DiffResult -import com.useoptic.diff.initial.DistributionAwareShapeBuilder +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.diff.interactions.BodyUtilities import com.useoptic.diff.shapes.JsonTrailPathComponent.{JsonArrayItem, JsonObjectKey} import com.useoptic.diff.shapes.Stuff.{ArrayItemChoiceCallback, ObjectKeyChoiceCallback} @@ -80,13 +80,14 @@ class DiffPreviewer(resolvers: ShapesResolvers, spec: RfcState) { }) } - def shapeOnlyFromShapeBuilder(bodies: Vector[JsonLike]): Option[(Vector[RfcCommand], ShapeOnlyRenderHelper)] = { + def shapeOnlyFromShapeBuilder(bodies: Vector[JsonLike])(implicit shapeBuildingStrategy: ShapeBuildingStrategy): Option[(Vector[RfcCommand], ShapeOnlyRenderHelper)] = { if (bodies.isEmpty) { return None } - val (shapeId, commands) = DistributionAwareShapeBuilder.toCommands(bodies)(ids = OpticIds.generator) + + val (shapeId, commands) = DistributionAwareShapeBuilder.toCommands(bodies)(ids = OpticIds.generator, shapeBuildingStrategy) val flattenedCommands = commands.flatten val simulatedId = "simulated" diff --git a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala index 20fa5bca23..bcbd0c64e9 100644 --- a/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala +++ b/core/optic/shared/src/main/scala/com/useoptic/ux/DiffResultHelper.scala @@ -4,9 +4,11 @@ import com.useoptic.contexts.requests.Commands import com.useoptic.contexts.requests.Commands.PathComponentId import com.useoptic.contexts.requests.projections.AllEndpointsProjection import com.useoptic.contexts.rfc.RfcState +import com.useoptic.diff.helpers.DiffHelpers import com.useoptic.diff.{DiffResult, InteractiveDiffInterpretation} import com.useoptic.diff.helpers.DiffHelpers.InteractionPointersGroupedByDiff import com.useoptic.diff.helpers.UndocumentedUrlHelpers.UrlCounter +import com.useoptic.diff.initial.ShapeBuildingStrategy import com.useoptic.diff.interactions.interpreters.{DefaultInterpreters, DiffDescription, DiffDescriptionInterpreters} import com.useoptic.diff.interactions._ import com.useoptic.diff.shapes.resolvers.ShapesResolvers @@ -15,7 +17,7 @@ import com.useoptic.types.capture.{Body, HttpInteraction} import com.useoptic.dsa.OpticIds import scala.scalajs.js.annotation.{JSExport, JSExportAll} -import scala.util.Try +import scala.util.{Random, Try} @JSExport @JSExportAll @@ -29,18 +31,22 @@ object DiffResultHelper { Vector.empty } - def splitUnmatchedUrls(urls: Seq[NewEndpoint]): SplitUndocumentedUrls = { + def splitUnmatchedUrls(urls: Seq[NewEndpoint], endpointDiffs: Seq[EndpointDiffs]): SplitUndocumentedUrls = { val random = scala.util.Random random.setSeed(stableRandomSeed) + val undocumented = endpointDiffs.collect { + case endpoint if !endpoint.isDocumentedEndpoint => NewEndpoint("", endpoint.method, Some(endpoint.pathId), endpoint.count) + } + if (urls.size > 250) { import com.useoptic.utilities.DistinctBy._ //known paths should of course get preference val knownPaths = urls.filter(_.pathId.isDefined).distinctByIfDefined(i => (Some(i.pathId, i.method))) val urlsToShow = random.shuffle(urls).take(250 - knownPaths.length) - SplitUndocumentedUrls( (knownPaths ++ urlsToShow).toVector.sortBy(_.count).reverse, urls.size, urls.map(_.path).distinct) + SplitUndocumentedUrls( (knownPaths ++ urlsToShow).toVector.sortBy(_.count).reverse, undocumented, urls.size, urls.map(_.path).distinct) } else { - SplitUndocumentedUrls(urls.sortBy(_.count).reverse, urls.size, urls.map(_.path).distinct) + SplitUndocumentedUrls(urls.sortBy(_.count).reverse, undocumented, urls.size, urls.map(_.path).distinct) } } @@ -51,7 +57,9 @@ object DiffResultHelper { .getOrElse(Map.empty) } - def endpointDiffs(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Vector[EndpointDiffs] = { + def endpointDiffs(diffs: InteractionPointersGroupedByDiff, rfcState: RfcState): Seq[EndpointDiffs] = { + + val allEndpoints = AllEndpointsProjection.fromRfcState(rfcState) val endpointsFromDiff = { diffs.filterNot { @@ -60,12 +68,13 @@ object DiffResultHelper { case _ => false }.flatMap { case (diff, interactionPointers) => getLocationForDiff(diff, rfcState).map(location => { - EndpointDiffs(location.method, location.pathId, Map(diff -> interactionPointers)) + EndpointDiffs(location.method, location.pathId, Map(diff -> interactionPointers), true) }) }.groupBy(i => (i.pathId, i.method)).map { case ((path, method), diffs) => { - val diffsForTHisOne = diffs.flatMap(_.diffs).toMap - EndpointDiffs(method, path, diffsForTHisOne) + val diffsForThisOne = diffs.flatMap(_.diffs).toMap + val isADocumentedEndpoint = allEndpoints.exists(i => i.pathId == path && i.method == method) + EndpointDiffs(method, path, diffsForThisOne, isADocumentedEndpoint) } } }.toVector @@ -73,7 +82,7 @@ object DiffResultHelper { val additionalEndpointsWithoutDiffs = AllEndpointsProjection.fromRfcState(rfcState).collect { //collect other endpoints we know exist, that don't have a diff case endpoint if !endpointsFromDiff.exists(i => i.pathId == endpoint.pathId && i.method == endpoint.method) => { - EndpointDiffs(endpoint.method, endpoint.pathId, Map.empty /* always empty */) + EndpointDiffs(endpoint.method, endpoint.pathId, Map.empty /* always empty */, true) } } @@ -152,6 +161,7 @@ object DiffResultHelper { def interactionsWithDiffsCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.flatMap(_._2).toSet.size def diffCount(diffs: Map[InteractionDiffResult, Seq[String]]): Int = diffs.size + def diffAndInteractionsCount(diffs: Map[InteractionDiffResult, Seq[String]]): String = s"Diffs: ${diffs.size}, Interactions: ${diffs.values.map(_.size).sum}" def newRegionDiffs(diffs: Map[InteractionDiffResult, Seq[String]]): Seq[NewRegionDiff] = { val newRegions = diffs.filterKeys { @@ -248,20 +258,37 @@ object DiffResultHelper { }.toOption def previewDiff(bodyDiff: BodyDiff, anInteraction: HttpInteraction, currentRfcState: RfcState): Option[SideBySideRenderHelper] = { + val simulatedDiffPreviewer = new DiffPreviewer(currentRfcState) - val diff = bodyDiff.diff.asInstanceOf[InteractionDiffResult] + + val targetDiff = bodyDiff.diff.asInstanceOf[InteractionDiffResult] + + val denormalized = denormalizeDiff(targetDiff, currentRfcState, anInteraction) + + if (denormalized.isEmpty) { + println("COULD NOT DE-NORMALIZE DIFF" + bodyDiff.diff) + return None + } + + val firstDiff = denormalized.minBy(_.interactionTrail.toString) // in theory this will make the first diff the first in the trail (all else being equal) + //@todo review this interface - def previewForBodyAndDiff(body: Body) = { + def previewForBodyAndDiff(body: Body): Option[SideBySideRenderHelper] = { simulatedDiffPreviewer.previewDiff( BodyUtilities.parseBody(body), - Some(diff.shapeDiffResultOption.get.shapeTrail.rootShapeId), - Set(diff.shapeDiffResultOption).flatten, + Some(firstDiff.shapeDiffResultOption.get.shapeTrail.rootShapeId), + denormalized.flatMap(_.shapeDiffResultOption), Set.empty) } previewForBodyAndDiff(if (bodyDiff.inRequest) anInteraction.request.body else anInteraction.response.body) } + def denormalizeDiff(targetDiff: InteractionDiffResult, rfcState: RfcState, anInteraction: HttpInteraction): Set[InteractionDiffResult] = { + val diffs = DiffHelpers.groupByDiffs(ShapesResolvers.newResolver(rfcState), rfcState, Vector(anInteraction)) + diffs.keySet.filter(i => i.normalize() == targetDiff) // only return diffs that normalize to normalized diff + } + def previewBody(body: Body, currentRfcState: RfcState): Option[SideBySideRenderHelper] = { val simulatedDiffPreviewer = new DiffPreviewer(currentRfcState) simulatedDiffPreviewer.previewBody(body) @@ -281,7 +308,7 @@ object DiffResultHelper { @JSExportAll case class NewEndpoint(path: String, method: String, pathId: Option[PathComponentId], count: Int) @JSExportAll -case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[InteractionDiffResult, Seq[String]]) { +case class EndpointDiffs(method: String, pathId: PathComponentId, diffs: Map[InteractionDiffResult, Seq[String]], isDocumentedEndpoint: Boolean) { def count = diffs.keys.size } @@ -304,6 +331,8 @@ abstract class NewRegionDiff { def firstInteractionPointer: String = interactionPointers.head def interactionsCount: Int = interactionPointers.size + def randomPointers: Seq[String] = Random.shuffle(interactionPointers).take(100) + def previewBodyRender(currentInteraction: HttpInteraction): Option[SideBySideRenderHelper] = { val body = if (inRequest) { currentInteraction.request.body @@ -328,9 +357,11 @@ abstract class NewRegionDiff { if (inferPolymorphism) { val bodies = interactions.map(getBody).flatMap(BodyUtilities.parseBody) + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism val preview = diffPreviewer.shapeOnlyFromShapeBuilder(bodies) PreviewShapeAndCommands(preview.map(_._2), toSuggestion(Vector(interactions.head), rfcState, inferPolymorphism).headOption) } else { + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.learnASingleInteraction val preview = diffPreviewer.shapeOnlyFromShapeBuilder(Vector(BodyUtilities.parseBody(getBody(firstInteraction))).flatten) PreviewShapeAndCommands(preview.map(_._2), toSuggestion(interactions, rfcState, inferPolymorphism).headOption) } @@ -376,11 +407,11 @@ case class EndpointDiffGrouping(requestDiffs: Seq[EndpointBodyDiffRegion], responseDiffs: Seq[EndpointResponseRegion], newRegions: Seq[NewRegionDiff]) { def hasNewRegions: Boolean = newRegions.nonEmpty - def empty: Boolean = requestDiffs.isEmpty && responseDiffs.isEmpty && newRegions.isEmpty + def empty: Boolean = requestDiffs.flatMap(_.bodyDiffs).isEmpty && responseDiffs.flatMap(_.regions.flatMap(_.bodyDiffs)).isEmpty && newRegions.isEmpty def newRegionsCount = newRegions.size - def requestCount = requestDiffs.size - def responseCount = responseDiffs.size + def requestCount = requestDiffs.flatMap(_.bodyDiffs).size + def responseCount = responseDiffs.flatMap(_.regions.flatMap(_.bodyDiffs)).size def firstRequestIdWithDiff: Option[String] = requestDiffs.find(_.bodyDiffs.nonEmpty).map(_.id) def firstResponseIdWithDiff: Option[String] = { @@ -408,6 +439,6 @@ case class PreviewShapeAndCommands(shape: Option[ShapeOnlyRenderHelper], suggest @JSExportAll -case class SplitUndocumentedUrls(urls: Seq[NewEndpoint], totalCount: Int, allPaths: Seq[String]) { +case class SplitUndocumentedUrls(urls: Seq[NewEndpoint], undocumented: Seq[NewEndpoint], totalCount: Int, allPaths: Seq[String]) { def showing: Int = urls.length } diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/DiffHelpersSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/DiffHelpersSpec.scala index 693968eadd..88d18971b6 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/DiffHelpersSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/helpers/DiffHelpersSpec.scala @@ -4,7 +4,7 @@ import com.useoptic.contexts.requests.Commands.ShapedBodyDescriptor import com.useoptic.contexts.requests.{Commands => RequestsCommands} import com.useoptic.contexts.rfc.Commands.RfcCommand import com.useoptic.contexts.rfc.RfcState -import com.useoptic.diff.initial.{DistributionAwareShapeBuilder} +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.diff.interactions.{InteractionTrail, ResponseBody, SpecResponseBody, TestHelpers, UnmatchedResponseBodyShape} import com.useoptic.diff.interactions.interpretations.InteractionHelpers import com.useoptic.diff.shapes.JsonTrailPathComponent._ @@ -22,10 +22,12 @@ class SpecHelpers { val responseIdGenerator = new SequentialIdGenerator("response") val shapeIdPrefixGenerator = new SequentialIdGenerator("s") + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism + def simpleGet(responseBody: Json): Seq[RfcCommand] = { val requestId = requestIdGenerator.nextId() val responseId = responseIdGenerator.nextId() - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(responseBody).get))(OpticIds.newDeterministicIdGenerator) + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(responseBody).get))(OpticIds.newDeterministicIdGenerator, ShapeBuildingStrategy.inferPolymorphism) builtShape._2.flatten ++ Seq( RequestsCommands.AddRequest(requestId, "root", "GET"), RequestsCommands.AddResponse(responseId, requestId, 200), @@ -36,7 +38,7 @@ class SpecHelpers { def simplePost(requestBody: Json): Seq[RfcCommand] = { val requestId = requestIdGenerator.nextId() val responseId = responseIdGenerator.nextId() - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(requestBody).get))(OpticIds.newDeterministicIdGenerator) + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(requestBody).get))(OpticIds.newDeterministicIdGenerator, ShapeBuildingStrategy.inferPolymorphism) builtShape._2.flatten ++ Seq( RequestsCommands.AddRequest(requestId, "root", "POST"), RequestsCommands.SetRequestBodyShape(requestId, ShapedBodyDescriptor("application/json", builtShape._1, isRemoved = false)), diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilderSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilderSpec.scala index ba48c9393d..f90dc74e02 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilderSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/initial/DistributionAwareShapeBuilderSpec.scala @@ -14,14 +14,14 @@ import org.scalatest.FunSpec import scala.util.Try class DistributionAwareShapeBuilderSpec extends FunSpec { - + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism describe("aggregate values by trails") { lazy val todoMap = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( JsonLikeFrom.json(JsonExamples.basicTodo).get, JsonLikeFrom.json(JsonExamples.basicTodoWithDescription).get, JsonLikeFrom.json(JsonExamples.basicTodoWithoutStatus).get, - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) it("can stage object for creation with some optional fields") { @@ -36,7 +36,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { lazy val stringArrayMap = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( JsonLikeFrom.json(JsonExamples.stringArray).get - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val shapesToMake = DistributionAwareShapeBuilder.toShapes(stringArrayMap) assert(shapesToMake.isInstanceOf[ListOfShape]) @@ -48,7 +48,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { lazy val stringArrayMap = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( JsonLikeFrom.json(JsonExamples.stringArrayWithNumbers).get - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val shapesToMake = DistributionAwareShapeBuilder.toShapes(stringArrayMap) assert(shapesToMake.isInstanceOf[ListOfShape]) @@ -60,7 +60,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { lazy val stringArrayMap = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( JsonLikeFrom.json(JsonExamples.emptyArray).get - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val shapesToMake = DistributionAwareShapeBuilder.toShapes(stringArrayMap) assert(shapesToMake.isInstanceOf[ListOfShape]) @@ -73,7 +73,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( JsonLikeFrom.json(JsonExamples.objectWithNull).get, JsonLikeFrom.json(JsonExamples.objectWithNull).get, - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) @@ -86,7 +86,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( JsonLikeFrom.json(JsonExamples.emptyArray).get, JsonLikeFrom.json(JsonExamples.emptyObject).get, - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) assert(shapesToMake.isInstanceOf[OneOfShape]) @@ -96,7 +96,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( JsonLikeFrom.json(JsonExamples.objectWithNull).get, JsonLikeFrom.json(JsonExamples.objectWithNullAsString).get, - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) @@ -110,7 +110,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { JsonLikeFrom.json(JsonExamples.objectWithNull).get, JsonLikeFrom.json(JsonExamples.objectWithNullAsString).get, JsonLikeFrom.json(JsonExamples.objectWithNullAsNumber).get, - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) @@ -125,7 +125,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { it("can stage a list of the same object shape") { lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( JsonLikeFrom.json(JsonExamples.objectsWithOptionalsArray).get - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) val fields = shapesToMake.asInstanceOf[ListOfShape].shape.asInstanceOf[ObjectWithFields].fields @@ -136,7 +136,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { it("can stage a list of objects and strings") { lazy val map = DistributionAwareShapeBuilder.aggregateTrailsAndValues(Vector( JsonLikeFrom.json(JsonExamples.objectsAndStringsInArray).get - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val shapesToMake = DistributionAwareShapeBuilder.toShapes(map) val branches = shapesToMake.asInstanceOf[ListOfShape].shape.asInstanceOf[OneOfShape].branches @@ -168,7 +168,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { val commands = DistributionAwareShapeBuilder.toCommands(Vector( JsonLikeFrom.json(JsonExamples.basicTodo).get, JsonLikeFrom.json(JsonExamples.basicTodoWithDescription).get - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) tryCommands(commands._2.flatten, commands._1, JsonLikeFrom.json(JsonExamples.basicTodo).get) } @@ -176,7 +176,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { it("can create commands for array of strings") { lazy val commands = DistributionAwareShapeBuilder.toCommands(Vector( JsonLikeFrom.json(JsonExamples.stringArray).get - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) tryCommands(commands._2.flatten, commands._1, JsonLikeFrom.json(JsonExamples.stringArray).get) } @@ -186,7 +186,7 @@ class DistributionAwareShapeBuilderSpec extends FunSpec { lazy val commands = DistributionAwareShapeBuilder.toCommands(Vector( JsonLikeFrom.json(JsonExamples.stringArray).get, JsonLikeFrom.json(JsonExamples.basicTodo).get - ))(OpticIds.newDeterministicIdGenerator) + ))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) tryCommands(commands._2.flatten, commands._1, JsonLikeFrom.json(JsonExamples.stringArray).get) } diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/DiffVisitorSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/DiffVisitorSpec.scala index 57f1838e22..4c97c7b9a1 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/DiffVisitorSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/DiffVisitorSpec.scala @@ -6,7 +6,7 @@ import com.useoptic.contexts.rfc.Commands.RfcCommand import com.useoptic.contexts.rfc.Events.RfcEvent import com.useoptic.contexts.rfc.{RfcCommandContext, RfcService, RfcServiceJSFacade, RfcState} import com.useoptic.ddd.InMemoryEventStore -import com.useoptic.diff.initial.DistributionAwareShapeBuilder +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.diff.interactions.visitors.DiffVisitors import com.useoptic.diff.shapes.JsonTrailPathComponent._ import com.useoptic.diff.shapes._ @@ -32,7 +32,7 @@ object TestHelpers { } class DiffVisitorSpec extends FunSpec { - + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism describe("diff visitor") { describe("with spec = a simple POST request") { @@ -40,7 +40,7 @@ class DiffVisitorSpec extends FunSpec { val requestId = "req1" val responseId = "res1" val requestContentType = "ccc" - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"f":[123]}""").get))(OpticIds.newDeterministicIdGenerator) + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"f":[123]}""").get))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val initialCommands = builtShape._2.flatten ++ Seq( AddRequest(requestId, Commands.rootPathId, "POST"), SetRequestBodyShape(requestId, ShapedBodyDescriptor(requestContentType, builtShape._1, isRemoved = false)), diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretationsSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretationsSpec.scala index 13e776bd8f..5cb1acdb19 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretationsSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/interactions/interpretations/BasicInterpretationsSpec.scala @@ -4,7 +4,7 @@ import com.useoptic.contexts.requests.Commands import com.useoptic.contexts.requests.Commands.ShapedBodyDescriptor import com.useoptic.contexts.rfc.RfcState import com.useoptic.diff.helpers.DiffHelpers -import com.useoptic.diff.initial.DistributionAwareShapeBuilder +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.diff.interactions.interpreters.BasicInterpreters import com.useoptic.diff.interactions.{InteractionTrail, Method, RequestBody, ResponseBody, SpecPath, SpecRequestBody, SpecRequestRoot, SpecResponseBody, SpecResponseRoot, TestHelpers, Traverser, UnmatchedRequestBodyContentType, UnmatchedRequestBodyShape, UnmatchedResponseBodyContentType, UnmatchedResponseBodyShape, Url} import com.useoptic.diff.shapes.{JsonTrail, ListItemTrail, ObjectFieldTrail, ShapeTrail, UnmatchedShape} @@ -82,7 +82,9 @@ object InteractionHelpers { class BasicInterpretationsSpec extends FunSpec { describe("AddRequestBodyContentType") { - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{}""").get))(OpticIds.newDeterministicIdGenerator) + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism + + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{}""").get))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val initialCommands = Seq( Commands.AddRequest("request1", "root", "PUT") ) ++ builtShape._2.flatten ++ Seq( @@ -114,8 +116,8 @@ class BasicInterpretationsSpec extends FunSpec { } } describe("AddResponseBodyContentType") { - - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{}""").get))(OpticIds.newDeterministicIdGenerator) + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{}""").get))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val initialCommands = Seq( Commands.AddRequest("request1", "root", "GET") ) ++ builtShape._2.flatten ++ Seq( @@ -147,8 +149,9 @@ class BasicInterpretationsSpec extends FunSpec { } } describe("ChangeShape") { + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism describe("changing a field's shape") { - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"k":1}""").get))(OpticIds.newDeterministicIdGenerator) + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"k":1}""").get))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val initialCommands = Seq( Commands.AddRequest("request1", "root", "PUT") ) ++ builtShape._2.flatten ++ Seq( @@ -175,7 +178,8 @@ class BasicInterpretationsSpec extends FunSpec { } } describe("changing a list item's shape") { - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"k":[1]}""").get))(OpticIds.newDeterministicIdGenerator) + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"k":[1]}""").get))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val initialCommands = Seq( Commands.AddRequest("request1", "root", "PUT") diff --git a/core/optic/shared/src/test/scala/com/useoptic/diff/shapes/ResolverSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/diff/shapes/ResolverSpec.scala index fc88d88d1e..f1e66cf293 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/diff/shapes/ResolverSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/diff/shapes/ResolverSpec.scala @@ -2,7 +2,7 @@ package com.useoptic.diff.shapes import com.useoptic.contexts.shapes.Commands.ShapeProvider import com.useoptic.contexts.shapes.ShapesHelper.{ListKind, NumberKind, ObjectKind} -import com.useoptic.diff.initial.DistributionAwareShapeBuilder +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.diff.interactions.TestHelpers import org.scalatest.FunSpec import com.useoptic.diff.shapes.JsonTrailPathComponent._ @@ -14,9 +14,10 @@ import io.circe.literal._ class ResolverSpec extends FunSpec { + implicit val shapeBuildingStrategy = ShapeBuildingStrategy.inferPolymorphism describe("resolving trails") { describe("given a spec with a request body that is an object") { - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"f":[123]}""").get))(OpticIds.newDeterministicIdGenerator) + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""{"f":[123]}""").get))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val rfcState = TestHelpers.fromCommands(builtShape._2.flatten) val resolvers = new DefaultShapesResolvers(rfcState) @@ -36,7 +37,7 @@ class ResolverSpec extends FunSpec { } } describe("given a spec with a request body that is an array") { - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""[{"id": 1}]""").get))(OpticIds.newDeterministicIdGenerator) + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json"""[{"id": 1}]""").get))(OpticIds.newDeterministicIdGenerator, shapeBuildingStrategy) val rfcState = TestHelpers.fromCommands(builtShape._2.flatten) val resolvers = new DefaultShapesResolvers(rfcState) it("should resolve the root as a list") { diff --git a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/fixtures/ShapeExamples.scala b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/fixtures/ShapeExamples.scala index 78dd4feef1..f4b3964e4f 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/end_to_end/fixtures/ShapeExamples.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/end_to_end/fixtures/ShapeExamples.scala @@ -2,7 +2,7 @@ package com.useoptic.end_to_end.fixtures import com.useoptic.contexts.rfc.{RfcCommandContext, RfcService, RfcServiceJSFacade, RfcState} import com.useoptic.contexts.shapes.ShapeEntity -import com.useoptic.diff.initial.DistributionAwareShapeBuilder +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.dsa.OpticIds import com.useoptic.types.capture.JsonLikeFrom import io.circe.Json @@ -16,7 +16,7 @@ object ShapeExamples { private def buildBasicShapeFrom(json: Json): (ShapeEntity, RfcState) = { - val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json).get))(OpticIds.newDeterministicIdGenerator) + val builtShape = DistributionAwareShapeBuilder.toCommands(Vector(JsonLikeFrom.json(json).get))(OpticIds.newDeterministicIdGenerator, ShapeBuildingStrategy.inferPolymorphism) val rfcId: String = "rfc-1" diff --git a/core/optic/shared/src/test/scala/com/useoptic/ux/DiffPreviewerSpec.scala b/core/optic/shared/src/test/scala/com/useoptic/ux/DiffPreviewerSpec.scala index 8b5204e173..f8f52af892 100644 --- a/core/optic/shared/src/test/scala/com/useoptic/ux/DiffPreviewerSpec.scala +++ b/core/optic/shared/src/test/scala/com/useoptic/ux/DiffPreviewerSpec.scala @@ -3,7 +3,7 @@ package com.useoptic.ux import com.useoptic.contexts.rfc.{RfcAggregate, RfcCommandContext, RfcService, RfcServiceJSFacade, RfcState} import com.useoptic.contexts.shapes.ShapeEntity import com.useoptic.contexts.shapes.ShapesHelper.ObjectKind -import com.useoptic.diff.initial.DistributionAwareShapeBuilder +import com.useoptic.diff.initial.{DistributionAwareShapeBuilder, ShapeBuildingStrategy} import com.useoptic.diff.interactions.{BodyUtilities, InteractionDiffResult} import com.useoptic.diff.shapes.resolvers.DefaultShapesResolvers import com.useoptic.diff.{ChangeType, DiffResult, JsonFileFixture} @@ -114,7 +114,7 @@ class DiffPreviewerSpec extends FunSpec with JsonFileFixture { it("render simulated spec json") { val rfcState = RfcAggregate.initialState val resolvers = new DefaultShapesResolvers(rfcState) - val (commands, shapeOnly) = new DiffPreviewer(resolvers, rfcState).shapeOnlyFromShapeBuilder(Vector(JsonLikeFrom.json(JsonExamples.basicTodo).get)).get + val (commands, shapeOnly) = new DiffPreviewer(resolvers, rfcState).shapeOnlyFromShapeBuilder(Vector(JsonLikeFrom.json(JsonExamples.basicTodo).get))(ShapeBuildingStrategy.inferPolymorphism).get assert(shapeOnly.specShapes.size == 3) } diff --git a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js index 60a9925a3d..613566ffab 100644 --- a/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js +++ b/workspaces/ui/src/components/diff/v2/CaptureManagerPage.js @@ -33,6 +33,7 @@ import { RfcContext } from '../../../contexts/RfcContext'; import classNames from 'classnames'; import { DiffResultHelper, + getOrUndefined, JsonHelper, lengthScala, mapScala, @@ -43,6 +44,7 @@ import { Show, ShowSpan } from '../../shared/Show'; import { EndpointsContext, EndpointsContextStore, + PathNameFromId, } from '../../../contexts/EndpointContext'; import MoreRecentCapture from './MoreRecentCapture'; import Page from '../../Page'; @@ -66,6 +68,8 @@ import { CustomNavTab } from './CustomNavTab'; import LinearProgress from '@material-ui/core/LinearProgress'; import TypeModal from '../../shared/JsonTextarea'; import Fade from '@material-ui/core/Fade'; +import { DiffLoadingOverview } from './LoadingNextDiff'; +import { DiffStats } from './Stats'; const { Context: AllCapturesContext, @@ -193,9 +197,12 @@ function CaptureChooserComponent(props) { const history = useHistory(); const baseUrl = useBaseUrl(); - const realEndpointDiffCount = endpointDiffs.filter((i) => i.count > 0).length; - //these numbers are a bit funcky because it also counts requests/reponses the other count does not - const totalEndpoints = endpointDiffs.length; + const realEndpointDiffCount = endpointDiffs.filter( + (i) => i.count > 0 && i.isDocumentedEndpoint + ).length; + + const totalEndpoints = endpointDiffs.filter((i) => i.isDocumentedEndpoint) + .length; const [tab, setTab] = useState(subtabs.ENDPOINT_DIFF); @@ -203,9 +210,16 @@ function CaptureChooserComponent(props) { global.debugOptic = debugDump(specService, captureId); }); + useEffect(() => { + if (totalEndpoints === 0 && unrecognizedUrls.length > 0) { + setTab(subtabs.UNDOCUMENTED_URL); + } + }, [totalEndpoints, unrecognizedUrls.length]); + function handleChange(event) { const captureId = event.target.value; history.push(`${baseUrl}/diffs/${captureId}`); + window.location.reload(); } return ( @@ -225,6 +239,7 @@ function CaptureChooserComponent(props) {