@magiclabs.ai/magicbook-client 0.7.27 → 0.7.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.cjs +1 -0
- package/index.cjs.map +1 -1
- package/index.d.cts +3 -0
- package/index.d.ts +3 -0
- package/index.iife.js +1 -0
- package/index.iife.min.js +1 -1
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/package.json +1 -1
package/index.iife.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var MagicLabs=(()=>{var Le=Object.defineProperty;var Ya=Object.getOwnPropertyDescriptor;var Ga=Object.getOwnPropertyNames;var Xa=Object.prototype.hasOwnProperty;var Qa=(a,e)=>{for(var s in e)Le(a,s,{get:e[s],enumerable:!0})},es=(a,e,s,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of Ga(e))!Xa.call(a,t)&&t!==s&&Le(a,t,{get:()=>e[t],enumerable:!(n=Ya(e,t))||n.enumerable});return a};var as=a=>es(Le({},"__esModule",{value:!0}),a);var Dt={};Qa(Dt,{Book:()=>D,BookDesignRequest:()=>Ea,DesignRequest:()=>La,DesignRequestOptions:()=>pt,ImageServer:()=>Na,Images:()=>ja,MagicBookClient:()=>$t,assetSchema:()=>Ua,bookCreationRequestSchema:()=>Tt,bookDesignRequestSchema:()=>Ca,bookPropsSchema:()=>q,bookSizes:()=>Ce,canSubmitDesignRequest:()=>we,cancelledEventDetail:()=>oa,coverTypes:()=>je,designOptionsSchema:()=>$a,designOptionsServerSchema:()=>Ma,embellishmentLevels:()=>$e,formats:()=>ss,imageAssignmentSchema:()=>za,imageDensities:()=>Re,imageDensityOptionSchema:()=>ve,imageDensityOptionServerSchema:()=>_e,imageDensityOptionsSchema:()=>Pa,imageDensityOptionsServerSchema:()=>Da,imageFilteringLevels:()=>Pe,imageServerSchema:()=>Q,imageServerToImage:()=>Ra,isDesignRequestSubmitted:()=>Ve,magicShopBookSchema:()=>Ka,occasions:()=>Ee,pageSchema:()=>Ja,pageTypes:()=>Ne,photoMetadataSchema:()=>qa,photoStripSchema:()=>Fa,positionSchema:()=>Va,propertySchema:()=>Ba,reportingDataSchema:()=>Wa,sflyCanvasSchema:()=>ta,snapCanvasSchema:()=>Ha,spreadSchema:()=>St,spreadServerSchema:()=>ee,states:()=>Xe,statesToCloseWS:()=>ca,statesToReport:()=>la,styles:()=>U,surfaceCategoryNames:()=>ts,textStickerLevels:()=>De,timeoutEventDetail:()=>ia});var Xe=["new","ingesting","submitted","storyboarding","deduplication","image-selection","designing","layouting","embellishing","polishing","ready","timeout","error","cancelled"],ca=["error","timeout","ready","cancelled"],la=["error","timeout"],Ve=a=>!["new","ingesting"].includes(a),we=a=>["new","ingesting","ready","error"].includes(a),Ee=["baby","birthday","default","everyday","family","kids","life-stories","portfolio","school-memories","seasonal-holidays","special-celebrations","sports-and-hobbies","travel","wedding","year-in-review"],U={1005:{slug:"modern-black-sfly"},1101:{slug:"bon-voyage-sfly"},1103:{slug:"fun-in-the-sun-sfly"},1201:{slug:"modern-wedding-sfly"},3001:{slug:"digiscrap-sfly"},4034:{slug:"travel-snapshots-sfly"},4035:{slug:"vintage-travel-sfly"},5017:{slug:"natural-neutrals-sfly"},5033:{slug:"chalkboard-chic-sfly"},5079:{slug:"hello-spring-sfly"},5082:{slug:"familygram-sfly"},5085:{slug:"best-day-ever-sfly"},5091:{slug:"little-love-sfly"},5118:{slug:"a-year-in-color-sfly"},5120:{slug:"milestone-anniversaries-sfly"},5121:{slug:"the-travel-bug-sfly"},5122:{slug:"modern-white-sfly"},5127:{slug:"outdoor-wedding-sfly"},5134:{slug:"classic-wedding-sfly"},5138:{slug:"kraft-pop-sfly"},5142:{slug:"simply-black-sfly"},5144:{slug:"autumn-memories-sfly"},5146:{slug:"everyday-sentiments-sfly"},5149:{slug:"everyday-happiness-sfly"},5150:{slug:"its-a-girl-thing-sfly"},5155:{slug:"made-with-love-sfly"},5157:{slug:"high-school-memories-sfly"},5161:{slug:"rustic-wedding-sfly"},5165:{slug:"life-is-grand-sfly"},5167:{slug:"adventure-awaits-sfly"},5168:{slug:"disney-adventure-sfly"},5171:{slug:"world-travel-sfly"},5174:{slug:"hello-summer-sfly"},5183:{slug:"everything-sports-sfly"},5188:{slug:"everyday-watercolor-sfly"},5189:{slug:"holiday-memories-sfly"},5213:{slug:"love-and-thanks-sfly"},5218:{slug:"babys-first-year-sfly"},5219:{slug:"usa-travel-sfly"},5220:{slug:"vintage-wedding-sfly"},5226:{slug:"love-you-because-sfly"},5228:{slug:"reunion-sfly"},5238:{slug:"whimsy-chalkboard-sfly"},5242:{slug:"modern-indigo-sfly"},5250:{slug:"family-yearbook-sfly"},5255:{slug:"elegant-wedding-sfly"},5258:{slug:"family-vacation-sfly"},5259:{slug:"beach-travel-sfly"},5261:{slug:"sparkle-and-shine-sfly"},5262:{slug:"welcome-baby-sfly"},5265:{slug:"vivid-watercolor-sfly"},5266:{slug:"what-i-love-about-you-sfly"},5272:{slug:"love-grows-sfly"},5274:{slug:"painted-seasons-sfly"},5278:{slug:"vintage-disney-sfly"},5292:{slug:"modern-grey-sfly"},5297:{slug:"modern-love-story-sfly"},5299:{slug:"modern-travel-sfly"},5304:{slug:"beach-wedding-sfly"},5305:{slug:"rustic-farmhouse-sfly"},5308:{slug:"tropical-travel-sfly"},6e3:{slug:"travel-abroad-sfly"},6001:{slug:"everyday-rustic-sfly"},6002:{slug:"simply-modern-sfly"},6003:{slug:"modern-baby-sfly"},6004:{slug:"modern-photo-album-sfly"},6005:{slug:"travel-adventures-sfly"},6006:{slug:"watercolor-year-in-review-sfly"},6007:{slug:"beach-bliss-sfly"},6008:{slug:"simply-gray-sfly"},6009:{slug:"family-favorites-by-lure-design-sfly"},6010:{slug:"travel-gallery-sfly"},6011:{slug:"our-wedding-day-sfly"},6012:{slug:"chic-celebrations-by-float-paperie-sfly"},6013:{slug:"simply-bold-type-sfly"},6014:{slug:"colorful-florals-by-potts-design-sfly"},6015:{slug:"softly-rustic-sfly"},6016:{slug:"ombre-watercolor-sfly"},6017:{slug:"forever-love-by-with-merriment-sfly"},6018:{slug:"colorful-memories-by-britt-bass-sfly"},6019:{slug:"celebrate-family-by-float-paperie-sfly"},6020:{slug:"disney-family-adventures-sfly"},6021:{slug:"everyday-neutrals-sfly"},6022:{slug:"colorful-childhood-sfly"},6023:{slug:"everyday-indigo-sfly"},6024:{slug:"shimmer-and-shine-sfly"},6025:{slug:"summertime-fun-sfly"},6026:{slug:"pet-lover-sfly"},6027:{slug:"modern-wedding-story-sfly"},6028:{slug:"family-blessings-by-potts-design-sfly"},6030:{slug:"outdoor-adventures-by-sarah-hawkins-designs-sfly"},6031:{slug:"travel-memories-sfly"},6032:{slug:"tropical-travels-sfly"},6033:{slug:"everyday-chalkboard-by-potts-design-sfly"},6034:{slug:"classic-disney-sfly"},6035:{slug:"cheerful-color-sfly"},6036:{slug:"colorful-birthday-sfly"},6038:{slug:"classic-baby-sfly"},6039:{slug:"bold-year-in-review-by-float-paperie-sfly"},6040:{slug:"colorfully-fun-sfly"},6041:{slug:"colorful-year-in-review-by-sarah-hawkins-designs-sfly"},6042:{slug:"gilded-wedding-sfly"},6043:{slug:"road-trip-travel-by-sarah-hawkins-designs-sfly"},6044:{slug:"rustic-gilded-wedding-sfly"},6045:{slug:"elegantly-scripted-year-in-review-sfly"},6047:{slug:"2020-what-a-year-sfly"},6057:{slug:"best-mom-ever-sfly"},6052:{slug:"celebration-of-life-by-sarah-hawkins-designs-sfly"},6054:{slug:"colorful-school-days-by-float-paperie-sfly"},6051:{slug:"love-is-all-we-need-sfly"},6058:{slug:"graduation-celebration-sfly"},6056:{slug:"our-wedding-day-guestbook-sfly"},6055:{slug:"muted-everyday-abstract-sfly"},6046:{slug:"winter-memories-by-sarah-hawkins-design-sfly"},6053:{slug:"best-dad-ever-sfly"},6050:{slug:"watercolor-greenery-by-sarah-hawkins-designs-sfly"},6063:{slug:"watercolor-floral-wedding-by-kim-thoa-sfly"},6060:{slug:"watercolor-baby-girl-sfly"},6059:{slug:"watercolor-baby-boy-sfly"},6048:{slug:"simple-elegant-wedding-sfly"},6049:{slug:"gilded-wedding-guestbook-sfly"},6037:{slug:"everyday-fairytale-by-jenny-romanski-sfly"},6061:{slug:"best-grandparents-ever-sfly"},6068:{slug:"winter-getaway-sfly"},6067:{slug:"national-parks-travel-by-eiman-design-co-sfly"},6065:{slug:"go-sports-by-lure-design-sfly"},6066:{slug:"elegant-wedding-greenery-by-kim-thoa-sfly"},6064:{slug:"boho-travel-by-umaiana-studio-sfly"},6071:{slug:"modern-dark-neutrals-sfly"},6072:{slug:"modern-light-neutrals-sfly"},6073:{slug:"modern-celebrations-sfly"},6074:{slug:"bright-and-bold-kids-year-in-review-by-sarah-hawkins-designs-sfly"},6085:{slug:"classic-school-yearbook-sfly"},6084:{slug:"colorful-elementary-school-yearbook-sfly"},5402:{slug:"everyday-recipes-by-slightly-stationery-sfly"},6083:{slug:"school-days-yearbook-sfly"},6082:{slug:"the-story-of-me-sfly"},6086:{slug:"whimsical-recipes-by-slightly-stationery-sfly"},6101:{slug:"babys-first-sfly"},6103:{slug:"classic-recipes-sfly"},6104:{slug:"elevated-rustic-sfly"},6105:{slug:"boho-summer-sfly"},6116:{slug:"boho-baby-sfly"},6117:{slug:"simply-gallery-sfly"},6118:{slug:"this-is-love-sfly"},6120:{slug:"wedding-photo-album-sfly"},6121:{slug:"watercolorwashes-sfly"},6124:{slug:"graduation-photo-album-sfly"},6125:{slug:"modern-year-in-review-photo-album-sfly"},6126:{slug:"black-white-photo-album-sfly"},6132:{slug:"travel-journal-sfly"},6133:{slug:"rustic-gallery-sfly"},6137:{slug:"summer-adventures-sfly"},6141:{slug:"heirloom-moments-sfly"},6144:{slug:"seasonal-year-in-review-sfly"},6143:{slug:"wanderlust-gallery-sfly"},6146:{slug:"wedding-elopement-gallery-sfly"},6148:{slug:"love-wins-sfly"},6151:{slug:"adventures-in-mexico-sfly"},6152:{slug:"generations-of-love-sfly"},6153:{slug:"cheerful-patterns-sfly"},6062:{slug:"create-your-own-sfly"},6075:{slug:"together-again-sfly"},6078:{slug:"everyday-boho-by-umaiana-studio-sfly"},6089:{slug:"colorful-gradients-sfly"},6096:{slug:"simply-scrapbook-sfly"},6097:{slug:"boho-wedding-sfly"},6098:{slug:"black-and-white-rustic-sfly"},6099:{slug:"bright-color-pop-sfly"},6159:{slug:"grateful-for-you-sfly"},6156:{slug:"europe-mementos-sfly"},6164:{slug:"disney-princess-sfly"},6165:{slug:"disneys-simply-mickey-sfly"},6166:{slug:"disney-mickey-and-friends-sfly"},6169:{slug:"through-the-years-sfly"},be5f79d7525f4717844db77a2f1b5e50:{slug:"abstract-baby-first-year-snap"},"519bf5f2b6734103a9a359469be4961b":{slug:"album-snap"},"029a2ebd65b448bf93753c813b7b7363":{slug:"all-about-love-snap"},"16d0d436594b4171bd9688876a85c9c1":{slug:"alphabet-book-snap"},"5b95e1d678584558b2c3397ab996da7b":{slug:"always-and-forever-snap"},a2c088e32541429ba8e5e15d09991264:{slug:"art-of-travel-snap"},"0ddec2b965094c8ea03d669e771ff1a6":{slug:"autumn-snapshots-snap"},"339699fedd3743f69c5b05587fbfd41a":{slug:"baby-boy-first-year-snap"},"091f9a6a83c349b2a9732177d89f8664":{slug:"baby-girl-first-year-snap"},e768ec11406545809ca9598be3bda88c:{slug:"best-dad-ever-snap"},"0c55a3eb5cc6414c9f2570886132d331":{slug:"best-year-ever-snap"},"9c49df50d76b4789834ca7abaabe2bc6":{slug:"bold-shapes-snap"},fd7cf7c4dc244705ad391334d76f7229:{slug:"bold-type-snap"},"363ceab4906b47a09dd287f53dc1d30f":{slug:"botanicals-snap"},e47017576d0e451180ff4591d2aee2fa:{slug:"celebrating-grandma-snap"},d9743da5f46843aab84b1f90ff776ee0:{slug:"celebrating-mum-snap"},"13039c15c81b4e50af5e39cd99f4e274":{slug:"chalkboard-snap"},"0c98757783874104a488a1a88747344d":{slug:"childs-yearbook-snap"},"5b0d80d6ca164919b7ee558c0bc2537b":{slug:"classic-fathers-snap"},eb734aa7c87a4db1ac9695e935f13489:{slug:"colour-block-rainbow-snap"},"7ed9132a96484ed2b200cf30e73cf049":{slug:"contemporary-travel-snap"},"3e15106389764a3cb2b6a6c29c065993":{slug:"contemporary-wedding-snap"},"47f9e28d811842a5870c74bb4c6b3608":{slug:"design-your-own-snap"},bef3d3bc49f3476aa6f39ad073294a04:{slug:"destination-stamps-snap"},"496138703d5346bd9678a2fa487b54fd":{slug:"dip-dye-snap"},"303773eee9934e8ba9f676b339c84d39":{slug:"earth-tones-snap"},"02c52e4cdccd40b0b99cf2215a6b8fe1":{slug:"elegant-florals-snap"},c59f05e866344332b2953199fd2972fa:{slug:"everyday-happiness-snap"},"5a2d025aaa3746b2b047daa6206ba8ad":{slug:"family-chalkboard-snap"},"1c8784e76020435d88ddab7bc8d72cae":{slug:"family-farmhouse-snap"},"1735277701d6483e9934074f25053f3a":{slug:"family-memories-snap"},"9c35a7f890204c38adb4255571377114":{slug:"family-yearbook-snap"},"9c946c20f0dc45adb3f85735690f3395":{slug:"favourite-things-snap"},c216373996d945c186cc6db5a53e10b1:{slug:"framed-full-photo-snap"},"6f7cd5c4e4e247f2bdf7c44ace0fdad5":{slug:"fresh-cookbook-snap"},"7eae47a7cbd743d4a47ca94f7a6b87a7":{slug:"full-and-multi-square-photo-snap"},ac7a649cbd27433c9d0b405f34ff29f5:{slug:"full-photo-snap"},"3aa989376bc5414eb2a35f2cb930f57c":{slug:"full-photo-snap"},d86767aacb4f464892702ed3ffac1a98:{slug:"fun-dots-snap"},c5d1654a989d4f2f87594e486239e77b:{slug:"geometric-lines-snap"},"73e54769af5f4943a8403c6a5e38f5fb":{slug:"golden-graduation-snap"},"7d15aef8b54d41ee82a99d327d571020":{slug:"graduation-memories-snap"},"46594aace0ca42b1bdd086d1b8ac0ad4":{slug:"guest-book-snap"},"77c78fbe2b4b4c7fb37e34a9515912d2":{slug:"hearts-for-mum-snap"},"659893fcc6c24fef9ea1a3a8ccf2539e":{slug:"hello-baby-snap"},"0f1182fcc18c428fb7c3d80c5a637c3b":{slug:"hello-baby-boy-snap"},"54b7a8ca59774060835fdd48653dba9a":{slug:"hello-baby-girl-snap"},"2d56caccc29a40b5bd16334937de0083":{slug:"i-love-my-cat-snap"},"3c12993b18ff473fa6fc7f695bd64180":{slug:"i-love-my-dog-snap"},c4393a1da2e54ca4ab9a3ec0aeb682e4:{slug:"lets-celebrate-snap"},ee9fd665523c41078a65c5389896d0ab:{slug:"love-lives-here-snap"},b84d0171dbb748e1ab2fb535fd318830:{slug:"love-story-snap"},"4d61b18d992c4d8eb33a331e4201ae05":{slug:"magical-memories-snap"},bdbe9158b33343c6ae11217fde9c8a57:{slug:"milestone-memories-snap"},"790a78454af94287b2a84c2324d6956e":{slug:"modern-graduation-snap"},"4211083b4bad4fee87e04dd65e5fed5d":{slug:"modern-highlights-snap"},"47bb41bb9e174657aa0c48ec140ed2c8":{slug:"modern-rustic-snap"},bac69bcc341c445d9c5c81f04231c685:{slug:"my-family-snap"},"2d561db2b849457f8f830c2e977ced6c":{slug:"my-graduation-snap"},e2727f32f9e248a3a7fd02f50cf493ab:{slug:"natural-blues-snap"},"85005f9b9c1c4a4485508c52465b7110":{slug:"nautical-summer-snap"},df1eded2d6e24c81a9e9bd66567b39f0:{slug:"organic-patterns-snap"},bfdc9b325b1a4471a948eccb7c76fd2e:{slug:"organic-shapes-snap"},"7cb42c74e4704c08a51f0930703fff34":{slug:"our-wedding-guests-snap"},c88a62c1e3584591b278fe0ccfe3b02b:{slug:"over-the-moon-snap"},"2a682e5b38d64f77b7c1b6c0a8a06670":{slug:"painterly-patterns-snap"},"5eddabc29f704c66ba03deff870f2c18":{slug:"precious-experiences-snap"},"18f048f0a07f40c09495fdc3830f7228":{slug:"reflections-on-our-year-snap"},f2fd5fd83bbb4e9ebf3af33ba4589561:{slug:"roadtrip-snap"},"31ed7e06afb347f2a302ba35267c8a0a":{slug:"rustic-chic-snap"},"17e8062b9ed749ba8428cbb3924e719d":{slug:"rustic-family-snapshots-snap"},"7573b1a594e8405295adfcf145c5322a":{slug:"serene-memories-snap"},acc3ac3b7e724c288a849b471616e373:{slug:"simple-snap"},ddb203e3ae0443209ada75135e13a63e:{slug:"simple-family-moments-snap"},bdee0a45e5144156b88621238cd31bbe:{slug:"simply-love-snap"},dc0d15f9aa474bd89c49e6da49bb3cc5:{slug:"sketched-botanicals-snap"},"55cebda93e1c4f52b07d824a57f8677b":{slug:"smitten-snap"},"2172f706eedf4c36a3fba10a0fe5448d":{slug:"snow-days-snap"},"0964a6d8e0234df7ad7df8e56c33ff2b":{slug:"solid-brights-snap"},e47b1860677e45909de56915a350a84e:{slug:"studio-snap"},"0b8fcc5f30cb4649bb4d8ea9cf35578c":{slug:"studio-multi-snap"},"2972e73653da4dc5805853e22717f1ee":{slug:"summer-snapshots-snap"},f292a52aff774e698fe26dc61a7a3f71:{slug:"team-spirit-snap"},b9192bf9df6b4984b29f4731b5f0bb63:{slug:"ten-things-i-love-snap"},d2dd8fe6e2e44c78935206323ee89af1:{slug:"travel-maps-snap"},"61f74eec39ff425b85e4f1c7e9e15ef6":{slug:"travel-memories-snap"},"148b777f385c4df2bc1b4900a4208e82":{slug:"travel-stamps-snap"},"77550e4c36b34454bac2ae9c4d9d2bd1":{slug:"tropical-beach-escape-snap"},"6aac0d2309744e9ea8fd4621f8213dbd":{slug:"unfurgettable-kitty-snap"},f5ef0aaddd294a0ba37ebc76012858ff:{slug:"vibrant-memories-snap"},"73966e2885a544ed9ba8e0a314a6528c":{slug:"vintage-birthday-memories-snap"},"33242c4285024ccfafc57d72a7292ea9":{slug:"warm-neutrals-snap"},"605f06522caa449ba93b7c5fa4d8e54b":{slug:"warmest-memories-snap"},c154e4664672441fa640f1ddff883db1:{slug:"watercolour-memories-snap"},"86024d3f1def489495cc7525d8232bea":{slug:"watercolour-sketchbook-snap"},f52d1dd24f9c49ae82d8f70449fe40b7:{slug:"watercolour-wonders-snap"},"1cbbd20a3a4542f38d2f9932016c4584":{slug:"watercolours-snap"},fdf4b31ea3434b03a5c3ddaab1579084:{slug:"wedding-studio-snap"},"1b104c3a036e4825bd60a5c7ceac4e66":{slug:"winter-magic-snap"},"03f332e3b2b947ebae73b67a9a22b6f4":{slug:"winter-sparkle-snap"},"97f70f6cdb5244a08d45772cccfa2788":{slug:"year-of-memories-snap"},d8618710d59c45d2811cee65ae803e4c:{slug:"abstract-baby-first-year-snap"},"3e4db176ff6641f494775b004b16b933":{slug:"abstract-baby-first-year-snap"},"1d1036bfafd24aee8b3e31b9ed4521b5":{slug:"abstract-baby-first-year-snap"},"09cbe8ca16234005a7faac2ab2b3b119":{slug:"abstract-baby-first-year-snap"},"71042a793e1347ef93c81fe1d872be97":{slug:"abstract-baby-first-year-snap"},"6b7caac7a564427b9898c33278de541b":{slug:"abstract-baby-first-year-snap"},"9be193ec0e554935ab9dc52bd47ffd5f":{slug:"abstract-baby-first-year-snap"},"25bb8032f29847ee8386927b6d3ce10f":{slug:"abstract-baby-first-year-snap"},d5ac5975bf114759b7627e24f1ed6a33:{slug:"abstract-baby-first-year-snap"},c44d040ac06c434eb3e868a8770af89d:{slug:"abstract-baby-first-year-snap"},"4f68e07bf508409eb4a3c58a48212cee":{slug:"abstract-baby-first-year-snap"},"599aab1fcdf74df2a9a8d0f75ec5f2c1":{slug:"abstract-baby-first-year-snap"},d289f646e6c74282932079eb4a75b619:{slug:"album-snap"},"5fcbbd8d3e464fd0a4f1f5f042b6968c":{slug:"album-snap"},fda9ef599f1a4bb0bb17d9e704894416:{slug:"album-snap"},"22ade0d0f2fc423a9477bb76982032dd":{slug:"album-snap"},dc56379c81004aca9ed16aa0295a690c:{slug:"album-snap"},"04a4082ba6054096bfa37d618c9ebf5f":{slug:"album-snap"},"8accebbd1039472c995f5174b01b0d30":{slug:"album-snap"},"706dba28ab4d4971a0d6b5ba475f769e":{slug:"album-snap"},e8535cb73b664e8493a680b7d1b3e08f:{slug:"album-snap"},"32212484831f44b0b47df23279fde097":{slug:"album-snap"},bc71c97d4dbc4cd684e71d5a999548e4:{slug:"all-about-love-snap"},"17c124ce332b453ebe2b53b866ebcb0e":{slug:"all-about-love-snap"},"403ae964d47e4ddba131c9aa64f68ee9":{slug:"all-about-love-snap"},ae06dcab90064aabb3ad0e266bf0abb6:{slug:"all-about-love-snap"},d6013625c78248d2bcf367753d52c7b2:{slug:"all-about-love-snap"},b3c8b45eb5b1493c8429ad2e9829c037:{slug:"all-about-love-snap"},eda3a20b960648bf970cbddf69e329d8:{slug:"all-about-love-snap"},bd6633d9f79c4bdaa4b95ca795e93f64:{slug:"all-about-love-snap"},"5952364fb8194bc8811942b7dd4d584d":{slug:"alphabet-book-snap"},"5ece93e25aa8462c8fbbd2835f719f07":{slug:"alphabet-book-snap"},"6fcaaa1a29524ef6a74832255ae67048":{slug:"always-and-forever-snap"},"777352bd7ea44848bad1ad8c0e6c0b26":{slug:"always-and-forever-snap"},"3f293313e5e14f3a8e93854843f13d75":{slug:"always-and-forever-snap"},"691427c3017e48739d2118d3dbc858ff":{slug:"always-and-forever-snap"},"2e7de9b37bb44ba19fc0868f60048949":{slug:"always-and-forever-snap"},"02e67ce8933e45ceb3d0a91702a68879":{slug:"always-and-forever-snap"},a527e36034164eadbb6884f4d75c1e5b:{slug:"art-of-travel-snap"},"867b5b4beeaf44ccb44e91761a90dd29":{slug:"art-of-travel-snap"},e87d96f500fe47ffadff1768f3cac989:{slug:"art-of-travel-snap"},"3702b9ad1eab4f7cb81ded40dcd93680":{slug:"art-of-travel-snap"},da37404894cd4bf6a57b9b1a2e855f62:{slug:"art-of-travel-snap"},a5b2fdb9069642ffbb9f06ab7bd56fda:{slug:"art-of-travel-snap"},"61f962cd6cc54f04b111289bd314df9a":{slug:"art-of-travel-snap"},"999650d2fb46451ab1f3b0bb7cdd7bcb":{slug:"art-of-travel-snap"},"006dcf3157fd4d3f82944fa477dbf292":{slug:"art-of-travel-snap"},"993573c56eb744ffaf64e2353c3e6532":{slug:"art-of-travel-snap"},"3577688653214b26ba5b5897aa5cd496":{slug:"autumn-snapshots-snap"},e0ced5a77acf4749bf8db55a88c67ea0:{slug:"autumn-snapshots-snap"},"4620a0d0f89144ad85a526f311a3ee87":{slug:"autumn-snapshots-snap"},"0949fbf7731a4e7a8450c90bad79ffcc":{slug:"autumn-snapshots-snap"},f541a285aeac4286a2a6778fa780d490:{slug:"autumn-snapshots-snap"},"6ac99ef27e5041fda9648ec4454bc3b0":{slug:"autumn-snapshots-snap"},"68abf3a628e6451994cd6e8db74cb486":{slug:"autumn-snapshots-snap"},f000dd41ab224cb49ee2f5415c0c598d:{slug:"baby-boy-first-year-snap"},"444dcf1828a54aaf82d66e6ec94efadc":{slug:"baby-boy-first-year-snap"},f2b6baec4ec44cae8df3807c9e482079:{slug:"baby-boy-first-year-snap"},"7ca76b1a53454617ab0d9785202fa7bf":{slug:"baby-boy-first-year-snap"},"9d058f67781f423a95325f50af37f479":{slug:"baby-boy-first-year-snap"},f01c4bc4a0964ae3b6742e546c1bf418:{slug:"baby-boy-first-year-snap"},"257e1a85e703422497a1c76d5aae03d4":{slug:"baby-boy-first-year-snap"},"937ac94a0bbe48888457bb9728f5c949":{slug:"baby-boy-first-year-snap"},bd4a95fd375e4f97a5c0ea3ce277781c:{slug:"baby-boy-first-year-snap"},"1e460a2b52814a2fb1b7f19f6a40d5e8":{slug:"baby-girl-first-year-snap"},"5689fb22385649859a233afa19f1190a":{slug:"baby-girl-first-year-snap"},e9beda000a5b41e081b1c818404354b0:{slug:"baby-girl-first-year-snap"},e08237c9ba09409e8f86923fa0d96a1b:{slug:"baby-girl-first-year-snap"},b7a0421ed1d643cb85ed8da22afed937:{slug:"baby-girl-first-year-snap"},"28cad1cc1f0e4e1da2a601788c2b1514":{slug:"baby-girl-first-year-snap"},c27ce14df80d41bf97aa0e4055741785:{slug:"baby-girl-first-year-snap"},"062bb05adbfe4be79498c63bf36253df":{slug:"baby-girl-first-year-snap"},f56b8fde37e9438caeac6b2d7fe1cc53:{slug:"baby-girl-first-year-snap"},"0310dfeac8b84ff79d29c4ac57f89754":{slug:"best-dad-ever-snap"},cdbf73314ce246018972caa6daf2cc79:{slug:"best-dad-ever-snap"},"11df8810e8dc4983b9942e3b943b97fe":{slug:"best-dad-ever-snap"},"38b0254c63884048a147f4878f1674c7":{slug:"best-dad-ever-snap"},"4c56948b78604326beb3b1843feecb72":{slug:"best-dad-ever-snap"},ddd49f4a115c425e9415414e822498d7:{slug:"best-dad-ever-snap"},"099ff6eeb5b74d08b271303afee76aa7":{slug:"best-dad-ever-snap"},f201f44911614a09b8cb0ecc7410c4e1:{slug:"best-dad-ever-snap"},"08646df18df74093aafe29e0274f4f1d":{slug:"best-dad-ever-snap"},"2e181bec37374831a1f51094861dcc51":{slug:"best-dad-ever-snap"},"63c280e153884e77bc828d2e49f32304":{slug:"best-year-ever-snap"},c0904840c7fc4c53bc5dee246a63f410:{slug:"best-year-ever-snap"},"9184a8cc960c48beab44446dea200c57":{slug:"best-year-ever-snap"},"675ea8acb9954a27a01831d730bacfad":{slug:"best-year-ever-snap"},"3eac47ff9b2e474d8f4ba2b43076e750":{slug:"best-year-ever-snap"},"4cdcd33a3cd84aa4a9aae65d342955af":{slug:"best-year-ever-snap"},"5bb078a93db54ebc94708da745d27c70":{slug:"best-year-ever-snap"},"4f57bc6c02f946fb9eaeade9ca4fc0a8":{slug:"bold-shapes-snap"},"2b58940cc733451d90ba6368a6385d3a":{slug:"bold-shapes-snap"},fd725384d2a14dd69e4ae6d79cda893e:{slug:"bold-shapes-snap"},"855091074e594c96b1819036695be0bf":{slug:"bold-shapes-snap"},"0063f97b2eb7400b9c0f8cd9c7db61aa":{slug:"bold-shapes-snap"},"3b4ca2e519f74e2c986d85715466f2ed":{slug:"bold-shapes-snap"},"7acdd2a49fa14246be473f28fc836793":{slug:"bold-shapes-snap"},"7f51cb53929f45c1a2be88ca2d247c0f":{slug:"bold-shapes-snap"},"7925038083794e6ca22b4c9851c5afb8":{slug:"bold-shapes-snap"},"03454aff5efc4dcfa4bc02ce0d414caf":{slug:"bold-type-snap"},"1f32e63dab8a4a098564635d3b5be4a5":{slug:"bold-type-snap"},b26adcb0d4db4a5894be33992d4eb4ca:{slug:"bold-type-snap"},edfa81ad6b3a4626a791be3147fda7c8:{slug:"bold-type-snap"},"548b1035d6234a34b86ba5f889a47566":{slug:"bold-type-snap"},a91ba79aca7c4f28aec96564650880a5:{slug:"bold-type-snap"},"30791ae961a64c50bb55753ecd8d20a9":{slug:"bold-type-snap"},b15beabdbc664024aadaa1e8a67a7768:{slug:"bold-type-snap"},"5aef9185f1e6497a9cb975c48af0926e":{slug:"bold-type-snap"},da21b34efd784cc2a575a931c6cc629c:{slug:"botanicals-snap"},"6ca4504442904fed8e4ae98ccceeeb88":{slug:"botanicals-snap"},a855511b49b0489ab8dfd1aedd9b8dda:{slug:"botanicals-snap"},"708191c0df624389b62af70d7f0b2d9f":{slug:"botanicals-snap"},"144027d826ca4591b44ac89956d59116":{slug:"botanicals-snap"},"6987be46154a40918fd2ba9e00a555ee":{slug:"botanicals-snap"},a203e0b6d36043bfa928f7dfb26bd40c:{slug:"botanicals-snap"},"84da6703951041cb9787c24bb4adf1ea":{slug:"botanicals-snap"},"834fa48a145f4eceaca8fc4cdb68ceec":{slug:"botanicals-snap"},"73f04075e87e4e67a06a1dd503e39dad":{slug:"celebrating-grandma-snap"},b7800d8ca1f948bf94646968e3ae0311:{slug:"celebrating-grandma-snap"},"72870ddbfab64facb3f4eb8cb4c92d39":{slug:"celebrating-grandma-snap"},"104da7f26c9f4ad9a8a84a9dfd96f55c":{slug:"celebrating-grandma-snap"},ff4df27caf06492196a89fc406901441:{slug:"celebrating-grandma-snap"},"1bc522f3563844168ef54516348f4793":{slug:"celebrating-grandma-snap"},"74c88d7e54594d74960bf2c1993c91da":{slug:"celebrating-grandma-snap"},db9a99e1dd07442fabc7beec70616dbf:{slug:"celebrating-grandma-snap"},"861d20dc5a504e85908f2fe6dfbb1cc4":{slug:"celebrating-grandma-snap"},c5f5a97807f14084af4f3a30d9dc85b5:{slug:"celebrating-mum-snap"},"7dfb310d022e4409b496535091935bc6":{slug:"celebrating-mum-snap"},ad6b14ddede74aba9b61188416d2eff3:{slug:"celebrating-mum-snap"},"7e575d810e7041c0978ae43f24671b1a":{slug:"celebrating-mum-snap"},f367614e77844710aea917ff7adeba5b:{slug:"celebrating-mum-snap"},"87c057ed91d14c1891e59f90626e1dfe":{slug:"celebrating-mum-snap"},"84ccbfb7353d45a18718adf3644b0917":{slug:"chalkboard-snap"},"176e12b28ffa4585a372b341bf09bf78":{slug:"chalkboard-snap"},"0983226333c1415280f11d8d164720d6":{slug:"chalkboard-snap"},"6194626510cb4d5c9469699b20fad80e":{slug:"chalkboard-snap"},"62f8aba5c9504a469557f1158143ea01":{slug:"chalkboard-snap"},"2fb6a3e6be6c4b84bddd206a0634bf1b":{slug:"chalkboard-snap"},d8a48f170c184f4bba372865c75f1811:{slug:"chalkboard-snap"},e111db666f474deb84a7e273a92634fe:{slug:"chalkboard-snap"},"16b5b16abeda4c4090a0f9db9fa6346e":{slug:"chalkboard-snap"},"7d0ecd58ed5b46609919d508512ed4ef":{slug:"chalkboard-snap"},d8e11cfcba454c11b36eae24c11a6edc:{slug:"childs-yearbook-snap"},d9fc0b1c20654fbe9674489aa6bc20bc:{slug:"childs-yearbook-snap"},"4a12f9f9c8004e488e53ecb09ded393e":{slug:"childs-yearbook-snap"},eae9be9657314c128e8a940fa54ae3db:{slug:"childs-yearbook-snap"},a7c51cafc8c5454282c68444b4bb4a56:{slug:"childs-yearbook-snap"},"34dcdf5c7b444a0d942e2b2c4031fbc9":{slug:"childs-yearbook-snap"},b8a7f936d5b5415992e3754ed22b8161:{slug:"childs-yearbook-snap"},"9221748dfc8140dda7ca3836d3b7f193":{slug:"childs-yearbook-snap"},e6ea5d0bed644414b4e84819078dcac2:{slug:"childs-yearbook-snap"},"03d2c99053b542928ad993a1cad39f02":{slug:"childs-yearbook-snap"},b9dc55f8906647bfa878b99353b626b2:{slug:"childs-yearbook-snap"},d1eb624596d64333b6653675b682f8fb:{slug:"childs-yearbook-snap"},f45a34d211844cb9a9294dd8b65104d4:{slug:"classic-fathers-snap"},fc6d6b7083f94e70903eed3a6ff611c6:{slug:"classic-fathers-snap"},d14b565855fd477a830f6382c3fb424b:{slug:"classic-fathers-snap"},b77bb9a63025446a8902d69f570e93e9:{slug:"classic-fathers-snap"},"65d7dab690fd407f9991c25b8e08b8c5":{slug:"classic-fathers-snap"},"26bd992f34be4fb7a0c6ac425d94d336":{slug:"classic-fathers-snap"},a96f60110ae24ea2adf1e587eb4c731f:{slug:"classic-fathers-snap"},"918ee007a7224c5999a56032ea08b8f2":{slug:"classic-fathers-snap"},d97e6b271bf54d07a93413fd56d70ce0:{slug:"classic-fathers-snap"},"0b75ae423a124a0a9ba99c6c00ff321e":{slug:"colour-block-rainbow-snap"},ac06442f9ab140c4a0adc0b0fa0bb0d9:{slug:"contemporary-travel-snap"},"923bbbc2f05846d186ef9489fb856721":{slug:"contemporary-travel-snap"},e6ec5eb5f20b4f6f97c3f98cb09a72a9:{slug:"contemporary-travel-snap"},"4659157417434a70badd17ad17824a2d":{slug:"contemporary-travel-snap"},"5d9092fe6a914c11a80ef7a47565c68c":{slug:"contemporary-travel-snap"},be1d1892325b4210a7a0ca26efae9792:{slug:"contemporary-travel-snap"},"313f72c4432b4bdfbe4b44d52e3571c4":{slug:"contemporary-travel-snap"},"49b25e12592f45a496626123ff67350a":{slug:"contemporary-travel-snap"},a9b445371d864023b173918513fd9c83:{slug:"contemporary-travel-snap"},"06169606f258416fb68b71432a05b578":{slug:"contemporary-travel-snap"},e28bf3d522a84df3970f4b7e19a15192:{slug:"contemporary-wedding-snap"},b19ffdb53126440cbb05aa7fde6b9915:{slug:"contemporary-wedding-snap"},e5494bb5fa4041619a68f88924603356:{slug:"contemporary-wedding-snap"},"76f4926f0db84038a916688f7c5a3e1d":{slug:"contemporary-wedding-snap"},a670059679fe4632be3572008ca02999:{slug:"contemporary-wedding-snap"},a9a4df539f04484cb0e4cf53fc7f6773:{slug:"contemporary-wedding-snap"},e3373f8bb6b24a2da3d3873a2f526f57:{slug:"contemporary-wedding-snap"},f74c4ac6384649f1ad7eed8c0adc4b06:{slug:"contemporary-wedding-snap"},"043096169dae483e8eaed5b6ccb5bfb2":{slug:"contemporary-wedding-snap"},c0b6cebfb75c4e288ac9deadbd176838:{slug:"contemporary-wedding-snap"},"407014ebdc8a4441b70d140187e12768":{slug:"contemporary-wedding-snap"},"30c63fdaf8fb48fb8d466c2a8a633010":{slug:"contemporary-wedding-snap"},"615c4233356f47a59c637d7c68a44e29":{slug:"contemporary-wedding-snap"},"514c648ece3641689c705c19808f5325":{slug:"contemporary-wedding-snap"},e1c9e518c9c847d1baa477265f4aca25:{slug:"design-your-own-snap"},"72473e25f4334637882c8a55b8c94e06":{slug:"design-your-own-snap"},ee10ba6be1ee48daa52620e4fc67b90a:{slug:"design-your-own-snap"},"853fb5de97e746e58685994a372a3439":{slug:"design-your-own-snap"},e3730c2033114323b46029efd3bc6950:{slug:"design-your-own-snap"},"8b9fb43c321a42218ad1e7dc3cf6be4a":{slug:"design-your-own-snap"},"06fab39f66164671872eb7d58630ba57":{slug:"design-your-own-snap"},"7a963e61f3aa4344861f0a5558cd5ea9":{slug:"design-your-own-snap"},"8ede33ede49546e2bf6f9fb3b1019832":{slug:"design-your-own-snap"},"8f2eb0910f404f9e8bc63360887694f0":{slug:"design-your-own-snap"},"96de60040f334084851b1ae80e7d6678":{slug:"design-your-own-snap"},"625f126cba534913a4616a268dcd905b":{slug:"design-your-own-snap"},"40072bfc6099408d8cc678bc37059354":{slug:"design-your-own-snap"},"5271346d5b8f47a5b05d5a408c53e756":{slug:"design-your-own-snap"},"540115527d114c6d9794c3e1cd351fc6":{slug:"design-your-own-snap"},"610519510c344e3fb3394619ff477e1a":{slug:"design-your-own-snap"},bcba5ca493dc4f2f80bdbc46856aad8c:{slug:"design-your-own-snap"},bdc76012a58f48178976f0ff0705d0ef:{slug:"design-your-own-snap"},c799fb3a9c5d4548b637cf8d6b7daed5:{slug:"design-your-own-snap"},c3378bf1009149498f15e03932f3009b:{slug:"design-your-own-snap"},e150710ad34c4482aada9d28feed4dd6:{slug:"design-your-own-snap"},ecf04c24deff43f5843ff0d44e6a46fb:{slug:"design-your-own-snap"},ee2f82f789e6493ebb5288deb6fb58b9:{slug:"design-your-own-snap"},eed1dc1510934cd3aa6ac9395d9c2d20:{slug:"design-your-own-snap"},"810fd378737c4cbe853b6e5f5933239d":{slug:"destination-stamps-snap"},"69bdf07bd9554b12b59026bc82f0e4c0":{slug:"destination-stamps-snap"},"5ddb2dd9c20a498cb928cf22113bcabe":{slug:"destination-stamps-snap"},b31a85ca57cd48208c4559f4f71eb62b:{slug:"destination-stamps-snap"},"5f8b34a95786436c9de7ea4931477fe1":{slug:"destination-stamps-snap"},"1956923c89044824908eb5a948e8c84c":{slug:"destination-stamps-snap"},"18f48e4bed5f4400ac2f1909ab3b4b3f":{slug:"destination-stamps-snap"},d23111685b104d38b57201e2e973e93c:{slug:"destination-stamps-snap"},"9a32c18b8054434f84a40e0d9f5daeb3":{slug:"destination-stamps-snap"},ca5121282c5b465aa02c680328f761b9:{slug:"dip-dye-snap"},"8765d3df18974c248de711730fca1a5e":{slug:"dip-dye-snap"},e0375ecd2b304355bd152d09f2b14488:{slug:"dip-dye-snap"},"8ed6e382b6734227b5320edbf1fd92cd":{slug:"dip-dye-snap"},"5274730ae9cb411aae67891f04b3fce1":{slug:"dip-dye-snap"},b7eede025e194e6e968e68e1032c5ffe:{slug:"dip-dye-snap"},"6dbf8652db8c499999079e66829b9898":{slug:"dip-dye-snap"},"3ee4f91f97f54708820742bd9bf868b9":{slug:"dip-dye-snap"},a4628e12cfa84b1d8ac12f4aeb87564b:{slug:"dip-dye-snap"},"0c79ef7b76d14074865826094a112892":{slug:"earth-tones-snap"},"2397669582b54eeeb8afcafc1066fac8":{slug:"earth-tones-snap"},"7642ddfd556a4beeb43693220fcca373":{slug:"earth-tones-snap"},"32b7c399542d4dc3908151ec7bc2f110":{slug:"earth-tones-snap"},ade106eef89642479bf57263468848d2:{slug:"earth-tones-snap"},"3f9a45c28d52417d875ce6ecf61b551d":{slug:"earth-tones-snap"},c2fe4aee37b84d9abd8e5be21738c649:{slug:"earth-tones-snap"},d765d1cc2c0b4e038a50a72171515b08:{slug:"earth-tones-snap"},bdf2f0f3ebab4284bdebf3f761f5e930:{slug:"earth-tones-snap"},"7f950eed20eb4191901f1499051a67f7":{slug:"earth-tones-snap"},db8fbd48d76445bcbf31b7d47081e474:{slug:"earth-tones-snap"},"8cef29dc84a64c248cb0fbd6953be87d":{slug:"earth-tones-snap"},eab05aa81c25435291e1e4362a2000df:{slug:"elegant-florals-snap"},"42c09457a39240428611e220a3f9e523":{slug:"elegant-florals-snap"},"5f28ec603c074ea8b6fcb5985139df58":{slug:"elegant-florals-snap"},"2c0c3b3258214d189aec0489e02707ee":{slug:"elegant-florals-snap"},a815b122db1b49e49c41e2028b930c83:{slug:"elegant-florals-snap"},a43074a3a54849a7833611bedb6d7917:{slug:"elegant-florals-snap"},"0b0f5ecd2b394de3a430bbdfe485a2e9":{slug:"elegant-florals-snap"},"385d2122883e4e97825843a59293fcc7":{slug:"elegant-florals-snap"},cdcaeaf05b004ae3a1f6cb3c9294e531:{slug:"elegant-florals-snap"},"8fbbf99e29aa422e862aaecafaf9e974":{slug:"elegant-florals-snap"},"2e82312b5de04ea4be0f6569963150b7":{slug:"elegant-florals-snap"},"5d02a441c7df4316a3719c12fa12d368":{slug:"elegant-florals-snap"},ad9e17391ef441aa8b7afdc2331f0ab4:{slug:"everyday-happiness-snap"},"5c52d792fe3e481eab27162bd5ae9f29":{slug:"everyday-happiness-snap"},"53f9af5f97e74e30beda3dd2f5e7f29d":{slug:"everyday-happiness-snap"},"1834fea60c074cc38da0489413ed63fe":{slug:"everyday-happiness-snap"},"70fb7f28e656450ea66c9e260c364dfc":{slug:"everyday-happiness-snap"},"9764dd4e73a04b5aa8536b931fc060b1":{slug:"everyday-happiness-snap"},efbdb3cc72044dc9b3b431acb7511898:{slug:"everyday-happiness-snap"},f605856f67e2492c9fd572682d88c9e9:{slug:"everyday-happiness-snap"},"17253aa5e7fe42c2a97170bbd3fdfc04":{slug:"family-chalkboard-snap"},"3d20e81c6d9c425b947969c122117853":{slug:"family-chalkboard-snap"},cf4927c0b2954b76abae612c52cb977c:{slug:"family-chalkboard-snap"},"714b89834a7f4b54a9404c20803e7f8e":{slug:"family-chalkboard-snap"},df490f9da1bd435b936935051219a628:{slug:"family-chalkboard-snap"},edc00c59a8714568b42a3287beebb10f:{slug:"family-chalkboard-snap"},"198dee446209437d9c34f110b7c7b2ef":{slug:"family-chalkboard-snap"},a03ea2dcc3cd472f9bb43383400f4f2b:{slug:"family-chalkboard-snap"},"698ddc3ece95415e86929932ffa49549":{slug:"family-chalkboard-snap"},aa0783e8f2fc47b5ada394087a56711e:{slug:"family-farmhouse-snap"},a095cfe6bb9b4f8190a8f77d0ef290ba:{slug:"family-farmhouse-snap"},"4cccdb5ec17948d68057ca8d059a6ee1":{slug:"family-farmhouse-snap"},d32ce35d73bf48ca87d5342441de80d3:{slug:"family-farmhouse-snap"},"5252a474aa9140f8877baa265de3c404":{slug:"family-farmhouse-snap"},"3ae6cde293f84f3a837e8137aad4b714":{slug:"family-farmhouse-snap"},"864a606f7caf4c29b5b75cab6cdf32a9":{slug:"family-farmhouse-snap"},d2c2f48dcbd0457c9ecba71d5619b1db:{slug:"family-farmhouse-snap"},a98dc3fb0b7442b98f8a5346b0ed550d:{slug:"family-farmhouse-snap"},c8f203b6adc04ac9a55db348d83f2195:{slug:"family-memories-snap"},e4e5e0b86f984abb96786761f2d7ba47:{slug:"family-memories-snap"},"1f8e85e660354c9585c540bc3a645978":{slug:"family-memories-snap"},bb4d670cf2ff41cf972794474436a65a:{slug:"family-memories-snap"},a15e2e1c005a4d0e8cc17ea55f7c2c22:{slug:"family-memories-snap"},ef8a0fcbf3e44aff94ecc1d43142996c:{slug:"family-memories-snap"},a364e0f1a94e40b3a61521ae3cac1f45:{slug:"family-memories-snap"},"89223b5fd0ee4501a6cbd658c39d3fe4":{slug:"family-memories-snap"},"845db67f54974d4fa30a675eaf692bc9":{slug:"family-memories-snap"},"508bfbef3d9b44c186002443dd031a4a":{slug:"family-memories-snap"},d4914552d0014094a30d0a835a5ed0fc:{slug:"family-memories-snap"},"50524531d75d4b35ac337e9aa1e95ec6":{slug:"family-memories-snap"},"7ed44e0ce2e940efb18650fae96a9533":{slug:"family-yearbook-snap"},eac17b01748e4c8e81a96e7843db6ab0:{slug:"family-yearbook-snap"},"371d7c7a8cca44f18c28dfc8da18bdf8":{slug:"family-yearbook-snap"},"6970cdef7f8e4d72ae566bcf96a9afc4":{slug:"family-yearbook-snap"},e9ebf9f9813147d38bfc5c887903cdcf:{slug:"family-yearbook-snap"},bed1b0b570e8413fbe6f3887b8d59af2:{slug:"family-yearbook-snap"},"11fd2f1a5dd447ebbd8514917cc9fe5a":{slug:"family-yearbook-snap"},b40166c81fcc4f7b986522bf2b9f632f:{slug:"family-yearbook-snap"},b4998915701b47a894d78b3efa7ea800:{slug:"family-yearbook-snap"},e5d824994e4b48af9c7792b3a92fa198:{slug:"family-yearbook-snap"},c7fbc664e64748c3a0e5a49dfd1487cc:{slug:"family-yearbook-snap"},d416ea06203b4a03925065319ec29982:{slug:"family-yearbook-snap"},"8a32a35d17264f848d4fc08e669f0c25":{slug:"favourite-things-snap"},ca3579fef1b742a9919fa2d94efc9f36:{slug:"framed-full-photo-snap"},be103ba64eaf44358c2703ed0d76985c:{slug:"framed-full-photo-snap"},c9c271456d1e48469d5253815446f0de:{slug:"framed-full-photo-snap"},"4c397ff453a240a59152ae4f57aa74e8":{slug:"framed-full-photo-snap"},"82ce30da95414c04ab67269d745620b5":{slug:"framed-full-photo-snap"},"5ec7181234574602b192f1982147613c":{slug:"framed-full-photo-snap"},"39d21433c212457ba822c6107340b30d":{slug:"framed-full-photo-snap"},"0fbf2c88b8094df4b7935f310a7de1bf":{slug:"framed-full-photo-snap"},"6a09a912a50246f19c5547a8ec2a27a4":{slug:"framed-full-photo-snap"},c4a90b2ffb7642ceac365b447deb9108:{slug:"fresh-cookbook-snap"},"0e5e1e627a664f48b6288ce0e9632952":{slug:"fresh-cookbook-snap"},"1bf48cb7a1c74db4a60aca936b0401bd":{slug:"fresh-cookbook-snap"},"19535e8a8bec43f6b7388e7b1b03bbdc":{slug:"fresh-cookbook-snap"},b40d063b81d248418e445935327ac5b6:{slug:"fresh-cookbook-snap"},"633d3bdc4cd544c2aff1b8bbc6e98536":{slug:"fresh-cookbook-snap"},"4031eacefcea4759893ee48db7a71e56":{slug:"fresh-cookbook-snap"},eb5bd03cfd04433aaa8d04e82d575e77:{slug:"fresh-cookbook-snap"},ac06d21a5aaa4b06af0b0de052e1877f:{slug:"fresh-cookbook-snap"},"93909883e9b94b20be6c1bbbc1abac62":{slug:"fresh-cookbook-snap"},ce0da785376e4e9f941f709a1f5c67ed:{slug:"fresh-cookbook-snap"},"495c057f6c1b4a31a3f0b5cc77292c7d":{slug:"fresh-cookbook-snap"},"4da2d8c6378d487a99a147cb8dd224ce":{slug:"full-and-multi-square-photo-snap"},"504bc25ab88b41ea948dc36791a89798":{slug:"full-and-multi-square-photo-snap"},"3eae543714a14428ac663573158b69de":{slug:"full-and-multi-square-photo-snap"},dfd9375dbee74aea8808e387d496f371:{slug:"full-and-multi-square-photo-snap"},"35d52cfb5842485e98ff9e4694358180":{slug:"full-and-multi-square-photo-snap"},"78e2f2573bf94364b3892582456a773d":{slug:"full-and-multi-square-photo-snap"},e417a72ac7204fc09c12dc74806e586a:{slug:"full-and-multi-square-photo-snap"},"902802fbf024444a8f5ce68b6e2be089":{slug:"full-and-multi-square-photo-snap"},"83105d457f8f4a82ae391b90a08a1b03":{slug:"full-and-multi-square-photo-snap"},c992f5ca16c84f4782c4c30f86e462f0:{slug:"full-and-multi-square-photo-snap"},c8cdbb25a0b54a7ea483773d7bea1cd2:{slug:"full-photo-snap"},"19a7c7d2e60f4c7bb1a8bfeabe3008e1":{slug:"full-photo-snap"},"1be5e6743d984887a7846a910ae31df5":{slug:"full-photo-snap"},"2379f6c4f2934a16afad46fce1570e56":{slug:"full-photo-snap"},ba606e12e62f4d01815687f5a66a284c:{slug:"full-photo-snap"},feac4dfe4e514761b4d1b0d12d7ce733:{slug:"full-photo-snap"},"8ce7fa5c4f3f45c2bfff7811143f9502":{slug:"full-photo-snap"},aec35c1178364b5c9f66b893020e98db:{slug:"full-photo-snap"},"9bd3531dd4934886b26dd56edb0a19aa":{slug:"full-photo-snap"},"66d675c7bb414e299a00d112037701c8":{slug:"full-photo-snap"},"60ffcf0bcd9a47f5a13779be34f85c02":{slug:"full-photo-snap"},"2ea0d6675eaf4b2ebb016c4e5dbef90c":{slug:"full-photo-snap"},c8a43f1f3dc849bcb5119421a081acc4:{slug:"full-photo-snap"},"96b7cf69bc674cbf96e14479af98c8f5":{slug:"fun-dots-snap"},"1b4f7bba9b344f2799036cbd60c5e156":{slug:"fun-dots-snap"},"035fde06bdc8409d975980bd72ed8bfd":{slug:"fun-dots-snap"},c77559c85e6a476ab8c38278deddab97:{slug:"fun-dots-snap"},ef87d1af4760493588167f6658e35e68:{slug:"fun-dots-snap"},"9ecb52a7dad044c18eb8421dd7bdc38e":{slug:"fun-dots-snap"},"8c8d4d8a59684eab947d5f12fc37cd09":{slug:"fun-dots-snap"},e85b56e39dae48b88c97cb38d4b7c6fc:{slug:"fun-dots-snap"},a619f234fffc4b159d24391b6362f674:{slug:"fun-dots-snap"},"5303ebd7ffa9460cbaa0f7d5c2e4d000":{slug:"geometric-lines-snap"},b7b7d6c83ee54fa0a38e27b9f59facde:{slug:"geometric-lines-snap"},c303c0b35aff4f9b9c48cd557a2dcf20:{slug:"geometric-lines-snap"},"7765fc73be2e49cf91ce2efff003fcc2":{slug:"geometric-lines-snap"},db84e45fde674ce1950787cb0a165245:{slug:"geometric-lines-snap"},f2bcecce46834dd19d8593a90fd7f7dc:{slug:"geometric-lines-snap"},"846dbd53648048d3a8a0b952c6816310":{slug:"geometric-lines-snap"},"1b7e0448ff4542d8a60359d13c5bb428":{slug:"geometric-lines-snap"},d180a8dbe6b74f9c8e40a0ef292d4d51:{slug:"golden-graduation-snap"},a806bb6ef6c84cbfbb449fb1eb63565b:{slug:"golden-graduation-snap"},"68c3f58c58174739aae5ec4cd1e7f4b8":{slug:"golden-graduation-snap"},b67ddc6f5e874d47b30269182c46bcd3:{slug:"golden-graduation-snap"},d5426c32ec15442cbd691ce3b53162f9:{slug:"golden-graduation-snap"},b3e39362341c4e1780f52897b3195cb0:{slug:"golden-graduation-snap"},b1a8f220c787417e9267a9d668cad92a:{slug:"golden-graduation-snap"},"9570b242215e492db27098367f258420":{slug:"golden-graduation-snap"},e92f04098ed94bd38c9791738e675960:{slug:"graduation-memories-snap"},"14eeb72692644bbb8e1f22477e6585e9":{slug:"graduation-memories-snap"},"96ca524eef9446a98c790ab37e7534ff":{slug:"graduation-memories-snap"},"444c3e6eb3d543d6b2723a87529a0357":{slug:"graduation-memories-snap"},"95f48e77c66241ce91ebe5901016b68a":{slug:"graduation-memories-snap"},"17723072eff64357bc566ba839414bdb":{slug:"graduation-memories-snap"},"1f867da4079c4a2da1a93a69bbd21a56":{slug:"guest-book-snap"},b3ae9275eeca418fab0029e56b4ed67e:{slug:"hearts-for-mum-snap"},"1bedd43270304adcb81701fceedb97f8":{slug:"hearts-for-mum-snap"},afa818ddcad74e2881b9c9bb41a1fe98:{slug:"hearts-for-mum-snap"},"0289f6d5e3c74ae88b6626886958a817":{slug:"hearts-for-mum-snap"},"5d10562fa27846cf801c02bebd49fada":{slug:"hearts-for-mum-snap"},b71699194c274f3b8b23653f2f945be5:{slug:"hearts-for-mum-snap"},"51fca05cc8124b9aaf266f0550f7095d":{slug:"hearts-for-mum-snap"},cb9f2cb7b4a846bf8f7c0fb5304ea968:{slug:"hearts-for-mum-snap"},"64c2a9d64f214ab49896009a96e24085":{slug:"hearts-for-mum-snap"},bb8e7fb26dec4fb4a1bec45f5e4bc89f:{slug:"hello-baby-snap"},"6ecc8afb18354280a48b24c4142d754e":{slug:"hello-baby-snap"},"37992fce2578419a9b2d9e3364ecddc5":{slug:"hello-baby-snap"},"54c2738882e94940b5e3dbed214b2754":{slug:"hello-baby-snap"},"2311675cca1d4476ad82e20e20b681aa":{slug:"hello-baby-snap"},"1f2a21da4cfa48ff98ccb8fc728b03a0":{slug:"hello-baby-snap"},f50d4338df894b6fb0746a57c105685d:{slug:"hello-baby-snap"},"4a998d52ab70465192572ddd3efab61f":{slug:"hello-baby-snap"},"10f6d733c9df402cb887651f966281d3":{slug:"hello-baby-boy-snap"},ecff70a6259442f3a3673d100dca01fd:{slug:"hello-baby-boy-snap"},"60fc14d94fcb4a73999f6bed60a27e6c":{slug:"hello-baby-boy-snap"},"6d0ac81424e84f4f9b350a0e04ddfed5":{slug:"hello-baby-boy-snap"},c52dc6bf2a9640c691925889d5f737ff:{slug:"hello-baby-boy-snap"},"957a392b597142349e1c4bf5b19f0c17":{slug:"hello-baby-boy-snap"},e5b645f71f144d15923b02dee8d3d36d:{slug:"hello-baby-boy-snap"},e2b224c953df40719699ba3324e9e4f8:{slug:"hello-baby-boy-snap"},"1961b47684044db4a85c58282873d528":{slug:"hello-baby-girl-snap"},cf1c9eaf197941a49c5defae45d641bb:{slug:"hello-baby-girl-snap"},"44e15579f5bf47378e38602f7947e2c9":{slug:"hello-baby-girl-snap"},bd3d1b95be584d489b63b8db2775998d:{slug:"hello-baby-girl-snap"},"76710e81a41a43b4b312c183f414355c":{slug:"hello-baby-girl-snap"},cb0c77ecc58f4375978714c8ab673a45:{slug:"hello-baby-girl-snap"},"835c4f4b556a42e8b9a8d6fef5cd3b75":{slug:"hello-baby-girl-snap"},a0a9d5d393274650b9a6065f683ecff2:{slug:"hello-baby-girl-snap"},"2571008c0824467686d6d00db046993a":{slug:"hello-baby-girl-snap"},e708835056e1477f8e95385e7528f663:{slug:"i-love-my-cat-snap"},"684e01e2cd4e4d85b4d122dee8ad9a10":{slug:"i-love-my-cat-snap"},db9e8288046e421daba9132e29287c6b:{slug:"i-love-my-cat-snap"},"0697670e98444aa499ffcd1e2f2919fd":{slug:"i-love-my-cat-snap"},ef2c733bd26240daa30ec13397c7bf98:{slug:"i-love-my-cat-snap"},"2e93ec1b5c2f428b87bdf4073f35fc5c":{slug:"i-love-my-cat-snap"},e0b5cec162b84f44beb8edd089b6800b:{slug:"i-love-my-cat-snap"},"6f74f5e54aeb4df8a2ebd22a9f5868fd":{slug:"i-love-my-cat-snap"},d7d29835a51149e0b9b73eab95957606:{slug:"i-love-my-cat-snap"},"250e7172fd914020bb93a45f46766967":{slug:"i-love-my-dog-snap"},"4a678b8cd50d4176b1615fa5c847e4d8":{slug:"i-love-my-dog-snap"},"621365c548f74108a832327bcfb86801":{slug:"i-love-my-dog-snap"},ba7cd7b264d34e2cb658340ab0bfba82:{slug:"i-love-my-dog-snap"},f2a966d52b26441086b8e35c5e8567d3:{slug:"i-love-my-dog-snap"},e55759ef90a8469586eaacbd46c4e3b0:{slug:"i-love-my-dog-snap"},"47eeda69e74a43ce9d30f23724bcf7eb":{slug:"i-love-my-dog-snap"},dd2502b5acb048e687b621c5bfadc544:{slug:"i-love-my-dog-snap"},f630aedab3904adcb54f592e970d219d:{slug:"i-love-my-dog-snap"},b172fd431a5e4c54b768f239b454d27c:{slug:"lets-celebrate-snap"},e2f483b08e1746608baa1dfa3cffba8a:{slug:"lets-celebrate-snap"},"7e86814435fa4610b4fbbba1f8636338":{slug:"lets-celebrate-snap"},c70cdfa9c7544ef7953d8d4c8ec559aa:{slug:"lets-celebrate-snap"},"1f9296cb36844e0fb34b45521f7f4a24":{slug:"lets-celebrate-snap"},cecf561776b641eebb532ea82dca2139:{slug:"lets-celebrate-snap"},"147bb4d78ee34c66bd1391e00a504f46":{slug:"lets-celebrate-snap"},f1de0875e40f4e9db1f8a92675eb69e6:{slug:"lets-celebrate-snap"},ab2dce328397419c94dfec9b1c8cc482:{slug:"lets-celebrate-snap"},"182f6472d64d444295f00fc1fca2d7cf":{slug:"lets-celebrate-snap"},"15380e633bcb4a3c9327b3dd303fd1f4":{slug:"lets-celebrate-snap"},"6f804f7800ba4c81a1af81f6c8b0a51b":{slug:"lets-celebrate-snap"},e50a2af4f58644fe850435c9968a313f:{slug:"love-lives-here-snap"},"6191dd213e4147319c04d876e642ce64":{slug:"love-lives-here-snap"},ae0fb7cb6beb4567a3c1c420420e72f6:{slug:"love-lives-here-snap"},b7272a9a41af4a71877c522e85481523:{slug:"love-lives-here-snap"},"7182d6c1b4d44183a3cbe06485ef851a":{slug:"love-lives-here-snap"},f2a7c17b20cf4abeab01a242922fe31a:{slug:"love-lives-here-snap"},"9e96b1c0c7764437ac5b291fe23e9f77":{slug:"love-lives-here-snap"},"08ffb4030fba42328cc071a4139e5b0a":{slug:"love-lives-here-snap"},"1773849c638044ddb6fdf16e3e7fb952":{slug:"love-lives-here-snap"},b4b8c4b216da446aa4e7d225abbc5199:{slug:"love-story-snap"},c91474e1552a4672944f3282021aa40d:{slug:"love-story-snap"},"9643def3b9364a5fbdeb1aef0dd409bc":{slug:"love-story-snap"},"2e52137305fb41a6b4940b60b40dde9b":{slug:"love-story-snap"},"26eb33d9207545f492f8e271dbbee745":{slug:"love-story-snap"},"80391633f6ec4eda925c9b83a3b79b4e":{slug:"love-story-snap"},"9eddfeb265144584a8425a532bb61aec":{slug:"love-story-snap"},cff0322dd11d49568c26aa514435d387:{slug:"love-story-snap"},a1e6574f120148d9bab1318315417a98:{slug:"love-story-snap"},"301308243c874ac6a08a318e6ea8c911":{slug:"magical-memories-snap"},"6c2354389ef84cf4a598ccde0fa94abe":{slug:"magical-memories-snap"},"1a702a7c5b5248a78a187fdfd3377ce4":{slug:"magical-memories-snap"},"53303ef176314f8e8335062e4bc43ffe":{slug:"magical-memories-snap"},"46903574f61c46419c13871c89624172":{slug:"magical-memories-snap"},ef4e6224691a406c86c44389ac57bf36:{slug:"magical-memories-snap"},"08183f87a7c4459092b5e17ff9ff962b":{slug:"magical-memories-snap"},"6617b3c977f34c09aee7c2fec378dc93":{slug:"magical-memories-snap"},"211477852c16472c9cd40cd6eb49d37d":{slug:"magical-memories-snap"},"69a55ecf2a4943e7b7e749ee848a72e2":{slug:"magical-memories-snap"},f5d4c9476d4b4e2a8824c606edcbc6d9:{slug:"magical-memories-snap"},c404f6e0a4d346ae98d84d04ad13a1d4:{slug:"magical-memories-snap"},d510f44ef978424bbdfe2fbc9eb69c2e:{slug:"milestone-memories-snap"},cf12d90ea10548c4a1b219b3a500f625:{slug:"milestone-memories-snap"},c1ec8c88641748109bbd10d1d5f88af0:{slug:"milestone-memories-snap"},"7eb436dc19344190a4a4cd8e69433442":{slug:"milestone-memories-snap"},c701c996a00a488282c9bea439bebd24:{slug:"milestone-memories-snap"},"9b5c42a974d5423d9d32edab64f13434":{slug:"milestone-memories-snap"},"803267c450f744d3ad8dcd6748b7a992":{slug:"milestone-memories-snap"},"209582fc8bcf453593f7848c7f6669b5":{slug:"milestone-memories-snap"},"272367d327d9438a9826cb1181df4875":{slug:"milestone-memories-snap"},f1dd5926e53b4a7cbbbdc71b015f77ba:{slug:"milestone-memories-snap"},bf2e6ccf7b974037bebe66fc3ada44c6:{slug:"milestone-memories-snap"},"536b5eeb97bd4e0ab0492a69f44a3c54":{slug:"milestone-memories-snap"},e7fe62c826a94bd785ed16bb4030c7ac:{slug:"modern-graduation-snap"},"2fa53e8c99804abfab0e3a93cab055a0":{slug:"modern-graduation-snap"},f1c2884f388e4d648e33bb4a89dc6a2b:{slug:"modern-graduation-snap"},"8afd21227dc2447cbb80d5d7c90e9fad":{slug:"modern-graduation-snap"},fc21667128bc4eb28d607a4ef9a774dd:{slug:"modern-graduation-snap"},ef82936a7ec046bf9a4f5eedf826c429:{slug:"modern-graduation-snap"},"91a1bdd7ff1642948bbd570e1c86692c":{slug:"modern-highlights-snap"},ba28e3e03cf54485aab2c18cdf26f25c:{slug:"modern-highlights-snap"},"1db46b07154844a9aa554baf5f8319f4":{slug:"modern-highlights-snap"},dacc5ea22de44e4e871894eab9071a33:{slug:"modern-highlights-snap"},"241f9e51f2b24ccd95d90583217b441a":{slug:"modern-highlights-snap"},db8d751478e94795a6ba5a945fcc09f2:{slug:"modern-highlights-snap"},"65aeef3922d649b4a58f4e8bdcff6458":{slug:"modern-highlights-snap"},"909f2c5a3b094995a2a0aebc1c4d0de3":{slug:"modern-rustic-snap"},"75c80ea28e234a33b8a002df504a6de9":{slug:"modern-rustic-snap"},"3e6a8471148a490ba53bf3e6b5266aca":{slug:"modern-rustic-snap"},"8d26ee28455b4f189215e787362e3e3c":{slug:"modern-rustic-snap"},"103ad6dc17614bd2a913d0ad34522346":{slug:"modern-rustic-snap"},ccbec4e10a7046ec9a64f7096087d521:{slug:"modern-rustic-snap"},"15571b5267dd47398ec7ee6b837ef089":{slug:"modern-rustic-snap"},"5d392f8e8b6f4409a7ae12aefa800e95":{slug:"modern-rustic-snap"},"1eaac324ed684da0a313984ff4d42d8c":{slug:"modern-rustic-snap"},f2d2e7f2a3e24fc6b26a711fb27d7c87:{slug:"my-family-snap"},ecc1a10cf8894e9788d7b6bbf1d09714:{slug:"my-graduation-snap"},"757434aea2eb4f8482a916c3f58a2111":{slug:"my-graduation-snap"},bc4da5c062f3452a9f6d927bc21b5651:{slug:"my-graduation-snap"},"3cbf6e4de2214bd4b5f9a1b52efd927d":{slug:"my-graduation-snap"},"661f4fd7b17d4effbd97d0d382551a32":{slug:"my-graduation-snap"},f4c0484ca8dc477485b0c8f79ad84e4f:{slug:"my-graduation-snap"},"7273c634fc78409a97014d027da49cdf":{slug:"my-graduation-snap"},c348155155644f30bd4480a73698a0e6:{slug:"natural-blues-snap"},"49c985c0bdb04497a14c7b152e9ea9ea":{slug:"natural-blues-snap"},"0904550b7fe842f1bf071ccf8da39bd0":{slug:"natural-blues-snap"},"6de0f779c64046c2a5446a03691f47d2":{slug:"natural-blues-snap"},"34f90236426a4522aae09c62a53fe8a0":{slug:"natural-blues-snap"},"69aba5dd087f4d98b6f90e2c97b91b9b":{slug:"natural-blues-snap"},"979a0aaa921a4a3689ccc919f572bcfe":{slug:"natural-blues-snap"},"10d2e69349e94be6b6a0821da33c56c7":{slug:"natural-blues-snap"},"09c80475df7145999110077d49a27304":{slug:"natural-blues-snap"},"5128453665a34967b55da82bb375c2dd":{slug:"nautical-summer-snap"},"21eea5ae34c14e03955e4eaa0af93694":{slug:"nautical-summer-snap"},"6e81a713e14943169a6a6e229d0054ff":{slug:"nautical-summer-snap"},e0a3a90cc7a441bda5c899c1588e866a:{slug:"nautical-summer-snap"},"9ccb7aede4744ce78bcd47aa610aac95":{slug:"nautical-summer-snap"},"2cad6b33539540a9985efe8e22a72f9c":{slug:"nautical-summer-snap"},c78f281b4fc84a1fb379905d77068c20:{slug:"nautical-summer-snap"},"89e15be143c94ff9b1d226e652f4c704":{slug:"nautical-summer-snap"},b198d4c178d84abe92a0223d0360e3be:{slug:"nautical-summer-snap"},"2fbd442fe54042cfafae3f617c827480":{slug:"organic-patterns-snap"},"629539beedaf4a0e94fa0b41c5cec3dd":{slug:"organic-patterns-snap"},"178ade0ea2b6479183ae6877f37544ea":{slug:"organic-patterns-snap"},a103777968e841058102dbb7a8b0ade2:{slug:"organic-patterns-snap"},"3d9ba7399902488aada1cc95971a85b2":{slug:"organic-patterns-snap"},f6972e5b48dc4a0187ff2f317f42b5be:{slug:"organic-patterns-snap"},"8533ec02ef654fa681fc4607e7dc36c1":{slug:"organic-patterns-snap"},fdf63afc3b2243538266606979a58c07:{slug:"organic-patterns-snap"},"4668b82e2f794f4c8d2d19dd6c1f79d4":{slug:"organic-patterns-snap"},f96f37aaf39c4223ba58f738d1b0dab1:{slug:"organic-shapes-snap"},"3f7956affeb24876bdddd8434f584e24":{slug:"organic-shapes-snap"},"6f02638b2b504743b12ddd2ebbfd0301":{slug:"organic-shapes-snap"},"5eb97f67249749fea2b7997b11ffbd63":{slug:"organic-shapes-snap"},"0f149e5e2abd487e9a551575c6838399":{slug:"our-wedding-guests-snap"},"2c2528edea96456082f7f88bcc32c026":{slug:"our-wedding-guests-snap"},aa2c69b40e084fc1ba3d9d15de356726:{slug:"our-wedding-guests-snap"},"778e59c3d10c422caeb3d440321aa0eb":{slug:"our-wedding-guests-snap"},ae5bfd8e13cc4c42be16af4273c44cb6:{slug:"our-wedding-guests-snap"},ac9e96e8f6c9463fa34014e8d423d4f5:{slug:"our-wedding-guests-snap"},e43f2458835c4aa6be772e105eb5d9a0:{slug:"our-wedding-guests-snap"},"9fe82f9f7a0b41058c42a51bc65e1302":{slug:"our-wedding-guests-snap"},"8770e7c5444940afb31e1b47aa88600c":{slug:"our-wedding-guests-snap"},a4ab75c698004bd0971b02d95f6e1b19:{slug:"our-wedding-guests-snap"},"83741b78484c48ea997456f0f08a697f":{slug:"our-wedding-guests-snap"},f45b2c4b3a3e4167bb6ffc91daa8e16d:{slug:"our-wedding-guests-snap"},"8e6a5885caa745f18bae0b740ecb9068":{slug:"over-the-moon-snap"},"9e60d316af0d4124b013c1d5d657e962":{slug:"over-the-moon-snap"},"7deaafe98d6f4739a1c6da5e1c272b58":{slug:"over-the-moon-snap"},"171594f8290a4b9fa81c1ae2d8880fb3":{slug:"over-the-moon-snap"},"70f86f50eb984a1aa19e4fa3cfb83dd3":{slug:"over-the-moon-snap"},efca49605bff4ffe87e1190080cf9139:{slug:"over-the-moon-snap"},"936185e7981d4437bcceca5af048f136":{slug:"over-the-moon-snap"},cf245dbf57344f59ad3249c9e0db7ab3:{slug:"over-the-moon-snap"},"29176a1feb5942289c0b6b35928992a2":{slug:"over-the-moon-snap"},c1d0db85b99b4f13a8526328d78b9706:{slug:"painterly-patterns-snap"},"1177e4bce6824e84909843d1613baf3c":{slug:"painterly-patterns-snap"},"0ec468dc6d714d2fb496f6111d28325a":{slug:"painterly-patterns-snap"},aa313a40c280419d94e469ab73812100:{slug:"painterly-patterns-snap"},ad3b785e2172477f801aa95f629a414e:{slug:"painterly-patterns-snap"},"794c1c7ca7ef45fe9ecf60108fe259c2":{slug:"painterly-patterns-snap"},"20706bb4473d4dbc91d361e37ed7aed0":{slug:"precious-experiences-snap"},"20cff66632ca4ae0bc6f0b444ad366e9":{slug:"precious-experiences-snap"},"7e121e9da7c34a6283176139be27db75":{slug:"precious-experiences-snap"},"8f6bc682ca554fc7947ff7fd1bf8a2f6":{slug:"precious-experiences-snap"},a3358387e401431f916fdf81c07e0e4f:{slug:"precious-experiences-snap"},"45cdfdf8e5014f4ead1c3d308ad30efc":{slug:"precious-experiences-snap"},a647be89f9024e05b1ab33ae6af925e4:{slug:"precious-experiences-snap"},"0e69e548304048f7b97d1729bbb0f3fb":{slug:"reflections-on-our-year-snap"},"5e7e80453ffa45dc87546b1b896fe729":{slug:"reflections-on-our-year-snap"},e2e23ace97ff440d8e97c618b44c87e3:{slug:"reflections-on-our-year-snap"},"8c91a592ba7640748c18c1041f0910f5":{slug:"reflections-on-our-year-snap"},e104afc6efe0415199a1b05c2e3e3b88:{slug:"reflections-on-our-year-snap"},f77adfecbedb4d43ab438d92cfc25c8c:{slug:"reflections-on-our-year-snap"},f7dc719049dc4afb863a8083280db9c7:{slug:"reflections-on-our-year-snap"},b177ee59abfb4b2d86b4d61ffd1b967e:{slug:"reflections-on-our-year-snap"},"3b529d4986044d43b22de82a030e5a74":{slug:"reflections-on-our-year-snap"},"8a4e4261cfa64e8e9fa319ba4a95def8":{slug:"reflections-on-our-year-snap"},"5f693bfb4bc5418cbbc30229796c1312":{slug:"reflections-on-our-year-snap"},b8c5d5c29cc642b8b7704d1d983ec8b4:{slug:"reflections-on-our-year-snap"},"666f2762f2724dc192351ba30b84873e":{slug:"roadtrip-snap"},"94c6b2315f6b4c8c98adf5888482ce89":{slug:"roadtrip-snap"},"7ea428453129403eace21979d40f6ad2":{slug:"roadtrip-snap"},"667d23b5e456422b9d4b158d40cff34f":{slug:"roadtrip-snap"},"3e7066e7ee9b4520885a267a215872bc":{slug:"roadtrip-snap"},"6a9dcbc0b046448fb7ff479fa77031e8":{slug:"roadtrip-snap"},"7d38e6acc0514f14a1250ef36cf03c42":{slug:"roadtrip-snap"},"1cee715c999d4925ab3868e50cd53b4b":{slug:"roadtrip-snap"},"05bb225433fc4999954963f2c7f80d27":{slug:"rustic-chic-snap"},"1257171af5eb420dab698824ae7455c6":{slug:"rustic-chic-snap"},"67588e6e87b848ca90cad051b331faba":{slug:"rustic-chic-snap"},"752d80ff570e4e0a9920c7d4786c7470":{slug:"rustic-chic-snap"},"8dff13578bbf4050a280a22aea8fb1e9":{slug:"rustic-chic-snap"},"69854e1d712248e1aa16eb1929b5cda8":{slug:"rustic-chic-snap"},"7d4e7716247347298cae7e0523575fb2":{slug:"rustic-chic-snap"},"6cd3d748e6d14b62acbdc8f5bc7dbdd0":{slug:"rustic-chic-snap"},d27693374a62482d92c8565c65ce2c35:{slug:"rustic-chic-snap"},"169bdde441e640aeb1eea271233adc1d":{slug:"rustic-family-snapshots-snap"},"30f25101720d4fa083e1b8b5667d9286":{slug:"rustic-family-snapshots-snap"},"513fbcf798424787aa02853df4c799e7":{slug:"rustic-family-snapshots-snap"},bed3e5cb890d45e48f287525bce35f6e:{slug:"rustic-family-snapshots-snap"},d3b77522a4974cbbaedb82aded2a9779:{slug:"rustic-family-snapshots-snap"},"6a148e5ebbbd4057980df168894d0add":{slug:"rustic-family-snapshots-snap"},"95ac08d481c44224b9421533d105899f":{slug:"rustic-family-snapshots-snap"},"33bfeeaebb4448119391ede6fba2e94a":{slug:"rustic-family-snapshots-snap"},a867ee1a5bf84aa3afc86874c15f9966:{slug:"rustic-family-snapshots-snap"},e4c5106a4d55467dbaca0a1f551e87fe:{slug:"serene-memories-snap"},"7e0fdbc8a5094cdd9c3a0c801cddbb56":{slug:"serene-memories-snap"},"0b3b7dec9e1d40ce884cf2b58eb68ed5":{slug:"serene-memories-snap"},f6c99b409b4e436f86510027e4d0b42f:{slug:"serene-memories-snap"},"0cc239c5e26d423ca5453900f87514f4":{slug:"serene-memories-snap"},"1b1557b0588142bfae75c9c97987a227":{slug:"serene-memories-snap"},"311f191edfd4484cb9a88a55e52e2ea9":{slug:"serene-memories-snap"},"778bd39191ff418d84f4e70948fbdf8d":{slug:"simple-snap"},a2543a565036439b87dbc049de32c9dd:{slug:"simple-snap"},d1eb484851524cba893f5040341dfe9d:{slug:"simple-snap"},"9997164743ad4e1cb601223ae8a6acf7":{slug:"simple-snap"},"67ebd4a450d6464f9dcb6f39bd44bf13":{slug:"simple-snap"},a779d0f057fd4da6bc0964a3683c661f:{slug:"simple-snap"},"57b25114dfd64229b8b4e96d71c9b072":{slug:"simple-snap"},"1b34483fb89c4f1a8d8b0cb257c99db8":{slug:"simple-family-moments-snap"},"243cc056e36449f1bf0660d24e2eab56":{slug:"simple-family-moments-snap"},a38c8f1e6dc444fdaf5311e379622e18:{slug:"simple-family-moments-snap"},"44beb56b7f3b4115b3067eee64006ea9":{slug:"simple-family-moments-snap"},d5d5196ad91c47d5af35d417d95dcbf2:{slug:"simple-family-moments-snap"},a632755125ab4bf088da56b2a17351af:{slug:"simple-family-moments-snap"},"5b4302cb97c741c1b1c9ccc3b12e9932":{slug:"simple-family-moments-snap"},b003710a7e134f50b74011395acb3bb7:{slug:"simple-family-moments-snap"},"25d365267deb4a17918f5e21d00fc119":{slug:"simple-family-moments-snap"},"27a76c07cf234345ba54989f0e8221ed":{slug:"simply-love-snap"},fb3cc7175b874ed0856d4127af965244:{slug:"simply-love-snap"},d1b50d211dc04d6c8ada59cd3a631bbb:{slug:"simply-love-snap"},a127c7a71e2147a6b20d2764bfc00d27:{slug:"simply-love-snap"},"648a761accdb433b8618f20e7f31ee8f":{slug:"simply-love-snap"},"2509d0dc67d14f648978bf330f720638":{slug:"simply-love-snap"},"30ce18744ee2425ebb04c7c9290f9c74":{slug:"simply-love-snap"},"76fb76f52b0a4f989e09baaec72f1f2a":{slug:"simply-love-snap"},"284a28c25a6f41898bc501f74239ea8e":{slug:"sketched-botanicals-snap"},b9f0009aae7b4cdba8ad6569d4d7b854:{slug:"sketched-botanicals-snap"},e79ae1421edb473e90406449e10ac6c6:{slug:"sketched-botanicals-snap"},a2dc849886d94ffcb44d49ad5034bba9:{slug:"sketched-botanicals-snap"},a4224e2385a8488182a44b88cdc44bb9:{slug:"sketched-botanicals-snap"},a829b00cd20a48cc866fab614af98d91:{slug:"sketched-botanicals-snap"},"3f25dac7c13042e5931c2a0ff8015f06":{slug:"sketched-botanicals-snap"},e2b3a55fc7194f088633b984d53f95b8:{slug:"smitten-snap"},"95eee9a285aa4f8b809bdf44d98c6685":{slug:"smitten-snap"},f7a610b2815646049883c9202d8e4aba:{slug:"smitten-snap"},"18aa609376c04225b52fef7f91a8de2b":{slug:"smitten-snap"},"085f914b2c374cf8991ce22a7b894843":{slug:"smitten-snap"},ca42b60d4a5d4c27af8dcf27f3d51947:{slug:"smitten-snap"},"8029514a8080460cb309506b8a16b67c":{slug:"smitten-snap"},"8b1333f9ee5147269064ce13eb3b0997":{slug:"smitten-snap"},"0bcb8c27190a4531af7ccc72219b5669":{slug:"snow-days-snap"},"0f2b6dbbd3194313943ee755661789b7":{slug:"snow-days-snap"},e382bfe0d0334f508ad7310cb8cd6e2f:{slug:"snow-days-snap"},e5015db3072c408998a1a65275b47183:{slug:"snow-days-snap"},e543f33041fb412a9915a8b661eae7fe:{slug:"snow-days-snap"},d838f1bfeeeb4e929f8c92fb444b309c:{slug:"snow-days-snap"},e79d31d7469e486c91aa23043783cdf3:{slug:"snow-days-snap"},"1307dc2065054bd79b645ec1b4efa06b":{slug:"snow-days-snap"},"5db9b834bf094325a781824b82ef6d35":{slug:"snow-days-snap"},"0bb354f118494b4e891a8100f72bad82":{slug:"solid-brights-snap"},"7b925299270b4bc58c3518e3e4081cbf":{slug:"solid-brights-snap"},"004d70c2645b407b8fcb026d591af123":{slug:"solid-brights-snap"},e7ee7959474241b48064bce848746318:{slug:"solid-brights-snap"},fec5b2de8f0e4c8dbbf80b49acb12c0e:{slug:"solid-brights-snap"},"46a0b5c241f447fc8c9830b89eaf3a2f":{slug:"solid-brights-snap"},d9bbcacde8cd4a899b0c30b893fefcea:{slug:"solid-brights-snap"},af96dc6e1ba140e18c75e49ddb256922:{slug:"solid-brights-snap"},"35d4629d5c42485cbd7c2b8011dadf36":{slug:"studio-snap"},"97ffabc8703148e6b7a53b928a570c2a":{slug:"studio-snap"},"9abc5015a4ca471c9e835f6d83f77233":{slug:"studio-snap"},"230117f050c94e3bb2a4f3ba47be2b3a":{slug:"studio-snap"},"2facd637415644e6a9c35345678ab14e":{slug:"studio-snap"},"18e7baed7a0444038da95599b5d056ed":{slug:"studio-snap"},"9036bc1cafb748ff87b07caf13128a8b":{slug:"studio-snap"},"7088a16e96db4243be32196727851878":{slug:"studio-snap"},b5211902f9d740c79319428ebec386df:{slug:"studio-snap"},"9297faab550047b2bddf1fd8cf97b114":{slug:"studio-snap"},"3c55e91b8aae4a18823cd40e120509ed":{slug:"studio-snap"},"766fd1c3ec1c45c0a5c0bf155e5c3990":{slug:"studio-snap"},fc921ad0a06c46c1ac36663bcda6ee38:{slug:"studio-multi-snap"},a416b8753e234d498cf882be5a8579b1:{slug:"studio-multi-snap"},e6249a6657f3447782d1356acbc25381:{slug:"studio-multi-snap"},e63289bc981d493b9465f5c8022ced9f:{slug:"studio-multi-snap"},aa8a092425e5482fae464271b39ae1e2:{slug:"studio-multi-snap"},"64901274e28e4eb798ca236ac33a504d":{slug:"studio-multi-snap"},"5d65bbcfa64945d0ae18dd85b55d3d06":{slug:"studio-multi-snap"},eba50d6423a44cfdb0eccd398432a654:{slug:"studio-multi-snap"},"96fce1730ebf429a8cbe52aa1a630c02":{slug:"summer-snapshots-snap"},da0baa1730974cc3857194706076c382:{slug:"summer-snapshots-snap"},ea1ea7327fd1468d99788695dc2c8a86:{slug:"summer-snapshots-snap"},a716778412594fe8b51ca5e550a634dc:{slug:"summer-snapshots-snap"},f65dafa579d34106baafb4e53e1f1e18:{slug:"summer-snapshots-snap"},e10f7436806c4d139a5dda825d8fc734:{slug:"summer-snapshots-snap"},d3a7ee07c1c94d14a8148581596162cb:{slug:"summer-snapshots-snap"},"401fa22ecac846cb8183bedb1ee9d832":{slug:"summer-snapshots-snap"},"63ca929359624200845bd631ebe00ac4":{slug:"summer-snapshots-snap"},b876318b92b9402faaeb0af27dbb5923:{slug:"team-spirit-snap"},"0e140785a44c44918d8aaf808a82eb9c":{slug:"team-spirit-snap"},ba98f97d677d40bebb15abe712457e0f:{slug:"team-spirit-snap"},"00becf19eb144b52a3e4e3efe07185b7":{slug:"team-spirit-snap"},"25218dd15f9a48a789befa03e7f152a3":{slug:"team-spirit-snap"},bab96a7d3ce24ce0b970f42ce5295e80:{slug:"team-spirit-snap"},c5ee8f78005247d08ac88093762a5abf:{slug:"team-spirit-snap"},"7bb0885f9bc1409c83216154cb9b3b9d":{slug:"team-spirit-snap"},"6f85477ade5041d4b37b778ee19b5965":{slug:"team-spirit-snap"},e8c030574e1f42dba9fb4da5d1f03d4d:{slug:"ten-things-i-love-snap"},d08065afd7ad40f489af9a899388f406:{slug:"ten-things-i-love-snap"},"3b6deae2f6cb46a0bfed9c8da4fad2cc":{slug:"ten-things-i-love-snap"},"5e5a365d3a934176b176c827c18e093e":{slug:"ten-things-i-love-snap"},"9185bd56618a452b9c6c5349976f5eb6":{slug:"ten-things-i-love-snap"},"1384165524b646738f1ce63e279f7c56":{slug:"ten-things-i-love-snap"},"613c2d76621c4109aa281aa364aea23b":{slug:"ten-things-i-love-snap"},"69373b0e74184ff3a9cacafe6b9f7676":{slug:"ten-things-i-love-snap"},"74252ce6ed514947b98a22ea2206298b":{slug:"ten-things-i-love-snap"},a83e020b292d4463b34307c8898f9228:{slug:"travel-maps-snap"},"39ae5f22d702416696024655d365bdc1":{slug:"travel-maps-snap"},"41252e3fa5994645ac53b28e7566fbb1":{slug:"travel-maps-snap"},"60d7c4dbaf6c4defbe82e410087d00a4":{slug:"travel-maps-snap"},"9191f51b03b5419daabcdb1a250e2296":{slug:"travel-maps-snap"},"3342063a25e7482c9d06b21995ecad91":{slug:"travel-maps-snap"},b2610c80c07a449a9a474fff1ae37ef7:{slug:"travel-maps-snap"},"2aae797b41c842b8a707223a276e30f2":{slug:"travel-memories-snap"},a4c703d38e634a0d9d02fd23ce60b6ca:{slug:"travel-memories-snap"},ae94cf886de84ea58b8312179507ee00:{slug:"travel-memories-snap"},f4d1542a874a4c908070ce5765666446:{slug:"travel-memories-snap"},"2970acf76d57445c9fb8f461b28e5ce0":{slug:"travel-memories-snap"},d2a4f509087b4edda957385dbbca2cf0:{slug:"travel-memories-snap"},"4e502c09264b4e2084ebe310b7ee91ee":{slug:"travel-memories-snap"},"1bdd05bd011741699fd5b9f36bb25e61":{slug:"travel-memories-snap"},"975911ec93df4da29e1545a5ffcb0024":{slug:"travel-memories-snap"},"6abd457e1a274f8cbdfc3191da1e5d50":{slug:"travel-stamps-snap"},"0fea9fdad6534a08912d8db3e00ac78c":{slug:"travel-stamps-snap"},"74936921f1f84593a7f891b8db987c2c":{slug:"travel-stamps-snap"},"2614185703814032b0eed1d82550c12b":{slug:"travel-stamps-snap"},"426233167a6046f6ab2f1f9544c7b853":{slug:"travel-stamps-snap"},"195ac79fe4a148139c3f9e61379358eb":{slug:"travel-stamps-snap"},"37c9baf352d7425fa2ca3cc813c8f0d0":{slug:"travel-stamps-snap"},"30d74a148ba749a682f13c92c58f0740":{slug:"tropical-beach-escape-snap"},"8daadd75f974406b934eaf7432b986b0":{slug:"tropical-beach-escape-snap"},e725a005154c4441a1279cb58746c51f:{slug:"tropical-beach-escape-snap"},f8af7437b7be49b28e6b0685af41ccbc:{slug:"tropical-beach-escape-snap"},c760cccb6aa948989b0b46ebfbc5dc92:{slug:"tropical-beach-escape-snap"},"50dce96dbacc497c96494222bc322388":{slug:"tropical-beach-escape-snap"},eca711b24293479e8e5d1fcb5e8f503d:{slug:"tropical-beach-escape-snap"},"476320eb0f9e4596a8723411e9e21f50":{slug:"tropical-beach-escape-snap"},"799b700cef5343e7a4609e61208adfa0":{slug:"tropical-beach-escape-snap"},"3ce2ed4b985f413981758727ace88858":{slug:"unfurgettable-kitty-snap"},"6cc7604a12bc4dce895bed38a429327d":{slug:"unfurgettable-kitty-snap"},"5e8c50081b8c48049a0a971093c7583c":{slug:"unfurgettable-kitty-snap"},"7e3fbebb38b34413b9709a4879d5765f":{slug:"unfurgettable-kitty-snap"},be1c357cef7d4437bd6373f502f8e115:{slug:"unfurgettable-kitty-snap"},"41c58cc68e834fc284a7b6abaa83ee26":{slug:"unfurgettable-kitty-snap"},b5f8ba7e09f6462dabf738a3d579d71b:{slug:"unfurgettable-kitty-snap"},eabe87ca17fa4dbe9aad1ae30af3ff95:{slug:"unfurgettable-kitty-snap"},f14e7bc4d5184761ac17d1c1dcf315e1:{slug:"vibrant-memories-snap"},"62307c343e4c4b05871daef3fd391228":{slug:"vibrant-memories-snap"},"969d056621094d8b9bd6688d7053b3f4":{slug:"vibrant-memories-snap"},"1c47503cc5224bdfbf852a14b6bda816":{slug:"vibrant-memories-snap"},"4b57d1b5eb1648c7970ce1c07d3bac30":{slug:"vibrant-memories-snap"},a0ba006405e64ec5bb2e0b401f80dc05:{slug:"vibrant-memories-snap"},"5883719d2c3145d39dda22708f8418bf":{slug:"vibrant-memories-snap"},adcb9f4dd6a04e678cdf4b9c29d73840:{slug:"vintage-birthday-memories-snap"},"2a71b67a08f741e7bc2964721342d4ab":{slug:"vintage-birthday-memories-snap"},"1b01f15b9f204d9d8ce4d5eea42999f4":{slug:"vintage-birthday-memories-snap"},ffe8df5ac9b148eab3809e05fa3cf188:{slug:"vintage-birthday-memories-snap"},"12fafc2b25484950b7e78b9ffb88635e":{slug:"vintage-birthday-memories-snap"},"9d6f2e47f11445ec9d78a8b1051545cf":{slug:"vintage-birthday-memories-snap"},"721183d792d74b2bbc8afc891d952f1b":{slug:"warm-neutrals-snap"},f7cb43c7b43d45f89f691e7ac9c70222:{slug:"warm-neutrals-snap"},da555f35414548d0952182a4c5f45853:{slug:"warm-neutrals-snap"},"2a8fcff4ba9749b2b1d6788b304ad39d":{slug:"warm-neutrals-snap"},"9d129bb82ea945ecbc9165bbb4e0e4ae":{slug:"warm-neutrals-snap"},"9631c2b384d34852ab1f4a9a662c2f7b":{slug:"warm-neutrals-snap"},"3ad2aef8d2da40f390ead0c173c0eda7":{slug:"warm-neutrals-snap"},c0b8158a767b4f938316fe0754797450:{slug:"warm-neutrals-snap"},db2f9fe9e5634588ad75ba84362dfe29:{slug:"warm-neutrals-snap"},"1dad20fd1d3f4193b5d81e172a91b60d":{slug:"warm-neutrals-snap"},"96d07424f0294b719c775775c5b0323e":{slug:"warm-neutrals-snap"},"307ee09a2fec49778b55af9aa059fa07":{slug:"warm-neutrals-snap"},b43ca1d4c8b243d58edacadf2954309b:{slug:"warmest-memories-snap"},e90c2c6e3ed3446d9c66cb184852c84b:{slug:"warmest-memories-snap"},"8a26f5c74f97403bb99d62196d1e820f":{slug:"warmest-memories-snap"},c53231332c65449183a4bf2763723245:{slug:"warmest-memories-snap"},"63796ad0bae549108239596c99c05dfb":{slug:"warmest-memories-snap"},e64a43ca5bcc4eb398d47a593ff2ed1e:{slug:"warmest-memories-snap"},cb25664ade3e4323ac1be71aa8a079b9:{slug:"warmest-memories-snap"},"056b13140e5c4b4c93dd9a40ecb0b7ad":{slug:"warmest-memories-snap"},"0e275cf33b364cc2a1a64bf2907ddda9":{slug:"warmest-memories-snap"},d2775c9ff9834cd799489e22826c7058:{slug:"warmest-memories-snap"},"459ef008fb6b4fe5941f155b67f456b2":{slug:"warmest-memories-snap"},"07af33d784d140fbba6ed12c98f96328":{slug:"warmest-memories-snap"},a27972e66a284859a396dffdad56be8e:{slug:"warmest-memories-snap"},"489c5fe1d1be43688022bfe1d690c4f0":{slug:"warmest-memories-snap"},"9a31d107d8594ad4b5620348f79981b0":{slug:"warmest-memories-snap"},ba8f7ed61fa942b2ad2dcd42002b17d6:{slug:"watercolour-memories-snap"},"51b5d519e2584a96abddffba8b0cab9e":{slug:"watercolour-memories-snap"},bc70b9561df249018fca5e939eb2ea27:{slug:"watercolour-memories-snap"},"68ae5a54fb1145bb973139c5360083c3":{slug:"watercolour-memories-snap"},d7bc96e589fc4da7a78d28a1b9427349:{slug:"watercolour-memories-snap"},ad89d039e79a462698480bf120488277:{slug:"watercolour-memories-snap"},be3fff50897c464db939c45970047bac:{slug:"watercolour-memories-snap"},b8dd915eff514e61bac3f701c9200671:{slug:"watercolour-memories-snap"},cc60fe994dce44bb86401aa1e476e3e4:{slug:"watercolour-memories-snap"},"38d6edc01a94440291f977013d5b8030":{slug:"watercolour-sketchbook-snap"},"84c4f12921aa482fa7ffe79b9e6d8e70":{slug:"watercolour-sketchbook-snap"},"92d400e09999402b9e9c9e8280f38bf7":{slug:"watercolour-sketchbook-snap"},"57ddf3b0eec74cf1b5b3182d9b89b180":{slug:"watercolour-sketchbook-snap"},"88408f55c9184b69a6eb2537e5396767":{slug:"watercolour-sketchbook-snap"},"29e6b392511c4cea9dd8e5289e0db79c":{slug:"watercolour-sketchbook-snap"},"8b9ce75217b1422ab5b10f80f6a41e5c":{slug:"watercolour-sketchbook-snap"},"68bc74e78b5f4f9c86fc541c4341ae41":{slug:"watercolour-sketchbook-snap"},"5b80862a220f45eb8dca442de992a920":{slug:"watercolour-sketchbook-snap"},"3f9b8b5f109a4a12b4f61f73eb4d6a42":{slug:"watercolour-wonders-snap"},d72ba8d2a4d947afa0b65a9bf21183ba:{slug:"watercolour-wonders-snap"},"279c4629693c4e40a7b06d169c2dff1a":{slug:"watercolour-wonders-snap"},"10f03dc8597046b7ab3bd1e5eb26c012":{slug:"watercolour-wonders-snap"},"9936f73121b04f0ea2f7a3f0909d8f1f":{slug:"watercolour-wonders-snap"},"3a6b5cac494b4331b70acdf240e198e5":{slug:"watercolour-wonders-snap"},"6a4dda9cf423454aaa76d1ce9d428201":{slug:"watercolour-wonders-snap"},"263d8ebe7a164cf7836c0a0cab4c2846":{slug:"watercolour-wonders-snap"},"6894ae77c77e4e10acdd2d7f3f6a0323":{slug:"watercolour-wonders-snap"},"7e4750b8e6d448e4a7569f924ef864b4":{slug:"watercolours-snap"},"5773ee709fbc4ac69a152691236f26fe":{slug:"watercolours-snap"},e34fca858430428fb334be2db593aca8:{slug:"watercolours-snap"},"442f567f2ac74e24b3feaea8162355a2":{slug:"watercolours-snap"},"4b8e54728da44395864f564e19f62a6b":{slug:"watercolours-snap"},f2ba6564f03e4ad39f0777cfd8e29f8c:{slug:"watercolours-snap"},"434db3c09b9c4300aded72ef17b5e3de":{slug:"watercolours-snap"},f6bdda441547447390bf064133e33f7a:{slug:"wedding-studio-snap"},eced2baa167d41e5acf22d05456eab5d:{slug:"wedding-studio-snap"},"1599caed753c4819aef2ca700d0d3c1e":{slug:"wedding-studio-snap"},f6ca599b79dc4cec8c06a17e5f4800a1:{slug:"wedding-studio-snap"},"92869623b76f4e988f3f6a84ffb03d41":{slug:"winter-magic-snap"},fa4789453eca4fe1ab02e7de4ccb305b:{slug:"winter-magic-snap"},bf5ccb8fa5194c9c9489b54ea844903e:{slug:"winter-magic-snap"},e58258b385014c83a537e0c6ebafaeec:{slug:"winter-magic-snap"},dc9b262af92e4dd0967fec9f154a639b:{slug:"winter-sparkle-snap"},"2a7eda4c116041df8606829e6b12ab9b":{slug:"winter-sparkle-snap"},a9bade537c6041aa8dbc7e2681c860a4:{slug:"winter-sparkle-snap"},ec8254525a0a400b9a0784046ac3fdf6:{slug:"winter-sparkle-snap"},"0b6ad232fec84a52b2ca76af0e76849a":{slug:"winter-sparkle-snap"},"369f63419dc74abf8e85d1d3a4ead8fc":{slug:"winter-sparkle-snap"},"44ccccf21fae48338812726a1cedf402":{slug:"winter-sparkle-snap"},"3b40d625e58c4baabc681004633eef04":{slug:"year-of-memories-snap"},c93510919b0e428db5b7ac1ff5f14dc6:{slug:"year-of-memories-snap"},"648d24948b31448089223c902e965b29":{slug:"year-of-memories-snap"},"3ab2f34dcb1f45cdac68c915c618136c":{slug:"year-of-memories-snap"},"2cc043baa0b14cf1bfe5bb289ff7336f":{slug:"year-of-memories-snap"},e56ca10dbb0446d19ecdfd212eee44a8:{slug:"year-of-memories-snap"},"7b4168ab0cc3401798b3369ecf4ab86e":{slug:"year-of-memories-snap"},"886998c34573423b89c9b1dbd113a088":{slug:"year-of-memories-snap"},"4b574b66d72a4b309faa45436ea94812":{slug:"year-of-memories-snap"},"2361b16efdc34130985e2ca285ca1e28":{slug:"full-photo-snap"},"3484127928b541dba73edd5fad4891cd":{slug:"full-photo-snap"},cb8eeb2ddb584eaca4fe9167f9d437fc:{slug:"abstract-baby-first-year-snap"},"8103d00120a2474ab1ae49240764e818":{slug:"abstract-baby-first-year-snap"},faf053b2d6f04f918eb6796aca9d49f7:{slug:"abstract-baby-first-year-snap"},dd3aae9251984dc28e03cdb5febd923f:{slug:"abstract-baby-first-year-snap"},e0f2ff6db42f44c0aad53d0d9043b34b:{slug:"abstract-baby-first-year-snap"},"5f26b5fce69c4bc0bbe713fc9095ad06":{slug:"abstract-baby-first-year-snap"},"10dd93b5152b40f8af1a65ed29918aa7":{slug:"abstract-baby-first-year-snap"},"6301e6fd799c47d593782c512bbab25a":{slug:"abstract-baby-first-year-snap"},"9600814f4f2c495e88bdc82f359d113c":{slug:"abstract-baby-first-year-snap"},dfa2728afb1542698b8589e58614f2c8:{slug:"abstract-baby-first-year-snap"},c8dc3463274746659a4d3424c5202b68:{slug:"abstract-baby-first-year-snap"},"9fb2b9f14b014aef859ae82290d7154b":{slug:"studio-snap"},bbff2c6ad182446084234c98e0956fbd:{slug:"studio-snap"},"50a708a74eab4aec988644498125505b":{slug:"studio-snap"},"9275741571da477e854b6eaf445b5092":{slug:"solid-brights-snap"},"3d25f312503248d68c087983899e2cb0":{slug:"solid-brights-snap"},"553ef5ab5fce46eb9f3e9dff25c799bd":{slug:"solid-brights-snap"},"4e7370fe4c50421ca1ec709a9c5a859f":{slug:"warm-neutrals-snap"},"72215f0e711848b3be6d367bf76e8d37":{slug:"warm-neutrals-snap"},"29d84d91a6b24a338ea8350dc35216e1":{slug:"warm-neutrals-snap"},"61f249fcf8d24b20a94cc95ff44035ea":{slug:"earth-tones-snap"},"9249414bfbda4f22b564a397b4af60a3":{slug:"earth-tones-snap"},d3ef8c6b95b54450a0b7d089fb7e7af8:{slug:"earth-tones-snap"},"26bf418458444ec482e67bcb2a9f7a70":{slug:"earth-tones-snap"},"984fa32d72a8434e893aa34596d6b20b":{slug:"earth-tones-snap"},e77d46f7170640fbbb1b484e84dbf3e8:{slug:"earth-tones-snap"},f7fbae13820442e7b37b5f8f7f801d0b:{slug:"elegant-florals-snap"},"08bbf8ed91e64be4b14c1b3c3a70483f":{slug:"elegant-florals-snap"},"3b8fc321fba045ffbff6b9bd57f0c24f":{slug:"elegant-florals-snap"},"490a1e39652a4bc8a05c157d40399f1d":{slug:"elegant-florals-snap"},"54d78ec044c74000923715f4e3dab6c3":{slug:"wedding-studio-snap"},"6b4efb673b15435192ea527424d1fb04":{slug:"autumn-snapshots-snap"},"049a8a202803497ea2bed463b7e22e53":{slug:"autumn-snapshots-snap"},e51c9b48da8b4957b9b00b69e3e9fe79:{slug:"autumn-snapshots-snap"},a96750f13f4e44508da0d4f2dad973e6:{slug:"watercolour-memories-snap"},d2a1a3b4aa1f495485f6c3dbb1622290:{slug:"fun-dots-snap"},dc517a6136a54cc4b74079d9f9cebecc:{slug:"album-snap"},"1abb681f79e74c039f15dacd55e3df2e":{slug:"studio-multi-snap"},"73556aed3bc94607ab3e35fc1f23325b":{slug:"studio-multi-snap"},"3d795737b4034767a62b7ef0498ca5f1":{slug:"full-and-multi-square-photo-snap"},"10af05aa75954df881410ebe984ecf20":{slug:"full-and-multi-square-photo-snap"},b1501be3834b4f9da4210ab93f6b05ca:{slug:"natural-blues-snap"},"4f743a4405ce4d6987e6fc36c4186ecd":{slug:"natural-blues-snap"},e4692c768a0b4a19ac2e764485a7d58c:{slug:"bold-type-snap"},"9e63e129dbe445899039f6b1b3719b9c":{slug:"bold-type-snap"},"444c0ce0ec864873a85bf6bb169b20b4":{slug:"dip-dye-snap"},bf173881ff4e4cd3bf0369b71def2972:{slug:"watercolours-snap"},"0b89f485fb8d4d439064462e7014cab8":{slug:"watercolours-snap"},"16795a9e6b604af69870c1cb93b3823d":{slug:"watercolours-snap"},"50e40a1e87cf40008647c4538d691490":{slug:"chalkboard-snap"},"3f83b6c15ab942169b7553789cfa7613":{slug:"geometric-lines-snap"},"864cad52b12d44e5a132ae22aa883295":{slug:"botanicals-snap"},de044e657baa432bb95414ff68b83e3b:{slug:"dad-plaid-bundle-snap"},fd433811ad42497fbd55428a8960df95:{slug:"dad-plaid-bundle-snap"},"88292dad113749a4a3c1f497dd06c53a":{slug:"dad-plaid-bundle-snap"},"9fd80928dd9f42c49b17c7511b8e3adc":{slug:"dad-plaid-bundle-snap"},d8c1ad9498a44e229ed953e071875197:{slug:"dad-plaid-bundle-snap"},"453e7ba0b94c4481be3ec828e30e6a6b":{slug:"dad-plaid-bundle-snap"},e8e06e628d684fce89d959b0e394c529:{slug:"dad-plaid-bundle-snap"},"2f39555d37ad4bbbbd3bbcdbb9e1561e":{slug:"dad-plaid-bundle-snap"},b4e0b0d96a1143e587e67f4acdd97e0e:{slug:"dad-plaid-bundle-snap"},ea5ea3867e664913890e6493fe679656:{slug:"dad-plaid-bundle-snap"},"72fa41e35b52419795bc0513e5087c29":{slug:"dad-plaid-bundle-snap"},d016f03abc7a45d98ac2096cdf98209d:{slug:"dad-plaid-bundle-snap"},b15e3fad76e8410b8672d7a8f1d65f4e:{slug:"dad-plaid-bundle-snap"},"0861f6069b3b4e9eb9a5b9f8641bc926":{slug:"dad-plaid-bundle-snap"},"68563c86c7aa4432bda56849e5d1ee38":{slug:"dad-plaid-bundle-snap"},"54dc9817040c47638eaaf32731a717c5":{slug:"dad-plaid-bundle-snap"},"71c6b2ece3694e6885d6606f9c2a2457":{slug:"dad-plaid-bundle-snap"},fc2b66b6be52435499797fdc58f2b02e:{slug:"dad-plaid-bundle-snap"},"2e02ea585c4c4c3c8e828a4e83609555":{slug:"classic-fathers-snap"},"049f682c14694171951d8c2f5997507a":{slug:"classic-fathers-snap"},"60b953e71ee5471b85018d96c1a2c6c1":{slug:"bold-shapes-snap"},b0c65fe03f6e4cb6bcce1322a98bb005:{slug:"bold-shapes-snap"},bf5eed33be674ac8bc2c198d22a9f28d:{slug:"vintage-birthday-memories-snap"},acc04f78b49b4cd59554d0ebed9aab86:{slug:"vintage-birthday-memories-snap"},d714af25afcf4dbd9fc41c36ad717dcf:{slug:"i-love-my-dog-snap"},ae69185934d74c97a629a4b29411b2bd:{slug:"i-love-my-dog-snap"},"388a348eead64e54876f1f224a6c1350":{slug:"childs-yearbook-snap"},bc8db2c76eaa477e80e60191575074e4:{slug:"childs-yearbook-snap"},"6a5446fd20bf4ac1a64093ff6a35a77a":{slug:"childs-yearbook-snap"},c3d4d5102bed48e087a4ea9ffafbd6a0:{slug:"childs-yearbook-snap"},"50dfbbc5a6f54c25a8816f3f4bb08291":{slug:"childs-yearbook-snap"},"8f4e46b623fd4c479d394c30df30d52c":{slug:"childs-yearbook-snap"},"8749dffd6d3f4c78a0159c76d58d1c2a":{slug:"childs-yearbook-snap"},"5b669bcacb4f434ea14ab2f5617499db":{slug:"childs-yearbook-snap"},"8dd877d31f154d2ca45f94db544e1b98":{slug:"childs-yearbook-snap"},"98dda1c349df437f9ddb9114429a110d":{slug:"childs-yearbook-snap"},"5d17da12b1384744989e87f763bb5595":{slug:"childs-yearbook-snap"},cec9916f63ec4667ba50f7f33e29e92f:{slug:"childs-yearbook-snap"},"92724d008587433dbdfcde42444cccf9":{slug:"childs-yearbook-snap"},"091b9048f7e24c0bbaba0ad340a54e6c":{slug:"childs-yearbook-snap"},"78a79703ddc74f7fa16c6b48594b7a19":{slug:"childs-yearbook-snap"},"37a0472bd3174640b980e3e82f6334d5":{slug:"childs-yearbook-snap"},f058d2be81f2491fb60fa8e8a18c412e:{slug:"childs-yearbook-snap"},"4498e1a4608545f1afbea6644bcc60d2":{slug:"childs-yearbook-snap"},d4da8dfadd5046c0bd2171a5fe06440a:{slug:"family-yearbook-snap"},"73492b36da6e449c97590522f0416acd":{slug:"family-yearbook-snap"},"519bb1dba97742f180a50a301a4b1647":{slug:"family-yearbook-snap"},"3c6e610f21f443e7b9e8c2d01ecb684a":{slug:"family-yearbook-snap"},"732e1da4dd044aebbc10dad95b60a226":{slug:"family-yearbook-snap"},b0dda6882f9c441ca3720d27be71966a:{slug:"family-yearbook-snap"},"74e18ca1f1b6428b83f0fd80ba480ee4":{slug:"family-yearbook-snap"},dd32c59aa23b4fd49e46b791e5487d82:{slug:"family-yearbook-snap"},bebbd99be5174492be0ff19a368107aa:{slug:"family-yearbook-snap"},"277faabad7644dbb9a7578be3f4d1f50":{slug:"family-yearbook-snap"},ac5032a8e4f646959afd73490ee37e9e:{slug:"family-yearbook-snap"},"4fb5d69f0b0f473fb7944723a983a21a":{slug:"family-yearbook-snap"},"8d478aa179c549a88c0de8d04da60f41":{slug:"family-yearbook-snap"},eb90e6e412b34a008ad33c81c724b6ca:{slug:"reflections-on-our-year-snap"},"3575dd36f9194967a9baa355824cc2a4":{slug:"reflections-on-our-year-snap"},"0cf2f84837b844c08119d081f60079d6":{slug:"reflections-on-our-year-snap"},"8b18987dba79493d954b7ec8765df1da":{slug:"reflections-on-our-year-snap"},"3014f450901249028e41fcde199f2544":{slug:"reflections-on-our-year-snap"},"5198bf9347ae4bb0b223eb5b18a1a415":{slug:"reflections-on-our-year-snap"},bb77844cba3345649e01428ffcc7fd37:{slug:"reflections-on-our-year-snap"},"1ea53df2a0124bd0932789092cde9b7c":{slug:"family-chalkboard-snap"},"7a7d1b8a649c42dbbd7ebb10d48275bd":{slug:"everyday-happiness-snap"},f4c2bb54e87c4a2da0495e48b853e81a:{slug:"everyday-happiness-snap"},"94e1c2a7c02f494c9c1c1f163d5b6a92":{slug:"warmest-memories-snap"},e403520ab62a43b58a140ae3638335fa:{slug:"warmest-memories-snap"},b19369506a9241b5b26188f00dd9f28e:{slug:"warmest-memories-snap"},d3cab06771a3490b818ab757da56a9c2:{slug:"warmest-memories-snap"},"4163c8cb69d24b2f86a16a5a00b3091f":{slug:"warmest-memories-snap"},"21ceb156d4fd443486056c8932cdd29b":{slug:"warmest-memories-snap"},"6464d0171dd942688941c510851ba303":{slug:"warmest-memories-snap"},"5c952997147946a697c276daa2352e81":{slug:"warmest-memories-snap"},"0001573ca422493fb34691ea2480861a":{slug:"warmest-memories-snap"},"8ad6f5d11eb143a994810ed15ec0a771":{slug:"warmest-memories-snap"},"14209eef7525461ab32b9296d551af55":{slug:"warmest-memories-snap"},af3a151caae14ac1b43496a599a98ade:{slug:"warmest-memories-snap"},"3e55551625c24b93a33775a80752dfaa":{slug:"warmest-memories-snap"},d53c83faaa044668af97f0e58075903c:{slug:"warmest-memories-snap"},d3eb260dbc98498a93dcfd8f17ae9c1c:{slug:"warmest-memories-snap"},c45d1aaad4344f7aaefbb746713fceb2:{slug:"lets-celebrate-snap"},"64e050bb75434a03bca85df1fee7326e":{slug:"lets-celebrate-snap"},"6eee45a5503a4e60affb089f9d137cd4":{slug:"lets-celebrate-snap"},"57568b21b92d4f35a9446200dfe8a17e":{slug:"lets-celebrate-snap"},"176ac5b101564c37a7f88fe86604f96b":{slug:"lets-celebrate-snap"},"3b30b37107294178bbf15a1c4f4130f6":{slug:"lets-celebrate-snap"},ef4e92cb74654cd084c208b823bca25d:{slug:"lets-celebrate-snap"},"0acf0f6064b348cd9887cb6d266948bf":{slug:"lets-celebrate-snap"},e1ddd26e761343bab894751e178cf5a9:{slug:"lets-celebrate-snap"},"46a03a19a5784e5cb31fed2c73dae555":{slug:"lets-celebrate-snap"},d3637915d72a48acb070e210fae977f2:{slug:"lets-celebrate-snap"},ab05447120d14479b8edbc4563562bc9:{slug:"milestone-memories-snap"},"94fb0015dee0406d8d78eb6b31689d65":{slug:"milestone-memories-snap"},"32bc013356834604ac8be4d28bc32dec":{slug:"milestone-memories-snap"},f70bd3c0578d4df99a38934a4ac7dec6:{slug:"milestone-memories-snap"},f10d33f85aa9422f980a3d3fabb812f2:{slug:"milestone-memories-snap"},bdeeafa7f0c4470b8b7736f307a5bb67:{slug:"milestone-memories-snap"},c3b9f88c92cd4a399fe011dec5a75b63:{slug:"milestone-memories-snap"},bb92bf2764c24b908ba7dc3ff43f9d62:{slug:"milestone-memories-snap"},ba04430a65f649428943d3be2eeb6192:{slug:"milestone-memories-snap"},a43fe7d4e7334ed9a8da5647c170676d:{slug:"milestone-memories-snap"},b4eafeead1874ada8839f1090eaa51a6:{slug:"milestone-memories-snap"},"4664254488564fe69efaab16e9f5a5b3":{slug:"fresh-cookbook-snap"},"789791a92db242d4aa363d0eb87ec2d3":{slug:"fresh-cookbook-snap"},"7afec55a533d4bb3805dcff32f20fd2e":{slug:"tropical-beach-escape-snap"},e2fcef4caa434e41b4e95fc0c3d48614:{slug:"tropical-beach-escape-snap"},ab5bdb9afa5f413cb69f44f6c66f6107:{slug:"love-lives-here-snap"},"992cfde9d662452a85251727eb0352af":{slug:"love-lives-here-snap"},f7b66e53f2b240ecb94925ee9efd1c74:{slug:"i-love-my-cat-snap"},c9ff30f54eca4b29b21ca470950b1d05:{slug:"i-love-my-cat-snap"},"942f72c77fa34aa8bd13ab578ca6fe33":{slug:"watercolour-sketchbook-snap"},"2317353266834774931aa785d4e05b12":{slug:"modern-rustic-snap"},c3eb76f2985d423d96e39a6ec57c918a:{slug:"modern-rustic-snap"},cb02fadb93d94376aec64fd8a9720326:{slug:"watercolour-wonders-snap"},ebb48d8ea163495aaa9e3d9304475dc6:{slug:"watercolour-wonders-snap"},b402922d282a444082f23cdc390b5e78:{slug:"rustic-family-snapshots-snap"},"211f6e4d9e464ba2a0af3c13a20ce6db":{slug:"rustic-family-snapshots-snap"},"2e72bb7784764ec287742570c6f06b3e":{slug:"family-memories-snap"},"85b49b5530b140dfad6d2d00addbe4d5":{slug:"family-memories-snap"},"0c7adbb49a4e4699b4e29a106aede17e":{slug:"family-memories-snap"},"5a8ae4bb758e4acdb71914c4a18239d9":{slug:"family-farmhouse-snap"},"3d7dc8102a0b417a8fd870b3b53f4590":{slug:"family-farmhouse-snap"},"997e4ef4c9ab4b3fb15b9294c4cc9903":{slug:"family-farmhouse-snap"},"50361bc54660463c8afc546e4e7ba72c":{slug:"family-farmhouse-snap"},"28efd73d75804430b3e7a9e70214af16":{slug:"family-farmhouse-snap"},"055c0346171142d0a509dbb3af5fede2":{slug:"family-farmhouse-snap"},"9ac6f2e7ea914cd19e63098b53bd14f7":{slug:"family-farmhouse-snap"},"9a25d842afdb4190821a173509e083db":{slug:"family-farmhouse-snap"},d4063fd502264de78939c0b2c7c5ce54:{slug:"sketched-botanicals-snap"},d28f41d697844c37bce62900ad3584b3:{slug:"sketched-botanicals-snap"},"264b3254cfb94763a85682c9d5d30b66":{slug:"magical-memories-snap"},"5f6e49144b18440cbfc98c17347c86d7":{slug:"magical-memories-snap"},"6c055d64606f45a58ae0aec52ea0220a":{slug:"magical-memories-snap"},dfe3425e16b348a6ae84a2924dfc3ae8:{slug:"magical-memories-snap"},"56658baebc744c5ea4d567871ad7347a":{slug:"magical-memories-snap"},"6e6520727c6d47c3abbaff96de9dba2d":{slug:"magical-memories-snap"},"58a64152487f4c96973cf50322bf64c6":{slug:"magical-memories-snap"},"4ad10fbb02494fc6b261e35a548b82e0":{slug:"magical-memories-snap"},"2caf5f95f446468b8521ccfce6b899d4":{slug:"magical-memories-snap"},"39cee881a7db4d31b3c825143c06ca22":{slug:"magical-memories-snap"},"922f0885706b45f6b099765dd5b21011":{slug:"magical-memories-snap"},"6ee70ed6f9494728a8944fd5ea567d53":{slug:"nautical-summer-snap"},"4c3a9279f46e4283b16214278473dd75":{slug:"nautical-summer-snap"},"949b49fee4f1462d8947dd03380f6c34":{slug:"nautical-summer-snap"},"8200c9f4ed694614822689c942d34b85":{slug:"travel-memories-snap"},"309042d2268243e7961044be8f8acd76":{slug:"travel-memories-snap"},"4354692d0cfb4c68ada770d08f5fced6":{slug:"travel-memories-snap"},"68ce90ad9a0e4420a36bd2d8e5648cee":{slug:"travel-memories-snap"},"270cc4ff176c460e9fa212679c1a586c":{slug:"travel-memories-snap"},f51a41ae43864148b115a4bc3a38f5b3:{slug:"travel-memories-snap"},"7aa2fd81e86e4be897feb718db18b828":{slug:"destination-stamps-snap"},"6ad7bed5e0a247c1a0aae329a76a0eee":{slug:"destination-stamps-snap"},"16f4a833c81a43709a13ae25da268f91":{slug:"contemporary-travel-snap"},f093b57c88354e7ba81a9330876c79ca:{slug:"contemporary-travel-snap"},a3061dd2d87c4504877bb7f5c99b1211:{slug:"contemporary-travel-snap"},a3dbaa569d6a41fa8e8e1f0344f2c384:{slug:"contemporary-travel-snap"},"7f4159644c3b490da42139e5d3e16c6c":{slug:"contemporary-travel-snap"},"704cc06d63354299a399bbffc0ac0904":{slug:"art-of-travel-snap"},"6c1b118fb5b74e7986453a376f2410cf":{slug:"art-of-travel-snap"},bb40e1dea2324e8a9a277bfb761e41ba:{slug:"roadtrip-snap"},d1a2b6748a994d15ae1deebaf8e95a6c:{slug:"roadtrip-snap"},"2bd1755f90e349a89c3e7d312ae377d9":{slug:"our-wedding-guests-snap"},f5b16a9ec77e4082909e9bb19ce90134:{slug:"our-wedding-guests-snap"},"6de70f303e4146408e124478d2457454":{slug:"our-wedding-guests-snap"},b311e9e0bbff45f2bf460e6b65ff5b90:{slug:"our-wedding-guests-snap"},"7718e93835974fda98b47dced031572a":{slug:"our-wedding-guests-snap"},c29fa2c5cdc4488193c8e4a35d248941:{slug:"our-wedding-guests-snap"},f11691e23d3d433b904e103f1c0bdc61:{slug:"our-wedding-guests-snap"},"50b3408d7c974802afddc7b5e77f9e49":{slug:"our-wedding-guests-snap"},e25e3bbfac76452fbf1b2e65e1847faa:{slug:"our-wedding-guests-snap"},a24050f001074214a6d3639bdd68e5bb:{slug:"our-wedding-guests-snap"},c462bcc146af4aa280b2dcb15df78dd8:{slug:"contemporary-wedding-snap"},"7b2a918f04e74e83acdea4cc56c655ce":{slug:"contemporary-wedding-snap"},"740a8bc48f094aa2ad4ece81bc1fe2d1":{slug:"rustic-chic-snap"},"70e6a6b844ba4b4c82b38ae04a7d200e":{slug:"rustic-chic-snap"},"4881c1254dc2446d90b91a7f95f4913b":{slug:"love-story-snap"},"734ac317449b45af82c187cb7ea87fd4":{slug:"all-about-love-snap"},"3f233ff58a8d4a3e8846b220ad7c14c3":{slug:"all-about-love-snap"},a8e08f61634e4b3295ab05383013acee:{slug:"all-about-love-snap"},"360f3c12782342c8be7dbd0b1c9e859e":{slug:"all-about-love-snap"},edcde48e72e34d9bab4abda4cdc3cbde:{slug:"all-about-love-snap"},ac9ce694b03c4770b5e259031a779fb4:{slug:"all-about-love-snap"},"0e4106f2fd0944b6a5759971c5adc500":{slug:"all-about-love-snap"},fe020b4a2deb47a4bdf23222d4d1fbe0:{slug:"all-about-love-snap"},de534e9d60c0492b91144c33921f7a37:{slug:"hello-baby-boy-snap"},c74154e2e87e4a82b1e5144c2ab51a89:{slug:"hello-baby-boy-snap"},cfb5b1c99a6f4afa9a02312f347a637a:{slug:"baby-girl-first-year-snap"},"1537bbe07a1e4bc390ad7a23e219c5f8":{slug:"baby-girl-first-year-snap"},"060374090b174ac9aad39a93c29954fc":{slug:"baby-boy-first-year-snap"},"07a27b25ac0c41c885a5bf553cb18393":{slug:"baby-boy-first-year-snap"},"2033031de33641a3a6053e26cf2c9f64":{slug:"over-the-moon-snap"},b306b97eb22a4e71a6fc5ab24cbde99a:{slug:"over-the-moon-snap"},ac476a66b13e4367b1bfa224a178fec4:{slug:"over-the-moon-snap"},af88db3bf6654909bb029f0809526ca2:{slug:"over-the-moon-snap"},d32fc0ad6048425e979dc0a2838c89a2:{slug:"over-the-moon-snap"},"4d98566f39a145d28994c3aafd268ff8":{slug:"golden-graduation-snap"},"345c4ac772b4453785e8dcf0b459592f":{slug:"golden-graduation-snap"},"6d0d1baeff274901997187c3c30a5492":{slug:"graduation-memories-snap"},"5eae0f9cc3fb47cfbb04d9f784cb422a":{slug:"graduation-memories-snap"},"7c8db06d650745c6903262fbce2fe77a":{slug:"graduation-memories-snap"},"4d9ac25de60844c5b04d5d3059ff2206":{slug:"graduation-memories-snap"},"413572714c484143b865f8092abd726a":{slug:"modern-graduation-snap"},"217d6bcef9fe4bbbbb45c168a37415a4":{slug:"ten-things-i-love-snap"},"03b4052f13734f06a7d3c7d2cc5fef29":{slug:"ten-things-i-love-snap"},"61be711b746b4c6793ebe1f060691243":{slug:"hearts-for-mum-snap"},"720b3f45d63549d6adb553bac87da9d1":{slug:"hearts-for-mum-snap"},"90e1610aff8d4d4cb501778fce2d4c12":{slug:"hearts-for-mum-snap"},f0083ea595384731bc2d1f1c087365f1:{slug:"hearts-for-mum-snap"},"010ad21286a1408ba856c44e00d7f751":{slug:"hearts-for-mum-snap"},dbb245094a37405bb68cdb15cdb93eab:{slug:"hearts-for-mum-snap"},"8ba8246fd3004c4f9245e03515b8ebd1":{slug:"hearts-for-mum-snap"},"3b78818fa3ea40118b94aa740abeaceb":{slug:"hearts-for-mum-snap"},a14ada32d6194f5d8536c394ab0f77f1:{slug:"hearts-for-mum-snap"},"60904c1320a84aec9d13729d4cec0838":{slug:"hearts-for-mum-snap"},"6c53bd9b18c54f29b8acd0bbed32ed26":{slug:"celebrating-grandma-snap"},"48e7480126b249a0b28d9ec192d7f6f9":{slug:"organic-shapes-snap"},"1c1e1823209a4d5d9facbe8f0ed8e7d4":{slug:"organic-shapes-snap"},"4ebaf63f1aeb47a89c15a4d6c6ead408":{slug:"organic-shapes-snap"},"5a408c0bc14c49dba8f3d538d9411b45":{slug:"organic-shapes-snap"},c8bfad2c53fc4d9091d7c858b24075cf:{slug:"organic-shapes-snap"},"06176cb4da334c4d82160957681cd11e":{slug:"organic-shapes-snap"},cac8566aee4a4fbcb362d609bc56334a:{slug:"studio-light-snap"},"5771ff862c394c9a8fcf4237a267651c":{slug:"studio-dark-snap"},"990e71b3b45d4baaa7236328c64c8364":{slug:"our-family-snap"},"2c5700f2b32c49d186b85e57449cdda6":{slug:"favourite-things-snap"},e276151076d94d279d0d0b3608e3fba7:{slug:"my-family-snap"},cbec6602c5474f8fafc1980fb068db2a:{slug:"graphic-love-snap"},c11db86d4af6468c82c03e63ccee03d2:{slug:"graphic-love-snap"},"01af1dbfd31448dd8afdb956c5369be3":{slug:"graphic-love-snap"},ac083e4b0ca44af9bc694afd0fdec9b1:{slug:"graphic-love-snap"},"9914c7e7a6974019af2f28841b271be5":{slug:"graphic-love-snap"},b6d4b71df3f24f24bb5f7f30ab97e593:{slug:"graphic-love-snap"},f8b67e571005409791ff3faf64aa4772:{slug:"graphic-love-snap"},b82386a8a64d41b0be57bccbf667121f:{slug:"graphic-love-snap"},d3ba2657e3524edcaac5cb4d000632c6:{slug:"graphic-love-snap"},b3aed2593b944db78bf5e72465d31b18:{slug:"graphic-love-snap"},cf600f86adcb494d9fbba02799aed443:{slug:"graphic-love-snap"},f39284122e594e46ae7a4fda586567ac:{slug:"graphic-love-snap"},"68a5490447e9432ca89d3e95d363e42c":{slug:"graphic-love-snap"},"5ca12c9b2a21496391b8265121361ae1":{slug:"graphic-love-snap"},"117aa84d8f464ee6933430cef5170566":{slug:"graphic-love-snap"},fc8152aed8414e43b511dabd3775dc3b:{slug:"graphic-love-snap"},ae5cf32acc7544269a0f6a866c484d17:{slug:"graphic-love-snap"},"5c293ff9fe6148ed836680b9dcf5eabd":{slug:"graphic-love-snap"},b3859e5367314872a95d088e8557aa98:{slug:"graphic-love-snap"}},Ce=["4.5x4","5x7","6x6","6x8","7x5","8x8","8x11","10x10","11x8","11x14","12x12"],je=["sc","hc","pl"],Ne=["sp","sl","dl","hg","s"],Re=["low","medium","high"],Pe=["best","most","all"],$e=["none","few","lots"],De=["none","few","lots"],ia={state:"timeout",slug:"timeout",progress:100,message:"Design timed out"},oa={state:"cancelled",slug:"cancelled",progress:100,message:"Design canceled"},ss=["galleon","snapfish"],ts=["inside","cover"];function qe(a,e){return Object.keys(e).map(s=>{typeof a[s]=="object"&&typeof e[s]=="object"?qe(a[s],e[s]):a[s]=e[s]}),a}function ns(a){return a.replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase()}function Qe(a){return Object.keys(a).map(e=>{let s=ns(e);s.includes("_")&&(a[s]=a[e],delete a[e]),typeof a[s]=="object"&&(a[s]=Qe(a[s]))}),a}function rs(a){return a.replace(/([-_][a-z])/g,e=>e.toUpperCase().replace("-","").replace("_",""))}function ea(a){return Object.keys(a).map(e=>{let s=rs(e);s!==e&&(a[s]=a[e],delete a[e]),typeof a[s]=="object"&&(a[s]=ea(a[s]))}),a}async function w(a){try{return await a()}catch(e){return Promise.reject(e)}}function K(a){for(let e of Object.getOwnPropertyNames(Object.getPrototypeOf(a)))typeof a[e]=="function"&&e!=="constructor"&&(a[e]=a[e].bind(a))}function Z(a){return JSON.parse(JSON.stringify(a))}function ds(a){for(let e in U)if(U[e].slug===a)return e;return a}var v;(function(a){a.assertEqual=t=>t;function e(t){}a.assertIs=e;function s(t){throw new Error}a.assertNever=s,a.arrayToEnum=t=>{let r={};for(let c of t)r[c]=c;return r},a.getValidEnumValues=t=>{let r=a.objectKeys(t).filter(l=>typeof t[t[l]]!="number"),c={};for(let l of r)c[l]=t[l];return a.objectValues(c)},a.objectValues=t=>a.objectKeys(t).map(function(r){return t[r]}),a.objectKeys=typeof Object.keys=="function"?t=>Object.keys(t):t=>{let r=[];for(let c in t)Object.prototype.hasOwnProperty.call(t,c)&&r.push(c);return r},a.find=(t,r)=>{for(let c of t)if(r(c))return c},a.isInteger=typeof Number.isInteger=="function"?t=>Number.isInteger(t):t=>typeof t=="number"&&isFinite(t)&&Math.floor(t)===t;function n(t,r=" | "){return t.map(c=>typeof c=="string"?`'${c}'`:c).join(r)}a.joinValues=n,a.jsonStringifyReplacer=(t,r)=>typeof r=="bigint"?r.toString():r})(v||(v={}));var Be;(function(a){a.mergeShapes=(e,s)=>({...e,...s})})(Be||(Be={}));var u=v.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),N=a=>{switch(typeof a){case"undefined":return u.undefined;case"string":return u.string;case"number":return isNaN(a)?u.nan:u.number;case"boolean":return u.boolean;case"function":return u.function;case"bigint":return u.bigint;case"symbol":return u.symbol;case"object":return Array.isArray(a)?u.array:a===null?u.null:a.then&&typeof a.then=="function"&&a.catch&&typeof a.catch=="function"?u.promise:typeof Map<"u"&&a instanceof Map?u.map:typeof Set<"u"&&a instanceof Set?u.set:typeof Date<"u"&&a instanceof Date?u.date:u.object;default:return u.unknown}},i=v.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),cs=a=>JSON.stringify(a,null,2).replace(/"([^"]+)":/g,"$1:"),A=class fa extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let s=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,s):this.__proto__=s,this.name="ZodError",this.issues=e}format(e){let s=e||function(r){return r.message},n={_errors:[]},t=r=>{for(let c of r.issues)if(c.code==="invalid_union")c.unionErrors.map(t);else if(c.code==="invalid_return_type")t(c.returnTypeError);else if(c.code==="invalid_arguments")t(c.argumentsError);else if(c.path.length===0)n._errors.push(s(c));else{let l=n,b=0;for(;b<c.path.length;){let f=c.path[b];b===c.path.length-1?(l[f]=l[f]||{_errors:[]},l[f]._errors.push(s(c))):l[f]=l[f]||{_errors:[]},l=l[f],b++}}};return t(this),n}static assert(e){if(!(e instanceof fa))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,v.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=s=>s.message){let s={},n=[];for(let t of this.issues)t.path.length>0?(s[t.path[0]]=s[t.path[0]]||[],s[t.path[0]].push(e(t))):n.push(e(t));return{formErrors:n,fieldErrors:s}}get formErrors(){return this.flatten()}};A.create=a=>new A(a);var F=(a,e)=>{let s;switch(a.code){case i.invalid_type:a.received===u.undefined?s="Required":s=`Expected ${a.expected}, received ${a.received}`;break;case i.invalid_literal:s=`Invalid literal value, expected ${JSON.stringify(a.expected,v.jsonStringifyReplacer)}`;break;case i.unrecognized_keys:s=`Unrecognized key(s) in object: ${v.joinValues(a.keys,", ")}`;break;case i.invalid_union:s="Invalid input";break;case i.invalid_union_discriminator:s=`Invalid discriminator value. Expected ${v.joinValues(a.options)}`;break;case i.invalid_enum_value:s=`Invalid enum value. Expected ${v.joinValues(a.options)}, received '${a.received}'`;break;case i.invalid_arguments:s="Invalid function arguments";break;case i.invalid_return_type:s="Invalid function return type";break;case i.invalid_date:s="Invalid date";break;case i.invalid_string:typeof a.validation=="object"?"includes"in a.validation?(s=`Invalid input: must include "${a.validation.includes}"`,typeof a.validation.position=="number"&&(s=`${s} at one or more positions greater than or equal to ${a.validation.position}`)):"startsWith"in a.validation?s=`Invalid input: must start with "${a.validation.startsWith}"`:"endsWith"in a.validation?s=`Invalid input: must end with "${a.validation.endsWith}"`:v.assertNever(a.validation):a.validation!=="regex"?s=`Invalid ${a.validation}`:s="Invalid";break;case i.too_small:a.type==="array"?s=`Array must contain ${a.exact?"exactly":a.inclusive?"at least":"more than"} ${a.minimum} element(s)`:a.type==="string"?s=`String must contain ${a.exact?"exactly":a.inclusive?"at least":"over"} ${a.minimum} character(s)`:a.type==="number"?s=`Number must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${a.minimum}`:a.type==="date"?s=`Date must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(a.minimum))}`:s="Invalid input";break;case i.too_big:a.type==="array"?s=`Array must contain ${a.exact?"exactly":a.inclusive?"at most":"less than"} ${a.maximum} element(s)`:a.type==="string"?s=`String must contain ${a.exact?"exactly":a.inclusive?"at most":"under"} ${a.maximum} character(s)`:a.type==="number"?s=`Number must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:a.type==="bigint"?s=`BigInt must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:a.type==="date"?s=`Date must be ${a.exact?"exactly":a.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(a.maximum))}`:s="Invalid input";break;case i.custom:s="Invalid input";break;case i.invalid_intersection_types:s="Intersection results could not be merged";break;case i.not_multiple_of:s=`Number must be a multiple of ${a.multipleOf}`;break;case i.not_finite:s="Number must be finite";break;default:s=e.defaultError,v.assertNever(a)}return{message:s}},ua=F;function ls(a){ua=a}function ke(){return ua}var xe=a=>{let{data:e,path:s,errorMaps:n,issueData:t}=a,r=[...s,...t.path||[]],c={...t,path:r};if(t.message!==void 0)return{...t,path:r,message:t.message};let l="",b=n.filter(f=>!!f).slice().reverse();for(let f of b)l=f(c,{data:e,defaultError:l}).message;return{...t,path:r,message:l}},is=[];function o(a,e){let s=ke(),n=xe({issueData:e,data:a.data,path:a.path,errorMaps:[a.common.contextualErrorMap,a.schemaErrorMap,s,s===F?void 0:F].filter(t=>!!t)});a.common.issues.push(n)}var x=class ba{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,s){let n=[];for(let t of s){if(t.status==="aborted")return m;t.status==="dirty"&&e.dirty(),n.push(t.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,s){let n=[];for(let t of s){let r=await t.key,c=await t.value;n.push({key:r,value:c})}return ba.mergeObjectSync(e,n)}static mergeObjectSync(e,s){let n={};for(let t of s){let{key:r,value:c}=t;if(r.status==="aborted"||c.status==="aborted")return m;r.status==="dirty"&&e.dirty(),c.status==="dirty"&&e.dirty(),r.value!=="__proto__"&&(typeof c.value<"u"||t.alwaysSet)&&(n[r.value]=c.value)}return{status:e.value,value:n}}},m=Object.freeze({status:"aborted"}),B=a=>({status:"dirty",value:a}),k=a=>({status:"valid",value:a}),Ue=a=>a.status==="aborted",Fe=a=>a.status==="dirty",L=a=>a.status==="valid",ae=a=>typeof Promise<"u"&&a instanceof Promise;function Se(a,e,s,n){if(s==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?a!==e||!n:!e.has(a))throw new TypeError("Cannot read private member from an object whose class did not declare it");return s==="m"?n:s==="a"?n.call(a):n?n.value:e.get(a)}function ga(a,e,s,n,t){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!t)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?a!==e||!t:!e.has(a))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?t.call(a,s):t?t.value=s:e.set(a,s),s}var g;(function(a){a.errToObj=e=>typeof e=="string"?{message:e}:e||{},a.toString=e=>typeof e=="string"?e:e?.message})(g||(g={}));var Y,G,C=class{constructor(a,e,s,n){this._cachedPath=[],this.parent=a,this.data=e,this._path=s,this._key=n}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},ra=(a,e)=>{if(L(e))return{success:!0,data:e.value};if(!a.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let s=new A(a.common.issues);return this._error=s,this._error}}};function h(a){if(!a)return{};let{errorMap:e,invalid_type_error:s,required_error:n,description:t}=a;if(e&&(s||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:t}:{errorMap:(c,l)=>{var b,f;let{message:_}=a;return c.code==="invalid_enum_value"?{message:_??l.defaultError}:typeof l.data>"u"?{message:(b=_??n)!==null&&b!==void 0?b:l.defaultError}:c.code!=="invalid_type"?{message:l.defaultError}:{message:(f=_??s)!==null&&f!==void 0?f:l.defaultError}},description:t}}var y=class{get description(){return this._def.description}_getType(a){return N(a.data)}_getOrReturnCtx(a,e){return e||{common:a.parent.common,data:a.data,parsedType:N(a.data),schemaErrorMap:this._def.errorMap,path:a.path,parent:a.parent}}_processInputParams(a){return{status:new x,ctx:{common:a.parent.common,data:a.data,parsedType:N(a.data),schemaErrorMap:this._def.errorMap,path:a.path,parent:a.parent}}}_parseSync(a){let e=this._parse(a);if(ae(e))throw new Error("Synchronous parse encountered promise.");return e}_parseAsync(a){let e=this._parse(a);return Promise.resolve(e)}parse(a,e){let s=this.safeParse(a,e);if(s.success)return s.data;throw s.error}safeParse(a,e){var s;let n={common:{issues:[],async:(s=e?.async)!==null&&s!==void 0?s:!1,contextualErrorMap:e?.errorMap},path:e?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:N(a)},t=this._parseSync({data:a,path:n.path,parent:n});return ra(n,t)}"~validate"(a){var e,s;let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:N(a)};if(!this["~standard"].async)try{let t=this._parseSync({data:a,path:[],parent:n});return L(t)?{value:t.value}:{issues:n.common.issues}}catch(t){!((s=(e=t?.message)===null||e===void 0?void 0:e.toLowerCase())===null||s===void 0)&&s.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:a,path:[],parent:n}).then(t=>L(t)?{value:t.value}:{issues:n.common.issues})}async parseAsync(a,e){let s=await this.safeParseAsync(a,e);if(s.success)return s.data;throw s.error}async safeParseAsync(a,e){let s={common:{issues:[],contextualErrorMap:e?.errorMap,async:!0},path:e?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:N(a)},n=this._parse({data:a,path:s.path,parent:s}),t=await(ae(n)?n:Promise.resolve(n));return ra(s,t)}refine(a,e){let s=n=>typeof e=="string"||typeof e>"u"?{message:e}:typeof e=="function"?e(n):e;return this._refinement((n,t)=>{let r=a(n),c=()=>t.addIssue({code:i.custom,...s(n)});return typeof Promise<"u"&&r instanceof Promise?r.then(l=>l?!0:(c(),!1)):r?!0:(c(),!1)})}refinement(a,e){return this._refinement((s,n)=>a(s)?!0:(n.addIssue(typeof e=="function"?e(s,n):e),!1))}_refinement(a){return new O({schema:this,typeName:p.ZodEffects,effect:{type:"refinement",refinement:a}})}superRefine(a){return this._refinement(a)}constructor(a){this.spa=this.safeParseAsync,this._def=a,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:e=>this["~validate"](e)}}optional(){return E.create(this,this._def)}nullable(){return $.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return z.create(this)}promise(){return J.create(this,this._def)}or(a){return le.create([this,a],this._def)}and(a){return ie.create(this,a,this._def)}transform(a){return new O({...h(this._def),schema:this,typeName:p.ZodEffects,effect:{type:"transform",transform:a}})}default(a){let e=typeof a=="function"?a:()=>a;return new be({...h(this._def),innerType:this,defaultValue:e,typeName:p.ZodDefault})}brand(){return new aa({typeName:p.ZodBranded,type:this,...h(this._def)})}catch(a){let e=typeof a=="function"?a:()=>a;return new ge({...h(this._def),innerType:this,catchValue:e,typeName:p.ZodCatch})}describe(a){let e=this.constructor;return new e({...this._def,description:a})}pipe(a){return sa.create(this,a)}readonly(){return pe.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},os=/^c[^\s-]{8,}$/i,fs=/^[0-9a-z]+$/,us=/^[0-9A-HJKMNP-TV-Z]{26}$/i,bs=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,gs=/^[a-z0-9_-]{21}$/i,ps=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ms=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,hs=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ys="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ze,vs=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,_s=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ws=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,ks=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,xs=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Ss=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,pa="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Ts=new RegExp(`^${pa}$`);function ma(a){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return a.precision?e=`${e}\\.\\d{${a.precision}}`:a.precision==null&&(e=`${e}(\\.\\d+)?`),e}function Is(a){return new RegExp(`^${ma(a)}$`)}function ha(a){let e=`${pa}T${ma(a)}`,s=[];return s.push(a.local?"Z?":"Z"),a.offset&&s.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${s.join("|")})`,new RegExp(`^${e}$`)}function As(a,e){return!!((e==="v4"||!e)&&vs.test(a)||(e==="v6"||!e)&&ws.test(a))}function Os(a,e){if(!ps.test(a))return!1;try{let[s]=a.split("."),n=s.replace(/-/g,"+").replace(/_/g,"/").padEnd(s.length+(4-s.length%4)%4,"="),t=JSON.parse(atob(n));return!(typeof t!="object"||t===null||!t.typ||!t.alg||e&&t.alg!==e)}catch{return!1}}function Zs(a,e){return!!((e==="v4"||!e)&&_s.test(a)||(e==="v6"||!e)&&ks.test(a))}var W=class X extends y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==u.string){let r=this._getOrReturnCtx(e);return o(r,{code:i.invalid_type,expected:u.string,received:r.parsedType}),m}let n=new x,t;for(let r of this._def.checks)if(r.kind==="min")e.data.length<r.value&&(t=this._getOrReturnCtx(e,t),o(t,{code:i.too_small,minimum:r.value,type:"string",inclusive:!0,exact:!1,message:r.message}),n.dirty());else if(r.kind==="max")e.data.length>r.value&&(t=this._getOrReturnCtx(e,t),o(t,{code:i.too_big,maximum:r.value,type:"string",inclusive:!0,exact:!1,message:r.message}),n.dirty());else if(r.kind==="length"){let c=e.data.length>r.value,l=e.data.length<r.value;(c||l)&&(t=this._getOrReturnCtx(e,t),c?o(t,{code:i.too_big,maximum:r.value,type:"string",inclusive:!0,exact:!0,message:r.message}):l&&o(t,{code:i.too_small,minimum:r.value,type:"string",inclusive:!0,exact:!0,message:r.message}),n.dirty())}else if(r.kind==="email")hs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"email",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="emoji")ze||(ze=new RegExp(ys,"u")),ze.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"emoji",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="uuid")bs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"uuid",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="nanoid")gs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"nanoid",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="cuid")os.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"cuid",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="cuid2")fs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"cuid2",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="ulid")us.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"ulid",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="url")try{new URL(e.data)}catch{t=this._getOrReturnCtx(e,t),o(t,{validation:"url",code:i.invalid_string,message:r.message}),n.dirty()}else r.kind==="regex"?(r.regex.lastIndex=0,r.regex.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"regex",code:i.invalid_string,message:r.message}),n.dirty())):r.kind==="trim"?e.data=e.data.trim():r.kind==="includes"?e.data.includes(r.value,r.position)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:{includes:r.value,position:r.position},message:r.message}),n.dirty()):r.kind==="toLowerCase"?e.data=e.data.toLowerCase():r.kind==="toUpperCase"?e.data=e.data.toUpperCase():r.kind==="startsWith"?e.data.startsWith(r.value)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:{startsWith:r.value},message:r.message}),n.dirty()):r.kind==="endsWith"?e.data.endsWith(r.value)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:{endsWith:r.value},message:r.message}),n.dirty()):r.kind==="datetime"?ha(r).test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:"datetime",message:r.message}),n.dirty()):r.kind==="date"?Ts.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:"date",message:r.message}),n.dirty()):r.kind==="time"?Is(r).test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:"time",message:r.message}),n.dirty()):r.kind==="duration"?ms.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"duration",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="ip"?As(e.data,r.version)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"ip",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="jwt"?Os(e.data,r.alg)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"jwt",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="cidr"?Zs(e.data,r.version)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"cidr",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="base64"?xs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"base64",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="base64url"?Ss.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"base64url",code:i.invalid_string,message:r.message}),n.dirty()):v.assertNever(r);return{status:n.value,value:e.data}}_regex(e,s,n){return this.refinement(t=>e.test(t),{validation:s,code:i.invalid_string,...g.errToObj(n)})}_addCheck(e){return new X({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...g.errToObj(e)})}url(e){return this._addCheck({kind:"url",...g.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...g.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...g.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...g.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...g.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...g.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...g.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...g.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...g.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...g.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...g.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...g.errToObj(e)})}datetime(e){var s,n;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:(s=e?.offset)!==null&&s!==void 0?s:!1,local:(n=e?.local)!==null&&n!==void 0?n:!1,...g.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...g.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...g.errToObj(e)})}regex(e,s){return this._addCheck({kind:"regex",regex:e,...g.errToObj(s)})}includes(e,s){return this._addCheck({kind:"includes",value:e,position:s?.position,...g.errToObj(s?.message)})}startsWith(e,s){return this._addCheck({kind:"startsWith",value:e,...g.errToObj(s)})}endsWith(e,s){return this._addCheck({kind:"endsWith",value:e,...g.errToObj(s)})}min(e,s){return this._addCheck({kind:"min",value:e,...g.errToObj(s)})}max(e,s){return this._addCheck({kind:"max",value:e,...g.errToObj(s)})}length(e,s){return this._addCheck({kind:"length",value:e,...g.errToObj(s)})}nonempty(e){return this.min(1,g.errToObj(e))}trim(){return new X({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new X({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new X({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxLength(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}};W.create=a=>{var e;return new W({checks:[],typeName:p.ZodString,coerce:(e=a?.coerce)!==null&&e!==void 0?e:!1,...h(a)})};function Es(a,e){let s=(a.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,t=s>n?s:n,r=parseInt(a.toFixed(t).replace(".","")),c=parseInt(e.toFixed(t).replace(".",""));return r%c/Math.pow(10,t)}var se=class We extends y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==u.number){let r=this._getOrReturnCtx(e);return o(r,{code:i.invalid_type,expected:u.number,received:r.parsedType}),m}let n,t=new x;for(let r of this._def.checks)r.kind==="int"?v.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),o(n,{code:i.invalid_type,expected:"integer",received:"float",message:r.message}),t.dirty()):r.kind==="min"?(r.inclusive?e.data<r.value:e.data<=r.value)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.too_small,minimum:r.value,type:"number",inclusive:r.inclusive,exact:!1,message:r.message}),t.dirty()):r.kind==="max"?(r.inclusive?e.data>r.value:e.data>=r.value)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.too_big,maximum:r.value,type:"number",inclusive:r.inclusive,exact:!1,message:r.message}),t.dirty()):r.kind==="multipleOf"?Es(e.data,r.value)!==0&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.not_multiple_of,multipleOf:r.value,message:r.message}),t.dirty()):r.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),o(n,{code:i.not_finite,message:r.message}),t.dirty()):v.assertNever(r);return{status:t.value,value:e.data}}gte(e,s){return this.setLimit("min",e,!0,g.toString(s))}gt(e,s){return this.setLimit("min",e,!1,g.toString(s))}lte(e,s){return this.setLimit("max",e,!0,g.toString(s))}lt(e,s){return this.setLimit("max",e,!1,g.toString(s))}setLimit(e,s,n,t){return new We({...this._def,checks:[...this._def.checks,{kind:e,value:s,inclusive:n,message:g.toString(t)}]})}_addCheck(e){return new We({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:g.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:g.toString(e)})}multipleOf(e,s){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(s)})}finite(e){return this._addCheck({kind:"finite",message:g.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:g.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:g.toString(e)})}get minValue(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxValue(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&v.isInteger(e.value))}get isFinite(){let e=null,s=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(s===null||n.value>s)&&(s=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(s)&&Number.isFinite(e)}};se.create=a=>new se({checks:[],typeName:p.ZodNumber,coerce:a?.coerce||!1,...h(a)});var te=class He extends y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==u.bigint)return this._getInvalidInput(e);let n,t=new x;for(let r of this._def.checks)r.kind==="min"?(r.inclusive?e.data<r.value:e.data<=r.value)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.too_small,type:"bigint",minimum:r.value,inclusive:r.inclusive,message:r.message}),t.dirty()):r.kind==="max"?(r.inclusive?e.data>r.value:e.data>=r.value)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.too_big,type:"bigint",maximum:r.value,inclusive:r.inclusive,message:r.message}),t.dirty()):r.kind==="multipleOf"?e.data%r.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.not_multiple_of,multipleOf:r.value,message:r.message}),t.dirty()):v.assertNever(r);return{status:t.value,value:e.data}}_getInvalidInput(e){let s=this._getOrReturnCtx(e);return o(s,{code:i.invalid_type,expected:u.bigint,received:s.parsedType}),m}gte(e,s){return this.setLimit("min",e,!0,g.toString(s))}gt(e,s){return this.setLimit("min",e,!1,g.toString(s))}lte(e,s){return this.setLimit("max",e,!0,g.toString(s))}lt(e,s){return this.setLimit("max",e,!1,g.toString(s))}setLimit(e,s,n,t){return new He({...this._def,checks:[...this._def.checks,{kind:e,value:s,inclusive:n,message:g.toString(t)}]})}_addCheck(e){return new He({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:g.toString(e)})}multipleOf(e,s){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(s)})}get minValue(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxValue(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}};te.create=a=>{var e;return new te({checks:[],typeName:p.ZodBigInt,coerce:(e=a?.coerce)!==null&&e!==void 0?e:!1,...h(a)})};var ne=class extends y{_parse(a){if(this._def.coerce&&(a.data=!!a.data),this._getType(a)!==u.boolean){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.boolean,received:s.parsedType}),m}return k(a.data)}};ne.create=a=>new ne({typeName:p.ZodBoolean,coerce:a?.coerce||!1,...h(a)});var re=class ya extends y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==u.date){let r=this._getOrReturnCtx(e);return o(r,{code:i.invalid_type,expected:u.date,received:r.parsedType}),m}if(isNaN(e.data.getTime())){let r=this._getOrReturnCtx(e);return o(r,{code:i.invalid_date}),m}let n=new x,t;for(let r of this._def.checks)r.kind==="min"?e.data.getTime()<r.value&&(t=this._getOrReturnCtx(e,t),o(t,{code:i.too_small,message:r.message,inclusive:!0,exact:!1,minimum:r.value,type:"date"}),n.dirty()):r.kind==="max"?e.data.getTime()>r.value&&(t=this._getOrReturnCtx(e,t),o(t,{code:i.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:"date"}),n.dirty()):v.assertNever(r);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new ya({...this._def,checks:[...this._def.checks,e]})}min(e,s){return this._addCheck({kind:"min",value:e.getTime(),message:g.toString(s)})}max(e,s){return this._addCheck({kind:"max",value:e.getTime(),message:g.toString(s)})}get minDate(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e!=null?new Date(e):null}};re.create=a=>new re({checks:[],coerce:a?.coerce||!1,typeName:p.ZodDate,...h(a)});var Te=class extends y{_parse(a){if(this._getType(a)!==u.symbol){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.symbol,received:s.parsedType}),m}return k(a.data)}};Te.create=a=>new Te({typeName:p.ZodSymbol,...h(a)});var de=class extends y{_parse(a){if(this._getType(a)!==u.undefined){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.undefined,received:s.parsedType}),m}return k(a.data)}};de.create=a=>new de({typeName:p.ZodUndefined,...h(a)});var ce=class extends y{_parse(a){if(this._getType(a)!==u.null){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.null,received:s.parsedType}),m}return k(a.data)}};ce.create=a=>new ce({typeName:p.ZodNull,...h(a)});var H=class extends y{constructor(){super(...arguments),this._any=!0}_parse(a){return k(a.data)}};H.create=a=>new H({typeName:p.ZodAny,...h(a)});var M=class extends y{constructor(){super(...arguments),this._unknown=!0}_parse(a){return k(a.data)}};M.create=a=>new M({typeName:p.ZodUnknown,...h(a)});var R=class extends y{_parse(a){let e=this._getOrReturnCtx(a);return o(e,{code:i.invalid_type,expected:u.never,received:e.parsedType}),m}};R.create=a=>new R({typeName:p.ZodNever,...h(a)});var Ie=class extends y{_parse(a){if(this._getType(a)!==u.undefined){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.void,received:s.parsedType}),m}return k(a.data)}};Ie.create=a=>new Ie({typeName:p.ZodVoid,...h(a)});var z=class he extends y{_parse(e){let{ctx:s,status:n}=this._processInputParams(e),t=this._def;if(s.parsedType!==u.array)return o(s,{code:i.invalid_type,expected:u.array,received:s.parsedType}),m;if(t.exactLength!==null){let c=s.data.length>t.exactLength.value,l=s.data.length<t.exactLength.value;(c||l)&&(o(s,{code:c?i.too_big:i.too_small,minimum:l?t.exactLength.value:void 0,maximum:c?t.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:t.exactLength.message}),n.dirty())}if(t.minLength!==null&&s.data.length<t.minLength.value&&(o(s,{code:i.too_small,minimum:t.minLength.value,type:"array",inclusive:!0,exact:!1,message:t.minLength.message}),n.dirty()),t.maxLength!==null&&s.data.length>t.maxLength.value&&(o(s,{code:i.too_big,maximum:t.maxLength.value,type:"array",inclusive:!0,exact:!1,message:t.maxLength.message}),n.dirty()),s.common.async)return Promise.all([...s.data].map((c,l)=>t.type._parseAsync(new C(s,c,s.path,l)))).then(c=>x.mergeArray(n,c));let r=[...s.data].map((c,l)=>t.type._parseSync(new C(s,c,s.path,l)));return x.mergeArray(n,r)}get element(){return this._def.type}min(e,s){return new he({...this._def,minLength:{value:e,message:g.toString(s)}})}max(e,s){return new he({...this._def,maxLength:{value:e,message:g.toString(s)}})}length(e,s){return new he({...this._def,exactLength:{value:e,message:g.toString(s)}})}nonempty(e){return this.min(1,e)}};z.create=(a,e)=>new z({type:a,minLength:null,maxLength:null,exactLength:null,typeName:p.ZodArray,...h(e)});function V(a){if(a instanceof T){let e={};for(let s in a.shape){let n=a.shape[s];e[s]=E.create(V(n))}return new T({...a._def,shape:()=>e})}else return a instanceof z?new z({...a._def,type:V(a.element)}):a instanceof E?E.create(V(a.unwrap())):a instanceof $?$.create(V(a.unwrap())):a instanceof P?P.create(a.items.map(e=>V(e))):a}var T=class I extends y{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),s=v.objectKeys(e);return this._cached={shape:e,keys:s}}_parse(e){if(this._getType(e)!==u.object){let f=this._getOrReturnCtx(e);return o(f,{code:i.invalid_type,expected:u.object,received:f.parsedType}),m}let{status:n,ctx:t}=this._processInputParams(e),{shape:r,keys:c}=this._getCached(),l=[];if(!(this._def.catchall instanceof R&&this._def.unknownKeys==="strip"))for(let f in t.data)c.includes(f)||l.push(f);let b=[];for(let f of c){let _=r[f],S=t.data[f];b.push({key:{status:"valid",value:f},value:_._parse(new C(t,S,t.path,f)),alwaysSet:f in t.data})}if(this._def.catchall instanceof R){let f=this._def.unknownKeys;if(f==="passthrough")for(let _ of l)b.push({key:{status:"valid",value:_},value:{status:"valid",value:t.data[_]}});else if(f==="strict")l.length>0&&(o(t,{code:i.unrecognized_keys,keys:l}),n.dirty());else if(f!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let f=this._def.catchall;for(let _ of l){let S=t.data[_];b.push({key:{status:"valid",value:_},value:f._parse(new C(t,S,t.path,_)),alwaysSet:_ in t.data})}}return t.common.async?Promise.resolve().then(async()=>{let f=[];for(let _ of b){let S=await _.key,na=await _.value;f.push({key:S,value:na,alwaysSet:_.alwaysSet})}return f}).then(f=>x.mergeObjectSync(n,f)):x.mergeObjectSync(n,b)}get shape(){return this._def.shape()}strict(e){return g.errToObj,new I({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(s,n)=>{var t,r,c,l;let b=(c=(r=(t=this._def).errorMap)===null||r===void 0?void 0:r.call(t,s,n).message)!==null&&c!==void 0?c:n.defaultError;return s.code==="unrecognized_keys"?{message:(l=g.errToObj(e).message)!==null&&l!==void 0?l:b}:{message:b}}}:{}})}strip(){return new I({...this._def,unknownKeys:"strip"})}passthrough(){return new I({...this._def,unknownKeys:"passthrough"})}extend(e){return new I({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new I({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:p.ZodObject})}setKey(e,s){return this.augment({[e]:s})}catchall(e){return new I({...this._def,catchall:e})}pick(e){let s={};return v.objectKeys(e).forEach(n=>{e[n]&&this.shape[n]&&(s[n]=this.shape[n])}),new I({...this._def,shape:()=>s})}omit(e){let s={};return v.objectKeys(this.shape).forEach(n=>{e[n]||(s[n]=this.shape[n])}),new I({...this._def,shape:()=>s})}deepPartial(){return V(this)}partial(e){let s={};return v.objectKeys(this.shape).forEach(n=>{let t=this.shape[n];e&&!e[n]?s[n]=t:s[n]=t.optional()}),new I({...this._def,shape:()=>s})}required(e){let s={};return v.objectKeys(this.shape).forEach(n=>{if(e&&!e[n])s[n]=this.shape[n];else{let r=this.shape[n];for(;r instanceof E;)r=r._def.innerType;s[n]=r}}),new I({...this._def,shape:()=>s})}keyof(){return Sa(v.objectKeys(this.shape))}};T.create=(a,e)=>new T({shape:()=>a,unknownKeys:"strip",catchall:R.create(),typeName:p.ZodObject,...h(e)});T.strictCreate=(a,e)=>new T({shape:()=>a,unknownKeys:"strict",catchall:R.create(),typeName:p.ZodObject,...h(e)});T.lazycreate=(a,e)=>new T({shape:a,unknownKeys:"strip",catchall:R.create(),typeName:p.ZodObject,...h(e)});var le=class extends y{_parse(a){let{ctx:e}=this._processInputParams(a),s=this._def.options;function n(t){for(let c of t)if(c.result.status==="valid")return c.result;for(let c of t)if(c.result.status==="dirty")return e.common.issues.push(...c.ctx.common.issues),c.result;let r=t.map(c=>new A(c.ctx.common.issues));return o(e,{code:i.invalid_union,unionErrors:r}),m}if(e.common.async)return Promise.all(s.map(async t=>{let r={...e,common:{...e.common,issues:[]},parent:null};return{result:await t._parseAsync({data:e.data,path:e.path,parent:r}),ctx:r}})).then(n);{let t,r=[];for(let l of s){let b={...e,common:{...e.common,issues:[]},parent:null},f=l._parseSync({data:e.data,path:e.path,parent:b});if(f.status==="valid")return f;f.status==="dirty"&&!t&&(t={result:f,ctx:b}),b.common.issues.length&&r.push(b.common.issues)}if(t)return e.common.issues.push(...t.ctx.common.issues),t.result;let c=r.map(l=>new A(l));return o(e,{code:i.invalid_union,unionErrors:c}),m}}get options(){return this._def.options}};le.create=(a,e)=>new le({options:a,typeName:p.ZodUnion,...h(e)});var j=a=>a instanceof oe?j(a.schema):a instanceof O?j(a.innerType()):a instanceof fe?[a.value]:a instanceof me?a.options:a instanceof ue?v.objectValues(a.enum):a instanceof be?j(a._def.innerType):a instanceof de?[void 0]:a instanceof ce?[null]:a instanceof E?[void 0,...j(a.unwrap())]:a instanceof $?[null,...j(a.unwrap())]:a instanceof aa||a instanceof pe?j(a.unwrap()):a instanceof ge?j(a._def.innerType):[],va=class _a extends y{_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==u.object)return o(s,{code:i.invalid_type,expected:u.object,received:s.parsedType}),m;let n=this.discriminator,t=s.data[n],r=this.optionsMap.get(t);return r?s.common.async?r._parseAsync({data:s.data,path:s.path,parent:s}):r._parseSync({data:s.data,path:s.path,parent:s}):(o(s,{code:i.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),m)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,s,n){let t=new Map;for(let r of s){let c=j(r.shape[e]);if(!c.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let l of c){if(t.has(l))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(l)}`);t.set(l,r)}}return new _a({typeName:p.ZodDiscriminatedUnion,discriminator:e,options:s,optionsMap:t,...h(n)})}};function Je(a,e){let s=N(a),n=N(e);if(a===e)return{valid:!0,data:a};if(s===u.object&&n===u.object){let t=v.objectKeys(e),r=v.objectKeys(a).filter(l=>t.indexOf(l)!==-1),c={...a,...e};for(let l of r){let b=Je(a[l],e[l]);if(!b.valid)return{valid:!1};c[l]=b.data}return{valid:!0,data:c}}else if(s===u.array&&n===u.array){if(a.length!==e.length)return{valid:!1};let t=[];for(let r=0;r<a.length;r++){let c=a[r],l=e[r],b=Je(c,l);if(!b.valid)return{valid:!1};t.push(b.data)}return{valid:!0,data:t}}else return s===u.date&&n===u.date&&+a==+e?{valid:!0,data:a}:{valid:!1}}var ie=class extends y{_parse(a){let{status:e,ctx:s}=this._processInputParams(a),n=(t,r)=>{if(Ue(t)||Ue(r))return m;let c=Je(t.value,r.value);return c.valid?((Fe(t)||Fe(r))&&e.dirty(),{status:e.value,value:c.data}):(o(s,{code:i.invalid_intersection_types}),m)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([t,r])=>n(t,r)):n(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}};ie.create=(a,e,s)=>new ie({left:a,right:e,typeName:p.ZodIntersection,...h(s)});var P=class wa extends y{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==u.array)return o(n,{code:i.invalid_type,expected:u.array,received:n.parsedType}),m;if(n.data.length<this._def.items.length)return o(n,{code:i.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),m;!this._def.rest&&n.data.length>this._def.items.length&&(o(n,{code:i.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),s.dirty());let r=[...n.data].map((c,l)=>{let b=this._def.items[l]||this._def.rest;return b?b._parse(new C(n,c,n.path,l)):null}).filter(c=>!!c);return n.common.async?Promise.all(r).then(c=>x.mergeArray(s,c)):x.mergeArray(s,r)}get items(){return this._def.items}rest(e){return new wa({...this._def,rest:e})}};P.create=(a,e)=>{if(!Array.isArray(a))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new P({items:a,typeName:p.ZodTuple,rest:null,...h(e)})};var ka=class Ke extends y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==u.object)return o(n,{code:i.invalid_type,expected:u.object,received:n.parsedType}),m;let t=[],r=this._def.keyType,c=this._def.valueType;for(let l in n.data)t.push({key:r._parse(new C(n,l,n.path,l)),value:c._parse(new C(n,n.data[l],n.path,l)),alwaysSet:l in n.data});return n.common.async?x.mergeObjectAsync(s,t):x.mergeObjectSync(s,t)}get element(){return this._def.valueType}static create(e,s,n){return s instanceof y?new Ke({keyType:e,valueType:s,typeName:p.ZodRecord,...h(n)}):new Ke({keyType:W.create(),valueType:e,typeName:p.ZodRecord,...h(s)})}},Ae=class extends y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(a){let{status:e,ctx:s}=this._processInputParams(a);if(s.parsedType!==u.map)return o(s,{code:i.invalid_type,expected:u.map,received:s.parsedType}),m;let n=this._def.keyType,t=this._def.valueType,r=[...s.data.entries()].map(([c,l],b)=>({key:n._parse(new C(s,c,s.path,[b,"key"])),value:t._parse(new C(s,l,s.path,[b,"value"]))}));if(s.common.async){let c=new Map;return Promise.resolve().then(async()=>{for(let l of r){let b=await l.key,f=await l.value;if(b.status==="aborted"||f.status==="aborted")return m;(b.status==="dirty"||f.status==="dirty")&&e.dirty(),c.set(b.value,f.value)}return{status:e.value,value:c}})}else{let c=new Map;for(let l of r){let b=l.key,f=l.value;if(b.status==="aborted"||f.status==="aborted")return m;(b.status==="dirty"||f.status==="dirty")&&e.dirty(),c.set(b.value,f.value)}return{status:e.value,value:c}}}};Ae.create=(a,e,s)=>new Ae({valueType:e,keyType:a,typeName:p.ZodMap,...h(s)});var Oe=class Ye extends y{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==u.set)return o(n,{code:i.invalid_type,expected:u.set,received:n.parsedType}),m;let t=this._def;t.minSize!==null&&n.data.size<t.minSize.value&&(o(n,{code:i.too_small,minimum:t.minSize.value,type:"set",inclusive:!0,exact:!1,message:t.minSize.message}),s.dirty()),t.maxSize!==null&&n.data.size>t.maxSize.value&&(o(n,{code:i.too_big,maximum:t.maxSize.value,type:"set",inclusive:!0,exact:!1,message:t.maxSize.message}),s.dirty());let r=this._def.valueType;function c(b){let f=new Set;for(let _ of b){if(_.status==="aborted")return m;_.status==="dirty"&&s.dirty(),f.add(_.value)}return{status:s.value,value:f}}let l=[...n.data.values()].map((b,f)=>r._parse(new C(n,b,n.path,f)));return n.common.async?Promise.all(l).then(b=>c(b)):c(l)}min(e,s){return new Ye({...this._def,minSize:{value:e,message:g.toString(s)}})}max(e,s){return new Ye({...this._def,maxSize:{value:e,message:g.toString(s)}})}size(e,s){return this.min(e,s).max(e,s)}nonempty(e){return this.min(1,e)}};Oe.create=(a,e)=>new Oe({valueType:a,minSize:null,maxSize:null,typeName:p.ZodSet,...h(e)});var xa=class ye extends y{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==u.function)return o(s,{code:i.invalid_type,expected:u.function,received:s.parsedType}),m;function n(l,b){return xe({data:l,path:s.path,errorMaps:[s.common.contextualErrorMap,s.schemaErrorMap,ke(),F].filter(f=>!!f),issueData:{code:i.invalid_arguments,argumentsError:b}})}function t(l,b){return xe({data:l,path:s.path,errorMaps:[s.common.contextualErrorMap,s.schemaErrorMap,ke(),F].filter(f=>!!f),issueData:{code:i.invalid_return_type,returnTypeError:b}})}let r={errorMap:s.common.contextualErrorMap},c=s.data;if(this._def.returns instanceof J){let l=this;return k(async function(...b){let f=new A([]),_=await l._def.args.parseAsync(b,r).catch(Me=>{throw f.addIssue(n(b,Me)),f}),S=await Reflect.apply(c,this,_);return await l._def.returns._def.type.parseAsync(S,r).catch(Me=>{throw f.addIssue(t(S,Me)),f})})}else{let l=this;return k(function(...b){let f=l._def.args.safeParse(b,r);if(!f.success)throw new A([n(b,f.error)]);let _=Reflect.apply(c,this,f.data),S=l._def.returns.safeParse(_,r);if(!S.success)throw new A([t(_,S.error)]);return S.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new ye({...this._def,args:P.create(e).rest(M.create())})}returns(e){return new ye({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,s,n){return new ye({args:e||P.create([]).rest(M.create()),returns:s||M.create(),typeName:p.ZodFunction,...h(n)})}},oe=class extends y{get schema(){return this._def.getter()}_parse(a){let{ctx:e}=this._processInputParams(a);return this._def.getter()._parse({data:e.data,path:e.path,parent:e})}};oe.create=(a,e)=>new oe({getter:a,typeName:p.ZodLazy,...h(e)});var fe=class extends y{_parse(a){if(a.data!==this._def.value){let e=this._getOrReturnCtx(a);return o(e,{received:e.data,code:i.invalid_literal,expected:this._def.value}),m}return{status:"valid",value:a.data}}get value(){return this._def.value}};fe.create=(a,e)=>new fe({value:a,typeName:p.ZodLiteral,...h(e)});function Sa(a,e){return new me({values:a,typeName:p.ZodEnum,...h(e)})}var me=class Ge extends y{constructor(){super(...arguments),Y.set(this,void 0)}_parse(e){if(typeof e.data!="string"){let s=this._getOrReturnCtx(e),n=this._def.values;return o(s,{expected:v.joinValues(n),received:s.parsedType,code:i.invalid_type}),m}if(Se(this,Y,"f")||ga(this,Y,new Set(this._def.values),"f"),!Se(this,Y,"f").has(e.data)){let s=this._getOrReturnCtx(e),n=this._def.values;return o(s,{received:s.data,code:i.invalid_enum_value,options:n}),m}return k(e.data)}get options(){return this._def.values}get enum(){let e={};for(let s of this._def.values)e[s]=s;return e}get Values(){let e={};for(let s of this._def.values)e[s]=s;return e}get Enum(){let e={};for(let s of this._def.values)e[s]=s;return e}extract(e,s=this._def){return Ge.create(e,{...this._def,...s})}exclude(e,s=this._def){return Ge.create(this.options.filter(n=>!e.includes(n)),{...this._def,...s})}};Y=new WeakMap;me.create=Sa;var ue=class extends y{constructor(){super(...arguments),G.set(this,void 0)}_parse(a){let e=v.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(a);if(s.parsedType!==u.string&&s.parsedType!==u.number){let n=v.objectValues(e);return o(s,{expected:v.joinValues(n),received:s.parsedType,code:i.invalid_type}),m}if(Se(this,G,"f")||ga(this,G,new Set(v.getValidEnumValues(this._def.values)),"f"),!Se(this,G,"f").has(a.data)){let n=v.objectValues(e);return o(s,{received:s.data,code:i.invalid_enum_value,options:n}),m}return k(a.data)}get enum(){return this._def.values}};G=new WeakMap;ue.create=(a,e)=>new ue({values:a,typeName:p.ZodNativeEnum,...h(e)});var J=class extends y{unwrap(){return this._def.type}_parse(a){let{ctx:e}=this._processInputParams(a);if(e.parsedType!==u.promise&&e.common.async===!1)return o(e,{code:i.invalid_type,expected:u.promise,received:e.parsedType}),m;let s=e.parsedType===u.promise?e.data:Promise.resolve(e.data);return k(s.then(n=>this._def.type.parseAsync(n,{path:e.path,errorMap:e.common.contextualErrorMap})))}};J.create=(a,e)=>new J({type:a,typeName:p.ZodPromise,...h(e)});var O=class extends y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===p.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(a){let{status:e,ctx:s}=this._processInputParams(a),n=this._def.effect||null,t={addIssue:r=>{o(s,r),r.fatal?e.abort():e.dirty()},get path(){return s.path}};if(t.addIssue=t.addIssue.bind(t),n.type==="preprocess"){let r=n.transform(s.data,t);if(s.common.async)return Promise.resolve(r).then(async c=>{if(e.value==="aborted")return m;let l=await this._def.schema._parseAsync({data:c,path:s.path,parent:s});return l.status==="aborted"?m:l.status==="dirty"||e.value==="dirty"?B(l.value):l});{if(e.value==="aborted")return m;let c=this._def.schema._parseSync({data:r,path:s.path,parent:s});return c.status==="aborted"?m:c.status==="dirty"||e.value==="dirty"?B(c.value):c}}if(n.type==="refinement"){let r=c=>{let l=n.refinement(c,t);if(s.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return c};if(s.common.async===!1){let c=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return c.status==="aborted"?m:(c.status==="dirty"&&e.dirty(),r(c.value),{status:e.value,value:c.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(c=>c.status==="aborted"?m:(c.status==="dirty"&&e.dirty(),r(c.value).then(()=>({status:e.value,value:c.value}))))}if(n.type==="transform")if(s.common.async===!1){let r=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!L(r))return r;let c=n.transform(r.value,t);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:e.value,value:c}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(r=>L(r)?Promise.resolve(n.transform(r.value,t)).then(c=>({status:e.value,value:c})):r);v.assertNever(n)}};O.create=(a,e,s)=>new O({schema:a,typeName:p.ZodEffects,effect:e,...h(s)});O.createWithPreprocess=(a,e,s)=>new O({schema:e,effect:{type:"preprocess",transform:a},typeName:p.ZodEffects,...h(s)});var E=class extends y{_parse(a){return this._getType(a)===u.undefined?k(void 0):this._def.innerType._parse(a)}unwrap(){return this._def.innerType}};E.create=(a,e)=>new E({innerType:a,typeName:p.ZodOptional,...h(e)});var $=class extends y{_parse(a){return this._getType(a)===u.null?k(null):this._def.innerType._parse(a)}unwrap(){return this._def.innerType}};$.create=(a,e)=>new $({innerType:a,typeName:p.ZodNullable,...h(e)});var be=class extends y{_parse(a){let{ctx:e}=this._processInputParams(a),s=e.data;return e.parsedType===u.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:e.path,parent:e})}removeDefault(){return this._def.innerType}};be.create=(a,e)=>new be({innerType:a,typeName:p.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...h(e)});var ge=class extends y{_parse(a){let{ctx:e}=this._processInputParams(a),s={...e,common:{...e.common,issues:[]}},n=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return ae(n)?n.then(t=>({status:"valid",value:t.status==="valid"?t.value:this._def.catchValue({get error(){return new A(s.common.issues)},input:s.data})})):{status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new A(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}};ge.create=(a,e)=>new ge({innerType:a,typeName:p.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...h(e)});var Ze=class extends y{_parse(a){if(this._getType(a)!==u.nan){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.nan,received:s.parsedType}),m}return{status:"valid",value:a.data}}};Ze.create=a=>new Ze({typeName:p.ZodNaN,...h(a)});var Cs=Symbol("zod_brand"),aa=class extends y{_parse(a){let{ctx:e}=this._processInputParams(a),s=e.data;return this._def.type._parse({data:s,path:e.path,parent:e})}unwrap(){return this._def.type}},sa=class Ta extends y{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let r=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return r.status==="aborted"?m:r.status==="dirty"?(s.dirty(),B(r.value)):this._def.out._parseAsync({data:r.value,path:n.path,parent:n})})();{let t=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return t.status==="aborted"?m:t.status==="dirty"?(s.dirty(),{status:"dirty",value:t.value}):this._def.out._parseSync({data:t.value,path:n.path,parent:n})}}static create(e,s){return new Ta({in:e,out:s,typeName:p.ZodPipeline})}},pe=class extends y{_parse(a){let e=this._def.innerType._parse(a),s=n=>(L(n)&&(n.value=Object.freeze(n.value)),n);return ae(e)?e.then(n=>s(n)):s(e)}unwrap(){return this._def.innerType}};pe.create=(a,e)=>new pe({innerType:a,typeName:p.ZodReadonly,...h(e)});function Ia(a,e={},s){return a?H.create().superRefine((n,t)=>{var r,c;if(!a(n)){let l=typeof e=="function"?e(n):typeof e=="string"?{message:e}:e,b=(c=(r=l.fatal)!==null&&r!==void 0?r:s)!==null&&c!==void 0?c:!0,f=typeof l=="string"?{message:l}:l;t.addIssue({code:"custom",...f,fatal:b})}}):H.create()}var js={object:T.lazycreate},p;(function(a){a.ZodString="ZodString",a.ZodNumber="ZodNumber",a.ZodNaN="ZodNaN",a.ZodBigInt="ZodBigInt",a.ZodBoolean="ZodBoolean",a.ZodDate="ZodDate",a.ZodSymbol="ZodSymbol",a.ZodUndefined="ZodUndefined",a.ZodNull="ZodNull",a.ZodAny="ZodAny",a.ZodUnknown="ZodUnknown",a.ZodNever="ZodNever",a.ZodVoid="ZodVoid",a.ZodArray="ZodArray",a.ZodObject="ZodObject",a.ZodUnion="ZodUnion",a.ZodDiscriminatedUnion="ZodDiscriminatedUnion",a.ZodIntersection="ZodIntersection",a.ZodTuple="ZodTuple",a.ZodRecord="ZodRecord",a.ZodMap="ZodMap",a.ZodSet="ZodSet",a.ZodFunction="ZodFunction",a.ZodLazy="ZodLazy",a.ZodLiteral="ZodLiteral",a.ZodEnum="ZodEnum",a.ZodEffects="ZodEffects",a.ZodNativeEnum="ZodNativeEnum",a.ZodOptional="ZodOptional",a.ZodNullable="ZodNullable",a.ZodDefault="ZodDefault",a.ZodCatch="ZodCatch",a.ZodPromise="ZodPromise",a.ZodBranded="ZodBranded",a.ZodPipeline="ZodPipeline",a.ZodReadonly="ZodReadonly"})(p||(p={}));var Ns=(a,e={message:`Input not instance of ${a.name}`})=>Ia(s=>s instanceof a,e),Aa=W.create,Oa=se.create,Rs=Ze.create,Ps=te.create,Za=ne.create,$s=re.create,Ds=Te.create,Ms=de.create,Ls=ce.create,zs=H.create,Vs=M.create,qs=R.create,Bs=Ie.create,Us=z.create,Fs=T.create,Ws=T.strictCreate,Hs=le.create,Js=va.create,Ks=ie.create,Ys=P.create,Gs=ka.create,Xs=Ae.create,Qs=Oe.create,et=xa.create,at=oe.create,st=fe.create,tt=me.create,nt=ue.create,rt=J.create,da=O.create,dt=E.create,ct=$.create,lt=O.createWithPreprocess,it=sa.create,ot=()=>Aa().optional(),ft=()=>Oa().optional(),ut=()=>Za().optional(),bt={string:a=>W.create({...a,coerce:!0}),number:a=>se.create({...a,coerce:!0}),boolean:a=>ne.create({...a,coerce:!0}),bigint:a=>te.create({...a,coerce:!0}),date:a=>re.create({...a,coerce:!0})},gt=m,d=Object.freeze({__proto__:null,defaultErrorMap:F,setErrorMap:ls,getErrorMap:ke,makeIssue:xe,EMPTY_PATH:is,addIssueToContext:o,ParseStatus:x,INVALID:m,DIRTY:B,OK:k,isAborted:Ue,isDirty:Fe,isValid:L,isAsync:ae,get util(){return v},get objectUtil(){return Be},ZodParsedType:u,getParsedType:N,ZodType:y,datetimeRegex:ha,ZodString:W,ZodNumber:se,ZodBigInt:te,ZodBoolean:ne,ZodDate:re,ZodSymbol:Te,ZodUndefined:de,ZodNull:ce,ZodAny:H,ZodUnknown:M,ZodNever:R,ZodVoid:Ie,ZodArray:z,ZodObject:T,ZodUnion:le,ZodDiscriminatedUnion:va,ZodIntersection:ie,ZodTuple:P,ZodRecord:ka,ZodMap:Ae,ZodSet:Oe,ZodFunction:xa,ZodLazy:oe,ZodLiteral:fe,ZodEnum:me,ZodNativeEnum:ue,ZodPromise:J,ZodEffects:O,ZodTransformer:O,ZodOptional:E,ZodNullable:$,ZodDefault:be,ZodCatch:ge,ZodNaN:Ze,BRAND:Cs,ZodBranded:aa,ZodPipeline:sa,ZodReadonly:pe,custom:Ia,Schema:y,ZodSchema:y,late:js,get ZodFirstPartyTypeKind(){return p},coerce:bt,any:zs,array:Us,bigint:Ps,boolean:Za,date:$s,discriminatedUnion:Js,effect:da,enum:tt,function:et,instanceof:Ns,intersection:Ks,lazy:at,literal:st,map:Xs,nan:Rs,nativeEnum:nt,never:qs,null:Ls,nullable:ct,number:Oa,object:Fs,oboolean:ut,onumber:ft,optional:dt,ostring:ot,pipeline:it,preprocess:lt,promise:rt,record:Gs,set:Qs,strictObject:Ws,string:Aa,symbol:Ds,transformer:da,tuple:Ys,undefined:Ms,union:Hs,unknown:Vs,void:Bs,NEVER:gt,ZodIssueCode:i,quotelessJson:cs,ZodError:A}),Ea=class{occasion;style;book_size;cover_type;page_type;image_density;image_filtering_level;embellishment_level;text_sticker_level;constructor(a){this.occasion=a.occasion,this.style=a.style,this.book_size=a.book_size,this.cover_type=a.cover_type,this.page_type=a.page_type,this.image_density=a.image_density,this.image_filtering_level=a.image_filtering_level,this.embellishment_level=a.embellishment_level,this.text_sticker_level=a.text_sticker_level}},Ca=d.object({occasion:d.enum(Ee),style:d.string(),book_size:d.enum(Ce),cover_type:d.enum(je),page_type:d.enum(Ne),image_density:d.enum(Re),image_filtering_level:d.enum(Pe),embellishment_level:d.enum($e),text_sticker_level:d.enum(De)}),q=d.object({id:d.string().optional(),title:d.string(),subtitle:d.string().optional(),design_request:Ca,sku:d.string().optional(),state:d.enum(Xe).optional(),guid:d.string().optional(),cancelled_at:d.string().optional(),mb_client_timeout:d.number().optional(),user_id:d.string().optional(),revision:d.number().optional()}),D=class{id;title;revision;subtitle;design_request;sku;state;guid;cancelled_at;timeout;user_id;constructor(a){this.id=a.id||"",this.title=a.title,this.subtitle=a.subtitle,this.design_request=new Ea(a.design_request),this.sku=a.sku,this.state=a.state,this.guid=a.guid,this.cancelled_at=a.cancelled_at,this.timeout=a.mb_client_timeout?a.mb_client_timeout*1e3:void 0,this.user_id=a.user_id,this.revision=a.revision}toDesignRequestProps(){let a={...this,...this.design_request};return a.style=ds(a.style),delete a.design_request,delete a.revision,ea(a)}toBookProps(){return{...this,mb_client_timeout:this.timeout?this.timeout/1e3:void 0}}},ja=class{constructor(a,e,s){this.client=a,this.parentId=e,this.list=[],this.length=this.list.length,this.designRequestState=s}parentId;list;length;designRequestState;async add(a){if(we(this.designRequestState)){let e=await this.client.engineAPI.images.addToBook(this.parentId,new Na(a)),s=Ra(e);return this.list.push(s),this.length=this.list.length,new Promise(n=>{n(s)})}else throw new Error("You need to wait for the current design request to be completed before adding new images.")}async delete(a){if(we(this.designRequestState))return await this.client.engineAPI.images.delete(a,this.parentId),this.list.splice(this.list.findIndex(e=>e.handle===a),1),this.length=this.list.length,new Promise(e=>{e(this.length)});throw new Error("You need to wait for the current design request to be completed before deleting images.")}},Q=d.object({id:d.string().optional(),handle:d.string(),url:d.string(),width:d.number(),height:d.number(),orientation:d.number(),taken_at:d.string(),camera_make:d.string().optional(),camera:d.string().optional(),filename:d.string(),metadata:d.record(d.unknown()).optional()}),Na=class{id;handle;url;width;height;orientation;taken_at;camera_make;camera;filename;metadata;constructor(a){this.id=a.id,this.handle=a.handle,this.url=a.url,this.width=a.width,this.height=a.height,this.orientation=a.rotation,this.taken_at=a.captureTime,this.camera_make=a.cameraMake,this.camera=a.cameraModel,this.filename=a.filename,this.metadata=a.metadata}};function Ra(a){return{id:a.id,handle:a.handle,url:a.url,width:a.width,height:a.height,rotation:a.orientation,captureTime:a.taken_at,cameraMake:a.camera_make,cameraModel:a.camera,filename:a.filename,metadata:a.metadata}}var ve=d.object({maxPageCount:d.number(),minPageCount:d.number(),maxImageCount:d.number(),avgImageCount:d.number(),minImageCount:d.number()}),Pa=d.object({high:ve,medium:ve,low:ve}),$a=d.object({densities:Pa}),_e=d.object({max_page_count:d.number(),min_page_count:d.number(),max_image_count:d.number(),avg_image_count:d.number(),min_image_count:d.number()}),Da=d.object({high:_e,medium:_e,low:_e}),Ma=d.object({densities:Da}),pt={occasion:Ee,style:Object.keys(U).map(a=>parseInt(a)),bookSize:Ce,coverType:je,pageType:Ne,imageDensity:Re,imageFilteringLevel:Pe,embellishmentLevel:$e,textStickerLevel:De},La=class{constructor(a,e,s){this.parentId=a,this.client=e,this.state=s?.state||Xe[0],this.title=s?.title||"",this.subtitle=s?.subtitle,this.occasion=s?.occasion||Ee[0],this.style=s?.style||parseInt(Object.keys(U)[0]),this.sku=s?.sku,this.bookSize=s?.bookSize||Ce[0],this.coverType=s?.coverType||je[0],this.pageType=s?.pageType||Ne[0],this.imageDensity=s?.imageDensity||Re[0],this.imageFilteringLevel=s?.imageFilteringLevel||Pe[0],this.embellishmentLevel=s?.embellishmentLevel||$e[0],this.textStickerLevel=s?.textStickerLevel||De[0],this.images=new ja(this.client,this.parentId,this.state),this.userId=s?.userId}state;title;subtitle;occasion;style;sku;bookSize;coverType;pageType;imageDensity;imageFilteringLevel;embellishmentLevel;textStickerLevel;images;webSocket;userId;guid;timeout;updateDesignRequest(a){Object.assign(this,a),a.state&&(this.images.designRequestState=a.state)}async getOptions(a){return $a.parse(ea(await this.client.engineAPI.designOptions.retrieve(this.bookSize,a||this.images.length,this.imageFilteringLevel,this.sku)))}async getAlternateLayouts(a,e){if(this.state==="ready")return await this.client.engineAPI.spreads.layouts(this.parentId,a,e);throw new Error("Design request not ready")}async submit(a){if(we(this.state))return a&&this.updateDesignRequest(a),this.webSocket=new WebSocket(`${this.client.webSocketHost}/?book_id=${this.parentId}`),await this.client.engineAPI.books.update(this.parentId,this.toBook()),this.updateDesignRequest((await this.client.engineAPI.books.design(this.parentId)).toDesignRequestProps()),this.getProgress(),this;throw new Error("You need to wait for the current design request to be completed before submitting a new one.")}async setGuid(a){if(Ve(this.state))return this.guid=a,this.updateDesignRequest((await this.client.engineAPI.books.update(this.parentId,this.toBook())).toDesignRequestProps()),this.guid;throw new Error("Design request not submitted")}async cancel(){if(this.state==="cancelled")throw new Error("Design request already cancelled");if(this.state==="ready")throw new Error("Design request already finished");if(Ve(this.state))return this.updateDesignRequest({...(await this.client.engineAPI.books.cancel(this.parentId)).toDesignRequestProps(),state:"cancelled"}),await this.eventHandler(oa),this;throw new Error("Design request not submitted")}async getJSON(a){if(this.state==="ready")return await this.client.engineAPI.books.format(this.parentId,a);throw new Error("Design request not ready")}async logEvent(a,e){return await this.client.engineAPI.events.createBookEvent(this.parentId,a,e)}async eventHandler(a,e="MagicBook.designRequestUpdated"){let s=new CustomEvent(e,{detail:a});ca.includes(a.slug)&&(this.webSocket?.close(),la.includes(a.slug)&&await this.client.engineAPI.books.report(this.parentId,{error:a.slug==="error"?"design":"timeout",step:this.state})),this.updateDesignRequest({state:a.slug}),window.dispatchEvent(s)}timeoutHandler(){if(this.timeout)return setTimeout(async()=>{await this.eventHandler(ia)},this.timeout);throw new Error("Design request timeout not set")}async getProgress(){if(this.webSocket){let a;this.webSocket.onmessage=async e=>{let s=JSON.parse(e.data);(this.state!==s.slug||s.slug==="submitted")&&(a&&clearTimeout(a),a=this.timeoutHandler(),await this.eventHandler(s))},this.webSocket.onclose=()=>clearTimeout(a)}}toBook(){let a={...this,images:this.images.list};delete a.client,delete a.webSocket;let e=U[this.style]?.slug||this.style,s=Qe(Z(a));return s.style=e,new D({id:a.parentId,guid:a.guid,title:a.title,subtitle:a.subtitle,design_request:s,sku:a.sku,state:a.state,user_id:a.userId})}},mt=class{constructor(a){this.engineAPI=a,K(this)}create(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:"/v1/books",options:{method:"POST",body:Z(a)}});return q.safeParse(e),new D(e)})}retrieve(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/books/${a}`});return q.safeParse(e),new D(e)})}update(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/books/${a}`,options:{method:"PUT",body:Z(e)}});return q.safeParse(s),new D(s)})}design(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/books/${a}/design`,options:{method:"POST"}});return q.safeParse(e),new D(e)})}cancel(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/books/${a}/cancel`,options:{method:"POST"}});return q.safeParse(e),new D(e)})}report(a,e){return w(async()=>{await this.engineAPI.fetcher.call({path:`/v1/books/${a}/report`,options:{method:"POST",body:Z(e)}})})}delete(a){return w(async()=>{await this.engineAPI.fetcher.call({path:`/v1/books/${a}`,options:{method:"DELETE"}})})}format(a,e){return w(async()=>await this.engineAPI.fetcher.call({path:`/v1/books/${a}/format/${e}`}))}},ht=class{constructor(a){this.engineAPI=a,K(this)}retrieve(a,e,s,n){return w(async()=>{let t=await this.engineAPI.fetcher.call({path:`/v1/designoptions/booksize/${a}/imagecount/${e}/imagefilteringlevel/${s}${n?`?sku=${n}`:""}`});return Ma.parse(t)})}},yt=d.record(d.string(),d.unknown()).optional(),vt=d.object({name:d.string(),context:yt}),_t=class{constructor(a){this.engineAPI=a,K(this)}createBookEvent(a,e,s){return w(async()=>{let n={name:e};s&&(n.context=s);let t=await this.engineAPI.fetcher.call({path:`/v1/events/book/${a}`,options:{method:"POST",body:Z(n)}});return vt.parse(t)})}},wt={headers:{"Content-Type":"application/json"},method:"GET"},kt=class{baseUrl;options;constructor(a,e){this.baseUrl=new URL(a),this.options=qe(wt,e||{})}async call(a){try{a.options?.body&&typeof a.options.body!="string"&&(a.options.body=JSON.stringify(a.options?.body));let e={...this.options},s=a.options?qe(e,a.options):e,n=await fetch(this.cleanUrl(new URL(a.path,this.baseUrl).href),s);if(n.status>=200&&n.status<300)try{return await n.clone().json()}catch{try{return await n.text()}catch{return{}}}else{let t=n.statusText;try{t=JSON.stringify((await n.json())?.detail)}catch{}throw Error(`${n.status} ${t}`)}}catch(e){return Promise.reject(e)}}cleanUrl(a){return a.replaceAll(" ","").trim()}},xt=class{constructor(a){this.engineAPI=a,K(this)}list(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/images/book/${a}`});return d.array(Q).parse(e)})}retrieve(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/images/${a}/book/${e}`});return Q.parse(s)})}update(a,e,s){return w(async()=>{let n=await this.engineAPI.fetcher.call({path:`/v1/images/${a}/book/${e}`,options:{method:"PUT",body:Z(s)}});return Q.parse(n)})}delete(a,e){return w(async()=>{await this.engineAPI.fetcher.call({path:`/v1/images/${a}/book/${e}`,options:{method:"DELETE"}})})}addToBook(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/images/book/${a}`,options:{method:"POST",body:Z(e)}});return Q.parse(s)})}},ee=d.object({id:d.string(),book_id:d.string(),state:d.string(),spread_type:d.string(),width:d.number(),height:d.number(),sequence:d.number(),wells:d.array(d.unknown()),background:d.unknown(),laid_out_at:d.string().nullable(),embellished_at:d.string().nullable(),polished_at:d.string().nullable(),metadata:d.unknown(),url:d.string().nullable().optional()}),St=d.object({id:d.string(),bookId:d.string(),state:d.string(),spreadType:d.string(),width:d.number(),height:d.number(),sequence:d.number(),wells:d.array(d.unknown()),background:d.unknown(),laidOutAt:d.string().nullable(),embellishedAt:d.string().nullable(),polishedAt:d.string().nullable(),metadata:d.unknown(),url:d.string().nullable().optional()}),za=d.object({photoRefId:d.string(),finalCrop:d.array(d.number())}),Va=d.object({x:d.number(),y:d.number(),width:d.number().optional(),height:d.number().optional(),rotation:d.number()}),qa=d.object({id:d.string(),llx:d.number(),lly:d.number(),urx:d.number(),ury:d.number(),data:d.string().nullable(),title:d.string(),width:d.number(),effect:d.string(),height:d.number(),source:d.string(),rotation:d.number(),uploadTime:d.string()}),Ba=d.object({key:d.string(),value:d.any()}),Ua=d.object({type:d.string(),imageAssignment:za.optional(),position:Va,seqNum:d.number(),z:d.number(),id:d.string().optional(),horizJustification:d.string().optional(),vertJustification:d.string().optional().nullable(),text:d.string().optional(),fontId:d.string().optional(),fontSize:d.number().optional(),fontColor:d.string().optional(),frame:d.string().optional()}),Fa=d.object({url:d.string(),encryptId:d.string(),photoRefId:d.string(),photoId:d.string(),photoMetadata:qa}),Wa=d.object({properties:d.array(Ba)}),ta=d.object({backgroundId:d.string().nullable(),assets:d.array(Ua).optional()}),Ha=d.object({surfaceNumber:d.number(),surfaceData:d.record(d.any()),version:d.string()}),Ja=d.object({pageNum:d.number(),type:d.string(),canvas:ta}),Ka=d.object({pages:d.array(Ja),photoStrip:d.array(Fa)}),Tt=d.object({title:d.string(),binding:d.string(),coverSpecId:d.string(),styleId:d.number(),userId:d.string(),magicShopBook:Ka,reportingData:Wa}),It=class{constructor(a){this.engineAPI=a,K(this)}list(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/spreads/book/${a}`});return d.array(ee).parse(e)})}create(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/spreads/book/${a}`,options:{method:"POST",body:Z(e)}});return ee.parse(s)})}retrieve(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/spreads/${a}/book/${e}`});return ee.parse(s)})}render(a,e,s=512){return w(async()=>await this.engineAPI.fetcher.call({path:`/v1/spreads/${a}/book/${e}/render/${s}`}))}update(a,e,s){return w(async()=>{let n=await this.engineAPI.fetcher.call({path:`/v1/spreads/${a}/book/${e}`,options:{method:"PUT",body:Z(s)}});return ee.parse(n)})}delete(a,e){return w(async()=>{await this.engineAPI.fetcher.call({path:`/v1/spreads/${a}/book/${e}`,options:{method:"DELETE"}})})}layouts(a,e,s){return w(async()=>{let n=await this.engineAPI.fetcher.call({path:"/v1/spreads/layouts",options:{method:"POST",body:Z({user_id:a,page_num:e,surfaceCategoryName:s})}});return d.array(s?Ha:ta).parse(n)})}},At=d.object({score:d.number(),bounding_box:d.object({x:d.number(),y:d.number(),width:d.number(),height:d.number()}),size:d.number(),eyes_open_score:d.number(),smile_score:d.number(),facing_camera_score:d.number()}),Ot=d.object({score:d.number(),boundingBox:d.object({x:d.number(),y:d.number(),width:d.number(),height:d.number()}),size:d.number(),eyesOpenScore:d.number(),smileScore:d.number(),facingCameraScore:d.number()}),Zt=d.object({id:d.string(),url:d.string(),category:d.string(),aesthetic_score:d.number(),faces:d.array(At),roi:d.object({x:d.number(),y:d.number(),width:d.number(),height:d.number()}),taken_at:d.number(),width:d.number(),height:d.number()}),Et=d.object({id:d.string(),url:d.string(),category:d.string(),aestheticScore:d.number(),faces:d.array(Ot),roi:d.object({x:d.number(),y:d.number(),width:d.number(),height:d.number()}),takenAt:d.number(),width:d.number(),height:d.number()}),Ct=d.object({id:d.string(),sequence:d.number(),book_id:d.string(),similarity:d.number(),duplicate:d.boolean(),selected:d.boolean(),surface_weight:d.number(),front_cover:d.boolean().optional(),back_cover:d.boolean().optional(),scene:d.number(),subscene:d.number(),spine_break:d.boolean().optional(),image:Zt}),Lt=d.object({id:d.string(),sequence:d.number(),bookId:d.string(),similarity:d.number(),duplicate:d.boolean(),selected:d.boolean(),surfaceWeight:d.number(),frontCover:d.boolean().optional(),backCover:d.boolean().optional(),scene:d.number(),subscene:d.number(),spineBreak:d.boolean().optional(),image:Et}),jt=class{constructor(a){this.engineAPI=a,K(this)}list(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/storyboarditems/book/${a}`});return d.array(Ct).parse(e)})}},Nt=class{baseUrl;apiKey;fetcher;constructor(a,e){this.baseUrl=new URL(a),this.apiKey=e;let s={headers:{Authorization:`API-Key ${this.apiKey}`}};this.fetcher=new kt(a,s)}books=new mt(this);designOptions=new ht(this);events=new _t(this);images=new xt(this);storyboardItems=new jt(this);spreads=new It(this)},Rt="https://api.sfly-sls.magicbook.io",Pt="wss://socket.sfly-sls.magicbook.io",$t=class{constructor(a,e=Rt,s=Pt){this.apiKey=a,this.apiHost=e,this.webSocketHost=s,this.engineAPI=new Nt(this.apiHost,this.apiKey)}engineAPI;async createDesignRequest(a){if(a.userId){let e=await this.engineAPI.books.create(Qe({...a}));return new La(e.id,this,a)}else throw new Error("userId is required")}};return as(Dt);})();
|
|
1
|
+
"use strict";var MagicLabs=(()=>{var Le=Object.defineProperty;var Ya=Object.getOwnPropertyDescriptor;var Ga=Object.getOwnPropertyNames;var Xa=Object.prototype.hasOwnProperty;var Qa=(a,e)=>{for(var s in e)Le(a,s,{get:e[s],enumerable:!0})},es=(a,e,s,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of Ga(e))!Xa.call(a,t)&&t!==s&&Le(a,t,{get:()=>e[t],enumerable:!(n=Ya(e,t))||n.enumerable});return a};var as=a=>es(Le({},"__esModule",{value:!0}),a);var Dt={};Qa(Dt,{Book:()=>D,BookDesignRequest:()=>Ea,DesignRequest:()=>La,DesignRequestOptions:()=>pt,ImageServer:()=>Na,Images:()=>ja,MagicBookClient:()=>$t,assetSchema:()=>Ua,bookCreationRequestSchema:()=>Tt,bookDesignRequestSchema:()=>Ca,bookPropsSchema:()=>q,bookSizes:()=>Ce,canSubmitDesignRequest:()=>we,cancelledEventDetail:()=>oa,coverTypes:()=>je,designOptionsSchema:()=>$a,designOptionsServerSchema:()=>Ma,embellishmentLevels:()=>$e,formats:()=>ss,imageAssignmentSchema:()=>za,imageDensities:()=>Re,imageDensityOptionSchema:()=>ve,imageDensityOptionServerSchema:()=>_e,imageDensityOptionsSchema:()=>Pa,imageDensityOptionsServerSchema:()=>Da,imageFilteringLevels:()=>Pe,imageServerSchema:()=>Q,imageServerToImage:()=>Ra,isDesignRequestSubmitted:()=>Ve,magicShopBookSchema:()=>Ka,occasions:()=>Ee,pageSchema:()=>Ja,pageTypes:()=>Ne,photoMetadataSchema:()=>qa,photoStripSchema:()=>Fa,positionSchema:()=>Va,propertySchema:()=>Ba,reportingDataSchema:()=>Wa,sflyCanvasSchema:()=>ta,snapCanvasSchema:()=>Ha,spreadSchema:()=>St,spreadServerSchema:()=>ee,states:()=>Xe,statesToCloseWS:()=>ca,statesToReport:()=>la,styles:()=>U,surfaceCategoryNames:()=>ts,textStickerLevels:()=>De,timeoutEventDetail:()=>ia});var Xe=["new","ingesting","submitted","storyboarding","deduplication","image-selection","designing","layouting","embellishing","polishing","ready","timeout","error","cancelled"],ca=["error","timeout","ready","cancelled"],la=["error","timeout"],Ve=a=>!["new","ingesting"].includes(a),we=a=>["new","ingesting","ready","error"].includes(a),Ee=["baby","birthday","default","everyday","family","kids","life-stories","portfolio","school-memories","seasonal-holidays","special-celebrations","sports-and-hobbies","travel","wedding","year-in-review"],U={1005:{slug:"modern-black-sfly"},1101:{slug:"bon-voyage-sfly"},1103:{slug:"fun-in-the-sun-sfly"},1201:{slug:"modern-wedding-sfly"},3001:{slug:"digiscrap-sfly"},4034:{slug:"travel-snapshots-sfly"},4035:{slug:"vintage-travel-sfly"},5017:{slug:"natural-neutrals-sfly"},5033:{slug:"chalkboard-chic-sfly"},5079:{slug:"hello-spring-sfly"},5082:{slug:"familygram-sfly"},5085:{slug:"best-day-ever-sfly"},5091:{slug:"little-love-sfly"},5118:{slug:"a-year-in-color-sfly"},5120:{slug:"milestone-anniversaries-sfly"},5121:{slug:"the-travel-bug-sfly"},5122:{slug:"modern-white-sfly"},5127:{slug:"outdoor-wedding-sfly"},5134:{slug:"classic-wedding-sfly"},5138:{slug:"kraft-pop-sfly"},5142:{slug:"simply-black-sfly"},5144:{slug:"autumn-memories-sfly"},5146:{slug:"everyday-sentiments-sfly"},5149:{slug:"everyday-happiness-sfly"},5150:{slug:"its-a-girl-thing-sfly"},5155:{slug:"made-with-love-sfly"},5157:{slug:"high-school-memories-sfly"},5161:{slug:"rustic-wedding-sfly"},5165:{slug:"life-is-grand-sfly"},5167:{slug:"adventure-awaits-sfly"},5168:{slug:"disney-adventure-sfly"},5171:{slug:"world-travel-sfly"},5174:{slug:"hello-summer-sfly"},5183:{slug:"everything-sports-sfly"},5188:{slug:"everyday-watercolor-sfly"},5189:{slug:"holiday-memories-sfly"},5213:{slug:"love-and-thanks-sfly"},5218:{slug:"babys-first-year-sfly"},5219:{slug:"usa-travel-sfly"},5220:{slug:"vintage-wedding-sfly"},5226:{slug:"love-you-because-sfly"},5228:{slug:"reunion-sfly"},5238:{slug:"whimsy-chalkboard-sfly"},5242:{slug:"modern-indigo-sfly"},5250:{slug:"family-yearbook-sfly"},5255:{slug:"elegant-wedding-sfly"},5258:{slug:"family-vacation-sfly"},5259:{slug:"beach-travel-sfly"},5261:{slug:"sparkle-and-shine-sfly"},5262:{slug:"welcome-baby-sfly"},5265:{slug:"vivid-watercolor-sfly"},5266:{slug:"what-i-love-about-you-sfly"},5272:{slug:"love-grows-sfly"},5274:{slug:"painted-seasons-sfly"},5278:{slug:"vintage-disney-sfly"},5292:{slug:"modern-grey-sfly"},5297:{slug:"modern-love-story-sfly"},5299:{slug:"modern-travel-sfly"},5304:{slug:"beach-wedding-sfly"},5305:{slug:"rustic-farmhouse-sfly"},5308:{slug:"tropical-travel-sfly"},6e3:{slug:"travel-abroad-sfly"},6001:{slug:"everyday-rustic-sfly"},6002:{slug:"simply-modern-sfly"},6003:{slug:"modern-baby-sfly"},6004:{slug:"modern-photo-album-sfly"},6005:{slug:"travel-adventures-sfly"},6006:{slug:"watercolor-year-in-review-sfly"},6007:{slug:"beach-bliss-sfly"},6008:{slug:"simply-gray-sfly"},6009:{slug:"family-favorites-by-lure-design-sfly"},6010:{slug:"travel-gallery-sfly"},6011:{slug:"our-wedding-day-sfly"},6012:{slug:"chic-celebrations-by-float-paperie-sfly"},6013:{slug:"simply-bold-type-sfly"},6014:{slug:"colorful-florals-by-potts-design-sfly"},6015:{slug:"softly-rustic-sfly"},6016:{slug:"ombre-watercolor-sfly"},6017:{slug:"forever-love-by-with-merriment-sfly"},6018:{slug:"colorful-memories-by-britt-bass-sfly"},6019:{slug:"celebrate-family-by-float-paperie-sfly"},6020:{slug:"disney-family-adventures-sfly"},6021:{slug:"everyday-neutrals-sfly"},6022:{slug:"colorful-childhood-sfly"},6023:{slug:"everyday-indigo-sfly"},6024:{slug:"shimmer-and-shine-sfly"},6025:{slug:"summertime-fun-sfly"},6026:{slug:"pet-lover-sfly"},6027:{slug:"modern-wedding-story-sfly"},6028:{slug:"family-blessings-by-potts-design-sfly"},6030:{slug:"outdoor-adventures-by-sarah-hawkins-designs-sfly"},6031:{slug:"travel-memories-sfly"},6032:{slug:"tropical-travels-sfly"},6033:{slug:"everyday-chalkboard-by-potts-design-sfly"},6034:{slug:"classic-disney-sfly"},6035:{slug:"cheerful-color-sfly"},6036:{slug:"colorful-birthday-sfly"},6038:{slug:"classic-baby-sfly"},6039:{slug:"bold-year-in-review-by-float-paperie-sfly"},6040:{slug:"colorfully-fun-sfly"},6041:{slug:"colorful-year-in-review-by-sarah-hawkins-designs-sfly"},6042:{slug:"gilded-wedding-sfly"},6043:{slug:"road-trip-travel-by-sarah-hawkins-designs-sfly"},6044:{slug:"rustic-gilded-wedding-sfly"},6045:{slug:"elegantly-scripted-year-in-review-sfly"},6047:{slug:"2020-what-a-year-sfly"},6057:{slug:"best-mom-ever-sfly"},6052:{slug:"celebration-of-life-by-sarah-hawkins-designs-sfly"},6054:{slug:"colorful-school-days-by-float-paperie-sfly"},6051:{slug:"love-is-all-we-need-sfly"},6058:{slug:"graduation-celebration-sfly"},6056:{slug:"our-wedding-day-guestbook-sfly"},6055:{slug:"muted-everyday-abstract-sfly"},6046:{slug:"winter-memories-by-sarah-hawkins-design-sfly"},6053:{slug:"best-dad-ever-sfly"},6050:{slug:"watercolor-greenery-by-sarah-hawkins-designs-sfly"},6063:{slug:"watercolor-floral-wedding-by-kim-thoa-sfly"},6060:{slug:"watercolor-baby-girl-sfly"},6059:{slug:"watercolor-baby-boy-sfly"},6048:{slug:"simple-elegant-wedding-sfly"},6049:{slug:"gilded-wedding-guestbook-sfly"},6037:{slug:"everyday-fairytale-by-jenny-romanski-sfly"},6061:{slug:"best-grandparents-ever-sfly"},6068:{slug:"winter-getaway-sfly"},6067:{slug:"national-parks-travel-by-eiman-design-co-sfly"},6065:{slug:"go-sports-by-lure-design-sfly"},6066:{slug:"elegant-wedding-greenery-by-kim-thoa-sfly"},6064:{slug:"boho-travel-by-umaiana-studio-sfly"},6071:{slug:"modern-dark-neutrals-sfly"},6072:{slug:"modern-light-neutrals-sfly"},6073:{slug:"modern-celebrations-sfly"},6074:{slug:"bright-and-bold-kids-year-in-review-by-sarah-hawkins-designs-sfly"},6085:{slug:"classic-school-yearbook-sfly"},6084:{slug:"colorful-elementary-school-yearbook-sfly"},5402:{slug:"everyday-recipes-by-slightly-stationery-sfly"},6083:{slug:"school-days-yearbook-sfly"},6082:{slug:"the-story-of-me-sfly"},6086:{slug:"whimsical-recipes-by-slightly-stationery-sfly"},6101:{slug:"babys-first-sfly"},6103:{slug:"classic-recipes-sfly"},6104:{slug:"elevated-rustic-sfly"},6105:{slug:"boho-summer-sfly"},6116:{slug:"boho-baby-sfly"},6117:{slug:"simply-gallery-sfly"},6118:{slug:"this-is-love-sfly"},6120:{slug:"wedding-photo-album-sfly"},6121:{slug:"watercolorwashes-sfly"},6124:{slug:"graduation-photo-album-sfly"},6125:{slug:"modern-year-in-review-photo-album-sfly"},6126:{slug:"black-white-photo-album-sfly"},6132:{slug:"travel-journal-sfly"},6133:{slug:"rustic-gallery-sfly"},6137:{slug:"summer-adventures-sfly"},6141:{slug:"heirloom-moments-sfly"},6144:{slug:"seasonal-year-in-review-sfly"},6143:{slug:"wanderlust-gallery-sfly"},6146:{slug:"wedding-elopement-gallery-sfly"},6148:{slug:"love-wins-sfly"},6151:{slug:"adventures-in-mexico-sfly"},6152:{slug:"generations-of-love-sfly"},6153:{slug:"cheerful-patterns-sfly"},6062:{slug:"create-your-own-sfly"},6075:{slug:"together-again-sfly"},6078:{slug:"everyday-boho-by-umaiana-studio-sfly"},6089:{slug:"colorful-gradients-sfly"},6096:{slug:"simply-scrapbook-sfly"},6097:{slug:"boho-wedding-sfly"},6098:{slug:"black-and-white-rustic-sfly"},6099:{slug:"bright-color-pop-sfly"},6159:{slug:"grateful-for-you-sfly"},6156:{slug:"europe-mementos-sfly"},6164:{slug:"disney-princess-sfly"},6165:{slug:"disneys-simply-mickey-sfly"},6166:{slug:"disney-mickey-and-friends-sfly"},6169:{slug:"through-the-years-sfly"},6172:{slug:"modern-editorial-moments-sfly"},be5f79d7525f4717844db77a2f1b5e50:{slug:"abstract-baby-first-year-snap"},"519bf5f2b6734103a9a359469be4961b":{slug:"album-snap"},"029a2ebd65b448bf93753c813b7b7363":{slug:"all-about-love-snap"},"16d0d436594b4171bd9688876a85c9c1":{slug:"alphabet-book-snap"},"5b95e1d678584558b2c3397ab996da7b":{slug:"always-and-forever-snap"},a2c088e32541429ba8e5e15d09991264:{slug:"art-of-travel-snap"},"0ddec2b965094c8ea03d669e771ff1a6":{slug:"autumn-snapshots-snap"},"339699fedd3743f69c5b05587fbfd41a":{slug:"baby-boy-first-year-snap"},"091f9a6a83c349b2a9732177d89f8664":{slug:"baby-girl-first-year-snap"},e768ec11406545809ca9598be3bda88c:{slug:"best-dad-ever-snap"},"0c55a3eb5cc6414c9f2570886132d331":{slug:"best-year-ever-snap"},"9c49df50d76b4789834ca7abaabe2bc6":{slug:"bold-shapes-snap"},fd7cf7c4dc244705ad391334d76f7229:{slug:"bold-type-snap"},"363ceab4906b47a09dd287f53dc1d30f":{slug:"botanicals-snap"},e47017576d0e451180ff4591d2aee2fa:{slug:"celebrating-grandma-snap"},d9743da5f46843aab84b1f90ff776ee0:{slug:"celebrating-mum-snap"},"13039c15c81b4e50af5e39cd99f4e274":{slug:"chalkboard-snap"},"0c98757783874104a488a1a88747344d":{slug:"childs-yearbook-snap"},"5b0d80d6ca164919b7ee558c0bc2537b":{slug:"classic-fathers-snap"},eb734aa7c87a4db1ac9695e935f13489:{slug:"colour-block-rainbow-snap"},"7ed9132a96484ed2b200cf30e73cf049":{slug:"contemporary-travel-snap"},"3e15106389764a3cb2b6a6c29c065993":{slug:"contemporary-wedding-snap"},"47f9e28d811842a5870c74bb4c6b3608":{slug:"design-your-own-snap"},bef3d3bc49f3476aa6f39ad073294a04:{slug:"destination-stamps-snap"},"496138703d5346bd9678a2fa487b54fd":{slug:"dip-dye-snap"},"303773eee9934e8ba9f676b339c84d39":{slug:"earth-tones-snap"},"02c52e4cdccd40b0b99cf2215a6b8fe1":{slug:"elegant-florals-snap"},c59f05e866344332b2953199fd2972fa:{slug:"everyday-happiness-snap"},"5a2d025aaa3746b2b047daa6206ba8ad":{slug:"family-chalkboard-snap"},"1c8784e76020435d88ddab7bc8d72cae":{slug:"family-farmhouse-snap"},"1735277701d6483e9934074f25053f3a":{slug:"family-memories-snap"},"9c35a7f890204c38adb4255571377114":{slug:"family-yearbook-snap"},"9c946c20f0dc45adb3f85735690f3395":{slug:"favourite-things-snap"},c216373996d945c186cc6db5a53e10b1:{slug:"framed-full-photo-snap"},"6f7cd5c4e4e247f2bdf7c44ace0fdad5":{slug:"fresh-cookbook-snap"},"7eae47a7cbd743d4a47ca94f7a6b87a7":{slug:"full-and-multi-square-photo-snap"},ac7a649cbd27433c9d0b405f34ff29f5:{slug:"full-photo-snap"},"3aa989376bc5414eb2a35f2cb930f57c":{slug:"full-photo-snap"},d86767aacb4f464892702ed3ffac1a98:{slug:"fun-dots-snap"},c5d1654a989d4f2f87594e486239e77b:{slug:"geometric-lines-snap"},"73e54769af5f4943a8403c6a5e38f5fb":{slug:"golden-graduation-snap"},"7d15aef8b54d41ee82a99d327d571020":{slug:"graduation-memories-snap"},"46594aace0ca42b1bdd086d1b8ac0ad4":{slug:"guest-book-snap"},"77c78fbe2b4b4c7fb37e34a9515912d2":{slug:"hearts-for-mum-snap"},"659893fcc6c24fef9ea1a3a8ccf2539e":{slug:"hello-baby-snap"},"0f1182fcc18c428fb7c3d80c5a637c3b":{slug:"hello-baby-boy-snap"},"54b7a8ca59774060835fdd48653dba9a":{slug:"hello-baby-girl-snap"},"2d56caccc29a40b5bd16334937de0083":{slug:"i-love-my-cat-snap"},"3c12993b18ff473fa6fc7f695bd64180":{slug:"i-love-my-dog-snap"},c4393a1da2e54ca4ab9a3ec0aeb682e4:{slug:"lets-celebrate-snap"},ee9fd665523c41078a65c5389896d0ab:{slug:"love-lives-here-snap"},b84d0171dbb748e1ab2fb535fd318830:{slug:"love-story-snap"},"4d61b18d992c4d8eb33a331e4201ae05":{slug:"magical-memories-snap"},bdbe9158b33343c6ae11217fde9c8a57:{slug:"milestone-memories-snap"},"790a78454af94287b2a84c2324d6956e":{slug:"modern-graduation-snap"},"4211083b4bad4fee87e04dd65e5fed5d":{slug:"modern-highlights-snap"},"47bb41bb9e174657aa0c48ec140ed2c8":{slug:"modern-rustic-snap"},bac69bcc341c445d9c5c81f04231c685:{slug:"my-family-snap"},"2d561db2b849457f8f830c2e977ced6c":{slug:"my-graduation-snap"},e2727f32f9e248a3a7fd02f50cf493ab:{slug:"natural-blues-snap"},"85005f9b9c1c4a4485508c52465b7110":{slug:"nautical-summer-snap"},df1eded2d6e24c81a9e9bd66567b39f0:{slug:"organic-patterns-snap"},bfdc9b325b1a4471a948eccb7c76fd2e:{slug:"organic-shapes-snap"},"7cb42c74e4704c08a51f0930703fff34":{slug:"our-wedding-guests-snap"},c88a62c1e3584591b278fe0ccfe3b02b:{slug:"over-the-moon-snap"},"2a682e5b38d64f77b7c1b6c0a8a06670":{slug:"painterly-patterns-snap"},"5eddabc29f704c66ba03deff870f2c18":{slug:"precious-experiences-snap"},"18f048f0a07f40c09495fdc3830f7228":{slug:"reflections-on-our-year-snap"},f2fd5fd83bbb4e9ebf3af33ba4589561:{slug:"roadtrip-snap"},"31ed7e06afb347f2a302ba35267c8a0a":{slug:"rustic-chic-snap"},"17e8062b9ed749ba8428cbb3924e719d":{slug:"rustic-family-snapshots-snap"},"7573b1a594e8405295adfcf145c5322a":{slug:"serene-memories-snap"},acc3ac3b7e724c288a849b471616e373:{slug:"simple-snap"},ddb203e3ae0443209ada75135e13a63e:{slug:"simple-family-moments-snap"},bdee0a45e5144156b88621238cd31bbe:{slug:"simply-love-snap"},dc0d15f9aa474bd89c49e6da49bb3cc5:{slug:"sketched-botanicals-snap"},"55cebda93e1c4f52b07d824a57f8677b":{slug:"smitten-snap"},"2172f706eedf4c36a3fba10a0fe5448d":{slug:"snow-days-snap"},"0964a6d8e0234df7ad7df8e56c33ff2b":{slug:"solid-brights-snap"},e47b1860677e45909de56915a350a84e:{slug:"studio-snap"},"0b8fcc5f30cb4649bb4d8ea9cf35578c":{slug:"studio-multi-snap"},"2972e73653da4dc5805853e22717f1ee":{slug:"summer-snapshots-snap"},f292a52aff774e698fe26dc61a7a3f71:{slug:"team-spirit-snap"},b9192bf9df6b4984b29f4731b5f0bb63:{slug:"ten-things-i-love-snap"},d2dd8fe6e2e44c78935206323ee89af1:{slug:"travel-maps-snap"},"61f74eec39ff425b85e4f1c7e9e15ef6":{slug:"travel-memories-snap"},"148b777f385c4df2bc1b4900a4208e82":{slug:"travel-stamps-snap"},"77550e4c36b34454bac2ae9c4d9d2bd1":{slug:"tropical-beach-escape-snap"},"6aac0d2309744e9ea8fd4621f8213dbd":{slug:"unfurgettable-kitty-snap"},f5ef0aaddd294a0ba37ebc76012858ff:{slug:"vibrant-memories-snap"},"73966e2885a544ed9ba8e0a314a6528c":{slug:"vintage-birthday-memories-snap"},"33242c4285024ccfafc57d72a7292ea9":{slug:"warm-neutrals-snap"},"605f06522caa449ba93b7c5fa4d8e54b":{slug:"warmest-memories-snap"},c154e4664672441fa640f1ddff883db1:{slug:"watercolour-memories-snap"},"86024d3f1def489495cc7525d8232bea":{slug:"watercolour-sketchbook-snap"},f52d1dd24f9c49ae82d8f70449fe40b7:{slug:"watercolour-wonders-snap"},"1cbbd20a3a4542f38d2f9932016c4584":{slug:"watercolours-snap"},fdf4b31ea3434b03a5c3ddaab1579084:{slug:"wedding-studio-snap"},"1b104c3a036e4825bd60a5c7ceac4e66":{slug:"winter-magic-snap"},"03f332e3b2b947ebae73b67a9a22b6f4":{slug:"winter-sparkle-snap"},"97f70f6cdb5244a08d45772cccfa2788":{slug:"year-of-memories-snap"},d8618710d59c45d2811cee65ae803e4c:{slug:"abstract-baby-first-year-snap"},"3e4db176ff6641f494775b004b16b933":{slug:"abstract-baby-first-year-snap"},"1d1036bfafd24aee8b3e31b9ed4521b5":{slug:"abstract-baby-first-year-snap"},"09cbe8ca16234005a7faac2ab2b3b119":{slug:"abstract-baby-first-year-snap"},"71042a793e1347ef93c81fe1d872be97":{slug:"abstract-baby-first-year-snap"},"6b7caac7a564427b9898c33278de541b":{slug:"abstract-baby-first-year-snap"},"9be193ec0e554935ab9dc52bd47ffd5f":{slug:"abstract-baby-first-year-snap"},"25bb8032f29847ee8386927b6d3ce10f":{slug:"abstract-baby-first-year-snap"},d5ac5975bf114759b7627e24f1ed6a33:{slug:"abstract-baby-first-year-snap"},c44d040ac06c434eb3e868a8770af89d:{slug:"abstract-baby-first-year-snap"},"4f68e07bf508409eb4a3c58a48212cee":{slug:"abstract-baby-first-year-snap"},"599aab1fcdf74df2a9a8d0f75ec5f2c1":{slug:"abstract-baby-first-year-snap"},d289f646e6c74282932079eb4a75b619:{slug:"album-snap"},"5fcbbd8d3e464fd0a4f1f5f042b6968c":{slug:"album-snap"},fda9ef599f1a4bb0bb17d9e704894416:{slug:"album-snap"},"22ade0d0f2fc423a9477bb76982032dd":{slug:"album-snap"},dc56379c81004aca9ed16aa0295a690c:{slug:"album-snap"},"04a4082ba6054096bfa37d618c9ebf5f":{slug:"album-snap"},"8accebbd1039472c995f5174b01b0d30":{slug:"album-snap"},"706dba28ab4d4971a0d6b5ba475f769e":{slug:"album-snap"},e8535cb73b664e8493a680b7d1b3e08f:{slug:"album-snap"},"32212484831f44b0b47df23279fde097":{slug:"album-snap"},bc71c97d4dbc4cd684e71d5a999548e4:{slug:"all-about-love-snap"},"17c124ce332b453ebe2b53b866ebcb0e":{slug:"all-about-love-snap"},"403ae964d47e4ddba131c9aa64f68ee9":{slug:"all-about-love-snap"},ae06dcab90064aabb3ad0e266bf0abb6:{slug:"all-about-love-snap"},d6013625c78248d2bcf367753d52c7b2:{slug:"all-about-love-snap"},b3c8b45eb5b1493c8429ad2e9829c037:{slug:"all-about-love-snap"},eda3a20b960648bf970cbddf69e329d8:{slug:"all-about-love-snap"},bd6633d9f79c4bdaa4b95ca795e93f64:{slug:"all-about-love-snap"},"5952364fb8194bc8811942b7dd4d584d":{slug:"alphabet-book-snap"},"5ece93e25aa8462c8fbbd2835f719f07":{slug:"alphabet-book-snap"},"6fcaaa1a29524ef6a74832255ae67048":{slug:"always-and-forever-snap"},"777352bd7ea44848bad1ad8c0e6c0b26":{slug:"always-and-forever-snap"},"3f293313e5e14f3a8e93854843f13d75":{slug:"always-and-forever-snap"},"691427c3017e48739d2118d3dbc858ff":{slug:"always-and-forever-snap"},"2e7de9b37bb44ba19fc0868f60048949":{slug:"always-and-forever-snap"},"02e67ce8933e45ceb3d0a91702a68879":{slug:"always-and-forever-snap"},a527e36034164eadbb6884f4d75c1e5b:{slug:"art-of-travel-snap"},"867b5b4beeaf44ccb44e91761a90dd29":{slug:"art-of-travel-snap"},e87d96f500fe47ffadff1768f3cac989:{slug:"art-of-travel-snap"},"3702b9ad1eab4f7cb81ded40dcd93680":{slug:"art-of-travel-snap"},da37404894cd4bf6a57b9b1a2e855f62:{slug:"art-of-travel-snap"},a5b2fdb9069642ffbb9f06ab7bd56fda:{slug:"art-of-travel-snap"},"61f962cd6cc54f04b111289bd314df9a":{slug:"art-of-travel-snap"},"999650d2fb46451ab1f3b0bb7cdd7bcb":{slug:"art-of-travel-snap"},"006dcf3157fd4d3f82944fa477dbf292":{slug:"art-of-travel-snap"},"993573c56eb744ffaf64e2353c3e6532":{slug:"art-of-travel-snap"},"3577688653214b26ba5b5897aa5cd496":{slug:"autumn-snapshots-snap"},e0ced5a77acf4749bf8db55a88c67ea0:{slug:"autumn-snapshots-snap"},"4620a0d0f89144ad85a526f311a3ee87":{slug:"autumn-snapshots-snap"},"0949fbf7731a4e7a8450c90bad79ffcc":{slug:"autumn-snapshots-snap"},f541a285aeac4286a2a6778fa780d490:{slug:"autumn-snapshots-snap"},"6ac99ef27e5041fda9648ec4454bc3b0":{slug:"autumn-snapshots-snap"},"68abf3a628e6451994cd6e8db74cb486":{slug:"autumn-snapshots-snap"},f000dd41ab224cb49ee2f5415c0c598d:{slug:"baby-boy-first-year-snap"},"444dcf1828a54aaf82d66e6ec94efadc":{slug:"baby-boy-first-year-snap"},f2b6baec4ec44cae8df3807c9e482079:{slug:"baby-boy-first-year-snap"},"7ca76b1a53454617ab0d9785202fa7bf":{slug:"baby-boy-first-year-snap"},"9d058f67781f423a95325f50af37f479":{slug:"baby-boy-first-year-snap"},f01c4bc4a0964ae3b6742e546c1bf418:{slug:"baby-boy-first-year-snap"},"257e1a85e703422497a1c76d5aae03d4":{slug:"baby-boy-first-year-snap"},"937ac94a0bbe48888457bb9728f5c949":{slug:"baby-boy-first-year-snap"},bd4a95fd375e4f97a5c0ea3ce277781c:{slug:"baby-boy-first-year-snap"},"1e460a2b52814a2fb1b7f19f6a40d5e8":{slug:"baby-girl-first-year-snap"},"5689fb22385649859a233afa19f1190a":{slug:"baby-girl-first-year-snap"},e9beda000a5b41e081b1c818404354b0:{slug:"baby-girl-first-year-snap"},e08237c9ba09409e8f86923fa0d96a1b:{slug:"baby-girl-first-year-snap"},b7a0421ed1d643cb85ed8da22afed937:{slug:"baby-girl-first-year-snap"},"28cad1cc1f0e4e1da2a601788c2b1514":{slug:"baby-girl-first-year-snap"},c27ce14df80d41bf97aa0e4055741785:{slug:"baby-girl-first-year-snap"},"062bb05adbfe4be79498c63bf36253df":{slug:"baby-girl-first-year-snap"},f56b8fde37e9438caeac6b2d7fe1cc53:{slug:"baby-girl-first-year-snap"},"0310dfeac8b84ff79d29c4ac57f89754":{slug:"best-dad-ever-snap"},cdbf73314ce246018972caa6daf2cc79:{slug:"best-dad-ever-snap"},"11df8810e8dc4983b9942e3b943b97fe":{slug:"best-dad-ever-snap"},"38b0254c63884048a147f4878f1674c7":{slug:"best-dad-ever-snap"},"4c56948b78604326beb3b1843feecb72":{slug:"best-dad-ever-snap"},ddd49f4a115c425e9415414e822498d7:{slug:"best-dad-ever-snap"},"099ff6eeb5b74d08b271303afee76aa7":{slug:"best-dad-ever-snap"},f201f44911614a09b8cb0ecc7410c4e1:{slug:"best-dad-ever-snap"},"08646df18df74093aafe29e0274f4f1d":{slug:"best-dad-ever-snap"},"2e181bec37374831a1f51094861dcc51":{slug:"best-dad-ever-snap"},"63c280e153884e77bc828d2e49f32304":{slug:"best-year-ever-snap"},c0904840c7fc4c53bc5dee246a63f410:{slug:"best-year-ever-snap"},"9184a8cc960c48beab44446dea200c57":{slug:"best-year-ever-snap"},"675ea8acb9954a27a01831d730bacfad":{slug:"best-year-ever-snap"},"3eac47ff9b2e474d8f4ba2b43076e750":{slug:"best-year-ever-snap"},"4cdcd33a3cd84aa4a9aae65d342955af":{slug:"best-year-ever-snap"},"5bb078a93db54ebc94708da745d27c70":{slug:"best-year-ever-snap"},"4f57bc6c02f946fb9eaeade9ca4fc0a8":{slug:"bold-shapes-snap"},"2b58940cc733451d90ba6368a6385d3a":{slug:"bold-shapes-snap"},fd725384d2a14dd69e4ae6d79cda893e:{slug:"bold-shapes-snap"},"855091074e594c96b1819036695be0bf":{slug:"bold-shapes-snap"},"0063f97b2eb7400b9c0f8cd9c7db61aa":{slug:"bold-shapes-snap"},"3b4ca2e519f74e2c986d85715466f2ed":{slug:"bold-shapes-snap"},"7acdd2a49fa14246be473f28fc836793":{slug:"bold-shapes-snap"},"7f51cb53929f45c1a2be88ca2d247c0f":{slug:"bold-shapes-snap"},"7925038083794e6ca22b4c9851c5afb8":{slug:"bold-shapes-snap"},"03454aff5efc4dcfa4bc02ce0d414caf":{slug:"bold-type-snap"},"1f32e63dab8a4a098564635d3b5be4a5":{slug:"bold-type-snap"},b26adcb0d4db4a5894be33992d4eb4ca:{slug:"bold-type-snap"},edfa81ad6b3a4626a791be3147fda7c8:{slug:"bold-type-snap"},"548b1035d6234a34b86ba5f889a47566":{slug:"bold-type-snap"},a91ba79aca7c4f28aec96564650880a5:{slug:"bold-type-snap"},"30791ae961a64c50bb55753ecd8d20a9":{slug:"bold-type-snap"},b15beabdbc664024aadaa1e8a67a7768:{slug:"bold-type-snap"},"5aef9185f1e6497a9cb975c48af0926e":{slug:"bold-type-snap"},da21b34efd784cc2a575a931c6cc629c:{slug:"botanicals-snap"},"6ca4504442904fed8e4ae98ccceeeb88":{slug:"botanicals-snap"},a855511b49b0489ab8dfd1aedd9b8dda:{slug:"botanicals-snap"},"708191c0df624389b62af70d7f0b2d9f":{slug:"botanicals-snap"},"144027d826ca4591b44ac89956d59116":{slug:"botanicals-snap"},"6987be46154a40918fd2ba9e00a555ee":{slug:"botanicals-snap"},a203e0b6d36043bfa928f7dfb26bd40c:{slug:"botanicals-snap"},"84da6703951041cb9787c24bb4adf1ea":{slug:"botanicals-snap"},"834fa48a145f4eceaca8fc4cdb68ceec":{slug:"botanicals-snap"},"73f04075e87e4e67a06a1dd503e39dad":{slug:"celebrating-grandma-snap"},b7800d8ca1f948bf94646968e3ae0311:{slug:"celebrating-grandma-snap"},"72870ddbfab64facb3f4eb8cb4c92d39":{slug:"celebrating-grandma-snap"},"104da7f26c9f4ad9a8a84a9dfd96f55c":{slug:"celebrating-grandma-snap"},ff4df27caf06492196a89fc406901441:{slug:"celebrating-grandma-snap"},"1bc522f3563844168ef54516348f4793":{slug:"celebrating-grandma-snap"},"74c88d7e54594d74960bf2c1993c91da":{slug:"celebrating-grandma-snap"},db9a99e1dd07442fabc7beec70616dbf:{slug:"celebrating-grandma-snap"},"861d20dc5a504e85908f2fe6dfbb1cc4":{slug:"celebrating-grandma-snap"},c5f5a97807f14084af4f3a30d9dc85b5:{slug:"celebrating-mum-snap"},"7dfb310d022e4409b496535091935bc6":{slug:"celebrating-mum-snap"},ad6b14ddede74aba9b61188416d2eff3:{slug:"celebrating-mum-snap"},"7e575d810e7041c0978ae43f24671b1a":{slug:"celebrating-mum-snap"},f367614e77844710aea917ff7adeba5b:{slug:"celebrating-mum-snap"},"87c057ed91d14c1891e59f90626e1dfe":{slug:"celebrating-mum-snap"},"84ccbfb7353d45a18718adf3644b0917":{slug:"chalkboard-snap"},"176e12b28ffa4585a372b341bf09bf78":{slug:"chalkboard-snap"},"0983226333c1415280f11d8d164720d6":{slug:"chalkboard-snap"},"6194626510cb4d5c9469699b20fad80e":{slug:"chalkboard-snap"},"62f8aba5c9504a469557f1158143ea01":{slug:"chalkboard-snap"},"2fb6a3e6be6c4b84bddd206a0634bf1b":{slug:"chalkboard-snap"},d8a48f170c184f4bba372865c75f1811:{slug:"chalkboard-snap"},e111db666f474deb84a7e273a92634fe:{slug:"chalkboard-snap"},"16b5b16abeda4c4090a0f9db9fa6346e":{slug:"chalkboard-snap"},"7d0ecd58ed5b46609919d508512ed4ef":{slug:"chalkboard-snap"},d8e11cfcba454c11b36eae24c11a6edc:{slug:"childs-yearbook-snap"},d9fc0b1c20654fbe9674489aa6bc20bc:{slug:"childs-yearbook-snap"},"4a12f9f9c8004e488e53ecb09ded393e":{slug:"childs-yearbook-snap"},eae9be9657314c128e8a940fa54ae3db:{slug:"childs-yearbook-snap"},a7c51cafc8c5454282c68444b4bb4a56:{slug:"childs-yearbook-snap"},"34dcdf5c7b444a0d942e2b2c4031fbc9":{slug:"childs-yearbook-snap"},b8a7f936d5b5415992e3754ed22b8161:{slug:"childs-yearbook-snap"},"9221748dfc8140dda7ca3836d3b7f193":{slug:"childs-yearbook-snap"},e6ea5d0bed644414b4e84819078dcac2:{slug:"childs-yearbook-snap"},"03d2c99053b542928ad993a1cad39f02":{slug:"childs-yearbook-snap"},b9dc55f8906647bfa878b99353b626b2:{slug:"childs-yearbook-snap"},d1eb624596d64333b6653675b682f8fb:{slug:"childs-yearbook-snap"},f45a34d211844cb9a9294dd8b65104d4:{slug:"classic-fathers-snap"},fc6d6b7083f94e70903eed3a6ff611c6:{slug:"classic-fathers-snap"},d14b565855fd477a830f6382c3fb424b:{slug:"classic-fathers-snap"},b77bb9a63025446a8902d69f570e93e9:{slug:"classic-fathers-snap"},"65d7dab690fd407f9991c25b8e08b8c5":{slug:"classic-fathers-snap"},"26bd992f34be4fb7a0c6ac425d94d336":{slug:"classic-fathers-snap"},a96f60110ae24ea2adf1e587eb4c731f:{slug:"classic-fathers-snap"},"918ee007a7224c5999a56032ea08b8f2":{slug:"classic-fathers-snap"},d97e6b271bf54d07a93413fd56d70ce0:{slug:"classic-fathers-snap"},"0b75ae423a124a0a9ba99c6c00ff321e":{slug:"colour-block-rainbow-snap"},ac06442f9ab140c4a0adc0b0fa0bb0d9:{slug:"contemporary-travel-snap"},"923bbbc2f05846d186ef9489fb856721":{slug:"contemporary-travel-snap"},e6ec5eb5f20b4f6f97c3f98cb09a72a9:{slug:"contemporary-travel-snap"},"4659157417434a70badd17ad17824a2d":{slug:"contemporary-travel-snap"},"5d9092fe6a914c11a80ef7a47565c68c":{slug:"contemporary-travel-snap"},be1d1892325b4210a7a0ca26efae9792:{slug:"contemporary-travel-snap"},"313f72c4432b4bdfbe4b44d52e3571c4":{slug:"contemporary-travel-snap"},"49b25e12592f45a496626123ff67350a":{slug:"contemporary-travel-snap"},a9b445371d864023b173918513fd9c83:{slug:"contemporary-travel-snap"},"06169606f258416fb68b71432a05b578":{slug:"contemporary-travel-snap"},e28bf3d522a84df3970f4b7e19a15192:{slug:"contemporary-wedding-snap"},b19ffdb53126440cbb05aa7fde6b9915:{slug:"contemporary-wedding-snap"},e5494bb5fa4041619a68f88924603356:{slug:"contemporary-wedding-snap"},"76f4926f0db84038a916688f7c5a3e1d":{slug:"contemporary-wedding-snap"},a670059679fe4632be3572008ca02999:{slug:"contemporary-wedding-snap"},a9a4df539f04484cb0e4cf53fc7f6773:{slug:"contemporary-wedding-snap"},e3373f8bb6b24a2da3d3873a2f526f57:{slug:"contemporary-wedding-snap"},f74c4ac6384649f1ad7eed8c0adc4b06:{slug:"contemporary-wedding-snap"},"043096169dae483e8eaed5b6ccb5bfb2":{slug:"contemporary-wedding-snap"},c0b6cebfb75c4e288ac9deadbd176838:{slug:"contemporary-wedding-snap"},"407014ebdc8a4441b70d140187e12768":{slug:"contemporary-wedding-snap"},"30c63fdaf8fb48fb8d466c2a8a633010":{slug:"contemporary-wedding-snap"},"615c4233356f47a59c637d7c68a44e29":{slug:"contemporary-wedding-snap"},"514c648ece3641689c705c19808f5325":{slug:"contemporary-wedding-snap"},e1c9e518c9c847d1baa477265f4aca25:{slug:"design-your-own-snap"},"72473e25f4334637882c8a55b8c94e06":{slug:"design-your-own-snap"},ee10ba6be1ee48daa52620e4fc67b90a:{slug:"design-your-own-snap"},"853fb5de97e746e58685994a372a3439":{slug:"design-your-own-snap"},e3730c2033114323b46029efd3bc6950:{slug:"design-your-own-snap"},"8b9fb43c321a42218ad1e7dc3cf6be4a":{slug:"design-your-own-snap"},"06fab39f66164671872eb7d58630ba57":{slug:"design-your-own-snap"},"7a963e61f3aa4344861f0a5558cd5ea9":{slug:"design-your-own-snap"},"8ede33ede49546e2bf6f9fb3b1019832":{slug:"design-your-own-snap"},"8f2eb0910f404f9e8bc63360887694f0":{slug:"design-your-own-snap"},"96de60040f334084851b1ae80e7d6678":{slug:"design-your-own-snap"},"625f126cba534913a4616a268dcd905b":{slug:"design-your-own-snap"},"40072bfc6099408d8cc678bc37059354":{slug:"design-your-own-snap"},"5271346d5b8f47a5b05d5a408c53e756":{slug:"design-your-own-snap"},"540115527d114c6d9794c3e1cd351fc6":{slug:"design-your-own-snap"},"610519510c344e3fb3394619ff477e1a":{slug:"design-your-own-snap"},bcba5ca493dc4f2f80bdbc46856aad8c:{slug:"design-your-own-snap"},bdc76012a58f48178976f0ff0705d0ef:{slug:"design-your-own-snap"},c799fb3a9c5d4548b637cf8d6b7daed5:{slug:"design-your-own-snap"},c3378bf1009149498f15e03932f3009b:{slug:"design-your-own-snap"},e150710ad34c4482aada9d28feed4dd6:{slug:"design-your-own-snap"},ecf04c24deff43f5843ff0d44e6a46fb:{slug:"design-your-own-snap"},ee2f82f789e6493ebb5288deb6fb58b9:{slug:"design-your-own-snap"},eed1dc1510934cd3aa6ac9395d9c2d20:{slug:"design-your-own-snap"},"810fd378737c4cbe853b6e5f5933239d":{slug:"destination-stamps-snap"},"69bdf07bd9554b12b59026bc82f0e4c0":{slug:"destination-stamps-snap"},"5ddb2dd9c20a498cb928cf22113bcabe":{slug:"destination-stamps-snap"},b31a85ca57cd48208c4559f4f71eb62b:{slug:"destination-stamps-snap"},"5f8b34a95786436c9de7ea4931477fe1":{slug:"destination-stamps-snap"},"1956923c89044824908eb5a948e8c84c":{slug:"destination-stamps-snap"},"18f48e4bed5f4400ac2f1909ab3b4b3f":{slug:"destination-stamps-snap"},d23111685b104d38b57201e2e973e93c:{slug:"destination-stamps-snap"},"9a32c18b8054434f84a40e0d9f5daeb3":{slug:"destination-stamps-snap"},ca5121282c5b465aa02c680328f761b9:{slug:"dip-dye-snap"},"8765d3df18974c248de711730fca1a5e":{slug:"dip-dye-snap"},e0375ecd2b304355bd152d09f2b14488:{slug:"dip-dye-snap"},"8ed6e382b6734227b5320edbf1fd92cd":{slug:"dip-dye-snap"},"5274730ae9cb411aae67891f04b3fce1":{slug:"dip-dye-snap"},b7eede025e194e6e968e68e1032c5ffe:{slug:"dip-dye-snap"},"6dbf8652db8c499999079e66829b9898":{slug:"dip-dye-snap"},"3ee4f91f97f54708820742bd9bf868b9":{slug:"dip-dye-snap"},a4628e12cfa84b1d8ac12f4aeb87564b:{slug:"dip-dye-snap"},"0c79ef7b76d14074865826094a112892":{slug:"earth-tones-snap"},"2397669582b54eeeb8afcafc1066fac8":{slug:"earth-tones-snap"},"7642ddfd556a4beeb43693220fcca373":{slug:"earth-tones-snap"},"32b7c399542d4dc3908151ec7bc2f110":{slug:"earth-tones-snap"},ade106eef89642479bf57263468848d2:{slug:"earth-tones-snap"},"3f9a45c28d52417d875ce6ecf61b551d":{slug:"earth-tones-snap"},c2fe4aee37b84d9abd8e5be21738c649:{slug:"earth-tones-snap"},d765d1cc2c0b4e038a50a72171515b08:{slug:"earth-tones-snap"},bdf2f0f3ebab4284bdebf3f761f5e930:{slug:"earth-tones-snap"},"7f950eed20eb4191901f1499051a67f7":{slug:"earth-tones-snap"},db8fbd48d76445bcbf31b7d47081e474:{slug:"earth-tones-snap"},"8cef29dc84a64c248cb0fbd6953be87d":{slug:"earth-tones-snap"},eab05aa81c25435291e1e4362a2000df:{slug:"elegant-florals-snap"},"42c09457a39240428611e220a3f9e523":{slug:"elegant-florals-snap"},"5f28ec603c074ea8b6fcb5985139df58":{slug:"elegant-florals-snap"},"2c0c3b3258214d189aec0489e02707ee":{slug:"elegant-florals-snap"},a815b122db1b49e49c41e2028b930c83:{slug:"elegant-florals-snap"},a43074a3a54849a7833611bedb6d7917:{slug:"elegant-florals-snap"},"0b0f5ecd2b394de3a430bbdfe485a2e9":{slug:"elegant-florals-snap"},"385d2122883e4e97825843a59293fcc7":{slug:"elegant-florals-snap"},cdcaeaf05b004ae3a1f6cb3c9294e531:{slug:"elegant-florals-snap"},"8fbbf99e29aa422e862aaecafaf9e974":{slug:"elegant-florals-snap"},"2e82312b5de04ea4be0f6569963150b7":{slug:"elegant-florals-snap"},"5d02a441c7df4316a3719c12fa12d368":{slug:"elegant-florals-snap"},ad9e17391ef441aa8b7afdc2331f0ab4:{slug:"everyday-happiness-snap"},"5c52d792fe3e481eab27162bd5ae9f29":{slug:"everyday-happiness-snap"},"53f9af5f97e74e30beda3dd2f5e7f29d":{slug:"everyday-happiness-snap"},"1834fea60c074cc38da0489413ed63fe":{slug:"everyday-happiness-snap"},"70fb7f28e656450ea66c9e260c364dfc":{slug:"everyday-happiness-snap"},"9764dd4e73a04b5aa8536b931fc060b1":{slug:"everyday-happiness-snap"},efbdb3cc72044dc9b3b431acb7511898:{slug:"everyday-happiness-snap"},f605856f67e2492c9fd572682d88c9e9:{slug:"everyday-happiness-snap"},"17253aa5e7fe42c2a97170bbd3fdfc04":{slug:"family-chalkboard-snap"},"3d20e81c6d9c425b947969c122117853":{slug:"family-chalkboard-snap"},cf4927c0b2954b76abae612c52cb977c:{slug:"family-chalkboard-snap"},"714b89834a7f4b54a9404c20803e7f8e":{slug:"family-chalkboard-snap"},df490f9da1bd435b936935051219a628:{slug:"family-chalkboard-snap"},edc00c59a8714568b42a3287beebb10f:{slug:"family-chalkboard-snap"},"198dee446209437d9c34f110b7c7b2ef":{slug:"family-chalkboard-snap"},a03ea2dcc3cd472f9bb43383400f4f2b:{slug:"family-chalkboard-snap"},"698ddc3ece95415e86929932ffa49549":{slug:"family-chalkboard-snap"},aa0783e8f2fc47b5ada394087a56711e:{slug:"family-farmhouse-snap"},a095cfe6bb9b4f8190a8f77d0ef290ba:{slug:"family-farmhouse-snap"},"4cccdb5ec17948d68057ca8d059a6ee1":{slug:"family-farmhouse-snap"},d32ce35d73bf48ca87d5342441de80d3:{slug:"family-farmhouse-snap"},"5252a474aa9140f8877baa265de3c404":{slug:"family-farmhouse-snap"},"3ae6cde293f84f3a837e8137aad4b714":{slug:"family-farmhouse-snap"},"864a606f7caf4c29b5b75cab6cdf32a9":{slug:"family-farmhouse-snap"},d2c2f48dcbd0457c9ecba71d5619b1db:{slug:"family-farmhouse-snap"},a98dc3fb0b7442b98f8a5346b0ed550d:{slug:"family-farmhouse-snap"},c8f203b6adc04ac9a55db348d83f2195:{slug:"family-memories-snap"},e4e5e0b86f984abb96786761f2d7ba47:{slug:"family-memories-snap"},"1f8e85e660354c9585c540bc3a645978":{slug:"family-memories-snap"},bb4d670cf2ff41cf972794474436a65a:{slug:"family-memories-snap"},a15e2e1c005a4d0e8cc17ea55f7c2c22:{slug:"family-memories-snap"},ef8a0fcbf3e44aff94ecc1d43142996c:{slug:"family-memories-snap"},a364e0f1a94e40b3a61521ae3cac1f45:{slug:"family-memories-snap"},"89223b5fd0ee4501a6cbd658c39d3fe4":{slug:"family-memories-snap"},"845db67f54974d4fa30a675eaf692bc9":{slug:"family-memories-snap"},"508bfbef3d9b44c186002443dd031a4a":{slug:"family-memories-snap"},d4914552d0014094a30d0a835a5ed0fc:{slug:"family-memories-snap"},"50524531d75d4b35ac337e9aa1e95ec6":{slug:"family-memories-snap"},"7ed44e0ce2e940efb18650fae96a9533":{slug:"family-yearbook-snap"},eac17b01748e4c8e81a96e7843db6ab0:{slug:"family-yearbook-snap"},"371d7c7a8cca44f18c28dfc8da18bdf8":{slug:"family-yearbook-snap"},"6970cdef7f8e4d72ae566bcf96a9afc4":{slug:"family-yearbook-snap"},e9ebf9f9813147d38bfc5c887903cdcf:{slug:"family-yearbook-snap"},bed1b0b570e8413fbe6f3887b8d59af2:{slug:"family-yearbook-snap"},"11fd2f1a5dd447ebbd8514917cc9fe5a":{slug:"family-yearbook-snap"},b40166c81fcc4f7b986522bf2b9f632f:{slug:"family-yearbook-snap"},b4998915701b47a894d78b3efa7ea800:{slug:"family-yearbook-snap"},e5d824994e4b48af9c7792b3a92fa198:{slug:"family-yearbook-snap"},c7fbc664e64748c3a0e5a49dfd1487cc:{slug:"family-yearbook-snap"},d416ea06203b4a03925065319ec29982:{slug:"family-yearbook-snap"},"8a32a35d17264f848d4fc08e669f0c25":{slug:"favourite-things-snap"},ca3579fef1b742a9919fa2d94efc9f36:{slug:"framed-full-photo-snap"},be103ba64eaf44358c2703ed0d76985c:{slug:"framed-full-photo-snap"},c9c271456d1e48469d5253815446f0de:{slug:"framed-full-photo-snap"},"4c397ff453a240a59152ae4f57aa74e8":{slug:"framed-full-photo-snap"},"82ce30da95414c04ab67269d745620b5":{slug:"framed-full-photo-snap"},"5ec7181234574602b192f1982147613c":{slug:"framed-full-photo-snap"},"39d21433c212457ba822c6107340b30d":{slug:"framed-full-photo-snap"},"0fbf2c88b8094df4b7935f310a7de1bf":{slug:"framed-full-photo-snap"},"6a09a912a50246f19c5547a8ec2a27a4":{slug:"framed-full-photo-snap"},c4a90b2ffb7642ceac365b447deb9108:{slug:"fresh-cookbook-snap"},"0e5e1e627a664f48b6288ce0e9632952":{slug:"fresh-cookbook-snap"},"1bf48cb7a1c74db4a60aca936b0401bd":{slug:"fresh-cookbook-snap"},"19535e8a8bec43f6b7388e7b1b03bbdc":{slug:"fresh-cookbook-snap"},b40d063b81d248418e445935327ac5b6:{slug:"fresh-cookbook-snap"},"633d3bdc4cd544c2aff1b8bbc6e98536":{slug:"fresh-cookbook-snap"},"4031eacefcea4759893ee48db7a71e56":{slug:"fresh-cookbook-snap"},eb5bd03cfd04433aaa8d04e82d575e77:{slug:"fresh-cookbook-snap"},ac06d21a5aaa4b06af0b0de052e1877f:{slug:"fresh-cookbook-snap"},"93909883e9b94b20be6c1bbbc1abac62":{slug:"fresh-cookbook-snap"},ce0da785376e4e9f941f709a1f5c67ed:{slug:"fresh-cookbook-snap"},"495c057f6c1b4a31a3f0b5cc77292c7d":{slug:"fresh-cookbook-snap"},"4da2d8c6378d487a99a147cb8dd224ce":{slug:"full-and-multi-square-photo-snap"},"504bc25ab88b41ea948dc36791a89798":{slug:"full-and-multi-square-photo-snap"},"3eae543714a14428ac663573158b69de":{slug:"full-and-multi-square-photo-snap"},dfd9375dbee74aea8808e387d496f371:{slug:"full-and-multi-square-photo-snap"},"35d52cfb5842485e98ff9e4694358180":{slug:"full-and-multi-square-photo-snap"},"78e2f2573bf94364b3892582456a773d":{slug:"full-and-multi-square-photo-snap"},e417a72ac7204fc09c12dc74806e586a:{slug:"full-and-multi-square-photo-snap"},"902802fbf024444a8f5ce68b6e2be089":{slug:"full-and-multi-square-photo-snap"},"83105d457f8f4a82ae391b90a08a1b03":{slug:"full-and-multi-square-photo-snap"},c992f5ca16c84f4782c4c30f86e462f0:{slug:"full-and-multi-square-photo-snap"},c8cdbb25a0b54a7ea483773d7bea1cd2:{slug:"full-photo-snap"},"19a7c7d2e60f4c7bb1a8bfeabe3008e1":{slug:"full-photo-snap"},"1be5e6743d984887a7846a910ae31df5":{slug:"full-photo-snap"},"2379f6c4f2934a16afad46fce1570e56":{slug:"full-photo-snap"},ba606e12e62f4d01815687f5a66a284c:{slug:"full-photo-snap"},feac4dfe4e514761b4d1b0d12d7ce733:{slug:"full-photo-snap"},"8ce7fa5c4f3f45c2bfff7811143f9502":{slug:"full-photo-snap"},aec35c1178364b5c9f66b893020e98db:{slug:"full-photo-snap"},"9bd3531dd4934886b26dd56edb0a19aa":{slug:"full-photo-snap"},"66d675c7bb414e299a00d112037701c8":{slug:"full-photo-snap"},"60ffcf0bcd9a47f5a13779be34f85c02":{slug:"full-photo-snap"},"2ea0d6675eaf4b2ebb016c4e5dbef90c":{slug:"full-photo-snap"},c8a43f1f3dc849bcb5119421a081acc4:{slug:"full-photo-snap"},"96b7cf69bc674cbf96e14479af98c8f5":{slug:"fun-dots-snap"},"1b4f7bba9b344f2799036cbd60c5e156":{slug:"fun-dots-snap"},"035fde06bdc8409d975980bd72ed8bfd":{slug:"fun-dots-snap"},c77559c85e6a476ab8c38278deddab97:{slug:"fun-dots-snap"},ef87d1af4760493588167f6658e35e68:{slug:"fun-dots-snap"},"9ecb52a7dad044c18eb8421dd7bdc38e":{slug:"fun-dots-snap"},"8c8d4d8a59684eab947d5f12fc37cd09":{slug:"fun-dots-snap"},e85b56e39dae48b88c97cb38d4b7c6fc:{slug:"fun-dots-snap"},a619f234fffc4b159d24391b6362f674:{slug:"fun-dots-snap"},"5303ebd7ffa9460cbaa0f7d5c2e4d000":{slug:"geometric-lines-snap"},b7b7d6c83ee54fa0a38e27b9f59facde:{slug:"geometric-lines-snap"},c303c0b35aff4f9b9c48cd557a2dcf20:{slug:"geometric-lines-snap"},"7765fc73be2e49cf91ce2efff003fcc2":{slug:"geometric-lines-snap"},db84e45fde674ce1950787cb0a165245:{slug:"geometric-lines-snap"},f2bcecce46834dd19d8593a90fd7f7dc:{slug:"geometric-lines-snap"},"846dbd53648048d3a8a0b952c6816310":{slug:"geometric-lines-snap"},"1b7e0448ff4542d8a60359d13c5bb428":{slug:"geometric-lines-snap"},d180a8dbe6b74f9c8e40a0ef292d4d51:{slug:"golden-graduation-snap"},a806bb6ef6c84cbfbb449fb1eb63565b:{slug:"golden-graduation-snap"},"68c3f58c58174739aae5ec4cd1e7f4b8":{slug:"golden-graduation-snap"},b67ddc6f5e874d47b30269182c46bcd3:{slug:"golden-graduation-snap"},d5426c32ec15442cbd691ce3b53162f9:{slug:"golden-graduation-snap"},b3e39362341c4e1780f52897b3195cb0:{slug:"golden-graduation-snap"},b1a8f220c787417e9267a9d668cad92a:{slug:"golden-graduation-snap"},"9570b242215e492db27098367f258420":{slug:"golden-graduation-snap"},e92f04098ed94bd38c9791738e675960:{slug:"graduation-memories-snap"},"14eeb72692644bbb8e1f22477e6585e9":{slug:"graduation-memories-snap"},"96ca524eef9446a98c790ab37e7534ff":{slug:"graduation-memories-snap"},"444c3e6eb3d543d6b2723a87529a0357":{slug:"graduation-memories-snap"},"95f48e77c66241ce91ebe5901016b68a":{slug:"graduation-memories-snap"},"17723072eff64357bc566ba839414bdb":{slug:"graduation-memories-snap"},"1f867da4079c4a2da1a93a69bbd21a56":{slug:"guest-book-snap"},b3ae9275eeca418fab0029e56b4ed67e:{slug:"hearts-for-mum-snap"},"1bedd43270304adcb81701fceedb97f8":{slug:"hearts-for-mum-snap"},afa818ddcad74e2881b9c9bb41a1fe98:{slug:"hearts-for-mum-snap"},"0289f6d5e3c74ae88b6626886958a817":{slug:"hearts-for-mum-snap"},"5d10562fa27846cf801c02bebd49fada":{slug:"hearts-for-mum-snap"},b71699194c274f3b8b23653f2f945be5:{slug:"hearts-for-mum-snap"},"51fca05cc8124b9aaf266f0550f7095d":{slug:"hearts-for-mum-snap"},cb9f2cb7b4a846bf8f7c0fb5304ea968:{slug:"hearts-for-mum-snap"},"64c2a9d64f214ab49896009a96e24085":{slug:"hearts-for-mum-snap"},bb8e7fb26dec4fb4a1bec45f5e4bc89f:{slug:"hello-baby-snap"},"6ecc8afb18354280a48b24c4142d754e":{slug:"hello-baby-snap"},"37992fce2578419a9b2d9e3364ecddc5":{slug:"hello-baby-snap"},"54c2738882e94940b5e3dbed214b2754":{slug:"hello-baby-snap"},"2311675cca1d4476ad82e20e20b681aa":{slug:"hello-baby-snap"},"1f2a21da4cfa48ff98ccb8fc728b03a0":{slug:"hello-baby-snap"},f50d4338df894b6fb0746a57c105685d:{slug:"hello-baby-snap"},"4a998d52ab70465192572ddd3efab61f":{slug:"hello-baby-snap"},"10f6d733c9df402cb887651f966281d3":{slug:"hello-baby-boy-snap"},ecff70a6259442f3a3673d100dca01fd:{slug:"hello-baby-boy-snap"},"60fc14d94fcb4a73999f6bed60a27e6c":{slug:"hello-baby-boy-snap"},"6d0ac81424e84f4f9b350a0e04ddfed5":{slug:"hello-baby-boy-snap"},c52dc6bf2a9640c691925889d5f737ff:{slug:"hello-baby-boy-snap"},"957a392b597142349e1c4bf5b19f0c17":{slug:"hello-baby-boy-snap"},e5b645f71f144d15923b02dee8d3d36d:{slug:"hello-baby-boy-snap"},e2b224c953df40719699ba3324e9e4f8:{slug:"hello-baby-boy-snap"},"1961b47684044db4a85c58282873d528":{slug:"hello-baby-girl-snap"},cf1c9eaf197941a49c5defae45d641bb:{slug:"hello-baby-girl-snap"},"44e15579f5bf47378e38602f7947e2c9":{slug:"hello-baby-girl-snap"},bd3d1b95be584d489b63b8db2775998d:{slug:"hello-baby-girl-snap"},"76710e81a41a43b4b312c183f414355c":{slug:"hello-baby-girl-snap"},cb0c77ecc58f4375978714c8ab673a45:{slug:"hello-baby-girl-snap"},"835c4f4b556a42e8b9a8d6fef5cd3b75":{slug:"hello-baby-girl-snap"},a0a9d5d393274650b9a6065f683ecff2:{slug:"hello-baby-girl-snap"},"2571008c0824467686d6d00db046993a":{slug:"hello-baby-girl-snap"},e708835056e1477f8e95385e7528f663:{slug:"i-love-my-cat-snap"},"684e01e2cd4e4d85b4d122dee8ad9a10":{slug:"i-love-my-cat-snap"},db9e8288046e421daba9132e29287c6b:{slug:"i-love-my-cat-snap"},"0697670e98444aa499ffcd1e2f2919fd":{slug:"i-love-my-cat-snap"},ef2c733bd26240daa30ec13397c7bf98:{slug:"i-love-my-cat-snap"},"2e93ec1b5c2f428b87bdf4073f35fc5c":{slug:"i-love-my-cat-snap"},e0b5cec162b84f44beb8edd089b6800b:{slug:"i-love-my-cat-snap"},"6f74f5e54aeb4df8a2ebd22a9f5868fd":{slug:"i-love-my-cat-snap"},d7d29835a51149e0b9b73eab95957606:{slug:"i-love-my-cat-snap"},"250e7172fd914020bb93a45f46766967":{slug:"i-love-my-dog-snap"},"4a678b8cd50d4176b1615fa5c847e4d8":{slug:"i-love-my-dog-snap"},"621365c548f74108a832327bcfb86801":{slug:"i-love-my-dog-snap"},ba7cd7b264d34e2cb658340ab0bfba82:{slug:"i-love-my-dog-snap"},f2a966d52b26441086b8e35c5e8567d3:{slug:"i-love-my-dog-snap"},e55759ef90a8469586eaacbd46c4e3b0:{slug:"i-love-my-dog-snap"},"47eeda69e74a43ce9d30f23724bcf7eb":{slug:"i-love-my-dog-snap"},dd2502b5acb048e687b621c5bfadc544:{slug:"i-love-my-dog-snap"},f630aedab3904adcb54f592e970d219d:{slug:"i-love-my-dog-snap"},b172fd431a5e4c54b768f239b454d27c:{slug:"lets-celebrate-snap"},e2f483b08e1746608baa1dfa3cffba8a:{slug:"lets-celebrate-snap"},"7e86814435fa4610b4fbbba1f8636338":{slug:"lets-celebrate-snap"},c70cdfa9c7544ef7953d8d4c8ec559aa:{slug:"lets-celebrate-snap"},"1f9296cb36844e0fb34b45521f7f4a24":{slug:"lets-celebrate-snap"},cecf561776b641eebb532ea82dca2139:{slug:"lets-celebrate-snap"},"147bb4d78ee34c66bd1391e00a504f46":{slug:"lets-celebrate-snap"},f1de0875e40f4e9db1f8a92675eb69e6:{slug:"lets-celebrate-snap"},ab2dce328397419c94dfec9b1c8cc482:{slug:"lets-celebrate-snap"},"182f6472d64d444295f00fc1fca2d7cf":{slug:"lets-celebrate-snap"},"15380e633bcb4a3c9327b3dd303fd1f4":{slug:"lets-celebrate-snap"},"6f804f7800ba4c81a1af81f6c8b0a51b":{slug:"lets-celebrate-snap"},e50a2af4f58644fe850435c9968a313f:{slug:"love-lives-here-snap"},"6191dd213e4147319c04d876e642ce64":{slug:"love-lives-here-snap"},ae0fb7cb6beb4567a3c1c420420e72f6:{slug:"love-lives-here-snap"},b7272a9a41af4a71877c522e85481523:{slug:"love-lives-here-snap"},"7182d6c1b4d44183a3cbe06485ef851a":{slug:"love-lives-here-snap"},f2a7c17b20cf4abeab01a242922fe31a:{slug:"love-lives-here-snap"},"9e96b1c0c7764437ac5b291fe23e9f77":{slug:"love-lives-here-snap"},"08ffb4030fba42328cc071a4139e5b0a":{slug:"love-lives-here-snap"},"1773849c638044ddb6fdf16e3e7fb952":{slug:"love-lives-here-snap"},b4b8c4b216da446aa4e7d225abbc5199:{slug:"love-story-snap"},c91474e1552a4672944f3282021aa40d:{slug:"love-story-snap"},"9643def3b9364a5fbdeb1aef0dd409bc":{slug:"love-story-snap"},"2e52137305fb41a6b4940b60b40dde9b":{slug:"love-story-snap"},"26eb33d9207545f492f8e271dbbee745":{slug:"love-story-snap"},"80391633f6ec4eda925c9b83a3b79b4e":{slug:"love-story-snap"},"9eddfeb265144584a8425a532bb61aec":{slug:"love-story-snap"},cff0322dd11d49568c26aa514435d387:{slug:"love-story-snap"},a1e6574f120148d9bab1318315417a98:{slug:"love-story-snap"},"301308243c874ac6a08a318e6ea8c911":{slug:"magical-memories-snap"},"6c2354389ef84cf4a598ccde0fa94abe":{slug:"magical-memories-snap"},"1a702a7c5b5248a78a187fdfd3377ce4":{slug:"magical-memories-snap"},"53303ef176314f8e8335062e4bc43ffe":{slug:"magical-memories-snap"},"46903574f61c46419c13871c89624172":{slug:"magical-memories-snap"},ef4e6224691a406c86c44389ac57bf36:{slug:"magical-memories-snap"},"08183f87a7c4459092b5e17ff9ff962b":{slug:"magical-memories-snap"},"6617b3c977f34c09aee7c2fec378dc93":{slug:"magical-memories-snap"},"211477852c16472c9cd40cd6eb49d37d":{slug:"magical-memories-snap"},"69a55ecf2a4943e7b7e749ee848a72e2":{slug:"magical-memories-snap"},f5d4c9476d4b4e2a8824c606edcbc6d9:{slug:"magical-memories-snap"},c404f6e0a4d346ae98d84d04ad13a1d4:{slug:"magical-memories-snap"},d510f44ef978424bbdfe2fbc9eb69c2e:{slug:"milestone-memories-snap"},cf12d90ea10548c4a1b219b3a500f625:{slug:"milestone-memories-snap"},c1ec8c88641748109bbd10d1d5f88af0:{slug:"milestone-memories-snap"},"7eb436dc19344190a4a4cd8e69433442":{slug:"milestone-memories-snap"},c701c996a00a488282c9bea439bebd24:{slug:"milestone-memories-snap"},"9b5c42a974d5423d9d32edab64f13434":{slug:"milestone-memories-snap"},"803267c450f744d3ad8dcd6748b7a992":{slug:"milestone-memories-snap"},"209582fc8bcf453593f7848c7f6669b5":{slug:"milestone-memories-snap"},"272367d327d9438a9826cb1181df4875":{slug:"milestone-memories-snap"},f1dd5926e53b4a7cbbbdc71b015f77ba:{slug:"milestone-memories-snap"},bf2e6ccf7b974037bebe66fc3ada44c6:{slug:"milestone-memories-snap"},"536b5eeb97bd4e0ab0492a69f44a3c54":{slug:"milestone-memories-snap"},e7fe62c826a94bd785ed16bb4030c7ac:{slug:"modern-graduation-snap"},"2fa53e8c99804abfab0e3a93cab055a0":{slug:"modern-graduation-snap"},f1c2884f388e4d648e33bb4a89dc6a2b:{slug:"modern-graduation-snap"},"8afd21227dc2447cbb80d5d7c90e9fad":{slug:"modern-graduation-snap"},fc21667128bc4eb28d607a4ef9a774dd:{slug:"modern-graduation-snap"},ef82936a7ec046bf9a4f5eedf826c429:{slug:"modern-graduation-snap"},"91a1bdd7ff1642948bbd570e1c86692c":{slug:"modern-highlights-snap"},ba28e3e03cf54485aab2c18cdf26f25c:{slug:"modern-highlights-snap"},"1db46b07154844a9aa554baf5f8319f4":{slug:"modern-highlights-snap"},dacc5ea22de44e4e871894eab9071a33:{slug:"modern-highlights-snap"},"241f9e51f2b24ccd95d90583217b441a":{slug:"modern-highlights-snap"},db8d751478e94795a6ba5a945fcc09f2:{slug:"modern-highlights-snap"},"65aeef3922d649b4a58f4e8bdcff6458":{slug:"modern-highlights-snap"},"909f2c5a3b094995a2a0aebc1c4d0de3":{slug:"modern-rustic-snap"},"75c80ea28e234a33b8a002df504a6de9":{slug:"modern-rustic-snap"},"3e6a8471148a490ba53bf3e6b5266aca":{slug:"modern-rustic-snap"},"8d26ee28455b4f189215e787362e3e3c":{slug:"modern-rustic-snap"},"103ad6dc17614bd2a913d0ad34522346":{slug:"modern-rustic-snap"},ccbec4e10a7046ec9a64f7096087d521:{slug:"modern-rustic-snap"},"15571b5267dd47398ec7ee6b837ef089":{slug:"modern-rustic-snap"},"5d392f8e8b6f4409a7ae12aefa800e95":{slug:"modern-rustic-snap"},"1eaac324ed684da0a313984ff4d42d8c":{slug:"modern-rustic-snap"},f2d2e7f2a3e24fc6b26a711fb27d7c87:{slug:"my-family-snap"},ecc1a10cf8894e9788d7b6bbf1d09714:{slug:"my-graduation-snap"},"757434aea2eb4f8482a916c3f58a2111":{slug:"my-graduation-snap"},bc4da5c062f3452a9f6d927bc21b5651:{slug:"my-graduation-snap"},"3cbf6e4de2214bd4b5f9a1b52efd927d":{slug:"my-graduation-snap"},"661f4fd7b17d4effbd97d0d382551a32":{slug:"my-graduation-snap"},f4c0484ca8dc477485b0c8f79ad84e4f:{slug:"my-graduation-snap"},"7273c634fc78409a97014d027da49cdf":{slug:"my-graduation-snap"},c348155155644f30bd4480a73698a0e6:{slug:"natural-blues-snap"},"49c985c0bdb04497a14c7b152e9ea9ea":{slug:"natural-blues-snap"},"0904550b7fe842f1bf071ccf8da39bd0":{slug:"natural-blues-snap"},"6de0f779c64046c2a5446a03691f47d2":{slug:"natural-blues-snap"},"34f90236426a4522aae09c62a53fe8a0":{slug:"natural-blues-snap"},"69aba5dd087f4d98b6f90e2c97b91b9b":{slug:"natural-blues-snap"},"979a0aaa921a4a3689ccc919f572bcfe":{slug:"natural-blues-snap"},"10d2e69349e94be6b6a0821da33c56c7":{slug:"natural-blues-snap"},"09c80475df7145999110077d49a27304":{slug:"natural-blues-snap"},"5128453665a34967b55da82bb375c2dd":{slug:"nautical-summer-snap"},"21eea5ae34c14e03955e4eaa0af93694":{slug:"nautical-summer-snap"},"6e81a713e14943169a6a6e229d0054ff":{slug:"nautical-summer-snap"},e0a3a90cc7a441bda5c899c1588e866a:{slug:"nautical-summer-snap"},"9ccb7aede4744ce78bcd47aa610aac95":{slug:"nautical-summer-snap"},"2cad6b33539540a9985efe8e22a72f9c":{slug:"nautical-summer-snap"},c78f281b4fc84a1fb379905d77068c20:{slug:"nautical-summer-snap"},"89e15be143c94ff9b1d226e652f4c704":{slug:"nautical-summer-snap"},b198d4c178d84abe92a0223d0360e3be:{slug:"nautical-summer-snap"},"2fbd442fe54042cfafae3f617c827480":{slug:"organic-patterns-snap"},"629539beedaf4a0e94fa0b41c5cec3dd":{slug:"organic-patterns-snap"},"178ade0ea2b6479183ae6877f37544ea":{slug:"organic-patterns-snap"},a103777968e841058102dbb7a8b0ade2:{slug:"organic-patterns-snap"},"3d9ba7399902488aada1cc95971a85b2":{slug:"organic-patterns-snap"},f6972e5b48dc4a0187ff2f317f42b5be:{slug:"organic-patterns-snap"},"8533ec02ef654fa681fc4607e7dc36c1":{slug:"organic-patterns-snap"},fdf63afc3b2243538266606979a58c07:{slug:"organic-patterns-snap"},"4668b82e2f794f4c8d2d19dd6c1f79d4":{slug:"organic-patterns-snap"},f96f37aaf39c4223ba58f738d1b0dab1:{slug:"organic-shapes-snap"},"3f7956affeb24876bdddd8434f584e24":{slug:"organic-shapes-snap"},"6f02638b2b504743b12ddd2ebbfd0301":{slug:"organic-shapes-snap"},"5eb97f67249749fea2b7997b11ffbd63":{slug:"organic-shapes-snap"},"0f149e5e2abd487e9a551575c6838399":{slug:"our-wedding-guests-snap"},"2c2528edea96456082f7f88bcc32c026":{slug:"our-wedding-guests-snap"},aa2c69b40e084fc1ba3d9d15de356726:{slug:"our-wedding-guests-snap"},"778e59c3d10c422caeb3d440321aa0eb":{slug:"our-wedding-guests-snap"},ae5bfd8e13cc4c42be16af4273c44cb6:{slug:"our-wedding-guests-snap"},ac9e96e8f6c9463fa34014e8d423d4f5:{slug:"our-wedding-guests-snap"},e43f2458835c4aa6be772e105eb5d9a0:{slug:"our-wedding-guests-snap"},"9fe82f9f7a0b41058c42a51bc65e1302":{slug:"our-wedding-guests-snap"},"8770e7c5444940afb31e1b47aa88600c":{slug:"our-wedding-guests-snap"},a4ab75c698004bd0971b02d95f6e1b19:{slug:"our-wedding-guests-snap"},"83741b78484c48ea997456f0f08a697f":{slug:"our-wedding-guests-snap"},f45b2c4b3a3e4167bb6ffc91daa8e16d:{slug:"our-wedding-guests-snap"},"8e6a5885caa745f18bae0b740ecb9068":{slug:"over-the-moon-snap"},"9e60d316af0d4124b013c1d5d657e962":{slug:"over-the-moon-snap"},"7deaafe98d6f4739a1c6da5e1c272b58":{slug:"over-the-moon-snap"},"171594f8290a4b9fa81c1ae2d8880fb3":{slug:"over-the-moon-snap"},"70f86f50eb984a1aa19e4fa3cfb83dd3":{slug:"over-the-moon-snap"},efca49605bff4ffe87e1190080cf9139:{slug:"over-the-moon-snap"},"936185e7981d4437bcceca5af048f136":{slug:"over-the-moon-snap"},cf245dbf57344f59ad3249c9e0db7ab3:{slug:"over-the-moon-snap"},"29176a1feb5942289c0b6b35928992a2":{slug:"over-the-moon-snap"},c1d0db85b99b4f13a8526328d78b9706:{slug:"painterly-patterns-snap"},"1177e4bce6824e84909843d1613baf3c":{slug:"painterly-patterns-snap"},"0ec468dc6d714d2fb496f6111d28325a":{slug:"painterly-patterns-snap"},aa313a40c280419d94e469ab73812100:{slug:"painterly-patterns-snap"},ad3b785e2172477f801aa95f629a414e:{slug:"painterly-patterns-snap"},"794c1c7ca7ef45fe9ecf60108fe259c2":{slug:"painterly-patterns-snap"},"20706bb4473d4dbc91d361e37ed7aed0":{slug:"precious-experiences-snap"},"20cff66632ca4ae0bc6f0b444ad366e9":{slug:"precious-experiences-snap"},"7e121e9da7c34a6283176139be27db75":{slug:"precious-experiences-snap"},"8f6bc682ca554fc7947ff7fd1bf8a2f6":{slug:"precious-experiences-snap"},a3358387e401431f916fdf81c07e0e4f:{slug:"precious-experiences-snap"},"45cdfdf8e5014f4ead1c3d308ad30efc":{slug:"precious-experiences-snap"},a647be89f9024e05b1ab33ae6af925e4:{slug:"precious-experiences-snap"},"0e69e548304048f7b97d1729bbb0f3fb":{slug:"reflections-on-our-year-snap"},"5e7e80453ffa45dc87546b1b896fe729":{slug:"reflections-on-our-year-snap"},e2e23ace97ff440d8e97c618b44c87e3:{slug:"reflections-on-our-year-snap"},"8c91a592ba7640748c18c1041f0910f5":{slug:"reflections-on-our-year-snap"},e104afc6efe0415199a1b05c2e3e3b88:{slug:"reflections-on-our-year-snap"},f77adfecbedb4d43ab438d92cfc25c8c:{slug:"reflections-on-our-year-snap"},f7dc719049dc4afb863a8083280db9c7:{slug:"reflections-on-our-year-snap"},b177ee59abfb4b2d86b4d61ffd1b967e:{slug:"reflections-on-our-year-snap"},"3b529d4986044d43b22de82a030e5a74":{slug:"reflections-on-our-year-snap"},"8a4e4261cfa64e8e9fa319ba4a95def8":{slug:"reflections-on-our-year-snap"},"5f693bfb4bc5418cbbc30229796c1312":{slug:"reflections-on-our-year-snap"},b8c5d5c29cc642b8b7704d1d983ec8b4:{slug:"reflections-on-our-year-snap"},"666f2762f2724dc192351ba30b84873e":{slug:"roadtrip-snap"},"94c6b2315f6b4c8c98adf5888482ce89":{slug:"roadtrip-snap"},"7ea428453129403eace21979d40f6ad2":{slug:"roadtrip-snap"},"667d23b5e456422b9d4b158d40cff34f":{slug:"roadtrip-snap"},"3e7066e7ee9b4520885a267a215872bc":{slug:"roadtrip-snap"},"6a9dcbc0b046448fb7ff479fa77031e8":{slug:"roadtrip-snap"},"7d38e6acc0514f14a1250ef36cf03c42":{slug:"roadtrip-snap"},"1cee715c999d4925ab3868e50cd53b4b":{slug:"roadtrip-snap"},"05bb225433fc4999954963f2c7f80d27":{slug:"rustic-chic-snap"},"1257171af5eb420dab698824ae7455c6":{slug:"rustic-chic-snap"},"67588e6e87b848ca90cad051b331faba":{slug:"rustic-chic-snap"},"752d80ff570e4e0a9920c7d4786c7470":{slug:"rustic-chic-snap"},"8dff13578bbf4050a280a22aea8fb1e9":{slug:"rustic-chic-snap"},"69854e1d712248e1aa16eb1929b5cda8":{slug:"rustic-chic-snap"},"7d4e7716247347298cae7e0523575fb2":{slug:"rustic-chic-snap"},"6cd3d748e6d14b62acbdc8f5bc7dbdd0":{slug:"rustic-chic-snap"},d27693374a62482d92c8565c65ce2c35:{slug:"rustic-chic-snap"},"169bdde441e640aeb1eea271233adc1d":{slug:"rustic-family-snapshots-snap"},"30f25101720d4fa083e1b8b5667d9286":{slug:"rustic-family-snapshots-snap"},"513fbcf798424787aa02853df4c799e7":{slug:"rustic-family-snapshots-snap"},bed3e5cb890d45e48f287525bce35f6e:{slug:"rustic-family-snapshots-snap"},d3b77522a4974cbbaedb82aded2a9779:{slug:"rustic-family-snapshots-snap"},"6a148e5ebbbd4057980df168894d0add":{slug:"rustic-family-snapshots-snap"},"95ac08d481c44224b9421533d105899f":{slug:"rustic-family-snapshots-snap"},"33bfeeaebb4448119391ede6fba2e94a":{slug:"rustic-family-snapshots-snap"},a867ee1a5bf84aa3afc86874c15f9966:{slug:"rustic-family-snapshots-snap"},e4c5106a4d55467dbaca0a1f551e87fe:{slug:"serene-memories-snap"},"7e0fdbc8a5094cdd9c3a0c801cddbb56":{slug:"serene-memories-snap"},"0b3b7dec9e1d40ce884cf2b58eb68ed5":{slug:"serene-memories-snap"},f6c99b409b4e436f86510027e4d0b42f:{slug:"serene-memories-snap"},"0cc239c5e26d423ca5453900f87514f4":{slug:"serene-memories-snap"},"1b1557b0588142bfae75c9c97987a227":{slug:"serene-memories-snap"},"311f191edfd4484cb9a88a55e52e2ea9":{slug:"serene-memories-snap"},"778bd39191ff418d84f4e70948fbdf8d":{slug:"simple-snap"},a2543a565036439b87dbc049de32c9dd:{slug:"simple-snap"},d1eb484851524cba893f5040341dfe9d:{slug:"simple-snap"},"9997164743ad4e1cb601223ae8a6acf7":{slug:"simple-snap"},"67ebd4a450d6464f9dcb6f39bd44bf13":{slug:"simple-snap"},a779d0f057fd4da6bc0964a3683c661f:{slug:"simple-snap"},"57b25114dfd64229b8b4e96d71c9b072":{slug:"simple-snap"},"1b34483fb89c4f1a8d8b0cb257c99db8":{slug:"simple-family-moments-snap"},"243cc056e36449f1bf0660d24e2eab56":{slug:"simple-family-moments-snap"},a38c8f1e6dc444fdaf5311e379622e18:{slug:"simple-family-moments-snap"},"44beb56b7f3b4115b3067eee64006ea9":{slug:"simple-family-moments-snap"},d5d5196ad91c47d5af35d417d95dcbf2:{slug:"simple-family-moments-snap"},a632755125ab4bf088da56b2a17351af:{slug:"simple-family-moments-snap"},"5b4302cb97c741c1b1c9ccc3b12e9932":{slug:"simple-family-moments-snap"},b003710a7e134f50b74011395acb3bb7:{slug:"simple-family-moments-snap"},"25d365267deb4a17918f5e21d00fc119":{slug:"simple-family-moments-snap"},"27a76c07cf234345ba54989f0e8221ed":{slug:"simply-love-snap"},fb3cc7175b874ed0856d4127af965244:{slug:"simply-love-snap"},d1b50d211dc04d6c8ada59cd3a631bbb:{slug:"simply-love-snap"},a127c7a71e2147a6b20d2764bfc00d27:{slug:"simply-love-snap"},"648a761accdb433b8618f20e7f31ee8f":{slug:"simply-love-snap"},"2509d0dc67d14f648978bf330f720638":{slug:"simply-love-snap"},"30ce18744ee2425ebb04c7c9290f9c74":{slug:"simply-love-snap"},"76fb76f52b0a4f989e09baaec72f1f2a":{slug:"simply-love-snap"},"284a28c25a6f41898bc501f74239ea8e":{slug:"sketched-botanicals-snap"},b9f0009aae7b4cdba8ad6569d4d7b854:{slug:"sketched-botanicals-snap"},e79ae1421edb473e90406449e10ac6c6:{slug:"sketched-botanicals-snap"},a2dc849886d94ffcb44d49ad5034bba9:{slug:"sketched-botanicals-snap"},a4224e2385a8488182a44b88cdc44bb9:{slug:"sketched-botanicals-snap"},a829b00cd20a48cc866fab614af98d91:{slug:"sketched-botanicals-snap"},"3f25dac7c13042e5931c2a0ff8015f06":{slug:"sketched-botanicals-snap"},e2b3a55fc7194f088633b984d53f95b8:{slug:"smitten-snap"},"95eee9a285aa4f8b809bdf44d98c6685":{slug:"smitten-snap"},f7a610b2815646049883c9202d8e4aba:{slug:"smitten-snap"},"18aa609376c04225b52fef7f91a8de2b":{slug:"smitten-snap"},"085f914b2c374cf8991ce22a7b894843":{slug:"smitten-snap"},ca42b60d4a5d4c27af8dcf27f3d51947:{slug:"smitten-snap"},"8029514a8080460cb309506b8a16b67c":{slug:"smitten-snap"},"8b1333f9ee5147269064ce13eb3b0997":{slug:"smitten-snap"},"0bcb8c27190a4531af7ccc72219b5669":{slug:"snow-days-snap"},"0f2b6dbbd3194313943ee755661789b7":{slug:"snow-days-snap"},e382bfe0d0334f508ad7310cb8cd6e2f:{slug:"snow-days-snap"},e5015db3072c408998a1a65275b47183:{slug:"snow-days-snap"},e543f33041fb412a9915a8b661eae7fe:{slug:"snow-days-snap"},d838f1bfeeeb4e929f8c92fb444b309c:{slug:"snow-days-snap"},e79d31d7469e486c91aa23043783cdf3:{slug:"snow-days-snap"},"1307dc2065054bd79b645ec1b4efa06b":{slug:"snow-days-snap"},"5db9b834bf094325a781824b82ef6d35":{slug:"snow-days-snap"},"0bb354f118494b4e891a8100f72bad82":{slug:"solid-brights-snap"},"7b925299270b4bc58c3518e3e4081cbf":{slug:"solid-brights-snap"},"004d70c2645b407b8fcb026d591af123":{slug:"solid-brights-snap"},e7ee7959474241b48064bce848746318:{slug:"solid-brights-snap"},fec5b2de8f0e4c8dbbf80b49acb12c0e:{slug:"solid-brights-snap"},"46a0b5c241f447fc8c9830b89eaf3a2f":{slug:"solid-brights-snap"},d9bbcacde8cd4a899b0c30b893fefcea:{slug:"solid-brights-snap"},af96dc6e1ba140e18c75e49ddb256922:{slug:"solid-brights-snap"},"35d4629d5c42485cbd7c2b8011dadf36":{slug:"studio-snap"},"97ffabc8703148e6b7a53b928a570c2a":{slug:"studio-snap"},"9abc5015a4ca471c9e835f6d83f77233":{slug:"studio-snap"},"230117f050c94e3bb2a4f3ba47be2b3a":{slug:"studio-snap"},"2facd637415644e6a9c35345678ab14e":{slug:"studio-snap"},"18e7baed7a0444038da95599b5d056ed":{slug:"studio-snap"},"9036bc1cafb748ff87b07caf13128a8b":{slug:"studio-snap"},"7088a16e96db4243be32196727851878":{slug:"studio-snap"},b5211902f9d740c79319428ebec386df:{slug:"studio-snap"},"9297faab550047b2bddf1fd8cf97b114":{slug:"studio-snap"},"3c55e91b8aae4a18823cd40e120509ed":{slug:"studio-snap"},"766fd1c3ec1c45c0a5c0bf155e5c3990":{slug:"studio-snap"},fc921ad0a06c46c1ac36663bcda6ee38:{slug:"studio-multi-snap"},a416b8753e234d498cf882be5a8579b1:{slug:"studio-multi-snap"},e6249a6657f3447782d1356acbc25381:{slug:"studio-multi-snap"},e63289bc981d493b9465f5c8022ced9f:{slug:"studio-multi-snap"},aa8a092425e5482fae464271b39ae1e2:{slug:"studio-multi-snap"},"64901274e28e4eb798ca236ac33a504d":{slug:"studio-multi-snap"},"5d65bbcfa64945d0ae18dd85b55d3d06":{slug:"studio-multi-snap"},eba50d6423a44cfdb0eccd398432a654:{slug:"studio-multi-snap"},"96fce1730ebf429a8cbe52aa1a630c02":{slug:"summer-snapshots-snap"},da0baa1730974cc3857194706076c382:{slug:"summer-snapshots-snap"},ea1ea7327fd1468d99788695dc2c8a86:{slug:"summer-snapshots-snap"},a716778412594fe8b51ca5e550a634dc:{slug:"summer-snapshots-snap"},f65dafa579d34106baafb4e53e1f1e18:{slug:"summer-snapshots-snap"},e10f7436806c4d139a5dda825d8fc734:{slug:"summer-snapshots-snap"},d3a7ee07c1c94d14a8148581596162cb:{slug:"summer-snapshots-snap"},"401fa22ecac846cb8183bedb1ee9d832":{slug:"summer-snapshots-snap"},"63ca929359624200845bd631ebe00ac4":{slug:"summer-snapshots-snap"},b876318b92b9402faaeb0af27dbb5923:{slug:"team-spirit-snap"},"0e140785a44c44918d8aaf808a82eb9c":{slug:"team-spirit-snap"},ba98f97d677d40bebb15abe712457e0f:{slug:"team-spirit-snap"},"00becf19eb144b52a3e4e3efe07185b7":{slug:"team-spirit-snap"},"25218dd15f9a48a789befa03e7f152a3":{slug:"team-spirit-snap"},bab96a7d3ce24ce0b970f42ce5295e80:{slug:"team-spirit-snap"},c5ee8f78005247d08ac88093762a5abf:{slug:"team-spirit-snap"},"7bb0885f9bc1409c83216154cb9b3b9d":{slug:"team-spirit-snap"},"6f85477ade5041d4b37b778ee19b5965":{slug:"team-spirit-snap"},e8c030574e1f42dba9fb4da5d1f03d4d:{slug:"ten-things-i-love-snap"},d08065afd7ad40f489af9a899388f406:{slug:"ten-things-i-love-snap"},"3b6deae2f6cb46a0bfed9c8da4fad2cc":{slug:"ten-things-i-love-snap"},"5e5a365d3a934176b176c827c18e093e":{slug:"ten-things-i-love-snap"},"9185bd56618a452b9c6c5349976f5eb6":{slug:"ten-things-i-love-snap"},"1384165524b646738f1ce63e279f7c56":{slug:"ten-things-i-love-snap"},"613c2d76621c4109aa281aa364aea23b":{slug:"ten-things-i-love-snap"},"69373b0e74184ff3a9cacafe6b9f7676":{slug:"ten-things-i-love-snap"},"74252ce6ed514947b98a22ea2206298b":{slug:"ten-things-i-love-snap"},a83e020b292d4463b34307c8898f9228:{slug:"travel-maps-snap"},"39ae5f22d702416696024655d365bdc1":{slug:"travel-maps-snap"},"41252e3fa5994645ac53b28e7566fbb1":{slug:"travel-maps-snap"},"60d7c4dbaf6c4defbe82e410087d00a4":{slug:"travel-maps-snap"},"9191f51b03b5419daabcdb1a250e2296":{slug:"travel-maps-snap"},"3342063a25e7482c9d06b21995ecad91":{slug:"travel-maps-snap"},b2610c80c07a449a9a474fff1ae37ef7:{slug:"travel-maps-snap"},"2aae797b41c842b8a707223a276e30f2":{slug:"travel-memories-snap"},a4c703d38e634a0d9d02fd23ce60b6ca:{slug:"travel-memories-snap"},ae94cf886de84ea58b8312179507ee00:{slug:"travel-memories-snap"},f4d1542a874a4c908070ce5765666446:{slug:"travel-memories-snap"},"2970acf76d57445c9fb8f461b28e5ce0":{slug:"travel-memories-snap"},d2a4f509087b4edda957385dbbca2cf0:{slug:"travel-memories-snap"},"4e502c09264b4e2084ebe310b7ee91ee":{slug:"travel-memories-snap"},"1bdd05bd011741699fd5b9f36bb25e61":{slug:"travel-memories-snap"},"975911ec93df4da29e1545a5ffcb0024":{slug:"travel-memories-snap"},"6abd457e1a274f8cbdfc3191da1e5d50":{slug:"travel-stamps-snap"},"0fea9fdad6534a08912d8db3e00ac78c":{slug:"travel-stamps-snap"},"74936921f1f84593a7f891b8db987c2c":{slug:"travel-stamps-snap"},"2614185703814032b0eed1d82550c12b":{slug:"travel-stamps-snap"},"426233167a6046f6ab2f1f9544c7b853":{slug:"travel-stamps-snap"},"195ac79fe4a148139c3f9e61379358eb":{slug:"travel-stamps-snap"},"37c9baf352d7425fa2ca3cc813c8f0d0":{slug:"travel-stamps-snap"},"30d74a148ba749a682f13c92c58f0740":{slug:"tropical-beach-escape-snap"},"8daadd75f974406b934eaf7432b986b0":{slug:"tropical-beach-escape-snap"},e725a005154c4441a1279cb58746c51f:{slug:"tropical-beach-escape-snap"},f8af7437b7be49b28e6b0685af41ccbc:{slug:"tropical-beach-escape-snap"},c760cccb6aa948989b0b46ebfbc5dc92:{slug:"tropical-beach-escape-snap"},"50dce96dbacc497c96494222bc322388":{slug:"tropical-beach-escape-snap"},eca711b24293479e8e5d1fcb5e8f503d:{slug:"tropical-beach-escape-snap"},"476320eb0f9e4596a8723411e9e21f50":{slug:"tropical-beach-escape-snap"},"799b700cef5343e7a4609e61208adfa0":{slug:"tropical-beach-escape-snap"},"3ce2ed4b985f413981758727ace88858":{slug:"unfurgettable-kitty-snap"},"6cc7604a12bc4dce895bed38a429327d":{slug:"unfurgettable-kitty-snap"},"5e8c50081b8c48049a0a971093c7583c":{slug:"unfurgettable-kitty-snap"},"7e3fbebb38b34413b9709a4879d5765f":{slug:"unfurgettable-kitty-snap"},be1c357cef7d4437bd6373f502f8e115:{slug:"unfurgettable-kitty-snap"},"41c58cc68e834fc284a7b6abaa83ee26":{slug:"unfurgettable-kitty-snap"},b5f8ba7e09f6462dabf738a3d579d71b:{slug:"unfurgettable-kitty-snap"},eabe87ca17fa4dbe9aad1ae30af3ff95:{slug:"unfurgettable-kitty-snap"},f14e7bc4d5184761ac17d1c1dcf315e1:{slug:"vibrant-memories-snap"},"62307c343e4c4b05871daef3fd391228":{slug:"vibrant-memories-snap"},"969d056621094d8b9bd6688d7053b3f4":{slug:"vibrant-memories-snap"},"1c47503cc5224bdfbf852a14b6bda816":{slug:"vibrant-memories-snap"},"4b57d1b5eb1648c7970ce1c07d3bac30":{slug:"vibrant-memories-snap"},a0ba006405e64ec5bb2e0b401f80dc05:{slug:"vibrant-memories-snap"},"5883719d2c3145d39dda22708f8418bf":{slug:"vibrant-memories-snap"},adcb9f4dd6a04e678cdf4b9c29d73840:{slug:"vintage-birthday-memories-snap"},"2a71b67a08f741e7bc2964721342d4ab":{slug:"vintage-birthday-memories-snap"},"1b01f15b9f204d9d8ce4d5eea42999f4":{slug:"vintage-birthday-memories-snap"},ffe8df5ac9b148eab3809e05fa3cf188:{slug:"vintage-birthday-memories-snap"},"12fafc2b25484950b7e78b9ffb88635e":{slug:"vintage-birthday-memories-snap"},"9d6f2e47f11445ec9d78a8b1051545cf":{slug:"vintage-birthday-memories-snap"},"721183d792d74b2bbc8afc891d952f1b":{slug:"warm-neutrals-snap"},f7cb43c7b43d45f89f691e7ac9c70222:{slug:"warm-neutrals-snap"},da555f35414548d0952182a4c5f45853:{slug:"warm-neutrals-snap"},"2a8fcff4ba9749b2b1d6788b304ad39d":{slug:"warm-neutrals-snap"},"9d129bb82ea945ecbc9165bbb4e0e4ae":{slug:"warm-neutrals-snap"},"9631c2b384d34852ab1f4a9a662c2f7b":{slug:"warm-neutrals-snap"},"3ad2aef8d2da40f390ead0c173c0eda7":{slug:"warm-neutrals-snap"},c0b8158a767b4f938316fe0754797450:{slug:"warm-neutrals-snap"},db2f9fe9e5634588ad75ba84362dfe29:{slug:"warm-neutrals-snap"},"1dad20fd1d3f4193b5d81e172a91b60d":{slug:"warm-neutrals-snap"},"96d07424f0294b719c775775c5b0323e":{slug:"warm-neutrals-snap"},"307ee09a2fec49778b55af9aa059fa07":{slug:"warm-neutrals-snap"},b43ca1d4c8b243d58edacadf2954309b:{slug:"warmest-memories-snap"},e90c2c6e3ed3446d9c66cb184852c84b:{slug:"warmest-memories-snap"},"8a26f5c74f97403bb99d62196d1e820f":{slug:"warmest-memories-snap"},c53231332c65449183a4bf2763723245:{slug:"warmest-memories-snap"},"63796ad0bae549108239596c99c05dfb":{slug:"warmest-memories-snap"},e64a43ca5bcc4eb398d47a593ff2ed1e:{slug:"warmest-memories-snap"},cb25664ade3e4323ac1be71aa8a079b9:{slug:"warmest-memories-snap"},"056b13140e5c4b4c93dd9a40ecb0b7ad":{slug:"warmest-memories-snap"},"0e275cf33b364cc2a1a64bf2907ddda9":{slug:"warmest-memories-snap"},d2775c9ff9834cd799489e22826c7058:{slug:"warmest-memories-snap"},"459ef008fb6b4fe5941f155b67f456b2":{slug:"warmest-memories-snap"},"07af33d784d140fbba6ed12c98f96328":{slug:"warmest-memories-snap"},a27972e66a284859a396dffdad56be8e:{slug:"warmest-memories-snap"},"489c5fe1d1be43688022bfe1d690c4f0":{slug:"warmest-memories-snap"},"9a31d107d8594ad4b5620348f79981b0":{slug:"warmest-memories-snap"},ba8f7ed61fa942b2ad2dcd42002b17d6:{slug:"watercolour-memories-snap"},"51b5d519e2584a96abddffba8b0cab9e":{slug:"watercolour-memories-snap"},bc70b9561df249018fca5e939eb2ea27:{slug:"watercolour-memories-snap"},"68ae5a54fb1145bb973139c5360083c3":{slug:"watercolour-memories-snap"},d7bc96e589fc4da7a78d28a1b9427349:{slug:"watercolour-memories-snap"},ad89d039e79a462698480bf120488277:{slug:"watercolour-memories-snap"},be3fff50897c464db939c45970047bac:{slug:"watercolour-memories-snap"},b8dd915eff514e61bac3f701c9200671:{slug:"watercolour-memories-snap"},cc60fe994dce44bb86401aa1e476e3e4:{slug:"watercolour-memories-snap"},"38d6edc01a94440291f977013d5b8030":{slug:"watercolour-sketchbook-snap"},"84c4f12921aa482fa7ffe79b9e6d8e70":{slug:"watercolour-sketchbook-snap"},"92d400e09999402b9e9c9e8280f38bf7":{slug:"watercolour-sketchbook-snap"},"57ddf3b0eec74cf1b5b3182d9b89b180":{slug:"watercolour-sketchbook-snap"},"88408f55c9184b69a6eb2537e5396767":{slug:"watercolour-sketchbook-snap"},"29e6b392511c4cea9dd8e5289e0db79c":{slug:"watercolour-sketchbook-snap"},"8b9ce75217b1422ab5b10f80f6a41e5c":{slug:"watercolour-sketchbook-snap"},"68bc74e78b5f4f9c86fc541c4341ae41":{slug:"watercolour-sketchbook-snap"},"5b80862a220f45eb8dca442de992a920":{slug:"watercolour-sketchbook-snap"},"3f9b8b5f109a4a12b4f61f73eb4d6a42":{slug:"watercolour-wonders-snap"},d72ba8d2a4d947afa0b65a9bf21183ba:{slug:"watercolour-wonders-snap"},"279c4629693c4e40a7b06d169c2dff1a":{slug:"watercolour-wonders-snap"},"10f03dc8597046b7ab3bd1e5eb26c012":{slug:"watercolour-wonders-snap"},"9936f73121b04f0ea2f7a3f0909d8f1f":{slug:"watercolour-wonders-snap"},"3a6b5cac494b4331b70acdf240e198e5":{slug:"watercolour-wonders-snap"},"6a4dda9cf423454aaa76d1ce9d428201":{slug:"watercolour-wonders-snap"},"263d8ebe7a164cf7836c0a0cab4c2846":{slug:"watercolour-wonders-snap"},"6894ae77c77e4e10acdd2d7f3f6a0323":{slug:"watercolour-wonders-snap"},"7e4750b8e6d448e4a7569f924ef864b4":{slug:"watercolours-snap"},"5773ee709fbc4ac69a152691236f26fe":{slug:"watercolours-snap"},e34fca858430428fb334be2db593aca8:{slug:"watercolours-snap"},"442f567f2ac74e24b3feaea8162355a2":{slug:"watercolours-snap"},"4b8e54728da44395864f564e19f62a6b":{slug:"watercolours-snap"},f2ba6564f03e4ad39f0777cfd8e29f8c:{slug:"watercolours-snap"},"434db3c09b9c4300aded72ef17b5e3de":{slug:"watercolours-snap"},f6bdda441547447390bf064133e33f7a:{slug:"wedding-studio-snap"},eced2baa167d41e5acf22d05456eab5d:{slug:"wedding-studio-snap"},"1599caed753c4819aef2ca700d0d3c1e":{slug:"wedding-studio-snap"},f6ca599b79dc4cec8c06a17e5f4800a1:{slug:"wedding-studio-snap"},"92869623b76f4e988f3f6a84ffb03d41":{slug:"winter-magic-snap"},fa4789453eca4fe1ab02e7de4ccb305b:{slug:"winter-magic-snap"},bf5ccb8fa5194c9c9489b54ea844903e:{slug:"winter-magic-snap"},e58258b385014c83a537e0c6ebafaeec:{slug:"winter-magic-snap"},dc9b262af92e4dd0967fec9f154a639b:{slug:"winter-sparkle-snap"},"2a7eda4c116041df8606829e6b12ab9b":{slug:"winter-sparkle-snap"},a9bade537c6041aa8dbc7e2681c860a4:{slug:"winter-sparkle-snap"},ec8254525a0a400b9a0784046ac3fdf6:{slug:"winter-sparkle-snap"},"0b6ad232fec84a52b2ca76af0e76849a":{slug:"winter-sparkle-snap"},"369f63419dc74abf8e85d1d3a4ead8fc":{slug:"winter-sparkle-snap"},"44ccccf21fae48338812726a1cedf402":{slug:"winter-sparkle-snap"},"3b40d625e58c4baabc681004633eef04":{slug:"year-of-memories-snap"},c93510919b0e428db5b7ac1ff5f14dc6:{slug:"year-of-memories-snap"},"648d24948b31448089223c902e965b29":{slug:"year-of-memories-snap"},"3ab2f34dcb1f45cdac68c915c618136c":{slug:"year-of-memories-snap"},"2cc043baa0b14cf1bfe5bb289ff7336f":{slug:"year-of-memories-snap"},e56ca10dbb0446d19ecdfd212eee44a8:{slug:"year-of-memories-snap"},"7b4168ab0cc3401798b3369ecf4ab86e":{slug:"year-of-memories-snap"},"886998c34573423b89c9b1dbd113a088":{slug:"year-of-memories-snap"},"4b574b66d72a4b309faa45436ea94812":{slug:"year-of-memories-snap"},"2361b16efdc34130985e2ca285ca1e28":{slug:"full-photo-snap"},"3484127928b541dba73edd5fad4891cd":{slug:"full-photo-snap"},cb8eeb2ddb584eaca4fe9167f9d437fc:{slug:"abstract-baby-first-year-snap"},"8103d00120a2474ab1ae49240764e818":{slug:"abstract-baby-first-year-snap"},faf053b2d6f04f918eb6796aca9d49f7:{slug:"abstract-baby-first-year-snap"},dd3aae9251984dc28e03cdb5febd923f:{slug:"abstract-baby-first-year-snap"},e0f2ff6db42f44c0aad53d0d9043b34b:{slug:"abstract-baby-first-year-snap"},"5f26b5fce69c4bc0bbe713fc9095ad06":{slug:"abstract-baby-first-year-snap"},"10dd93b5152b40f8af1a65ed29918aa7":{slug:"abstract-baby-first-year-snap"},"6301e6fd799c47d593782c512bbab25a":{slug:"abstract-baby-first-year-snap"},"9600814f4f2c495e88bdc82f359d113c":{slug:"abstract-baby-first-year-snap"},dfa2728afb1542698b8589e58614f2c8:{slug:"abstract-baby-first-year-snap"},c8dc3463274746659a4d3424c5202b68:{slug:"abstract-baby-first-year-snap"},"9fb2b9f14b014aef859ae82290d7154b":{slug:"studio-snap"},bbff2c6ad182446084234c98e0956fbd:{slug:"studio-snap"},"50a708a74eab4aec988644498125505b":{slug:"studio-snap"},"9275741571da477e854b6eaf445b5092":{slug:"solid-brights-snap"},"3d25f312503248d68c087983899e2cb0":{slug:"solid-brights-snap"},"553ef5ab5fce46eb9f3e9dff25c799bd":{slug:"solid-brights-snap"},"4e7370fe4c50421ca1ec709a9c5a859f":{slug:"warm-neutrals-snap"},"72215f0e711848b3be6d367bf76e8d37":{slug:"warm-neutrals-snap"},"29d84d91a6b24a338ea8350dc35216e1":{slug:"warm-neutrals-snap"},"61f249fcf8d24b20a94cc95ff44035ea":{slug:"earth-tones-snap"},"9249414bfbda4f22b564a397b4af60a3":{slug:"earth-tones-snap"},d3ef8c6b95b54450a0b7d089fb7e7af8:{slug:"earth-tones-snap"},"26bf418458444ec482e67bcb2a9f7a70":{slug:"earth-tones-snap"},"984fa32d72a8434e893aa34596d6b20b":{slug:"earth-tones-snap"},e77d46f7170640fbbb1b484e84dbf3e8:{slug:"earth-tones-snap"},f7fbae13820442e7b37b5f8f7f801d0b:{slug:"elegant-florals-snap"},"08bbf8ed91e64be4b14c1b3c3a70483f":{slug:"elegant-florals-snap"},"3b8fc321fba045ffbff6b9bd57f0c24f":{slug:"elegant-florals-snap"},"490a1e39652a4bc8a05c157d40399f1d":{slug:"elegant-florals-snap"},"54d78ec044c74000923715f4e3dab6c3":{slug:"wedding-studio-snap"},"6b4efb673b15435192ea527424d1fb04":{slug:"autumn-snapshots-snap"},"049a8a202803497ea2bed463b7e22e53":{slug:"autumn-snapshots-snap"},e51c9b48da8b4957b9b00b69e3e9fe79:{slug:"autumn-snapshots-snap"},a96750f13f4e44508da0d4f2dad973e6:{slug:"watercolour-memories-snap"},d2a1a3b4aa1f495485f6c3dbb1622290:{slug:"fun-dots-snap"},dc517a6136a54cc4b74079d9f9cebecc:{slug:"album-snap"},"1abb681f79e74c039f15dacd55e3df2e":{slug:"studio-multi-snap"},"73556aed3bc94607ab3e35fc1f23325b":{slug:"studio-multi-snap"},"3d795737b4034767a62b7ef0498ca5f1":{slug:"full-and-multi-square-photo-snap"},"10af05aa75954df881410ebe984ecf20":{slug:"full-and-multi-square-photo-snap"},b1501be3834b4f9da4210ab93f6b05ca:{slug:"natural-blues-snap"},"4f743a4405ce4d6987e6fc36c4186ecd":{slug:"natural-blues-snap"},e4692c768a0b4a19ac2e764485a7d58c:{slug:"bold-type-snap"},"9e63e129dbe445899039f6b1b3719b9c":{slug:"bold-type-snap"},"444c0ce0ec864873a85bf6bb169b20b4":{slug:"dip-dye-snap"},bf173881ff4e4cd3bf0369b71def2972:{slug:"watercolours-snap"},"0b89f485fb8d4d439064462e7014cab8":{slug:"watercolours-snap"},"16795a9e6b604af69870c1cb93b3823d":{slug:"watercolours-snap"},"50e40a1e87cf40008647c4538d691490":{slug:"chalkboard-snap"},"3f83b6c15ab942169b7553789cfa7613":{slug:"geometric-lines-snap"},"864cad52b12d44e5a132ae22aa883295":{slug:"botanicals-snap"},de044e657baa432bb95414ff68b83e3b:{slug:"dad-plaid-bundle-snap"},fd433811ad42497fbd55428a8960df95:{slug:"dad-plaid-bundle-snap"},"88292dad113749a4a3c1f497dd06c53a":{slug:"dad-plaid-bundle-snap"},"9fd80928dd9f42c49b17c7511b8e3adc":{slug:"dad-plaid-bundle-snap"},d8c1ad9498a44e229ed953e071875197:{slug:"dad-plaid-bundle-snap"},"453e7ba0b94c4481be3ec828e30e6a6b":{slug:"dad-plaid-bundle-snap"},e8e06e628d684fce89d959b0e394c529:{slug:"dad-plaid-bundle-snap"},"2f39555d37ad4bbbbd3bbcdbb9e1561e":{slug:"dad-plaid-bundle-snap"},b4e0b0d96a1143e587e67f4acdd97e0e:{slug:"dad-plaid-bundle-snap"},ea5ea3867e664913890e6493fe679656:{slug:"dad-plaid-bundle-snap"},"72fa41e35b52419795bc0513e5087c29":{slug:"dad-plaid-bundle-snap"},d016f03abc7a45d98ac2096cdf98209d:{slug:"dad-plaid-bundle-snap"},b15e3fad76e8410b8672d7a8f1d65f4e:{slug:"dad-plaid-bundle-snap"},"0861f6069b3b4e9eb9a5b9f8641bc926":{slug:"dad-plaid-bundle-snap"},"68563c86c7aa4432bda56849e5d1ee38":{slug:"dad-plaid-bundle-snap"},"54dc9817040c47638eaaf32731a717c5":{slug:"dad-plaid-bundle-snap"},"71c6b2ece3694e6885d6606f9c2a2457":{slug:"dad-plaid-bundle-snap"},fc2b66b6be52435499797fdc58f2b02e:{slug:"dad-plaid-bundle-snap"},"2e02ea585c4c4c3c8e828a4e83609555":{slug:"classic-fathers-snap"},"049f682c14694171951d8c2f5997507a":{slug:"classic-fathers-snap"},"60b953e71ee5471b85018d96c1a2c6c1":{slug:"bold-shapes-snap"},b0c65fe03f6e4cb6bcce1322a98bb005:{slug:"bold-shapes-snap"},bf5eed33be674ac8bc2c198d22a9f28d:{slug:"vintage-birthday-memories-snap"},acc04f78b49b4cd59554d0ebed9aab86:{slug:"vintage-birthday-memories-snap"},d714af25afcf4dbd9fc41c36ad717dcf:{slug:"i-love-my-dog-snap"},ae69185934d74c97a629a4b29411b2bd:{slug:"i-love-my-dog-snap"},"388a348eead64e54876f1f224a6c1350":{slug:"childs-yearbook-snap"},bc8db2c76eaa477e80e60191575074e4:{slug:"childs-yearbook-snap"},"6a5446fd20bf4ac1a64093ff6a35a77a":{slug:"childs-yearbook-snap"},c3d4d5102bed48e087a4ea9ffafbd6a0:{slug:"childs-yearbook-snap"},"50dfbbc5a6f54c25a8816f3f4bb08291":{slug:"childs-yearbook-snap"},"8f4e46b623fd4c479d394c30df30d52c":{slug:"childs-yearbook-snap"},"8749dffd6d3f4c78a0159c76d58d1c2a":{slug:"childs-yearbook-snap"},"5b669bcacb4f434ea14ab2f5617499db":{slug:"childs-yearbook-snap"},"8dd877d31f154d2ca45f94db544e1b98":{slug:"childs-yearbook-snap"},"98dda1c349df437f9ddb9114429a110d":{slug:"childs-yearbook-snap"},"5d17da12b1384744989e87f763bb5595":{slug:"childs-yearbook-snap"},cec9916f63ec4667ba50f7f33e29e92f:{slug:"childs-yearbook-snap"},"92724d008587433dbdfcde42444cccf9":{slug:"childs-yearbook-snap"},"091b9048f7e24c0bbaba0ad340a54e6c":{slug:"childs-yearbook-snap"},"78a79703ddc74f7fa16c6b48594b7a19":{slug:"childs-yearbook-snap"},"37a0472bd3174640b980e3e82f6334d5":{slug:"childs-yearbook-snap"},f058d2be81f2491fb60fa8e8a18c412e:{slug:"childs-yearbook-snap"},"4498e1a4608545f1afbea6644bcc60d2":{slug:"childs-yearbook-snap"},d4da8dfadd5046c0bd2171a5fe06440a:{slug:"family-yearbook-snap"},"73492b36da6e449c97590522f0416acd":{slug:"family-yearbook-snap"},"519bb1dba97742f180a50a301a4b1647":{slug:"family-yearbook-snap"},"3c6e610f21f443e7b9e8c2d01ecb684a":{slug:"family-yearbook-snap"},"732e1da4dd044aebbc10dad95b60a226":{slug:"family-yearbook-snap"},b0dda6882f9c441ca3720d27be71966a:{slug:"family-yearbook-snap"},"74e18ca1f1b6428b83f0fd80ba480ee4":{slug:"family-yearbook-snap"},dd32c59aa23b4fd49e46b791e5487d82:{slug:"family-yearbook-snap"},bebbd99be5174492be0ff19a368107aa:{slug:"family-yearbook-snap"},"277faabad7644dbb9a7578be3f4d1f50":{slug:"family-yearbook-snap"},ac5032a8e4f646959afd73490ee37e9e:{slug:"family-yearbook-snap"},"4fb5d69f0b0f473fb7944723a983a21a":{slug:"family-yearbook-snap"},"8d478aa179c549a88c0de8d04da60f41":{slug:"family-yearbook-snap"},eb90e6e412b34a008ad33c81c724b6ca:{slug:"reflections-on-our-year-snap"},"3575dd36f9194967a9baa355824cc2a4":{slug:"reflections-on-our-year-snap"},"0cf2f84837b844c08119d081f60079d6":{slug:"reflections-on-our-year-snap"},"8b18987dba79493d954b7ec8765df1da":{slug:"reflections-on-our-year-snap"},"3014f450901249028e41fcde199f2544":{slug:"reflections-on-our-year-snap"},"5198bf9347ae4bb0b223eb5b18a1a415":{slug:"reflections-on-our-year-snap"},bb77844cba3345649e01428ffcc7fd37:{slug:"reflections-on-our-year-snap"},"1ea53df2a0124bd0932789092cde9b7c":{slug:"family-chalkboard-snap"},"7a7d1b8a649c42dbbd7ebb10d48275bd":{slug:"everyday-happiness-snap"},f4c2bb54e87c4a2da0495e48b853e81a:{slug:"everyday-happiness-snap"},"94e1c2a7c02f494c9c1c1f163d5b6a92":{slug:"warmest-memories-snap"},e403520ab62a43b58a140ae3638335fa:{slug:"warmest-memories-snap"},b19369506a9241b5b26188f00dd9f28e:{slug:"warmest-memories-snap"},d3cab06771a3490b818ab757da56a9c2:{slug:"warmest-memories-snap"},"4163c8cb69d24b2f86a16a5a00b3091f":{slug:"warmest-memories-snap"},"21ceb156d4fd443486056c8932cdd29b":{slug:"warmest-memories-snap"},"6464d0171dd942688941c510851ba303":{slug:"warmest-memories-snap"},"5c952997147946a697c276daa2352e81":{slug:"warmest-memories-snap"},"0001573ca422493fb34691ea2480861a":{slug:"warmest-memories-snap"},"8ad6f5d11eb143a994810ed15ec0a771":{slug:"warmest-memories-snap"},"14209eef7525461ab32b9296d551af55":{slug:"warmest-memories-snap"},af3a151caae14ac1b43496a599a98ade:{slug:"warmest-memories-snap"},"3e55551625c24b93a33775a80752dfaa":{slug:"warmest-memories-snap"},d53c83faaa044668af97f0e58075903c:{slug:"warmest-memories-snap"},d3eb260dbc98498a93dcfd8f17ae9c1c:{slug:"warmest-memories-snap"},c45d1aaad4344f7aaefbb746713fceb2:{slug:"lets-celebrate-snap"},"64e050bb75434a03bca85df1fee7326e":{slug:"lets-celebrate-snap"},"6eee45a5503a4e60affb089f9d137cd4":{slug:"lets-celebrate-snap"},"57568b21b92d4f35a9446200dfe8a17e":{slug:"lets-celebrate-snap"},"176ac5b101564c37a7f88fe86604f96b":{slug:"lets-celebrate-snap"},"3b30b37107294178bbf15a1c4f4130f6":{slug:"lets-celebrate-snap"},ef4e92cb74654cd084c208b823bca25d:{slug:"lets-celebrate-snap"},"0acf0f6064b348cd9887cb6d266948bf":{slug:"lets-celebrate-snap"},e1ddd26e761343bab894751e178cf5a9:{slug:"lets-celebrate-snap"},"46a03a19a5784e5cb31fed2c73dae555":{slug:"lets-celebrate-snap"},d3637915d72a48acb070e210fae977f2:{slug:"lets-celebrate-snap"},ab05447120d14479b8edbc4563562bc9:{slug:"milestone-memories-snap"},"94fb0015dee0406d8d78eb6b31689d65":{slug:"milestone-memories-snap"},"32bc013356834604ac8be4d28bc32dec":{slug:"milestone-memories-snap"},f70bd3c0578d4df99a38934a4ac7dec6:{slug:"milestone-memories-snap"},f10d33f85aa9422f980a3d3fabb812f2:{slug:"milestone-memories-snap"},bdeeafa7f0c4470b8b7736f307a5bb67:{slug:"milestone-memories-snap"},c3b9f88c92cd4a399fe011dec5a75b63:{slug:"milestone-memories-snap"},bb92bf2764c24b908ba7dc3ff43f9d62:{slug:"milestone-memories-snap"},ba04430a65f649428943d3be2eeb6192:{slug:"milestone-memories-snap"},a43fe7d4e7334ed9a8da5647c170676d:{slug:"milestone-memories-snap"},b4eafeead1874ada8839f1090eaa51a6:{slug:"milestone-memories-snap"},"4664254488564fe69efaab16e9f5a5b3":{slug:"fresh-cookbook-snap"},"789791a92db242d4aa363d0eb87ec2d3":{slug:"fresh-cookbook-snap"},"7afec55a533d4bb3805dcff32f20fd2e":{slug:"tropical-beach-escape-snap"},e2fcef4caa434e41b4e95fc0c3d48614:{slug:"tropical-beach-escape-snap"},ab5bdb9afa5f413cb69f44f6c66f6107:{slug:"love-lives-here-snap"},"992cfde9d662452a85251727eb0352af":{slug:"love-lives-here-snap"},f7b66e53f2b240ecb94925ee9efd1c74:{slug:"i-love-my-cat-snap"},c9ff30f54eca4b29b21ca470950b1d05:{slug:"i-love-my-cat-snap"},"942f72c77fa34aa8bd13ab578ca6fe33":{slug:"watercolour-sketchbook-snap"},"2317353266834774931aa785d4e05b12":{slug:"modern-rustic-snap"},c3eb76f2985d423d96e39a6ec57c918a:{slug:"modern-rustic-snap"},cb02fadb93d94376aec64fd8a9720326:{slug:"watercolour-wonders-snap"},ebb48d8ea163495aaa9e3d9304475dc6:{slug:"watercolour-wonders-snap"},b402922d282a444082f23cdc390b5e78:{slug:"rustic-family-snapshots-snap"},"211f6e4d9e464ba2a0af3c13a20ce6db":{slug:"rustic-family-snapshots-snap"},"2e72bb7784764ec287742570c6f06b3e":{slug:"family-memories-snap"},"85b49b5530b140dfad6d2d00addbe4d5":{slug:"family-memories-snap"},"0c7adbb49a4e4699b4e29a106aede17e":{slug:"family-memories-snap"},"5a8ae4bb758e4acdb71914c4a18239d9":{slug:"family-farmhouse-snap"},"3d7dc8102a0b417a8fd870b3b53f4590":{slug:"family-farmhouse-snap"},"997e4ef4c9ab4b3fb15b9294c4cc9903":{slug:"family-farmhouse-snap"},"50361bc54660463c8afc546e4e7ba72c":{slug:"family-farmhouse-snap"},"28efd73d75804430b3e7a9e70214af16":{slug:"family-farmhouse-snap"},"055c0346171142d0a509dbb3af5fede2":{slug:"family-farmhouse-snap"},"9ac6f2e7ea914cd19e63098b53bd14f7":{slug:"family-farmhouse-snap"},"9a25d842afdb4190821a173509e083db":{slug:"family-farmhouse-snap"},d4063fd502264de78939c0b2c7c5ce54:{slug:"sketched-botanicals-snap"},d28f41d697844c37bce62900ad3584b3:{slug:"sketched-botanicals-snap"},"264b3254cfb94763a85682c9d5d30b66":{slug:"magical-memories-snap"},"5f6e49144b18440cbfc98c17347c86d7":{slug:"magical-memories-snap"},"6c055d64606f45a58ae0aec52ea0220a":{slug:"magical-memories-snap"},dfe3425e16b348a6ae84a2924dfc3ae8:{slug:"magical-memories-snap"},"56658baebc744c5ea4d567871ad7347a":{slug:"magical-memories-snap"},"6e6520727c6d47c3abbaff96de9dba2d":{slug:"magical-memories-snap"},"58a64152487f4c96973cf50322bf64c6":{slug:"magical-memories-snap"},"4ad10fbb02494fc6b261e35a548b82e0":{slug:"magical-memories-snap"},"2caf5f95f446468b8521ccfce6b899d4":{slug:"magical-memories-snap"},"39cee881a7db4d31b3c825143c06ca22":{slug:"magical-memories-snap"},"922f0885706b45f6b099765dd5b21011":{slug:"magical-memories-snap"},"6ee70ed6f9494728a8944fd5ea567d53":{slug:"nautical-summer-snap"},"4c3a9279f46e4283b16214278473dd75":{slug:"nautical-summer-snap"},"949b49fee4f1462d8947dd03380f6c34":{slug:"nautical-summer-snap"},"8200c9f4ed694614822689c942d34b85":{slug:"travel-memories-snap"},"309042d2268243e7961044be8f8acd76":{slug:"travel-memories-snap"},"4354692d0cfb4c68ada770d08f5fced6":{slug:"travel-memories-snap"},"68ce90ad9a0e4420a36bd2d8e5648cee":{slug:"travel-memories-snap"},"270cc4ff176c460e9fa212679c1a586c":{slug:"travel-memories-snap"},f51a41ae43864148b115a4bc3a38f5b3:{slug:"travel-memories-snap"},"7aa2fd81e86e4be897feb718db18b828":{slug:"destination-stamps-snap"},"6ad7bed5e0a247c1a0aae329a76a0eee":{slug:"destination-stamps-snap"},"16f4a833c81a43709a13ae25da268f91":{slug:"contemporary-travel-snap"},f093b57c88354e7ba81a9330876c79ca:{slug:"contemporary-travel-snap"},a3061dd2d87c4504877bb7f5c99b1211:{slug:"contemporary-travel-snap"},a3dbaa569d6a41fa8e8e1f0344f2c384:{slug:"contemporary-travel-snap"},"7f4159644c3b490da42139e5d3e16c6c":{slug:"contemporary-travel-snap"},"704cc06d63354299a399bbffc0ac0904":{slug:"art-of-travel-snap"},"6c1b118fb5b74e7986453a376f2410cf":{slug:"art-of-travel-snap"},bb40e1dea2324e8a9a277bfb761e41ba:{slug:"roadtrip-snap"},d1a2b6748a994d15ae1deebaf8e95a6c:{slug:"roadtrip-snap"},"2bd1755f90e349a89c3e7d312ae377d9":{slug:"our-wedding-guests-snap"},f5b16a9ec77e4082909e9bb19ce90134:{slug:"our-wedding-guests-snap"},"6de70f303e4146408e124478d2457454":{slug:"our-wedding-guests-snap"},b311e9e0bbff45f2bf460e6b65ff5b90:{slug:"our-wedding-guests-snap"},"7718e93835974fda98b47dced031572a":{slug:"our-wedding-guests-snap"},c29fa2c5cdc4488193c8e4a35d248941:{slug:"our-wedding-guests-snap"},f11691e23d3d433b904e103f1c0bdc61:{slug:"our-wedding-guests-snap"},"50b3408d7c974802afddc7b5e77f9e49":{slug:"our-wedding-guests-snap"},e25e3bbfac76452fbf1b2e65e1847faa:{slug:"our-wedding-guests-snap"},a24050f001074214a6d3639bdd68e5bb:{slug:"our-wedding-guests-snap"},c462bcc146af4aa280b2dcb15df78dd8:{slug:"contemporary-wedding-snap"},"7b2a918f04e74e83acdea4cc56c655ce":{slug:"contemporary-wedding-snap"},"740a8bc48f094aa2ad4ece81bc1fe2d1":{slug:"rustic-chic-snap"},"70e6a6b844ba4b4c82b38ae04a7d200e":{slug:"rustic-chic-snap"},"4881c1254dc2446d90b91a7f95f4913b":{slug:"love-story-snap"},"734ac317449b45af82c187cb7ea87fd4":{slug:"all-about-love-snap"},"3f233ff58a8d4a3e8846b220ad7c14c3":{slug:"all-about-love-snap"},a8e08f61634e4b3295ab05383013acee:{slug:"all-about-love-snap"},"360f3c12782342c8be7dbd0b1c9e859e":{slug:"all-about-love-snap"},edcde48e72e34d9bab4abda4cdc3cbde:{slug:"all-about-love-snap"},ac9ce694b03c4770b5e259031a779fb4:{slug:"all-about-love-snap"},"0e4106f2fd0944b6a5759971c5adc500":{slug:"all-about-love-snap"},fe020b4a2deb47a4bdf23222d4d1fbe0:{slug:"all-about-love-snap"},de534e9d60c0492b91144c33921f7a37:{slug:"hello-baby-boy-snap"},c74154e2e87e4a82b1e5144c2ab51a89:{slug:"hello-baby-boy-snap"},cfb5b1c99a6f4afa9a02312f347a637a:{slug:"baby-girl-first-year-snap"},"1537bbe07a1e4bc390ad7a23e219c5f8":{slug:"baby-girl-first-year-snap"},"060374090b174ac9aad39a93c29954fc":{slug:"baby-boy-first-year-snap"},"07a27b25ac0c41c885a5bf553cb18393":{slug:"baby-boy-first-year-snap"},"2033031de33641a3a6053e26cf2c9f64":{slug:"over-the-moon-snap"},b306b97eb22a4e71a6fc5ab24cbde99a:{slug:"over-the-moon-snap"},ac476a66b13e4367b1bfa224a178fec4:{slug:"over-the-moon-snap"},af88db3bf6654909bb029f0809526ca2:{slug:"over-the-moon-snap"},d32fc0ad6048425e979dc0a2838c89a2:{slug:"over-the-moon-snap"},"4d98566f39a145d28994c3aafd268ff8":{slug:"golden-graduation-snap"},"345c4ac772b4453785e8dcf0b459592f":{slug:"golden-graduation-snap"},"6d0d1baeff274901997187c3c30a5492":{slug:"graduation-memories-snap"},"5eae0f9cc3fb47cfbb04d9f784cb422a":{slug:"graduation-memories-snap"},"7c8db06d650745c6903262fbce2fe77a":{slug:"graduation-memories-snap"},"4d9ac25de60844c5b04d5d3059ff2206":{slug:"graduation-memories-snap"},"413572714c484143b865f8092abd726a":{slug:"modern-graduation-snap"},"217d6bcef9fe4bbbbb45c168a37415a4":{slug:"ten-things-i-love-snap"},"03b4052f13734f06a7d3c7d2cc5fef29":{slug:"ten-things-i-love-snap"},"61be711b746b4c6793ebe1f060691243":{slug:"hearts-for-mum-snap"},"720b3f45d63549d6adb553bac87da9d1":{slug:"hearts-for-mum-snap"},"90e1610aff8d4d4cb501778fce2d4c12":{slug:"hearts-for-mum-snap"},f0083ea595384731bc2d1f1c087365f1:{slug:"hearts-for-mum-snap"},"010ad21286a1408ba856c44e00d7f751":{slug:"hearts-for-mum-snap"},dbb245094a37405bb68cdb15cdb93eab:{slug:"hearts-for-mum-snap"},"8ba8246fd3004c4f9245e03515b8ebd1":{slug:"hearts-for-mum-snap"},"3b78818fa3ea40118b94aa740abeaceb":{slug:"hearts-for-mum-snap"},a14ada32d6194f5d8536c394ab0f77f1:{slug:"hearts-for-mum-snap"},"60904c1320a84aec9d13729d4cec0838":{slug:"hearts-for-mum-snap"},"6c53bd9b18c54f29b8acd0bbed32ed26":{slug:"celebrating-grandma-snap"},"48e7480126b249a0b28d9ec192d7f6f9":{slug:"organic-shapes-snap"},"1c1e1823209a4d5d9facbe8f0ed8e7d4":{slug:"organic-shapes-snap"},"4ebaf63f1aeb47a89c15a4d6c6ead408":{slug:"organic-shapes-snap"},"5a408c0bc14c49dba8f3d538d9411b45":{slug:"organic-shapes-snap"},c8bfad2c53fc4d9091d7c858b24075cf:{slug:"organic-shapes-snap"},"06176cb4da334c4d82160957681cd11e":{slug:"organic-shapes-snap"},cac8566aee4a4fbcb362d609bc56334a:{slug:"studio-light-snap"},"5771ff862c394c9a8fcf4237a267651c":{slug:"studio-dark-snap"},"990e71b3b45d4baaa7236328c64c8364":{slug:"our-family-snap"},"2c5700f2b32c49d186b85e57449cdda6":{slug:"favourite-things-snap"},e276151076d94d279d0d0b3608e3fba7:{slug:"my-family-snap"},cbec6602c5474f8fafc1980fb068db2a:{slug:"graphic-love-snap"},c11db86d4af6468c82c03e63ccee03d2:{slug:"graphic-love-snap"},"01af1dbfd31448dd8afdb956c5369be3":{slug:"graphic-love-snap"},ac083e4b0ca44af9bc694afd0fdec9b1:{slug:"graphic-love-snap"},"9914c7e7a6974019af2f28841b271be5":{slug:"graphic-love-snap"},b6d4b71df3f24f24bb5f7f30ab97e593:{slug:"graphic-love-snap"},f8b67e571005409791ff3faf64aa4772:{slug:"graphic-love-snap"},b82386a8a64d41b0be57bccbf667121f:{slug:"graphic-love-snap"},d3ba2657e3524edcaac5cb4d000632c6:{slug:"graphic-love-snap"},b3aed2593b944db78bf5e72465d31b18:{slug:"graphic-love-snap"},cf600f86adcb494d9fbba02799aed443:{slug:"graphic-love-snap"},f39284122e594e46ae7a4fda586567ac:{slug:"graphic-love-snap"},"68a5490447e9432ca89d3e95d363e42c":{slug:"graphic-love-snap"},"5ca12c9b2a21496391b8265121361ae1":{slug:"graphic-love-snap"},"117aa84d8f464ee6933430cef5170566":{slug:"graphic-love-snap"},fc8152aed8414e43b511dabd3775dc3b:{slug:"graphic-love-snap"},ae5cf32acc7544269a0f6a866c484d17:{slug:"graphic-love-snap"},"5c293ff9fe6148ed836680b9dcf5eabd":{slug:"graphic-love-snap"},b3859e5367314872a95d088e8557aa98:{slug:"graphic-love-snap"}},Ce=["4.5x4","5x7","6x6","6x8","7x5","8x8","8x11","10x10","11x8","11x14","12x12"],je=["sc","hc","pl"],Ne=["sp","sl","dl","hg","s"],Re=["low","medium","high"],Pe=["best","most","all"],$e=["none","few","lots"],De=["none","few","lots"],ia={state:"timeout",slug:"timeout",progress:100,message:"Design timed out"},oa={state:"cancelled",slug:"cancelled",progress:100,message:"Design canceled"},ss=["galleon","snapfish"],ts=["inside","cover"];function qe(a,e){return Object.keys(e).map(s=>{typeof a[s]=="object"&&typeof e[s]=="object"?qe(a[s],e[s]):a[s]=e[s]}),a}function ns(a){return a.replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase()}function Qe(a){return Object.keys(a).map(e=>{let s=ns(e);s.includes("_")&&(a[s]=a[e],delete a[e]),typeof a[s]=="object"&&(a[s]=Qe(a[s]))}),a}function rs(a){return a.replace(/([-_][a-z])/g,e=>e.toUpperCase().replace("-","").replace("_",""))}function ea(a){return Object.keys(a).map(e=>{let s=rs(e);s!==e&&(a[s]=a[e],delete a[e]),typeof a[s]=="object"&&(a[s]=ea(a[s]))}),a}async function w(a){try{return await a()}catch(e){return Promise.reject(e)}}function K(a){for(let e of Object.getOwnPropertyNames(Object.getPrototypeOf(a)))typeof a[e]=="function"&&e!=="constructor"&&(a[e]=a[e].bind(a))}function Z(a){return JSON.parse(JSON.stringify(a))}function ds(a){for(let e in U)if(U[e].slug===a)return e;return a}var v;(function(a){a.assertEqual=t=>t;function e(t){}a.assertIs=e;function s(t){throw new Error}a.assertNever=s,a.arrayToEnum=t=>{let r={};for(let c of t)r[c]=c;return r},a.getValidEnumValues=t=>{let r=a.objectKeys(t).filter(l=>typeof t[t[l]]!="number"),c={};for(let l of r)c[l]=t[l];return a.objectValues(c)},a.objectValues=t=>a.objectKeys(t).map(function(r){return t[r]}),a.objectKeys=typeof Object.keys=="function"?t=>Object.keys(t):t=>{let r=[];for(let c in t)Object.prototype.hasOwnProperty.call(t,c)&&r.push(c);return r},a.find=(t,r)=>{for(let c of t)if(r(c))return c},a.isInteger=typeof Number.isInteger=="function"?t=>Number.isInteger(t):t=>typeof t=="number"&&isFinite(t)&&Math.floor(t)===t;function n(t,r=" | "){return t.map(c=>typeof c=="string"?`'${c}'`:c).join(r)}a.joinValues=n,a.jsonStringifyReplacer=(t,r)=>typeof r=="bigint"?r.toString():r})(v||(v={}));var Be;(function(a){a.mergeShapes=(e,s)=>({...e,...s})})(Be||(Be={}));var u=v.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),N=a=>{switch(typeof a){case"undefined":return u.undefined;case"string":return u.string;case"number":return isNaN(a)?u.nan:u.number;case"boolean":return u.boolean;case"function":return u.function;case"bigint":return u.bigint;case"symbol":return u.symbol;case"object":return Array.isArray(a)?u.array:a===null?u.null:a.then&&typeof a.then=="function"&&a.catch&&typeof a.catch=="function"?u.promise:typeof Map<"u"&&a instanceof Map?u.map:typeof Set<"u"&&a instanceof Set?u.set:typeof Date<"u"&&a instanceof Date?u.date:u.object;default:return u.unknown}},i=v.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),cs=a=>JSON.stringify(a,null,2).replace(/"([^"]+)":/g,"$1:"),A=class fa extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let s=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,s):this.__proto__=s,this.name="ZodError",this.issues=e}format(e){let s=e||function(r){return r.message},n={_errors:[]},t=r=>{for(let c of r.issues)if(c.code==="invalid_union")c.unionErrors.map(t);else if(c.code==="invalid_return_type")t(c.returnTypeError);else if(c.code==="invalid_arguments")t(c.argumentsError);else if(c.path.length===0)n._errors.push(s(c));else{let l=n,b=0;for(;b<c.path.length;){let f=c.path[b];b===c.path.length-1?(l[f]=l[f]||{_errors:[]},l[f]._errors.push(s(c))):l[f]=l[f]||{_errors:[]},l=l[f],b++}}};return t(this),n}static assert(e){if(!(e instanceof fa))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,v.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=s=>s.message){let s={},n=[];for(let t of this.issues)t.path.length>0?(s[t.path[0]]=s[t.path[0]]||[],s[t.path[0]].push(e(t))):n.push(e(t));return{formErrors:n,fieldErrors:s}}get formErrors(){return this.flatten()}};A.create=a=>new A(a);var F=(a,e)=>{let s;switch(a.code){case i.invalid_type:a.received===u.undefined?s="Required":s=`Expected ${a.expected}, received ${a.received}`;break;case i.invalid_literal:s=`Invalid literal value, expected ${JSON.stringify(a.expected,v.jsonStringifyReplacer)}`;break;case i.unrecognized_keys:s=`Unrecognized key(s) in object: ${v.joinValues(a.keys,", ")}`;break;case i.invalid_union:s="Invalid input";break;case i.invalid_union_discriminator:s=`Invalid discriminator value. Expected ${v.joinValues(a.options)}`;break;case i.invalid_enum_value:s=`Invalid enum value. Expected ${v.joinValues(a.options)}, received '${a.received}'`;break;case i.invalid_arguments:s="Invalid function arguments";break;case i.invalid_return_type:s="Invalid function return type";break;case i.invalid_date:s="Invalid date";break;case i.invalid_string:typeof a.validation=="object"?"includes"in a.validation?(s=`Invalid input: must include "${a.validation.includes}"`,typeof a.validation.position=="number"&&(s=`${s} at one or more positions greater than or equal to ${a.validation.position}`)):"startsWith"in a.validation?s=`Invalid input: must start with "${a.validation.startsWith}"`:"endsWith"in a.validation?s=`Invalid input: must end with "${a.validation.endsWith}"`:v.assertNever(a.validation):a.validation!=="regex"?s=`Invalid ${a.validation}`:s="Invalid";break;case i.too_small:a.type==="array"?s=`Array must contain ${a.exact?"exactly":a.inclusive?"at least":"more than"} ${a.minimum} element(s)`:a.type==="string"?s=`String must contain ${a.exact?"exactly":a.inclusive?"at least":"over"} ${a.minimum} character(s)`:a.type==="number"?s=`Number must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${a.minimum}`:a.type==="date"?s=`Date must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(a.minimum))}`:s="Invalid input";break;case i.too_big:a.type==="array"?s=`Array must contain ${a.exact?"exactly":a.inclusive?"at most":"less than"} ${a.maximum} element(s)`:a.type==="string"?s=`String must contain ${a.exact?"exactly":a.inclusive?"at most":"under"} ${a.maximum} character(s)`:a.type==="number"?s=`Number must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:a.type==="bigint"?s=`BigInt must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:a.type==="date"?s=`Date must be ${a.exact?"exactly":a.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(a.maximum))}`:s="Invalid input";break;case i.custom:s="Invalid input";break;case i.invalid_intersection_types:s="Intersection results could not be merged";break;case i.not_multiple_of:s=`Number must be a multiple of ${a.multipleOf}`;break;case i.not_finite:s="Number must be finite";break;default:s=e.defaultError,v.assertNever(a)}return{message:s}},ua=F;function ls(a){ua=a}function ke(){return ua}var xe=a=>{let{data:e,path:s,errorMaps:n,issueData:t}=a,r=[...s,...t.path||[]],c={...t,path:r};if(t.message!==void 0)return{...t,path:r,message:t.message};let l="",b=n.filter(f=>!!f).slice().reverse();for(let f of b)l=f(c,{data:e,defaultError:l}).message;return{...t,path:r,message:l}},is=[];function o(a,e){let s=ke(),n=xe({issueData:e,data:a.data,path:a.path,errorMaps:[a.common.contextualErrorMap,a.schemaErrorMap,s,s===F?void 0:F].filter(t=>!!t)});a.common.issues.push(n)}var x=class ba{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,s){let n=[];for(let t of s){if(t.status==="aborted")return m;t.status==="dirty"&&e.dirty(),n.push(t.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,s){let n=[];for(let t of s){let r=await t.key,c=await t.value;n.push({key:r,value:c})}return ba.mergeObjectSync(e,n)}static mergeObjectSync(e,s){let n={};for(let t of s){let{key:r,value:c}=t;if(r.status==="aborted"||c.status==="aborted")return m;r.status==="dirty"&&e.dirty(),c.status==="dirty"&&e.dirty(),r.value!=="__proto__"&&(typeof c.value<"u"||t.alwaysSet)&&(n[r.value]=c.value)}return{status:e.value,value:n}}},m=Object.freeze({status:"aborted"}),B=a=>({status:"dirty",value:a}),k=a=>({status:"valid",value:a}),Ue=a=>a.status==="aborted",Fe=a=>a.status==="dirty",L=a=>a.status==="valid",ae=a=>typeof Promise<"u"&&a instanceof Promise;function Se(a,e,s,n){if(s==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?a!==e||!n:!e.has(a))throw new TypeError("Cannot read private member from an object whose class did not declare it");return s==="m"?n:s==="a"?n.call(a):n?n.value:e.get(a)}function ga(a,e,s,n,t){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!t)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?a!==e||!t:!e.has(a))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?t.call(a,s):t?t.value=s:e.set(a,s),s}var g;(function(a){a.errToObj=e=>typeof e=="string"?{message:e}:e||{},a.toString=e=>typeof e=="string"?e:e?.message})(g||(g={}));var Y,G,C=class{constructor(a,e,s,n){this._cachedPath=[],this.parent=a,this.data=e,this._path=s,this._key=n}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},ra=(a,e)=>{if(L(e))return{success:!0,data:e.value};if(!a.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let s=new A(a.common.issues);return this._error=s,this._error}}};function h(a){if(!a)return{};let{errorMap:e,invalid_type_error:s,required_error:n,description:t}=a;if(e&&(s||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:t}:{errorMap:(c,l)=>{var b,f;let{message:_}=a;return c.code==="invalid_enum_value"?{message:_??l.defaultError}:typeof l.data>"u"?{message:(b=_??n)!==null&&b!==void 0?b:l.defaultError}:c.code!=="invalid_type"?{message:l.defaultError}:{message:(f=_??s)!==null&&f!==void 0?f:l.defaultError}},description:t}}var y=class{get description(){return this._def.description}_getType(a){return N(a.data)}_getOrReturnCtx(a,e){return e||{common:a.parent.common,data:a.data,parsedType:N(a.data),schemaErrorMap:this._def.errorMap,path:a.path,parent:a.parent}}_processInputParams(a){return{status:new x,ctx:{common:a.parent.common,data:a.data,parsedType:N(a.data),schemaErrorMap:this._def.errorMap,path:a.path,parent:a.parent}}}_parseSync(a){let e=this._parse(a);if(ae(e))throw new Error("Synchronous parse encountered promise.");return e}_parseAsync(a){let e=this._parse(a);return Promise.resolve(e)}parse(a,e){let s=this.safeParse(a,e);if(s.success)return s.data;throw s.error}safeParse(a,e){var s;let n={common:{issues:[],async:(s=e?.async)!==null&&s!==void 0?s:!1,contextualErrorMap:e?.errorMap},path:e?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:N(a)},t=this._parseSync({data:a,path:n.path,parent:n});return ra(n,t)}"~validate"(a){var e,s;let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:N(a)};if(!this["~standard"].async)try{let t=this._parseSync({data:a,path:[],parent:n});return L(t)?{value:t.value}:{issues:n.common.issues}}catch(t){!((s=(e=t?.message)===null||e===void 0?void 0:e.toLowerCase())===null||s===void 0)&&s.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:a,path:[],parent:n}).then(t=>L(t)?{value:t.value}:{issues:n.common.issues})}async parseAsync(a,e){let s=await this.safeParseAsync(a,e);if(s.success)return s.data;throw s.error}async safeParseAsync(a,e){let s={common:{issues:[],contextualErrorMap:e?.errorMap,async:!0},path:e?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:N(a)},n=this._parse({data:a,path:s.path,parent:s}),t=await(ae(n)?n:Promise.resolve(n));return ra(s,t)}refine(a,e){let s=n=>typeof e=="string"||typeof e>"u"?{message:e}:typeof e=="function"?e(n):e;return this._refinement((n,t)=>{let r=a(n),c=()=>t.addIssue({code:i.custom,...s(n)});return typeof Promise<"u"&&r instanceof Promise?r.then(l=>l?!0:(c(),!1)):r?!0:(c(),!1)})}refinement(a,e){return this._refinement((s,n)=>a(s)?!0:(n.addIssue(typeof e=="function"?e(s,n):e),!1))}_refinement(a){return new O({schema:this,typeName:p.ZodEffects,effect:{type:"refinement",refinement:a}})}superRefine(a){return this._refinement(a)}constructor(a){this.spa=this.safeParseAsync,this._def=a,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:e=>this["~validate"](e)}}optional(){return E.create(this,this._def)}nullable(){return $.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return z.create(this)}promise(){return J.create(this,this._def)}or(a){return le.create([this,a],this._def)}and(a){return ie.create(this,a,this._def)}transform(a){return new O({...h(this._def),schema:this,typeName:p.ZodEffects,effect:{type:"transform",transform:a}})}default(a){let e=typeof a=="function"?a:()=>a;return new be({...h(this._def),innerType:this,defaultValue:e,typeName:p.ZodDefault})}brand(){return new aa({typeName:p.ZodBranded,type:this,...h(this._def)})}catch(a){let e=typeof a=="function"?a:()=>a;return new ge({...h(this._def),innerType:this,catchValue:e,typeName:p.ZodCatch})}describe(a){let e=this.constructor;return new e({...this._def,description:a})}pipe(a){return sa.create(this,a)}readonly(){return pe.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},os=/^c[^\s-]{8,}$/i,fs=/^[0-9a-z]+$/,us=/^[0-9A-HJKMNP-TV-Z]{26}$/i,bs=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,gs=/^[a-z0-9_-]{21}$/i,ps=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ms=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,hs=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ys="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ze,vs=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,_s=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ws=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,ks=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,xs=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Ss=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,pa="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",Ts=new RegExp(`^${pa}$`);function ma(a){let e="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";return a.precision?e=`${e}\\.\\d{${a.precision}}`:a.precision==null&&(e=`${e}(\\.\\d+)?`),e}function Is(a){return new RegExp(`^${ma(a)}$`)}function ha(a){let e=`${pa}T${ma(a)}`,s=[];return s.push(a.local?"Z?":"Z"),a.offset&&s.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${s.join("|")})`,new RegExp(`^${e}$`)}function As(a,e){return!!((e==="v4"||!e)&&vs.test(a)||(e==="v6"||!e)&&ws.test(a))}function Os(a,e){if(!ps.test(a))return!1;try{let[s]=a.split("."),n=s.replace(/-/g,"+").replace(/_/g,"/").padEnd(s.length+(4-s.length%4)%4,"="),t=JSON.parse(atob(n));return!(typeof t!="object"||t===null||!t.typ||!t.alg||e&&t.alg!==e)}catch{return!1}}function Zs(a,e){return!!((e==="v4"||!e)&&_s.test(a)||(e==="v6"||!e)&&ks.test(a))}var W=class X extends y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==u.string){let r=this._getOrReturnCtx(e);return o(r,{code:i.invalid_type,expected:u.string,received:r.parsedType}),m}let n=new x,t;for(let r of this._def.checks)if(r.kind==="min")e.data.length<r.value&&(t=this._getOrReturnCtx(e,t),o(t,{code:i.too_small,minimum:r.value,type:"string",inclusive:!0,exact:!1,message:r.message}),n.dirty());else if(r.kind==="max")e.data.length>r.value&&(t=this._getOrReturnCtx(e,t),o(t,{code:i.too_big,maximum:r.value,type:"string",inclusive:!0,exact:!1,message:r.message}),n.dirty());else if(r.kind==="length"){let c=e.data.length>r.value,l=e.data.length<r.value;(c||l)&&(t=this._getOrReturnCtx(e,t),c?o(t,{code:i.too_big,maximum:r.value,type:"string",inclusive:!0,exact:!0,message:r.message}):l&&o(t,{code:i.too_small,minimum:r.value,type:"string",inclusive:!0,exact:!0,message:r.message}),n.dirty())}else if(r.kind==="email")hs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"email",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="emoji")ze||(ze=new RegExp(ys,"u")),ze.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"emoji",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="uuid")bs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"uuid",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="nanoid")gs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"nanoid",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="cuid")os.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"cuid",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="cuid2")fs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"cuid2",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="ulid")us.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"ulid",code:i.invalid_string,message:r.message}),n.dirty());else if(r.kind==="url")try{new URL(e.data)}catch{t=this._getOrReturnCtx(e,t),o(t,{validation:"url",code:i.invalid_string,message:r.message}),n.dirty()}else r.kind==="regex"?(r.regex.lastIndex=0,r.regex.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"regex",code:i.invalid_string,message:r.message}),n.dirty())):r.kind==="trim"?e.data=e.data.trim():r.kind==="includes"?e.data.includes(r.value,r.position)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:{includes:r.value,position:r.position},message:r.message}),n.dirty()):r.kind==="toLowerCase"?e.data=e.data.toLowerCase():r.kind==="toUpperCase"?e.data=e.data.toUpperCase():r.kind==="startsWith"?e.data.startsWith(r.value)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:{startsWith:r.value},message:r.message}),n.dirty()):r.kind==="endsWith"?e.data.endsWith(r.value)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:{endsWith:r.value},message:r.message}),n.dirty()):r.kind==="datetime"?ha(r).test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:"datetime",message:r.message}),n.dirty()):r.kind==="date"?Ts.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:"date",message:r.message}),n.dirty()):r.kind==="time"?Is(r).test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{code:i.invalid_string,validation:"time",message:r.message}),n.dirty()):r.kind==="duration"?ms.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"duration",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="ip"?As(e.data,r.version)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"ip",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="jwt"?Os(e.data,r.alg)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"jwt",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="cidr"?Zs(e.data,r.version)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"cidr",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="base64"?xs.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"base64",code:i.invalid_string,message:r.message}),n.dirty()):r.kind==="base64url"?Ss.test(e.data)||(t=this._getOrReturnCtx(e,t),o(t,{validation:"base64url",code:i.invalid_string,message:r.message}),n.dirty()):v.assertNever(r);return{status:n.value,value:e.data}}_regex(e,s,n){return this.refinement(t=>e.test(t),{validation:s,code:i.invalid_string,...g.errToObj(n)})}_addCheck(e){return new X({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...g.errToObj(e)})}url(e){return this._addCheck({kind:"url",...g.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...g.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...g.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...g.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...g.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...g.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...g.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...g.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...g.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...g.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...g.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...g.errToObj(e)})}datetime(e){var s,n;return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:(s=e?.offset)!==null&&s!==void 0?s:!1,local:(n=e?.local)!==null&&n!==void 0?n:!1,...g.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...g.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...g.errToObj(e)})}regex(e,s){return this._addCheck({kind:"regex",regex:e,...g.errToObj(s)})}includes(e,s){return this._addCheck({kind:"includes",value:e,position:s?.position,...g.errToObj(s?.message)})}startsWith(e,s){return this._addCheck({kind:"startsWith",value:e,...g.errToObj(s)})}endsWith(e,s){return this._addCheck({kind:"endsWith",value:e,...g.errToObj(s)})}min(e,s){return this._addCheck({kind:"min",value:e,...g.errToObj(s)})}max(e,s){return this._addCheck({kind:"max",value:e,...g.errToObj(s)})}length(e,s){return this._addCheck({kind:"length",value:e,...g.errToObj(s)})}nonempty(e){return this.min(1,g.errToObj(e))}trim(){return new X({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new X({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new X({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxLength(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}};W.create=a=>{var e;return new W({checks:[],typeName:p.ZodString,coerce:(e=a?.coerce)!==null&&e!==void 0?e:!1,...h(a)})};function Es(a,e){let s=(a.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,t=s>n?s:n,r=parseInt(a.toFixed(t).replace(".","")),c=parseInt(e.toFixed(t).replace(".",""));return r%c/Math.pow(10,t)}var se=class We extends y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==u.number){let r=this._getOrReturnCtx(e);return o(r,{code:i.invalid_type,expected:u.number,received:r.parsedType}),m}let n,t=new x;for(let r of this._def.checks)r.kind==="int"?v.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),o(n,{code:i.invalid_type,expected:"integer",received:"float",message:r.message}),t.dirty()):r.kind==="min"?(r.inclusive?e.data<r.value:e.data<=r.value)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.too_small,minimum:r.value,type:"number",inclusive:r.inclusive,exact:!1,message:r.message}),t.dirty()):r.kind==="max"?(r.inclusive?e.data>r.value:e.data>=r.value)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.too_big,maximum:r.value,type:"number",inclusive:r.inclusive,exact:!1,message:r.message}),t.dirty()):r.kind==="multipleOf"?Es(e.data,r.value)!==0&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.not_multiple_of,multipleOf:r.value,message:r.message}),t.dirty()):r.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),o(n,{code:i.not_finite,message:r.message}),t.dirty()):v.assertNever(r);return{status:t.value,value:e.data}}gte(e,s){return this.setLimit("min",e,!0,g.toString(s))}gt(e,s){return this.setLimit("min",e,!1,g.toString(s))}lte(e,s){return this.setLimit("max",e,!0,g.toString(s))}lt(e,s){return this.setLimit("max",e,!1,g.toString(s))}setLimit(e,s,n,t){return new We({...this._def,checks:[...this._def.checks,{kind:e,value:s,inclusive:n,message:g.toString(t)}]})}_addCheck(e){return new We({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:g.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:g.toString(e)})}multipleOf(e,s){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(s)})}finite(e){return this._addCheck({kind:"finite",message:g.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:g.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:g.toString(e)})}get minValue(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxValue(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&v.isInteger(e.value))}get isFinite(){let e=null,s=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(s===null||n.value>s)&&(s=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(s)&&Number.isFinite(e)}};se.create=a=>new se({checks:[],typeName:p.ZodNumber,coerce:a?.coerce||!1,...h(a)});var te=class He extends y{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==u.bigint)return this._getInvalidInput(e);let n,t=new x;for(let r of this._def.checks)r.kind==="min"?(r.inclusive?e.data<r.value:e.data<=r.value)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.too_small,type:"bigint",minimum:r.value,inclusive:r.inclusive,message:r.message}),t.dirty()):r.kind==="max"?(r.inclusive?e.data>r.value:e.data>=r.value)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.too_big,type:"bigint",maximum:r.value,inclusive:r.inclusive,message:r.message}),t.dirty()):r.kind==="multipleOf"?e.data%r.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),o(n,{code:i.not_multiple_of,multipleOf:r.value,message:r.message}),t.dirty()):v.assertNever(r);return{status:t.value,value:e.data}}_getInvalidInput(e){let s=this._getOrReturnCtx(e);return o(s,{code:i.invalid_type,expected:u.bigint,received:s.parsedType}),m}gte(e,s){return this.setLimit("min",e,!0,g.toString(s))}gt(e,s){return this.setLimit("min",e,!1,g.toString(s))}lte(e,s){return this.setLimit("max",e,!0,g.toString(s))}lt(e,s){return this.setLimit("max",e,!1,g.toString(s))}setLimit(e,s,n,t){return new He({...this._def,checks:[...this._def.checks,{kind:e,value:s,inclusive:n,message:g.toString(t)}]})}_addCheck(e){return new He({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:g.toString(e)})}multipleOf(e,s){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(s)})}get minValue(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e}get maxValue(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e}};te.create=a=>{var e;return new te({checks:[],typeName:p.ZodBigInt,coerce:(e=a?.coerce)!==null&&e!==void 0?e:!1,...h(a)})};var ne=class extends y{_parse(a){if(this._def.coerce&&(a.data=!!a.data),this._getType(a)!==u.boolean){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.boolean,received:s.parsedType}),m}return k(a.data)}};ne.create=a=>new ne({typeName:p.ZodBoolean,coerce:a?.coerce||!1,...h(a)});var re=class ya extends y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==u.date){let r=this._getOrReturnCtx(e);return o(r,{code:i.invalid_type,expected:u.date,received:r.parsedType}),m}if(isNaN(e.data.getTime())){let r=this._getOrReturnCtx(e);return o(r,{code:i.invalid_date}),m}let n=new x,t;for(let r of this._def.checks)r.kind==="min"?e.data.getTime()<r.value&&(t=this._getOrReturnCtx(e,t),o(t,{code:i.too_small,message:r.message,inclusive:!0,exact:!1,minimum:r.value,type:"date"}),n.dirty()):r.kind==="max"?e.data.getTime()>r.value&&(t=this._getOrReturnCtx(e,t),o(t,{code:i.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:"date"}),n.dirty()):v.assertNever(r);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new ya({...this._def,checks:[...this._def.checks,e]})}min(e,s){return this._addCheck({kind:"min",value:e.getTime(),message:g.toString(s)})}max(e,s){return this._addCheck({kind:"max",value:e.getTime(),message:g.toString(s)})}get minDate(){let e=null;for(let s of this._def.checks)s.kind==="min"&&(e===null||s.value>e)&&(e=s.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let s of this._def.checks)s.kind==="max"&&(e===null||s.value<e)&&(e=s.value);return e!=null?new Date(e):null}};re.create=a=>new re({checks:[],coerce:a?.coerce||!1,typeName:p.ZodDate,...h(a)});var Te=class extends y{_parse(a){if(this._getType(a)!==u.symbol){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.symbol,received:s.parsedType}),m}return k(a.data)}};Te.create=a=>new Te({typeName:p.ZodSymbol,...h(a)});var de=class extends y{_parse(a){if(this._getType(a)!==u.undefined){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.undefined,received:s.parsedType}),m}return k(a.data)}};de.create=a=>new de({typeName:p.ZodUndefined,...h(a)});var ce=class extends y{_parse(a){if(this._getType(a)!==u.null){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.null,received:s.parsedType}),m}return k(a.data)}};ce.create=a=>new ce({typeName:p.ZodNull,...h(a)});var H=class extends y{constructor(){super(...arguments),this._any=!0}_parse(a){return k(a.data)}};H.create=a=>new H({typeName:p.ZodAny,...h(a)});var M=class extends y{constructor(){super(...arguments),this._unknown=!0}_parse(a){return k(a.data)}};M.create=a=>new M({typeName:p.ZodUnknown,...h(a)});var R=class extends y{_parse(a){let e=this._getOrReturnCtx(a);return o(e,{code:i.invalid_type,expected:u.never,received:e.parsedType}),m}};R.create=a=>new R({typeName:p.ZodNever,...h(a)});var Ie=class extends y{_parse(a){if(this._getType(a)!==u.undefined){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.void,received:s.parsedType}),m}return k(a.data)}};Ie.create=a=>new Ie({typeName:p.ZodVoid,...h(a)});var z=class he extends y{_parse(e){let{ctx:s,status:n}=this._processInputParams(e),t=this._def;if(s.parsedType!==u.array)return o(s,{code:i.invalid_type,expected:u.array,received:s.parsedType}),m;if(t.exactLength!==null){let c=s.data.length>t.exactLength.value,l=s.data.length<t.exactLength.value;(c||l)&&(o(s,{code:c?i.too_big:i.too_small,minimum:l?t.exactLength.value:void 0,maximum:c?t.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:t.exactLength.message}),n.dirty())}if(t.minLength!==null&&s.data.length<t.minLength.value&&(o(s,{code:i.too_small,minimum:t.minLength.value,type:"array",inclusive:!0,exact:!1,message:t.minLength.message}),n.dirty()),t.maxLength!==null&&s.data.length>t.maxLength.value&&(o(s,{code:i.too_big,maximum:t.maxLength.value,type:"array",inclusive:!0,exact:!1,message:t.maxLength.message}),n.dirty()),s.common.async)return Promise.all([...s.data].map((c,l)=>t.type._parseAsync(new C(s,c,s.path,l)))).then(c=>x.mergeArray(n,c));let r=[...s.data].map((c,l)=>t.type._parseSync(new C(s,c,s.path,l)));return x.mergeArray(n,r)}get element(){return this._def.type}min(e,s){return new he({...this._def,minLength:{value:e,message:g.toString(s)}})}max(e,s){return new he({...this._def,maxLength:{value:e,message:g.toString(s)}})}length(e,s){return new he({...this._def,exactLength:{value:e,message:g.toString(s)}})}nonempty(e){return this.min(1,e)}};z.create=(a,e)=>new z({type:a,minLength:null,maxLength:null,exactLength:null,typeName:p.ZodArray,...h(e)});function V(a){if(a instanceof T){let e={};for(let s in a.shape){let n=a.shape[s];e[s]=E.create(V(n))}return new T({...a._def,shape:()=>e})}else return a instanceof z?new z({...a._def,type:V(a.element)}):a instanceof E?E.create(V(a.unwrap())):a instanceof $?$.create(V(a.unwrap())):a instanceof P?P.create(a.items.map(e=>V(e))):a}var T=class I extends y{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),s=v.objectKeys(e);return this._cached={shape:e,keys:s}}_parse(e){if(this._getType(e)!==u.object){let f=this._getOrReturnCtx(e);return o(f,{code:i.invalid_type,expected:u.object,received:f.parsedType}),m}let{status:n,ctx:t}=this._processInputParams(e),{shape:r,keys:c}=this._getCached(),l=[];if(!(this._def.catchall instanceof R&&this._def.unknownKeys==="strip"))for(let f in t.data)c.includes(f)||l.push(f);let b=[];for(let f of c){let _=r[f],S=t.data[f];b.push({key:{status:"valid",value:f},value:_._parse(new C(t,S,t.path,f)),alwaysSet:f in t.data})}if(this._def.catchall instanceof R){let f=this._def.unknownKeys;if(f==="passthrough")for(let _ of l)b.push({key:{status:"valid",value:_},value:{status:"valid",value:t.data[_]}});else if(f==="strict")l.length>0&&(o(t,{code:i.unrecognized_keys,keys:l}),n.dirty());else if(f!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let f=this._def.catchall;for(let _ of l){let S=t.data[_];b.push({key:{status:"valid",value:_},value:f._parse(new C(t,S,t.path,_)),alwaysSet:_ in t.data})}}return t.common.async?Promise.resolve().then(async()=>{let f=[];for(let _ of b){let S=await _.key,na=await _.value;f.push({key:S,value:na,alwaysSet:_.alwaysSet})}return f}).then(f=>x.mergeObjectSync(n,f)):x.mergeObjectSync(n,b)}get shape(){return this._def.shape()}strict(e){return g.errToObj,new I({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(s,n)=>{var t,r,c,l;let b=(c=(r=(t=this._def).errorMap)===null||r===void 0?void 0:r.call(t,s,n).message)!==null&&c!==void 0?c:n.defaultError;return s.code==="unrecognized_keys"?{message:(l=g.errToObj(e).message)!==null&&l!==void 0?l:b}:{message:b}}}:{}})}strip(){return new I({...this._def,unknownKeys:"strip"})}passthrough(){return new I({...this._def,unknownKeys:"passthrough"})}extend(e){return new I({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new I({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:p.ZodObject})}setKey(e,s){return this.augment({[e]:s})}catchall(e){return new I({...this._def,catchall:e})}pick(e){let s={};return v.objectKeys(e).forEach(n=>{e[n]&&this.shape[n]&&(s[n]=this.shape[n])}),new I({...this._def,shape:()=>s})}omit(e){let s={};return v.objectKeys(this.shape).forEach(n=>{e[n]||(s[n]=this.shape[n])}),new I({...this._def,shape:()=>s})}deepPartial(){return V(this)}partial(e){let s={};return v.objectKeys(this.shape).forEach(n=>{let t=this.shape[n];e&&!e[n]?s[n]=t:s[n]=t.optional()}),new I({...this._def,shape:()=>s})}required(e){let s={};return v.objectKeys(this.shape).forEach(n=>{if(e&&!e[n])s[n]=this.shape[n];else{let r=this.shape[n];for(;r instanceof E;)r=r._def.innerType;s[n]=r}}),new I({...this._def,shape:()=>s})}keyof(){return Sa(v.objectKeys(this.shape))}};T.create=(a,e)=>new T({shape:()=>a,unknownKeys:"strip",catchall:R.create(),typeName:p.ZodObject,...h(e)});T.strictCreate=(a,e)=>new T({shape:()=>a,unknownKeys:"strict",catchall:R.create(),typeName:p.ZodObject,...h(e)});T.lazycreate=(a,e)=>new T({shape:a,unknownKeys:"strip",catchall:R.create(),typeName:p.ZodObject,...h(e)});var le=class extends y{_parse(a){let{ctx:e}=this._processInputParams(a),s=this._def.options;function n(t){for(let c of t)if(c.result.status==="valid")return c.result;for(let c of t)if(c.result.status==="dirty")return e.common.issues.push(...c.ctx.common.issues),c.result;let r=t.map(c=>new A(c.ctx.common.issues));return o(e,{code:i.invalid_union,unionErrors:r}),m}if(e.common.async)return Promise.all(s.map(async t=>{let r={...e,common:{...e.common,issues:[]},parent:null};return{result:await t._parseAsync({data:e.data,path:e.path,parent:r}),ctx:r}})).then(n);{let t,r=[];for(let l of s){let b={...e,common:{...e.common,issues:[]},parent:null},f=l._parseSync({data:e.data,path:e.path,parent:b});if(f.status==="valid")return f;f.status==="dirty"&&!t&&(t={result:f,ctx:b}),b.common.issues.length&&r.push(b.common.issues)}if(t)return e.common.issues.push(...t.ctx.common.issues),t.result;let c=r.map(l=>new A(l));return o(e,{code:i.invalid_union,unionErrors:c}),m}}get options(){return this._def.options}};le.create=(a,e)=>new le({options:a,typeName:p.ZodUnion,...h(e)});var j=a=>a instanceof oe?j(a.schema):a instanceof O?j(a.innerType()):a instanceof fe?[a.value]:a instanceof me?a.options:a instanceof ue?v.objectValues(a.enum):a instanceof be?j(a._def.innerType):a instanceof de?[void 0]:a instanceof ce?[null]:a instanceof E?[void 0,...j(a.unwrap())]:a instanceof $?[null,...j(a.unwrap())]:a instanceof aa||a instanceof pe?j(a.unwrap()):a instanceof ge?j(a._def.innerType):[],va=class _a extends y{_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==u.object)return o(s,{code:i.invalid_type,expected:u.object,received:s.parsedType}),m;let n=this.discriminator,t=s.data[n],r=this.optionsMap.get(t);return r?s.common.async?r._parseAsync({data:s.data,path:s.path,parent:s}):r._parseSync({data:s.data,path:s.path,parent:s}):(o(s,{code:i.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),m)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,s,n){let t=new Map;for(let r of s){let c=j(r.shape[e]);if(!c.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let l of c){if(t.has(l))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(l)}`);t.set(l,r)}}return new _a({typeName:p.ZodDiscriminatedUnion,discriminator:e,options:s,optionsMap:t,...h(n)})}};function Je(a,e){let s=N(a),n=N(e);if(a===e)return{valid:!0,data:a};if(s===u.object&&n===u.object){let t=v.objectKeys(e),r=v.objectKeys(a).filter(l=>t.indexOf(l)!==-1),c={...a,...e};for(let l of r){let b=Je(a[l],e[l]);if(!b.valid)return{valid:!1};c[l]=b.data}return{valid:!0,data:c}}else if(s===u.array&&n===u.array){if(a.length!==e.length)return{valid:!1};let t=[];for(let r=0;r<a.length;r++){let c=a[r],l=e[r],b=Je(c,l);if(!b.valid)return{valid:!1};t.push(b.data)}return{valid:!0,data:t}}else return s===u.date&&n===u.date&&+a==+e?{valid:!0,data:a}:{valid:!1}}var ie=class extends y{_parse(a){let{status:e,ctx:s}=this._processInputParams(a),n=(t,r)=>{if(Ue(t)||Ue(r))return m;let c=Je(t.value,r.value);return c.valid?((Fe(t)||Fe(r))&&e.dirty(),{status:e.value,value:c.data}):(o(s,{code:i.invalid_intersection_types}),m)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([t,r])=>n(t,r)):n(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}};ie.create=(a,e,s)=>new ie({left:a,right:e,typeName:p.ZodIntersection,...h(s)});var P=class wa extends y{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==u.array)return o(n,{code:i.invalid_type,expected:u.array,received:n.parsedType}),m;if(n.data.length<this._def.items.length)return o(n,{code:i.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),m;!this._def.rest&&n.data.length>this._def.items.length&&(o(n,{code:i.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),s.dirty());let r=[...n.data].map((c,l)=>{let b=this._def.items[l]||this._def.rest;return b?b._parse(new C(n,c,n.path,l)):null}).filter(c=>!!c);return n.common.async?Promise.all(r).then(c=>x.mergeArray(s,c)):x.mergeArray(s,r)}get items(){return this._def.items}rest(e){return new wa({...this._def,rest:e})}};P.create=(a,e)=>{if(!Array.isArray(a))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new P({items:a,typeName:p.ZodTuple,rest:null,...h(e)})};var ka=class Ke extends y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==u.object)return o(n,{code:i.invalid_type,expected:u.object,received:n.parsedType}),m;let t=[],r=this._def.keyType,c=this._def.valueType;for(let l in n.data)t.push({key:r._parse(new C(n,l,n.path,l)),value:c._parse(new C(n,n.data[l],n.path,l)),alwaysSet:l in n.data});return n.common.async?x.mergeObjectAsync(s,t):x.mergeObjectSync(s,t)}get element(){return this._def.valueType}static create(e,s,n){return s instanceof y?new Ke({keyType:e,valueType:s,typeName:p.ZodRecord,...h(n)}):new Ke({keyType:W.create(),valueType:e,typeName:p.ZodRecord,...h(s)})}},Ae=class extends y{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(a){let{status:e,ctx:s}=this._processInputParams(a);if(s.parsedType!==u.map)return o(s,{code:i.invalid_type,expected:u.map,received:s.parsedType}),m;let n=this._def.keyType,t=this._def.valueType,r=[...s.data.entries()].map(([c,l],b)=>({key:n._parse(new C(s,c,s.path,[b,"key"])),value:t._parse(new C(s,l,s.path,[b,"value"]))}));if(s.common.async){let c=new Map;return Promise.resolve().then(async()=>{for(let l of r){let b=await l.key,f=await l.value;if(b.status==="aborted"||f.status==="aborted")return m;(b.status==="dirty"||f.status==="dirty")&&e.dirty(),c.set(b.value,f.value)}return{status:e.value,value:c}})}else{let c=new Map;for(let l of r){let b=l.key,f=l.value;if(b.status==="aborted"||f.status==="aborted")return m;(b.status==="dirty"||f.status==="dirty")&&e.dirty(),c.set(b.value,f.value)}return{status:e.value,value:c}}}};Ae.create=(a,e,s)=>new Ae({valueType:e,keyType:a,typeName:p.ZodMap,...h(s)});var Oe=class Ye extends y{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.parsedType!==u.set)return o(n,{code:i.invalid_type,expected:u.set,received:n.parsedType}),m;let t=this._def;t.minSize!==null&&n.data.size<t.minSize.value&&(o(n,{code:i.too_small,minimum:t.minSize.value,type:"set",inclusive:!0,exact:!1,message:t.minSize.message}),s.dirty()),t.maxSize!==null&&n.data.size>t.maxSize.value&&(o(n,{code:i.too_big,maximum:t.maxSize.value,type:"set",inclusive:!0,exact:!1,message:t.maxSize.message}),s.dirty());let r=this._def.valueType;function c(b){let f=new Set;for(let _ of b){if(_.status==="aborted")return m;_.status==="dirty"&&s.dirty(),f.add(_.value)}return{status:s.value,value:f}}let l=[...n.data.values()].map((b,f)=>r._parse(new C(n,b,n.path,f)));return n.common.async?Promise.all(l).then(b=>c(b)):c(l)}min(e,s){return new Ye({...this._def,minSize:{value:e,message:g.toString(s)}})}max(e,s){return new Ye({...this._def,maxSize:{value:e,message:g.toString(s)}})}size(e,s){return this.min(e,s).max(e,s)}nonempty(e){return this.min(1,e)}};Oe.create=(a,e)=>new Oe({valueType:a,minSize:null,maxSize:null,typeName:p.ZodSet,...h(e)});var xa=class ye extends y{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:s}=this._processInputParams(e);if(s.parsedType!==u.function)return o(s,{code:i.invalid_type,expected:u.function,received:s.parsedType}),m;function n(l,b){return xe({data:l,path:s.path,errorMaps:[s.common.contextualErrorMap,s.schemaErrorMap,ke(),F].filter(f=>!!f),issueData:{code:i.invalid_arguments,argumentsError:b}})}function t(l,b){return xe({data:l,path:s.path,errorMaps:[s.common.contextualErrorMap,s.schemaErrorMap,ke(),F].filter(f=>!!f),issueData:{code:i.invalid_return_type,returnTypeError:b}})}let r={errorMap:s.common.contextualErrorMap},c=s.data;if(this._def.returns instanceof J){let l=this;return k(async function(...b){let f=new A([]),_=await l._def.args.parseAsync(b,r).catch(Me=>{throw f.addIssue(n(b,Me)),f}),S=await Reflect.apply(c,this,_);return await l._def.returns._def.type.parseAsync(S,r).catch(Me=>{throw f.addIssue(t(S,Me)),f})})}else{let l=this;return k(function(...b){let f=l._def.args.safeParse(b,r);if(!f.success)throw new A([n(b,f.error)]);let _=Reflect.apply(c,this,f.data),S=l._def.returns.safeParse(_,r);if(!S.success)throw new A([t(_,S.error)]);return S.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new ye({...this._def,args:P.create(e).rest(M.create())})}returns(e){return new ye({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,s,n){return new ye({args:e||P.create([]).rest(M.create()),returns:s||M.create(),typeName:p.ZodFunction,...h(n)})}},oe=class extends y{get schema(){return this._def.getter()}_parse(a){let{ctx:e}=this._processInputParams(a);return this._def.getter()._parse({data:e.data,path:e.path,parent:e})}};oe.create=(a,e)=>new oe({getter:a,typeName:p.ZodLazy,...h(e)});var fe=class extends y{_parse(a){if(a.data!==this._def.value){let e=this._getOrReturnCtx(a);return o(e,{received:e.data,code:i.invalid_literal,expected:this._def.value}),m}return{status:"valid",value:a.data}}get value(){return this._def.value}};fe.create=(a,e)=>new fe({value:a,typeName:p.ZodLiteral,...h(e)});function Sa(a,e){return new me({values:a,typeName:p.ZodEnum,...h(e)})}var me=class Ge extends y{constructor(){super(...arguments),Y.set(this,void 0)}_parse(e){if(typeof e.data!="string"){let s=this._getOrReturnCtx(e),n=this._def.values;return o(s,{expected:v.joinValues(n),received:s.parsedType,code:i.invalid_type}),m}if(Se(this,Y,"f")||ga(this,Y,new Set(this._def.values),"f"),!Se(this,Y,"f").has(e.data)){let s=this._getOrReturnCtx(e),n=this._def.values;return o(s,{received:s.data,code:i.invalid_enum_value,options:n}),m}return k(e.data)}get options(){return this._def.values}get enum(){let e={};for(let s of this._def.values)e[s]=s;return e}get Values(){let e={};for(let s of this._def.values)e[s]=s;return e}get Enum(){let e={};for(let s of this._def.values)e[s]=s;return e}extract(e,s=this._def){return Ge.create(e,{...this._def,...s})}exclude(e,s=this._def){return Ge.create(this.options.filter(n=>!e.includes(n)),{...this._def,...s})}};Y=new WeakMap;me.create=Sa;var ue=class extends y{constructor(){super(...arguments),G.set(this,void 0)}_parse(a){let e=v.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(a);if(s.parsedType!==u.string&&s.parsedType!==u.number){let n=v.objectValues(e);return o(s,{expected:v.joinValues(n),received:s.parsedType,code:i.invalid_type}),m}if(Se(this,G,"f")||ga(this,G,new Set(v.getValidEnumValues(this._def.values)),"f"),!Se(this,G,"f").has(a.data)){let n=v.objectValues(e);return o(s,{received:s.data,code:i.invalid_enum_value,options:n}),m}return k(a.data)}get enum(){return this._def.values}};G=new WeakMap;ue.create=(a,e)=>new ue({values:a,typeName:p.ZodNativeEnum,...h(e)});var J=class extends y{unwrap(){return this._def.type}_parse(a){let{ctx:e}=this._processInputParams(a);if(e.parsedType!==u.promise&&e.common.async===!1)return o(e,{code:i.invalid_type,expected:u.promise,received:e.parsedType}),m;let s=e.parsedType===u.promise?e.data:Promise.resolve(e.data);return k(s.then(n=>this._def.type.parseAsync(n,{path:e.path,errorMap:e.common.contextualErrorMap})))}};J.create=(a,e)=>new J({type:a,typeName:p.ZodPromise,...h(e)});var O=class extends y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===p.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(a){let{status:e,ctx:s}=this._processInputParams(a),n=this._def.effect||null,t={addIssue:r=>{o(s,r),r.fatal?e.abort():e.dirty()},get path(){return s.path}};if(t.addIssue=t.addIssue.bind(t),n.type==="preprocess"){let r=n.transform(s.data,t);if(s.common.async)return Promise.resolve(r).then(async c=>{if(e.value==="aborted")return m;let l=await this._def.schema._parseAsync({data:c,path:s.path,parent:s});return l.status==="aborted"?m:l.status==="dirty"||e.value==="dirty"?B(l.value):l});{if(e.value==="aborted")return m;let c=this._def.schema._parseSync({data:r,path:s.path,parent:s});return c.status==="aborted"?m:c.status==="dirty"||e.value==="dirty"?B(c.value):c}}if(n.type==="refinement"){let r=c=>{let l=n.refinement(c,t);if(s.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return c};if(s.common.async===!1){let c=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return c.status==="aborted"?m:(c.status==="dirty"&&e.dirty(),r(c.value),{status:e.value,value:c.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(c=>c.status==="aborted"?m:(c.status==="dirty"&&e.dirty(),r(c.value).then(()=>({status:e.value,value:c.value}))))}if(n.type==="transform")if(s.common.async===!1){let r=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!L(r))return r;let c=n.transform(r.value,t);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:e.value,value:c}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(r=>L(r)?Promise.resolve(n.transform(r.value,t)).then(c=>({status:e.value,value:c})):r);v.assertNever(n)}};O.create=(a,e,s)=>new O({schema:a,typeName:p.ZodEffects,effect:e,...h(s)});O.createWithPreprocess=(a,e,s)=>new O({schema:e,effect:{type:"preprocess",transform:a},typeName:p.ZodEffects,...h(s)});var E=class extends y{_parse(a){return this._getType(a)===u.undefined?k(void 0):this._def.innerType._parse(a)}unwrap(){return this._def.innerType}};E.create=(a,e)=>new E({innerType:a,typeName:p.ZodOptional,...h(e)});var $=class extends y{_parse(a){return this._getType(a)===u.null?k(null):this._def.innerType._parse(a)}unwrap(){return this._def.innerType}};$.create=(a,e)=>new $({innerType:a,typeName:p.ZodNullable,...h(e)});var be=class extends y{_parse(a){let{ctx:e}=this._processInputParams(a),s=e.data;return e.parsedType===u.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:e.path,parent:e})}removeDefault(){return this._def.innerType}};be.create=(a,e)=>new be({innerType:a,typeName:p.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...h(e)});var ge=class extends y{_parse(a){let{ctx:e}=this._processInputParams(a),s={...e,common:{...e.common,issues:[]}},n=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return ae(n)?n.then(t=>({status:"valid",value:t.status==="valid"?t.value:this._def.catchValue({get error(){return new A(s.common.issues)},input:s.data})})):{status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new A(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}};ge.create=(a,e)=>new ge({innerType:a,typeName:p.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...h(e)});var Ze=class extends y{_parse(a){if(this._getType(a)!==u.nan){let s=this._getOrReturnCtx(a);return o(s,{code:i.invalid_type,expected:u.nan,received:s.parsedType}),m}return{status:"valid",value:a.data}}};Ze.create=a=>new Ze({typeName:p.ZodNaN,...h(a)});var Cs=Symbol("zod_brand"),aa=class extends y{_parse(a){let{ctx:e}=this._processInputParams(a),s=e.data;return this._def.type._parse({data:s,path:e.path,parent:e})}unwrap(){return this._def.type}},sa=class Ta extends y{_parse(e){let{status:s,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let r=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return r.status==="aborted"?m:r.status==="dirty"?(s.dirty(),B(r.value)):this._def.out._parseAsync({data:r.value,path:n.path,parent:n})})();{let t=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return t.status==="aborted"?m:t.status==="dirty"?(s.dirty(),{status:"dirty",value:t.value}):this._def.out._parseSync({data:t.value,path:n.path,parent:n})}}static create(e,s){return new Ta({in:e,out:s,typeName:p.ZodPipeline})}},pe=class extends y{_parse(a){let e=this._def.innerType._parse(a),s=n=>(L(n)&&(n.value=Object.freeze(n.value)),n);return ae(e)?e.then(n=>s(n)):s(e)}unwrap(){return this._def.innerType}};pe.create=(a,e)=>new pe({innerType:a,typeName:p.ZodReadonly,...h(e)});function Ia(a,e={},s){return a?H.create().superRefine((n,t)=>{var r,c;if(!a(n)){let l=typeof e=="function"?e(n):typeof e=="string"?{message:e}:e,b=(c=(r=l.fatal)!==null&&r!==void 0?r:s)!==null&&c!==void 0?c:!0,f=typeof l=="string"?{message:l}:l;t.addIssue({code:"custom",...f,fatal:b})}}):H.create()}var js={object:T.lazycreate},p;(function(a){a.ZodString="ZodString",a.ZodNumber="ZodNumber",a.ZodNaN="ZodNaN",a.ZodBigInt="ZodBigInt",a.ZodBoolean="ZodBoolean",a.ZodDate="ZodDate",a.ZodSymbol="ZodSymbol",a.ZodUndefined="ZodUndefined",a.ZodNull="ZodNull",a.ZodAny="ZodAny",a.ZodUnknown="ZodUnknown",a.ZodNever="ZodNever",a.ZodVoid="ZodVoid",a.ZodArray="ZodArray",a.ZodObject="ZodObject",a.ZodUnion="ZodUnion",a.ZodDiscriminatedUnion="ZodDiscriminatedUnion",a.ZodIntersection="ZodIntersection",a.ZodTuple="ZodTuple",a.ZodRecord="ZodRecord",a.ZodMap="ZodMap",a.ZodSet="ZodSet",a.ZodFunction="ZodFunction",a.ZodLazy="ZodLazy",a.ZodLiteral="ZodLiteral",a.ZodEnum="ZodEnum",a.ZodEffects="ZodEffects",a.ZodNativeEnum="ZodNativeEnum",a.ZodOptional="ZodOptional",a.ZodNullable="ZodNullable",a.ZodDefault="ZodDefault",a.ZodCatch="ZodCatch",a.ZodPromise="ZodPromise",a.ZodBranded="ZodBranded",a.ZodPipeline="ZodPipeline",a.ZodReadonly="ZodReadonly"})(p||(p={}));var Ns=(a,e={message:`Input not instance of ${a.name}`})=>Ia(s=>s instanceof a,e),Aa=W.create,Oa=se.create,Rs=Ze.create,Ps=te.create,Za=ne.create,$s=re.create,Ds=Te.create,Ms=de.create,Ls=ce.create,zs=H.create,Vs=M.create,qs=R.create,Bs=Ie.create,Us=z.create,Fs=T.create,Ws=T.strictCreate,Hs=le.create,Js=va.create,Ks=ie.create,Ys=P.create,Gs=ka.create,Xs=Ae.create,Qs=Oe.create,et=xa.create,at=oe.create,st=fe.create,tt=me.create,nt=ue.create,rt=J.create,da=O.create,dt=E.create,ct=$.create,lt=O.createWithPreprocess,it=sa.create,ot=()=>Aa().optional(),ft=()=>Oa().optional(),ut=()=>Za().optional(),bt={string:a=>W.create({...a,coerce:!0}),number:a=>se.create({...a,coerce:!0}),boolean:a=>ne.create({...a,coerce:!0}),bigint:a=>te.create({...a,coerce:!0}),date:a=>re.create({...a,coerce:!0})},gt=m,d=Object.freeze({__proto__:null,defaultErrorMap:F,setErrorMap:ls,getErrorMap:ke,makeIssue:xe,EMPTY_PATH:is,addIssueToContext:o,ParseStatus:x,INVALID:m,DIRTY:B,OK:k,isAborted:Ue,isDirty:Fe,isValid:L,isAsync:ae,get util(){return v},get objectUtil(){return Be},ZodParsedType:u,getParsedType:N,ZodType:y,datetimeRegex:ha,ZodString:W,ZodNumber:se,ZodBigInt:te,ZodBoolean:ne,ZodDate:re,ZodSymbol:Te,ZodUndefined:de,ZodNull:ce,ZodAny:H,ZodUnknown:M,ZodNever:R,ZodVoid:Ie,ZodArray:z,ZodObject:T,ZodUnion:le,ZodDiscriminatedUnion:va,ZodIntersection:ie,ZodTuple:P,ZodRecord:ka,ZodMap:Ae,ZodSet:Oe,ZodFunction:xa,ZodLazy:oe,ZodLiteral:fe,ZodEnum:me,ZodNativeEnum:ue,ZodPromise:J,ZodEffects:O,ZodTransformer:O,ZodOptional:E,ZodNullable:$,ZodDefault:be,ZodCatch:ge,ZodNaN:Ze,BRAND:Cs,ZodBranded:aa,ZodPipeline:sa,ZodReadonly:pe,custom:Ia,Schema:y,ZodSchema:y,late:js,get ZodFirstPartyTypeKind(){return p},coerce:bt,any:zs,array:Us,bigint:Ps,boolean:Za,date:$s,discriminatedUnion:Js,effect:da,enum:tt,function:et,instanceof:Ns,intersection:Ks,lazy:at,literal:st,map:Xs,nan:Rs,nativeEnum:nt,never:qs,null:Ls,nullable:ct,number:Oa,object:Fs,oboolean:ut,onumber:ft,optional:dt,ostring:ot,pipeline:it,preprocess:lt,promise:rt,record:Gs,set:Qs,strictObject:Ws,string:Aa,symbol:Ds,transformer:da,tuple:Ys,undefined:Ms,union:Hs,unknown:Vs,void:Bs,NEVER:gt,ZodIssueCode:i,quotelessJson:cs,ZodError:A}),Ea=class{occasion;style;book_size;cover_type;page_type;image_density;image_filtering_level;embellishment_level;text_sticker_level;constructor(a){this.occasion=a.occasion,this.style=a.style,this.book_size=a.book_size,this.cover_type=a.cover_type,this.page_type=a.page_type,this.image_density=a.image_density,this.image_filtering_level=a.image_filtering_level,this.embellishment_level=a.embellishment_level,this.text_sticker_level=a.text_sticker_level}},Ca=d.object({occasion:d.enum(Ee),style:d.string(),book_size:d.enum(Ce),cover_type:d.enum(je),page_type:d.enum(Ne),image_density:d.enum(Re),image_filtering_level:d.enum(Pe),embellishment_level:d.enum($e),text_sticker_level:d.enum(De)}),q=d.object({id:d.string().optional(),title:d.string(),subtitle:d.string().optional(),design_request:Ca,sku:d.string().optional(),state:d.enum(Xe).optional(),guid:d.string().optional(),cancelled_at:d.string().optional(),mb_client_timeout:d.number().optional(),user_id:d.string().optional(),revision:d.number().optional()}),D=class{id;title;revision;subtitle;design_request;sku;state;guid;cancelled_at;timeout;user_id;constructor(a){this.id=a.id||"",this.title=a.title,this.subtitle=a.subtitle,this.design_request=new Ea(a.design_request),this.sku=a.sku,this.state=a.state,this.guid=a.guid,this.cancelled_at=a.cancelled_at,this.timeout=a.mb_client_timeout?a.mb_client_timeout*1e3:void 0,this.user_id=a.user_id,this.revision=a.revision}toDesignRequestProps(){let a={...this,...this.design_request};return a.style=ds(a.style),delete a.design_request,delete a.revision,ea(a)}toBookProps(){return{...this,mb_client_timeout:this.timeout?this.timeout/1e3:void 0}}},ja=class{constructor(a,e,s){this.client=a,this.parentId=e,this.list=[],this.length=this.list.length,this.designRequestState=s}parentId;list;length;designRequestState;async add(a){if(we(this.designRequestState)){let e=await this.client.engineAPI.images.addToBook(this.parentId,new Na(a)),s=Ra(e);return this.list.push(s),this.length=this.list.length,new Promise(n=>{n(s)})}else throw new Error("You need to wait for the current design request to be completed before adding new images.")}async delete(a){if(we(this.designRequestState))return await this.client.engineAPI.images.delete(a,this.parentId),this.list.splice(this.list.findIndex(e=>e.handle===a),1),this.length=this.list.length,new Promise(e=>{e(this.length)});throw new Error("You need to wait for the current design request to be completed before deleting images.")}},Q=d.object({id:d.string().optional(),handle:d.string(),url:d.string(),width:d.number(),height:d.number(),orientation:d.number(),taken_at:d.string(),camera_make:d.string().optional(),camera:d.string().optional(),filename:d.string(),metadata:d.record(d.unknown()).optional()}),Na=class{id;handle;url;width;height;orientation;taken_at;camera_make;camera;filename;metadata;constructor(a){this.id=a.id,this.handle=a.handle,this.url=a.url,this.width=a.width,this.height=a.height,this.orientation=a.rotation,this.taken_at=a.captureTime,this.camera_make=a.cameraMake,this.camera=a.cameraModel,this.filename=a.filename,this.metadata=a.metadata}};function Ra(a){return{id:a.id,handle:a.handle,url:a.url,width:a.width,height:a.height,rotation:a.orientation,captureTime:a.taken_at,cameraMake:a.camera_make,cameraModel:a.camera,filename:a.filename,metadata:a.metadata}}var ve=d.object({maxPageCount:d.number(),minPageCount:d.number(),maxImageCount:d.number(),avgImageCount:d.number(),minImageCount:d.number()}),Pa=d.object({high:ve,medium:ve,low:ve}),$a=d.object({densities:Pa}),_e=d.object({max_page_count:d.number(),min_page_count:d.number(),max_image_count:d.number(),avg_image_count:d.number(),min_image_count:d.number()}),Da=d.object({high:_e,medium:_e,low:_e}),Ma=d.object({densities:Da}),pt={occasion:Ee,style:Object.keys(U).map(a=>parseInt(a)),bookSize:Ce,coverType:je,pageType:Ne,imageDensity:Re,imageFilteringLevel:Pe,embellishmentLevel:$e,textStickerLevel:De},La=class{constructor(a,e,s){this.parentId=a,this.client=e,this.state=s?.state||Xe[0],this.title=s?.title||"",this.subtitle=s?.subtitle,this.occasion=s?.occasion||Ee[0],this.style=s?.style||parseInt(Object.keys(U)[0]),this.sku=s?.sku,this.bookSize=s?.bookSize||Ce[0],this.coverType=s?.coverType||je[0],this.pageType=s?.pageType||Ne[0],this.imageDensity=s?.imageDensity||Re[0],this.imageFilteringLevel=s?.imageFilteringLevel||Pe[0],this.embellishmentLevel=s?.embellishmentLevel||$e[0],this.textStickerLevel=s?.textStickerLevel||De[0],this.images=new ja(this.client,this.parentId,this.state),this.userId=s?.userId}state;title;subtitle;occasion;style;sku;bookSize;coverType;pageType;imageDensity;imageFilteringLevel;embellishmentLevel;textStickerLevel;images;webSocket;userId;guid;timeout;updateDesignRequest(a){Object.assign(this,a),a.state&&(this.images.designRequestState=a.state)}async getOptions(a){return $a.parse(ea(await this.client.engineAPI.designOptions.retrieve(this.bookSize,a||this.images.length,this.imageFilteringLevel,this.sku)))}async getAlternateLayouts(a,e){if(this.state==="ready")return await this.client.engineAPI.spreads.layouts(this.parentId,a,e);throw new Error("Design request not ready")}async submit(a){if(we(this.state))return a&&this.updateDesignRequest(a),this.webSocket=new WebSocket(`${this.client.webSocketHost}/?book_id=${this.parentId}`),await this.client.engineAPI.books.update(this.parentId,this.toBook()),this.updateDesignRequest((await this.client.engineAPI.books.design(this.parentId)).toDesignRequestProps()),this.getProgress(),this;throw new Error("You need to wait for the current design request to be completed before submitting a new one.")}async setGuid(a){if(Ve(this.state))return this.guid=a,this.updateDesignRequest((await this.client.engineAPI.books.update(this.parentId,this.toBook())).toDesignRequestProps()),this.guid;throw new Error("Design request not submitted")}async cancel(){if(this.state==="cancelled")throw new Error("Design request already cancelled");if(this.state==="ready")throw new Error("Design request already finished");if(Ve(this.state))return this.updateDesignRequest({...(await this.client.engineAPI.books.cancel(this.parentId)).toDesignRequestProps(),state:"cancelled"}),await this.eventHandler(oa),this;throw new Error("Design request not submitted")}async getJSON(a){if(this.state==="ready")return await this.client.engineAPI.books.format(this.parentId,a);throw new Error("Design request not ready")}async logEvent(a,e){return await this.client.engineAPI.events.createBookEvent(this.parentId,a,e)}async eventHandler(a,e="MagicBook.designRequestUpdated"){let s=new CustomEvent(e,{detail:a});ca.includes(a.slug)&&(this.webSocket?.close(),la.includes(a.slug)&&await this.client.engineAPI.books.report(this.parentId,{error:a.slug==="error"?"design":"timeout",step:this.state})),this.updateDesignRequest({state:a.slug}),window.dispatchEvent(s)}timeoutHandler(){if(this.timeout)return setTimeout(async()=>{await this.eventHandler(ia)},this.timeout);throw new Error("Design request timeout not set")}async getProgress(){if(this.webSocket){let a;this.webSocket.onmessage=async e=>{let s=JSON.parse(e.data);(this.state!==s.slug||s.slug==="submitted")&&(a&&clearTimeout(a),a=this.timeoutHandler(),await this.eventHandler(s))},this.webSocket.onclose=()=>clearTimeout(a)}}toBook(){let a={...this,images:this.images.list};delete a.client,delete a.webSocket;let e=U[this.style]?.slug||this.style,s=Qe(Z(a));return s.style=e,new D({id:a.parentId,guid:a.guid,title:a.title,subtitle:a.subtitle,design_request:s,sku:a.sku,state:a.state,user_id:a.userId})}},mt=class{constructor(a){this.engineAPI=a,K(this)}create(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:"/v1/books",options:{method:"POST",body:Z(a)}});return q.safeParse(e),new D(e)})}retrieve(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/books/${a}`});return q.safeParse(e),new D(e)})}update(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/books/${a}`,options:{method:"PUT",body:Z(e)}});return q.safeParse(s),new D(s)})}design(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/books/${a}/design`,options:{method:"POST"}});return q.safeParse(e),new D(e)})}cancel(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/books/${a}/cancel`,options:{method:"POST"}});return q.safeParse(e),new D(e)})}report(a,e){return w(async()=>{await this.engineAPI.fetcher.call({path:`/v1/books/${a}/report`,options:{method:"POST",body:Z(e)}})})}delete(a){return w(async()=>{await this.engineAPI.fetcher.call({path:`/v1/books/${a}`,options:{method:"DELETE"}})})}format(a,e){return w(async()=>await this.engineAPI.fetcher.call({path:`/v1/books/${a}/format/${e}`}))}},ht=class{constructor(a){this.engineAPI=a,K(this)}retrieve(a,e,s,n){return w(async()=>{let t=await this.engineAPI.fetcher.call({path:`/v1/designoptions/booksize/${a}/imagecount/${e}/imagefilteringlevel/${s}${n?`?sku=${n}`:""}`});return Ma.parse(t)})}},yt=d.record(d.string(),d.unknown()).optional(),vt=d.object({name:d.string(),context:yt}),_t=class{constructor(a){this.engineAPI=a,K(this)}createBookEvent(a,e,s){return w(async()=>{let n={name:e};s&&(n.context=s);let t=await this.engineAPI.fetcher.call({path:`/v1/events/book/${a}`,options:{method:"POST",body:Z(n)}});return vt.parse(t)})}},wt={headers:{"Content-Type":"application/json"},method:"GET"},kt=class{baseUrl;options;constructor(a,e){this.baseUrl=new URL(a),this.options=qe(wt,e||{})}async call(a){try{a.options?.body&&typeof a.options.body!="string"&&(a.options.body=JSON.stringify(a.options?.body));let e={...this.options},s=a.options?qe(e,a.options):e,n=await fetch(this.cleanUrl(new URL(a.path,this.baseUrl).href),s);if(n.status>=200&&n.status<300)try{return await n.clone().json()}catch{try{return await n.text()}catch{return{}}}else{let t=n.statusText;try{t=JSON.stringify((await n.json())?.detail)}catch{}throw Error(`${n.status} ${t}`)}}catch(e){return Promise.reject(e)}}cleanUrl(a){return a.replaceAll(" ","").trim()}},xt=class{constructor(a){this.engineAPI=a,K(this)}list(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/images/book/${a}`});return d.array(Q).parse(e)})}retrieve(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/images/${a}/book/${e}`});return Q.parse(s)})}update(a,e,s){return w(async()=>{let n=await this.engineAPI.fetcher.call({path:`/v1/images/${a}/book/${e}`,options:{method:"PUT",body:Z(s)}});return Q.parse(n)})}delete(a,e){return w(async()=>{await this.engineAPI.fetcher.call({path:`/v1/images/${a}/book/${e}`,options:{method:"DELETE"}})})}addToBook(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/images/book/${a}`,options:{method:"POST",body:Z(e)}});return Q.parse(s)})}},ee=d.object({id:d.string(),book_id:d.string(),state:d.string(),spread_type:d.string(),width:d.number(),height:d.number(),sequence:d.number(),wells:d.array(d.unknown()),background:d.unknown(),laid_out_at:d.string().nullable(),embellished_at:d.string().nullable(),polished_at:d.string().nullable(),metadata:d.unknown(),url:d.string().nullable().optional()}),St=d.object({id:d.string(),bookId:d.string(),state:d.string(),spreadType:d.string(),width:d.number(),height:d.number(),sequence:d.number(),wells:d.array(d.unknown()),background:d.unknown(),laidOutAt:d.string().nullable(),embellishedAt:d.string().nullable(),polishedAt:d.string().nullable(),metadata:d.unknown(),url:d.string().nullable().optional()}),za=d.object({photoRefId:d.string(),finalCrop:d.array(d.number())}),Va=d.object({x:d.number(),y:d.number(),width:d.number().optional(),height:d.number().optional(),rotation:d.number()}),qa=d.object({id:d.string(),llx:d.number(),lly:d.number(),urx:d.number(),ury:d.number(),data:d.string().nullable(),title:d.string(),width:d.number(),effect:d.string(),height:d.number(),source:d.string(),rotation:d.number(),uploadTime:d.string()}),Ba=d.object({key:d.string(),value:d.any()}),Ua=d.object({type:d.string(),imageAssignment:za.optional(),position:Va,seqNum:d.number(),z:d.number(),id:d.string().optional(),horizJustification:d.string().optional(),vertJustification:d.string().optional().nullable(),text:d.string().optional(),fontId:d.string().optional(),fontSize:d.number().optional(),fontColor:d.string().optional(),frame:d.string().optional()}),Fa=d.object({url:d.string(),encryptId:d.string(),photoRefId:d.string(),photoId:d.string(),photoMetadata:qa}),Wa=d.object({properties:d.array(Ba)}),ta=d.object({backgroundId:d.string().nullable(),assets:d.array(Ua).optional()}),Ha=d.object({surfaceNumber:d.number(),surfaceData:d.record(d.any()),version:d.string()}),Ja=d.object({pageNum:d.number(),type:d.string(),canvas:ta}),Ka=d.object({pages:d.array(Ja),photoStrip:d.array(Fa)}),Tt=d.object({title:d.string(),binding:d.string(),coverSpecId:d.string(),styleId:d.number(),userId:d.string(),magicShopBook:Ka,reportingData:Wa}),It=class{constructor(a){this.engineAPI=a,K(this)}list(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/spreads/book/${a}`});return d.array(ee).parse(e)})}create(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/spreads/book/${a}`,options:{method:"POST",body:Z(e)}});return ee.parse(s)})}retrieve(a,e){return w(async()=>{let s=await this.engineAPI.fetcher.call({path:`/v1/spreads/${a}/book/${e}`});return ee.parse(s)})}render(a,e,s=512){return w(async()=>await this.engineAPI.fetcher.call({path:`/v1/spreads/${a}/book/${e}/render/${s}`}))}update(a,e,s){return w(async()=>{let n=await this.engineAPI.fetcher.call({path:`/v1/spreads/${a}/book/${e}`,options:{method:"PUT",body:Z(s)}});return ee.parse(n)})}delete(a,e){return w(async()=>{await this.engineAPI.fetcher.call({path:`/v1/spreads/${a}/book/${e}`,options:{method:"DELETE"}})})}layouts(a,e,s){return w(async()=>{let n=await this.engineAPI.fetcher.call({path:"/v1/spreads/layouts",options:{method:"POST",body:Z({user_id:a,page_num:e,surfaceCategoryName:s})}});return d.array(s?Ha:ta).parse(n)})}},At=d.object({score:d.number(),bounding_box:d.object({x:d.number(),y:d.number(),width:d.number(),height:d.number()}),size:d.number(),eyes_open_score:d.number(),smile_score:d.number(),facing_camera_score:d.number()}),Ot=d.object({score:d.number(),boundingBox:d.object({x:d.number(),y:d.number(),width:d.number(),height:d.number()}),size:d.number(),eyesOpenScore:d.number(),smileScore:d.number(),facingCameraScore:d.number()}),Zt=d.object({id:d.string(),url:d.string(),category:d.string(),aesthetic_score:d.number(),faces:d.array(At),roi:d.object({x:d.number(),y:d.number(),width:d.number(),height:d.number()}),taken_at:d.number(),width:d.number(),height:d.number()}),Et=d.object({id:d.string(),url:d.string(),category:d.string(),aestheticScore:d.number(),faces:d.array(Ot),roi:d.object({x:d.number(),y:d.number(),width:d.number(),height:d.number()}),takenAt:d.number(),width:d.number(),height:d.number()}),Ct=d.object({id:d.string(),sequence:d.number(),book_id:d.string(),similarity:d.number(),duplicate:d.boolean(),selected:d.boolean(),surface_weight:d.number(),front_cover:d.boolean().optional(),back_cover:d.boolean().optional(),scene:d.number(),subscene:d.number(),spine_break:d.boolean().optional(),image:Zt}),Lt=d.object({id:d.string(),sequence:d.number(),bookId:d.string(),similarity:d.number(),duplicate:d.boolean(),selected:d.boolean(),surfaceWeight:d.number(),frontCover:d.boolean().optional(),backCover:d.boolean().optional(),scene:d.number(),subscene:d.number(),spineBreak:d.boolean().optional(),image:Et}),jt=class{constructor(a){this.engineAPI=a,K(this)}list(a){return w(async()=>{let e=await this.engineAPI.fetcher.call({path:`/v1/storyboarditems/book/${a}`});return d.array(Ct).parse(e)})}},Nt=class{baseUrl;apiKey;fetcher;constructor(a,e){this.baseUrl=new URL(a),this.apiKey=e;let s={headers:{Authorization:`API-Key ${this.apiKey}`}};this.fetcher=new kt(a,s)}books=new mt(this);designOptions=new ht(this);events=new _t(this);images=new xt(this);storyboardItems=new jt(this);spreads=new It(this)},Rt="https://api.sfly-sls.magicbook.io",Pt="wss://socket.sfly-sls.magicbook.io",$t=class{constructor(a,e=Rt,s=Pt){this.apiKey=a,this.apiHost=e,this.webSocketHost=s,this.engineAPI=new Nt(this.apiHost,this.apiKey)}engineAPI;async createDesignRequest(a){if(a.userId){let e=await this.engineAPI.books.create(Qe({...a}));return new La(e.id,this,a)}else throw new Error("userId is required")}};return as(Dt);})();
|