| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030 | schema  @link(url: "https://specs.apollo.dev/link/v1.0")  @link(url: "https://specs.apollo.dev/join/v0.2", for: EXECUTION){  query: Query  mutation: Mutation}directive @join__field(graph: join__Graph!, requires: join__FieldSet, provides: join__FieldSet, type: String, external: Boolean, override: String, usedOverridden: Boolean) repeatable on FIELD_DEFINITION | INPUT_FIELD_DEFINITIONdirective @join__graph(name: String!, url: String!) on ENUM_VALUEdirective @join__implements(graph: join__Graph!, interface: String!) repeatable on OBJECT | INTERFACEdirective @join__type(graph: join__Graph!, key: join__FieldSet, extension: Boolean! = false, resolvable: Boolean! = true) repeatable on OBJECT | INTERFACE | UNION | ENUM | INPUT_OBJECT | SCALARdirective @link(url: String, as: String, for: link__Purpose, import: [link__Import]) repeatable on SCHEMAtype AccessScope  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  description: String!  handle: String!}type App implements Node  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  apiKey: String! @join__field(graph: SHOP)  appStoreAppUrl: URL @join__field(graph: SHOP)  appStoreDeveloperUrl: URL @join__field(graph: SHOP)  availableAccessScopes: [AccessScope!]! @join__field(graph: SHOP)  banner: Image! @join__field(graph: SHOP)  description: String @join__field(graph: SHOP)  developerName: String @join__field(graph: SHOP)  developerType: AppDeveloperType! @join__field(graph: SHOP)  embedded: Boolean! @join__field(graph: SHOP)  failedRequirements: [FailedRequirement!]! @join__field(graph: SHOP)  features: [String!]! @join__field(graph: SHOP)  feedback: AppFeedback @join__field(graph: SHOP)  handle: String @join__field(graph: SHOP)  icon: Image! @join__field(graph: SHOP)  installUrl: URL @join__field(graph: SHOP)  installation: AppInstallation @join__field(graph: SHOP)  isPostPurchaseAppInUse: Boolean! @join__field(graph: SHOP)  previouslyInstalled: Boolean! @join__field(graph: SHOP)  pricingDetails: String @join__field(graph: SHOP)  pricingDetailsSummary: String! @join__field(graph: SHOP)  privacyPolicyUrl: URL @join__field(graph: SHOP)  publicCategory: AppPublicCategory! @join__field(graph: SHOP)  published: Boolean! @join__field(graph: SHOP)  requestedAccessScopes: [AccessScope!]! @join__field(graph: SHOP)  screenshots: [Image!]! @join__field(graph: SHOP)  shopifyDeveloped: Boolean! @join__field(graph: SHOP)  title: String! @join__field(graph: SHOP)  uninstallMessage: String! @join__field(graph: SHOP)  webhookApiVersion: String! @join__field(graph: SHOP)}type AppConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [AppEdge!]!  nodes: [App!]!  pageInfo: PageInfo!}type AppCredit implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amount: MoneyV2!  createdAt: DateTime!  description: String!  id: ID!  test: Boolean!}type AppCreditConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [AppCreditEdge!]!  nodes: [AppCredit!]!  pageInfo: PageInfo!}type AppCreditEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: AppCredit!}enum AppDeveloperType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SHOPIFY  PARTNER  MERCHANT  UNKNOWN}type AppEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: App!}type AppFeedback  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  app: App!  link: Link  messages: [UserError!]!}type AppInstallation implements HasMetafields & Node  @join__implements(graph: CUSTOMER, interface: "HasMetafields")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "HasMetafields")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "HasMetafields")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "HasMetafields")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  accessScopes: [AccessScope!]!  activeSubscriptions: [AppSubscription!]!  allSubscriptions(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: AppSubscriptionSortKeys = CREATED_AT): AppSubscriptionConnection!  app: App!  credits(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: AppTransactionSortKeys = CREATED_AT): AppCreditConnection!  id: ID!  launchUrl: URL!  metafield(namespace: String!, key: String!): Metafield  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection!  oneTimePurchases(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: AppTransactionSortKeys = CREATED_AT): AppPurchaseOneTimeConnection!  privateMetafield(namespace: String!, key: String!): PrivateMetafield  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection!  publication: Publication  revenueAttributionRecords(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: AppRevenueAttributionRecordSortKeys = CREATED_AT): AppRevenueAttributionRecordConnection!  uninstallUrl: URL}type AppPlanV2  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  pricingDetails: AppPricingDetails!}union AppPricingDetails  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = AppRecurringPricing | AppUsagePricingenum AppPricingInterval  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ANNUAL  EVERY_30_DAYS}enum AppPublicCategory  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PRIVATE  PUBLIC  CUSTOM  OTHER}interface AppPurchase  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  createdAt: DateTime!  name: String!  price: MoneyV2!  status: AppPurchaseStatus!  test: Boolean!}type AppPurchaseOneTime implements AppPurchase & Node  @join__implements(graph: CUSTOMER, interface: "AppPurchase")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "AppPurchase")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "AppPurchase")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "AppPurchase")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  createdAt: DateTime!  id: ID!  name: String!  price: MoneyV2!  status: AppPurchaseStatus!  test: Boolean!}type AppPurchaseOneTimeConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [AppPurchaseOneTimeEdge!]!  nodes: [AppPurchaseOneTime!]!  pageInfo: PageInfo!}type AppPurchaseOneTimeEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: AppPurchaseOneTime!}enum AppPurchaseStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ACTIVE  DECLINED  EXPIRED  PENDING}type AppRecurringPricing  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  discount: AppSubscriptionDiscount  interval: AppPricingInterval!  price: MoneyV2!}type AppRevenueAttributionRecord implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amount: MoneyV2!  capturedAt: DateTime!  createdAt: DateTime!  id: ID!  idempotencyKey: String!  test: Boolean!  type: AppRevenueAttributionType!}type AppRevenueAttributionRecordConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [AppRevenueAttributionRecordEdge!]!  nodes: [AppRevenueAttributionRecord!]!  pageInfo: PageInfo!}type AppRevenueAttributionRecordEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: AppRevenueAttributionRecord!}enum AppRevenueAttributionRecordSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  ID  RELEVANCE}enum AppRevenueAttributionType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  APPLICATION_PURCHASE  APPLICATION_SUBSCRIPTION  APPLICATION_USAGE  OTHER}type AppSubscription implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  createdAt: DateTime!  currentPeriodEnd: DateTime  id: ID!  lineItems: [AppSubscriptionLineItem!]!  name: String!  returnUrl: URL!  status: AppSubscriptionStatus!  test: Boolean!  trialDays: Int!}type AppSubscriptionConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [AppSubscriptionEdge!]!  nodes: [AppSubscription!]!  pageInfo: PageInfo!}type AppSubscriptionDiscount  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  durationLimitInIntervals: Int  priceAfterDiscount: MoneyV2!  remainingDurationInIntervals: Int  value: AppSubscriptionDiscountValue!}type AppSubscriptionDiscountAmount  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amount: MoneyV2!}type AppSubscriptionDiscountPercentage  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  percentage: Float!}union AppSubscriptionDiscountValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = AppSubscriptionDiscountAmount | AppSubscriptionDiscountPercentagetype AppSubscriptionEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: AppSubscription!}type AppSubscriptionLineItem  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  plan: AppPlanV2!  usageRecords(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: AppUsageRecordSortKeys = CREATED_AT): AppUsageRecordConnection!}enum AppSubscriptionSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  ID  RELEVANCE}enum AppSubscriptionStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PENDING  ACTIVE  DECLINED  EXPIRED  FROZEN  CANCELLED}enum AppTransactionSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  ID  RELEVANCE}type AppUsagePricing  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  balanceUsed: MoneyV2!  cappedAmount: MoneyV2!  interval: AppPricingInterval!  terms: String!}type AppUsageRecord implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  createdAt: DateTime!  description: String!  id: ID!  price: MoneyV2!  subscriptionLineItem: AppSubscriptionLineItem!}type AppUsageRecordConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [AppUsageRecordEdge!]!  nodes: [AppUsageRecord!]!  pageInfo: PageInfo!}type AppUsageRecordEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: AppUsageRecord!}enum AppUsageRecordSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  ID  RELEVANCE}type Attribute  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  key: String!  value: String}type AutomaticDiscountApplication implements DiscountApplication  @join__implements(graph: CUSTOMER, interface: "DiscountApplication")  @join__implements(graph: ORDER, interface: "DiscountApplication")  @join__implements(graph: PRODUCT, interface: "DiscountApplication")  @join__implements(graph: SHOP, interface: "DiscountApplication")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  allocationMethod: DiscountApplicationAllocationMethod!  index: Int!  targetSelection: DiscountApplicationTargetSelection!  targetType: DiscountApplicationTargetType!  title: String!  value: PricingValue!}type AvailableChannelDefinitionsByChannel  @join__type(graph: ORDER)  @join__type(graph: SHOP){  channelDefinitions: [ChannelDefinition!]!  channelName: String!}type BasicEvent implements Event & Node  @join__implements(graph: CUSTOMER, interface: "Event")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Event")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Event")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Event")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  appTitle: String  attributeToApp: Boolean!  attributeToUser: Boolean!  createdAt: DateTime!  criticalAlert: Boolean!  id: ID!  message: FormattedString!}type BuyerExperienceConfiguration  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  checkoutToDraft: Boolean!  payNowOnly: Boolean!  paymentTermsTemplate: PaymentTermsTemplate}type ChannelDefinition implements Node  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: SHOP){  channelName: String!  handle: String!  id: ID!  subChannelName: String!  svgIcon: String}type ChannelInformation implements Node  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: SHOP){  app: App!  channelDefinition: ChannelDefinition  channelId: ID!  id: ID!}type Collection implements HasMetafieldDefinitions & HasMetafields & HasPublishedTranslations & Node & Publishable  @join__implements(graph: PRODUCT, interface: "HasMetafieldDefinitions")  @join__implements(graph: PRODUCT, interface: "HasMetafields")  @join__implements(graph: PRODUCT, interface: "HasPublishedTranslations")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Publishable")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  availablePublicationCount: Int! @join__field(graph: PRODUCT)  description(truncateAt: Int): String! @join__field(graph: PRODUCT)  descriptionHtml: HTML! @join__field(graph: PRODUCT)  feedback: ResourceFeedback @join__field(graph: PRODUCT)  handle: String! @join__field(graph: PRODUCT)  hasProduct(id: ID!): Boolean! @join__field(graph: PRODUCT)  image: Image @join__field(graph: PRODUCT)  legacyResourceId: UnsignedInt64! @join__field(graph: PRODUCT)  metafield(namespace: String!, key: String!): Metafield @join__field(graph: PRODUCT)  metafieldDefinitions(namespace: String, pinnedStatus: MetafieldDefinitionPinnedStatus = ANY, first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: MetafieldDefinitionSortKeys = ID, query: String): MetafieldDefinitionConnection! @join__field(graph: PRODUCT)  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection! @join__field(graph: PRODUCT)  privateMetafield(namespace: String!, key: String!): PrivateMetafield @join__field(graph: PRODUCT)  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection! @join__field(graph: PRODUCT)  products(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: ProductCollectionSortKeys = COLLECTION_DEFAULT): ProductConnection! @join__field(graph: PRODUCT)  productsCount: Int! @join__field(graph: PRODUCT)  publicationCount(onlyPublished: Boolean = true): Int! @join__field(graph: PRODUCT)  publishedOnCurrentPublication: Boolean! @join__field(graph: PRODUCT)  publishedOnPublication(publicationId: ID!): Boolean! @join__field(graph: PRODUCT)  resourcePublications(onlyPublished: Boolean = true, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ResourcePublicationConnection! @join__field(graph: PRODUCT)  resourcePublicationsV2(onlyPublished: Boolean = true, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ResourcePublicationV2Connection! @join__field(graph: PRODUCT)  ruleSet: CollectionRuleSet @join__field(graph: PRODUCT)  seo: SEO! @join__field(graph: PRODUCT)  sortOrder: CollectionSortOrder! @join__field(graph: PRODUCT)  templateSuffix: String @join__field(graph: PRODUCT)  title: String! @join__field(graph: PRODUCT)  translations(locale: String!, marketId: ID): [PublishedTranslation!]! @join__field(graph: PRODUCT)  unpublishedPublications(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PublicationConnection! @join__field(graph: PRODUCT)  updatedAt: DateTime! @join__field(graph: PRODUCT)}type CollectionConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [CollectionEdge!]!  nodes: [Collection!]!  pageInfo: PageInfo!}type CollectionEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Collection!}type CollectionRule  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  appliedDisjunctively: Boolean!  rules: [CollectionRule!]!}type CollectionRuleSet  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  appliedDisjunctively: Boolean!  rules: [CollectionRule!]!}enum CollectionSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  TITLE  UPDATED_AT  ID  RELEVANCE}enum CollectionSortOrder  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ALPHA_ASC  ALPHA_DESC  BEST_SELLING  CREATED  CREATED_DESC  MANUAL  PRICE_ASC  PRICE_DESC}union CommentEventEmbed  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = Customer | DraftOrder | Order | Product | ProductVariantinterface CommentEventSubject  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  hasTimelineComment: Boolean!}type Company implements CommentEventSubject & HasEvents & Navigable & Node  @join__implements(graph: CUSTOMER, interface: "CommentEventSubject")  @join__implements(graph: CUSTOMER, interface: "HasEvents")  @join__implements(graph: CUSTOMER, interface: "Navigable")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "CommentEventSubject")  @join__implements(graph: ORDER, interface: "HasEvents")  @join__implements(graph: ORDER, interface: "Navigable")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "CommentEventSubject")  @join__implements(graph: PRODUCT, interface: "HasEvents")  @join__implements(graph: PRODUCT, interface: "Navigable")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "CommentEventSubject")  @join__implements(graph: SHOP, interface: "HasEvents")  @join__implements(graph: SHOP, interface: "Navigable")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  contactCount: Int!  contactRoles(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: CompanyContactRoleSortKeys = ID): CompanyContactRoleConnection!  contacts(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: CompanyContactSortKeys = ID, query: String): CompanyContactConnection!  createdAt: DateTime!  customerSince: DateTime!  defaultCursor: String!  defaultRole: CompanyContactRole  draftOrders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: DraftOrderSortKeys = ID, query: String): DraftOrderConnection!  events(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: EventSortKeys = ID, query: String): EventConnection!  externalId: String  hasTimelineComment: Boolean!  id: ID!  lifetimeDuration: String!  locationCount: Int!  locations(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: CompanyLocationSortKeys = ID, query: String): CompanyLocationConnection!  mainContact: CompanyContact  name: String!  note: String  orderCount: Int!  orders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: OrderSortKeys = ID): OrderConnection!  totalSpent: MoneyV2!  updatedAt: DateTime!}type CompanyAddress implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address1: String!  address2: String  city: String  companyName: String!  country: String  countryCode: CountryCode!  createdAt: DateTime!  formattedArea: String  id: ID!  phone: String  province: String  recipient: String  updatedAt: DateTime!  zip: String  zoneCode: String}type CompanyContact implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  company: Company!  createdAt: DateTime!  customer: Customer!  draftOrders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: DraftOrderSortKeys = ID, query: String): DraftOrderConnection!  id: ID!  isMainContact: Boolean!  lifetimeDuration: String!  locale: String  orders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: OrderSortKeys = ID): OrderConnection!  roleAssignments(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: CompanyContactRoleAssignmentSortKeys = ID, query: String): CompanyContactRoleAssignmentConnection!  title: String  updatedAt: DateTime!}type CompanyContactConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [CompanyContactEdge!]!  nodes: [CompanyContact!]!  pageInfo: PageInfo!}type CompanyContactEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: CompanyContact!}type CompanyContactRole implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  name: String!  note: String}type CompanyContactRoleAssignment implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  company: Company!  companyContact: CompanyContact!  companyLocation: CompanyLocation!  createdAt: DateTime!  id: ID!  role: CompanyContactRole!  updatedAt: DateTime!}type CompanyContactRoleAssignmentConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [CompanyContactRoleAssignmentEdge!]!  nodes: [CompanyContactRoleAssignment!]!  pageInfo: PageInfo!}type CompanyContactRoleAssignmentEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: CompanyContactRoleAssignment!}enum CompanyContactRoleAssignmentSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  UPDATED_AT  LOCATION_NAME  ID  RELEVANCE}type CompanyContactRoleConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [CompanyContactRoleEdge!]!  nodes: [CompanyContactRole!]!  pageInfo: PageInfo!}type CompanyContactRoleEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: CompanyContactRole!}enum CompanyContactRoleSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  UPDATED_AT  ID  RELEVANCE}enum CompanyContactSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  UPDATED_AT  TITLE  COMPANY_ID  NAME  EMAIL  NAME_EMAIL  ID  RELEVANCE}type CompanyLocation implements CommentEventSubject & HasEvents & Navigable & Node  @join__implements(graph: CUSTOMER, interface: "CommentEventSubject")  @join__implements(graph: CUSTOMER, interface: "HasEvents")  @join__implements(graph: CUSTOMER, interface: "Navigable")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "CommentEventSubject")  @join__implements(graph: ORDER, interface: "HasEvents")  @join__implements(graph: ORDER, interface: "Navigable")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "CommentEventSubject")  @join__implements(graph: PRODUCT, interface: "HasEvents")  @join__implements(graph: PRODUCT, interface: "Navigable")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "CommentEventSubject")  @join__implements(graph: SHOP, interface: "HasEvents")  @join__implements(graph: SHOP, interface: "Navigable")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  billingAddress: CompanyAddress  buyerExperienceConfiguration: BuyerExperienceConfiguration  company: Company!  createdAt: DateTime!  currency: CurrencyCode!  defaultCursor: String!  draftOrders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: DraftOrderSortKeys = ID, query: String): DraftOrderConnection!  events(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: EventSortKeys = ID, query: String): EventConnection!  externalId: String  hasTimelineComment: Boolean!  id: ID!  locale: String  market: Market!  name: String!  note: String  orderCount: Int!  orders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: OrderSortKeys = ID): OrderConnection!  phone: String  roleAssignments(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: CompanyContactRoleAssignmentSortKeys = ID, query: String): CompanyContactRoleAssignmentConnection!  shippingAddress: CompanyAddress  taxExemptions: [TaxExemption!]!  taxRegistrationId: String  totalSpent: MoneyV2!  updatedAt: DateTime!}type CompanyLocationConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [CompanyLocationEdge!]!  nodes: [CompanyLocation!]!  pageInfo: PageInfo!}type CompanyLocationEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: CompanyLocation!}enum CompanyLocationSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  UPDATED_AT  NAME  COMPANY_ID  COMPANY_AND_LOCATION_NAME  ID  RELEVANCE}input ContextualPricingContext  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  country: CountryCode  companyLocationId: ID}type CountriesInShippingZones  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countryCodes: [CountryCode!]!  includeRestOfWorld: Boolean!}enum CountryCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  AF  AX  AL  DZ  AD  AO  AI  AG  AR  AM  AW  AC  AU  AT  AZ  BS  BH  BD  BB  BY  BE  BZ  BJ  BM  BT  BO  BA  BW  BV  BR  IO  BN  BG  BF  BI  KH  CA  CV  BQ  KY  CF  TD  CL  CN  CX  CC  CO  KM  CG  CD  CK  CR  HR  CU  CW  CY  CZ  CI  DK  DJ  DM  DO  EC  EG  SV  GQ  ER  EE  SZ  ET  FK  FO  FJ  FI  FR  GF  PF  TF  GA  GM  GE  DE  GH  GI  GR  GL  GD  GP  GT  GG  GN  GW  GY  HT  HM  VA  HN  HK  HU  IS  IN  ID  IR  IQ  IE  IM  IL  IT  JM  JP  JE  JO  KZ  KE  KI  KP  XK  KW  KG  LA  LV  LB  LS  LR  LY  LI  LT  LU  MO  MG  MW  MY  MV  ML  MT  MQ  MR  MU  YT  MX  MD  MC  MN  ME  MS  MA  MZ  MM  NA  NR  NP  NL  AN  NC  NZ  NI  NE  NG  NU  NF  MK  NO  OM  PK  PS  PA  PG  PY  PE  PH  PN  PL  PT  QA  CM  RE  RO  RU  RW  BL  SH  KN  LC  MF  PM  WS  SM  ST  SA  SN  RS  SC  SL  SG  SX  SK  SI  SB  SO  ZA  GS  KR  SS  ES  LK  VC  SD  SR  SJ  SE  CH  SY  TW  TJ  TZ  TH  TL  TG  TK  TO  TT  TA  TN  TR  TM  TC  TV  UG  UA  AE  GB  US  UM  UY  UZ  VU  VE  VN  VG  WF  EH  YE  ZM  ZW  ZZ}type CountryHarmonizedSystemCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countryCode: CountryCode!  harmonizedSystemCode: String!}type CountryHarmonizedSystemCodeConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [CountryHarmonizedSystemCodeEdge!]!  nodes: [CountryHarmonizedSystemCode!]!  pageInfo: PageInfo!}type CountryHarmonizedSystemCodeEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: CountryHarmonizedSystemCode!}input CreateMediaInput  @join__type(graph: PRODUCT){  originalSource: String!  alt: String  mediaContentType: MediaContentType!}enum CropRegion  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CENTER  TOP  BOTTOM  LEFT  RIGHT}enum CurrencyCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  AED  AFN  ALL  AMD  ANG  AOA  ARS  AUD  AWG  AZN  BAM  BBD  BDT  BGN  BHD  BIF  BMD  BND  BOB  BRL  BSD  BTN  BWP  BYN  BZD  CAD  CDF  CHF  CLP  CNY  COP  CRC  CVE  CZK  DJF  DKK  DOP  DZD  EGP  ERN  ETB  EUR  FJD  FKP  GBP  GEL  GHS  GIP  GMD  GNF  GTQ  GYD  HKD  HNL  HRK  HTG  HUF  IDR  ILS  INR  IQD  IRR  ISK  JEP  JMD  JOD  JPY  KES  KGS  KHR  KID  KMF  KRW  KWD  KYD  KZT  LAK  LBP  LKR  LRD  LSL  LTL  LVL  LYD  MAD  MDL  MGA  MKD  MMK  MNT  MOP  MRU  MUR  MVR  MWK  MXN  MYR  MZN  NAD  NGN  NIO  NOK  NPR  NZD  OMR  PAB  PEN  PGK  PHP  PKR  PLN  PYG  QAR  RON  RSD  RUB  RWF  SAR  SBD  SCR  SDG  SEK  SGD  SHP  SLL  SOS  SRD  SSP  STN  SYP  SZL  THB  TJS  TMT  TND  TOP  TRY  TTD  TWD  TZS  UAH  UGX  USD  UYU  UZS  VED  VES  VND  VUV  WST  XAF  XCD  XOF  XPF  XXX  YER  ZAR  ZMW  BYR @deprecated}type CurrencyFormats  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  moneyFormat: FormattedString!  moneyInEmailsFormat: String!  moneyWithCurrencyFormat: FormattedString!  moneyWithCurrencyInEmailsFormat: String!}type CurrencySetting  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  currencyCode: CurrencyCode!  currencyName: String!  enabled: Boolean!  rateUpdatedAt: DateTime}type CurrencySettingConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [CurrencySettingEdge!]!  nodes: [CurrencySetting!]!  pageInfo: PageInfo!}type CurrencySettingEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: CurrencySetting!}type Customer implements CommentEventSubject & HasEvents & HasMetafieldDefinitions & HasMetafields & LegacyInteroperability & Node  @join__implements(graph: CUSTOMER, interface: "CommentEventSubject")  @join__implements(graph: CUSTOMER, interface: "HasEvents")  @join__implements(graph: CUSTOMER, interface: "HasMetafieldDefinitions")  @join__implements(graph: CUSTOMER, interface: "HasMetafields")  @join__implements(graph: CUSTOMER, interface: "LegacyInteroperability")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  addresses(first: Int): [MailingAddress!]! @join__field(graph: CUSTOMER)  amountSpent: MoneyV2! @join__field(graph: CUSTOMER)  averageOrderAmountV2: MoneyV2 @join__field(graph: CUSTOMER)  canDelete: Boolean! @join__field(graph: CUSTOMER)  companyContactProfiles: [CompanyContact!]! @join__field(graph: CUSTOMER)  createdAt: DateTime! @join__field(graph: CUSTOMER)  defaultAddress: MailingAddress @join__field(graph: CUSTOMER)  displayName: String! @join__field(graph: CUSTOMER)  email: String @join__field(graph: CUSTOMER)  emailMarketingConsent: CustomerEmailMarketingConsentState @join__field(graph: CUSTOMER)  events(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: EventSortKeys = ID, query: String): EventConnection! @join__field(graph: CUSTOMER)  firstName: String @join__field(graph: CUSTOMER)  hasTimelineComment: Boolean! @join__field(graph: CUSTOMER)  id: ID!  image: Image! @join__field(graph: CUSTOMER)  lastName: String @join__field(graph: CUSTOMER)  lastOrder: Order @join__field(graph: CUSTOMER)  legacyResourceId: UnsignedInt64! @join__field(graph: CUSTOMER)  lifetimeDuration: String! @join__field(graph: CUSTOMER)  locale: String! @join__field(graph: CUSTOMER)  market: Market @join__field(graph: CUSTOMER)  metafield(namespace: String!, key: String!): Metafield @join__field(graph: CUSTOMER)  metafieldDefinitions(namespace: String, pinnedStatus: MetafieldDefinitionPinnedStatus = ANY, first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: MetafieldDefinitionSortKeys = ID, query: String): MetafieldDefinitionConnection! @join__field(graph: CUSTOMER)  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection! @join__field(graph: CUSTOMER)  multipassIdentifier: String @join__field(graph: CUSTOMER)  note: String @join__field(graph: CUSTOMER)  numberOfOrders: UnsignedInt64! @join__field(graph: CUSTOMER)  orders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: OrderSortKeys = ID, query: String): OrderConnection! @join__field(graph: CUSTOMER)  paymentMethods(showRevoked: Boolean = false, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): CustomerPaymentMethodConnection! @join__field(graph: CUSTOMER)  phone: String @join__field(graph: CUSTOMER)  privateMetafield(namespace: String!, key: String!): PrivateMetafield @join__field(graph: CUSTOMER)  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection! @join__field(graph: CUSTOMER)  productSubscriberStatus: CustomerProductSubscriberStatus! @join__field(graph: CUSTOMER)  smsMarketingConsent: CustomerSmsMarketingConsentState @join__field(graph: CUSTOMER)  state: CustomerState! @join__field(graph: CUSTOMER)  statistics: CustomerStatistics! @join__field(graph: CUSTOMER)  subscriptionContracts(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SubscriptionContractConnection! @join__field(graph: CUSTOMER)  tags: [String!]! @join__field(graph: CUSTOMER)  taxExempt: Boolean! @join__field(graph: CUSTOMER)  taxExemptions: [TaxExemption!]! @join__field(graph: CUSTOMER)  unsubscribeUrl: URL! @join__field(graph: CUSTOMER)  updatedAt: DateTime! @join__field(graph: CUSTOMER)  validEmailAddress: Boolean! @join__field(graph: CUSTOMER)  verifiedEmail: Boolean! @join__field(graph: CUSTOMER)}enum CustomerConsentCollectedFrom  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SHOPIFY  OTHER}type CustomerCreatePayload  @join__type(graph: CUSTOMER){  customer: Customer  userErrors: [UserError!]!}type CustomerCreditCard  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  billingAddress: CustomerCreditCardBillingAddress  brand: String!  expiresSoon: Boolean!  expiryMonth: Int!  expiryYear: Int!  firstDigits: String  isRevocable: Boolean!  lastDigits: String!  maskedNumber: String!  name: String!  source: String  virtualLastDigits: String}type CustomerCreditCardBillingAddress  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address1: String  city: String  country: String  countryCode: CountryCode  province: String  provinceCode: String  zip: String}type CustomerEmailMarketingConsentState  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  consentUpdatedAt: DateTime  marketingOptInLevel: CustomerMarketingOptInLevel  marketingState: CustomerEmailMarketingState!}enum CustomerEmailMarketingState  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  NOT_SUBSCRIBED  PENDING  SUBSCRIBED  UNSUBSCRIBED  REDACTED  INVALID}input CustomerInput  @join__type(graph: CUSTOMER){  addresses: [MailingAddressInput!]  email: String  firstName: String  id: ID  lastName: String  locale: String  metafields: [MetafieldInput!]  note: String  phone: String  privateMetafields: [PrivateMetafieldInput!]  tags: [String!]}type CustomerJourneySummary  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  customerOrderIndex: Int  daysToConversion: Int  firstVisit: CustomerVisit  lastVisit: CustomerVisit  moments(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): CustomerMomentConnection  momentsCount: Int  ready: Boolean!}enum CustomerMarketingOptInLevel  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SINGLE_OPT_IN  CONFIRMED_OPT_IN  UNKNOWN}interface CustomerMoment  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  occurredAt: DateTime!}type CustomerMomentConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [CustomerMomentEdge!]!  nodes: [CustomerMoment!]!  pageInfo: PageInfo!}type CustomerMomentEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: CustomerMoment!}union CustomerPaymentInstrument  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = CustomerCreditCard | CustomerPaypalBillingAgreement | CustomerShopPayAgreementtype CustomerPaymentInstrumentBillingAddress  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address1: String  city: String  country: String  countryCode: CountryCode  name: String  province: String  provinceCode: String  zip: String}type CustomerPaymentMethod implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  customer: Customer  id: ID!  instrument: CustomerPaymentInstrument  revokedAt: DateTime  revokedReason: CustomerPaymentMethodRevocationReason  subscriptionContracts(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SubscriptionContractConnection!}type CustomerPaymentMethodConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [CustomerPaymentMethodEdge!]!  nodes: [CustomerPaymentMethod!]!  pageInfo: PageInfo!}type CustomerPaymentMethodEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: CustomerPaymentMethod!}enum CustomerPaymentMethodRevocationReason  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  AUTHORIZE_NET_GATEWAY_NOT_ENABLED  AUTHORIZE_NET_RETURNED_NO_PAYMENT_METHOD  FAILED_TO_UPDATE_CREDIT_CARD  STRIPE_API_AUTHENTICATION_ERROR  STRIPE_API_INVALID_REQUEST_ERROR  STRIPE_GATEWAY_NOT_ENABLED  STRIPE_RETURNED_NO_PAYMENT_METHOD  STRIPE_PAYMENT_METHOD_NOT_CARD  BRAINTREE_API_AUTHENTICATION_ERROR  BRAINTREE_GATEWAY_NOT_ENABLED  BRAINTREE_RETURNED_NO_PAYMENT_METHOD  BRAINTREE_PAYMENT_METHOD_NOT_CARD  MANUALLY_REVOKED  MERGED}type CustomerPaypalBillingAgreement  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  billingAddress: CustomerPaymentInstrumentBillingAddress  inactive: Boolean!  isRevocable: Boolean!  paypalAccountEmail: String}enum CustomerPredictedSpendTier  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  HIGH  MEDIUM  LOW}enum CustomerProductSubscriberStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ACTIVE  CANCELLED  EXPIRED  FAILED  NEVER_SUBSCRIBED  PAUSED}type CustomerShopPayAgreement  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  expiresSoon: Boolean!  expiryMonth: Int!  expiryYear: Int!  inactive: Boolean!  isRevocable: Boolean!  lastDigits: String!  maskedNumber: String!  name: String!}type CustomerSmsMarketingConsentState  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  consentCollectedFrom: CustomerConsentCollectedFrom  consentUpdatedAt: DateTime  marketingOptInLevel: CustomerMarketingOptInLevel!  marketingState: CustomerSmsMarketingState!}enum CustomerSmsMarketingState  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  NOT_SUBSCRIBED  PENDING  SUBSCRIBED  UNSUBSCRIBED  REDACTED}enum CustomerState  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  DECLINED  DISABLED  ENABLED  INVITED}type CustomerStatistics  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  predictedSpendTier: CustomerPredictedSpendTier}type CustomerVisit implements CustomerMoment & Node  @join__implements(graph: CUSTOMER, interface: "CustomerMoment")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "CustomerMoment")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "CustomerMoment")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "CustomerMoment")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  landingPage: URL  landingPageHtml: HTML  marketingEvent: MarketingEvent  occurredAt: DateTime!  referralCode: String  referralInfoHtml: FormattedString!  referrerUrl: URL  source: String!  sourceDescription: String  sourceType: MarketingTactic  utmParameters: UTMParameters}scalar DateTime  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP)scalar Decimal  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP)type DeliveryAvailableService  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countries: DeliveryCountryCodesOrRestOfWorld!  name: String!}type DeliveryCarrierService implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  availableServicesForCountries(origins: [ID!], countryCodes: [CountryCode!], restOfWorld: Boolean!): [DeliveryAvailableService!]!  formattedName: String  icon: Image!  id: ID!  name: String}type DeliveryCondition implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  conditionCriteria: DeliveryConditionCriteria!  field: DeliveryConditionField!  id: ID!  operator: DeliveryConditionOperator!}union DeliveryConditionCriteria  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = MoneyV2 | Weightenum DeliveryConditionField  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  TOTAL_WEIGHT  TOTAL_PRICE}enum DeliveryConditionOperator  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  GREATER_THAN_OR_EQUAL_TO  LESS_THAN_OR_EQUAL_TO}type DeliveryCountry implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: DeliveryCountryCodeOrRestOfWorld!  id: ID!  name: String!  provinces: [DeliveryProvince!]!  translatedName: String!}type DeliveryCountryAndZone  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  country: DeliveryCountry!  zone: String!}type DeliveryCountryCodeOrRestOfWorld  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countryCode: CountryCode  restOfWorld: Boolean!}type DeliveryCountryCodesOrRestOfWorld  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countryCodes: [CountryCode!]!  restOfWorld: Boolean!}type DeliveryLocationGroup implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  locations(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: LocationSortKeys = NAME, query: String, includeLegacy: Boolean = false, includeInactive: Boolean = false): LocationConnection!}type DeliveryLocationGroupZone  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  methodDefinitionCounts: DeliveryMethodDefinitionCounts!  methodDefinitions(eligible: Boolean, type: DeliveryMethodDefinitionType, first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: MethodDefinitionSortKeys = ID): DeliveryMethodDefinitionConnection!  zone: DeliveryZone!}type DeliveryLocationGroupZoneConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [DeliveryLocationGroupZoneEdge!]!  nodes: [DeliveryLocationGroupZone!]!  pageInfo: PageInfo!}type DeliveryLocationGroupZoneEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: DeliveryLocationGroupZone!}type DeliveryMethod implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  maxDeliveryDateTime: DateTime  methodType: DeliveryMethodType!  minDeliveryDateTime: DateTime}type DeliveryMethodDefinition implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  active: Boolean!  description: String  id: ID!  methodConditions: [DeliveryCondition!]!  name: String!  rateProvider: DeliveryRateProvider!}type DeliveryMethodDefinitionConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [DeliveryMethodDefinitionEdge!]!  nodes: [DeliveryMethodDefinition!]!  pageInfo: PageInfo!}type DeliveryMethodDefinitionCounts  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  participantDefinitionsCount: Int!  rateDefinitionsCount: Int!}type DeliveryMethodDefinitionEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: DeliveryMethodDefinition!}enum DeliveryMethodDefinitionType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  MERCHANT  PARTICIPANT}enum DeliveryMethodType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SHIPPING  PICK_UP  NONE  RETAIL  LOCAL}type DeliveryParticipant implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  adaptToNewServicesFlag: Boolean!  carrierService: DeliveryCarrierService!  fixedFee: MoneyV2  id: ID!  participantServices: [DeliveryParticipantService!]!  percentageOfRateFee: Float!}type DeliveryParticipantService  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  active: Boolean!  name: String!}type DeliveryProductVariantsCount  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  capped: Boolean!  count: Int!}type DeliveryProfile implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  activeMethodDefinitionsCount: Int!  default: Boolean!  id: ID!  legacyMode: Boolean!  locationsWithoutRatesCount: Int!  name: String!  originLocationCount: Int!  productVariantsCountV2: DeliveryProductVariantsCount!  profileItems(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): DeliveryProfileItemConnection!  profileLocationGroups: [DeliveryProfileLocationGroup!]!  sellingPlanGroups(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SellingPlanGroupConnection!  unassignedLocations: [Location!]!  zoneCountryCount: Int!}type DeliveryProfileItem implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  product: Product!  variants(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ProductVariantConnection!}type DeliveryProfileItemConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [DeliveryProfileItemEdge!]!  nodes: [DeliveryProfileItem!]!  pageInfo: PageInfo!}type DeliveryProfileItemEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: DeliveryProfileItem!}type DeliveryProfileLocationGroup  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countriesInAnyZone: [DeliveryCountryAndZone!]!  locationGroup: DeliveryLocationGroup!  locationGroupZones(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): DeliveryLocationGroupZoneConnection!}type DeliveryProvince implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: String!  id: ID!  name: String!  translatedName: String!}type DeliveryRateDefinition implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  price: MoneyV2!}union DeliveryRateProvider  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = DeliveryParticipant | DeliveryRateDefinitiontype DeliveryZone implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countries: [DeliveryCountry!]!  id: ID!  name: String!}enum DigitalWallet  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  APPLE_PAY  ANDROID_PAY  GOOGLE_PAY  SHOPIFY_PAY}type DiscountAllocation  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  allocatedAmountSet: MoneyBag!  discountApplication: DiscountApplication!}interface DiscountApplication  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  allocationMethod: DiscountApplicationAllocationMethod!  index: Int!  targetSelection: DiscountApplicationTargetSelection!  targetType: DiscountApplicationTargetType!  value: PricingValue!}enum DiscountApplicationAllocationMethod  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ACROSS  EACH}type DiscountApplicationConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [DiscountApplicationEdge!]!  nodes: [DiscountApplication!]!  pageInfo: PageInfo!}type DiscountApplicationEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: DiscountApplication!}enum DiscountApplicationTargetSelection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ALL  ENTITLED  EXPLICIT}enum DiscountApplicationTargetType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  LINE_ITEM  SHIPPING_LINE}type DiscountCodeApplication implements DiscountApplication  @join__implements(graph: CUSTOMER, interface: "DiscountApplication")  @join__implements(graph: ORDER, interface: "DiscountApplication")  @join__implements(graph: PRODUCT, interface: "DiscountApplication")  @join__implements(graph: SHOP, interface: "DiscountApplication")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  allocationMethod: DiscountApplicationAllocationMethod!  code: String!  index: Int!  targetSelection: DiscountApplicationTargetSelection!  targetType: DiscountApplicationTargetType!  value: PricingValue!}enum DiscountTargetType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  LINE_ITEM  SHIPPING_LINE}enum DiscountType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  MANUAL  CODE_DISCOUNT}interface DisplayableError  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  field: [String!]  message: String!}enum DisputeStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  NEEDS_RESPONSE  UNDER_REVIEW  CHARGE_REFUNDED  ACCEPTED  WON  LOST}enum DisputeType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CHARGEBACK  INQUIRY}type Domain implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  host: String!  id: ID!  localization: DomainLocalization  marketWebPresence: MarketWebPresence  sslEnabled: Boolean!  url: URL!}type DomainLocalization  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  alternateLocales: [String!]!  country: String  defaultLocale: String!}type DraftOrder implements CommentEventSubject & HasEvents & HasLocalizationExtensions & HasMetafields & LegacyInteroperability & Navigable & Node  @join__implements(graph: ORDER, interface: "CommentEventSubject")  @join__implements(graph: ORDER, interface: "HasEvents")  @join__implements(graph: ORDER, interface: "HasLocalizationExtensions")  @join__implements(graph: ORDER, interface: "HasMetafields")  @join__implements(graph: ORDER, interface: "LegacyInteroperability")  @join__implements(graph: ORDER, interface: "Navigable")  @join__implements(graph: ORDER, interface: "Node")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  appliedDiscount: DraftOrderAppliedDiscount @join__field(graph: ORDER)  billingAddress: MailingAddress @join__field(graph: ORDER)  billingAddressMatchesShippingAddress: Boolean! @join__field(graph: ORDER)  completedAt: DateTime @join__field(graph: ORDER)  createdAt: DateTime! @join__field(graph: ORDER)  currencyCode: CurrencyCode! @join__field(graph: ORDER)  customAttributes: [Attribute!]! @join__field(graph: ORDER)  customer: Customer @join__field(graph: ORDER)  defaultCursor: String! @join__field(graph: ORDER)  email: String @join__field(graph: ORDER)  events(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: EventSortKeys = ID, query: String): EventConnection! @join__field(graph: ORDER)  hasTimelineComment: Boolean! @join__field(graph: ORDER)  invoiceEmailTemplateSubject: String! @join__field(graph: ORDER)  invoiceSentAt: DateTime @join__field(graph: ORDER)  invoiceUrl: URL @join__field(graph: ORDER)  legacyResourceId: UnsignedInt64! @join__field(graph: ORDER)  lineItems(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): DraftOrderLineItemConnection! @join__field(graph: ORDER)  lineItemsSubtotalPrice: MoneyBag! @join__field(graph: ORDER)  localizationExtensions(countryCodes: [CountryCode!], purposes: [LocalizationExtensionPurpose!], first: Int, after: String, last: Int, before: String, reverse: Boolean = false): LocalizationExtensionConnection! @join__field(graph: ORDER)  marketName: String! @join__field(graph: ORDER)  marketRegionCountryCode: CountryCode! @join__field(graph: ORDER)  metafield(namespace: String!, key: String!): Metafield @join__field(graph: ORDER)  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection! @join__field(graph: ORDER)  name: String! @join__field(graph: ORDER)  note2: String @join__field(graph: ORDER)  order: Order @join__field(graph: ORDER)  paymentTerms: PaymentTerms @join__field(graph: ORDER)  phone: String @join__field(graph: ORDER)  presentmentCurrencyCode: CurrencyCode! @join__field(graph: ORDER)  privateMetafield(namespace: String!, key: String!): PrivateMetafield @join__field(graph: ORDER)  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection! @join__field(graph: ORDER)  purchasingEntity: PurchasingEntity @join__field(graph: ORDER)  ready: Boolean! @join__field(graph: ORDER)  reserveInventoryUntil: DateTime @join__field(graph: ORDER)  shippingAddress: MailingAddress @join__field(graph: ORDER)  shippingLine: ShippingLine @join__field(graph: ORDER)  status: DraftOrderStatus! @join__field(graph: ORDER)  subtotalPrice: Money! @join__field(graph: ORDER)  subtotalPriceSet: MoneyBag! @join__field(graph: ORDER)  tags: [String!]! @join__field(graph: ORDER)  taxExempt: Boolean! @join__field(graph: ORDER)  taxLines: [TaxLine!]! @join__field(graph: ORDER)  taxesIncluded: Boolean! @join__field(graph: ORDER)  totalDiscountsSet: MoneyBag! @join__field(graph: ORDER)  totalLineItemsPriceSet: MoneyBag! @join__field(graph: ORDER)  totalPrice: Money! @join__field(graph: ORDER)  totalPriceSet: MoneyBag! @join__field(graph: ORDER)  totalShippingPrice: Money! @join__field(graph: ORDER)  totalShippingPriceSet: MoneyBag! @join__field(graph: ORDER)  totalTax: Money! @join__field(graph: ORDER)  totalTaxSet: MoneyBag! @join__field(graph: ORDER)  totalWeight: UnsignedInt64! @join__field(graph: ORDER)  updatedAt: DateTime! @join__field(graph: ORDER)  visibleToCustomer: Boolean! @join__field(graph: ORDER)}type DraftOrderAppliedDiscount  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amountSet: MoneyBag!  amountV2: MoneyV2!  description: String!  title: String  value: Float!  valueType: DraftOrderAppliedDiscountType!}enum DraftOrderAppliedDiscountType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  FIXED_AMOUNT  PERCENTAGE}type DraftOrderConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [DraftOrderEdge!]!  nodes: [DraftOrder!]!  pageInfo: PageInfo!}type DraftOrderEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: DraftOrder!}type DraftOrderLineItem implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  appliedDiscount: DraftOrderAppliedDiscount  custom: Boolean!  customAttributes: [Attribute!]!  customAttributesV2: [TypedAttribute!]!  discountedTotal: Money!  discountedTotalSet: MoneyBag!  discountedUnitPrice: Money!  discountedUnitPriceSet: MoneyBag!  fulfillmentService: FulfillmentService  id: ID!  image: Image  isGiftCard: Boolean!  name: String!  originalTotal: Money!  originalTotalSet: MoneyBag!  originalUnitPrice: Money!  originalUnitPriceSet: MoneyBag!  product: Product  quantity: Int!  requiresShipping: Boolean!  sku: String  taxLines: [TaxLine!]!  taxable: Boolean!  title: String!  totalDiscount: Money!  totalDiscountSet: MoneyBag!  variant: ProductVariant  variantTitle: String  vendor: String  weight: Weight}type DraftOrderLineItemConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [DraftOrderLineItemEdge!]!  nodes: [DraftOrderLineItem!]!  pageInfo: PageInfo!}type DraftOrderLineItemEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: DraftOrderLineItem!}enum DraftOrderSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  NUMBER  UPDATED_AT  STATUS  TOTAL_PRICE  CUSTOMER_NAME  ID  RELEVANCE}enum DraftOrderStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  COMPLETED  INVOICE_SENT  OPEN}type Duty implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countryCodeOfOrigin: CountryCode  harmonizedSystemCode: String  id: ID!  price: MoneyBag!  taxLines: [TaxLine!]!}type EditableProperty  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  locked: Boolean!  reason: FormattedString}interface Event  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  appTitle: String  attributeToApp: Boolean!  attributeToUser: Boolean!  createdAt: DateTime!  criticalAlert: Boolean!  id: ID!  message: FormattedString!}type EventConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [EventEdge!]!  nodes: [Event!]!  pageInfo: PageInfo!}type EventEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Event!}enum EventSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  ID  RELEVANCE}type FailedRequirement  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  action: NavigationItem  message: String!}interface File  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  alt: String  createdAt: DateTime!  fileErrors: [FileError!]!  fileStatus: FileStatus!  preview: MediaPreviewImage}type FileError  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: FileErrorCode!  details: String  message: String!}enum FileErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  UNKNOWN  INVALID_SIGNED_URL  IMAGE_DOWNLOAD_FAILURE  IMAGE_PROCESSING_FAILURE  MEDIA_TIMEOUT_ERROR  EXTERNAL_VIDEO_NOT_FOUND  EXTERNAL_VIDEO_UNLISTED  EXTERNAL_VIDEO_INVALID_ASPECT_RATIO  EXTERNAL_VIDEO_EMBED_DISABLED  EXTERNAL_VIDEO_EMBED_NOT_FOUND_OR_TRANSCODING  GENERIC_FILE_DOWNLOAD_FAILURE  GENERIC_FILE_INVALID_SIZE  VIDEO_METADATA_READ_ERROR  VIDEO_INVALID_FILETYPE_ERROR  VIDEO_MIN_WIDTH_ERROR  VIDEO_MAX_WIDTH_ERROR  VIDEO_MIN_HEIGHT_ERROR  VIDEO_MAX_HEIGHT_ERROR  VIDEO_MIN_DURATION_ERROR  VIDEO_MAX_DURATION_ERROR  VIDEO_VALIDATION_ERROR  MODEL3D_VALIDATION_ERROR  MODEL3D_THUMBNAIL_GENERATION_ERROR  MODEL3D_GLB_TO_USDZ_CONVERSION_ERROR  MODEL3D_GLB_OUTPUT_CREATION_ERROR  MODEL3D_PROCESSING_FAILURE  UNSUPPORTED_IMAGE_FILE_TYPE  INVALID_IMAGE_FILE_SIZE  INVALID_IMAGE_ASPECT_RATIO  INVALID_IMAGE_RESOLUTION  FILE_STORAGE_LIMIT_EXCEEDED}enum FileStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  UPLOADED  PROCESSING  READY  FAILED}type FilterOption  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  label: String!  value: String!}scalar FormattedString  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP)type Fulfillment implements LegacyInteroperability & Node  @join__implements(graph: ORDER, interface: "LegacyInteroperability")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "LegacyInteroperability")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "LegacyInteroperability")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  createdAt: DateTime!  deliveredAt: DateTime  displayStatus: FulfillmentDisplayStatus  estimatedDeliveryAt: DateTime  events(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: FulfillmentEventSortKeys = HAPPENED_AT): FulfillmentEventConnection!  fulfillmentLineItems(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): FulfillmentLineItemConnection!  fulfillmentOrders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): FulfillmentOrderConnection!  id: ID!  inTransitAt: DateTime  legacyResourceId: UnsignedInt64!  location: Location  name: String!  order: Order!  originAddress: FulfillmentOriginAddress  requiresShipping: Boolean!  service: FulfillmentService  status: FulfillmentStatus!  totalQuantity: Int!  trackingInfo(first: Int): [FulfillmentTrackingInfo!]!  updatedAt: DateTime!}type FulfillmentConnection  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [FulfillmentEdge!]!  nodes: [Fulfillment!]!  pageInfo: PageInfo!}enum FulfillmentDisplayStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ATTEMPTED_DELIVERY  CANCELED  CONFIRMED  DELIVERED  FAILURE  FULFILLED  IN_TRANSIT  LABEL_PRINTED  LABEL_PURCHASED  LABEL_VOIDED  MARKED_AS_FULFILLED  NOT_DELIVERED  OUT_FOR_DELIVERY  READY_FOR_PICKUP  PICKED_UP  SUBMITTED}type FulfillmentEdge  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Fulfillment!}type FulfillmentEvent implements Node  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  happenedAt: DateTime!  id: ID!  status: FulfillmentEventStatus!}type FulfillmentEventConnection  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [FulfillmentEventEdge!]!  nodes: [FulfillmentEvent!]!  pageInfo: PageInfo!}type FulfillmentEventEdge  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: FulfillmentEvent!}enum FulfillmentEventSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  HAPPENED_AT  ID  RELEVANCE}enum FulfillmentEventStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  LABEL_PURCHASED  LABEL_PRINTED  READY_FOR_PICKUP  CONFIRMED  IN_TRANSIT  OUT_FOR_DELIVERY  ATTEMPTED_DELIVERY  DELIVERED  FAILURE}type FulfillmentHold  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  reason: FulfillmentHoldReason!  reasonNotes: String}enum FulfillmentHoldReason  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  AWAITING_PAYMENT  HIGH_RISK_OF_FRAUD  INCORRECT_ADDRESS  INVENTORY_OUT_OF_STOCK  UNKNOWN_DELIVERY_DATE  OTHER}type FulfillmentLineItem implements Node  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  discountedTotalSet: MoneyBag!  id: ID!  lineItem: LineItem!  originalTotalSet: MoneyBag!  quantity: Int}type FulfillmentLineItemConnection  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [FulfillmentLineItemEdge!]!  nodes: [FulfillmentLineItem!]!  pageInfo: PageInfo!}type FulfillmentLineItemEdge  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: FulfillmentLineItem!}type FulfillmentOrder implements Node  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  assignedLocation: FulfillmentOrderAssignedLocation!  deliveryMethod: DeliveryMethod  destination: FulfillmentOrderDestination  fulfillAt: DateTime  fulfillBy: DateTime  fulfillmentHolds: [FulfillmentHold!]!  fulfillments(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): FulfillmentConnection!  id: ID!  internationalDuties: FulfillmentOrderInternationalDuties  lineItems(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): FulfillmentOrderLineItemConnection!  locationsForMove(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): FulfillmentOrderLocationForMoveConnection!  merchantRequests(kind: FulfillmentOrderMerchantRequestKind, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): FulfillmentOrderMerchantRequestConnection!  order: Order!  requestStatus: FulfillmentOrderRequestStatus!  status: FulfillmentOrderStatus!  supportedActions: [FulfillmentOrderSupportedAction!]!}enum FulfillmentOrderAction  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATE_FULFILLMENT  REQUEST_FULFILLMENT  CANCEL_FULFILLMENT_ORDER  MOVE  REQUEST_CANCELLATION  MARK_AS_OPEN  RELEASE_HOLD  HOLD  EXTERNAL}type FulfillmentOrderAssignedLocation  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address1: String  address2: String  city: String  countryCode: CountryCode!  location: Location  name: String!  phone: String  province: String  zip: String}enum FulfillmentOrderAssignmentStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CANCELLATION_REQUESTED  FULFILLMENT_REQUESTED  FULFILLMENT_ACCEPTED}type FulfillmentOrderConnection  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [FulfillmentOrderEdge!]!  nodes: [FulfillmentOrder!]!  pageInfo: PageInfo!}type FulfillmentOrderDestination implements Node  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address1: String  address2: String  city: String  company: String  countryCode: CountryCode  email: String  firstName: String  id: ID!  lastName: String  phone: String  province: String  zip: String}type FulfillmentOrderEdge  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: FulfillmentOrder!}type FulfillmentOrderInternationalDuties  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  incoterm: String!}type FulfillmentOrderLineItem implements Node  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  lineItem: LineItem!  remainingQuantity: Int!  totalQuantity: Int!  warnings: [FulfillmentOrderLineItemWarning!]!}type FulfillmentOrderLineItemConnection  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [FulfillmentOrderLineItemEdge!]!  nodes: [FulfillmentOrderLineItem!]!  pageInfo: PageInfo!}type FulfillmentOrderLineItemEdge  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: FulfillmentOrderLineItem!}type FulfillmentOrderLineItemWarning  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  description: String  title: String}type FulfillmentOrderLocationForMove  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  location: Location!  message: String  movable: Boolean!}type FulfillmentOrderLocationForMoveConnection  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [FulfillmentOrderLocationForMoveEdge!]!  nodes: [FulfillmentOrderLocationForMove!]!  pageInfo: PageInfo!}type FulfillmentOrderLocationForMoveEdge  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: FulfillmentOrderLocationForMove!}type FulfillmentOrderMerchantRequest implements Node  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  kind: FulfillmentOrderMerchantRequestKind!  message: String  requestOptions: JSON  responseData: JSON  sentAt: DateTime!}type FulfillmentOrderMerchantRequestConnection  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [FulfillmentOrderMerchantRequestEdge!]!  nodes: [FulfillmentOrderMerchantRequest!]!  pageInfo: PageInfo!}type FulfillmentOrderMerchantRequestEdge  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: FulfillmentOrderMerchantRequest!}enum FulfillmentOrderMerchantRequestKind  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  FULFILLMENT_REQUEST  CANCELLATION_REQUEST}enum FulfillmentOrderRequestStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  UNSUBMITTED  SUBMITTED  ACCEPTED  REJECTED  CANCELLATION_REQUESTED  CANCELLATION_ACCEPTED  CANCELLATION_REJECTED  CLOSED}enum FulfillmentOrderSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ID  RELEVANCE}enum FulfillmentOrderStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  OPEN  IN_PROGRESS  CANCELLED  INCOMPLETE  CLOSED  SCHEDULED  ON_HOLD}type FulfillmentOrderSupportedAction  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  action: FulfillmentOrderAction!  externalUrl: URL}type FulfillmentOriginAddress  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address1: String  address2: String  city: String  countryCode: String!  provinceCode: String  zip: String}type FulfillmentService  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  callbackUrl: URL @join__field(graph: PRODUCT)  fulfillmentOrdersOptIn: Boolean! @join__field(graph: PRODUCT)  handle: String! @join__field(graph: PRODUCT)  inventoryManagement: Boolean! @join__field(graph: PRODUCT)  location: Location @join__field(graph: PRODUCT)  permitsSkuSharing: Boolean! @join__field(graph: PRODUCT)  productBased: Boolean! @join__field(graph: PRODUCT)  serviceName: String! @join__field(graph: PRODUCT)  type: FulfillmentServiceType! @join__field(graph: PRODUCT)}enum FulfillmentServiceType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  GIFT_CARD  MANUAL  THIRD_PARTY}enum FulfillmentStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SUCCESS  CANCELLED  ERROR  FAILURE}type FulfillmentTrackingInfo  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  company: String  number: String  url: URL}type GenericFile implements File & Node  @join__implements(graph: CUSTOMER, interface: "File")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "File")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "File")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "File")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  alt: String  createdAt: DateTime!  fileErrors: [FileError!]!  fileStatus: FileStatus!  id: ID!  mimeType: String  originalFileSize: Int  preview: MediaPreviewImage  url: URL}interface HasEvents  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  events(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: EventSortKeys = ID, query: String): EventConnection!}interface HasLocalizationExtensions  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  localizationExtensions(countryCodes: [CountryCode!], purposes: [LocalizationExtensionPurpose!], first: Int, after: String, last: Int, before: String, reverse: Boolean = false): LocalizationExtensionConnection!}interface HasMetafieldDefinitions  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  metafieldDefinitions(namespace: String, pinnedStatus: MetafieldDefinitionPinnedStatus = ANY, first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: MetafieldDefinitionSortKeys = ID, query: String): MetafieldDefinitionConnection!}interface HasMetafields  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  metafield(namespace: String!, key: String!): Metafield  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection!  privateMetafield(namespace: String!, key: String!): PrivateMetafield  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection!}interface HasPublishedTranslations  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  translations(locale: String!, marketId: ID): [PublishedTranslation!]!}scalar HTML  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP)type Image implements HasMetafields  @join__implements(graph: CUSTOMER, interface: "HasMetafields")  @join__implements(graph: ORDER, interface: "HasMetafields")  @join__implements(graph: PRODUCT, interface: "HasMetafields")  @join__implements(graph: SHOP, interface: "HasMetafields")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  altText: String  height: Int  id: ID  metafield(namespace: String!, key: String!): Metafield  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection!  privateMetafield(namespace: String!, key: String!): PrivateMetafield  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection!  url(transform: ImageTransformInput): URL!  width: Int}type ImageConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [ImageEdge!]!  nodes: [Image!]!  pageInfo: PageInfo!}enum ImageContentType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PNG  JPG  WEBP}type ImageEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Image!}input ImageInput  @join__type(graph: PRODUCT){  id: ID  altText: String  src: String}input ImageTransformInput  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  crop: CropRegion  maxWidth: Int  maxHeight: Int  scale: Int = 1  preferredContentType: ImageContentType}type InventoryItem implements LegacyInteroperability & Node  @join__implements(graph: ORDER, interface: "LegacyInteroperability")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "LegacyInteroperability")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "LegacyInteroperability")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countryCodeOfOrigin: CountryCode  countryHarmonizedSystemCodes(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): CountryHarmonizedSystemCodeConnection!  createdAt: DateTime!  duplicateSkuCount: Int!  harmonizedSystemCode: String  id: ID!  inventoryHistoryUrl: URL  inventoryLevel(locationId: ID!): InventoryLevel  inventoryLevels(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, query: String): InventoryLevelConnection!  legacyResourceId: UnsignedInt64!  locationsCount: Int!  provinceCodeOfOrigin: String  requiresShipping: Boolean!  sku: String  tracked: Boolean!  trackedEditable: EditableProperty!  unitCost: MoneyV2  updatedAt: DateTime!  variant: ProductVariant!}input InventoryItemInput  @join__type(graph: PRODUCT){  cost: Decimal  tracked: Boolean}type InventoryLevel implements Node  @join__implements(graph: PRODUCT, interface: "Node")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  available: Int! @join__field(graph: PRODUCT)  canDeactivate: Boolean! @join__field(graph: PRODUCT)  createdAt: DateTime! @join__field(graph: PRODUCT)  deactivationAlert: String @join__field(graph: PRODUCT)  deactivationAlertHtml: FormattedString @join__field(graph: PRODUCT)  incoming: Int! @join__field(graph: PRODUCT)  item: InventoryItem! @join__field(graph: PRODUCT)  location: Location! @join__field(graph: PRODUCT)  updatedAt: DateTime! @join__field(graph: PRODUCT)}type InventoryLevelConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [InventoryLevelEdge!]!  nodes: [InventoryLevel!]!  pageInfo: PageInfo!}type InventoryLevelEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: InventoryLevel!}input InventoryLevelInput  @join__type(graph: PRODUCT){  availableQuantity: Int!  locationId: ID!}type Job  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  done: Boolean! @join__field(graph: SHOP)}scalar join__FieldSetenum join__Graph {  CUSTOMER @join__graph(name: "customer", url: "https://customer.admin.gshopper.com")  ORDER @join__graph(name: "order", url: "https://order.admin.gshopper.com")  PRODUCT @join__graph(name: "product", url: "https://product.admin.gshopper.com")  SHOP @join__graph(name: "shop", url: "https://shop.admin.gshopper.com")}scalar JSON  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP)enum LanguageCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  AF  AK  AM  AR  AS  AZ  BE  BG  BM  BN  BO  BR  BS  CA  CE  CS  CU  CY  DA  DE  DZ  EE  EL  EN  EO  ES  ET  EU  FA  FF  FI  FO  FR  FY  GA  GD  GL  GU  GV  HA  HE  HI  HR  HU  HY  IA  ID  IG  II  IS  IT  JA  JV  KA  KI  KK  KL  KM  KN  KO  KS  KU  KW  KY  LB  LG  LN  LO  LT  LU  LV  MG  MI  MK  ML  MN  MR  MS  MT  MY  NB  ND  NE  NL  NN  NO  OM  OR  OS  PA  PL  PS  PT_BR  PT_PT  QU  RM  RN  RO  RU  RW  SD  SE  SG  SI  SK  SL  SN  SO  SQ  SR  SU  SV  SW  TA  TE  TG  TH  TI  TK  TO  TR  TT  UG  UK  UR  UZ  VI  WO  XH  YI  YO  ZH_CN  ZH_TW  ZU  ZH  PT  VO}interface LegacyInteroperability  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  legacyResourceId: UnsignedInt64!}type LimitedPendingOrderCount  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  atMax: Boolean!  count: Int!}type LineItem implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  contract: SubscriptionContract  currentQuantity: Int!  customAttributes: [Attribute!]!  discountAllocations: [DiscountAllocation!]!  discountedTotalSet: MoneyBag!  discountedUnitPriceSet: MoneyBag!  duties: [Duty!]!  id: ID!  image: Image  merchantEditable: Boolean!  name: String!  nonFulfillableQuantity: Int!  originalTotalSet: MoneyBag!  originalUnitPriceSet: MoneyBag!  product: Product  quantity: Int!  refundableQuantity: Int!  requiresShipping: Boolean!  restockable: Boolean!  sellingPlan: LineItemSellingPlan  sku: String  staffMember: StaffMember  taxLines(first: Int): [TaxLine!]!  taxable: Boolean!  title: String!  totalDiscountSet: MoneyBag!  unfulfilledDiscountedTotalSet: MoneyBag!  unfulfilledOriginalTotalSet: MoneyBag!  unfulfilledQuantity: Int!  variant: ProductVariant  variantTitle: String  vendor: String}type LineItemConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [LineItemEdge!]!  nodes: [LineItem!]!  pageInfo: PageInfo!}type LineItemEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: LineItem!}type LineItemSellingPlan  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  name: String!  sellingPlanId: ID}type Link implements HasPublishedTranslations  @join__implements(graph: CUSTOMER, interface: "HasPublishedTranslations")  @join__implements(graph: ORDER, interface: "HasPublishedTranslations")  @join__implements(graph: PRODUCT, interface: "HasPublishedTranslations")  @join__implements(graph: SHOP, interface: "HasPublishedTranslations")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  label: String!  translations(locale: String!, marketId: ID): [PublishedTranslation!]!  url: URL!}scalar link__Importenum link__Purpose {  """  `SECURITY` features provide metadata necessary to securely resolve fields.  """  SECURITY  """  `EXECUTION` features provide metadata necessary for operation execution.  """  EXECUTION}type LocalizationExtension  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countryCode: CountryCode!  key: LocalizationExtensionKey!  purpose: LocalizationExtensionPurpose!  title: String!  value: String!}type LocalizationExtensionConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [LocalizationExtensionEdge!]!  nodes: [LocalizationExtension!]!  pageInfo: PageInfo!}type LocalizationExtensionEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: LocalizationExtension!}enum LocalizationExtensionKey  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  TAX_CREDENTIAL_BR  SHIPPING_CREDENTIAL_BR  SHIPPING_CREDENTIAL_CN  TAX_CREDENTIAL_IT  TAX_EMAIL_IT  SHIPPING_CREDENTIAL_KR}enum LocalizationExtensionPurpose  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SHIPPING  TAX}type Location implements HasMetafieldDefinitions & HasMetafields & LegacyInteroperability & Node  @join__implements(graph: CUSTOMER, interface: "HasMetafieldDefinitions")  @join__implements(graph: CUSTOMER, interface: "HasMetafields")  @join__implements(graph: CUSTOMER, interface: "LegacyInteroperability")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "HasMetafieldDefinitions")  @join__implements(graph: ORDER, interface: "HasMetafields")  @join__implements(graph: ORDER, interface: "LegacyInteroperability")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "HasMetafieldDefinitions")  @join__implements(graph: PRODUCT, interface: "HasMetafields")  @join__implements(graph: PRODUCT, interface: "LegacyInteroperability")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "HasMetafieldDefinitions")  @join__implements(graph: SHOP, interface: "HasMetafields")  @join__implements(graph: SHOP, interface: "LegacyInteroperability")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  activatable: Boolean!  address: LocationAddress!  addressVerified: Boolean!  deactivatable: Boolean!  deactivatedAt: String  deletable: Boolean!  fulfillmentService: FulfillmentService  fulfillsOnlineOrders: Boolean!  hasActiveInventory: Boolean!  hasUnfulfilledOrders: Boolean!  id: ID!  inventoryLevel(inventoryItemId: ID!): InventoryLevel  inventoryLevels(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, query: String): InventoryLevelConnection!  isActive: Boolean!  legacyResourceId: UnsignedInt64!  metafield(namespace: String!, key: String!): Metafield  metafieldDefinitions(namespace: String, pinnedStatus: MetafieldDefinitionPinnedStatus = ANY, first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: MetafieldDefinitionSortKeys = ID, query: String): MetafieldDefinitionConnection!  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection!  name: String!  privateMetafield(namespace: String!, key: String!): PrivateMetafield  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection!  shipsInventory: Boolean!  suggestedAddresses: [LocationSuggestedAddress!]!}type LocationAddress  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address1: String  address2: String  city: String  country: String  countryCode: String  formatted: [String!]!  latitude: Float  longitude: Float  phone: String  province: String  provinceCode: String  zip: String}type LocationConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [LocationEdge!]!  nodes: [Location!]!  pageInfo: PageInfo!}type LocationEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Location!}enum LocationSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  NAME  ID  RELEVANCE}type LocationSuggestedAddress  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address1: String  address2: String  city: String  country: String  countryCode: CountryCode  formatted: [String!]!  province: String  provinceCode: String  zip: String}type MailingAddress implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: SHOP){  address1: String  address2: String  city: String  company: String  coordinatesValidated: Boolean!  country: String  countryCodeV2: CountryCode  firstName: String  formattedArea: String  id: ID!  lastName: String  latitude: Float  longitude: Float  name: String  phone: String  province: String  provinceCode: String  zip: String}input MailingAddressInput  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: SHOP){  address1: String  address2: String  city: String  company: String  countryCode: CountryCode  firstName: String  lastName: String  phone: String  provinceCode: String  zip: String}type ManualDiscountApplication implements DiscountApplication  @join__implements(graph: CUSTOMER, interface: "DiscountApplication")  @join__implements(graph: ORDER, interface: "DiscountApplication")  @join__implements(graph: PRODUCT, interface: "DiscountApplication")  @join__implements(graph: SHOP, interface: "DiscountApplication")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  allocationMethod: DiscountApplicationAllocationMethod!  description: String  index: Int!  targetSelection: DiscountApplicationTargetSelection!  targetType: DiscountApplicationTargetType!  title: String!  value: PricingValue!}type Market implements Node  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  currencySettings: MarketCurrencySettings! @join__field(graph: SHOP)  enabled: Boolean! @join__field(graph: SHOP)  name: String! @join__field(graph: SHOP)  priceList: PriceList @join__field(graph: SHOP)  primary: Boolean! @join__field(graph: SHOP)  regions(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MarketRegionConnection! @join__field(graph: SHOP)  webPresence: MarketWebPresence @join__field(graph: SHOP)}type MarketCurrencySettings  @join__type(graph: SHOP){  baseCurrency: CurrencySetting!  localCurrencies: Boolean!}enum MarketingChannel  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SEARCH  DISPLAY  SOCIAL  EMAIL  REFERRAL}type MarketingEvent implements LegacyInteroperability & Node  @join__implements(graph: CUSTOMER, interface: "LegacyInteroperability")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "LegacyInteroperability")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "LegacyInteroperability")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "LegacyInteroperability")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  app: App!  channel: MarketingChannel  description: String  endedAt: DateTime  id: ID!  legacyResourceId: UnsignedInt64!  manageUrl: URL  previewUrl: URL  remoteId: String  scheduledToEndAt: DateTime  sourceAndMedium: String!  startedAt: DateTime!  type: MarketingTactic!  utmCampaign: String  utmMedium: String  utmSource: String}enum MarketingTactic  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ABANDONED_CART  AD  AFFILIATE  LINK  LOYALTY  MESSAGE  NEWSLETTER  NOTIFICATION  POST  RETARGETING  TRANSACTIONAL  SEO  DIRECT  STOREFRONT_APP}interface MarketRegion  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  name: String!}type MarketRegionConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [MarketRegionEdge!]!  nodes: [MarketRegion!]!  pageInfo: PageInfo!}type MarketRegionEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: MarketRegion!}type MarketWebPresence implements Node  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  alternateLocales: [String!]! @join__field(graph: SHOP)  defaultLocale: String! @join__field(graph: SHOP)  domain: Domain @join__field(graph: SHOP)  market: Market! @join__field(graph: SHOP)  rootUrls: [MarketWebPresenceRootUrl!]! @join__field(graph: SHOP)  subfolderSuffix: String @join__field(graph: SHOP)}type MarketWebPresenceRootUrl  @join__type(graph: SHOP){  locale: String!  url: URL!}interface Media  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  alt: String  mediaContentType: MediaContentType!  mediaErrors: [MediaError!]!  mediaWarnings: [MediaWarning!]!  preview: MediaPreviewImage  status: MediaStatus!}type MediaConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [MediaEdge!]!  nodes: [Media!]!  pageInfo: PageInfo!}enum MediaContentType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  VIDEO  EXTERNAL_VIDEO  MODEL_3D  IMAGE}type MediaEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Media!}type MediaError  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: MediaErrorCode!  details: String  message: String!}enum MediaErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  UNKNOWN  INVALID_SIGNED_URL  IMAGE_DOWNLOAD_FAILURE  IMAGE_PROCESSING_FAILURE  MEDIA_TIMEOUT_ERROR  EXTERNAL_VIDEO_NOT_FOUND  EXTERNAL_VIDEO_UNLISTED  EXTERNAL_VIDEO_INVALID_ASPECT_RATIO  EXTERNAL_VIDEO_EMBED_DISABLED  EXTERNAL_VIDEO_EMBED_NOT_FOUND_OR_TRANSCODING  GENERIC_FILE_DOWNLOAD_FAILURE  GENERIC_FILE_INVALID_SIZE  VIDEO_METADATA_READ_ERROR  VIDEO_INVALID_FILETYPE_ERROR  VIDEO_MIN_WIDTH_ERROR  VIDEO_MAX_WIDTH_ERROR  VIDEO_MIN_HEIGHT_ERROR  VIDEO_MAX_HEIGHT_ERROR  VIDEO_MIN_DURATION_ERROR  VIDEO_MAX_DURATION_ERROR  VIDEO_VALIDATION_ERROR  MODEL3D_VALIDATION_ERROR  MODEL3D_THUMBNAIL_GENERATION_ERROR  MODEL3D_GLB_TO_USDZ_CONVERSION_ERROR  MODEL3D_GLB_OUTPUT_CREATION_ERROR  MODEL3D_PROCESSING_FAILURE  UNSUPPORTED_IMAGE_FILE_TYPE  INVALID_IMAGE_FILE_SIZE  INVALID_IMAGE_ASPECT_RATIO  INVALID_IMAGE_RESOLUTION  FILE_STORAGE_LIMIT_EXCEEDED}type MediaImage implements File & Media & Node  @join__implements(graph: CUSTOMER, interface: "File")  @join__implements(graph: CUSTOMER, interface: "Media")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "File")  @join__implements(graph: ORDER, interface: "Media")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "File")  @join__implements(graph: PRODUCT, interface: "Media")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "File")  @join__implements(graph: SHOP, interface: "Media")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  alt: String  createdAt: DateTime!  fileErrors: [FileError!]!  fileStatus: FileStatus!  id: ID!  image: Image  mediaContentType: MediaContentType!  mediaErrors: [MediaError!]!  mediaWarnings: [MediaWarning!]!  mimeType: String  originalSource: MediaImageOriginalSource  preview: MediaPreviewImage  status: MediaStatus!}type MediaImageOriginalSource  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  fileSize: Int}type MediaPreviewImage  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  image: Image  status: MediaPreviewImageStatus!}enum MediaPreviewImageStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  UPLOADED  PROCESSING  READY  FAILED}enum MediaStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  UPLOADED  PROCESSING  READY  FAILED}type MediaUserError implements DisplayableError  @join__implements(graph: CUSTOMER, interface: "DisplayableError")  @join__implements(graph: ORDER, interface: "DisplayableError")  @join__implements(graph: PRODUCT, interface: "DisplayableError")  @join__implements(graph: SHOP, interface: "DisplayableError")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: MediaUserErrorCode  field: [String!]  message: String!}enum MediaUserErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  INVALID  BLANK  VIDEO_VALIDATION_ERROR  MODEL3D_VALIDATION_ERROR  VIDEO_THROTTLE_EXCEEDED  MODEL3D_THROTTLE_EXCEEDED  PRODUCT_MEDIA_LIMIT_EXCEEDED  SHOP_MEDIA_LIMIT_EXCEEDED  PRODUCT_DOES_NOT_EXIST  MEDIA_DOES_NOT_EXIST  MEDIA_DOES_NOT_EXIST_ON_PRODUCT  TOO_MANY_MEDIA_PER_INPUT_PAIR  MAXIMUM_VARIANT_MEDIA_PAIRS_EXCEEDED  INVALID_MEDIA_TYPE  PRODUCT_VARIANT_SPECIFIED_MULTIPLE_TIMES  PRODUCT_VARIANT_DOES_NOT_EXIST_ON_PRODUCT  NON_READY_MEDIA  PRODUCT_VARIANT_ALREADY_HAS_MEDIA  MEDIA_IS_NOT_ATTACHED_TO_VARIANT  MEDIA_CANNOT_BE_MODIFIED}type MediaWarning  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: MediaWarningCode!  message: String}enum MediaWarningCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  MODEL_SMALL_PHYSICAL_SIZE  MODEL_LARGE_PHYSICAL_SIZE}type MerchantApprovalSignals  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  identityVerified: Boolean!  verifiedByShopify: Boolean!}type Metafield implements LegacyInteroperability & Node  @join__implements(graph: CUSTOMER, interface: "LegacyInteroperability")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "LegacyInteroperability")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "LegacyInteroperability")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "LegacyInteroperability")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  createdAt: DateTime!  definition: MetafieldDefinition  description: String  id: ID!  key: String!  legacyResourceId: UnsignedInt64!  namespace: String!  owner: HasMetafields!  ownerType: MetafieldOwnerType!  reference: MetafieldReference  references(first: Int, after: String, last: Int, before: String): MetafieldReferenceConnection  type: String!  updatedAt: DateTime!  value: String!}type MetafieldConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [MetafieldEdge!]!  nodes: [Metafield!]!  pageInfo: PageInfo!}type MetafieldDefinition implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  description: String  id: ID!  key: String!  metafields(validationStatus: MetafieldValidationStatus = ANY, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection!  metafieldsCount(validationStatus: MetafieldValidationStatus): Int!  name: String!  namespace: String!  ownerType: MetafieldOwnerType!  pinnedPosition: Int  standardTemplate: StandardMetafieldDefinitionTemplate  type: MetafieldDefinitionType!  validationStatus: MetafieldDefinitionValidationStatus!  validations: [MetafieldDefinitionValidation!]!  visibleToStorefrontApi: Boolean!}type MetafieldDefinitionConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [MetafieldDefinitionEdge!]!  nodes: [MetafieldDefinition!]!  pageInfo: PageInfo!}type MetafieldDefinitionEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: MetafieldDefinition!}enum MetafieldDefinitionPinnedStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ANY  PINNED  UNPINNED}enum MetafieldDefinitionSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ID  NAME  PINNED_POSITION  RELEVANCE}type MetafieldDefinitionSupportedValidation  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  name: String!  type: String!}type MetafieldDefinitionType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  category: String!  name: String!  supportedValidations: [MetafieldDefinitionSupportedValidation!]!  supportsDefinitionMigrations: Boolean!}type MetafieldDefinitionValidation  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  name: String!  type: String!  value: String}enum MetafieldDefinitionValidationStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ALL_VALID  IN_PROGRESS  SOME_INVALID}type MetafieldEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Metafield!}input MetafieldInput  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  description: String  id: ID  namespace: String  key: String  value: String  type: String}enum MetafieldOwnerType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  API_PERMISSION  ARTICLE  BLOG  COLLECTION  CUSTOMER  DISCOUNT  DRAFTORDER  LOCATION  ORDER  PAGE  PRODUCT  PRODUCTIMAGE  PRODUCTVARIANT  SHOP}union MetafieldReference  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = Collection | GenericFile | MediaImage | OnlineStorePage | Product | ProductVariant | Videotype MetafieldReferenceConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [MetafieldReferenceEdge!]!  nodes: [MetafieldReference]!  pageInfo: PageInfo!}type MetafieldReferenceEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: MetafieldReference}enum MetafieldValidationStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ANY  VALID  INVALID}enum MethodDefinitionSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  RATE_PROVIDER_TYPE  ID  RELEVANCE}scalar Money  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP)type MoneyBag  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  presentmentMoney: MoneyV2!  shopMoney: MoneyV2!}type MoneyV2  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amount: Decimal!  currencyCode: CurrencyCode!}input MoveInput  @join__type(graph: PRODUCT){  id: ID!  newPosition: UnsignedInt64!}type Mutation  @inContext  @join__type(graph: CUSTOMER)  @join__type(graph: PRODUCT){  customerCreate(input: CustomerInput!): CustomerCreatePayload @join__field(graph: CUSTOMER)  productAppendImages(input: ProductAppendImagesInput!): ProductAppendImagesPayload @join__field(graph: PRODUCT)  productChangeStatus(productId: ID!, status: ProductStatus!): ProductChangeStatusPayload @join__field(graph: PRODUCT)  productCreate(input: ProductInput!, media: [CreateMediaInput!]): ProductCreatePayload @join__field(graph: PRODUCT)  productCreateMedia(productId: ID!, media: [CreateMediaInput!]!): ProductCreateMediaPayload @join__field(graph: PRODUCT)  productDelete(input: ProductDeleteInput!): ProductDeletePayload @join__field(graph: PRODUCT)  productDeleteImages(id: ID!, imageIds: [ID!]!): ProductDeleteImagesPayload @join__field(graph: PRODUCT)  productDeleteMedia(productId: ID!, mediaIds: [ID!]!): ProductDeleteMediaPayload @join__field(graph: PRODUCT)  productDuplicate(productId: ID!, newTitle: String!, newStatus: ProductStatus, includeImages: Boolean = false): ProductDuplicatePayload @join__field(graph: PRODUCT)  productImageUpdate(productId: ID!, image: ImageInput!): ProductImageUpdatePayload @join__field(graph: PRODUCT)  productJoinSellingPlanGroups(id: ID!, sellingPlanGroupIds: [ID!]!): ProductJoinSellingPlanGroupsPayload @join__field(graph: PRODUCT)  productLeaveSellingPlanGroups(id: ID!, sellingPlanGroupIds: [ID!]!): ProductLeaveSellingPlanGroupsPayload @join__field(graph: PRODUCT)  productReorderImages(id: ID!, moves: [MoveInput!]!): ProductReorderImagesPayload @join__field(graph: PRODUCT)  productReorderMedia(id: ID!, moves: [MoveInput!]!): ProductReorderMediaPayload @join__field(graph: PRODUCT)  productUpdate(input: ProductInput!): ProductUpdatePayload @join__field(graph: PRODUCT)  productUpdateMedia(productId: ID!, media: [UpdateMediaInput!]!): ProductUpdateMediaPayload @join__field(graph: PRODUCT)  productVariantAppendMedia(productId: ID!, variantMedia: [ProductVariantAppendMediaInput!]!): ProductVariantAppendMediaPayload @join__field(graph: PRODUCT)  productVariantCreate(input: ProductVariantInput!): ProductVariantCreatePayload @join__field(graph: PRODUCT)  productVariantDelete(id: ID!): ProductVariantDeletePayload @join__field(graph: PRODUCT)  productVariantDetachMedia(productId: ID!, variantMedia: [ProductVariantDetachMediaInput!]!): ProductVariantDetachMediaPayload @join__field(graph: PRODUCT)  productVariantJoinSellingPlanGroups(id: ID!, sellingPlanGroupIds: [ID!]!): ProductVariantJoinSellingPlanGroupsPayload @join__field(graph: PRODUCT)  productVariantLeaveSellingPlanGroups(id: ID!, sellingPlanGroupIds: [ID!]!): ProductVariantLeaveSellingPlanGroupsPayload @join__field(graph: PRODUCT)  productVariantUpdate(input: ProductVariantInput!): ProductVariantUpdatePayload @join__field(graph: PRODUCT)  productVariantsBulkCreate(variants: [ProductVariantsBulkInput!]!, productId: ID!): ProductVariantsBulkCreatePayload @join__field(graph: PRODUCT)  productVariantsBulkDelete(variantsIds: [ID!]!, productId: ID!): ProductVariantsBulkDeletePayload @join__field(graph: PRODUCT)  productVariantsBulkReorder(productId: ID!, positions: [ProductVariantPositionInput!]!): ProductVariantsBulkReorderPayload @join__field(graph: PRODUCT)  productVariantsBulkUpdate(variants: [ProductVariantsBulkInput!]!, productId: ID!): ProductVariantsBulkUpdatePayload @join__field(graph: PRODUCT)}interface Navigable  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  defaultCursor: String!}type NavigationItem  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: String!  title: String!  url: URL!}interface Node  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!}type OnlineStorePage implements HasPublishedTranslations & Navigable & Node  @join__implements(graph: CUSTOMER, interface: "HasPublishedTranslations")  @join__implements(graph: CUSTOMER, interface: "Navigable")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "HasPublishedTranslations")  @join__implements(graph: ORDER, interface: "Navigable")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "HasPublishedTranslations")  @join__implements(graph: PRODUCT, interface: "Navigable")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "HasPublishedTranslations")  @join__implements(graph: SHOP, interface: "Navigable")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  defaultCursor: String!  id: ID!  translations(locale: String!, marketId: ID): [PublishedTranslation!]!}interface OnlineStorePreviewable  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  onlineStorePreviewUrl: URL}type Order implements CommentEventSubject & HasEvents & HasLocalizationExtensions & HasMetafieldDefinitions & HasMetafields & LegacyInteroperability & Node  @join__implements(graph: ORDER, interface: "CommentEventSubject")  @join__implements(graph: ORDER, interface: "HasEvents")  @join__implements(graph: ORDER, interface: "HasLocalizationExtensions")  @join__implements(graph: ORDER, interface: "HasMetafieldDefinitions")  @join__implements(graph: ORDER, interface: "HasMetafields")  @join__implements(graph: ORDER, interface: "LegacyInteroperability")  @join__implements(graph: ORDER, interface: "Node")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  agreements(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, query: String): SalesAgreementConnection! @join__field(graph: ORDER)  alerts: [ResourceAlert!]! @join__field(graph: ORDER)  app: OrderApp @join__field(graph: ORDER)  billingAddress: MailingAddress @join__field(graph: ORDER)  billingAddressMatchesShippingAddress: Boolean! @join__field(graph: ORDER)  canMarkAsPaid: Boolean! @join__field(graph: ORDER)  canNotifyCustomer: Boolean! @join__field(graph: ORDER)  cancelReason: OrderCancelReason @join__field(graph: ORDER)  cancelledAt: DateTime @join__field(graph: ORDER)  capturable: Boolean! @join__field(graph: ORDER)  cartDiscountAmountSet: MoneyBag @join__field(graph: ORDER)  channelInformation: ChannelInformation @join__field(graph: ORDER)  clientIp: String @join__field(graph: ORDER)  closed: Boolean! @join__field(graph: ORDER)  closedAt: DateTime @join__field(graph: ORDER)  confirmed: Boolean! @join__field(graph: ORDER)  createdAt: DateTime! @join__field(graph: ORDER)  currencyCode: CurrencyCode! @join__field(graph: ORDER)  currentCartDiscountAmountSet: MoneyBag! @join__field(graph: ORDER)  currentSubtotalLineItemsQuantity: Int! @join__field(graph: ORDER)  currentSubtotalPriceSet: MoneyBag! @join__field(graph: ORDER)  currentTaxLines: [TaxLine!]! @join__field(graph: ORDER)  currentTotalDiscountsSet: MoneyBag! @join__field(graph: ORDER)  currentTotalDutiesSet: MoneyBag @join__field(graph: ORDER)  currentTotalPriceSet: MoneyBag! @join__field(graph: ORDER)  currentTotalTaxSet: MoneyBag! @join__field(graph: ORDER)  currentTotalWeight: UnsignedInt64! @join__field(graph: ORDER)  customAttributes: [Attribute!]! @join__field(graph: ORDER)  customer: Customer @join__field(graph: ORDER)  customerAcceptsMarketing: Boolean! @join__field(graph: ORDER)  customerJourneySummary: CustomerJourneySummary @join__field(graph: ORDER)  customerLocale: String @join__field(graph: ORDER)  discountApplications(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): DiscountApplicationConnection! @join__field(graph: ORDER)  discountCode: String @join__field(graph: ORDER)  discountCodes: [String!]! @join__field(graph: ORDER)  displayAddress: MailingAddress @join__field(graph: ORDER)  displayFinancialStatus: OrderDisplayFinancialStatus @join__field(graph: ORDER)  displayFulfillmentStatus: OrderDisplayFulfillmentStatus! @join__field(graph: ORDER)  disputes: [OrderDisputeSummary!]! @join__field(graph: ORDER)  edited: Boolean! @join__field(graph: ORDER)  email: String @join__field(graph: ORDER)  estimatedTaxes: Boolean! @join__field(graph: ORDER)  events(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: EventSortKeys = ID, query: String): EventConnection! @join__field(graph: ORDER)  fulfillable: Boolean! @join__field(graph: ORDER)  fulfillmentOrders(displayable: Boolean = false, first: Int, after: String, last: Int, before: String, reverse: Boolean = false, query: String): FulfillmentOrderConnection! @join__field(graph: ORDER)  fulfillments(first: Int): [Fulfillment!]! @join__field(graph: ORDER)  fullyPaid: Boolean! @join__field(graph: ORDER)  hasTimelineComment: Boolean! @join__field(graph: ORDER)  legacyResourceId: UnsignedInt64! @join__field(graph: ORDER)  lineItems(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): LineItemConnection! @join__field(graph: ORDER)  localizationExtensions(countryCodes: [CountryCode!], purposes: [LocalizationExtensionPurpose!], first: Int, after: String, last: Int, before: String, reverse: Boolean = false): LocalizationExtensionConnection! @join__field(graph: ORDER)  merchantEditable: Boolean! @join__field(graph: ORDER)  merchantEditableErrors: [String!]! @join__field(graph: ORDER)  merchantOfRecordApp: OrderApp @join__field(graph: ORDER)  metafield(namespace: String!, key: String!): Metafield @join__field(graph: ORDER)  metafieldDefinitions(namespace: String, pinnedStatus: MetafieldDefinitionPinnedStatus = ANY, first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: MetafieldDefinitionSortKeys = ID, query: String): MetafieldDefinitionConnection! @join__field(graph: ORDER)  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection! @join__field(graph: ORDER)  name: String! @join__field(graph: ORDER)  netPaymentSet: MoneyBag! @join__field(graph: ORDER)  nonFulfillableLineItems(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): LineItemConnection! @join__field(graph: ORDER)  note: String @join__field(graph: ORDER)  originalTotalDutiesSet: MoneyBag @join__field(graph: ORDER)  originalTotalPriceSet: MoneyBag! @join__field(graph: ORDER)  paymentCollectionDetails: OrderPaymentCollectionDetails! @join__field(graph: ORDER)  paymentGatewayNames: [String!]! @join__field(graph: ORDER)  paymentTerms: PaymentTerms @join__field(graph: ORDER)  phone: String @join__field(graph: ORDER)  physicalLocation: Location @join__field(graph: ORDER)  presentmentCurrencyCode: CurrencyCode! @join__field(graph: ORDER)  privateMetafield(namespace: String!, key: String!): PrivateMetafield @join__field(graph: ORDER)  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection! @join__field(graph: ORDER)  processedAt: DateTime! @join__field(graph: ORDER)  publication: Publication @join__field(graph: ORDER)  purchasingEntity: PurchasingEntity @join__field(graph: ORDER)  refundDiscrepancySet: MoneyBag! @join__field(graph: ORDER)  refundable: Boolean! @join__field(graph: ORDER)  refunds(first: Int): [Refund!]! @join__field(graph: ORDER)  registeredSourceUrl: URL @join__field(graph: ORDER)  requiresShipping: Boolean! @join__field(graph: ORDER)  restockable: Boolean! @join__field(graph: ORDER)  riskLevel: OrderRiskLevel! @join__field(graph: ORDER)  risks(first: Int): [OrderRisk!]! @join__field(graph: ORDER)  shippingAddress: MailingAddress @join__field(graph: ORDER)  shippingLine: ShippingLine @join__field(graph: ORDER)  shippingLines(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ShippingLineConnection! @join__field(graph: ORDER)  sourceIdentifier: String @join__field(graph: ORDER)  subtotalLineItemsQuantity: Int! @join__field(graph: ORDER)  subtotalPriceSet: MoneyBag @join__field(graph: ORDER)  suggestedRefund(shippingAmount: Money, refundShipping: Boolean, refundLineItems: [RefundLineItemInput!], refundDuties: [RefundDutyInput!], suggestFullRefund: Boolean = false): SuggestedRefund @join__field(graph: ORDER)  tags: [String!]! @join__field(graph: ORDER)  taxLines: [TaxLine!]! @join__field(graph: ORDER)  taxesIncluded: Boolean! @join__field(graph: ORDER)  test: Boolean! @join__field(graph: ORDER)  totalCapturableSet: MoneyBag! @join__field(graph: ORDER)  totalDiscountsSet: MoneyBag @join__field(graph: ORDER)  totalOutstandingSet: MoneyBag! @join__field(graph: ORDER)  totalPriceSet: MoneyBag! @join__field(graph: ORDER)  totalReceivedSet: MoneyBag! @join__field(graph: ORDER)  totalRefundedSet: MoneyBag! @join__field(graph: ORDER)  totalRefundedShippingSet: MoneyBag! @join__field(graph: ORDER)  totalShippingPriceSet: MoneyBag! @join__field(graph: ORDER)  totalTaxSet: MoneyBag @join__field(graph: ORDER)  totalTipReceivedSet: MoneyBag! @join__field(graph: ORDER)  totalWeight: UnsignedInt64 @join__field(graph: ORDER)  transactions(first: Int, capturable: Boolean, manuallyResolvable: Boolean): [OrderTransaction!]! @join__field(graph: ORDER)  unpaid: Boolean! @join__field(graph: ORDER)  updatedAt: DateTime! @join__field(graph: ORDER)}enum OrderActionType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ORDER  ORDER_EDIT  REFUND  UNKNOWN}type OrderApp  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  icon: Image!  id: ID!  name: String!}enum OrderCancelReason  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CUSTOMER  FRAUD  INVENTORY  DECLINED  OTHER}type OrderConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [OrderEdge!]!  nodes: [Order!]!  pageInfo: PageInfo!}enum OrderDisplayFinancialStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PENDING  AUTHORIZED  PARTIALLY_PAID  PARTIALLY_REFUNDED  VOIDED  PAID  REFUNDED  EXPIRED}enum OrderDisplayFulfillmentStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  UNFULFILLED  PARTIALLY_FULFILLED  FULFILLED  RESTOCKED  PENDING_FULFILLMENT  OPEN  IN_PROGRESS  ON_HOLD  SCHEDULED}type OrderDisputeSummary implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  initiatedAs: DisputeType!  status: DisputeStatus!}type OrderEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Order!}type OrderPaymentCollectionDetails  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  additionalPaymentCollectionUrl: URL  vaultedPaymentMethods: [PaymentMandate!]}type OrderRisk  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  display: Boolean!  level: OrderRiskLevel  message: String}enum OrderRiskLevel  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  LOW  MEDIUM  HIGH}enum OrderSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  CUSTOMER_NAME  FINANCIAL_STATUS  FULFILLMENT_STATUS  ORDER_NUMBER  PROCESSED_AT  TOTAL_PRICE  UPDATED_AT  ID  RELEVANCE}type OrderTransaction implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  accountNumber: String  amountSet: MoneyBag!  authorizationCode: String  authorizationExpiresAt: DateTime  createdAt: DateTime!  errorCode: OrderTransactionErrorCode  fees: [TransactionFee!]!  formattedGateway: String  gateway: String  id: ID!  kind: OrderTransactionKind!  manuallyCapturable: Boolean!  maximumRefundableV2: MoneyV2  order: Order  parentTransaction: OrderTransaction  paymentIcon: Image  processedAt: DateTime  receiptJson: JSON  settlementCurrency: CurrencyCode  settlementCurrencyRate: Decimal  shopifyPaymentsSet: ShopifyPaymentsTransactionSet  status: OrderTransactionStatus!  test: Boolean!  totalUnsettledSet: MoneyBag  user: StaffMember}type OrderTransactionConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [OrderTransactionEdge!]!  nodes: [OrderTransaction!]!  pageInfo: PageInfo!}type OrderTransactionEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: OrderTransaction!}enum OrderTransactionErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  INCORRECT_NUMBER  INVALID_NUMBER  INVALID_EXPIRY_DATE  INVALID_CVC  EXPIRED_CARD  INCORRECT_CVC  INCORRECT_ZIP  INCORRECT_ADDRESS  INCORRECT_PIN  CARD_DECLINED  PROCESSING_ERROR  CALL_ISSUER  PICK_UP_CARD  CONFIG_ERROR  TEST_MODE_LIVE_CARD  UNSUPPORTED_FEATURE  GENERIC_ERROR  INVALID_COUNTRY  INVALID_AMOUNT  PAYMENT_METHOD_UNAVAILABLE  AMAZON_PAYMENTS_INVALID_PAYMENT_METHOD  AMAZON_PAYMENTS_MAX_AMOUNT_CHARGED  AMAZON_PAYMENTS_MAX_AMOUNT_REFUNDED  AMAZON_PAYMENTS_MAX_AUTHORIZATIONS_CAPTURED  AMAZON_PAYMENTS_MAX_REFUNDS_PROCESSED  AMAZON_PAYMENTS_ORDER_REFERENCE_CANCELED  AMAZON_PAYMENTS_STALE}enum OrderTransactionKind  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SALE  CAPTURE  AUTHORIZATION  VOID  REFUND  CHANGE  EMV_AUTHORIZATION  SUGGESTED_REFUND}enum OrderTransactionStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SUCCESS  FAILURE  PENDING  ERROR  AWAITING_RESPONSE  UNKNOWN}type PageInfo  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  endCursor: String  hasNextPage: Boolean!  hasPreviousPage: Boolean!  startCursor: String}union PaymentInstrument  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = VaultCreditCard | VaultPaypalBillingAgreementtype PaymentMandate implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  paymentInstrument: PaymentInstrument!}type PaymentSchedule implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amount: MoneyV2!  completedAt: DateTime  dueAt: DateTime  id: ID!  issuedAt: DateTime}type PaymentScheduleConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [PaymentScheduleEdge!]!  nodes: [PaymentSchedule!]!  pageInfo: PageInfo!}type PaymentScheduleEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: PaymentSchedule!}type PaymentSettings  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  supportedDigitalWallets: [DigitalWallet!]!}type PaymentTerms implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  dueInDays: Int  id: ID!  overdue: Boolean!  paymentSchedules(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PaymentScheduleConnection!  paymentTermsName: String!  paymentTermsType: PaymentTermsType!  translatedName: String!}type PaymentTermsTemplate implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  description: String!  dueInDays: Int  id: ID!  name: String!  paymentTermsType: PaymentTermsType!  translatedName: String!}enum PaymentTermsType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  RECEIPT  NET  FIXED  UNKNOWN}enum PaypalExpressSubscriptionsGatewayStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ENABLED  DISABLED  PENDING}type PriceList implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  contextRule: PriceListContextRule  currency: CurrencyCode!  id: ID!  name: String!  parent: PriceListParent  prices(originType: PriceListPriceOriginType, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PriceListPriceConnection!}type PriceListAdjustment  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  type: PriceListAdjustmentType!  value: Float!}enum PriceListAdjustmentType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PERCENTAGE_DECREASE  PERCENTAGE_INCREASE}type PriceListContextRule  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  countries: [CountryCode!]!  market: Market}type PriceListParent  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  adjustment: PriceListAdjustment!}type PriceListPrice  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  compareAtPrice: MoneyV2  originType: PriceListPriceOriginType!  price: MoneyV2!  variant: ProductVariant!}type PriceListPriceConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [PriceListPriceEdge!]!  nodes: [PriceListPrice!]!  pageInfo: PageInfo!}type PriceListPriceEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: PriceListPrice!}enum PriceListPriceOriginType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  FIXED  RELATIVE}type PricingPercentageValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  percentage: Float!}union PricingValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = MoneyV2 | PricingPercentageValuetype PrivateMetafield implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  createdAt: DateTime!  id: ID!  key: String!  namespace: String!  updatedAt: DateTime!  value: String!  valueType: PrivateMetafieldValueType!}type PrivateMetafieldConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [PrivateMetafieldEdge!]!  nodes: [PrivateMetafield!]!  pageInfo: PageInfo!}type PrivateMetafieldEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: PrivateMetafield!}input PrivateMetafieldInput  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  owner: ID  namespace: String!  key: String!  valueInput: PrivateMetafieldValueInput!}input PrivateMetafieldValueInput  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  value: String!  valueType: PrivateMetafieldValueType!}enum PrivateMetafieldValueType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  STRING  INTEGER  JSON_STRING}type Product implements HasMetafieldDefinitions & HasMetafields & HasPublishedTranslations & LegacyInteroperability & Navigable & Node & OnlineStorePreviewable & Publishable  @join__implements(graph: PRODUCT, interface: "HasMetafieldDefinitions")  @join__implements(graph: PRODUCT, interface: "HasMetafields")  @join__implements(graph: PRODUCT, interface: "HasPublishedTranslations")  @join__implements(graph: PRODUCT, interface: "LegacyInteroperability")  @join__implements(graph: PRODUCT, interface: "Navigable")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: PRODUCT, interface: "OnlineStorePreviewable")  @join__implements(graph: PRODUCT, interface: "Publishable")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  availablePublicationCount: Int! @join__field(graph: PRODUCT)  collections(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: CollectionSortKeys = ID, query: String): CollectionConnection! @join__field(graph: PRODUCT)  contextualPricing(context: ContextualPricingContext!): ProductContextualPricing! @join__field(graph: PRODUCT)  createdAt: DateTime! @join__field(graph: PRODUCT)  defaultCursor: String! @join__field(graph: PRODUCT)  description(truncateAt: Int): String! @join__field(graph: PRODUCT)  descriptionHtml: HTML! @join__field(graph: PRODUCT)  featuredImage: Image @join__field(graph: PRODUCT)  featuredMedia: Media @join__field(graph: PRODUCT)  feedback: ResourceFeedback @join__field(graph: PRODUCT)  giftCardTemplateSuffix: String @join__field(graph: PRODUCT)  handle: String! @join__field(graph: PRODUCT)  hasOnlyDefaultVariant: Boolean! @join__field(graph: PRODUCT)  hasOutOfStockVariants: Boolean! @join__field(graph: PRODUCT)  images(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: ProductImageSortKeys = POSITION): ImageConnection! @join__field(graph: PRODUCT)  inCollection(id: ID!): Boolean! @join__field(graph: PRODUCT)  isGiftCard: Boolean! @join__field(graph: PRODUCT)  legacyResourceId: UnsignedInt64! @join__field(graph: PRODUCT)  media(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: ProductMediaSortKeys = POSITION): MediaConnection! @join__field(graph: PRODUCT)  mediaCount: Int! @join__field(graph: PRODUCT)  metafield(namespace: String!, key: String!): Metafield @join__field(graph: PRODUCT)  metafieldDefinitions(namespace: String, pinnedStatus: MetafieldDefinitionPinnedStatus = ANY, first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: MetafieldDefinitionSortKeys = ID, query: String): MetafieldDefinitionConnection! @join__field(graph: PRODUCT)  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection! @join__field(graph: PRODUCT)  onlineStorePreviewUrl: URL @join__field(graph: PRODUCT)  onlineStoreUrl: URL @join__field(graph: PRODUCT)  options(first: Int): [ProductOption!]! @join__field(graph: PRODUCT)  priceRangeV2: ProductPriceRangeV2! @join__field(graph: PRODUCT)  privateMetafield(namespace: String!, key: String!): PrivateMetafield @join__field(graph: PRODUCT)  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection! @join__field(graph: PRODUCT)  productCategory: ProductCategory @join__field(graph: PRODUCT)  productType: String! @join__field(graph: PRODUCT)  publicationCount(onlyPublished: Boolean = true): Int! @join__field(graph: PRODUCT)  publishedAt: DateTime @join__field(graph: PRODUCT)  publishedOnCurrentPublication: Boolean! @join__field(graph: PRODUCT)  publishedOnPublication(publicationId: ID!): Boolean! @join__field(graph: PRODUCT)  requiresSellingPlan: Boolean! @join__field(graph: PRODUCT)  resourcePublicationOnCurrentPublication: ResourcePublicationV2 @join__field(graph: PRODUCT)  resourcePublications(onlyPublished: Boolean = true, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ResourcePublicationConnection! @join__field(graph: PRODUCT)  resourcePublicationsV2(onlyPublished: Boolean = true, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ResourcePublicationV2Connection! @join__field(graph: PRODUCT)  sellingPlanGroupCount: Int! @join__field(graph: PRODUCT)  sellingPlanGroups(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SellingPlanGroupConnection! @join__field(graph: PRODUCT)  seo: SEO! @join__field(graph: PRODUCT)  status: ProductStatus! @join__field(graph: PRODUCT)  tags: [String!]! @join__field(graph: PRODUCT)  templateSuffix: String @join__field(graph: PRODUCT)  title: String! @join__field(graph: PRODUCT)  totalInventory: Int! @join__field(graph: PRODUCT)  totalVariants: Int! @join__field(graph: PRODUCT)  tracksInventory: Boolean! @join__field(graph: PRODUCT)  translations(locale: String!, marketId: ID): [PublishedTranslation!]! @join__field(graph: PRODUCT)  unpublishedPublications(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PublicationConnection! @join__field(graph: PRODUCT)  updatedAt: DateTime! @join__field(graph: PRODUCT)  variants(first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: ProductVariantSortKeys = POSITION): ProductVariantConnection! @join__field(graph: PRODUCT)  vendor: String! @join__field(graph: PRODUCT)}input ProductAppendImagesInput  @join__type(graph: PRODUCT){  id: ID!  images: [ImageInput!]!}type ProductAppendImagesPayload  @join__type(graph: PRODUCT){  newImages: [Image!]  product: Product  userErrors: [UserError!]!}type ProductCategory  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  productTaxonomyNode: ProductTaxonomyNode}input ProductCategoryInput  @join__type(graph: PRODUCT){  productTaxonomyNodeId: ID!}type ProductChangeStatusPayload  @join__type(graph: PRODUCT){  product: Product  userErrors: [ProductChangeStatusUserError!]!}type ProductChangeStatusUserError implements DisplayableError  @join__implements(graph: CUSTOMER, interface: "DisplayableError")  @join__implements(graph: ORDER, interface: "DisplayableError")  @join__implements(graph: PRODUCT, interface: "DisplayableError")  @join__implements(graph: SHOP, interface: "DisplayableError")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: ProductChangeStatusUserErrorCode  field: [String!]  message: String!}enum ProductChangeStatusUserErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PRODUCT_NOT_FOUND}enum ProductCollectionSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  TITLE  PRICE  BEST_SELLING  CREATED  ID  MANUAL  COLLECTION_DEFAULT  RELEVANCE}type ProductConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [ProductEdge!]!  nodes: [Product!]!  pageInfo: PageInfo!}type ProductContextualPricing  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  maxVariantPricing: ProductVariantContextualPricing  minVariantPricing: ProductVariantContextualPricing  priceRange: ProductPriceRangeV2!}type ProductCreateMediaPayload  @join__type(graph: PRODUCT){  media: [Media!]  mediaUserErrors: [MediaUserError!]!  product: Product}type ProductCreatePayload  @join__type(graph: PRODUCT){  product: Product  shop: Shop!  userErrors: [UserError!]!}type ProductDeleteImagesPayload  @join__type(graph: PRODUCT){  deletedImageIds: [ID!]!  product: Product  userErrors: [UserError!]!}input ProductDeleteInput  @join__type(graph: PRODUCT){  id: ID!}type ProductDeleteMediaPayload  @join__type(graph: PRODUCT){  deletedMediaIds: [ID!]  deletedProductImageIds: [ID!]  mediaUserErrors: [MediaUserError!]!  product: Product}type ProductDeletePayload  @join__type(graph: PRODUCT){  deletedProductId: ID  shop: Shop!  userErrors: [UserError!]!}type ProductDuplicatePayload  @join__type(graph: PRODUCT){  imageJob: Job  newProduct: Product  shop: Shop!  userErrors: [UserError!]!}type ProductEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Product!}enum ProductImageSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CREATED_AT  POSITION  ID  RELEVANCE}type ProductImageUpdatePayload  @join__type(graph: PRODUCT){  image: Image  userErrors: [UserError!]!}input ProductInput  @join__type(graph: PRODUCT){  descriptionHtml: String  redirectNewHandle: Boolean  handle: String  seo: SEOInput  productType: String  standardizedProductType: StandardizedProductTypeInput  productCategory: ProductCategoryInput  customProductType: String  tags: [String!]  templateSuffix: String  giftCard: Boolean  giftCardTemplateSuffix: String  title: String  vendor: String  collectionsToJoin: [ID!]  collectionsToLeave: [ID!]  id: ID  images: [ImageInput!]  metafields: [MetafieldInput!]  privateMetafields: [PrivateMetafieldInput!]  options: [String!]  variants: [ProductVariantInput!]  status: ProductStatus  requiresSellingPlan: Boolean}type ProductJoinSellingPlanGroupsPayload  @join__type(graph: PRODUCT){  product: Product  userErrors: [SellingPlanGroupUserError!]!}type ProductLeaveSellingPlanGroupsPayload  @join__type(graph: PRODUCT){  product: Product  userErrors: [SellingPlanGroupUserError!]!}enum ProductMediaSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  POSITION  ID  RELEVANCE}type ProductOption implements HasPublishedTranslations & Node  @join__implements(graph: PRODUCT, interface: "HasPublishedTranslations")  @join__implements(graph: PRODUCT, interface: "Node")  @join__type(graph: PRODUCT, key: "id"){  id: ID!  name: String!  position: Int!  translations(locale: String!, marketId: ID): [PublishedTranslation!]!  values: [String!]!}type ProductPriceRangeV2  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  maxVariantPrice: MoneyV2!  minVariantPrice: MoneyV2!}type ProductReorderImagesPayload  @join__type(graph: PRODUCT){  job: Job  userErrors: [UserError!]!}type ProductReorderMediaPayload  @join__type(graph: PRODUCT){  job: Job  mediaUserErrors: [MediaUserError!]!}type ProductResourceFeedback  @join__type(graph: PRODUCT){  feedbackGeneratedAt: DateTime!  messages: [String!]!  productId: ID!  productUpdatedAt: DateTime!  state: ResourceFeedbackState!}enum ProductSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  TITLE  PRODUCT_TYPE  VENDOR  INVENTORY_TOTAL  UPDATED_AT  CREATED_AT  PUBLISHED_AT  ID  RELEVANCE}enum ProductStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ACTIVE  ARCHIVED  DRAFT}type ProductTaxonomyNode implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  fullName: String!  id: ID!  isLeaf: Boolean!  isRoot: Boolean!  name: String!}type ProductUpdateMediaPayload  @join__type(graph: PRODUCT){  media: [Media!]  mediaUserErrors: [MediaUserError!]!  product: Product}type ProductUpdatePayload  @join__type(graph: PRODUCT){  product: Product  userErrors: [UserError!]!}type ProductVariant implements HasMetafieldDefinitions & HasMetafields & HasPublishedTranslations & LegacyInteroperability & Navigable & Node  @join__implements(graph: PRODUCT, interface: "HasMetafieldDefinitions")  @join__implements(graph: PRODUCT, interface: "HasMetafields")  @join__implements(graph: PRODUCT, interface: "HasPublishedTranslations")  @join__implements(graph: PRODUCT, interface: "LegacyInteroperability")  @join__implements(graph: PRODUCT, interface: "Navigable")  @join__implements(graph: PRODUCT, interface: "Node")  @join__type(graph: CUSTOMER, key: "id")  @join__type(graph: ORDER, key: "id")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  availableForSale: Boolean! @join__field(graph: PRODUCT)  barcode: String @join__field(graph: PRODUCT)  compareAtPrice: Money @join__field(graph: PRODUCT)  contextualPricing(context: ContextualPricingContext!): ProductVariantContextualPricing! @join__field(graph: PRODUCT)  createdAt: DateTime! @join__field(graph: PRODUCT)  defaultCursor: String! @join__field(graph: PRODUCT)  deliveryProfile: DeliveryProfile @join__field(graph: PRODUCT)  displayName: String! @join__field(graph: PRODUCT)  fulfillmentServiceEditable: EditableProperty! @join__field(graph: PRODUCT)  image: Image @join__field(graph: PRODUCT)  inventoryItem: InventoryItem! @join__field(graph: PRODUCT)  inventoryPolicy: ProductVariantInventoryPolicy! @join__field(graph: PRODUCT)  inventoryQuantity: Int @join__field(graph: PRODUCT)  legacyResourceId: UnsignedInt64! @join__field(graph: PRODUCT)  media(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MediaConnection! @join__field(graph: PRODUCT)  metafield(namespace: String!, key: String!): Metafield @join__field(graph: PRODUCT)  metafieldDefinitions(namespace: String, pinnedStatus: MetafieldDefinitionPinnedStatus = ANY, first: Int, after: String, last: Int, before: String, reverse: Boolean = false, sortKey: MetafieldDefinitionSortKeys = ID, query: String): MetafieldDefinitionConnection! @join__field(graph: PRODUCT)  metafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): MetafieldConnection! @join__field(graph: PRODUCT)  position: Int! @join__field(graph: PRODUCT)  price: Money! @join__field(graph: PRODUCT)  privateMetafield(namespace: String!, key: String!): PrivateMetafield @join__field(graph: PRODUCT)  privateMetafields(namespace: String, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PrivateMetafieldConnection! @join__field(graph: PRODUCT)  product: Product! @join__field(graph: PRODUCT)  selectedOptions: [SelectedOption!]! @join__field(graph: PRODUCT)  sellableOnlineQuantity: Int! @join__field(graph: PRODUCT)  sellingPlanGroupCount: Int! @join__field(graph: PRODUCT)  sellingPlanGroups(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SellingPlanGroupConnection! @join__field(graph: PRODUCT)  sku: String @join__field(graph: PRODUCT)  taxCode: String @join__field(graph: PRODUCT)  taxable: Boolean! @join__field(graph: PRODUCT)  title: String! @join__field(graph: PRODUCT)  translations(locale: String!, marketId: ID): [PublishedTranslation!]! @join__field(graph: PRODUCT)  updatedAt: DateTime! @join__field(graph: PRODUCT)  weight: Float @join__field(graph: PRODUCT)  weightUnit: WeightUnit! @join__field(graph: PRODUCT)}input ProductVariantAppendMediaInput  @join__type(graph: PRODUCT){  variantId: ID!  mediaIds: [ID!]!}type ProductVariantAppendMediaPayload  @join__type(graph: PRODUCT){  product: Product  productVariants: [ProductVariant!]  userErrors: [MediaUserError!]!}type ProductVariantConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [ProductVariantEdge!]!  nodes: [ProductVariant!]!  pageInfo: PageInfo!}type ProductVariantContextualPricing  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  compareAtPrice: MoneyV2  price: MoneyV2!}type ProductVariantCreatePayload  @join__type(graph: PRODUCT){  product: Product  productVariant: ProductVariant  userErrors: [UserError!]!}type ProductVariantDeletePayload  @join__type(graph: PRODUCT){  deletedProductVariantId: ID  product: Product  userErrors: [UserError!]!}input ProductVariantDetachMediaInput  @join__type(graph: PRODUCT){  variantId: ID!  mediaIds: [ID!]!}type ProductVariantDetachMediaPayload  @join__type(graph: PRODUCT){  product: Product  productVariants: [ProductVariant!]  userErrors: [MediaUserError!]!}type ProductVariantEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: ProductVariant!}input ProductVariantInput  @join__type(graph: PRODUCT){  barcode: String  compareAtPrice: Money  harmonizedSystemCode: String  id: ID  imageId: ID  imageSrc: String  mediaSrc: [String!]  inventoryPolicy: ProductVariantInventoryPolicy  inventoryQuantities: [InventoryLevelInput!]  inventoryItem: InventoryItemInput  metafields: [MetafieldInput!]  privateMetafields: [PrivateMetafieldInput!]  options: [String!]  position: Int  price: Money  productId: ID  requiresShipping: Boolean  sku: String  taxable: Boolean  taxCode: String  weight: Float  weightUnit: WeightUnit}enum ProductVariantInventoryPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  DENY  CONTINUE}type ProductVariantJoinSellingPlanGroupsPayload  @join__type(graph: PRODUCT){  productVariant: ProductVariant  userErrors: [SellingPlanGroupUserError!]!}type ProductVariantLeaveSellingPlanGroupsPayload  @join__type(graph: PRODUCT){  productVariant: ProductVariant  userErrors: [SellingPlanGroupUserError!]!}input ProductVariantPositionInput  @join__type(graph: PRODUCT){  id: ID!  position: Int!}type ProductVariantsBulkCreatePayload  @join__type(graph: PRODUCT){  product: Product  productVariants: [ProductVariant!]  userErrors: [ProductVariantsBulkCreateUserError!]!}type ProductVariantsBulkCreateUserError implements DisplayableError  @join__implements(graph: CUSTOMER, interface: "DisplayableError")  @join__implements(graph: ORDER, interface: "DisplayableError")  @join__implements(graph: PRODUCT, interface: "DisplayableError")  @join__implements(graph: SHOP, interface: "DisplayableError")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: ProductVariantsBulkCreateUserErrorCode  field: [String!]  message: String!}enum ProductVariantsBulkCreateUserErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PRODUCT_DOES_NOT_EXIST  NO_KEY_ON_CREATE  VARIANT_ALREADY_EXISTS  GREATER_THAN_OR_EQUAL_TO  NEED_TO_ADD_OPTION_VALUES  OPTION_VALUES_FOR_NUMBER_OF_UNKNOWN_OPTIONS  TOO_MANY_INVENTORY_LOCATIONS  SUBSCRIPTION_VIOLATION  VARIANT_ALREADY_EXISTS_CHANGE_OPTION_VALUE  TRACKED_VARIANT_LOCATION_NOT_FOUND  MUST_BE_FOR_THIS_PRODUCT  NOT_DEFINED_FOR_SHOP  INVALID  NEGATIVE_PRICE_VALUE}type ProductVariantsBulkDeletePayload  @join__type(graph: PRODUCT){  product: Product  userErrors: [ProductVariantsBulkDeleteUserError!]!}type ProductVariantsBulkDeleteUserError implements DisplayableError  @join__implements(graph: CUSTOMER, interface: "DisplayableError")  @join__implements(graph: ORDER, interface: "DisplayableError")  @join__implements(graph: PRODUCT, interface: "DisplayableError")  @join__implements(graph: SHOP, interface: "DisplayableError")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: ProductVariantsBulkDeleteUserErrorCode  field: [String!]  message: String!}enum ProductVariantsBulkDeleteUserErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PRODUCT_DOES_NOT_EXIST  CANNOT_DELETE_LAST_VARIANT  AT_LEAST_ONE_VARIANT_DOES_NOT_BELONG_TO_THE_PRODUCT}input ProductVariantsBulkInput  @join__type(graph: PRODUCT){  barcode: String  compareAtPrice: Money  harmonizedSystemCode: String  id: ID  imageId: ID  imageSrc: String  mediaSrc: [String!]  inventoryPolicy: ProductVariantInventoryPolicy  inventoryQuantities: [InventoryLevelInput!]  inventoryItem: InventoryItemInput  metafields: [MetafieldInput!]  privateMetafields: [PrivateMetafieldInput!]  options: [String!]  price: Money  requiresShipping: Boolean  sku: String  taxable: Boolean  taxCode: String  weight: Float  weightUnit: WeightUnit}type ProductVariantsBulkReorderPayload  @join__type(graph: PRODUCT){  product: Product  userErrors: [ProductVariantsBulkReorderUserError!]!}type ProductVariantsBulkReorderUserError implements DisplayableError  @join__implements(graph: CUSTOMER, interface: "DisplayableError")  @join__implements(graph: ORDER, interface: "DisplayableError")  @join__implements(graph: PRODUCT, interface: "DisplayableError")  @join__implements(graph: SHOP, interface: "DisplayableError")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: ProductVariantsBulkReorderUserErrorCode  field: [String!]  message: String!}enum ProductVariantsBulkReorderUserErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PRODUCT_DOES_NOT_EXIST  MISSING_VARIANT  INVALID_POSITION  DUPLICATED_VARIANT_ID}type ProductVariantsBulkUpdatePayload  @join__type(graph: PRODUCT){  product: Product  productVariants: [ProductVariant!]  userErrors: [ProductVariantsBulkUpdateUserError!]!}type ProductVariantsBulkUpdateUserError implements DisplayableError  @join__implements(graph: CUSTOMER, interface: "DisplayableError")  @join__implements(graph: ORDER, interface: "DisplayableError")  @join__implements(graph: PRODUCT, interface: "DisplayableError")  @join__implements(graph: SHOP, interface: "DisplayableError")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: ProductVariantsBulkUpdateUserErrorCode  field: [String!]  message: String!}enum ProductVariantsBulkUpdateUserErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PRODUCT_DOES_NOT_EXIST  PRODUCT_VARIANT_ID_MISSING  PRODUCT_VARIANT_DOES_NOT_EXIST  NO_INVENTORY_QUANTITIES_ON_VARIANTS_UPDATE  VARIANT_ALREADY_EXISTS  GREATER_THAN_OR_EQUAL_TO  NEED_TO_ADD_OPTION_VALUES  OPTION_VALUES_FOR_NUMBER_OF_UNKNOWN_OPTIONS  SUBSCRIPTION_VIOLATION  NO_INVENTORY_QUANTITES_DURING_UPDATE  NEGATIVE_PRICE_VALUE}enum ProductVariantSortKeys  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  TITLE  NAME  SKU  INVENTORY_QUANTITY  INVENTORY_MANAGEMENT  INVENTORY_LEVELS_AVAILABLE  INVENTORY_POLICY  FULL_TITLE  POPULAR  POSITION  ID  RELEVANCE}type ProductVariantUpdatePayload  @join__type(graph: PRODUCT){  product: Product  productVariant: ProductVariant  userErrors: [UserError!]!}type Publication implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  app: App!  collectionPublicationsV3(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ResourcePublicationConnection!  collections(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): CollectionConnection!  hasCollection(id: ID!): Boolean!  id: ID!  name: String!  productPublicationsV3(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ResourcePublicationConnection!  products(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ProductConnection!  supportsFuturePublishing: Boolean!}type PublicationConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [PublicationEdge!]!  nodes: [Publication!]!  pageInfo: PageInfo!}type PublicationEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Publication!}interface Publishable  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  availablePublicationCount: Int!  publicationCount(onlyPublished: Boolean = true): Int!  publishedOnCurrentPublication: Boolean!  publishedOnPublication(publicationId: ID!): Boolean!  resourcePublications(onlyPublished: Boolean = true, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ResourcePublicationConnection!  resourcePublicationsV2(onlyPublished: Boolean = true, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ResourcePublicationV2Connection!  unpublishedPublications(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): PublicationConnection!}type PublishedTranslation  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  key: String!  locale: String!  marketId: ID  value: String}type PurchasingCompany  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  company: Company!  contact: CompanyContact  location: CompanyLocation!}union PurchasingEntity  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = Customer | PurchasingCompanytype Query  @inContext  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  customer(id: ID!): Customer @join__field(graph: CUSTOMER)  product(id: ID!): Product @join__field(graph: PRODUCT)  productByHandle(handle: String!): Product @join__field(graph: PRODUCT)  productResourceFeedback(id: ID!): ProductResourceFeedback @join__field(graph: PRODUCT)  productSavedSearches(after: String, before: String, first: Int, last: Int, reverse: Boolean = false): SavedSearchConnection! @join__field(graph: PRODUCT)  productVariant(id: ID!): ProductVariant @join__field(graph: PRODUCT)  productVariants(after: String, before: String, first: Int, last: Int, query: String, reverse: Boolean = false, savedSearchId: ID, sortKey: ProductVariantSortKeys = ID): ProductVariantConnection! @join__field(graph: PRODUCT)  products(after: String, before: String, first: Int, last: Int, query: String, reverse: Boolean = false, savedSearchId: ID, sortKey: ProductSortKeys = ID): ProductConnection! @join__field(graph: PRODUCT)}type Refund implements LegacyInteroperability & Node  @join__implements(graph: CUSTOMER, interface: "LegacyInteroperability")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "LegacyInteroperability")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "LegacyInteroperability")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "LegacyInteroperability")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  createdAt: DateTime  duties: [RefundDuty!]  id: ID!  legacyResourceId: UnsignedInt64!  note: String  order: Order!  refundLineItems(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): RefundLineItemConnection!  staffMember: StaffMember  totalRefundedSet: MoneyBag!  transactions(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): OrderTransactionConnection!  updatedAt: DateTime!}type RefundDuty  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amountSet: MoneyBag!  originalDuty: Duty}input RefundDutyInput  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  dutyId: ID!  refundType: RefundDutyRefundType}enum RefundDutyRefundType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PROPORTIONAL  FULL}type RefundLineItem  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  lineItem: LineItem!  location: Location  priceSet: MoneyBag!  quantity: Int!  restockType: RefundLineItemRestockType!  restocked: Boolean!  subtotalSet: MoneyBag!  totalTaxSet: MoneyBag!}type RefundLineItemConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [RefundLineItemEdge!]!  nodes: [RefundLineItem!]!  pageInfo: PageInfo!}type RefundLineItemEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: RefundLineItem!}input RefundLineItemInput  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  lineItemId: ID!  quantity: Int!  restockType: RefundLineItemRestockType  locationId: ID}enum RefundLineItemRestockType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  RETURN  CANCEL  LEGACY_RESTOCK  NO_RESTOCK}type ResourceAlert  @join__type(graph: ORDER)  @join__type(graph: SHOP){  actions: [ResourceAlertAction!]!  content: HTML!  dismissibleHandle: String  icon: ResourceAlertIcon  severity: ResourceAlertSeverity!  title: String!}type ResourceAlertAction  @join__type(graph: ORDER)  @join__type(graph: SHOP){  primary: Boolean!  show: String  title: String!  url: URL!}enum ResourceAlertIcon  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CHECKMARK_CIRCLE  INFORMATION_CIRCLE}enum ResourceAlertSeverity  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  DEFAULT  INFO  WARNING  SUCCESS  CRITICAL}type ResourceFeedback  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  details: [AppFeedback!]!  summary: String!}enum ResourceFeedbackState  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ACCEPTED  REQUIRES_ACTION}type ResourceLimit  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  available: Boolean!  quantityAvailable: Int  quantityLimit: Int  quantityUsed: Int}type ResourcePublication  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  isPublished: Boolean!  publication: Publication!  publishDate: DateTime!  publishable: Publishable!}type ResourcePublicationConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [ResourcePublicationEdge!]!  nodes: [ResourcePublication!]!  pageInfo: PageInfo!}type ResourcePublicationEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: ResourcePublication!}type ResourcePublicationV2  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  isPublished: Boolean!  publication: Publication!  publishDate: DateTime  publishable: Publishable!}type ResourcePublicationV2Connection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [ResourcePublicationV2Edge!]!  nodes: [ResourcePublicationV2!]!  pageInfo: PageInfo!}type ResourcePublicationV2Edge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: ResourcePublicationV2!}interface Sale  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  actionType: SaleActionType!  id: ID!  lineType: SaleLineType!  quantity: Int  taxes: [SaleTax!]!  totalAmount: MoneyBag!  totalDiscountAmountAfterTaxes: MoneyBag!  totalDiscountAmountBeforeTaxes: MoneyBag!  totalTaxAmount: MoneyBag!}enum SaleActionType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ORDER  RETURN  UPDATE  UNKNOWN}type SaleConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SaleEdge!]!  nodes: [Sale!]!  pageInfo: PageInfo!}type SaleEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: Sale!}enum SaleLineType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PRODUCT  TIP  GIFT_CARD  SHIPPING  DUTY  UNKNOWN  ADJUSTMENT}interface SalesAgreement  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  app: App  happenedAt: DateTime!  id: ID!  reason: OrderActionType!  sales(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SaleConnection!  user: StaffMember}type SalesAgreementConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SalesAgreementEdge!]!  nodes: [SalesAgreement!]!  pageInfo: PageInfo!}type SalesAgreementEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: SalesAgreement!}type SaleTax  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amount: MoneyBag!  id: ID!  taxLine: TaxLine!}type SavedSearch implements LegacyInteroperability & Node  @join__implements(graph: CUSTOMER, interface: "LegacyInteroperability")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "LegacyInteroperability")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "LegacyInteroperability")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "LegacyInteroperability")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  filters: [SearchFilter!]!  id: ID!  legacyResourceId: UnsignedInt64!  name: String!  query: String!  resourceType: SearchResultType!  searchTerms: String!}type SavedSearchConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SavedSearchEdge!]!  nodes: [SavedSearch!]!  pageInfo: PageInfo!}type SavedSearchEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: SavedSearch!}type ScriptDiscountApplication implements DiscountApplication  @join__implements(graph: CUSTOMER, interface: "DiscountApplication")  @join__implements(graph: ORDER, interface: "DiscountApplication")  @join__implements(graph: PRODUCT, interface: "DiscountApplication")  @join__implements(graph: SHOP, interface: "DiscountApplication")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  allocationMethod: DiscountApplicationAllocationMethod!  index: Int!  targetSelection: DiscountApplicationTargetSelection!  targetType: DiscountApplicationTargetType!  title: String!  value: PricingValue!}type SearchFilter  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  key: String!  value: String!}type SearchFilterOptions  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  productAvailability: [FilterOption!]!}type SearchResult  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  description: String  image: Image  reference: Node!  title: String!  url: URL!}type SearchResultConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SearchResultEdge!]!  pageInfo: PageInfo!}type SearchResultEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: SearchResult!}enum SearchResultType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CUSTOMER  DRAFT_ORDER  PRODUCT  COLLECTION  FILE  ONLINE_STORE_PAGE  ONLINE_STORE_BLOG  ONLINE_STORE_ARTICLE  URL_REDIRECT  PRICE_RULE  DISCOUNT_REDEEM_CODE  ORDER}type SelectedOption  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  name: String!  value: String!}type SellingPlan implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  billingPolicy: SellingPlanBillingPolicy!  category: SellingPlanCategory  createdAt: DateTime!  deliveryPolicy: SellingPlanDeliveryPolicy!  description: String  id: ID!  inventoryPolicy: SellingPlanInventoryPolicy  name: String!  options: [String!]!  position: Int  pricingPolicies: [SellingPlanPricingPolicy!]!}type SellingPlanAnchor  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cutoffDay: Int  day: Int!  month: Int  type: SellingPlanAnchorType!}enum SellingPlanAnchorType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  WEEKDAY  MONTHDAY  YEARDAY}union SellingPlanBillingPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = SellingPlanFixedBillingPolicy | SellingPlanRecurringBillingPolicyenum SellingPlanCategory  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  OTHER  PRE_ORDER  SUBSCRIPTION  TRY_BEFORE_YOU_BUY}type SellingPlanCheckoutCharge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  type: SellingPlanCheckoutChargeType!  value: SellingPlanCheckoutChargeValue!}type SellingPlanCheckoutChargePercentageValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  percentage: Float!}enum SellingPlanCheckoutChargeType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PERCENTAGE  PRICE}union SellingPlanCheckoutChargeValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = MoneyV2 | SellingPlanCheckoutChargePercentageValuetype SellingPlanConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SellingPlanEdge!]!  nodes: [SellingPlan!]!  pageInfo: PageInfo!}union SellingPlanDeliveryPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = SellingPlanFixedDeliveryPolicy | SellingPlanRecurringDeliveryPolicytype SellingPlanEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: SellingPlan!}type SellingPlanFixedBillingPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  checkoutCharge: SellingPlanCheckoutCharge!  remainingBalanceChargeExactTime: DateTime  remainingBalanceChargeTimeAfterCheckout: String  remainingBalanceChargeTrigger: SellingPlanRemainingBalanceChargeTrigger!}type SellingPlanFixedDeliveryPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  anchors: [SellingPlanAnchor!]!  cutoff: Int  fulfillmentExactTime: DateTime  fulfillmentTrigger: SellingPlanFulfillmentTrigger!  intent: SellingPlanFixedDeliveryPolicyIntent!  preAnchorBehavior: SellingPlanFixedDeliveryPolicyPreAnchorBehavior!}enum SellingPlanFixedDeliveryPolicyIntent  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  FULFILLMENT_BEGIN}enum SellingPlanFixedDeliveryPolicyPreAnchorBehavior  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ASAP  NEXT}type SellingPlanFixedPricingPolicy implements SellingPlanPricingPolicyBase  @join__implements(graph: CUSTOMER, interface: "SellingPlanPricingPolicyBase")  @join__implements(graph: ORDER, interface: "SellingPlanPricingPolicyBase")  @join__implements(graph: PRODUCT, interface: "SellingPlanPricingPolicyBase")  @join__implements(graph: SHOP, interface: "SellingPlanPricingPolicyBase")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  adjustmentType: SellingPlanPricingPolicyAdjustmentType!  adjustmentValue: SellingPlanPricingPolicyAdjustmentValue!  createdAt: DateTime!}enum SellingPlanFulfillmentTrigger  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ANCHOR  ASAP  EXACT_TIME  UNKNOWN}type SellingPlanGroup implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  appId: String  appliesToProduct(productId: ID!): Boolean!  appliesToProductVariant(productVariantId: ID!): Boolean!  appliesToProductVariants(productId: ID!): Boolean!  createdAt: DateTime!  description: String  id: ID!  merchantCode: String!  name: String!  options: [String!]!  position: Int  productCount: Int!  productVariantCount(productId: ID): Int!  productVariants(productId: ID, first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ProductVariantConnection!  products(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): ProductConnection!  sellingPlans(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SellingPlanConnection!  summary: String}type SellingPlanGroupConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SellingPlanGroupEdge!]!  nodes: [SellingPlanGroup!]!  pageInfo: PageInfo!}type SellingPlanGroupEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: SellingPlanGroup!}type SellingPlanGroupUserError implements DisplayableError  @join__implements(graph: CUSTOMER, interface: "DisplayableError")  @join__implements(graph: ORDER, interface: "DisplayableError")  @join__implements(graph: PRODUCT, interface: "DisplayableError")  @join__implements(graph: SHOP, interface: "DisplayableError")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: SellingPlanGroupUserErrorCode  field: [String!]  message: String!}enum SellingPlanGroupUserErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  BLANK  EQUAL_TO  GREATER_THAN  GREATER_THAN_OR_EQUAL_TO  INCLUSION  INVALID  LESS_THAN  LESS_THAN_OR_EQUAL_TO  NOT_A_NUMBER  NOT_FOUND  PRESENT  TAKEN  TOO_BIG  TOO_LONG  TOO_SHORT  WRONG_LENGTH  SELLING_PLAN_COUNT_UPPER_BOUND  SELLING_PLAN_COUNT_LOWER_BOUND  SELLING_PLAN_MAX_CYCLES_MUST_BE_GREATER_THAN_MIN_CYCLES  SELLING_PLAN_BILLING_AND_DELIVERY_POLICY_ANCHORS_MUST_BE_EQUAL  SELLING_PLAN_BILLING_CYCLE_MUST_BE_A_MULTIPLE_OF_DELIVERY_CYCLE  SELLING_PLAN_PRICING_POLICIES_MUST_CONTAIN_A_FIXED_PRICING_POLICY  SELLING_PLAN_MISSING_OPTION2_LABEL_ON_PARENT_GROUP  SELLING_PLAN_MISSING_OPTION3_LABEL_ON_PARENT_GROUP  SELLING_PLAN_OPTION2_REQUIRED_AS_DEFINED_ON_PARENT_GROUP  SELLING_PLAN_OPTION3_REQUIRED_AS_DEFINED_ON_PARENT_GROUP  SELLING_PLAN_PRICING_POLICIES_LIMIT  RESOURCE_LIST_CONTAINS_INVALID_IDS  PRODUCT_VARIANT_DOES_NOT_EXIST  PRODUCT_DOES_NOT_EXIST  GROUP_DOES_NOT_EXIST  GROUP_COULD_NOT_BE_DELETED  ERROR_ADDING_RESOURCE_TO_GROUP  SELLING_PLAN_DELIVERY_POLICY_MISSING  SELLING_PLAN_BILLING_POLICY_MISSING  PLAN_DOES_NOT_EXIST  PLAN_ID_MUST_BE_SPECIFIED_TO_UPDATE  ONLY_NEED_ONE_BILLING_POLICY_TYPE  ONLY_NEED_ONE_DELIVERY_POLICY_TYPE  ONLY_NEED_ONE_PRICING_POLICY_TYPE  BILLING_AND_DELIVERY_POLICY_TYPES_MUST_BE_THE_SAME  ONLY_NEED_ONE_PRICING_POLICY_VALUE  PRICING_POLICY_ADJUSTMENT_VALUE_AND_TYPE_MUST_MATCH  SELLING_PLAN_DUPLICATE_NAME  SELLING_PLAN_DUPLICATE_OPTIONS  SELLING_PLAN_FIXED_PRICING_POLICIES_LIMIT  REMAINING_BALANCE_CHARGE_EXACT_TIME_REQUIRED  CHECKOUT_CHARGE_VALUE_AND_TYPE_MUST_MATCH  ONLY_NEED_ONE_CHECKOUT_CHARGE_VALUE  REMAINING_BALANCE_CHARGE_EXACT_TIME_NOT_ALLOWED  REMAINING_BALANCE_CHARGE_TIME_AFTER_CHECKOUT_MUST_BE_GREATER_THAN_ZERO  REMAINING_BALANCE_CHARGE_TRIGGER_ON_FULL_CHECKOUT  REMAINING_BALANCE_CHARGE_TRIGGER_NO_REMAINING_BALANCE_ON_PARTIAL_PERCENTAGE_CHECKOUT_CHARGE  REMAINING_BALANCE_CHARGE_TRIGGER_NO_REMAINING_BALANCE_ON_PRICE_CHECKOUT_CHARGE  FULFILLMENT_EXACT_TIME_REQUIRED  FULFILLMENT_EXACT_TIME_NOT_ALLOWED  SELLING_PLAN_ANCHORS_NOT_ALLOWED  SELLING_PLAN_ANCHORS_REQUIRED  ONLY_ONE_OF_FIXED_OR_RECURRING_BILLING  ONLY_ONE_OF_FIXED_OR_RECURRING_DELIVERY}enum SellingPlanInterval  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  DAY  WEEK  MONTH  YEAR}type SellingPlanInventoryPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  reserve: SellingPlanReserve!}union SellingPlanPricingPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = SellingPlanFixedPricingPolicy | SellingPlanRecurringPricingPolicyenum SellingPlanPricingPolicyAdjustmentType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PERCENTAGE  FIXED_AMOUNT  PRICE}union SellingPlanPricingPolicyAdjustmentValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = MoneyV2 | SellingPlanPricingPolicyPercentageValueinterface SellingPlanPricingPolicyBase  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  adjustmentType: SellingPlanPricingPolicyAdjustmentType!  adjustmentValue: SellingPlanPricingPolicyAdjustmentValue!}type SellingPlanPricingPolicyPercentageValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  percentage: Float!}type SellingPlanRecurringBillingPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  anchors: [SellingPlanAnchor!]!  createdAt: DateTime!  interval: SellingPlanInterval!  intervalCount: Int!  maxCycles: Int  minCycles: Int}type SellingPlanRecurringDeliveryPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  anchors: [SellingPlanAnchor!]!  createdAt: DateTime!  cutoff: Int  intent: SellingPlanRecurringDeliveryPolicyIntent!  interval: SellingPlanInterval!  intervalCount: Int!  preAnchorBehavior: SellingPlanRecurringDeliveryPolicyPreAnchorBehavior!}enum SellingPlanRecurringDeliveryPolicyIntent  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  FULFILLMENT_BEGIN}enum SellingPlanRecurringDeliveryPolicyPreAnchorBehavior  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ASAP  NEXT}type SellingPlanRecurringPricingPolicy implements SellingPlanPricingPolicyBase  @join__implements(graph: CUSTOMER, interface: "SellingPlanPricingPolicyBase")  @join__implements(graph: ORDER, interface: "SellingPlanPricingPolicyBase")  @join__implements(graph: PRODUCT, interface: "SellingPlanPricingPolicyBase")  @join__implements(graph: SHOP, interface: "SellingPlanPricingPolicyBase")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  adjustmentType: SellingPlanPricingPolicyAdjustmentType!  adjustmentValue: SellingPlanPricingPolicyAdjustmentValue!  afterCycle: Int  createdAt: DateTime!}enum SellingPlanRemainingBalanceChargeTrigger  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  NO_REMAINING_BALANCE  EXACT_TIME  TIME_AFTER_CHECKOUT}enum SellingPlanReserve  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ON_FULFILLMENT  ON_SALE}type SEO  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  description: String  title: String}input SEOInput  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  title: String  description: String}type ShippingLine  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  carrierIdentifier: String  code: String  custom: Boolean!  deliveryCategory: String  discountAllocations: [DiscountAllocation!]!  discountedPriceSet: MoneyBag!  id: ID  originalPriceSet: MoneyBag!  phone: String  requestedFulfillmentService: FulfillmentService  shippingRateHandle: String  source: String  taxLines: [TaxLine!]!  title: String!}type ShippingLineConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [ShippingLineEdge!]!  nodes: [ShippingLine!]!  pageInfo: PageInfo!}type ShippingLineEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: ShippingLine!}type ShippingRefund  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amountSet: MoneyBag!  maximumRefundableSet: MoneyBag!  taxSet: MoneyBag!}type Shop implements HasMetafields & HasPublishedTranslations & Node  @join__implements(graph: SHOP, interface: "HasMetafields")  @join__implements(graph: SHOP, interface: "HasPublishedTranslations")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: PRODUCT, key: "id")  @join__type(graph: SHOP, key: "id"){  id: ID!  alerts: [ShopAlert!]! @join__field(graph: SHOP)  allProductCategories: [ProductCategory!]! @join__field(graph: SHOP)  assignedFulfillmentOrders(after: String, assignmentStatus: FulfillmentOrderAssignmentStatus, before: String, first: Int, last: Int, locationIds: [ID!], reverse: Boolean = false, sortKey: FulfillmentOrderSortKeys = ID): FulfillmentOrderConnection! @join__field(graph: SHOP)  availableChannelApps(after: String, before: String, first: Int, last: Int, reverse: Boolean = false): AppConnection! @join__field(graph: SHOP)  billingAddress: MailingAddress! @join__field(graph: SHOP)  channelDefinitionsForInstalledChannels: [AvailableChannelDefinitionsByChannel!]! @join__field(graph: SHOP)  checkoutApiSupported: Boolean! @join__field(graph: SHOP)  contactEmail: String! @join__field(graph: SHOP)  countriesInShippingZones: CountriesInShippingZones! @join__field(graph: SHOP)  currencyCode: CurrencyCode! @join__field(graph: SHOP)  currencyFormats: CurrencyFormats! @join__field(graph: SHOP)  currencySettings(after: String, before: String, first: Int, last: Int, reverse: Boolean = false): CurrencySettingConnection! @join__field(graph: SHOP)  customerAccounts: ShopCustomerAccountsSetting! @join__field(graph: SHOP)  customerTags(first: Int!): StringConnection! @join__field(graph: SHOP)  description: String @join__field(graph: SHOP)  draftOrderTags(first: Int!): StringConnection! @join__field(graph: SHOP)  email: String! @join__field(graph: SHOP)  enabledPresentmentCurrencies: [CurrencyCode!]! @join__field(graph: SHOP)  features: ShopFeatures! @join__field(graph: SHOP)  fulfillmentServices: [FulfillmentService!]! @join__field(graph: SHOP)  ianaTimezone: String! @join__field(graph: SHOP)  limitedPendingOrderCount: LimitedPendingOrderCount! @join__field(graph: SHOP)  merchantApprovalSignals: MerchantApprovalSignals @join__field(graph: SHOP)  metafield(key: String!, namespace: String!): Metafield @join__field(graph: SHOP)  metafields(after: String, before: String, first: Int, last: Int, namespace: String, reverse: Boolean = false): MetafieldConnection! @join__field(graph: SHOP)  myshopifyDomain: String! @join__field(graph: SHOP)  name: String! @join__field(graph: SHOP)  navigationSettings: [NavigationItem!]! @join__field(graph: SHOP)  orderNumberFormatPrefix: String! @join__field(graph: SHOP)  orderNumberFormatSuffix: String! @join__field(graph: SHOP)  orderTags(first: Int!, sort: ShopTagSort = ALPHABETICAL): StringConnection! @join__field(graph: SHOP)  paymentSettings: PaymentSettings! @join__field(graph: SHOP)  plan: ShopPlan! @join__field(graph: SHOP)  primaryDomain: Domain! @join__field(graph: SHOP)  privateMetafield(key: String!, namespace: String!): PrivateMetafield @join__field(graph: SHOP)  privateMetafields(after: String, before: String, first: Int, last: Int, namespace: String, reverse: Boolean = false): PrivateMetafieldConnection! @join__field(graph: SHOP)  productImages(after: String, before: String, first: Int, last: Int, reverse: Boolean = false, sortKey: ProductImageSortKeys = CREATED_AT): ImageConnection! @join__field(graph: SHOP)  productTags(first: Int!): StringConnection! @join__field(graph: SHOP)  productTypes(first: Int!): StringConnection! @join__field(graph: SHOP)  productVendors(first: Int!): StringConnection! @join__field(graph: SHOP)  publicationCount: Int! @join__field(graph: SHOP)  resourceLimits: ShopResourceLimits! @join__field(graph: SHOP)  richTextEditorUrl: URL! @join__field(graph: SHOP)  search(after: String, first: Int!, query: String!, types: [SearchResultType!]): SearchResultConnection! @join__field(graph: SHOP)  searchFilters: SearchFilterOptions! @join__field(graph: SHOP)  setupRequired: Boolean! @join__field(graph: SHOP)  shipsToCountries: [CountryCode!]! @join__field(graph: SHOP)  shopPolicies: [ShopPolicy!]! @join__field(graph: SHOP)  staffMembers(after: String, before: String, first: Int, last: Int, reverse: Boolean = false): StaffMemberConnection! @join__field(graph: SHOP)  storefrontAccessTokens(after: String, before: String, first: Int, last: Int, reverse: Boolean = false): StorefrontAccessTokenConnection! @join__field(graph: SHOP)  taxShipping: Boolean! @join__field(graph: SHOP)  taxesIncluded: Boolean! @join__field(graph: SHOP)  timezoneAbbreviation: String! @join__field(graph: SHOP)  timezoneOffset: String! @join__field(graph: SHOP)  timezoneOffsetMinutes: Int! @join__field(graph: SHOP)  transactionalSmsDisabled: Boolean! @join__field(graph: SHOP)  translations(locale: String!, marketId: ID): [PublishedTranslation!]! @join__field(graph: SHOP)  unitSystem: UnitSystem! @join__field(graph: SHOP)  uploadedImagesByIds(imageIds: [ID!]!): [Image!]! @join__field(graph: SHOP)  url: URL! @join__field(graph: SHOP)  weightUnit: WeightUnit! @join__field(graph: SHOP)}type ShopAlert  @join__type(graph: ORDER)  @join__type(graph: SHOP){  action: ShopAlertAction!  description: String!}type ShopAlertAction  @join__type(graph: ORDER)  @join__type(graph: SHOP){  title: String!  url: URL!}enum ShopBranding  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SHOPIFY_GOLD  SHOPIFY_PLUS  ROGERS  SHOPIFY}enum ShopCustomerAccountsSetting  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  REQUIRED  OPTIONAL  DISABLED}type ShopFeatures  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  avalaraAvatax: Boolean!  branding: ShopBranding!  captcha: Boolean!  captchaExternalDomains: Boolean!  dynamicRemarketing: Boolean!  eligibleForSubscriptionMigration: Boolean!  eligibleForSubscriptions: Boolean!  giftCards: Boolean!  harmonizedSystemCode: Boolean!  internationalDomains: Boolean!  internationalPriceOverrides: Boolean!  internationalPriceRules: Boolean!  legacySubscriptionGatewayEnabled: Boolean!  liveView: Boolean!  onboardingVisual: Boolean!  paypalExpressSubscriptionGatewayStatus: PaypalExpressSubscriptionsGatewayStatus!  reports: Boolean!  sellsSubscriptions: Boolean!  showMetrics: Boolean!  storefront: Boolean!  usingShopifyBalance: Boolean!}type ShopifyPaymentsExtendedAuthorization  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  extendedAuthorizationExpiresAt: DateTime!  standardAuthorizationExpiresAt: DateTime!}type ShopifyPaymentsRefundSet  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  acquirerReferenceNumber: String}type ShopifyPaymentsTransactionSet  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  extendedAuthorizationSet: ShopifyPaymentsExtendedAuthorization  refundSet: ShopifyPaymentsRefundSet}type ShopPlan  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  displayName: String!  partnerDevelopment: Boolean!  shopifyPlus: Boolean!}type ShopPolicy implements HasPublishedTranslations & Node  @join__implements(graph: CUSTOMER, interface: "HasPublishedTranslations")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "HasPublishedTranslations")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "HasPublishedTranslations")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "HasPublishedTranslations")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  body: HTML!  id: ID!  translations(locale: String!, marketId: ID): [PublishedTranslation!]!  type: ShopPolicyType!  url: URL!}enum ShopPolicyType  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  REFUND_POLICY  SHIPPING_POLICY  PRIVACY_POLICY  TERMS_OF_SERVICE  TERMS_OF_SALE  LEGAL_NOTICE  SUBSCRIPTION_POLICY}type ShopResourceLimits  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  locationLimit: Int!  maxProductOptions: Int!  maxProductVariants: Int!  redirectLimitReached: Boolean!  skuResourceLimits: ResourceLimit!}enum ShopTagSort  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ALPHABETICAL  POPULAR}type StaffMember implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  active: Boolean!  avatar(fallback: StaffMemberDefaultImage = DEFAULT): Image!  email: String!  exists: Boolean!  firstName: String  id: ID!  initials: [String!]  isShopOwner: Boolean!  lastName: String  locale: String!  name: String!  phone: String  privateData: StaffMemberPrivateData!}type StaffMemberConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [StaffMemberEdge!]!  nodes: [StaffMember!]!  pageInfo: PageInfo!}enum StaffMemberDefaultImage  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  DEFAULT  TRANSPARENT  NOT_FOUND}type StaffMemberEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: StaffMember!}type StaffMemberPrivateData  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  accountSettingsUrl: URL!  createdAt: DateTime!}input StandardizedProductTypeInput  @join__type(graph: PRODUCT){  productTaxonomyNodeId: ID!}type StandardMetafieldDefinitionTemplate implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  description: String  id: ID!  key: String!  name: String!  namespace: String!  ownerTypes: [MetafieldOwnerType!]!  type: MetafieldDefinitionType!  validations: [MetafieldDefinitionValidation!]!  visibleToStorefrontApi: Boolean!}type StorefrontAccessToken implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  accessScopes: [AccessScope!]!  accessToken: String!  createdAt: DateTime!  id: ID!  title: String!  updatedAt: DateTime!}type StorefrontAccessTokenConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [StorefrontAccessTokenEdge!]!  nodes: [StorefrontAccessToken!]!  pageInfo: PageInfo!}type StorefrontAccessTokenEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: StorefrontAccessToken!}type StringConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [StringEdge!]!  pageInfo: PageInfo!}type StringEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: String!}type SubscriptionAppliedCodeDiscount  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  id: ID!  redeemCode: String!  rejectionReason: SubscriptionDiscountRejectionReason}type SubscriptionBillingAttempt implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  completedAt: DateTime  createdAt: DateTime!  errorCode: SubscriptionBillingAttemptErrorCode  errorMessage: String  id: ID!  idempotencyKey: String!  nextActionUrl: URL  order: Order  originTime: DateTime  ready: Boolean!  subscriptionContract: SubscriptionContract!}type SubscriptionBillingAttemptConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SubscriptionBillingAttemptEdge!]!  nodes: [SubscriptionBillingAttempt!]!  pageInfo: PageInfo!}type SubscriptionBillingAttemptEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: SubscriptionBillingAttempt!}enum SubscriptionBillingAttemptErrorCode  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  PAYMENT_METHOD_NOT_FOUND  PAYMENT_PROVIDER_IS_NOT_ENABLED  INVALID_PAYMENT_METHOD  UNEXPECTED_ERROR  EXPIRED_PAYMENT_METHOD  PAYMENT_METHOD_DECLINED  AUTHENTICATION_ERROR  TEST_MODE  BUYER_CANCELED_PAYMENT_METHOD  CUSTOMER_NOT_FOUND  CUSTOMER_INVALID  INVALID_SHIPPING_ADDRESS  INVALID_CUSTOMER_BILLING_AGREEMENT  INVOICE_ALREADY_PAID  PAYMENT_METHOD_INCOMPATIBLE_WITH_GATEWAY_CONFIG  AMOUNT_TOO_SMALL}type SubscriptionBillingPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  anchors: [SellingPlanAnchor!]!  interval: SellingPlanInterval!  intervalCount: Int!  maxCycles: Int  minCycles: Int}type SubscriptionContract implements Node & SubscriptionContractBase  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: CUSTOMER, interface: "SubscriptionContractBase")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: ORDER, interface: "SubscriptionContractBase")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: PRODUCT, interface: "SubscriptionContractBase")  @join__implements(graph: SHOP, interface: "Node")  @join__implements(graph: SHOP, interface: "SubscriptionContractBase")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  app: App  appAdminUrl: URL  billingAttempts(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SubscriptionBillingAttemptConnection!  billingPolicy: SubscriptionBillingPolicy!  createdAt: DateTime!  currencyCode: CurrencyCode!  customAttributes: [Attribute!]!  customer: Customer  customerPaymentMethod(showRevoked: Boolean = false): CustomerPaymentMethod  deliveryMethod: SubscriptionDeliveryMethod  deliveryPolicy: SubscriptionDeliveryPolicy!  deliveryPrice: MoneyV2!  discounts(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SubscriptionManualDiscountConnection!  id: ID!  lastPaymentStatus: SubscriptionContractLastPaymentStatus  lineCount: Int!  lines(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SubscriptionLineConnection!  nextBillingDate: DateTime  note: String  orders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): OrderConnection!  originOrder: Order  status: SubscriptionContractSubscriptionStatus!  updatedAt: DateTime!}interface SubscriptionContractBase  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  app: App  appAdminUrl: URL  currencyCode: CurrencyCode!  customAttributes: [Attribute!]!  customer: Customer  customerPaymentMethod(showRevoked: Boolean = false): CustomerPaymentMethod  deliveryMethod: SubscriptionDeliveryMethod  deliveryPrice: MoneyV2!  discounts(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SubscriptionManualDiscountConnection!  lineCount: Int!  lines(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SubscriptionLineConnection!  note: String  orders(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): OrderConnection!  updatedAt: DateTime!}type SubscriptionContractConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SubscriptionContractEdge!]!  nodes: [SubscriptionContract!]!  pageInfo: PageInfo!}type SubscriptionContractEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: SubscriptionContract!}enum SubscriptionContractLastPaymentStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SUCCEEDED  FAILED}enum SubscriptionContractSubscriptionStatus  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  ACTIVE  PAUSED  CANCELLED  EXPIRED  FAILED}type SubscriptionCyclePriceAdjustment  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  adjustmentType: SellingPlanPricingPolicyAdjustmentType!  adjustmentValue: SellingPlanPricingPolicyAdjustmentValue!  afterCycle: Int!  computedPrice: MoneyV2!}union SubscriptionDeliveryMethod  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = SubscriptionDeliveryMethodLocalDelivery | SubscriptionDeliveryMethodPickup | SubscriptionDeliveryMethodShippingtype SubscriptionDeliveryMethodLocalDelivery  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address: SubscriptionMailingAddress!  localDeliveryOption: SubscriptionDeliveryMethodLocalDeliveryOption!}type SubscriptionDeliveryMethodLocalDeliveryOption  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: String  description: String  instructions: String  phone: String!  presentmentTitle: String  title: String}type SubscriptionDeliveryMethodPickup  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  pickupOption: SubscriptionDeliveryMethodPickupOption!}type SubscriptionDeliveryMethodPickupOption  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  code: String  description: String  location: Location!  presentmentTitle: String  title: String}type SubscriptionDeliveryMethodShipping  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address: SubscriptionMailingAddress!  shippingOption: SubscriptionDeliveryMethodShippingOption!}type SubscriptionDeliveryMethodShippingOption  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  carrierService: DeliveryCarrierService  code: String  description: String  presentmentTitle: String  title: String}type SubscriptionDeliveryPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  anchors: [SellingPlanAnchor!]!  interval: SellingPlanInterval!  intervalCount: Int!}union SubscriptionDiscount  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = SubscriptionAppliedCodeDiscount | SubscriptionManualDiscounttype SubscriptionDiscountAllocation  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amount: MoneyV2!  discount: SubscriptionDiscount!}type SubscriptionDiscountEntitledLines  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  all: Boolean!  lines(first: Int, after: String, last: Int, before: String, reverse: Boolean = false): SubscriptionLineConnection!}type SubscriptionDiscountFixedAmountValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amount: MoneyV2!  appliesOnEachItem: Boolean!}type SubscriptionDiscountPercentageValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  percentage: Int!}enum SubscriptionDiscountRejectionReason  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  NOT_FOUND  NO_ENTITLED_LINE_ITEMS  QUANTITY_NOT_IN_RANGE  PURCHASE_NOT_IN_RANGE  CUSTOMER_NOT_ELIGIBLE  USAGE_LIMIT_REACHED  CUSTOMER_USAGE_LIMIT_REACHED  CURRENTLY_INACTIVE  NO_ENTITLED_SHIPPING_LINES  INCOMPATIBLE_PURCHASE_TYPE  INTERNAL_ERROR}union SubscriptionDiscountValue  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP) = SubscriptionDiscountFixedAmountValue | SubscriptionDiscountPercentageValuetype SubscriptionLine  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  currentPrice: MoneyV2!  customAttributes: [Attribute!]!  discountAllocations: [SubscriptionDiscountAllocation!]!  id: ID!  lineDiscountedPrice: MoneyV2!  pricingPolicy: SubscriptionPricingPolicy  productId: ID  quantity: Int!  requiresShipping: Boolean!  sellingPlanId: ID  sellingPlanName: String  sku: String  taxable: Boolean!  title: String!  variantId: ID  variantImage: Image  variantTitle: String}type SubscriptionLineConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SubscriptionLineEdge!]!  nodes: [SubscriptionLine!]!  pageInfo: PageInfo!}type SubscriptionLineEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: SubscriptionLine!}type SubscriptionMailingAddress  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  address1: String  address2: String  city: String  company: String  country: String  countryCode: CountryCode  firstName: String  lastName: String  name: String  phone: String  province: String  provinceCode: String  zip: String}type SubscriptionManualDiscount  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  entitledLines: SubscriptionDiscountEntitledLines!  id: ID!  recurringCycleLimit: Int  rejectionReason: SubscriptionDiscountRejectionReason  targetType: DiscountTargetType!  title: String  type: DiscountType!  usageCount: Int!  value: SubscriptionDiscountValue!}type SubscriptionManualDiscountConnection  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  edges: [SubscriptionManualDiscountEdge!]!  nodes: [SubscriptionManualDiscount!]!  pageInfo: PageInfo!}type SubscriptionManualDiscountEdge  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  cursor: String!  node: SubscriptionManualDiscount!}type SubscriptionPricingPolicy  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  basePrice: MoneyV2!  cycleDiscounts: [SubscriptionCyclePriceAdjustment!]!}type SuggestedOrderTransaction  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  accountNumber: String  amountSet: MoneyBag!  formattedGateway: String  gateway: String  kind: SuggestedOrderTransactionKind!  maximumRefundableSet: MoneyBag  parentTransaction: OrderTransaction}enum SuggestedOrderTransactionKind  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  SUGGESTED_REFUND}type SuggestedRefund  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amountSet: MoneyBag!  discountedSubtotalSet: MoneyBag!  maximumRefundableSet: MoneyBag!  refundDuties: [RefundDuty!]!  refundLineItems: [RefundLineItem!]!  shipping: ShippingRefund!  subtotalSet: MoneyBag!  suggestedTransactions: [SuggestedOrderTransaction!]!  totalCartDiscountAmountSet: MoneyBag!  totalDutiesSet: MoneyBag!  totalTaxSet: MoneyBag!}enum TaxExemption  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  CA_STATUS_CARD_EXEMPTION  CA_BC_RESELLER_EXEMPTION  CA_MB_RESELLER_EXEMPTION  CA_SK_RESELLER_EXEMPTION  CA_DIPLOMAT_EXEMPTION  CA_BC_COMMERCIAL_FISHERY_EXEMPTION  CA_MB_COMMERCIAL_FISHERY_EXEMPTION  CA_NS_COMMERCIAL_FISHERY_EXEMPTION  CA_PE_COMMERCIAL_FISHERY_EXEMPTION  CA_SK_COMMERCIAL_FISHERY_EXEMPTION  CA_BC_PRODUCTION_AND_MACHINERY_EXEMPTION  CA_SK_PRODUCTION_AND_MACHINERY_EXEMPTION  CA_BC_SUB_CONTRACTOR_EXEMPTION  CA_SK_SUB_CONTRACTOR_EXEMPTION  CA_BC_CONTRACTOR_EXEMPTION  CA_SK_CONTRACTOR_EXEMPTION  CA_ON_PURCHASE_EXEMPTION  CA_MB_FARMER_EXEMPTION  CA_NS_FARMER_EXEMPTION  CA_SK_FARMER_EXEMPTION  EU_REVERSE_CHARGE_EXEMPTION_RULE  US_AL_RESELLER_EXEMPTION  US_AK_RESELLER_EXEMPTION  US_AZ_RESELLER_EXEMPTION  US_AR_RESELLER_EXEMPTION  US_CA_RESELLER_EXEMPTION  US_CO_RESELLER_EXEMPTION  US_CT_RESELLER_EXEMPTION  US_DE_RESELLER_EXEMPTION  US_FL_RESELLER_EXEMPTION  US_GA_RESELLER_EXEMPTION  US_HI_RESELLER_EXEMPTION  US_ID_RESELLER_EXEMPTION  US_IL_RESELLER_EXEMPTION  US_IN_RESELLER_EXEMPTION  US_IA_RESELLER_EXEMPTION  US_KS_RESELLER_EXEMPTION  US_KY_RESELLER_EXEMPTION  US_LA_RESELLER_EXEMPTION  US_ME_RESELLER_EXEMPTION  US_MD_RESELLER_EXEMPTION  US_MA_RESELLER_EXEMPTION  US_MI_RESELLER_EXEMPTION  US_MN_RESELLER_EXEMPTION  US_MS_RESELLER_EXEMPTION  US_MO_RESELLER_EXEMPTION  US_MT_RESELLER_EXEMPTION  US_NE_RESELLER_EXEMPTION  US_NV_RESELLER_EXEMPTION  US_NH_RESELLER_EXEMPTION  US_NJ_RESELLER_EXEMPTION  US_NM_RESELLER_EXEMPTION  US_NY_RESELLER_EXEMPTION  US_NC_RESELLER_EXEMPTION  US_ND_RESELLER_EXEMPTION  US_OH_RESELLER_EXEMPTION  US_OK_RESELLER_EXEMPTION  US_OR_RESELLER_EXEMPTION  US_PA_RESELLER_EXEMPTION  US_RI_RESELLER_EXEMPTION  US_SC_RESELLER_EXEMPTION  US_SD_RESELLER_EXEMPTION  US_TN_RESELLER_EXEMPTION  US_TX_RESELLER_EXEMPTION  US_UT_RESELLER_EXEMPTION  US_VT_RESELLER_EXEMPTION  US_VA_RESELLER_EXEMPTION  US_WA_RESELLER_EXEMPTION  US_WV_RESELLER_EXEMPTION  US_WI_RESELLER_EXEMPTION  US_WY_RESELLER_EXEMPTION  US_DC_RESELLER_EXEMPTION}type TaxLine  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  channelLiable: Boolean  priceSet: MoneyBag!  rate: Float  ratePercentage: Float  title: String!}type TransactionFee implements Node  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  amount: MoneyV2!  flatFee: MoneyV2!  flatFeeName: String  id: ID!  rate: Decimal!  rateName: String  taxAmount: MoneyV2!  type: String!}type TypedAttribute  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  key: String!  value: String!}enum UnitSystem  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  IMPERIAL_SYSTEM  METRIC_SYSTEM}scalar UnsignedInt64  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP)input UpdateMediaInput  @join__type(graph: PRODUCT){  id: ID!  previewImageSource: String  alt: String}scalar URL  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP)type UserError implements DisplayableError  @join__implements(graph: CUSTOMER, interface: "DisplayableError")  @join__implements(graph: ORDER, interface: "DisplayableError")  @join__implements(graph: PRODUCT, interface: "DisplayableError")  @join__implements(graph: SHOP, interface: "DisplayableError")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  field: [String!]  message: String!}type UTMParameters  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  campaign: String  content: String  medium: String  source: String  term: String}type VaultCreditCard  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  billingAddress: CustomerCreditCardBillingAddress  brand: String!  expired: Boolean!  expiryMonth: Int!  expiryYear: Int!  lastDigits: String!  name: String!}type VaultPaypalBillingAgreement  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  inactive: Boolean!  name: String!  paypalAccountEmail: String!}type Video implements File & Media & Node  @join__implements(graph: CUSTOMER, interface: "File")  @join__implements(graph: CUSTOMER, interface: "Media")  @join__implements(graph: CUSTOMER, interface: "Node")  @join__implements(graph: ORDER, interface: "File")  @join__implements(graph: ORDER, interface: "Media")  @join__implements(graph: ORDER, interface: "Node")  @join__implements(graph: PRODUCT, interface: "File")  @join__implements(graph: PRODUCT, interface: "Media")  @join__implements(graph: PRODUCT, interface: "Node")  @join__implements(graph: SHOP, interface: "File")  @join__implements(graph: SHOP, interface: "Media")  @join__implements(graph: SHOP, interface: "Node")  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  alt: String  createdAt: DateTime!  duration: Int  fileErrors: [FileError!]!  fileStatus: FileStatus!  filename: String!  id: ID!  mediaContentType: MediaContentType!  mediaErrors: [MediaError!]!  mediaWarnings: [MediaWarning!]!  originalSource: VideoSource  preview: MediaPreviewImage  sources: [VideoSource!]!  status: MediaStatus!}type VideoSource  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  fileSize: Int  format: String!  height: Int!  mimeType: String!  url: String!  width: Int!}type Weight  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  unit: WeightUnit!  value: Float!}enum WeightUnit  @join__type(graph: CUSTOMER)  @join__type(graph: ORDER)  @join__type(graph: PRODUCT)  @join__type(graph: SHOP){  KILOGRAMS  GRAMS  POUNDS  OUNCES}directive @inContext(    language: LanguageCode,    country: CountryCode) on QUERY | MUTATION | OBJECT
 |