@shotstack/shotstack-studio 2.0.0-beta.10 → 2.0.0-beta.12
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/dist/index.d.ts +16 -74
- package/dist/internal.es.js +49545 -0
- package/dist/internal.umd.js +298 -0
- package/dist/schema/index.cjs +1 -1
- package/dist/schema/index.d.ts +16 -74
- package/dist/schema/index.mjs +246 -245
- package/dist/shotstack-studio.es.js +33342 -27570
- package/dist/shotstack-studio.umd.js +194 -172
- package/package.json +13 -3
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
(function(xi,ci){typeof exports=="object"&&typeof module<"u"?ci(exports,require("pixi.js"),require("howler"),require("opentype.js")):typeof define=="function"&&define.amd?define(["exports","pixi.js","howler","opentype.js"],ci):(xi=typeof globalThis<"u"?globalThis:xi||self,ci(xi.ShotstackStudioInternal={},xi.PIXI,xi.Howler,xi.opentype))})(this,function(xi,ci,qd,Jd){"use strict";var ki=typeof document<"u"?document.currentScript:null;function Rn(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const i in e)if(i!=="default"){const a=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,a.get?a:{enumerable:!0,get:()=>e[i]})}}return t.default=e,Object.freeze(t)}const se=Rn(ci),Qd=Rn(qd),Dn=Rn(Jd),ue={PlaybackPlay:"playback:play",PlaybackPause:"playback:pause",TimelineUpdated:"timeline:updated",TimelineBackgroundChanged:"timeline:backgroundChanged",ClipAdded:"clip:added",ClipSplit:"clip:split",ClipSelected:"clip:selected",ClipUpdated:"clip:updated",ClipDeleted:"clip:deleted",ClipRestored:"clip:restored",ClipCopied:"clip:copied",ClipLoadFailed:"clip:loadFailed",SelectionCleared:"selection:cleared",EditChanged:"edit:changed",EditUndo:"edit:undo",EditRedo:"edit:redo",TrackAdded:"track:added",TrackRemoved:"track:removed",DurationChanged:"duration:changed",OutputResized:"output:resized",OutputFpsChanged:"output:fpsChanged",OutputFormatChanged:"output:formatChanged",OutputDestinationsChanged:"output:destinationsChanged",MergeFieldRegistered:"mergefield:registered",MergeFieldUpdated:"mergefield:updated",MergeFieldRemoved:"mergefield:removed",MergeFieldChanged:"mergefield:changed",MergeFieldApplied:"mergefield:applied",TranscriptionProgress:"transcription:progress",TranscriptionCompleted:"transcription:completed",TranscriptionFailed:"transcription:failed",LumaAttached:"luma:attached",LumaDetached:"luma:detached"},Na={CanvasClipClicked:"canvas:clipClicked",CanvasBackgroundClicked:"canvas:backgroundClicked",FontCapabilitiesChanged:"font:capabilitiesChanged",ToolbarButtonsChanged:"toolbar:buttonsChanged"},Pl=[{displayName:"Roboto",filename:"KFOmCnqEu92Fr1Me5WZLCzYlKw",category:"sans-serif",url:"https://fonts.gstatic.com/s/roboto/v50/KFOmCnqEu92Fr1Me5WZLCzYlKw.ttf",weight:400,isVariable:!0},{displayName:"Open Sans",filename:"mem8YaGs126MiZpBA-U1UpcaXcl0Aw",category:"sans-serif",url:"https://fonts.gstatic.com/s/opensans/v44/mem8YaGs126MiZpBA-U1UpcaXcl0Aw.ttf",weight:400,isVariable:!0},{displayName:"Google Sans",filename:"4UaGrENHsxJlGDuGo1OIlI3JyJ98KhtH",category:"sans-serif",url:"https://fonts.gstatic.com/s/googlesans/v67/4UaGrENHsxJlGDuGo1OIlI3JyJ98KhtH.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans JP",filename:"-F62fjtqLzI2JPCgQBnw7HFoxgIO2lZ9hg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansjp/v55/-F62fjtqLzI2JPCgQBnw7HFoxgIO2lZ9hg.ttf",weight:400,isVariable:!0},{displayName:"Inter",filename:"UcCo3FwrK3iLTfvlaQc78lA2",category:"sans-serif",url:"https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTfvlaQc78lA2.ttf",weight:400,isVariable:!0},{displayName:"Montserrat",filename:"JTUSjIg1_i6t8kCHKm45xW5rygbi49c",category:"sans-serif",url:"https://fonts.gstatic.com/s/montserrat/v31/JTUSjIg1_i6t8kCHKm45xW5rygbi49c.ttf",weight:400,isVariable:!0},{displayName:"Poppins",filename:"pxiEyp8kv8JHgFVrFJDUc1NECPY",category:"sans-serif",url:"https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrFJDUc1NECPY.ttf",weight:400,isVariable:!1},{displayName:"Lato",filename:"S6uyw4BMUTPHvxk6XweuBCY",category:"sans-serif",url:"https://fonts.gstatic.com/s/lato/v25/S6uyw4BMUTPHvxk6XweuBCY.ttf",weight:400,isVariable:!1},{displayName:"Arimo",filename:"P5sMzZCDf9_T_20eziBMjI-u",category:"sans-serif",url:"https://fonts.gstatic.com/s/arimo/v35/P5sMzZCDf9_T_20eziBMjI-u.ttf",weight:400,isVariable:!0},{displayName:"Roboto Condensed",filename:"ieVl2ZhZI2eCN5jzbjEETS9weq8-59WxDCs5cvI",category:"sans-serif",url:"https://fonts.gstatic.com/s/robotocondensed/v31/ieVl2ZhZI2eCN5jzbjEETS9weq8-59WxDCs5cvI.ttf",weight:400,isVariable:!0},{displayName:"Roboto Mono",filename:"L0x5DF4xlVMF-BfR8bXMIghMoX6-XqKC",category:"monospace",url:"https://fonts.gstatic.com/s/robotomono/v31/L0x5DF4xlVMF-BfR8bXMIghMoX6-XqKC.ttf",weight:400,isVariable:!0},{displayName:"Oswald",filename:"TK3iWkUHHAIjg75GHjUHte5fKg",category:"sans-serif",url:"https://fonts.gstatic.com/s/oswald/v57/TK3iWkUHHAIjg75GHjUHte5fKg.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans",filename:"o-0IIpQlx3QUlC5A4PNb4j5Ba_2c7A",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosans/v42/o-0IIpQlx3QUlC5A4PNb4j5Ba_2c7A.ttf",weight:400,isVariable:!0},{displayName:"Raleway",filename:"1Ptug8zYS_SKggPN-CoCTqluHfE",category:"sans-serif",url:"https://fonts.gstatic.com/s/raleway/v37/1Ptug8zYS_SKggPN-CoCTqluHfE.ttf",weight:400,isVariable:!0},{displayName:"Nunito",filename:"XRXV3I6Li01BKof4MuyAbsrVcA",category:"sans-serif",url:"https://fonts.gstatic.com/s/nunito/v32/XRXV3I6Li01BKof4MuyAbsrVcA.ttf",weight:400,isVariable:!0},{displayName:"Nunito Sans",filename:"pe0qMImSLYBIv1o4X1M8cfe6Kdpickwp",category:"sans-serif",url:"https://fonts.gstatic.com/s/nunitosans/v19/pe0qMImSLYBIv1o4X1M8cfe6Kdpickwp.ttf",weight:400,isVariable:!0},{displayName:"Playfair Display",filename:"nuFiD-vYSZviVYUb_rj3ij__anPXPTvSgWE_-xU",category:"serif",url:"https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXPTvSgWE_-xU.ttf",weight:400,isVariable:!0},{displayName:"Ubuntu",filename:"4iCs6KVjbNBYlgo6eAT3v02QFg",category:"sans-serif",url:"https://fonts.gstatic.com/s/ubuntu/v21/4iCs6KVjbNBYlgo6eAT3v02QFg.ttf",weight:400,isVariable:!1},{displayName:"Rubik",filename:"iJWKBXyIfDnIV4nGp32S0H3f",category:"sans-serif",url:"https://fonts.gstatic.com/s/rubik/v31/iJWKBXyIfDnIV4nGp32S0H3f.ttf",weight:400,isVariable:!0},{displayName:"Roboto Slab",filename:"BngMUXZYTXPIvIBgJJSb6tfK7KSJ4ACD",category:"serif",url:"https://fonts.gstatic.com/s/robotoslab/v36/BngMUXZYTXPIvIBgJJSb6tfK7KSJ4ACD.ttf",weight:400,isVariable:!0},{displayName:"Merriweather",filename:"u-440qyriQwlOrhSvowK_l5OeyxNV-bnrw",category:"serif",url:"https://fonts.gstatic.com/s/merriweather/v33/u-440qyriQwlOrhSvowK_l5OeyxNV-bnrw.ttf",weight:400,isVariable:!0},{displayName:"DM Sans",filename:"rP2Hp2ywxg089UriOZSCHBeHFl0",category:"sans-serif",url:"https://fonts.gstatic.com/s/dmsans/v17/rP2Hp2ywxg089UriOZSCHBeHFl0.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans KR",filename:"PbykFmXiEBPT4ITbgNA5Cgm21nTs4JMMuA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanskr/v38/PbykFmXiEBPT4ITbgNA5Cgm21nTs4JMMuA.ttf",weight:400,isVariable:!0},{displayName:"Work Sans",filename:"QGYsz_wNahGAdqQ43RhPe6rol_lQ4A",category:"sans-serif",url:"https://fonts.gstatic.com/s/worksans/v24/QGYsz_wNahGAdqQ43RhPe6rol_lQ4A.ttf",weight:400,isVariable:!0},{displayName:"PT Sans",filename:"jizaRExUiTo99u79P0WOxOGMMDQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/ptsans/v18/jizaRExUiTo99u79P0WOxOGMMDQ.ttf",weight:400,isVariable:!1},{displayName:"Archivo",filename:"k3kQo8UDI-1M0wlSTd7iL0nAMaM",category:"sans-serif",url:"https://fonts.gstatic.com/s/archivo/v25/k3kQo8UDI-1M0wlSTd7iL0nAMaM.ttf",weight:400,isVariable:!0},{displayName:"Kanit",filename:"nKKZ-Go6G5tXcoaSEQGodLxA",category:"sans-serif",url:"https://fonts.gstatic.com/s/kanit/v17/nKKZ-Go6G5tXcoaSEQGodLxA.ttf",weight:400,isVariable:!1},{displayName:"Lora",filename:"0QIvMX1D_JOuAw3xItNPh_A",category:"serif",url:"https://fonts.gstatic.com/s/lora/v37/0QIvMX1D_JOuAw3xItNPh_A.ttf",weight:400,isVariable:!0},{displayName:"Mulish",filename:"1Ptvg83HX_SGhgqU2AAsQqB3BA",category:"sans-serif",url:"https://fonts.gstatic.com/s/mulish/v18/1Ptvg83HX_SGhgqU2AAsQqB3BA.ttf",weight:400,isVariable:!0},{displayName:"Manrope",filename:"xn7gYHE41ni1AdIRsgC7S9XdZN8",category:"sans-serif",url:"https://fonts.gstatic.com/s/manrope/v20/xn7gYHE41ni1AdIRsgC7S9XdZN8.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans TC",filename:"-nF7OG829Oofr2wohFbTp9iFPysLA_ZJ1g",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstc/v38/-nF7OG829Oofr2wohFbTp9iFPysLA_ZJ1g.ttf",weight:400,isVariable:!0},{displayName:"Quicksand",filename:"6xKtdSZaM9iE8KbpRA_RLF4MQOPiPg",category:"sans-serif",url:"https://fonts.gstatic.com/s/quicksand/v37/6xKtdSZaM9iE8KbpRA_RLF4MQOPiPg.ttf",weight:400,isVariable:!0},{displayName:"Figtree",filename:"_Xms-HUzqDCFdgfMq4O3DIZs3ik",category:"sans-serif",url:"https://fonts.gstatic.com/s/figtree/v9/_Xms-HUzqDCFdgfMq4O3DIZs3ik.ttf",weight:400,isVariable:!0},{displayName:"Inconsolata",filename:"QldKNThLqRwH-OJ1UHjlKFle7KlmxuHx",category:"monospace",url:"https://fonts.gstatic.com/s/inconsolata/v37/QldKNThLqRwH-OJ1UHjlKFle7KlmxuHx.ttf",weight:400,isVariable:!0},{displayName:"Barlow",filename:"7cHpv4kjgoGqM7EPC8E46HsxnA",category:"sans-serif",url:"https://fonts.gstatic.com/s/barlow/v13/7cHpv4kjgoGqM7EPC8E46HsxnA.ttf",weight:400,isVariable:!1},{displayName:"Fira Sans",filename:"va9E4kDNxMZdWfMOD5VfkILKSTbndQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/firasans/v18/va9E4kDNxMZdWfMOD5VfkILKSTbndQ.ttf",weight:400,isVariable:!1},{displayName:"Outfit",filename:"QGYvz_MVcBeNP4N5s0Frc4H0ng",category:"sans-serif",url:"https://fonts.gstatic.com/s/outfit/v15/QGYvz_MVcBeNP4N5s0Frc4H0ng.ttf",weight:400,isVariable:!0},{displayName:"Bebas Neue",filename:"JTUSjIg69CK48gW7PXooxW5rygbi49c",category:"sans-serif",url:"https://fonts.gstatic.com/s/bebasneue/v16/JTUSjIg69CK48gW7PXooxW5rygbi49c.ttf",weight:400,isVariable:!1},{displayName:"Prompt",filename:"-W__XJnvUD7dzB26Z9AcZkIzeg",category:"sans-serif",url:"https://fonts.gstatic.com/s/prompt/v12/-W__XJnvUD7dzB26Z9AcZkIzeg.ttf",weight:400,isVariable:!1},{displayName:"IBM Plex Sans",filename:"zYXgKVElMYYaJe8bpLHnCwDKtdbUFI5NadY",category:"sans-serif",url:"https://fonts.gstatic.com/s/ibmplexsans/v23/zYXgKVElMYYaJe8bpLHnCwDKtdbUFI5NadY.ttf",weight:400,isVariable:!0},{displayName:"Source Sans 3",filename:"nwpStKy2OAdR1K-IwhWudF-R7wgQZMrc9HY",category:"sans-serif",url:"https://fonts.gstatic.com/s/sourcesans3/v19/nwpStKy2OAdR1K-IwhWudF-R7wgQZMrc9HY.ttf",weight:400,isVariable:!0},{displayName:"Karla",filename:"qkBbXvYC6trAT4RSJN225aZO",category:"sans-serif",url:"https://fonts.gstatic.com/s/karla/v33/qkBbXvYC6trAT4RSJN225aZO.ttf",weight:400,isVariable:!0},{displayName:"PT Serif",filename:"EJRVQgYoZZY2vCFuvDFRxL6ddjb-",category:"serif",url:"https://fonts.gstatic.com/s/ptserif/v19/EJRVQgYoZZY2vCFuvDFRxL6ddjb-.ttf",weight:400,isVariable:!1},{displayName:"Saira",filename:"memwYa2wxmKQyOkgR5IdU6Uf",category:"sans-serif",url:"https://fonts.gstatic.com/s/saira/v23/memwYa2wxmKQyOkgR5IdU6Uf.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif",filename:"ga6Iaw1J5X9T9RW6j9bNTFAcaRi_bMQ",category:"serif",url:"https://fonts.gstatic.com/s/notoserif/v33/ga6Iaw1J5X9T9RW6j9bNTFAcaRi_bMQ.ttf",weight:400,isVariable:!0},{displayName:"Heebo",filename:"NGS6v5_NC0k9P-HxR7BDsbMB",category:"sans-serif",url:"https://fonts.gstatic.com/s/heebo/v28/NGS6v5_NC0k9P-HxR7BDsbMB.ttf",weight:400,isVariable:!0},{displayName:"Titillium Web",filename:"NaPecZTIAOhVxoMyOr9n_E7fRMTsDIRSfr0",category:"sans-serif",url:"https://fonts.gstatic.com/s/titilliumweb/v19/NaPecZTIAOhVxoMyOr9n_E7fRMTsDIRSfr0.ttf",weight:400,isVariable:!1},{displayName:"Jost",filename:"92zatBhPNqw77oPX4xYlbxM",category:"sans-serif",url:"https://fonts.gstatic.com/s/jost/v20/92zatBhPNqw77oPX4xYlbxM.ttf",weight:400,isVariable:!0},{displayName:"Archivo Black",filename:"HTxqL289NzCGg4MzN6KJ7eW6OYuP_x7yx3A",category:"sans-serif",url:"https://fonts.gstatic.com/s/archivoblack/v23/HTxqL289NzCGg4MzN6KJ7eW6OYuP_x7yx3A.ttf",weight:400,isVariable:!1},{displayName:"Hind Siliguri",filename:"ijwTs5juQtsyLLR5jN4cxBEofJvQxuk0Nig",category:"sans-serif",url:"https://fonts.gstatic.com/s/hindsiliguri/v14/ijwTs5juQtsyLLR5jN4cxBEofJvQxuk0Nig.ttf",weight:400,isVariable:!1},{displayName:"Share Tech",filename:"7cHtv4Uyi5K0OeZ7bohUwHoDmTcibrA",category:"sans-serif",url:"https://fonts.gstatic.com/s/sharetech/v23/7cHtv4Uyi5K0OeZ7bohUwHoDmTcibrA.ttf",weight:400,isVariable:!1},{displayName:"Smooch Sans",filename:"c4mk1n5uGsXss2LJh1QH6ad91qa3WFv8",category:"sans-serif",url:"https://fonts.gstatic.com/s/smoochsans/v15/c4mk1n5uGsXss2LJh1QH6ad91qa3WFv8.ttf",weight:400,isVariable:!0},{displayName:"Dancing Script",filename:"If2RXTr6YS-zF4S-kcSWSVi_swLngOAliz4X",category:"handwriting",url:"https://fonts.gstatic.com/s/dancingscript/v29/If2RXTr6YS-zF4S-kcSWSVi_swLngOAliz4X.ttf",weight:400,isVariable:!0},{displayName:"Libre Baskerville",filename:"kmKnZrc3Hgbbcjq75U4uslyuy4kn0pNeYRI4CN2V",category:"serif",url:"https://fonts.gstatic.com/s/librebaskerville/v24/kmKnZrc3Hgbbcjq75U4uslyuy4kn0pNeYRI4CN2V.ttf",weight:400,isVariable:!0},{displayName:"EB Garamond",filename:"SlGUmQSNjdsmc35JDF1K5FRyQjgdYxPJ",category:"serif",url:"https://fonts.gstatic.com/s/ebgaramond/v32/SlGUmQSNjdsmc35JDF1K5FRyQjgdYxPJ.ttf",weight:400,isVariable:!0},{displayName:"Tinos",filename:"buE4poGnedXvwgX8dGVh8TI-",category:"serif",url:"https://fonts.gstatic.com/s/tinos/v25/buE4poGnedXvwgX8dGVh8TI-.ttf",weight:400,isVariable:!1},{displayName:"Space Grotesk",filename:"V8mDoQDjQSkFtoMM3T6r8E7mDbZyCts0DqQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/spacegrotesk/v22/V8mDoQDjQSkFtoMM3T6r8E7mDbZyCts0DqQ.ttf",weight:400,isVariable:!0},{displayName:"Libre Franklin",filename:"jizDREVItHgc8qDIbSTKq4XkRhUY0TY7ikbI",category:"sans-serif",url:"https://fonts.gstatic.com/s/librefranklin/v20/jizDREVItHgc8qDIbSTKq4XkRhUY0TY7ikbI.ttf",weight:400,isVariable:!0},{displayName:"Source Code Pro",filename:"HI_SiYsKILxRpg3hIP6sJ7fM7PqVOuHXvMY3xw",category:"monospace",url:"https://fonts.gstatic.com/s/sourcecodepro/v31/HI_SiYsKILxRpg3hIP6sJ7fM7PqVOuHXvMY3xw.ttf",weight:400,isVariable:!0},{displayName:"Cairo",filename:"SLXGc1nY6HkvamImRJqExst1",category:"sans-serif",url:"https://fonts.gstatic.com/s/cairo/v31/SLXGc1nY6HkvamImRJqExst1.ttf",weight:400,isVariable:!0},{displayName:"Josefin Sans",filename:"Qw3aZQNVED7rKGKxtqIqX5EkCnZ5dHw8iw",category:"sans-serif",url:"https://fonts.gstatic.com/s/josefinsans/v34/Qw3aZQNVED7rKGKxtqIqX5EkCnZ5dHw8iw.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif JP",filename:"xn7mYHs72GKoTvER4Gn3b5eMXN6kYkY0T84",category:"serif",url:"https://fonts.gstatic.com/s/notoserifjp/v32/xn7mYHs72GKoTvER4Gn3b5eMXN6kYkY0T84.ttf",weight:400,isVariable:!0},{displayName:"Plus Jakarta Sans",filename:"LDIoaomQNQcsA88c7O9yZ4KMCoOg4Jox2S2CgOva",category:"sans-serif",url:"https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Jox2S2CgOva.ttf",weight:400,isVariable:!0},{displayName:"Anton",filename:"1Ptgg87LROyAm0K08i4gS7lu",category:"sans-serif",url:"https://fonts.gstatic.com/s/anton/v27/1Ptgg87LROyAm0K08i4gS7lu.ttf",weight:400,isVariable:!1},{displayName:"Nanum Gothic",filename:"PN_3Rfi-oW3hYwmKDpxS7F_z_tLfxno73g",category:"sans-serif",url:"https://fonts.gstatic.com/s/nanumgothic/v26/PN_3Rfi-oW3hYwmKDpxS7F_z_tLfxno73g.ttf",weight:400,isVariable:!1},{displayName:"Barlow Condensed",filename:"HTx3L3I-JCGChYJ8VI-L6OO_au7B2xbZ23n3pKg",category:"sans-serif",url:"https://fonts.gstatic.com/s/barlowcondensed/v13/HTx3L3I-JCGChYJ8VI-L6OO_au7B2xbZ23n3pKg.ttf",weight:400,isVariable:!1},{displayName:"Public Sans",filename:"ijwRs572Xtc6ZYQws9YVwkNBdp_yw_k0",category:"sans-serif",url:"https://fonts.gstatic.com/s/publicsans/v21/ijwRs572Xtc6ZYQws9YVwkNBdp_yw_k0.ttf",weight:400,isVariable:!0},{displayName:"Schibsted Grotesk",filename:"Jqz55SSPQuCQF3t8uOwiUL-taUTtaq9BYSsBdjFP",category:"sans-serif",url:"https://fonts.gstatic.com/s/schibstedgrotesk/v7/Jqz55SSPQuCQF3t8uOwiUL-taUTtaq9BYSsBdjFP.ttf",weight:400,isVariable:!0},{displayName:"Dosis",filename:"HhyaU5sn9vOmLwlvAfSKEZZL",category:"sans-serif",url:"https://fonts.gstatic.com/s/dosis/v34/HhyaU5sn9vOmLwlvAfSKEZZL.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans SC",filename:"k3kXo84MPvpLmixcA63oeALhKYiJ-Q7m8w",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssc/v39/k3kXo84MPvpLmixcA63oeALhKYiJ-Q7m8w.ttf",weight:400,isVariable:!0},{displayName:"Mukta",filename:"iJWKBXyXfDDVXYnGp32S0H3f",category:"sans-serif",url:"https://fonts.gstatic.com/s/mukta/v17/iJWKBXyXfDDVXYnGp32S0H3f.ttf",weight:400,isVariable:!1},{displayName:"Roboto Flex",filename:"NaPccZLOBv5T3oB7Cb4i0wu9TsDOCZRS",category:"sans-serif",url:"https://fonts.gstatic.com/s/robotoflex/v30/NaPccZLOBv5T3oB7Cb4i0wu9TsDOCZRS.ttf",weight:400,isVariable:!0},{displayName:"Bitter",filename:"rax8HiqOu8IVPmnLeIZoDDlCmg",category:"serif",url:"https://fonts.gstatic.com/s/bitter/v40/rax8HiqOu8IVPmnLeIZoDDlCmg.ttf",weight:400,isVariable:!0},{displayName:"Cabin",filename:"u-4x0qWljRw-Pe839fxqmjRv",category:"sans-serif",url:"https://fonts.gstatic.com/s/cabin/v35/u-4x0qWljRw-Pe839fxqmjRv.ttf",weight:400,isVariable:!0},{displayName:"Changa One",filename:"xfu00W3wXn3QLUJXhzq46AbouLfbK64",category:"display",url:"https://fonts.gstatic.com/s/changaone/v22/xfu00W3wXn3QLUJXhzq46AbouLfbK64.ttf",weight:400,isVariable:!1},{displayName:"Pacifico",filename:"FwZY7-Qmy14u9lezJ96A4sijpFu_",category:"handwriting",url:"https://fonts.gstatic.com/s/pacifico/v23/FwZY7-Qmy14u9lezJ96A4sijpFu_.ttf",weight:400,isVariable:!1},{displayName:"Assistant",filename:"2sDcZGJYnIjSi6H75xkDb2-4C7wFZQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/assistant/v24/2sDcZGJYnIjSi6H75xkDb2-4C7wFZQ.ttf",weight:400,isVariable:!0},{displayName:"Ramabhadra",filename:"EYq2maBOwqRW9P1SQ83LehNGX5uWw3o",category:"sans-serif",url:"https://fonts.gstatic.com/s/ramabhadra/v17/EYq2maBOwqRW9P1SQ83LehNGX5uWw3o.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Telugu",filename:"0FlPVOGZlE2Rrtr-HmgkMWJNjJ5_XS_eTyer338",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstelugu/v30/0FlPVOGZlE2Rrtr-HmgkMWJNjJ5_XS_eTyer338.ttf",weight:400,isVariable:!0},{displayName:"Almarai",filename:"tsstApxBaigK_hnnc1qPonC3vqc",category:"sans-serif",url:"https://fonts.gstatic.com/s/almarai/v19/tsstApxBaigK_hnnc1qPonC3vqc.ttf",weight:400,isVariable:!1},{displayName:"Alfa Slab One",filename:"6NUQ8FmMKwSEKjnm5-4v-4Jh6dVretWvYmE",category:"display",url:"https://fonts.gstatic.com/s/alfaslabone/v21/6NUQ8FmMKwSEKjnm5-4v-4Jh6dVretWvYmE.ttf",weight:400,isVariable:!1},{displayName:"Oxygen",filename:"2sDfZG1Wl4Lcnbu6iUcnZ0SkAg",category:"sans-serif",url:"https://fonts.gstatic.com/s/oxygen/v16/2sDfZG1Wl4Lcnbu6iUcnZ0SkAg.ttf",weight:400,isVariable:!1},{displayName:"Hind",filename:"5aU69_a8oxmIRG5yBROzkDM",category:"sans-serif",url:"https://fonts.gstatic.com/s/hind/v18/5aU69_a8oxmIRG5yBROzkDM.ttf",weight:400,isVariable:!1},{displayName:"Anek Telugu",filename:"LhWhMVrUNvsddMtYGCx4Fd9dGNWQg_am",category:"sans-serif",url:"https://fonts.gstatic.com/s/anektelugu/v13/LhWhMVrUNvsddMtYGCx4Fd9dGNWQg_am.ttf",weight:400,isVariable:!0},{displayName:"Red Hat Display",filename:"8vIQ7wUr0m80wwYf0QCXZzYzUoTQ-jSgZYvdCQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/redhatdisplay/v21/8vIQ7wUr0m80wwYf0QCXZzYzUoTQ-jSgZYvdCQ.ttf",weight:400,isVariable:!0},{displayName:"Exo 2",filename:"7cHmv4okm5zmbuYvIe804WIo",category:"sans-serif",url:"https://fonts.gstatic.com/s/exo2/v26/7cHmv4okm5zmbuYvIe804WIo.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Arabic",filename:"nwpPtLGrOAZMl5nJ_wfgRg3DrWFZQML36H986K0",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansarabic/v33/nwpPtLGrOAZMl5nJ_wfgRg3DrWFZQML36H986K0.ttf",weight:400,isVariable:!0},{displayName:"Lobster",filename:"neILzCirqoswsqX9_oWsMqEzSJQ",category:"display",url:"https://fonts.gstatic.com/s/lobster/v32/neILzCirqoswsqX9_oWsMqEzSJQ.ttf",weight:400,isVariable:!1},{displayName:"M PLUS Rounded 1c",filename:"VdGEAYIAV6gnpUpoWwNkYvrugw9RuPWGzr8C7vav",category:"sans-serif",url:"https://fonts.gstatic.com/s/mplusrounded1c/v19/VdGEAYIAV6gnpUpoWwNkYvrugw9RuPWGzr8C7vav.ttf",weight:400,isVariable:!1},{displayName:"Crimson Text",filename:"wlp2gwHKFkZgtmSR3NB0oRJvaAJSA_JN3Q",category:"serif",url:"https://fonts.gstatic.com/s/crimsontext/v19/wlp2gwHKFkZgtmSR3NB0oRJvaAJSA_JN3Q.ttf",weight:400,isVariable:!1},{displayName:"Comfortaa",filename:"1Ptsg8LJRfWJmhDAuUsISotrDfGGxA",category:"display",url:"https://fonts.gstatic.com/s/comfortaa/v47/1Ptsg8LJRfWJmhDAuUsISotrDfGGxA.ttf",weight:400,isVariable:!0},{displayName:"Lexend",filename:"wlpwgwvFAVdoq2_f_K4V0WdXaQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/lexend/v26/wlpwgwvFAVdoq2_f_K4V0WdXaQ.ttf",weight:400,isVariable:!0},{displayName:"Sora",filename:"xMQbuFFYT72X_QIjD4e2OX8",category:"sans-serif",url:"https://fonts.gstatic.com/s/sora/v17/xMQbuFFYT72X_QIjD4e2OX8.ttf",weight:400,isVariable:!0},{displayName:"Urbanist",filename:"L0x-DF02iFML4hGCyPqiZyxEimK3",category:"sans-serif",url:"https://fonts.gstatic.com/s/urbanist/v18/L0x-DF02iFML4hGCyPqiZyxEimK3.ttf",weight:400,isVariable:!0},{displayName:"Tajawal",filename:"Iura6YBj_oCad4k1rzaLCr5IlLA",category:"sans-serif",url:"https://fonts.gstatic.com/s/tajawal/v12/Iura6YBj_oCad4k1rzaLCr5IlLA.ttf",weight:400,isVariable:!1},{displayName:"Caveat",filename:"Wnz6HAc5bAfYB2QLYTwZqg_MPQ",category:"handwriting",url:"https://fonts.gstatic.com/s/caveat/v23/Wnz6HAc5bAfYB2QLYTwZqg_MPQ.ttf",weight:400,isVariable:!0},{displayName:"Cormorant Garamond",filename:"co3bmX5slCNuHLi8bLeY9MK7whWMhyjornFLsS6V7w",category:"serif",url:"https://fonts.gstatic.com/s/cormorantgaramond/v21/co3bmX5slCNuHLi8bLeY9MK7whWMhyjornFLsS6V7w.ttf",weight:400,isVariable:!0},{displayName:"Inter Tight",filename:"NGSwv5HMAFg6IuGlBNMjxIsA-6lMQHe9",category:"sans-serif",url:"https://fonts.gstatic.com/s/intertight/v9/NGSwv5HMAFg6IuGlBNMjxIsA-6lMQHe9.ttf",weight:400,isVariable:!0},{displayName:"PT Sans Narrow",filename:"BngRUXNadjH0qYEzV7ab-oWlsYCByxyKeuDp",category:"sans-serif",url:"https://fonts.gstatic.com/s/ptsansnarrow/v19/BngRUXNadjH0qYEzV7ab-oWlsYCByxyKeuDp.ttf",weight:400,isVariable:!1},{displayName:"Arvo",filename:"tDbD2oWUg0MKmSAa7Lzr7vs",category:"serif",url:"https://fonts.gstatic.com/s/arvo/v23/tDbD2oWUg0MKmSAa7Lzr7vs.ttf",weight:400,isVariable:!1},{displayName:"Slabo 27px",filename:"mFT0WbgBwKPR_Z4hGN2qsxgJ1EJ7i90",category:"serif",url:"https://fonts.gstatic.com/s/slabo27px/v16/mFT0WbgBwKPR_Z4hGN2qsxgJ1EJ7i90.ttf",weight:400,isVariable:!1},{displayName:"Overpass",filename:"qFdH35WCmI96Ajtm82GiWdrCwwcJ",category:"sans-serif",url:"https://fonts.gstatic.com/s/overpass/v19/qFdH35WCmI96Ajtm82GiWdrCwwcJ.ttf",weight:400,isVariable:!0},{displayName:"DM Serif Display",filename:"-nFnOHM81r4j6k0gjAW3mujVU2B2K_d709jy92k",category:"serif",url:"https://fonts.gstatic.com/s/dmserifdisplay/v17/-nFnOHM81r4j6k0gjAW3mujVU2B2K_d709jy92k.ttf",weight:400,isVariable:!1},{displayName:"Fjalla One",filename:"Yq6R-LCAWCX3-6Ky7FAFnOZwkxgtUb8",category:"sans-serif",url:"https://fonts.gstatic.com/s/fjallaone/v16/Yq6R-LCAWCX3-6Ky7FAFnOZwkxgtUb8.ttf",weight:400,isVariable:!1},{displayName:"Rajdhani",filename:"LDIxapCSOBg7S-QT7q4AOeekWPrP",category:"sans-serif",url:"https://fonts.gstatic.com/s/rajdhani/v17/LDIxapCSOBg7S-QT7q4AOeekWPrP.ttf",weight:400,isVariable:!1},{displayName:"Abel",filename:"MwQ5bhbm2POE6VhLPJp6qGI",category:"sans-serif",url:"https://fonts.gstatic.com/s/abel/v18/MwQ5bhbm2POE6VhLPJp6qGI.ttf",weight:400,isVariable:!1},{displayName:"IBM Plex Sans Arabic",filename:"Qw3CZRtWPQCuHme67tEYUIx3Kh0PHR9N6bs61vSbfdlA",category:"sans-serif",url:"https://fonts.gstatic.com/s/ibmplexsansarabic/v14/Qw3CZRtWPQCuHme67tEYUIx3Kh0PHR9N6bs61vSbfdlA.ttf",weight:400,isVariable:!1},{displayName:"Fira Sans Condensed",filename:"wEOhEADFm8hSaQTFG18FErVhsC9x-tarYfHnrMtVbx8",category:"sans-serif",url:"https://fonts.gstatic.com/s/firasanscondensed/v11/wEOhEADFm8hSaQTFG18FErVhsC9x-tarYfHnrMtVbx8.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Symbols",filename:"rP2dp3q65FkAtHfwd-eIS2brbDN6gwn8wq-72bOY",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssymbols/v47/rP2dp3q65FkAtHfwd-eIS2brbDN6gwn8wq-72bOY.ttf",weight:400,isVariable:!0},{displayName:"Merriweather Sans",filename:"2-c99IRs1JiJN1FRAMjTN5zd9vgsFEXySDTL8wtf",category:"sans-serif",url:"https://fonts.gstatic.com/s/merriweathersans/v28/2-c99IRs1JiJN1FRAMjTN5zd9vgsFEXySDTL8wtf.ttf",weight:400,isVariable:!0},{displayName:"Teko",filename:"LYjNdG7kmE0gTaR3pCtBtVs",category:"sans-serif",url:"https://fonts.gstatic.com/s/teko/v23/LYjNdG7kmE0gTaR3pCtBtVs.ttf",weight:400,isVariable:!0},{displayName:"Lexend Deca",filename:"K2F1fZFYk-dHSE0UPPuwQ6qgLS76ZHOM",category:"sans-serif",url:"https://fonts.gstatic.com/s/lexenddeca/v25/K2F1fZFYk-dHSE0UPPuwQ6qgLS76ZHOM.ttf",weight:400,isVariable:!0},{displayName:"Source Serif 4",filename:"vEFI2_tTDB4M7-auWDN0ahZJW2gc-NaXXq7H",category:"serif",url:"https://fonts.gstatic.com/s/sourceserif4/v14/vEFI2_tTDB4M7-auWDN0ahZJW2gc-NaXXq7H.ttf",weight:400,isVariable:!0},{displayName:"Asap",filename:"KFOoCniXp96a-zwU4UROGzY",category:"sans-serif",url:"https://fonts.gstatic.com/s/asap/v34/KFOoCniXp96a-zwU4UROGzY.ttf",weight:400,isVariable:!0},{displayName:"Domine",filename:"L0x8DFMnlVwD4h3RvPCmRSlUig",category:"serif",url:"https://fonts.gstatic.com/s/domine/v25/L0x8DFMnlVwD4h3RvPCmRSlUig.ttf",weight:400,isVariable:!0},{displayName:"Shadows Into Light",filename:"UqyNK9UOIntux_czAvDQx_ZcHqZXBNQDcsr4xzSMYA",category:"handwriting",url:"https://fonts.gstatic.com/s/shadowsintolight/v22/UqyNK9UOIntux_czAvDQx_ZcHqZXBNQDcsr4xzSMYA.ttf",weight:400,isVariable:!1},{displayName:"Indie Flower",filename:"m8JVjfNVeKWVnh3QMuKkFcZlbkGG1dKEDw",category:"handwriting",url:"https://fonts.gstatic.com/s/indieflower/v24/m8JVjfNVeKWVnh3QMuKkFcZlbkGG1dKEDw.ttf",weight:400,isVariable:!1},{displayName:"M PLUS 1p",filename:"e3tjeuShHdiFyPFzBRro-D4Ec2jKqw",category:"sans-serif",url:"https://fonts.gstatic.com/s/mplus1p/v32/e3tjeuShHdiFyPFzBRro-D4Ec2jKqw.ttf",weight:400,isVariable:!1},{displayName:"Lilita One",filename:"i7dPIFZ9Zz-WBtRtedDbUEZ2RFq7AwU",category:"display",url:"https://fonts.gstatic.com/s/lilitaone/v17/i7dPIFZ9Zz-WBtRtedDbUEZ2RFq7AwU.ttf",weight:400,isVariable:!1},{displayName:"Satisfy",filename:"rP2Hp2yn6lkG50LoOZSCHBeHFl0",category:"handwriting",url:"https://fonts.gstatic.com/s/satisfy/v22/rP2Hp2yn6lkG50LoOZSCHBeHFl0.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Thai",filename:"iJWdBXeUZi_OHPqn4wq6hQ2_hah-5c-dUX0x",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansthai/v29/iJWdBXeUZi_OHPqn4wq6hQ2_hah-5c-dUX0x.ttf",weight:400,isVariable:!0},{displayName:"Barlow Semi Condensed",filename:"wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRnf4CrCEo4gg",category:"sans-serif",url:"https://fonts.gstatic.com/s/barlowsemicondensed/v16/wlpvgxjLBV1hqnzfr-F8sEYMB0Yybp0mudRnf4CrCEo4gg.ttf",weight:400,isVariable:!1},{displayName:"Maven Pro",filename:"7Au9p_AqnyWWAxW2Wk32ym4JMFge0g",category:"sans-serif",url:"https://fonts.gstatic.com/s/mavenpro/v40/7Au9p_AqnyWWAxW2Wk32ym4JMFge0g.ttf",weight:400,isVariable:!0},{displayName:"IBM Plex Mono",filename:"-F63fjptAgt5VM-kVkqdyU8n5igg1l9kn-s",category:"monospace",url:"https://fonts.gstatic.com/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n5igg1l9kn-s.ttf",weight:400,isVariable:!1},{displayName:"Orbitron",filename:"yMJRMIlzdpvBhQQL_Tq8fSx5i814",category:"sans-serif",url:"https://fonts.gstatic.com/s/orbitron/v35/yMJRMIlzdpvBhQQL_Tq8fSx5i814.ttf",weight:400,isVariable:!0},{displayName:"Bricolage Grotesque",filename:"3y996as8bTXq_nANBjzKo3IeZx8z6up5H--HGN6NLPo",category:"sans-serif",url:"https://fonts.gstatic.com/s/bricolagegrotesque/v9/3y996as8bTXq_nANBjzKo3IeZx8z6up5H--HGN6NLPo.ttf",weight:400,isVariable:!0},{displayName:"Varela Round",filename:"w8gdH283Tvk__Lua32TysjIvoMGOD9gxZw",category:"sans-serif",url:"https://fonts.gstatic.com/s/varelaround/v21/w8gdH283Tvk__Lua32TysjIvoMGOD9gxZw.ttf",weight:400,isVariable:!1},{displayName:"Abril Fatface",filename:"zOL64pLDlL1D99S8g8PtiKchm-BsjOLhZBY",category:"display",url:"https://fonts.gstatic.com/s/abrilfatface/v25/zOL64pLDlL1D99S8g8PtiKchm-BsjOLhZBY.ttf",weight:400,isVariable:!1},{displayName:"Gravitas One",filename:"5h1diZ4hJ3cblKy3LWakKQmaDWRNr3DzbQ",category:"display",url:"https://fonts.gstatic.com/s/gravitasone/v21/5h1diZ4hJ3cblKy3LWakKQmaDWRNr3DzbQ.ttf",weight:400,isVariable:!1},{displayName:"Chakra Petch",filename:"cIf6MapbsEk7TDLdtEz1BwkmmKBhSL7Y1Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/chakrapetch/v13/cIf6MapbsEk7TDLdtEz1BwkmmKBhSL7Y1Q.ttf",weight:400,isVariable:!1},{displayName:"Play",filename:"6aez4K2oVqwIjtI8Hp8Tx3A",category:"sans-serif",url:"https://fonts.gstatic.com/s/play/v21/6aez4K2oVqwIjtI8Hp8Tx3A.ttf",weight:400,isVariable:!1},{displayName:"Questrial",filename:"QdVUSTchPBm7nuUeVf7EuStkm20oJA",category:"sans-serif",url:"https://fonts.gstatic.com/s/questrial/v19/QdVUSTchPBm7nuUeVf7EuStkm20oJA.ttf",weight:400,isVariable:!1},{displayName:"Yanone Kaffeesatz",filename:"3y976aknfjLm_3lMKjiMgmUUYBs04b8cFeulHc6N",category:"sans-serif",url:"https://fonts.gstatic.com/s/yanonekaffeesatz/v32/3y976aknfjLm_3lMKjiMgmUUYBs04b8cFeulHc6N.ttf",weight:400,isVariable:!0},{displayName:"Cinzel",filename:"8vIJ7ww63mVu7gtL8W76HEdHMg",category:"serif",url:"https://fonts.gstatic.com/s/cinzel/v26/8vIJ7ww63mVu7gtL8W76HEdHMg.ttf",weight:400,isVariable:!0},{displayName:"Bodoni Moda",filename:"aFTQ7PxzY382XsXX63LUYKSNQqn0X0BO",category:"serif",url:"https://fonts.gstatic.com/s/bodonimoda/v28/aFTQ7PxzY382XsXX63LUYKSNQqn0X0BO.ttf",weight:400,isVariable:!0},{displayName:"IBM Plex Serif",filename:"jizDREVNn1dOx-zrZ2X3pZvkThUY0TY7ikbI",category:"serif",url:"https://fonts.gstatic.com/s/ibmplexserif/v20/jizDREVNn1dOx-zrZ2X3pZvkThUY0TY7ikbI.ttf",weight:400,isVariable:!1},{displayName:"Kalam",filename:"YA9dr0Wd4kDdMuhWMibDszkB",category:"handwriting",url:"https://fonts.gstatic.com/s/kalam/v18/YA9dr0Wd4kDdMuhWMibDszkB.ttf",weight:400,isVariable:!1},{displayName:"Great Vibes",filename:"RWmMoKWR9v4ksMfaWd_JN-XCg6UKDXlq",category:"handwriting",url:"https://fonts.gstatic.com/s/greatvibes/v21/RWmMoKWR9v4ksMfaWd_JN-XCg6UKDXlq.ttf",weight:400,isVariable:!1},{displayName:"Exo",filename:"4UaOrEtFpBIidHSi-DP-5g",category:"sans-serif",url:"https://fonts.gstatic.com/s/exo/v25/4UaOrEtFpBIidHSi-DP-5g.ttf",weight:400,isVariable:!0},{displayName:"Be Vietnam Pro",filename:"QdVPSTAyLFyeg_IDWvOJmVES_EwwD3s6ZKAi",category:"sans-serif",url:"https://fonts.gstatic.com/s/bevietnampro/v12/QdVPSTAyLFyeg_IDWvOJmVES_EwwD3s6ZKAi.ttf",weight:400,isVariable:!1},{displayName:"Archivo Narrow",filename:"tss0ApVBdCYD5Q7hcxTE1ArZ0Yb3g31S2s8p",category:"sans-serif",url:"https://fonts.gstatic.com/s/archivonarrow/v35/tss0ApVBdCYD5Q7hcxTE1ArZ0Yb3g31S2s8p.ttf",weight:400,isVariable:!0},{displayName:"Zilla Slab",filename:"dFa6ZfeM_74wlPZtksIFWj0w_HyIRlE",category:"serif",url:"https://fonts.gstatic.com/s/zillaslab/v12/dFa6ZfeM_74wlPZtksIFWj0w_HyIRlE.ttf",weight:400,isVariable:!1},{displayName:"Nanum Myeongjo",filename:"9Btx3DZF0dXLMZlywRbVRNhxy1LreHQ8juyl",category:"serif",url:"https://fonts.gstatic.com/s/nanummyeongjo/v31/9Btx3DZF0dXLMZlywRbVRNhxy1LreHQ8juyl.ttf",weight:400,isVariable:!1},{displayName:"Instrument Serif",filename:"jizBRFtNs2ka5fXjeivQ4LroWlx-2zIZj1bIkNo",category:"serif",url:"https://fonts.gstatic.com/s/instrumentserif/v5/jizBRFtNs2ka5fXjeivQ4LroWlx-2zIZj1bIkNo.ttf",weight:400,isVariable:!1},{displayName:"Zen Kaku Gothic New",filename:"gNMYW2drQpDw0GjzrVNFf_valaDBcznOkjtiTWz5UGA",category:"sans-serif",url:"https://fonts.gstatic.com/s/zenkakugothicnew/v18/gNMYW2drQpDw0GjzrVNFf_valaDBcznOkjtiTWz5UGA.ttf",weight:400,isVariable:!1},{displayName:"Marcellus",filename:"wEO_EBrOk8hQLDvIAF8FUfAL3EsHiA",category:"serif",url:"https://fonts.gstatic.com/s/marcellus/v14/wEO_EBrOk8hQLDvIAF8FUfAL3EsHiA.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif KR",filename:"3Jn7SDn90Gmq2mr3blnHaTZXduBp1ONyKHQ",category:"serif",url:"https://fonts.gstatic.com/s/notoserifkr/v30/3Jn7SDn90Gmq2mr3blnHaTZXduBp1ONyKHQ.ttf",weight:400,isVariable:!0},{displayName:"Albert Sans",filename:"i7dOIFdwYjGaAMFtZd_QA2ZcalayGhyV",category:"sans-serif",url:"https://fonts.gstatic.com/s/albertsans/v4/i7dOIFdwYjGaAMFtZd_QA2ZcalayGhyV.ttf",weight:400,isVariable:!0},{displayName:"Vollkorn",filename:"0yb9GDoxxrvAnPhYGykuYkw2rQg1",category:"serif",url:"https://fonts.gstatic.com/s/vollkorn/v30/0yb9GDoxxrvAnPhYGykuYkw2rQg1.ttf",weight:400,isVariable:!0},{displayName:"Fredoka",filename:"X7nl4b87HvSqjb_WOCaQ4MTgAgk",category:"sans-serif",url:"https://fonts.gstatic.com/s/fredoka/v17/X7nl4b87HvSqjb_WOCaQ4MTgAgk.ttf",weight:400,isVariable:!0},{displayName:"Spectral",filename:"rnCr-xNNww_2s0amA-M-mHnOSOuk",category:"serif",url:"https://fonts.gstatic.com/s/spectral/v15/rnCr-xNNww_2s0amA-M-mHnOSOuk.ttf",weight:400,isVariable:!1},{displayName:"Signika",filename:"vEFR2_JTCgwQ5ejvK1YsB3hod0k",category:"sans-serif",url:"https://fonts.gstatic.com/s/signika/v29/vEFR2_JTCgwQ5ejvK1YsB3hod0k.ttf",weight:400,isVariable:!0},{displayName:"Google Sans Flex",filename:"t5t7IQcYNIWbFgDgAAzZ34auoVyXipusfhcat2c",category:"sans-serif",url:"https://fonts.gstatic.com/s/googlesansflex/v16/t5t7IQcYNIWbFgDgAAzZ34auoVyXipusfhcat2c.ttf",weight:400,isVariable:!0},{displayName:"Saira Condensed",filename:"EJROQgErUN8XuHNEtX81i9TmEkrfpeFE-IyCrw",category:"sans-serif",url:"https://fonts.gstatic.com/s/sairacondensed/v12/EJROQgErUN8XuHNEtX81i9TmEkrfpeFE-IyCrw.ttf",weight:400,isVariable:!1},{displayName:"Sarabun",filename:"DtVjJx26TKEr37c9WBJDnlQN9gk",category:"sans-serif",url:"https://fonts.gstatic.com/s/sarabun/v17/DtVjJx26TKEr37c9WBJDnlQN9gk.ttf",weight:400,isVariable:!1},{displayName:"ABeeZee",filename:"esDR31xSG-6AGleN6tKukbcHCpE",category:"sans-serif",url:"https://fonts.gstatic.com/s/abeezee/v23/esDR31xSG-6AGleN6tKukbcHCpE.ttf",weight:400,isVariable:!1},{displayName:"Permanent Marker",filename:"Fh4uPib9Iyv2ucM6pGQMWimMp004HaqIfrT5nlk",category:"handwriting",url:"https://fonts.gstatic.com/s/permanentmarker/v16/Fh4uPib9Iyv2ucM6pGQMWimMp004HaqIfrT5nlk.ttf",weight:400,isVariable:!1},{displayName:"Unbounded",filename:"Yq6W-LOTXCb04q32xlpAvMxenxE0SA",category:"sans-serif",url:"https://fonts.gstatic.com/s/unbounded/v12/Yq6W-LOTXCb04q32xlpAvMxenxE0SA.ttf",weight:400,isVariable:!0},{displayName:"Cormorant",filename:"H4clBXOCl9bbnla_nHIa6JG8iqeuag",category:"serif",url:"https://fonts.gstatic.com/s/cormorant/v24/H4clBXOCl9bbnla_nHIa6JG8iqeuag.ttf",weight:400,isVariable:!0},{displayName:"JetBrains Mono",filename:"tDbV2o-flEEny0FZhsfKu5WU4yD8MQCPTFrV",category:"monospace",url:"https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbV2o-flEEny0FZhsfKu5WU4yD8MQCPTFrV.ttf",weight:400,isVariable:!0},{displayName:"Catamaran",filename:"o-0IIpQoyXQa2RxT7-5b4j5Ba_2c7A",category:"sans-serif",url:"https://fonts.gstatic.com/s/catamaran/v28/o-0IIpQoyXQa2RxT7-5b4j5Ba_2c7A.ttf",weight:400,isVariable:!0},{displayName:"Noto Kufi Arabic",filename:"CSRk4ydQnPyaDxEXLFF6LZVLKrodnOQPF2KpMzE",category:"sans-serif",url:"https://fonts.gstatic.com/s/notokufiarabic/v27/CSRk4ydQnPyaDxEXLFF6LZVLKrodnOQPF2KpMzE.ttf",weight:400,isVariable:!0},{displayName:"Frank Ruhl Libre",filename:"j8_w6_fAw7jrcalD7oKYNX0QfAnPa7fv4JjnmY4",category:"serif",url:"https://fonts.gstatic.com/s/frankruhllibre/v23/j8_w6_fAw7jrcalD7oKYNX0QfAnPa7fv4JjnmY4.ttf",weight:400,isVariable:!0},{displayName:"Rowdies",filename:"ptRJTieMYPNBAK21zrdJwObZNQo",category:"display",url:"https://fonts.gstatic.com/s/rowdies/v19/ptRJTieMYPNBAK21zrdJwObZNQo.ttf",weight:400,isVariable:!1},{displayName:"Google Sans Code",filename:"pxifyogzv91QhV44Z_GQBHsGf5PuaElurmapvvM",category:"monospace",url:"https://fonts.gstatic.com/s/googlesanscode/v14/pxifyogzv91QhV44Z_GQBHsGf5PuaElurmapvvM.ttf",weight:400,isVariable:!0},{displayName:"Hind Madurai",filename:"f0Xx0e2p98ZvDXdZQIOcpqjn8Y0DceA0OQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/hindmadurai/v13/f0Xx0e2p98ZvDXdZQIOcpqjn8Y0DceA0OQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif SC",filename:"H4chBXePl9DZ0Xe7gG9cyOj7oqacbzhqDtg",category:"serif",url:"https://fonts.gstatic.com/s/notoserifsc/v34/H4chBXePl9DZ0Xe7gG9cyOj7oqacbzhqDtg.ttf",weight:400,isVariable:!0},{displayName:"Bree Serif",filename:"4UaHrEJCrhhnVA3DgluAx63j5pN1MwI",category:"serif",url:"https://fonts.gstatic.com/s/breeserif/v18/4UaHrEJCrhhnVA3DgluAx63j5pN1MwI.ttf",weight:400,isVariable:!1},{displayName:"Geologica",filename:"oY1c8evIr7j9P3TN9YwXCv5xY4QBLw",category:"sans-serif",url:"https://fonts.gstatic.com/s/geologica/v5/oY1c8evIr7j9P3TN9YwXCv5xY4QBLw.ttf",weight:400,isVariable:!0},{displayName:"Alegreya Sans",filename:"5aUz9_-1phKLFgshYDvh6Vwt3V1nvEVXlm4",category:"sans-serif",url:"https://fonts.gstatic.com/s/alegreyasans/v26/5aUz9_-1phKLFgshYDvh6Vwt3V1nvEVXlm4.ttf",weight:400,isVariable:!1},{displayName:"Advent Pro",filename:"V8mAoQfxVT4Dvddr_yOwtT2nKb5ZFtI",category:"sans-serif",url:"https://fonts.gstatic.com/s/adventpro/v33/V8mAoQfxVT4Dvddr_yOwtT2nKb5ZFtI.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Display",filename:"RLplK4fy6r6tOBEJg0IAKzqdFZVZxokvfn_BDLxR",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansdisplay/v30/RLplK4fy6r6tOBEJg0IAKzqdFZVZxokvfn_BDLxR.ttf",weight:400,isVariable:!0},{displayName:"Luckiest Guy",filename:"_gP_1RrxsjcxVyin9l9n_j2RStR3qDpraA",category:"display",url:"https://fonts.gstatic.com/s/luckiestguy/v25/_gP_1RrxsjcxVyin9l9n_j2RStR3qDpraA.ttf",weight:400,isVariable:!1},{displayName:"League Spartan",filename:"kJEqBuEW6A0lliaV_m88ja5TwsZ3J5i1DJZg",category:"sans-serif",url:"https://fonts.gstatic.com/s/leaguespartan/v15/kJEqBuEW6A0lliaV_m88ja5TwsZ3J5i1DJZg.ttf",weight:400,isVariable:!0},{displayName:"Alegreya",filename:"4UaBrEBBsBhlBjvfkRLmzanB44N1",category:"serif",url:"https://fonts.gstatic.com/s/alegreya/v39/4UaBrEBBsBhlBjvfkRLmzanB44N1.ttf",weight:400,isVariable:!0},{displayName:"Instrument Sans",filename:"pxicypc9vsFDm051Uf6KVwgkfoSrSGNAom-wpw",category:"sans-serif",url:"https://fonts.gstatic.com/s/instrumentsans/v4/pxicypc9vsFDm051Uf6KVwgkfoSrSGNAom-wpw.ttf",weight:400,isVariable:!0},{displayName:"Acme",filename:"RrQfboBx-C5_bx3Lb23lzLk",category:"sans-serif",url:"https://fonts.gstatic.com/s/acme/v27/RrQfboBx-C5_bx3Lb23lzLk.ttf",weight:400,isVariable:!1},{displayName:"DM Mono",filename:"aFTU7PB1QTsUX8KYhh2aBYyMcKw",category:"monospace",url:"https://fonts.gstatic.com/s/dmmono/v16/aFTU7PB1QTsUX8KYhh2aBYyMcKw.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif TC",filename:"XLYgIZb5bJNDGYxLBibeHZ0BhncESXFtUsM",category:"serif",url:"https://fonts.gstatic.com/s/notoseriftc/v35/XLYgIZb5bJNDGYxLBibeHZ0BhncESXFtUsM.ttf",weight:400,isVariable:!0},{displayName:"Signika Negative",filename:"E218_cfngu7HiRpPX3ZpNE4kY5zKUvKrrpno9zY",category:"sans-serif",url:"https://fonts.gstatic.com/s/signikanegative/v26/E218_cfngu7HiRpPX3ZpNE4kY5zKUvKrrpno9zY.ttf",weight:400,isVariable:!0},{displayName:"Montserrat Alternates",filename:"mFTvWacfw6zH4dthXcyms1lPpC8I_b0juU0J7K3RCJ1b0w",category:"sans-serif",url:"https://fonts.gstatic.com/s/montserratalternates/v18/mFTvWacfw6zH4dthXcyms1lPpC8I_b0juU0J7K3RCJ1b0w.ttf",weight:400,isVariable:!1},{displayName:"Unna",filename:"AYCEpXzofN0NCpgBlGHCWFM",category:"serif",url:"https://fonts.gstatic.com/s/unna/v25/AYCEpXzofN0NCpgBlGHCWFM.ttf",weight:400,isVariable:!1},{displayName:"Sofia Sans",filename:"Yq6R-LCVXSLy9uPBwlATnOZwkxgtUb8",category:"sans-serif",url:"https://fonts.gstatic.com/s/sofiasans/v20/Yq6R-LCVXSLy9uPBwlATnOZwkxgtUb8.ttf",weight:400,isVariable:!0},{displayName:"Sanchez",filename:"Ycm2sZJORluHnXbITm5b_BwE1l0",category:"serif",url:"https://fonts.gstatic.com/s/sanchez/v17/Ycm2sZJORluHnXbITm5b_BwE1l0.ttf",weight:400,isVariable:!1},{displayName:"Roboto Serif",filename:"R70djywflP6FLr3gZx7K8Uy0Vxn9R5ShnA",category:"serif",url:"https://fonts.gstatic.com/s/robotoserif/v17/R70djywflP6FLr3gZx7K8Uy0Vxn9R5ShnA.ttf",weight:400,isVariable:!0},{displayName:"Lobster Two",filename:"BngMUXZGTXPUvIoyV6yN59fK7KSJ4ACD",category:"display",url:"https://fonts.gstatic.com/s/lobstertwo/v22/BngMUXZGTXPUvIoyV6yN59fK7KSJ4ACD.ttf",weight:400,isVariable:!1},{displayName:"Encode Sans",filename:"LDI2apOFNxEwR-Bd1O9uYMOsc-bGkqIw",category:"sans-serif",url:"https://fonts.gstatic.com/s/encodesans/v23/LDI2apOFNxEwR-Bd1O9uYMOsc-bGkqIw.ttf",weight:400,isVariable:!0},{displayName:"Amiri",filename:"J7aRnpd8CGxBHqUpvrIw74NL",category:"serif",url:"https://fonts.gstatic.com/s/amiri/v30/J7aRnpd8CGxBHqUpvrIw74NL.ttf",weight:400,isVariable:!1},{displayName:"Oleo Script",filename:"rax5HieDvtMOe0iICsUccBhasU7Q8Cad",category:"display",url:"https://fonts.gstatic.com/s/oleoscript/v15/rax5HieDvtMOe0iICsUccBhasU7Q8Cad.ttf",weight:400,isVariable:!1},{displayName:"Onest",filename:"gNMKW3F-SZuj7ymY8ncKEZez",category:"sans-serif",url:"https://fonts.gstatic.com/s/onest/v9/gNMKW3F-SZuj7ymY8ncKEZez.ttf",weight:400,isVariable:!0},{displayName:"Space Mono",filename:"i7dPIFZifjKcF5UAWdDRUEZ2RFq7AwU",category:"monospace",url:"https://fonts.gstatic.com/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRUEZ2RFq7AwU.ttf",weight:400,isVariable:!1},{displayName:"Cardo",filename:"wlp_gwjKBV1pqiv_1oAZ2H5O",category:"serif",url:"https://fonts.gstatic.com/s/cardo/v21/wlp_gwjKBV1pqiv_1oAZ2H5O.ttf",weight:400,isVariable:!1},{displayName:"STIX Two Text",filename:"YA9Vr02F12Xkf5whdwKf11l0l7mGiv_Q7dA",category:"serif",url:"https://fonts.gstatic.com/s/stixtwotext/v18/YA9Vr02F12Xkf5whdwKf11l0l7mGiv_Q7dA.ttf",weight:400,isVariable:!0},{displayName:"Amatic SC",filename:"TUZyzwprpvBS1izr_vO0De6ecZQf1A",category:"handwriting",url:"https://fonts.gstatic.com/s/amaticsc/v28/TUZyzwprpvBS1izr_vO0De6ecZQf1A.ttf",weight:400,isVariable:!1},{displayName:"Crimson Pro",filename:"q5uDsoa5M_tv7IihmnkabDRcq4BYCdKi",category:"serif",url:"https://fonts.gstatic.com/s/crimsonpro/v28/q5uDsoa5M_tv7IihmnkabDRcq4BYCdKi.ttf",weight:400,isVariable:!0},{displayName:"Geist",filename:"gyByhwUxId8gMHwbElSvO5Tc",category:"sans-serif",url:"https://fonts.gstatic.com/s/geist/v4/gyByhwUxId8gMHwbElSvO5Tc.ttf",weight:400,isVariable:!0},{displayName:"Titan One",filename:"mFTzWbsGxbbS_J5cQcjykzIn2Etikg",category:"display",url:"https://fonts.gstatic.com/s/titanone/v17/mFTzWbsGxbbS_J5cQcjykzIn2Etikg.ttf",weight:400,isVariable:!1},{displayName:"Rethink Sans",filename:"AMOWz4SDuXOMCPfdoglY9JQ0U1K2w9lb4g",category:"sans-serif",url:"https://fonts.gstatic.com/s/rethinksans/v7/AMOWz4SDuXOMCPfdoglY9JQ0U1K2w9lb4g.ttf",weight:400,isVariable:!0},{displayName:"Courgette",filename:"wEO_EBrAnc9BLjLQAUkFUfAL3EsHiA",category:"handwriting",url:"https://fonts.gstatic.com/s/courgette/v19/wEO_EBrAnc9BLjLQAUkFUfAL3EsHiA.ttf",weight:400,isVariable:!1},{displayName:"Prata",filename:"6xKhdSpbNNCT-vWIAG_5LWwJ",category:"serif",url:"https://fonts.gstatic.com/s/prata/v22/6xKhdSpbNNCT-vWIAG_5LWwJ.ttf",weight:400,isVariable:!1},{displayName:"Zen Maru Gothic",filename:"o-0SIpIxzW5b-RxT-6A8jWAtCp-k7UJmNLGG9A",category:"sans-serif",url:"https://fonts.gstatic.com/s/zenmarugothic/v19/o-0SIpIxzW5b-RxT-6A8jWAtCp-k7UJmNLGG9A.ttf",weight:400,isVariable:!1},{displayName:"Libre Caslon Text",filename:"DdT878IGsGw1aF1JU10PUbTvNNaDMcq_3eNrHgO1",category:"serif",url:"https://fonts.gstatic.com/s/librecaslontext/v5/DdT878IGsGw1aF1JU10PUbTvNNaDMcq_3eNrHgO1.ttf",weight:400,isVariable:!1},{displayName:"Rubik Mono One",filename:"UqyJK8kPP3hjw6ANTdfRk9YSN-8wRqQrc_j9",category:"sans-serif",url:"https://fonts.gstatic.com/s/rubikmonoone/v20/UqyJK8kPP3hjw6ANTdfRk9YSN-8wRqQrc_j9.ttf",weight:400,isVariable:!1},{displayName:"Hanken Grotesk",filename:"ieVn2YZDLWuGJpnzaiwFXS9tYupa7dGTCTs5",category:"sans-serif",url:"https://fonts.gstatic.com/s/hankengrotesk/v12/ieVn2YZDLWuGJpnzaiwFXS9tYupa7dGTCTs5.ttf",weight:400,isVariable:!0},{displayName:"Chivo",filename:"va9I4kzIxd1KFoBvS-J3kbDP",category:"sans-serif",url:"https://fonts.gstatic.com/s/chivo/v21/va9I4kzIxd1KFoBvS-J3kbDP.ttf",weight:400,isVariable:!0},{displayName:"Newsreader",filename:"cY9AfjOCX1hbuyalUrK479n4jaBGNpY",category:"serif",url:"https://fonts.gstatic.com/s/newsreader/v26/cY9AfjOCX1hbuyalUrK479n4jaBGNpY.ttf",weight:400,isVariable:!0},{displayName:"Russo One",filename:"Z9XUDmZRWg6M1LvRYsH-yMOInrib9Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/russoone/v18/Z9XUDmZRWg6M1LvRYsH-yMOInrib9Q.ttf",weight:400,isVariable:!1},{displayName:"Padauk",filename:"RrQRboJg-id7OnbBa0_g3LlYbg",category:"sans-serif",url:"https://fonts.gstatic.com/s/padauk/v17/RrQRboJg-id7OnbBa0_g3LlYbg.ttf",weight:400,isVariable:!1},{displayName:"News Cycle",filename:"CSR64z1Qlv-GDxkbKVQ_TOcATNt_pOU",category:"sans-serif",url:"https://fonts.gstatic.com/s/newscycle/v26/CSR64z1Qlv-GDxkbKVQ_TOcATNt_pOU.ttf",weight:400,isVariable:!1},{displayName:"Righteous",filename:"1cXxaUPXBpj2rGoU7C9mj3uEicG01A",category:"display",url:"https://fonts.gstatic.com/s/righteous/v18/1cXxaUPXBpj2rGoU7C9mj3uEicG01A.ttf",weight:400,isVariable:!1},{displayName:"Red Hat Text",filename:"RrQXbohi_ic6B3yVSzGBrMxgb60sE8yZPA",category:"sans-serif",url:"https://fonts.gstatic.com/s/redhattext/v19/RrQXbohi_ic6B3yVSzGBrMxgb60sE8yZPA.ttf",weight:400,isVariable:!0},{displayName:"Comic Neue",filename:"4UaHrEJDsxBrF37olUeDx63j5pN1MwI",category:"handwriting",url:"https://fonts.gstatic.com/s/comicneue/v9/4UaHrEJDsxBrF37olUeDx63j5pN1MwI.ttf",weight:400,isVariable:!1},{displayName:"Atkinson Hyperlegible",filename:"9Bt23C1KxNDXMspQ1lPyU89-1h6ONRlW45GE5ZgpewSSbQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/atkinsonhyperlegible/v12/9Bt23C1KxNDXMspQ1lPyU89-1h6ONRlW45GE5ZgpewSSbQ.ttf",weight:400,isVariable:!1},{displayName:"Kumbh Sans",filename:"c4ml1n92AsfhuCq6tVsauodX-Kq-QUI",category:"sans-serif",url:"https://fonts.gstatic.com/s/kumbhsans/v27/c4ml1n92AsfhuCq6tVsauodX-Kq-QUI.ttf",weight:400,isVariable:!0},{displayName:"Changa",filename:"2-cm9JNi2YuVOUcUYZa_Wu_lpA",category:"sans-serif",url:"https://fonts.gstatic.com/s/changa/v29/2-cm9JNi2YuVOUcUYZa_Wu_lpA.ttf",weight:400,isVariable:!0},{displayName:"Gothic A1",filename:"CSR94z5ZnPydRjlCCwl6bM0uQNJmvQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/gothica1/v18/CSR94z5ZnPydRjlCCwl6bM0uQNJmvQ.ttf",weight:400,isVariable:!1},{displayName:"Antic Slab",filename:"bWt97fPFfRzkCa9Jlp6IWcJWXW5p5Qo",category:"serif",url:"https://fonts.gstatic.com/s/anticslab/v17/bWt97fPFfRzkCa9Jlp6IWcJWXW5p5Qo.ttf",weight:400,isVariable:!1},{displayName:"DM Serif Text",filename:"rnCu-xZa_krGokauCeNq1wWyafOPXHIJErY",category:"serif",url:"https://fonts.gstatic.com/s/dmseriftext/v13/rnCu-xZa_krGokauCeNq1wWyafOPXHIJErY.ttf",weight:400,isVariable:!1},{displayName:"Yellowtail",filename:"OZpGg_pnoDtINPfRIlLotlzNwED-b4g",category:"handwriting",url:"https://fonts.gstatic.com/s/yellowtail/v25/OZpGg_pnoDtINPfRIlLotlzNwED-b4g.ttf",weight:400,isVariable:!1},{displayName:"Martel",filename:"PN_xRfK9oXHga0XtYcI-jT3L_w",category:"serif",url:"https://fonts.gstatic.com/s/martel/v12/PN_xRfK9oXHga0XtYcI-jT3L_w.ttf",weight:400,isVariable:!1},{displayName:"Delius",filename:"PN_xRfK0pW_9e1rtYcI-jT3L_w",category:"handwriting",url:"https://fonts.gstatic.com/s/delius/v21/PN_xRfK0pW_9e1rtYcI-jT3L_w.ttf",weight:400,isVariable:!1},{displayName:"Noticia Text",filename:"VuJ2dNDF2Yv9qppOePKYRP1GYTFZt0rNpQ",category:"serif",url:"https://fonts.gstatic.com/s/noticiatext/v16/VuJ2dNDF2Yv9qppOePKYRP1GYTFZt0rNpQ.ttf",weight:400,isVariable:!1},{displayName:"Encode Sans Condensed",filename:"j8_16_LD37rqfuwxyIuaZhE6cRXOLtm2gfTGgaWNDw8VIw",category:"sans-serif",url:"https://fonts.gstatic.com/s/encodesanscondensed/v11/j8_16_LD37rqfuwxyIuaZhE6cRXOLtm2gfTGgaWNDw8VIw.ttf",weight:400,isVariable:!1},{displayName:"Creepster",filename:"AlZy_zVUqJz4yMrniH4hdXf4XB0Tow",category:"display",url:"https://fonts.gstatic.com/s/creepster/v13/AlZy_zVUqJz4yMrniH4hdXf4XB0Tow.ttf",weight:400,isVariable:!1},{displayName:"Literata",filename:"or3hQ6P12-iJxAIgLbT3LLQ1niPn",category:"serif",url:"https://fonts.gstatic.com/s/literata/v40/or3hQ6P12-iJxAIgLbT3LLQ1niPn.ttf",weight:400,isVariable:!0},{displayName:"Nanum Gothic Coding",filename:"8QIVdjzHisX_8vv59_xMxtPFW4IXROwsy6QxVs1X7tc",category:"handwriting",url:"https://fonts.gstatic.com/s/nanumgothiccoding/v27/8QIVdjzHisX_8vv59_xMxtPFW4IXROwsy6QxVs1X7tc.ttf",weight:400,isVariable:!1},{displayName:"Crete Round",filename:"55xoey1sJNPjPiv1ZZZrxJ1827zAKnxN",category:"serif",url:"https://fonts.gstatic.com/s/creteround/v16/55xoey1sJNPjPiv1ZZZrxJ1827zAKnxN.ttf",weight:400,isVariable:!1},{displayName:"Patua One",filename:"ZXuke1cDvLCKLDcimxBI5PNvNA9LuA",category:"display",url:"https://fonts.gstatic.com/s/patuaone/v22/ZXuke1cDvLCKLDcimxBI5PNvNA9LuA.ttf",weight:400,isVariable:!1},{displayName:"Sawarabi Mincho",filename:"8QIRdiDaitzr7brc8ahpxt6GcIJTLahP46UDUw",category:"serif",url:"https://fonts.gstatic.com/s/sawarabimincho/v20/8QIRdiDaitzr7brc8ahpxt6GcIJTLahP46UDUw.ttf",weight:400,isVariable:!1},{displayName:"Philosopher",filename:"vEFV2_5QCwIS4_Dhez5jcVBpRUwU08qe",category:"sans-serif",url:"https://fonts.gstatic.com/s/philosopher/v21/vEFV2_5QCwIS4_Dhez5jcVBpRUwU08qe.ttf",weight:400,isVariable:!1},{displayName:"Alata",filename:"PbytFmztEwbIofe6xKcRQEOX",category:"sans-serif",url:"https://fonts.gstatic.com/s/alata/v12/PbytFmztEwbIofe6xKcRQEOX.ttf",weight:400,isVariable:!1},{displayName:"Quattrocento",filename:"OZpEg_xvsDZQL_LKIF7q4jPHxGL7f4jFuA",category:"serif",url:"https://fonts.gstatic.com/s/quattrocento/v24/OZpEg_xvsDZQL_LKIF7q4jPHxGL7f4jFuA.ttf",weight:400,isVariable:!1},{displayName:"Courier Prime",filename:"u-450q2lgwslOqpF_6gQ8kELWwZjW-_-tvg",category:"monospace",url:"https://fonts.gstatic.com/s/courierprime/v11/u-450q2lgwslOqpF_6gQ8kELWwZjW-_-tvg.ttf",weight:400,isVariable:!1},{displayName:"Alumni Sans",filename:"nwpQtKqkOwdO2aOIwhWudF-i5QwyYdrc",category:"sans-serif",url:"https://fonts.gstatic.com/s/alumnisans/v20/nwpQtKqkOwdO2aOIwhWudF-i5QwyYdrc.ttf",weight:400,isVariable:!0},{displayName:"Passion One",filename:"PbynFmL8HhTPqbjUzux3JHuW_Frg6YoV",category:"display",url:"https://fonts.gstatic.com/s/passionone/v20/PbynFmL8HhTPqbjUzux3JHuW_Frg6YoV.ttf",weight:400,isVariable:!1},{displayName:"Fraunces",filename:"6NUV8FyLNQOQZAnv9awPnugMyM1A",category:"serif",url:"https://fonts.gstatic.com/s/fraunces/v38/6NUV8FyLNQOQZAnv9awPnugMyM1A.ttf",weight:400,isVariable:!0},{displayName:"Readex Pro",filename:"SLXNc1bJ7HE5YDoGPuzj59NebXZkiSo",category:"sans-serif",url:"https://fonts.gstatic.com/s/readexpro/v27/SLXNc1bJ7HE5YDoGPuzj59NebXZkiSo.ttf",weight:400,isVariable:!0},{displayName:"Shippori Mincho",filename:"VdGGAZweH5EbgHY6YExcZfDoj0BA2_-C7LoS7g",category:"serif",url:"https://fonts.gstatic.com/s/shipporimincho/v17/VdGGAZweH5EbgHY6YExcZfDoj0BA2_-C7LoS7g.ttf",weight:400,isVariable:!1},{displayName:"Hammersmith One",filename:"qWcyB624q4L_C4jGQ9IK0O_dFlnbshsks4MRXw",category:"sans-serif",url:"https://fonts.gstatic.com/s/hammersmithone/v18/qWcyB624q4L_C4jGQ9IK0O_dFlnbshsks4MRXw.ttf",weight:400,isVariable:!1},{displayName:"Tenor Sans",filename:"bx6ANxqUneKx06UkIXISr3JyC22IyqI",category:"sans-serif",url:"https://fonts.gstatic.com/s/tenorsans/v21/bx6ANxqUneKx06UkIXISr3JyC22IyqI.ttf",weight:400,isVariable:!1},{displayName:"Bungee",filename:"N0bU2SZBIuF2PU_ECn50Kd_PmA",category:"display",url:"https://fonts.gstatic.com/s/bungee/v17/N0bU2SZBIuF2PU_ECn50Kd_PmA.ttf",weight:400,isVariable:!1},{displayName:"Baskervville",filename:"YA9Ur0yU4l_XOrogbkun3kQgt5OohvbJ9A",category:"serif",url:"https://fonts.gstatic.com/s/baskervville/v20/YA9Ur0yU4l_XOrogbkun3kQgt5OohvbJ9A.ttf",weight:400,isVariable:!0},{displayName:"Kaushan Script",filename:"vm8vdRfvXFLG3OLnsO15WYS5DF7_ytN3M48a",category:"handwriting",url:"https://fonts.gstatic.com/s/kaushanscript/v19/vm8vdRfvXFLG3OLnsO15WYS5DF7_ytN3M48a.ttf",weight:400,isVariable:!1},{displayName:"Aleo",filename:"c4mv1nF8G8_s8ArD0D1ogoY",category:"serif",url:"https://fonts.gstatic.com/s/aleo/v16/c4mv1nF8G8_s8ArD0D1ogoY.ttf",weight:400,isVariable:!0},{displayName:"Old Standard TT",filename:"MwQubh3o1vLImiwAVvYawgcf2eVurVC5RHdCZg",category:"serif",url:"https://fonts.gstatic.com/s/oldstandardtt/v22/MwQubh3o1vLImiwAVvYawgcf2eVurVC5RHdCZg.ttf",weight:400,isVariable:!1},{displayName:"League Gothic",filename:"qFdC35CBi4tvBz81xy7WG7ep4h8ij1I7LLE",category:"sans-serif",url:"https://fonts.gstatic.com/s/leaguegothic/v13/qFdC35CBi4tvBz81xy7WG7ep4h8ij1I7LLE.ttf",weight:400,isVariable:!1},{displayName:"Andada Pro",filename:"HhyRU5Qi9-SuOEhPe4LtMI5gSbkI5_E",category:"serif",url:"https://fonts.gstatic.com/s/andadapro/v24/HhyRU5Qi9-SuOEhPe4LtMI5gSbkI5_E.ttf",weight:400,isVariable:!0},{displayName:"Gloria Hallelujah",filename:"LYjYdHv3kUk9BMV96EIswT9DIbW-MLSy3TKEvkCF",category:"handwriting",url:"https://fonts.gstatic.com/s/gloriahallelujah/v24/LYjYdHv3kUk9BMV96EIswT9DIbW-MLSy3TKEvkCF.ttf",weight:400,isVariable:!1},{displayName:"Cantarell",filename:"B50NF7ZDq37KMUvlO01Ji6hqHK-CLA",category:"sans-serif",url:"https://fonts.gstatic.com/s/cantarell/v18/B50NF7ZDq37KMUvlO01Ji6hqHK-CLA.ttf",weight:400,isVariable:!1},{displayName:"PT Sans Caption",filename:"0FlMVP6Hrxmt7-fsUFhlFXNIlpcqfQXwQy6yxg",category:"sans-serif",url:"https://fonts.gstatic.com/s/ptsanscaption/v20/0FlMVP6Hrxmt7-fsUFhlFXNIlpcqfQXwQy6yxg.ttf",weight:400,isVariable:!1},{displayName:"Sawarabi Gothic",filename:"x3d4ckfVaqqa-BEj-I9mE65u3k3NBSk3E2YljQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/sawarabigothic/v16/x3d4ckfVaqqa-BEj-I9mE65u3k3NBSk3E2YljQ.ttf",weight:400,isVariable:!1},{displayName:"Allura",filename:"9oRPNYsQpS4zjuAPjAIXPtrrGA",category:"handwriting",url:"https://fonts.gstatic.com/s/allura/v23/9oRPNYsQpS4zjuAPjAIXPtrrGA.ttf",weight:400,isVariable:!1},{displayName:"Fira Code",filename:"uU9NCBsR6Z2vfE9aq3bR2t6CilKOdQ",category:"monospace",url:"https://fonts.gstatic.com/s/firacode/v27/uU9NCBsR6Z2vfE9aq3bR2t6CilKOdQ.ttf",weight:400,isVariable:!0},{displayName:"Viga",filename:"xMQbuFFdSaiX_QIjD4e2OX8",category:"sans-serif",url:"https://fonts.gstatic.com/s/viga/v15/xMQbuFFdSaiX_QIjD4e2OX8.ttf",weight:400,isVariable:!1},{displayName:"Francois One",filename:"_Xmr-H4zszafZw3A-KPSZutNxgKQu_avAg",category:"sans-serif",url:"https://fonts.gstatic.com/s/francoisone/v22/_Xmr-H4zszafZw3A-KPSZutNxgKQu_avAg.ttf",weight:400,isVariable:!1},{displayName:"Press Start 2P",filename:"e3t4euO8T-267oIAQAu6jDQyK0nSgPJE4580",category:"display",url:"https://fonts.gstatic.com/s/pressstart2p/v16/e3t4euO8T-267oIAQAu6jDQyK0nSgPJE4580.ttf",weight:400,isVariable:!1},{displayName:"Paytone One",filename:"0nksC9P7MfYHj2oFtYm2CiTqivr9iBq_",category:"sans-serif",url:"https://fonts.gstatic.com/s/paytoneone/v25/0nksC9P7MfYHj2oFtYm2CiTqivr9iBq_.ttf",weight:400,isVariable:!1},{displayName:"Yantramanav",filename:"flU8Rqu5zY00QEpyWJYWN6f0V-dRCQ41",category:"sans-serif",url:"https://fonts.gstatic.com/s/yantramanav/v15/flU8Rqu5zY00QEpyWJYWN6f0V-dRCQ41.ttf",weight:400,isVariable:!1},{displayName:"Ubuntu Condensed",filename:"u-4k0rCzjgs5J7oXnJcM_0kACGMtf-fVqvHoJXw",category:"sans-serif",url:"https://fonts.gstatic.com/s/ubuntucondensed/v17/u-4k0rCzjgs5J7oXnJcM_0kACGMtf-fVqvHoJXw.ttf",weight:400,isVariable:!1},{displayName:"Syne",filename:"8vIH7w4qzmVxq2dB9Uz_DEc",category:"sans-serif",url:"https://fonts.gstatic.com/s/syne/v24/8vIH7w4qzmVxq2dB9Uz_DEc.ttf",weight:400,isVariable:!0},{displayName:"Josefin Slab",filename:"lW-5wjwOK3Ps5GSJlNNkMalXrQSuJsv4Pw",category:"serif",url:"https://fonts.gstatic.com/s/josefinslab/v29/lW-5wjwOK3Ps5GSJlNNkMalXrQSuJsv4Pw.ttf",weight:400,isVariable:!0},{displayName:"Sacramento",filename:"buEzpo6gcdjy0EiZMBUG0CoV_NxLeiw",category:"handwriting",url:"https://fonts.gstatic.com/s/sacramento/v17/buEzpo6gcdjy0EiZMBUG0CoV_NxLeiw.ttf",weight:400,isVariable:!1},{displayName:"Actor",filename:"wEOzEBbCkc5cO3ekXygtUMIO",category:"sans-serif",url:"https://fonts.gstatic.com/s/actor/v18/wEOzEBbCkc5cO3ekXygtUMIO.ttf",weight:400,isVariable:!1},{displayName:"Berkshire Swash",filename:"ptRRTi-cavZOGqCvnNJDl5m5XmNPrcQybX4pQA",category:"handwriting",url:"https://fonts.gstatic.com/s/berkshireswash/v22/ptRRTi-cavZOGqCvnNJDl5m5XmNPrcQybX4pQA.ttf",weight:400,isVariable:!1},{displayName:"Libre Barcode 39",filename:"-nFnOHM08vwC6h8Li1eQnP_AHzI2K_d709jy92k",category:"display",url:"https://fonts.gstatic.com/s/librebarcode39/v25/-nFnOHM08vwC6h8Li1eQnP_AHzI2K_d709jy92k.ttf",weight:400,isVariable:!1},{displayName:"Sen",filename:"6xKjdSxYI9_Hm_-MImrpLQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/sen/v12/6xKjdSxYI9_Hm_-MImrpLQ.ttf",weight:400,isVariable:!0},{displayName:"Baloo 2",filename:"wXKrE3kTposypRyd11_WAewrhXY",category:"display",url:"https://fonts.gstatic.com/s/baloo2/v23/wXKrE3kTposypRyd11_WAewrhXY.ttf",weight:400,isVariable:!0},{displayName:"Patrick Hand",filename:"LDI1apSQOAYtSuYWp8ZhfYeMWcjKm7sp8g",category:"handwriting",url:"https://fonts.gstatic.com/s/patrickhand/v25/LDI1apSQOAYtSuYWp8ZhfYeMWcjKm7sp8g.ttf",weight:400,isVariable:!1},{displayName:"BIZ UDPGothic",filename:"hES36X5pHAIBjmS84VL0Bue83nUMQWkMUAk",category:"sans-serif",url:"https://fonts.gstatic.com/s/bizudpgothic/v15/hES36X5pHAIBjmS84VL0Bue83nUMQWkMUAk.ttf",weight:400,isVariable:!1},{displayName:"Mitr",filename:"pxiLypw5ucZFyTsyMJj_b1o",category:"sans-serif",url:"https://fonts.gstatic.com/s/mitr/v13/pxiLypw5ucZFyTsyMJj_b1o.ttf",weight:400,isVariable:!1},{displayName:"Bangers",filename:"FeVQS0BTqb0h60ACL5la2bxii28",category:"display",url:"https://fonts.gstatic.com/s/bangers/v25/FeVQS0BTqb0h60ACL5la2bxii28.ttf",weight:400,isVariable:!1},{displayName:"Noto Naskh Arabic",filename:"RrQKbpV-9Dd1b1OAGA6M9PkyDuVBeO2BF1yELmgy",category:"serif",url:"https://fonts.gstatic.com/s/notonaskharabic/v43/RrQKbpV-9Dd1b1OAGA6M9PkyDuVBeO2BF1yELmgy.ttf",weight:400,isVariable:!0},{displayName:"Taviraj",filename:"ahcZv8Cj3ylylTXzfO4hU-FwnU0",category:"serif",url:"https://fonts.gstatic.com/s/taviraj/v15/ahcZv8Cj3ylylTXzfO4hU-FwnU0.ttf",weight:400,isVariable:!1},{displayName:"Didact Gothic",filename:"ahcfv8qz1zt6hCC5G4F_P4ASpUySp0LlcyQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/didactgothic/v21/ahcfv8qz1zt6hCC5G4F_P4ASpUySp0LlcyQ.ttf",weight:400,isVariable:!1},{displayName:"Commissioner",filename:"tDbL2o2WnlgI0FNDgduEk4jajCr4EwWfTA",category:"sans-serif",url:"https://fonts.gstatic.com/s/commissioner/v24/tDbL2o2WnlgI0FNDgduEk4jajCr4EwWfTA.ttf",weight:400,isVariable:!0},{displayName:"Rammetto One",filename:"LhWiMV3HOfMbMetJG3lQDpp9Mvuciu-_SQ",category:"display",url:"https://fonts.gstatic.com/s/rammettoone/v21/LhWiMV3HOfMbMetJG3lQDpp9Mvuciu-_SQ.ttf",weight:400,isVariable:!1},{displayName:"Gruppo",filename:"WwkfxPmzE06v_ZWFWXDAOIEQUQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/gruppo/v23/WwkfxPmzE06v_ZWFWXDAOIEQUQ.ttf",weight:400,isVariable:!1},{displayName:"Oxanium",filename:"RrQQboN_4yJ0JmiMS2XO0LBBd4Y",category:"display",url:"https://fonts.gstatic.com/s/oxanium/v21/RrQQboN_4yJ0JmiMS2XO0LBBd4Y.ttf",weight:400,isVariable:!0},{displayName:"Zeyada",filename:"11hAGpPTxVPUbgZDNGatWKaZ3g",category:"handwriting",url:"https://fonts.gstatic.com/s/zeyada/v22/11hAGpPTxVPUbgZDNGatWKaZ3g.ttf",weight:400,isVariable:!1},{displayName:"IBM Plex Sans Condensed",filename:"Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHbauwq_jhJsM",category:"sans-serif",url:"https://fonts.gstatic.com/s/ibmplexsanscondensed/v15/Gg8lN4UfRSqiPg7Jn2ZI12V4DCEwkj1E4LVeHbauwq_jhJsM.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Mono",filename:"BngRUXNETWXI6LwhGYvaxZikqYCByxyKeuDp",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmono/v37/BngRUXNETWXI6LwhGYvaxZikqYCByxyKeuDp.ttf",weight:400,isVariable:!0},{displayName:"Asap Condensed",filename:"pxidypY1o9NHyXh3WvSbGSggdNeLYk1Mq3ap",category:"sans-serif",url:"https://fonts.gstatic.com/s/asapcondensed/v18/pxidypY1o9NHyXh3WvSbGSggdNeLYk1Mq3ap.ttf",weight:400,isVariable:!1},{displayName:"Special Elite",filename:"XLYgIZbkc4JPUL5CVArUVL0nhncESXFtUsM",category:"display",url:"https://fonts.gstatic.com/s/specialelite/v20/XLYgIZbkc4JPUL5CVArUVL0nhncESXFtUsM.ttf",weight:400,isVariable:!1},{displayName:"Ropa Sans",filename:"EYqxmaNOzLlWtsZSScyKWjloU5KP2g",category:"sans-serif",url:"https://fonts.gstatic.com/s/ropasans/v16/EYqxmaNOzLlWtsZSScyKWjloU5KP2g.ttf",weight:400,isVariable:!1},{displayName:"Pridi",filename:"2sDQZG5JnZLfkfWao2krbl29",category:"serif",url:"https://fonts.gstatic.com/s/pridi/v15/2sDQZG5JnZLfkfWao2krbl29.ttf",weight:400,isVariable:!1},{displayName:"Amaranth",filename:"KtkuALODe433f0j1zPnCF9GqwnzW",category:"sans-serif",url:"https://fonts.gstatic.com/s/amaranth/v19/KtkuALODe433f0j1zPnCF9GqwnzW.ttf",weight:400,isVariable:!1},{displayName:"Rokkitt",filename:"qFdE35qfgYFjGy5hoEGId9bL2h4",category:"serif",url:"https://fonts.gstatic.com/s/rokkitt/v39/qFdE35qfgYFjGy5hoEGId9bL2h4.ttf",weight:400,isVariable:!0},{displayName:"Epilogue",filename:"O4ZRFGj5hxF0EhjimmIjuAkalnmd",category:"sans-serif",url:"https://fonts.gstatic.com/s/epilogue/v20/O4ZRFGj5hxF0EhjimmIjuAkalnmd.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Tamil",filename:"ieVm2YdFI3GCY6SyQy1KfStzYKZ6x_-fACIgaw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstamil/v31/ieVm2YdFI3GCY6SyQy1KfStzYKZ6x_-fACIgaw.ttf",weight:400,isVariable:!0},{displayName:"Fugaz One",filename:"rax_HiWKp9EAITukFslMBBJek0vA8A",category:"display",url:"https://fonts.gstatic.com/s/fugazone/v21/rax_HiWKp9EAITukFslMBBJek0vA8A.ttf",weight:400,isVariable:!1},{displayName:"Alexandria",filename:"UMBXrPdDqW66y0Y2usFeWirXArM58BY",category:"sans-serif",url:"https://fonts.gstatic.com/s/alexandria/v6/UMBXrPdDqW66y0Y2usFeWirXArM58BY.ttf",weight:400,isVariable:!0},{displayName:"Libre Bodoni",filename:"_Xmr-H45qDWDYULr5OfyZudNxgKQu_avAg",category:"serif",url:"https://fonts.gstatic.com/s/librebodoni/v9/_Xmr-H45qDWDYULr5OfyZudNxgKQu_avAg.ttf",weight:400,isVariable:!0},{displayName:"Tangerine",filename:"IurY6Y5j_oScZZow4VOBDpxNhLBQ4Q",category:"handwriting",url:"https://fonts.gstatic.com/s/tangerine/v18/IurY6Y5j_oScZZow4VOBDpxNhLBQ4Q.ttf",weight:400,isVariable:!1},{displayName:"Vazirmatn",filename:"Dxxo8j6PP2D_kU2muijVGs-XAmn4eg",category:"sans-serif",url:"https://fonts.gstatic.com/s/vazirmatn/v16/Dxxo8j6PP2D_kU2muijVGs-XAmn4eg.ttf",weight:400,isVariable:!0},{displayName:"Zen Old Mincho",filename:"tss0ApVaYytLwxTqcxfMyBveyYb3g31S2s8p",category:"serif",url:"https://fonts.gstatic.com/s/zenoldmincho/v13/tss0ApVaYytLwxTqcxfMyBveyYb3g31S2s8p.ttf",weight:400,isVariable:!1},{displayName:"Quattrocento Sans",filename:"va9c4lja2NVIDdIAAoMR5MfuElaRB3zOvU7eHGHJ",category:"sans-serif",url:"https://fonts.gstatic.com/s/quattrocentosans/v22/va9c4lja2NVIDdIAAoMR5MfuElaRB3zOvU7eHGHJ.ttf",weight:400,isVariable:!1},{displayName:"Concert One",filename:"VEM1Ro9xs5PjtzCu-srDqRTlhv-CuVAQ",category:"display",url:"https://fonts.gstatic.com/s/concertone/v24/VEM1Ro9xs5PjtzCu-srDqRTlhv-CuVAQ.ttf",weight:400,isVariable:!1},{displayName:"Playfair",filename:"0nkrC9D7PO4KhmUJ5-bYRQDioeb0",category:"serif",url:"https://fonts.gstatic.com/s/playfair/v10/0nkrC9D7PO4KhmUJ5-bYRQDioeb0.ttf",weight:400,isVariable:!0},{displayName:"Neuton",filename:"UMBTrPtMoH62xUZyyII7civlBw",category:"serif",url:"https://fonts.gstatic.com/s/neuton/v24/UMBTrPtMoH62xUZyyII7civlBw.ttf",weight:400,isVariable:!1},{displayName:"Sorts Mill Goudy",filename:"Qw3GZR9MED_6PSuS_50nEaVrfzgEXH0OjpM75PE",category:"serif",url:"https://fonts.gstatic.com/s/sortsmillgoudy/v16/Qw3GZR9MED_6PSuS_50nEaVrfzgEXH0OjpM75PE.ttf",weight:400,isVariable:!1},{displayName:"Khand",filename:"TwMA-IINQlQQ0YpVWHU_TBqO",category:"sans-serif",url:"https://fonts.gstatic.com/s/khand/v22/TwMA-IINQlQQ0YpVWHU_TBqO.ttf",weight:400,isVariable:!1},{displayName:"Architects Daughter",filename:"KtkxAKiDZI_td1Lkx62xHZHDtgO_Y-bvfY5q4szgE-Q",category:"handwriting",url:"https://fonts.gstatic.com/s/architectsdaughter/v20/KtkxAKiDZI_td1Lkx62xHZHDtgO_Y-bvfY5q4szgE-Q.ttf",weight:400,isVariable:!1},{displayName:"Parisienne",filename:"E21i_d3kivvAkxhLEVZpcy96DuKuavM",category:"handwriting",url:"https://fonts.gstatic.com/s/parisienne/v14/E21i_d3kivvAkxhLEVZpcy96DuKuavM.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Bengali",filename:"Cn-sJsCGWQxOjaGwMQ6fIiMywrNJIlaxvBuclp_T",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansbengali/v32/Cn-sJsCGWQxOjaGwMQ6fIiMywrNJIlaxvBuclp_T.ttf",weight:400,isVariable:!0},{displayName:"El Messiri",filename:"K2F0fZBRmr9vQ1pHEey6AoqKAyLzfWo",category:"sans-serif",url:"https://fonts.gstatic.com/s/elmessiri/v25/K2F0fZBRmr9vQ1pHEey6AoqKAyLzfWo.ttf",weight:400,isVariable:!0},{displayName:"Golos Text",filename:"q5uCsoe9Lv5t7Meb31EcIxR2hYxREMs",category:"sans-serif",url:"https://fonts.gstatic.com/s/golostext/v7/q5uCsoe9Lv5t7Meb31EcIxR2hYxREMs.ttf",weight:400,isVariable:!0},{displayName:"Playfair Display SC",filename:"ke85OhoaMkR6-hSn7kbHVoFf7ZfgMPr_pb4GEcM2M4s",category:"serif",url:"https://fonts.gstatic.com/s/playfairdisplaysc/v18/ke85OhoaMkR6-hSn7kbHVoFf7ZfgMPr_pb4GEcM2M4s.ttf",weight:400,isVariable:!1},{displayName:"Lusitana",filename:"CSR84z9ShvucWzsMKxhaRuMiSct_",category:"serif",url:"https://fonts.gstatic.com/s/lusitana/v14/CSR84z9ShvucWzsMKxhaRuMiSct_.ttf",weight:400,isVariable:!1},{displayName:"Forum",filename:"6aey4Ky-Vb8Ew_IWMJMa3mnT",category:"display",url:"https://fonts.gstatic.com/s/forum/v19/6aey4Ky-Vb8Ew_IWMJMa3mnT.ttf",weight:400,isVariable:!1},{displayName:"PT Mono",filename:"9oRONYoBnWILk-9ArCg5MtPyAcg",category:"monospace",url:"https://fonts.gstatic.com/s/ptmono/v14/9oRONYoBnWILk-9ArCg5MtPyAcg.ttf",weight:400,isVariable:!1},{displayName:"Krub",filename:"sZlLdRyC6CRYXkYQDLlTW6E",category:"sans-serif",url:"https://fonts.gstatic.com/s/krub/v11/sZlLdRyC6CRYXkYQDLlTW6E.ttf",weight:400,isVariable:!1},{displayName:"Antonio",filename:"gNMEW3NwSYq_9WD3-HMoFIez5MI",category:"sans-serif",url:"https://fonts.gstatic.com/s/antonio/v22/gNMEW3NwSYq_9WD3-HMoFIez5MI.ttf",weight:400,isVariable:!0},{displayName:"Rock Salt",filename:"MwQ0bhv11fWD6QsAVOZbsEk7hbBWrA",category:"handwriting",url:"https://fonts.gstatic.com/s/rocksalt/v24/MwQ0bhv11fWD6QsAVOZbsEk7hbBWrA.ttf",weight:400,isVariable:!1},{displayName:"Bai Jamjuree",filename:"LDI1apSCOBt_aeQQ7ftydoaMWcjKm7sp8g",category:"sans-serif",url:"https://fonts.gstatic.com/s/baijamjuree/v13/LDI1apSCOBt_aeQQ7ftydoaMWcjKm7sp8g.ttf",weight:400,isVariable:!1},{displayName:"Kosugi Maru",filename:"0nksC9PgP_wGh21A2KeqGiTqivr9iBq_",category:"sans-serif",url:"https://fonts.gstatic.com/s/kosugimaru/v17/0nksC9PgP_wGh21A2KeqGiTqivr9iBq_.ttf",weight:400,isVariable:!1},{displayName:"Black Han Sans",filename:"ea8Aad44WunzF9a-dL6toA8r8nqVIXSkH-Hc",category:"sans-serif",url:"https://fonts.gstatic.com/s/blackhansans/v24/ea8Aad44WunzF9a-dL6toA8r8nqVIXSkH-Hc.ttf",weight:400,isVariable:!1},{displayName:"Poiret One",filename:"UqyVK80NJXN4zfRgbdfbk5lWVscxdKE",category:"display",url:"https://fonts.gstatic.com/s/poiretone/v18/UqyVK80NJXN4zfRgbdfbk5lWVscxdKE.ttf",weight:400,isVariable:!1},{displayName:"Gilda Display",filename:"t5tmIRoYMoaYG0WEOh7HwMeR7TnFrpOHYh4",category:"serif",url:"https://fonts.gstatic.com/s/gildadisplay/v20/t5tmIRoYMoaYG0WEOh7HwMeR7TnFrpOHYh4.ttf",weight:400,isVariable:!1},{displayName:"Homemade Apple",filename:"Qw3EZQFXECDrI2q789EKQZJob3x9Vnksi4M7",category:"handwriting",url:"https://fonts.gstatic.com/s/homemadeapple/v24/Qw3EZQFXECDrI2q789EKQZJob3x9Vnksi4M7.ttf",weight:400,isVariable:!1},{displayName:"Cookie",filename:"syky-y18lb0tSbfNlQCT9tPdpw",category:"handwriting",url:"https://fonts.gstatic.com/s/cookie/v23/syky-y18lb0tSbfNlQCT9tPdpw.ttf",weight:400,isVariable:!1},{displayName:"Calistoga",filename:"6NUU8F2OJg6MeR7l4e0vtMYAwdRZfw",category:"display",url:"https://fonts.gstatic.com/s/calistoga/v18/6NUU8F2OJg6MeR7l4e0vtMYAwdRZfw.ttf",weight:400,isVariable:!1},{displayName:"Jura",filename:"z7NbdRfiaC4VbcNDUCRDzJ0",category:"sans-serif",url:"https://fonts.gstatic.com/s/jura/v34/z7NbdRfiaC4VbcNDUCRDzJ0.ttf",weight:400,isVariable:!0},{displayName:"Handlee",filename:"-F6xfjBsISg9aMakDmr6oilJ3ik",category:"handwriting",url:"https://fonts.gstatic.com/s/handlee/v20/-F6xfjBsISg9aMakDmr6oilJ3ik.ttf",weight:400,isVariable:!1},{displayName:"Pathway Gothic One",filename:"MwQrbgD32-KAvjkYGNUUxAtW7pEBwx-dTFxeb80flQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/pathwaygothicone/v16/MwQrbgD32-KAvjkYGNUUxAtW7pEBwx-dTFxeb80flQ.ttf",weight:400,isVariable:!1},{displayName:"Chango",filename:"2V0cKI0OB5U7WaJyz324TFUaAw",category:"display",url:"https://fonts.gstatic.com/s/chango/v29/2V0cKI0OB5U7WaJyz324TFUaAw.ttf",weight:400,isVariable:!1},{displayName:"Italianno",filename:"dg4n_p3sv6gCJkwzT6Rnj5YpQwM-gg",category:"handwriting",url:"https://fonts.gstatic.com/s/italianno/v18/dg4n_p3sv6gCJkwzT6Rnj5YpQwM-gg.ttf",weight:400,isVariable:!1},{displayName:"Lexend Giga",filename:"PlI5Fl67Mah5Y8yMHE7lkVxEt8CwfGaD",category:"sans-serif",url:"https://fonts.gstatic.com/s/lexendgiga/v27/PlI5Fl67Mah5Y8yMHE7lkVxEt8CwfGaD.ttf",weight:400,isVariable:!0},{displayName:"Staatliches",filename:"HI_OiY8KO6hCsQSoAPmtMbectJG9O9PS",category:"display",url:"https://fonts.gstatic.com/s/staatliches/v15/HI_OiY8KO6hCsQSoAPmtMbectJG9O9PS.ttf",weight:400,isVariable:!1},{displayName:"Volkhov",filename:"SlGQmQieoJcKemNeQTIOhHxzcD0",category:"serif",url:"https://fonts.gstatic.com/s/volkhov/v18/SlGQmQieoJcKemNeQTIOhHxzcD0.ttf",weight:400,isVariable:!1},{displayName:"Eczar",filename:"BXRlvF3Pi-DLmw0iBu9y8Hf0",category:"serif",url:"https://fonts.gstatic.com/s/eczar/v27/BXRlvF3Pi-DLmw0iBu9y8Hf0.ttf",weight:400,isVariable:!0},{displayName:"Eater",filename:"mtG04_FCK7bOvpu2u3FwsXsR",category:"display",url:"https://fonts.gstatic.com/s/eater/v27/mtG04_FCK7bOvpu2u3FwsXsR.ttf",weight:400,isVariable:!1},{displayName:"Dela Gothic One",filename:"hESp6XxvMDRA-2eD0lXpDa6QkBAGRUsJQAlbUA",category:"display",url:"https://fonts.gstatic.com/s/delagothicone/v19/hESp6XxvMDRA-2eD0lXpDa6QkBAGRUsJQAlbUA.ttf",weight:400,isVariable:!1},{displayName:"Anuphan",filename:"2sDeZGxYgY7LkLT0qW0Ja029G7w",category:"sans-serif",url:"https://fonts.gstatic.com/s/anuphan/v6/2sDeZGxYgY7LkLT0qW0Ja029G7w.ttf",weight:400,isVariable:!0},{displayName:"Reenie Beanie",filename:"z7NSdR76eDkaJKZJFkkjuvWxbP2_qoOgf_w",category:"handwriting",url:"https://fonts.gstatic.com/s/reeniebeanie/v22/z7NSdR76eDkaJKZJFkkjuvWxbP2_qoOgf_w.ttf",weight:400,isVariable:!1},{displayName:"Radio Canada",filename:"XRXT3ISXn0dBMcibU6jlAqrtcRADBHJ6ZA",category:"sans-serif",url:"https://fonts.gstatic.com/s/radiocanada/v26/XRXT3ISXn0dBMcibU6jlAqrtcRADBHJ6ZA.ttf",weight:400,isVariable:!0},{displayName:"VT323",filename:"pxiKyp0ihIEF2hsYHpT2dkNE",category:"monospace",url:"https://fonts.gstatic.com/s/vt323/v18/pxiKyp0ihIEF2hsYHpT2dkNE.ttf",weight:400,isVariable:!1},{displayName:"Gelasio",filename:"cIf9MaFfvUQxTTqSxCmrYGkHgIs",category:"serif",url:"https://fonts.gstatic.com/s/gelasio/v14/cIf9MaFfvUQxTTqSxCmrYGkHgIs.ttf",weight:400,isVariable:!0},{displayName:"Monoton",filename:"5h1aiZUrOngCibe4fkbBQ2S7FU8",category:"display",url:"https://fonts.gstatic.com/s/monoton/v22/5h1aiZUrOngCibe4fkbBQ2S7FU8.ttf",weight:400,isVariable:!1},{displayName:"Quantico",filename:"rax-HiSdp9cPL3KIF4xsLjxSmlLZ",category:"sans-serif",url:"https://fonts.gstatic.com/s/quantico/v19/rax-HiSdp9cPL3KIF4xsLjxSmlLZ.ttf",weight:400,isVariable:!1},{displayName:"Audiowide",filename:"l7gdbjpo0cum0ckerWCtkQXPExpQBw",category:"display",url:"https://fonts.gstatic.com/s/audiowide/v22/l7gdbjpo0cum0ckerWCtkQXPExpQBw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans HK",filename:"nKKQ-GM_FYFRJvXzVXaAPe9hNHB3Eu7mOQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanshk/v34/nKKQ-GM_FYFRJvXzVXaAPe9hNHB3Eu7mOQ.ttf",weight:400,isVariable:!0},{displayName:"Arsenal",filename:"wXKrE3kQtZQ4pF3D11_WAewrhXY",category:"sans-serif",url:"https://fonts.gstatic.com/s/arsenal/v13/wXKrE3kQtZQ4pF3D11_WAewrhXY.ttf",weight:400,isVariable:!1},{displayName:"Alex Brush",filename:"SZc83FzrJKuqFbwMKk6EtUL57DtOmCc",category:"handwriting",url:"https://fonts.gstatic.com/s/alexbrush/v23/SZc83FzrJKuqFbwMKk6EtUL57DtOmCc.ttf",weight:400,isVariable:!1},{displayName:"M PLUS 1",filename:"R70ZjygA28ymD4HgBVu4si6cViv4",category:"sans-serif",url:"https://fonts.gstatic.com/s/mplus1/v15/R70ZjygA28ymD4HgBVu4si6cViv4.ttf",weight:400,isVariable:!0},{displayName:"Cuprum",filename:"dg4k_pLmvrkcOkB9IeFDh701Sg",category:"sans-serif",url:"https://fonts.gstatic.com/s/cuprum/v29/dg4k_pLmvrkcOkB9IeFDh701Sg.ttf",weight:400,isVariable:!0},{displayName:"Merienda",filename:"gNMHW3x8Qoy5_mf8uVMCOou6_dvg",category:"handwriting",url:"https://fonts.gstatic.com/s/merienda/v22/gNMHW3x8Qoy5_mf8uVMCOou6_dvg.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Devanagari",filename:"TuGOUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv2lRdRhtCC4d",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansdevanagari/v30/TuGOUUFzXI5FBtUq5a8bjKYTZjtRU6Sgv2lRdRhtCC4d.ttf",weight:400,isVariable:!0},{displayName:"Lustria",filename:"9oRONYodvDEyjuhOrCg5MtPyAcg",category:"serif",url:"https://fonts.gstatic.com/s/lustria/v14/9oRONYodvDEyjuhOrCg5MtPyAcg.ttf",weight:400,isVariable:!1},{displayName:"Amita",filename:"HhyaU5si9Om7PQlvAfSKEZZL",category:"handwriting",url:"https://fonts.gstatic.com/s/amita/v20/HhyaU5si9Om7PQlvAfSKEZZL.ttf",weight:400,isVariable:!1},{displayName:"Yeseva One",filename:"OpNJno4ck8vc-xYpwWWxpipfWhXD00c",category:"display",url:"https://fonts.gstatic.com/s/yesevaone/v24/OpNJno4ck8vc-xYpwWWxpipfWhXD00c.ttf",weight:400,isVariable:!1},{displayName:"Petrona",filename:"mtG64_NXL7bZo9XXsXVStGsRwCU",category:"serif",url:"https://fonts.gstatic.com/s/petrona/v36/mtG64_NXL7bZo9XXsXVStGsRwCU.ttf",weight:400,isVariable:!0},{displayName:"Saira Extra Condensed",filename:"-nFiOHYr-vcC7h8MklGBkrvmUG9rbpkisrTT70L11Ct8sw",category:"sans-serif",url:"https://fonts.gstatic.com/s/sairaextracondensed/v15/-nFiOHYr-vcC7h8MklGBkrvmUG9rbpkisrTT70L11Ct8sw.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Bengali",filename:"hYkUPvggTvnzO14VSXltirUdnnkt1pw8UZiHeH5yig",category:"serif",url:"https://fonts.gstatic.com/s/notoserifbengali/v31/hYkUPvggTvnzO14VSXltirUdnnkt1pw8UZiHeH5yig.ttf",weight:400,isVariable:!0},{displayName:"Ultra",filename:"zOLy4prXmrtY-tT6yLOD6NxF",category:"serif",url:"https://fonts.gstatic.com/s/ultra/v25/zOLy4prXmrtY-tT6yLOD6NxF.ttf",weight:400,isVariable:!1},{displayName:"Ubuntu Mono",filename:"KFOjCneDtsqEr0keqCMhbBc9AMX6lJBP",category:"monospace",url:"https://fonts.gstatic.com/s/ubuntumono/v19/KFOjCneDtsqEr0keqCMhbBc9AMX6lJBP.ttf",weight:400,isVariable:!1},{displayName:"Geist Mono",filename:"or3nQ6H-1_WfwkMZI_qYJrAXmzPnnks",category:"monospace",url:"https://fonts.gstatic.com/s/geistmono/v4/or3nQ6H-1_WfwkMZI_qYJrAXmzPnnks.ttf",weight:400,isVariable:!0},{displayName:"Faustina",filename:"XLYlIZPxYpJfTbZAFW-4F81Kp28v",category:"serif",url:"https://fonts.gstatic.com/s/faustina/v23/XLYlIZPxYpJfTbZAFW-4F81Kp28v.ttf",weight:400,isVariable:!0},{displayName:"Mukta Malar",filename:"MCoXzAXyz8LOE2FpJMxZqLv4LfQJwHbn",category:"sans-serif",url:"https://fonts.gstatic.com/s/muktamalar/v14/MCoXzAXyz8LOE2FpJMxZqLv4LfQJwHbn.ttf",weight:400,isVariable:!1},{displayName:"Nanum Pen Script",filename:"daaDSSYiLGqEal3MvdA_FOL_3FkN2z7-aMFCcTU",category:"handwriting",url:"https://fonts.gstatic.com/s/nanumpenscript/v25/daaDSSYiLGqEal3MvdA_FOL_3FkN2z7-aMFCcTU.ttf",weight:400,isVariable:!1},{displayName:"Playball",filename:"TK3gWksYAxQ7jbsKcj8Dl-tPKo2t",category:"display",url:"https://fonts.gstatic.com/s/playball/v22/TK3gWksYAxQ7jbsKcj8Dl-tPKo2t.ttf",weight:400,isVariable:!1},{displayName:"Goldman",filename:"pe0uMIWbN4JFplR2LDJ4Bt-7G98",category:"display",url:"https://fonts.gstatic.com/s/goldman/v21/pe0uMIWbN4JFplR2LDJ4Bt-7G98.ttf",weight:400,isVariable:!1},{displayName:"Itim",filename:"0nknC9ziJOYewARKkc7ZdwU",category:"handwriting",url:"https://fonts.gstatic.com/s/itim/v16/0nknC9ziJOYewARKkc7ZdwU.ttf",weight:400,isVariable:!1},{displayName:"Alice",filename:"OpNCnoEEmtHa6FcJpA_chzJ0",category:"serif",url:"https://fonts.gstatic.com/s/alice/v21/OpNCnoEEmtHa6FcJpA_chzJ0.ttf",weight:400,isVariable:!1},{displayName:"Pontano Sans",filename:"qFdD35GdgYR8EzR6oBLDHa3qwjUMg1siNQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/pontanosans/v19/qFdD35GdgYR8EzR6oBLDHa3qwjUMg1siNQ.ttf",weight:400,isVariable:!0},{displayName:"Whisper",filename:"q5uHsoqtKftx74K9milCBxxdmYU",category:"handwriting",url:"https://fonts.gstatic.com/s/whisper/v7/q5uHsoqtKftx74K9milCBxxdmYU.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Hebrew",filename:"or35Q7v33eiDljA1IufXTtVf7V6Rpko_aen0c78",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanshebrew/v50/or35Q7v33eiDljA1IufXTtVf7V6Rpko_aen0c78.ttf",weight:400,isVariable:!0},{displayName:"Abhaya Libre",filename:"e3tmeuGtX-Co5MNzeAOqinEge0PWovdU4w",category:"serif",url:"https://fonts.gstatic.com/s/abhayalibre/v18/e3tmeuGtX-Co5MNzeAOqinEge0PWovdU4w.ttf",weight:400,isVariable:!1},{displayName:"Sofia Sans Condensed",filename:"r05EGKVS5aVKd567NYXawnFKJaTtoAuLnLcPrNDVemxE",category:"sans-serif",url:"https://fonts.gstatic.com/s/sofiasanscondensed/v6/r05EGKVS5aVKd567NYXawnFKJaTtoAuLnLcPrNDVemxE.ttf",weight:400,isVariable:!0},{displayName:"Pinyon Script",filename:"6xKpdSJbL9-e9LuoeQiDRQR8aOLQO4bhiDY",category:"handwriting",url:"https://fonts.gstatic.com/s/pinyonscript/v24/6xKpdSJbL9-e9LuoeQiDRQR8aOLQO4bhiDY.ttf",weight:400,isVariable:!1},{displayName:"Istok Web",filename:"3qTvojGmgSyUukBzKslZAWF-9kIIaQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/istokweb/v26/3qTvojGmgSyUukBzKslZAWF-9kIIaQ.ttf",weight:400,isVariable:!1},{displayName:"Hind Vadodara",filename:"neINzCKvrIcn5pbuuuriV9tTcJXfrXsfvSo",category:"sans-serif",url:"https://fonts.gstatic.com/s/hindvadodara/v16/neINzCKvrIcn5pbuuuriV9tTcJXfrXsfvSo.ttf",weight:400,isVariable:!1},{displayName:"Mr Dafoe",filename:"lJwE-pIzkS5NXuMMrGiqg7MCxz_C",category:"handwriting",url:"https://fonts.gstatic.com/s/mrdafoe/v15/lJwE-pIzkS5NXuMMrGiqg7MCxz_C.ttf",weight:400,isVariable:!1},{displayName:"Caveat Brush",filename:"EYq0maZfwr9S9-ETZc3fKXtMW7mT03pdQw",category:"handwriting",url:"https://fonts.gstatic.com/s/caveatbrush/v12/EYq0maZfwr9S9-ETZc3fKXtMW7mT03pdQw.ttf",weight:400,isVariable:!1},{displayName:"Hind Guntur",filename:"wXKvE3UZrok56nvamSuJd8Qqt3M7tMDT",category:"sans-serif",url:"https://fonts.gstatic.com/s/hindguntur/v14/wXKvE3UZrok56nvamSuJd8Qqt3M7tMDT.ttf",weight:400,isVariable:!1},{displayName:"Saira Semi Condensed",filename:"U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRU8LYuceqGT-",category:"sans-serif",url:"https://fonts.gstatic.com/s/sairasemicondensed/v15/U9MD6c-2-nnJkHxyCjRcnMHcWVWV1cWRRU8LYuceqGT-.ttf",weight:400,isVariable:!1},{displayName:"Pangolin",filename:"cY9GfjGcW0FPpi-tWPfK5d3aiLBG",category:"handwriting",url:"https://fonts.gstatic.com/s/pangolin/v12/cY9GfjGcW0FPpi-tWPfK5d3aiLBG.ttf",weight:400,isVariable:!1},{displayName:"Pragati Narrow",filename:"vm8vdRf0T0bS1ffgsPB7WZ-mD17_ytN3M48a",category:"sans-serif",url:"https://fonts.gstatic.com/s/pragatinarrow/v15/vm8vdRf0T0bS1ffgsPB7WZ-mD17_ytN3M48a.ttf",weight:400,isVariable:!1},{displayName:"Mada",filename:"7Auwp_0qnzeSTTXMLCrX0kU",category:"sans-serif",url:"https://fonts.gstatic.com/s/mada/v21/7Auwp_0qnzeSTTXMLCrX0kU.ttf",weight:400,isVariable:!0},{displayName:"Vidaloka",filename:"7cHrv4c3ipenMKlEass8yn4hnCci",category:"serif",url:"https://fonts.gstatic.com/s/vidaloka/v19/7cHrv4c3ipenMKlEass8yn4hnCci.ttf",weight:400,isVariable:!1},{displayName:"Anonymous Pro",filename:"rP2Bp2a15UIB7Un-bOeISG3pLlw89CH98Ko",category:"monospace",url:"https://fonts.gstatic.com/s/anonymouspro/v22/rP2Bp2a15UIB7Un-bOeISG3pLlw89CH98Ko.ttf",weight:400,isVariable:!1},{displayName:"Unica One",filename:"DPEuYwWHyAYGVTSmalshdtffuEY7FA",category:"display",url:"https://fonts.gstatic.com/s/unicaone/v20/DPEuYwWHyAYGVTSmalshdtffuEY7FA.ttf",weight:400,isVariable:!1},{displayName:"Yrsa",filename:"wlp-gwnQFlxs5QvV-IwQwWc",category:"serif",url:"https://fonts.gstatic.com/s/yrsa/v25/wlp-gwnQFlxs5QvV-IwQwWc.ttf",weight:400,isVariable:!0},{displayName:"Nothing You Could Do",filename:"oY1B8fbBpaP5OX3DtrRYf_Q2BPB1SnfZb0OJl1ol2Ymo",category:"handwriting",url:"https://fonts.gstatic.com/s/nothingyoucoulddo/v21/oY1B8fbBpaP5OX3DtrRYf_Q2BPB1SnfZb0OJl1ol2Ymo.ttf",weight:400,isVariable:!1},{displayName:"Funnel Sans",filename:"OpNIno8Dg9bX6Bsp3Wq69Qp1dBnKyl7c",category:"sans-serif",url:"https://fonts.gstatic.com/s/funnelsans/v3/OpNIno8Dg9bX6Bsp3Wq69Qp1dBnKyl7c.ttf",weight:400,isVariable:!0},{displayName:"Share Tech Mono",filename:"J7aHnp1uDWRBEqV98dVQztYldFc7pAsEIc3Xew",category:"monospace",url:"https://fonts.gstatic.com/s/sharetechmono/v16/J7aHnp1uDWRBEqV98dVQztYldFc7pAsEIc3Xew.ttf",weight:400,isVariable:!1},{displayName:"Parkinsans",filename:"-W_7XJXvQyPb1QfpBpRrTkMBf50kbiM",category:"sans-serif",url:"https://fonts.gstatic.com/s/parkinsans/v3/-W_7XJXvQyPb1QfpBpRrTkMBf50kbiM.ttf",weight:400,isVariable:!0},{displayName:"Monda",filename:"TK3tWkYFABsmjvpmNBsLvPdG",category:"sans-serif",url:"https://fonts.gstatic.com/s/monda/v19/TK3tWkYFABsmjvpmNBsLvPdG.ttf",weight:400,isVariable:!0},{displayName:"Fira Sans Extra Condensed",filename:"NaPKcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda5fiku3efvE8",category:"sans-serif",url:"https://fonts.gstatic.com/s/firasansextracondensed/v11/NaPKcYDaAO5dirw6IaFn7lPJFqXmS-M9Atn3wgda5fiku3efvE8.ttf",weight:400,isVariable:!1},{displayName:"Tomorrow",filename:"WBLmrETNbFtZCeGqgSXVcWHALdio",category:"sans-serif",url:"https://fonts.gstatic.com/s/tomorrow/v19/WBLmrETNbFtZCeGqgSXVcWHALdio.ttf",weight:400,isVariable:!1},{displayName:"Sriracha",filename:"0nkrC9D4IuYBgWcI9ObYRQDioeb0",category:"handwriting",url:"https://fonts.gstatic.com/s/sriracha/v16/0nkrC9D4IuYBgWcI9ObYRQDioeb0.ttf",weight:400,isVariable:!1},{displayName:"Bad Script",filename:"6NUT8F6PJgbFWQn47_x7lOwuzd1AZtw",category:"handwriting",url:"https://fonts.gstatic.com/s/badscript/v18/6NUT8F6PJgbFWQn47_x7lOwuzd1AZtw.ttf",weight:400,isVariable:!1},{displayName:"Cormorant Infant",filename:"HhyPU44g9vKiM1sORYSiWeAsLN993_Af2DsAXq4",category:"serif",url:"https://fonts.gstatic.com/s/cormorantinfant/v22/HhyPU44g9vKiM1sORYSiWeAsLN993_Af2DsAXq4.ttf",weight:400,isVariable:!0},{displayName:"Blinker",filename:"cIf9MaFatEE-VTaPxCmrYGkHgIs",category:"sans-serif",url:"https://fonts.gstatic.com/s/blinker/v14/cIf9MaFatEE-VTaPxCmrYGkHgIs.ttf",weight:400,isVariable:!1},{displayName:"Gabarito",filename:"QGYtz_0dZAGKJJ4t3EtvUYTknuBJ",category:"display",url:"https://fonts.gstatic.com/s/gabarito/v9/QGYtz_0dZAGKJJ4t3EtvUYTknuBJ.ttf",weight:400,isVariable:!0},{displayName:"Cousine",filename:"d6lIkaiiRdih4SpPzSMlzTbtz9k",category:"monospace",url:"https://fonts.gstatic.com/s/cousine/v29/d6lIkaiiRdih4SpPzSMlzTbtz9k.ttf",weight:400,isVariable:!1},{displayName:"Syncopate",filename:"pe0sMIuPIYBCpEV5eFdyAv2-C99ycg",category:"sans-serif",url:"https://fonts.gstatic.com/s/syncopate/v24/pe0sMIuPIYBCpEV5eFdyAv2-C99ycg.ttf",weight:400,isVariable:!1},{displayName:"Carter One",filename:"q5uCsoe5IOB2-pXv9UcNIxR2hYxREMs",category:"display",url:"https://fonts.gstatic.com/s/carterone/v18/q5uCsoe5IOB2-pXv9UcNIxR2hYxREMs.ttf",weight:400,isVariable:!1},{displayName:"Varela",filename:"DPEtYwqExx0AWHXJBBQFfvzDsQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/varela/v17/DPEtYwqExx0AWHXJBBQFfvzDsQ.ttf",weight:400,isVariable:!1},{displayName:"Six Caps",filename:"6ae_4KGrU7VR7bNmabcS9XXaPCop",category:"sans-serif",url:"https://fonts.gstatic.com/s/sixcaps/v23/6ae_4KGrU7VR7bNmabcS9XXaPCop.ttf",weight:400,isVariable:!1},{displayName:"Cinzel Decorative",filename:"daaCSScvJGqLYhG8nNt8KPPswUAPnh7URs1LaCyC",category:"display",url:"https://fonts.gstatic.com/s/cinzeldecorative/v19/daaCSScvJGqLYhG8nNt8KPPswUAPnh7URs1LaCyC.ttf",weight:400,isVariable:!1},{displayName:"Sofia",filename:"8QIHdirahM3j_vu-sowsrqjk",category:"handwriting",url:"https://fonts.gstatic.com/s/sofia/v15/8QIHdirahM3j_vu-sowsrqjk.ttf",weight:400,isVariable:!1},{displayName:"GFS Didot",filename:"Jqzh5TybZ9vZMWFssvwiF-fGFSCGAA",category:"serif",url:"https://fonts.gstatic.com/s/gfsdidot/v18/Jqzh5TybZ9vZMWFssvwiF-fGFSCGAA.ttf",weight:400,isVariable:!1},{displayName:"Belleza",filename:"0nkoC9_pNeMfhX4BtcbyawzruP8",category:"sans-serif",url:"https://fonts.gstatic.com/s/belleza/v18/0nkoC9_pNeMfhX4BtcbyawzruP8.ttf",weight:400,isVariable:!1},{displayName:"Kaisei Decol",filename:"bMrwmSqP45sidWf3QmfFW6iyW1EP22OjoA",category:"serif",url:"https://fonts.gstatic.com/s/kaiseidecol/v11/bMrwmSqP45sidWf3QmfFW6iyW1EP22OjoA.ttf",weight:400,isVariable:!1},{displayName:"Damion",filename:"hv-XlzJ3KEUe_YZUbWY3MTFgVg",category:"handwriting",url:"https://fonts.gstatic.com/s/damion/v15/hv-XlzJ3KEUe_YZUbWY3MTFgVg.ttf",weight:400,isVariable:!1},{displayName:"Ruda",filename:"k3kfo8YQJOpFmn8XadbJM0A",category:"sans-serif",url:"https://fonts.gstatic.com/s/ruda/v30/k3kfo8YQJOpFmn8XadbJM0A.ttf",weight:400,isVariable:!0},{displayName:"Caprasimo",filename:"esDT31JQOPuXIUGBp72klZUCGpG-GQ",category:"display",url:"https://fonts.gstatic.com/s/caprasimo/v6/esDT31JQOPuXIUGBp72klZUCGpG-GQ.ttf",weight:400,isVariable:!1},{displayName:"Gudea",filename:"neIFzCqgsI0mp-CP9IGON7Ez",category:"sans-serif",url:"https://fonts.gstatic.com/s/gudea/v16/neIFzCqgsI0mp-CP9IGON7Ez.ttf",weight:400,isVariable:!1},{displayName:"Racing Sans One",filename:"sykr-yRtm7EvTrXNxkv5jfKKyDCwL3rmWpIBtA",category:"display",url:"https://fonts.gstatic.com/s/racingsansone/v17/sykr-yRtm7EvTrXNxkv5jfKKyDCwL3rmWpIBtA.ttf",weight:400,isVariable:!1},{displayName:"Belanosima",filename:"3y9k6bI8ejDo_3MfCDSLxABbF3JBg54",category:"sans-serif",url:"https://fonts.gstatic.com/s/belanosima/v4/3y9k6bI8ejDo_3MfCDSLxABbF3JBg54.ttf",weight:400,isVariable:!1},{displayName:"Black Ops One",filename:"qWcsB6-ypo7xBdr6Xshe96H3WDzRtjkho4M",category:"display",url:"https://fonts.gstatic.com/s/blackopsone/v21/qWcsB6-ypo7xBdr6Xshe96H3WDzRtjkho4M.ttf",weight:400,isVariable:!1},{displayName:"Julius Sans One",filename:"1Pt2g8TAX_SGgBGUi0tGOYEga5W-xXEW6aGXHw",category:"sans-serif",url:"https://fonts.gstatic.com/s/juliussansone/v20/1Pt2g8TAX_SGgBGUi0tGOYEga5W-xXEW6aGXHw.ttf",weight:400,isVariable:!1},{displayName:"Cabin Condensed",filename:"nwpMtK6mNhBK2err_hqkYhHRqmwaYOjZ5HZl8Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/cabincondensed/v21/nwpMtK6mNhBK2err_hqkYhHRqmwaYOjZ5HZl8Q.ttf",weight:400,isVariable:!1},{displayName:"Potta One",filename:"FeVSS05Bp6cy7xI-YfxQ3Z5nm29Gww",category:"display",url:"https://fonts.gstatic.com/s/pottaone/v19/FeVSS05Bp6cy7xI-YfxQ3Z5nm29Gww.ttf",weight:400,isVariable:!1},{displayName:"Shrikhand",filename:"a8IbNovtLWfR7T7bMJwbBIiQ0zhMtA",category:"display",url:"https://fonts.gstatic.com/s/shrikhand/v17/a8IbNovtLWfR7T7bMJwbBIiQ0zhMtA.ttf",weight:400,isVariable:!1},{displayName:"Fira Mono",filename:"N0bX2SlFPv1weGeLZDtQIfTTkdbJYA",category:"monospace",url:"https://fonts.gstatic.com/s/firamono/v16/N0bX2SlFPv1weGeLZDtQIfTTkdbJYA.ttf",weight:400,isVariable:!1},{displayName:"Gochi Hand",filename:"hES06XlsOjtJsgCkx1PkTo71-n0nXWA",category:"handwriting",url:"https://fonts.gstatic.com/s/gochihand/v25/hES06XlsOjtJsgCkx1PkTo71-n0nXWA.ttf",weight:400,isVariable:!1},{displayName:"Hachi Maru Pop",filename:"HI_TiYoRLqpLrEiMAuO9Ysfz7rW1EM_btd8u",category:"handwriting",url:"https://fonts.gstatic.com/s/hachimarupop/v23/HI_TiYoRLqpLrEiMAuO9Ysfz7rW1EM_btd8u.ttf",weight:400,isVariable:!1},{displayName:"Marck Script",filename:"nwpTtK2oNgBA3Or78gapdwuCzyI-aMPF7Q",category:"handwriting",url:"https://fonts.gstatic.com/s/marckscript/v22/nwpTtK2oNgBA3Or78gapdwuCzyI-aMPF7Q.ttf",weight:400,isVariable:!1},{displayName:"Atkinson Hyperlegible Next",filename:"NaPNcYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGsdiOlXuWpVZ-",category:"sans-serif",url:"https://fonts.gstatic.com/s/atkinsonhyperlegiblenext/v7/NaPNcYPdHfdVxJw0IfIP0lvYFqijb-UxCtm5_wdGsdiOlXuWpVZ-.ttf",weight:400,isVariable:!0},{displayName:"Michroma",filename:"PN_zRfy9qWD8fEagAMg6rzjb_-Da",category:"sans-serif",url:"https://fonts.gstatic.com/s/michroma/v21/PN_zRfy9qWD8fEagAMg6rzjb_-Da.ttf",weight:400,isVariable:!1},{displayName:"Young Serif",filename:"3qTpojO2nS2VtkB3KtkQZ2t61EcYaQ7F",category:"serif",url:"https://fonts.gstatic.com/s/youngserif/v2/3qTpojO2nS2VtkB3KtkQZ2t61EcYaQ7F.ttf",weight:400,isVariable:!1},{displayName:"Macondo",filename:"RrQQboN9-iB1IXmOS2XO0LBBd4Y",category:"display",url:"https://fonts.gstatic.com/s/macondo/v27/RrQQboN9-iB1IXmOS2XO0LBBd4Y.ttf",weight:400,isVariable:!1},{displayName:"Lalezar",filename:"zrfl0HLVx-HwTP82UaDyIiL0RCg",category:"sans-serif",url:"https://fonts.gstatic.com/s/lalezar/v16/zrfl0HLVx-HwTP82UaDyIiL0RCg.ttf",weight:400,isVariable:!1},{displayName:"Economica",filename:"Qw3fZQZaHCLgIWa29ZBrMcgAAl1lfQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/economica/v17/Qw3fZQZaHCLgIWa29ZBrMcgAAl1lfQ.ttf",weight:400,isVariable:!1},{displayName:"Andika",filename:"mem_Ya6iyW-LwqgAbbwRWrwGVA",category:"sans-serif",url:"https://fonts.gstatic.com/s/andika/v27/mem_Ya6iyW-LwqgAbbwRWrwGVA.ttf",weight:400,isVariable:!1},{displayName:"Cedarville Cursive",filename:"yYL00g_a2veiudhUmxjo5VKkoqA-B_neJbBxw8BeTg",category:"handwriting",url:"https://fonts.gstatic.com/s/cedarvillecursive/v18/yYL00g_a2veiudhUmxjo5VKkoqA-B_neJbBxw8BeTg.ttf",weight:400,isVariable:!1},{displayName:"Bevan",filename:"4iCj6KZ0a9NXjF8aUir7tlSJ",category:"serif",url:"https://fonts.gstatic.com/s/bevan/v26/4iCj6KZ0a9NXjF8aUir7tlSJ.ttf",weight:400,isVariable:!1},{displayName:"Balsamiq Sans",filename:"P5sEzZiAbNrN8SB3lQQX7Pnc8dkdIYdNHzs",category:"display",url:"https://fonts.gstatic.com/s/balsamiqsans/v15/P5sEzZiAbNrN8SB3lQQX7Pnc8dkdIYdNHzs.ttf",weight:400,isVariable:!1},{displayName:"Mona Sans",filename:"o-0IIpQmx24alC5A4PNb4j5Ba_2c7A",category:"sans-serif",url:"https://fonts.gstatic.com/s/monasans/v4/o-0IIpQmx24alC5A4PNb4j5Ba_2c7A.ttf",weight:400,isVariable:!0},{displayName:"Ms Madi",filename:"HTxsL2UxNnOji5E1N-DPiI7QAYo",category:"handwriting",url:"https://fonts.gstatic.com/s/msmadi/v2/HTxsL2UxNnOji5E1N-DPiI7QAYo.ttf",weight:400,isVariable:!1},{displayName:"Leckerli One",filename:"V8mCoQH8VCsNttEnxnGQ-1itLZxcBtItFw",category:"handwriting",url:"https://fonts.gstatic.com/s/leckerlione/v22/V8mCoQH8VCsNttEnxnGQ-1itLZxcBtItFw.ttf",weight:400,isVariable:!1},{displayName:"Wix Madefor Text",filename:"-W_lXI_oSymQ8Qj-Apx3HGN_Hu1RViIb5gwfsj4",category:"sans-serif",url:"https://fonts.gstatic.com/s/wixmadefortext/v17/-W_lXI_oSymQ8Qj-Apx3HGN_Hu1RViIb5gwfsj4.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Display",filename:"buErppa9f8_vkXaZLAgP0G5Wi6QmA1QAcqRNOlqMKg",category:"serif",url:"https://fonts.gstatic.com/s/notoserifdisplay/v29/buErppa9f8_vkXaZLAgP0G5Wi6QmA1QAcqRNOlqMKg.ttf",weight:400,isVariable:!0},{displayName:"Sarala",filename:"uK_y4riEZv4o1w9RCh0TMv6EXw",category:"sans-serif",url:"https://fonts.gstatic.com/s/sarala/v14/uK_y4riEZv4o1w9RCh0TMv6EXw.ttf",weight:400,isVariable:!1},{displayName:"Niramit",filename:"I_uuMpWdvgLdNxVLbbRQkiCvs5Y",category:"sans-serif",url:"https://fonts.gstatic.com/s/niramit/v12/I_uuMpWdvgLdNxVLbbRQkiCvs5Y.ttf",weight:400,isVariable:!1},{displayName:"Palanquin",filename:"9XUnlJ90n1fBFg7ceXwsdlFMzLC2Zw",category:"sans-serif",url:"https://fonts.gstatic.com/s/palanquin/v17/9XUnlJ90n1fBFg7ceXwsdlFMzLC2Zw.ttf",weight:400,isVariable:!1},{displayName:"Tilt Warp",filename:"AlZy_zVDs5XpmO7yn3whdXf4XB0Tow",category:"display",url:"https://fonts.gstatic.com/s/tiltwarp/v18/AlZy_zVDs5XpmO7yn3whdXf4XB0Tow.ttf",weight:400,isVariable:!1},{displayName:"Palanquin Dark",filename:"xn75YHgl1nqmANMB-26xC7yuF_6OTEo9VtfE",category:"sans-serif",url:"https://fonts.gstatic.com/s/palanquindark/v17/xn75YHgl1nqmANMB-26xC7yuF_6OTEo9VtfE.ttf",weight:400,isVariable:!1},{displayName:"IBM Plex Sans Thai",filename:"m8JPje1VVIzcq1HzJq2AEdo2Tj_qvLq8DtwhZcNaUg",category:"sans-serif",url:"https://fonts.gstatic.com/s/ibmplexsansthai/v11/m8JPje1VVIzcq1HzJq2AEdo2Tj_qvLq8DtwhZcNaUg.ttf",weight:400,isVariable:!1},{displayName:"Secular One",filename:"8QINdiTajsj_87rMuMdKypDlMul7LJpK",category:"sans-serif",url:"https://fonts.gstatic.com/s/secularone/v14/8QINdiTajsj_87rMuMdKypDlMul7LJpK.ttf",weight:400,isVariable:!1},{displayName:"Biryani",filename:"hv-WlzNxIFoO84YdTUwZPTh5T-s",category:"sans-serif",url:"https://fonts.gstatic.com/s/biryani/v15/hv-WlzNxIFoO84YdTUwZPTh5T-s.ttf",weight:400,isVariable:!1},{displayName:"Caladea",filename:"kJEzBugZ7AAjhybUjR93-9IztOc",category:"serif",url:"https://fonts.gstatic.com/s/caladea/v8/kJEzBugZ7AAjhybUjR93-9IztOc.ttf",weight:400,isVariable:!1},{displayName:"Arapey",filename:"-W__XJn-UDDA2RC6Z9AcZkIzeg",category:"serif",url:"https://fonts.gstatic.com/s/arapey/v17/-W__XJn-UDDA2RC6Z9AcZkIzeg.ttf",weight:400,isVariable:!1},{displayName:"Nixie One",filename:"lW-8wjkKLXjg5y2o2uUoUOFzpS-yLw",category:"display",url:"https://fonts.gstatic.com/s/nixieone/v17/lW-8wjkKLXjg5y2o2uUoUOFzpS-yLw.ttf",weight:400,isVariable:!1},{displayName:"Sansita",filename:"QldONTRRphEb_-V7HBm7TXFf3qw",category:"sans-serif",url:"https://fonts.gstatic.com/s/sansita/v12/QldONTRRphEb_-V7HBm7TXFf3qw.ttf",weight:400,isVariable:!1},{displayName:"Yuji Mai",filename:"ZgNQjPxdJ7DEHrS0gC38hmHmNpCO",category:"serif",url:"https://fonts.gstatic.com/s/yujimai/v8/ZgNQjPxdJ7DEHrS0gC38hmHmNpCO.ttf",weight:400,isVariable:!1},{displayName:"Reem Kufi",filename:"2sDcZGJLip7W2J7v7wQDb2-4C7wFZQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/reemkufi/v28/2sDcZGJLip7W2J7v7wQDb2-4C7wFZQ.ttf",weight:400,isVariable:!0},{displayName:"Khula",filename:"OpNCnoEOns3V7FcJpA_chzJ0",category:"sans-serif",url:"https://fonts.gstatic.com/s/khula/v17/OpNCnoEOns3V7FcJpA_chzJ0.ttf",weight:400,isVariable:!1},{displayName:"Reddit Sans",filename:"EYq3maFOxq1T_-ETdN7EKTNscZef2mNE",category:"sans-serif",url:"https://fonts.gstatic.com/s/redditsans/v6/EYq3maFOxq1T_-ETdN7EKTNscZef2mNE.ttf",weight:400,isVariable:!0},{displayName:"Pirata One",filename:"I_urMpiDvgLdLh0fAtoftiiEr5_BdZ8",category:"display",url:"https://fonts.gstatic.com/s/pirataone/v23/I_urMpiDvgLdLh0fAtoftiiEr5_BdZ8.ttf",weight:400,isVariable:!1},{displayName:"Besley",filename:"PlI8FlO1MaNwaNGMWw2G-H1cnA",category:"serif",url:"https://fonts.gstatic.com/s/besley/v22/PlI8FlO1MaNwaNGMWw2G-H1cnA.ttf",weight:400,isVariable:!0},{displayName:"Sofia Sans Extra Condensed",filename:"raxoHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0cSpLE9Ukzek",category:"sans-serif",url:"https://fonts.gstatic.com/s/sofiasansextracondensed/v6/raxoHjafvdAIOju4GcIfJH0i7zi50X3zRtuLNiMS0cSpLE9Ukzek.ttf",weight:400,isVariable:!0},{displayName:"Squada One",filename:"BCasqZ8XsOrx4mcOk6MtWaA8WDBkHgs",category:"display",url:"https://fonts.gstatic.com/s/squadaone/v20/BCasqZ8XsOrx4mcOk6MtWaA8WDBkHgs.ttf",weight:400,isVariable:!1},{displayName:"Shippori Mincho B1",filename:"wXK2E2wCr44tulPdnn-xbIpJ9RgT9-nyjqBr1lO97Q",category:"serif",url:"https://fonts.gstatic.com/s/shipporiminchob1/v24/wXK2E2wCr44tulPdnn-xbIpJ9RgT9-nyjqBr1lO97Q.ttf",weight:400,isVariable:!1},{displayName:"Akshar",filename:"Yq6V-LyHWTfz9rGyoxRktOdClg",category:"sans-serif",url:"https://fonts.gstatic.com/s/akshar/v17/Yq6V-LyHWTfz9rGyoxRktOdClg.ttf",weight:400,isVariable:!0},{displayName:"Adamina",filename:"j8_r6-DH1bjoc-dwu-reETl4Bno",category:"serif",url:"https://fonts.gstatic.com/s/adamina/v22/j8_r6-DH1bjoc-dwu-reETl4Bno.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Malayalam",filename:"sJoY3K5XjsSdcnzn071rL37lpAOsUThnF5k90TZO69o",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmalayalam/v29/sJoY3K5XjsSdcnzn071rL37lpAOsUThnF5k90TZO69o.ttf",weight:400,isVariable:!0},{displayName:"Chewy",filename:"uK_94ruUb-k-wk5xIDMfO-ed",category:"display",url:"https://fonts.gstatic.com/s/chewy/v18/uK_94ruUb-k-wk5xIDMfO-ed.ttf",weight:400,isVariable:!1},{displayName:"Spline Sans",filename:"_6_7ED73Uf-2WfU2LzycEYAlkiw_SQ5j",category:"sans-serif",url:"https://fonts.gstatic.com/s/splinesans/v16/_6_7ED73Uf-2WfU2LzycEYAlkiw_SQ5j.ttf",weight:400,isVariable:!0},{displayName:"Lateef",filename:"hESw6XVnNCxEvkbMpheEZo_H_w",category:"serif",url:"https://fonts.gstatic.com/s/lateef/v35/hESw6XVnNCxEvkbMpheEZo_H_w.ttf",weight:400,isVariable:!1},{displayName:"BenchNine",filename:"ahcbv8612zF4jxrwMosrV8N1jU2gog",category:"sans-serif",url:"https://fonts.gstatic.com/s/benchnine/v17/ahcbv8612zF4jxrwMosrV8N1jU2gog.ttf",weight:400,isVariable:!1},{displayName:"Averia Serif Libre",filename:"neIWzD2ms4wxr6GvjeD0X88SHPyX2xY-pQGOyYw2fw",category:"display",url:"https://fonts.gstatic.com/s/averiaseriflibre/v19/neIWzD2ms4wxr6GvjeD0X88SHPyX2xY-pQGOyYw2fw.ttf",weight:400,isVariable:!1},{displayName:"Jua",filename:"co3KmW9ljjAjc-DZCsKgsg",category:"sans-serif",url:"https://fonts.gstatic.com/s/jua/v18/co3KmW9ljjAjc-DZCsKgsg.ttf",weight:400,isVariable:!1},{displayName:"Boogaloo",filename:"kmK-Zq45GAvOdnaW6x1F_SrQo_1K",category:"display",url:"https://fonts.gstatic.com/s/boogaloo/v25/kmK-Zq45GAvOdnaW6x1F_SrQo_1K.ttf",weight:400,isVariable:!1},{displayName:"Covered By Your Grace",filename:"QGYwz-AZahWOJJI9kykWW9mD6opopoqXSOS0FgItq6bFIg",category:"handwriting",url:"https://fonts.gstatic.com/s/coveredbyyourgrace/v17/QGYwz-AZahWOJJI9kykWW9mD6opopoqXSOS0FgItq6bFIg.ttf",weight:400,isVariable:!1},{displayName:"Do Hyeon",filename:"TwMN-I8CRRU2zM86HFE3ZwaH__-C",category:"sans-serif",url:"https://fonts.gstatic.com/s/dohyeon/v21/TwMN-I8CRRU2zM86HFE3ZwaH__-C.ttf",weight:400,isVariable:!1},{displayName:"Cutive Mono",filename:"m8JWjfRfY7WVjVi2E-K9H5RFRG-K3Mud",category:"monospace",url:"https://fonts.gstatic.com/s/cutivemono/v23/m8JWjfRfY7WVjVi2E-K9H5RFRG-K3Mud.ttf",weight:400,isVariable:!1},{displayName:"Gloock",filename:"Iurb6YFw84WUY4N5jxylBrdRjQ",category:"serif",url:"https://fonts.gstatic.com/s/gloock/v8/Iurb6YFw84WUY4N5jxylBrdRjQ.ttf",weight:400,isVariable:!1},{displayName:"Charm",filename:"7cHmv4oii5K0MeYvIe804WIo",category:"handwriting",url:"https://fonts.gstatic.com/s/charm/v14/7cHmv4oii5K0MeYvIe804WIo.ttf",weight:400,isVariable:!1},{displayName:"Londrina Solid",filename:"flUhRq6sw40kQEJxWNgkLuudGcNZIhI8tIHh",category:"display",url:"https://fonts.gstatic.com/s/londrinasolid/v19/flUhRq6sw40kQEJxWNgkLuudGcNZIhI8tIHh.ttf",weight:400,isVariable:!1},{displayName:"Chonburi",filename:"8AtqGs-wOpGRTBq66IWaFr3biAfZ",category:"display",url:"https://fonts.gstatic.com/s/chonburi/v14/8AtqGs-wOpGRTBq66IWaFr3biAfZ.ttf",weight:400,isVariable:!1},{displayName:"Alegreya Sans SC",filename:"mtGh4-RGJqfMvt7P8FUr0Q1j-Hf1Nk5v9ixALYs",category:"sans-serif",url:"https://fonts.gstatic.com/s/alegreyasanssc/v24/mtGh4-RGJqfMvt7P8FUr0Q1j-Hf1Nk5v9ixALYs.ttf",weight:400,isVariable:!1},{displayName:"Livvic",filename:"rnCp-x1S2hzjrlfnb-k6unzeSA",category:"sans-serif",url:"https://fonts.gstatic.com/s/livvic/v15/rnCp-x1S2hzjrlfnb-k6unzeSA.ttf",weight:400,isVariable:!1},{displayName:"Basic",filename:"xfu_0WLxV2_XKQN34lDVyR7D",category:"sans-serif",url:"https://fonts.gstatic.com/s/basic/v18/xfu_0WLxV2_XKQN34lDVyR7D.ttf",weight:400,isVariable:!1},{displayName:"Mrs Saint Delafield",filename:"v6-IGZDIOVXH9xtmTZfRagunqBw5WC62cK4tLsubB2w",category:"handwriting",url:"https://fonts.gstatic.com/s/mrssaintdelafield/v14/v6-IGZDIOVXH9xtmTZfRagunqBw5WC62cK4tLsubB2w.ttf",weight:400,isVariable:!1},{displayName:"Lemonada",filename:"0QIjMXFD9oygTWy_R_tOtfWm8qTX",category:"display",url:"https://fonts.gstatic.com/s/lemonada/v31/0QIjMXFD9oygTWy_R_tOtfWm8qTX.ttf",weight:400,isVariable:!0},{displayName:"Kreon",filename:"t5tuIRIUKY-TFEXAeWm_rb7p",category:"serif",url:"https://fonts.gstatic.com/s/kreon/v40/t5tuIRIUKY-TFEXAeWm_rb7p.ttf",weight:400,isVariable:!0},{displayName:"La Belle Aurore",filename:"RrQIbot8-mNYKnGNDkWlocovHeIIG-eFNVmULg",category:"handwriting",url:"https://fonts.gstatic.com/s/labelleaurore/v23/RrQIbot8-mNYKnGNDkWlocovHeIIG-eFNVmULg.ttf",weight:400,isVariable:!1},{displayName:"Zen Kaku Gothic Antique",filename:"6qLQKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB21-g3RKjc4d7",category:"sans-serif",url:"https://fonts.gstatic.com/s/zenkakugothicantique/v18/6qLQKYkHvh-nlUpKPAdoVFBtfxDzIn1eCzpB21-g3RKjc4d7.ttf",weight:400,isVariable:!1},{displayName:"Rufina",filename:"Yq6V-LyURyLy-aKyoxRktOdClg",category:"serif",url:"https://fonts.gstatic.com/s/rufina/v17/Yq6V-LyURyLy-aKyoxRktOdClg.ttf",weight:400,isVariable:!1},{displayName:"Rakkas",filename:"Qw3cZQlNHiblL3j_lttPOeMcCw",category:"display",url:"https://fonts.gstatic.com/s/rakkas/v22/Qw3cZQlNHiblL3j_lttPOeMcCw.ttf",weight:400,isVariable:!1},{displayName:"Ovo",filename:"yYLl0h7Wyfzjy4Q5_3WVxA",category:"serif",url:"https://fonts.gstatic.com/s/ovo/v18/yYLl0h7Wyfzjy4Q5_3WVxA.ttf",weight:400,isVariable:!1},{displayName:"Electrolize",filename:"cIf5Ma1dtE0zSiGSiED7AUEGso5tQafB",category:"sans-serif",url:"https://fonts.gstatic.com/s/electrolize/v20/cIf5Ma1dtE0zSiGSiED7AUEGso5tQafB.ttf",weight:400,isVariable:!1},{displayName:"Alef",filename:"FeVfS0NQpLYgrjJbC5FxxbU",category:"sans-serif",url:"https://fonts.gstatic.com/s/alef/v24/FeVfS0NQpLYgrjJbC5FxxbU.ttf",weight:400,isVariable:!1},{displayName:"Afacad",filename:"6NUX8FKMIQOGaw6qhqYLvO0cyA",category:"sans-serif",url:"https://fonts.gstatic.com/s/afacad/v3/6NUX8FKMIQOGaw6qhqYLvO0cyA.ttf",weight:400,isVariable:!0},{displayName:"Just Another Hand",filename:"845CNN4-AJyIGvIou-6yJKyptyOpOcr_BmmlS5aw",category:"handwriting",url:"https://fonts.gstatic.com/s/justanotherhand/v21/845CNN4-AJyIGvIou-6yJKyptyOpOcr_BmmlS5aw.ttf",weight:400,isVariable:!1},{displayName:"Wix Madefor Display",filename:"SZcl3EX9IbbyeJ8aOluD52KXgUA_7Ed1OVbkA0VeBNE",category:"sans-serif",url:"https://fonts.gstatic.com/s/wixmadefordisplay/v12/SZcl3EX9IbbyeJ8aOluD52KXgUA_7Ed1OVbkA0VeBNE.ttf",weight:400,isVariable:!0},{displayName:"K2D",filename:"J7aTnpF2V0ETd68tnLcg7w",category:"sans-serif",url:"https://fonts.gstatic.com/s/k2d/v13/J7aTnpF2V0ETd68tnLcg7w.ttf",weight:400,isVariable:!1},{displayName:"Allison",filename:"X7nl4b88AP2nkbvZOCaQ4MTgAgk",category:"handwriting",url:"https://fonts.gstatic.com/s/allison/v13/X7nl4b88AP2nkbvZOCaQ4MTgAgk.ttf",weight:400,isVariable:!1},{displayName:"Coda",filename:"SLXHc1jY5nQ8JUIMapaN39I",category:"display",url:"https://fonts.gstatic.com/s/coda/v22/SLXHc1jY5nQ8JUIMapaN39I.ttf",weight:400,isVariable:!1},{displayName:"Kameron",filename:"vm82dR7vXErQxuznsL4wL-XIYH8",category:"serif",url:"https://fonts.gstatic.com/s/kameron/v18/vm82dR7vXErQxuznsL4wL-XIYH8.ttf",weight:400,isVariable:!0},{displayName:"Noto Nastaliq Urdu",filename:"LhW4MUPbN-oZdNFcBy1-DJYsEoTq5puHSPANO9blOA",category:"serif",url:"https://fonts.gstatic.com/s/notonastaliqurdu/v23/LhW4MUPbN-oZdNFcBy1-DJYsEoTq5puHSPANO9blOA.ttf",weight:400,isVariable:!0},{displayName:"Martel Sans",filename:"h0GsssGi7VdzDgKjM-4d8ijfze-PPlUu",category:"sans-serif",url:"https://fonts.gstatic.com/s/martelsans/v14/h0GsssGi7VdzDgKjM-4d8ijfze-PPlUu.ttf",weight:400,isVariable:!1},{displayName:"MuseoModerno",filename:"zrfi0HnU0_7wWdMrFcWqSEXVXAPqgALaow",category:"display",url:"https://fonts.gstatic.com/s/museomoderno/v29/zrfi0HnU0_7wWdMrFcWqSEXVXAPqgALaow.ttf",weight:400,isVariable:!0},{displayName:"Days One",filename:"mem9YaCnxnKRiYZOCLYVeLkWVNBt",category:"sans-serif",url:"https://fonts.gstatic.com/s/daysone/v19/mem9YaCnxnKRiYZOCLYVeLkWVNBt.ttf",weight:400,isVariable:!1},{displayName:"Marcellus SC",filename:"ke8iOgUHP1dg-Rmi6RWjbLEPgdydGKikhA",category:"serif",url:"https://fonts.gstatic.com/s/marcellussc/v14/ke8iOgUHP1dg-Rmi6RWjbLEPgdydGKikhA.ttf",weight:400,isVariable:!1},{displayName:"Yatra One",filename:"C8ch4copsHzj8p7NaF0xw1OBbRDvXw",category:"display",url:"https://fonts.gstatic.com/s/yatraone/v16/C8ch4copsHzj8p7NaF0xw1OBbRDvXw.ttf",weight:400,isVariable:!1},{displayName:"Judson",filename:"FeVRS0Fbvbc14VxRD7N01bV7kg",category:"serif",url:"https://fonts.gstatic.com/s/judson/v20/FeVRS0Fbvbc14VxRD7N01bV7kg.ttf",weight:400,isVariable:!1},{displayName:"Italiana",filename:"QldNNTtLsx4E__B0XTmRY31Wx7Vv",category:"sans-serif",url:"https://fonts.gstatic.com/s/italiana/v21/QldNNTtLsx4E__B0XTmRY31Wx7Vv.ttf",weight:400,isVariable:!1},{displayName:"IBM Plex Sans JP",filename:"Z9XNDn9KbTDf6_f7dISNqYf_tvPT1Cr4iNJ-pwc",category:"sans-serif",url:"https://fonts.gstatic.com/s/ibmplexsansjp/v7/Z9XNDn9KbTDf6_f7dISNqYf_tvPT1Cr4iNJ-pwc.ttf",weight:400,isVariable:!1},{displayName:"Share",filename:"i7dEIFliZjKNF5VNHLq2cV5d",category:"sans-serif",url:"https://fonts.gstatic.com/s/share/v20/i7dEIFliZjKNF5VNHLq2cV5d.ttf",weight:400,isVariable:!1},{displayName:"Stardos Stencil",filename:"X7n94bcuGPC8hrvEOHXOgaKCc2TR71R3tiSx0g",category:"display",url:"https://fonts.gstatic.com/s/stardosstencil/v15/X7n94bcuGPC8hrvEOHXOgaKCc2TR71R3tiSx0g.ttf",weight:400,isVariable:!1},{displayName:"Cabin Sketch",filename:"QGYpz_kZZAGCONcK2A4bGOjMn9JM6fnuKg",category:"display",url:"https://fonts.gstatic.com/s/cabinsketch/v23/QGYpz_kZZAGCONcK2A4bGOjMn9JM6fnuKg.ttf",weight:400,isVariable:!1},{displayName:"Bona Nova SC",filename:"mem5YaShyGWDiYdPG_c1Af4-VeJoCqeDjg",category:"serif",url:"https://fonts.gstatic.com/s/bonanovasc/v1/mem5YaShyGWDiYdPG_c1Af4-VeJoCqeDjg.ttf",weight:400,isVariable:!1},{displayName:"Shadows Into Light Two",filename:"4iC86LVlZsRSjQhpWGedwyOoW-0A6_kpsyNmlAvNGLNnIF0",category:"handwriting",url:"https://fonts.gstatic.com/s/shadowsintolighttwo/v19/4iC86LVlZsRSjQhpWGedwyOoW-0A6_kpsyNmlAvNGLNnIF0.ttf",weight:400,isVariable:!1},{displayName:"Overpass Mono",filename:"_Xmq-H86tzKDdAPa-KPQZ-AC5ii-t_-2G38",category:"monospace",url:"https://fonts.gstatic.com/s/overpassmono/v21/_Xmq-H86tzKDdAPa-KPQZ-AC5ii-t_-2G38.ttf",weight:400,isVariable:!0},{displayName:"Fredericka the Great",filename:"9Bt33CxNwt7aOctW2xjbCstzwVKsIBVV-9Skz7Ylch2L",category:"display",url:"https://fonts.gstatic.com/s/frederickathegreat/v23/9Bt33CxNwt7aOctW2xjbCstzwVKsIBVV-9Skz7Ylch2L.ttf",weight:400,isVariable:!1},{displayName:"Averia Libre",filename:"2V0aKIcMGZEnV6xygz7eNjEiAqPJZ2Xx8w",category:"display",url:"https://fonts.gstatic.com/s/averialibre/v16/2V0aKIcMGZEnV6xygz7eNjEiAqPJZ2Xx8w.ttf",weight:400,isVariable:!1},{displayName:"Neucha",filename:"q5uGsou0JOdh94bvugNsCxVEgA",category:"handwriting",url:"https://fonts.gstatic.com/s/neucha/v18/q5uGsou0JOdh94bvugNsCxVEgA.ttf",weight:400,isVariable:!1},{displayName:"Georama",filename:"MCoTzAn438bIEyxFZaAS3pP5H_E",category:"sans-serif",url:"https://fonts.gstatic.com/s/georama/v15/MCoTzAn438bIEyxFZaAS3pP5H_E.ttf",weight:400,isVariable:!0},{displayName:"Grandstander",filename:"ga6KawtA-GpSsTWrnNHPCSIWbTq6fMRRMw",category:"display",url:"https://fonts.gstatic.com/s/grandstander/v20/ga6KawtA-GpSsTWrnNHPCSIWbTq6fMRRMw.ttf",weight:400,isVariable:!0},{displayName:"Laila",filename:"LYjMdG_8nE8jDIRdiidIrEIu",category:"serif",url:"https://fonts.gstatic.com/s/laila/v20/LYjMdG_8nE8jDIRdiidIrEIu.ttf",weight:400,isVariable:!1},{displayName:"Aclonica",filename:"K2FyfZJVlfNNSEBXGb7TCI6oBjLz",category:"sans-serif",url:"https://fonts.gstatic.com/s/aclonica/v25/K2FyfZJVlfNNSEBXGb7TCI6oBjLz.ttf",weight:400,isVariable:!1},{displayName:"Armata",filename:"gokvH63_HV5jQ-E9lD53Q2u_mQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/armata/v21/gokvH63_HV5jQ-E9lD53Q2u_mQ.ttf",weight:400,isVariable:!1},{displayName:"Cormorant Upright",filename:"VuJrdM3I2Y35poFONtLdafkUCHw1y2vVjjTkeMnz",category:"serif",url:"https://fonts.gstatic.com/s/cormorantupright/v19/VuJrdM3I2Y35poFONtLdafkUCHw1y2vVjjTkeMnz.ttf",weight:400,isVariable:!1},{displayName:"Athiti",filename:"pe0vMISdLIZIv1w4DBhWCtaiAg",category:"sans-serif",url:"https://fonts.gstatic.com/s/athiti/v14/pe0vMISdLIZIv1w4DBhWCtaiAg.ttf",weight:400,isVariable:!1},{displayName:"Montagu Slab",filename:"6qLHKZIQtB_zv0xUaXRDWkYlFlnXaxIyYw",category:"serif",url:"https://fonts.gstatic.com/s/montaguslab/v17/6qLHKZIQtB_zv0xUaXRDWkYlFlnXaxIyYw.ttf",weight:400,isVariable:!0},{displayName:"Aboreto",filename:"5DCXAKLhwDDQ4N8blKTeA2yuxSY",category:"display",url:"https://fonts.gstatic.com/s/aboreto/v2/5DCXAKLhwDDQ4N8blKTeA2yuxSY.ttf",weight:400,isVariable:!1},{displayName:"Tektur",filename:"XoHn2YHtS7q969kNAR4Jt9Yxlw",category:"display",url:"https://fonts.gstatic.com/s/tektur/v6/XoHn2YHtS7q969kNAR4Jt9Yxlw.ttf",weight:400,isVariable:!0},{displayName:"Pattaya",filename:"ea8ZadcqV_zkHY-XNdCn92ZEmVs",category:"sans-serif",url:"https://fonts.gstatic.com/s/pattaya/v18/ea8ZadcqV_zkHY-XNdCn92ZEmVs.ttf",weight:400,isVariable:!1},{displayName:"Allerta Stencil",filename:"HTx0L209KT-LmIE9N7OR6eiycOeF-zz313DuvQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/allertastencil/v24/HTx0L209KT-LmIE9N7OR6eiycOeF-zz313DuvQ.ttf",weight:400,isVariable:!1},{displayName:"Darker Grotesque",filename:"U9MH6cuh-mLQlC4BKCtayOfARkSVm7beJWcKUOI",category:"sans-serif",url:"https://fonts.gstatic.com/s/darkergrotesque/v10/U9MH6cuh-mLQlC4BKCtayOfARkSVm7beJWcKUOI.ttf",weight:400,isVariable:!0},{displayName:"M PLUS 2",filename:"7Au8p_Eq3gO_OGbGGgLW4EAFOUEH",category:"sans-serif",url:"https://fonts.gstatic.com/s/mplus2/v15/7Au8p_Eq3gO_OGbGGgLW4EAFOUEH.ttf",weight:400,isVariable:!0},{displayName:"Inria Serif",filename:"fC1lPYxPY3rXxEndZJAzN0SsfSzNr0Ck",category:"serif",url:"https://fonts.gstatic.com/s/inriaserif/v18/fC1lPYxPY3rXxEndZJAzN0SsfSzNr0Ck.ttf",weight:400,isVariable:!1},{displayName:"Kiwi Maru",filename:"R70YjykGkuuDep-hRg6YmACQXzLhTg",category:"serif",url:"https://fonts.gstatic.com/s/kiwimaru/v20/R70YjykGkuuDep-hRg6YmACQXzLhTg.ttf",weight:400,isVariable:!1},{displayName:"Nanum Brush Script",filename:"wXK2E2wfpokopxzthSqPbcR5_gVaxazyjqBr1lO97Q",category:"handwriting",url:"https://fonts.gstatic.com/s/nanumbrushscript/v26/wXK2E2wfpokopxzthSqPbcR5_gVaxazyjqBr1lO97Q.ttf",weight:400,isVariable:!1},{displayName:"Corben",filename:"LYjDdGzzklQtCMp9oAlEpVs3VQ",category:"display",url:"https://fonts.gstatic.com/s/corben/v23/LYjDdGzzklQtCMp9oAlEpVs3VQ.ttf",weight:400,isVariable:!1},{displayName:"Rozha One",filename:"AlZy_zVFtYP12Zncg2khdXf4XB0Tow",category:"serif",url:"https://fonts.gstatic.com/s/rozhaone/v17/AlZy_zVFtYP12Zncg2khdXf4XB0Tow.ttf",weight:400,isVariable:!1},{displayName:"Mandali",filename:"LhWlMVbYOfASNfNUVFk1ZPdcKtA",category:"sans-serif",url:"https://fonts.gstatic.com/s/mandali/v16/LhWlMVbYOfASNfNUVFk1ZPdcKtA.ttf",weight:400,isVariable:!1},{displayName:"Mali",filename:"N0ba2SRONuN4eCrODlxxOd8",category:"handwriting",url:"https://fonts.gstatic.com/s/mali/v13/N0ba2SRONuN4eCrODlxxOd8.ttf",weight:400,isVariable:!1},{displayName:"Protest Revolution",filename:"11hcGofZ0kXBbxQXFB7MJsjtqnVw6Z2s8PIzTG1nQw",category:"display",url:"https://fonts.gstatic.com/s/protestrevolution/v2/11hcGofZ0kXBbxQXFB7MJsjtqnVw6Z2s8PIzTG1nQw.ttf",weight:400,isVariable:!1},{displayName:"Rye",filename:"r05XGLJT86YDFpTsXOqx4w",category:"display",url:"https://fonts.gstatic.com/s/rye/v17/r05XGLJT86YDFpTsXOqx4w.ttf",weight:400,isVariable:!1},{displayName:"Fustat",filename:"NaPZcZ_aHO9Iy5t7T_hDoyqlZQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/fustat/v4/NaPZcZ_aHO9Iy5t7T_hDoyqlZQ.ttf",weight:400,isVariable:!0},{displayName:"Bungee Spice",filename:"nwpTtK2nIhxE0q-IwgSpZBqCzyI-aMPF7Q",category:"display",url:"https://fonts.gstatic.com/s/bungeespice/v15/nwpTtK2nIhxE0q-IwgSpZBqCzyI-aMPF7Q.ttf",weight:400,isVariable:!1},{displayName:"Nova Square",filename:"RrQUbo9-9DV7b06QHgSWsZhARYMgGtWA",category:"display",url:"https://fonts.gstatic.com/s/novasquare/v27/RrQUbo9-9DV7b06QHgSWsZhARYMgGtWA.ttf",weight:400,isVariable:!1},{displayName:"Limelight",filename:"XLYkIZL7aopJVbZJHDuYPeNGrnY2TA",category:"display",url:"https://fonts.gstatic.com/s/limelight/v21/XLYkIZL7aopJVbZJHDuYPeNGrnY2TA.ttf",weight:400,isVariable:!1},{displayName:"Herr Von Muellerhoff",filename:"WBL6rFjRZkREW8WqmCWYLgCkQKXb4CAft3c6_qJY3QPQ",category:"handwriting",url:"https://fonts.gstatic.com/s/herrvonmuellerhoff/v23/WBL6rFjRZkREW8WqmCWYLgCkQKXb4CAft3c6_qJY3QPQ.ttf",weight:400,isVariable:!1},{displayName:"Podkova",filename:"K2FxfZ1EmftJSV9VWJ75JoKhHys",category:"serif",url:"https://fonts.gstatic.com/s/podkova/v33/K2FxfZ1EmftJSV9VWJ75JoKhHys.ttf",weight:400,isVariable:!0},{displayName:"Radley",filename:"LYjDdGzinEIjCN19oAlEpVs3VQ",category:"serif",url:"https://fonts.gstatic.com/s/radley/v24/LYjDdGzinEIjCN19oAlEpVs3VQ.ttf",weight:400,isVariable:!1},{displayName:"Alatsi",filename:"TK3iWkUJAxQ2nLNGHjUHte5fKg",category:"sans-serif",url:"https://fonts.gstatic.com/s/alatsi/v14/TK3iWkUJAxQ2nLNGHjUHte5fKg.ttf",weight:400,isVariable:!1},{displayName:"Candal",filename:"XoHn2YH6T7-t_8cNAR4Jt9Yxlw",category:"sans-serif",url:"https://fonts.gstatic.com/s/candal/v16/XoHn2YH6T7-t_8cNAR4Jt9Yxlw.ttf",weight:400,isVariable:!1},{displayName:"Gowun Batang",filename:"ijwSs5nhRMIjYsdSgcMa3wRhXLH-yuAtLw",category:"serif",url:"https://fonts.gstatic.com/s/gowunbatang/v12/ijwSs5nhRMIjYsdSgcMa3wRhXLH-yuAtLw.ttf",weight:400,isVariable:!1},{displayName:"Sintony",filename:"XoHm2YDqR7-98cVUITQnu98ojjs",category:"sans-serif",url:"https://fonts.gstatic.com/s/sintony/v17/XoHm2YDqR7-98cVUITQnu98ojjs.ttf",weight:400,isVariable:!1},{displayName:"Bowlby One SC",filename:"DtVlJxerQqQm37tzN3wMug9Pzgj8owhNjuE",category:"display",url:"https://fonts.gstatic.com/s/bowlbyonesc/v27/DtVlJxerQqQm37tzN3wMug9Pzgj8owhNjuE.ttf",weight:400,isVariable:!1},{displayName:"Spinnaker",filename:"w8gYH2oyX-I0_rvR6Hmn3HwLqOqSBg",category:"sans-serif",url:"https://fonts.gstatic.com/s/spinnaker/v21/w8gYH2oyX-I0_rvR6Hmn3HwLqOqSBg.ttf",weight:400,isVariable:!1},{displayName:"Nobile",filename:"m8JTjflSeaOVl1i2XqfXeLVdbw",category:"sans-serif",url:"https://fonts.gstatic.com/s/nobile/v19/m8JTjflSeaOVl1i2XqfXeLVdbw.ttf",weight:400,isVariable:!1},{displayName:"Vina Sans",filename:"m8JQjfZKf6-d2273MP7zcJ5BZmqa3A",category:"display",url:"https://fonts.gstatic.com/s/vinasans/v8/m8JQjfZKf6-d2273MP7zcJ5BZmqa3A.ttf",weight:400,isVariable:!1},{displayName:"Kosugi",filename:"pxiFyp4_v8FCjlI4NLr6f1pdEQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/kosugi/v19/pxiFyp4_v8FCjlI4NLr6f1pdEQ.ttf",weight:400,isVariable:!1},{displayName:"Castoro",filename:"1q2GY5yMCld3-O4cHYhEzOYenEU",category:"serif",url:"https://fonts.gstatic.com/s/castoro/v20/1q2GY5yMCld3-O4cHYhEzOYenEU.ttf",weight:400,isVariable:!1},{displayName:"Red Rose",filename:"QdVVSTYiLBjouPgEUbLkkwVoknQx",category:"display",url:"https://fonts.gstatic.com/s/redrose/v25/QdVVSTYiLBjouPgEUbLkkwVoknQx.ttf",weight:400,isVariable:!0},{displayName:"Rochester",filename:"6ae-4KCqVa4Zy6Fif-Uy31vWNTMwoQ",category:"handwriting",url:"https://fonts.gstatic.com/s/rochester/v24/6ae-4KCqVa4Zy6Fif-Uy31vWNTMwoQ.ttf",weight:400,isVariable:!1},{displayName:"REM",filename:"Wnz3HAIoSDydZjovaRcFow",category:"sans-serif",url:"https://fonts.gstatic.com/s/rem/v4/Wnz3HAIoSDydZjovaRcFow.ttf",weight:400,isVariable:!0},{displayName:"Baloo Da 2",filename:"2-ci9J9j0IaUMQZwAJyJcu7XoZFDf2Q",category:"display",url:"https://fonts.gstatic.com/s/balooda2/v26/2-ci9J9j0IaUMQZwAJyJcu7XoZFDf2Q.ttf",weight:400,isVariable:!0},{displayName:"Sevillana",filename:"KFOlCnWFscmDt1Bfiy1vAx05IsDqlA",category:"display",url:"https://fonts.gstatic.com/s/sevillana/v25/KFOlCnWFscmDt1Bfiy1vAx05IsDqlA.ttf",weight:400,isVariable:!1},{displayName:"Karma",filename:"va9I4kzAzMZRGIBvS-J3kbDP",category:"serif",url:"https://fonts.gstatic.com/s/karma/v18/va9I4kzAzMZRGIBvS-J3kbDP.ttf",weight:400,isVariable:!1},{displayName:"Aldrich",filename:"MCoTzAn-1s3IGyJMZaAS3pP5H_E",category:"sans-serif",url:"https://fonts.gstatic.com/s/aldrich/v22/MCoTzAn-1s3IGyJMZaAS3pP5H_E.ttf",weight:400,isVariable:!1},{displayName:"Fahkwang",filename:"Noax6Uj3zpmBOgbNpNqPsr1ZPTZ4",category:"sans-serif",url:"https://fonts.gstatic.com/s/fahkwang/v18/Noax6Uj3zpmBOgbNpNqPsr1ZPTZ4.ttf",weight:400,isVariable:!1},{displayName:"Caudex",filename:"esDQ311QOP6BJUrIyviAnb4eEw",category:"serif",url:"https://fonts.gstatic.com/s/caudex/v19/esDQ311QOP6BJUrIyviAnb4eEw.ttf",weight:400,isVariable:!1},{displayName:"DotGothic16",filename:"v6-QGYjBJFKgyw5nSoDAGE7L435YPFrT",category:"sans-serif",url:"https://fonts.gstatic.com/s/dotgothic16/v21/v6-QGYjBJFKgyw5nSoDAGE7L435YPFrT.ttf",weight:400,isVariable:!1},{displayName:"Anek Bangla",filename:"_gP81R38qTExHg-17BhM6mSxYPp7oSNy",category:"sans-serif",url:"https://fonts.gstatic.com/s/anekbangla/v16/_gP81R38qTExHg-17BhM6mSxYPp7oSNy.ttf",weight:400,isVariable:!0},{displayName:"Lexend Exa",filename:"UMBXrPdOoHOnxExyjdBeWirXArM58BY",category:"sans-serif",url:"https://fonts.gstatic.com/s/lexendexa/v35/UMBXrPdOoHOnxExyjdBeWirXArM58BY.ttf",weight:400,isVariable:!0},{displayName:"BIZ UDGothic",filename:"daafSTouBF7RUjnbt8p3LuKttQN98z_MbQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/bizudgothic/v12/daafSTouBF7RUjnbt8p3LuKttQN98z_MbQ.ttf",weight:400,isVariable:!1},{displayName:"Glegoo",filename:"_Xmt-HQyrTKWaw2Ji6mZAI91xw",category:"serif",url:"https://fonts.gstatic.com/s/glegoo/v17/_Xmt-HQyrTKWaw2Ji6mZAI91xw.ttf",weight:400,isVariable:!1},{displayName:"Brygada 1918",filename:"pe0pMI6eKpdGqlF5LANrM--aA_Rue1UwVg",category:"serif",url:"https://fonts.gstatic.com/s/brygada1918/v27/pe0pMI6eKpdGqlF5LANrM--aA_Rue1UwVg.ttf",weight:400,isVariable:!0},{displayName:"PT Serif Caption",filename:"ieVl2ZhbGCW-JoW6S34pSDpqYKU059WxDCs5cvI",category:"serif",url:"https://fonts.gstatic.com/s/ptserifcaption/v18/ieVl2ZhbGCW-JoW6S34pSDpqYKU059WxDCs5cvI.ttf",weight:400,isVariable:!1},{displayName:"Schoolbell",filename:"92zQtBZWOrcgoe-fgnJIVxIQ6mRqfiQ",category:"handwriting",url:"https://fonts.gstatic.com/s/schoolbell/v18/92zQtBZWOrcgoe-fgnJIVxIQ6mRqfiQ.ttf",weight:400,isVariable:!1},{displayName:"Krona One",filename:"jAnEgHdjHcjgfIb1ZcUCMY-h3cWkWg",category:"sans-serif",url:"https://fonts.gstatic.com/s/kronaone/v15/jAnEgHdjHcjgfIb1ZcUCMY-h3cWkWg.ttf",weight:400,isVariable:!1},{displayName:"UnifrakturMaguntia",filename:"WWXPlieVYwiGNomYU-ciRLRvEmK7oaVun2xNNgNa1A",category:"display",url:"https://fonts.gstatic.com/s/unifrakturmaguntia/v22/WWXPlieVYwiGNomYU-ciRLRvEmK7oaVun2xNNgNa1A.ttf",weight:400,isVariable:!1},{displayName:"Gantari",filename:"jVyK7nvyB2HL8iZyFEUkpiwFR80",category:"sans-serif",url:"https://fonts.gstatic.com/s/gantari/v4/jVyK7nvyB2HL8iZyFEUkpiwFR80.ttf",weight:400,isVariable:!0},{displayName:"Goudy Bookletter 1911",filename:"sykt-z54laciWfKv-kX8krex0jDiD2HbY6I5tRbXZ4IXAA",category:"serif",url:"https://fonts.gstatic.com/s/goudybookletter1911/v21/sykt-z54laciWfKv-kX8krex0jDiD2HbY6I5tRbXZ4IXAA.ttf",weight:400,isVariable:!1},{displayName:"Koulen",filename:"AMOQz46as3KIBPeWgnA9kuYMUg",category:"display",url:"https://fonts.gstatic.com/s/koulen/v30/AMOQz46as3KIBPeWgnA9kuYMUg.ttf",weight:400,isVariable:!1},{displayName:"Lexend Peta",filename:"BXRvvFPGjeLPh0kCfI4OkE_1c8Tf1IW3",category:"sans-serif",url:"https://fonts.gstatic.com/s/lexendpeta/v30/BXRvvFPGjeLPh0kCfI4OkE_1c8Tf1IW3.ttf",weight:400,isVariable:!0},{displayName:"Proza Libre",filename:"LYjGdGHgj0k1DIQRyUEyyHovftvXWYyz",category:"sans-serif",url:"https://fonts.gstatic.com/s/prozalibre/v9/LYjGdGHgj0k1DIQRyUEyyHovftvXWYyz.ttf",weight:400,isVariable:!1},{displayName:"Atkinson Hyperlegible Mono",filename:"tss4AoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBizKqjl2hHT0i",category:"sans-serif",url:"https://fonts.gstatic.com/s/atkinsonhyperlegiblemono/v8/tss4AoFBci4C4gvhPXrt3wjT1MqSzhA4t7IIcncBizKqjl2hHT0i.ttf",weight:400,isVariable:!0},{displayName:"Oooh Baby",filename:"2sDcZGJWgJTT2Jf76xQDb2-4C7wFZQ",category:"handwriting",url:"https://fonts.gstatic.com/s/ooohbaby/v4/2sDcZGJWgJTT2Jf76xQDb2-4C7wFZQ.ttf",weight:400,isVariable:!1},{displayName:"Metrophobic",filename:"sJoA3LZUhMSAPV_u0qwiAT-J737FPEEL",category:"sans-serif",url:"https://fonts.gstatic.com/s/metrophobic/v24/sJoA3LZUhMSAPV_u0qwiAT-J737FPEEL.ttf",weight:400,isVariable:!1},{displayName:"Graduate",filename:"C8cg4cs3o2n15t_2YxgR6X2NZAn2",category:"serif",url:"https://fonts.gstatic.com/s/graduate/v19/C8cg4cs3o2n15t_2YxgR6X2NZAn2.ttf",weight:400,isVariable:!1},{displayName:"Norican",filename:"MwQ2bhXp1eSBqjkPGJJRtGs-lbA",category:"handwriting",url:"https://fonts.gstatic.com/s/norican/v16/MwQ2bhXp1eSBqjkPGJJRtGs-lbA.ttf",weight:400,isVariable:!1},{displayName:"Murecho",filename:"q5uHsoq3NOBn_I-gmilCBxxdmYU",category:"sans-serif",url:"https://fonts.gstatic.com/s/murecho/v17/q5uHsoq3NOBn_I-gmilCBxxdmYU.ttf",weight:400,isVariable:!0},{displayName:"Coming Soon",filename:"qWcuB6mzpYL7AJ2VfdQR1u-SUjjzsykh",category:"handwriting",url:"https://fonts.gstatic.com/s/comingsoon/v20/qWcuB6mzpYL7AJ2VfdQR1u-SUjjzsykh.ttf",weight:400,isVariable:!1},{displayName:"Host Grotesk",filename:"co3BmWBnlCJ3U42vbbfdwMjpo1Ln4U3Qrw",category:"sans-serif",url:"https://fonts.gstatic.com/s/hostgrotesk/v5/co3BmWBnlCJ3U42vbbfdwMjpo1Ln4U3Qrw.ttf",weight:400,isVariable:!0},{displayName:"Glory",filename:"q5uJsoi9Lf1w5sfPkC1gAgxd",category:"sans-serif",url:"https://fonts.gstatic.com/s/glory/v18/q5uJsoi9Lf1w5sfPkC1gAgxd.ttf",weight:400,isVariable:!0},{displayName:"Antic",filename:"TuGfUVB8XY5DRaZLodgzydtk",category:"sans-serif",url:"https://fonts.gstatic.com/s/antic/v20/TuGfUVB8XY5DRaZLodgzydtk.ttf",weight:400,isVariable:!1},{displayName:"Enriqueta",filename:"goksH6L7AUFrRvV44HVTS0CjkP1Yog",category:"serif",url:"https://fonts.gstatic.com/s/enriqueta/v19/goksH6L7AUFrRvV44HVTS0CjkP1Yog.ttf",weight:400,isVariable:!1},{displayName:"Faster One",filename:"H4ciBXCHmdfClFb-vWhfyLuShq63czE",category:"display",url:"https://fonts.gstatic.com/s/fasterone/v20/H4ciBXCHmdfClFb-vWhfyLuShq63czE.ttf",weight:400,isVariable:!1},{displayName:"Klee One",filename:"LDIxapCLNRc6A8oT4q4AOeekWPrP",category:"handwriting",url:"https://fonts.gstatic.com/s/kleeone/v13/LDIxapCLNRc6A8oT4q4AOeekWPrP.ttf",weight:400,isVariable:!1},{displayName:"Anek Latin",filename:"co3DmWZulTRoU4a8dqrWk6Pjp3Di8U0",category:"sans-serif",url:"https://fonts.gstatic.com/s/aneklatin/v11/co3DmWZulTRoU4a8dqrWk6Pjp3Di8U0.ttf",weight:400,isVariable:!0},{displayName:"Annie Use Your Telescope",filename:"daaLSS4tI2qYYl3Jq9s_Hu74xwktnlKxH6osGVGjlDfB3UUVZA",category:"handwriting",url:"https://fonts.gstatic.com/s/annieuseyourtelescope/v20/daaLSS4tI2qYYl3Jq9s_Hu74xwktnlKxH6osGVGjlDfB3UUVZA.ttf",weight:400,isVariable:!1},{displayName:"Overlock",filename:"Z9XVDmdMWRiN1_T9Z4Te4u2El6GC",category:"display",url:"https://fonts.gstatic.com/s/overlock/v19/Z9XVDmdMWRiN1_T9Z4Te4u2El6GC.ttf",weight:400,isVariable:!1},{displayName:"Mate",filename:"m8JdjftRd7WZ2z28WoXSaLU",category:"serif",url:"https://fonts.gstatic.com/s/mate/v19/m8JdjftRd7WZ2z28WoXSaLU.ttf",weight:400,isVariable:!1},{displayName:"Original Surfer",filename:"RWmQoKGZ9vIirYntXJ3_MbekzNMiDEtvAlaMKw",category:"display",url:"https://fonts.gstatic.com/s/originalsurfer/v25/RWmQoKGZ9vIirYntXJ3_MbekzNMiDEtvAlaMKw.ttf",weight:400,isVariable:!1},{displayName:"SUSE",filename:"MwQ5bhb078Wt6VhLPJp6qGI",category:"sans-serif",url:"https://fonts.gstatic.com/s/suse/v4/MwQ5bhb078Wt6VhLPJp6qGI.ttf",weight:400,isVariable:!0},{displayName:"Cantata One",filename:"PlI5Fl60Nb5obNzNe2jslVxEt8CwfGaD",category:"serif",url:"https://fonts.gstatic.com/s/cantataone/v16/PlI5Fl60Nb5obNzNe2jslVxEt8CwfGaD.ttf",weight:400,isVariable:!1},{displayName:"Encode Sans Expanded",filename:"c4m_1mF4GcnstG_Jh1QH6ac4hNLeNyeYUqoiIwdAd5Ab",category:"sans-serif",url:"https://fonts.gstatic.com/s/encodesansexpanded/v12/c4m_1mF4GcnstG_Jh1QH6ac4hNLeNyeYUqoiIwdAd5Ab.ttf",weight:400,isVariable:!1},{displayName:"Rancho",filename:"46kulbzmXjLaqZRlbWXgd0RY1g",category:"handwriting",url:"https://fonts.gstatic.com/s/rancho/v22/46kulbzmXjLaqZRlbWXgd0RY1g.ttf",weight:400,isVariable:!1},{displayName:"Libre Barcode 128",filename:"cIfnMbdUsUoiW3O_hVviCwVjuLtXeJ_A_gMk0izH",category:"display",url:"https://fonts.gstatic.com/s/librebarcode128/v31/cIfnMbdUsUoiW3O_hVviCwVjuLtXeJ_A_gMk0izH.ttf",weight:400,isVariable:!1},{displayName:"Mountains of Christmas",filename:"3y9w6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7ePNamMPNpJpc",category:"display",url:"https://fonts.gstatic.com/s/mountainsofchristmas/v24/3y9w6a4zcCnn5X0FDyrKi2ZRUBIy8uxoUo7ePNamMPNpJpc.ttf",weight:400,isVariable:!1},{displayName:"Bellefair",filename:"kJExBuYY6AAuhiXUxG19__A2pOdvDA",category:"serif",url:"https://fonts.gstatic.com/s/bellefair/v15/kJExBuYY6AAuhiXUxG19__A2pOdvDA.ttf",weight:400,isVariable:!1},{displayName:"Oranienbaum",filename:"OZpHg_txtzZKMuXLIVrx-3zn7kz3dpHc",category:"serif",url:"https://fonts.gstatic.com/s/oranienbaum/v16/OZpHg_txtzZKMuXLIVrx-3zn7kz3dpHc.ttf",weight:400,isVariable:!1},{displayName:"Fondamento",filename:"4UaHrEJGsxNmFTPDnkaJx63j5pN1MwI",category:"handwriting",url:"https://fonts.gstatic.com/s/fondamento/v22/4UaHrEJGsxNmFTPDnkaJx63j5pN1MwI.ttf",weight:400,isVariable:!1},{displayName:"Dongle",filename:"sJoF3Ltdjt6VPkqmveRPah6RxA",category:"sans-serif",url:"https://fonts.gstatic.com/s/dongle/v16/sJoF3Ltdjt6VPkqmveRPah6RxA.ttf",weight:400,isVariable:!1},{displayName:"Libre Caslon Display",filename:"TuGOUUFxWphYQ6YI6q9Xp61FQzxDRKmzr2lRdRhtCC4d",category:"serif",url:"https://fonts.gstatic.com/s/librecaslondisplay/v18/TuGOUUFxWphYQ6YI6q9Xp61FQzxDRKmzr2lRdRhtCC4d.ttf",weight:400,isVariable:!1},{displayName:"Honk",filename:"m8JdjftUea-X2z28WoXSaLU",category:"display",url:"https://fonts.gstatic.com/s/honk/v6/m8JdjftUea-X2z28WoXSaLU.ttf",weight:400,isVariable:!1},{displayName:"Halant",filename:"u-4-0qaujRI2PbsX39Jmky12eg",category:"serif",url:"https://fonts.gstatic.com/s/halant/v17/u-4-0qaujRI2PbsX39Jmky12eg.ttf",weight:400,isVariable:!1},{displayName:"Monsieur La Doulaise",filename:"_Xmz-GY4rjmCbQfc-aPRaa4pqV340p7EZl5ewkEU4HTy",category:"handwriting",url:"https://fonts.gstatic.com/s/monsieurladoulaise/v20/_Xmz-GY4rjmCbQfc-aPRaa4pqV340p7EZl5ewkEU4HTy.ttf",weight:400,isVariable:!1},{displayName:"Jockey One",filename:"HTxpL2g2KjCFj4x8WI6ArIb7HYOk4xc",category:"sans-serif",url:"https://fonts.gstatic.com/s/jockeyone/v23/HTxpL2g2KjCFj4x8WI6ArIb7HYOk4xc.ttf",weight:400,isVariable:!1},{displayName:"Kristi",filename:"uK_y4ricdeU6zwdRCh0TMv6EXw",category:"handwriting",url:"https://fonts.gstatic.com/s/kristi/v23/uK_y4ricdeU6zwdRCh0TMv6EXw.ttf",weight:400,isVariable:!1},{displayName:"Grand Hotel",filename:"7Au7p_IgjDKdCRWuR1azpmQNEl0O0kEx",category:"handwriting",url:"https://fonts.gstatic.com/s/grandhotel/v21/7Au7p_IgjDKdCRWuR1azpmQNEl0O0kEx.ttf",weight:400,isVariable:!1},{displayName:"Familjen Grotesk",filename:"Qw3GZR9ZHiDnImG6-NEMQ41wby8WXH0OjpM75PE",category:"sans-serif",url:"https://fonts.gstatic.com/s/familjengrotesk/v11/Qw3GZR9ZHiDnImG6-NEMQ41wby8WXH0OjpM75PE.ttf",weight:400,isVariable:!0},{displayName:"Hepta Slab",filename:"ea8cadoyU_jkHdalebHv025vhVKUE3E",category:"serif",url:"https://fonts.gstatic.com/s/heptaslab/v25/ea8cadoyU_jkHdalebHv025vhVKUE3E.ttf",weight:400,isVariable:!0},{displayName:"Amiko",filename:"WwkQxPq1DFK04tqlc17MMZgJ",category:"sans-serif",url:"https://fonts.gstatic.com/s/amiko/v15/WwkQxPq1DFK04tqlc17MMZgJ.ttf",weight:400,isVariable:!1},{displayName:"Contrail One",filename:"eLGbP-j_JA-kG0_Zo51noafdZUvt_c092w",category:"display",url:"https://fonts.gstatic.com/s/contrailone/v21/eLGbP-j_JA-kG0_Zo51noafdZUvt_c092w.ttf",weight:400,isVariable:!1},{displayName:"Trirong",filename:"7r3GqXNgp8wxdOdOr4wi2aZg-ug",category:"serif",url:"https://fonts.gstatic.com/s/trirong/v17/7r3GqXNgp8wxdOdOr4wi2aZg-ug.ttf",weight:400,isVariable:!1},{displayName:"Anton SC",filename:"4UaBrEBBsgltGn71sxLmzanB44N1",category:"sans-serif",url:"https://fonts.gstatic.com/s/antonsc/v1/4UaBrEBBsgltGn71sxLmzanB44N1.ttf",weight:400,isVariable:!1},{displayName:"Arbutus Slab",filename:"oY1Z8e7OuLXkJGbXtr5ba7ZVa68dJlaFAQ",category:"serif",url:"https://fonts.gstatic.com/s/arbutusslab/v17/oY1Z8e7OuLXkJGbXtr5ba7ZVa68dJlaFAQ.ttf",weight:400,isVariable:!1},{displayName:"Allerta",filename:"TwMO-IAHRlkbx940UnEdSQqO5uY",category:"sans-serif",url:"https://fonts.gstatic.com/s/allerta/v19/TwMO-IAHRlkbx940UnEdSQqO5uY.ttf",weight:400,isVariable:!1},{displayName:"Chivo Mono",filename:"mFT0WbgRxKvF_Z5eQMO9sxgJ1EJ7i90",category:"monospace",url:"https://fonts.gstatic.com/s/chivomono/v11/mFT0WbgRxKvF_Z5eQMO9sxgJ1EJ7i90.ttf",weight:400,isVariable:!0},{displayName:"Agbalumo",filename:"55xvey5uMdT2N37KZcMFirl08KDJ",category:"display",url:"https://fonts.gstatic.com/s/agbalumo/v6/55xvey5uMdT2N37KZcMFirl08KDJ.ttf",weight:400,isVariable:!1},{displayName:"Quintessential",filename:"fdNn9sOGq31Yjnh3qWU14DdtjY5wS7kmAyxM",category:"handwriting",url:"https://fonts.gstatic.com/s/quintessential/v24/fdNn9sOGq31Yjnh3qWU14DdtjY5wS7kmAyxM.ttf",weight:400,isVariable:!1},{displayName:"Bentham",filename:"VdGeAZQPEpYfmHglKWw7CJaK_y4",category:"serif",url:"https://fonts.gstatic.com/s/bentham/v20/VdGeAZQPEpYfmHglKWw7CJaK_y4.ttf",weight:400,isVariable:!1},{displayName:"Petit Formal Script",filename:"B50TF6xQr2TXJBnGOFME6u5OR83oRP5qoHnqP4gZSiE",category:"handwriting",url:"https://fonts.gstatic.com/s/petitformalscript/v19/B50TF6xQr2TXJBnGOFME6u5OR83oRP5qoHnqP4gZSiE.ttf",weight:400,isVariable:!1},{displayName:"Kode Mono",filename:"A2BYn5pb0QgtVEPFnlY-mojxW5KJuQ",category:"monospace",url:"https://fonts.gstatic.com/s/kodemono/v4/A2BYn5pb0QgtVEPFnlY-mojxW5KJuQ.ttf",weight:400,isVariable:!0},{displayName:"Wallpoet",filename:"f0X10em2_8RnXVVdUNbu7cXP8L8G",category:"display",url:"https://fonts.gstatic.com/s/wallpoet/v21/f0X10em2_8RnXVVdUNbu7cXP8L8G.ttf",weight:400,isVariable:!1},{displayName:"Mina",filename:"-nFzOGc18vARrz9j7i3y65o",category:"sans-serif",url:"https://fonts.gstatic.com/s/mina/v14/-nFzOGc18vARrz9j7i3y65o.ttf",weight:400,isVariable:!1},{displayName:"Major Mono Display",filename:"RWmVoLyb5fEqtsfBX9PDZIGr2tFubRhLCn2QIndPww",category:"monospace",url:"https://fonts.gstatic.com/s/majormonodisplay/v18/RWmVoLyb5fEqtsfBX9PDZIGr2tFubRhLCn2QIndPww.ttf",weight:400,isVariable:!1},{displayName:"Silkscreen",filename:"m8JXjfVPf62XiF7kO-i9ULRvamODxdI",category:"display",url:"https://fonts.gstatic.com/s/silkscreen/v6/m8JXjfVPf62XiF7kO-i9ULRvamODxdI.ttf",weight:400,isVariable:!1},{displayName:"Cairo Play",filename:"wXKuE3QSpo4vpRz_mz6FJeQAmX8yrdk",category:"sans-serif",url:"https://fonts.gstatic.com/s/cairoplay/v13/wXKuE3QSpo4vpRz_mz6FJeQAmX8yrdk.ttf",weight:400,isVariable:!0},{displayName:"Antic Didone",filename:"RWmPoKKX6u8sp8fIWdnDKqDiqYsGBGBzCw",category:"serif",url:"https://fonts.gstatic.com/s/anticdidone/v17/RWmPoKKX6u8sp8fIWdnDKqDiqYsGBGBzCw.ttf",weight:400,isVariable:!1},{displayName:"Dawning of a New Day",filename:"t5t_IQMbOp2SEwuncwLRjMfIg1yYit_nAz8bhWJGNoBE",category:"handwriting",url:"https://fonts.gstatic.com/s/dawningofanewday/v22/t5t_IQMbOp2SEwuncwLRjMfIg1yYit_nAz8bhWJGNoBE.ttf",weight:400,isVariable:!1},{displayName:"Arizonia",filename:"neIIzCemt4A5qa7mv6WGHK06UY30",category:"handwriting",url:"https://fonts.gstatic.com/s/arizonia/v23/neIIzCemt4A5qa7mv6WGHK06UY30.ttf",weight:400,isVariable:!1},{displayName:"Licorice",filename:"t5tjIR8TMomTCAyjNk23hqLgzCHu",category:"handwriting",url:"https://fonts.gstatic.com/s/licorice/v8/t5tjIR8TMomTCAyjNk23hqLgzCHu.ttf",weight:400,isVariable:!1},{displayName:"Yesteryear",filename:"dg4g_p78rroaKl8kRKo1r7wHTwonmyw",category:"handwriting",url:"https://fonts.gstatic.com/s/yesteryear/v21/dg4g_p78rroaKl8kRKo1r7wHTwonmyw.ttf",weight:400,isVariable:!1},{displayName:"Mochiy Pop One",filename:"QdVPSTA9Jh-gg-5XZP2UmU4O9kwwD3s6ZKAi",category:"sans-serif",url:"https://fonts.gstatic.com/s/mochiypopone/v12/QdVPSTA9Jh-gg-5XZP2UmU4O9kwwD3s6ZKAi.ttf",weight:400,isVariable:!1},{displayName:"BioRhyme",filename:"1cXwaULHBpDMsHYW_HxGpVWIgNit",category:"serif",url:"https://fonts.gstatic.com/s/biorhyme/v21/1cXwaULHBpDMsHYW_HxGpVWIgNit.ttf",weight:400,isVariable:!0},{displayName:"Tiro Bangla",filename:"IFSgHe1Tm95E3O8b5i2V8MG9-UPeuz4i",category:"serif",url:"https://fonts.gstatic.com/s/tirobangla/v6/IFSgHe1Tm95E3O8b5i2V8MG9-UPeuz4i.ttf",weight:400,isVariable:!1},{displayName:"Oxygen Mono",filename:"h0GsssGg9FxgDgCjLeAd7ijfze-PPlUu",category:"monospace",url:"https://fonts.gstatic.com/s/oxygenmono/v15/h0GsssGg9FxgDgCjLeAd7ijfze-PPlUu.ttf",weight:400,isVariable:!1},{displayName:"Suez One",filename:"taiJGmd_EZ6rqscQgNFJkIqg-I0w",category:"serif",url:"https://fonts.gstatic.com/s/suezone/v15/taiJGmd_EZ6rqscQgNFJkIqg-I0w.ttf",weight:400,isVariable:!1},{displayName:"Love Ya Like A Sister",filename:"R70EjzUBlOqPeouhFDfR80-0FhOqJubN-Be78nZcsGGycA",category:"display",url:"https://fonts.gstatic.com/s/loveyalikeasister/v23/R70EjzUBlOqPeouhFDfR80-0FhOqJubN-Be78nZcsGGycA.ttf",weight:400,isVariable:!1},{displayName:"Croissant One",filename:"3y9n6bU9bTPg4m8NDy3Kq24UM3pqn5cdJ-4",category:"display",url:"https://fonts.gstatic.com/s/croissantone/v28/3y9n6bU9bTPg4m8NDy3Kq24UM3pqn5cdJ-4.ttf",weight:400,isVariable:!1},{displayName:"Alegreya SC",filename:"taiOGmRtCJ62-O0HhNEa-a6o05E5abe_",category:"serif",url:"https://fonts.gstatic.com/s/alegreyasc/v26/taiOGmRtCJ62-O0HhNEa-a6o05E5abe_.ttf",weight:400,isVariable:!1},{displayName:"Sofia Sans Semi Condensed",filename:"46k9laPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURgWQ-826XvcQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/sofiasanssemicondensed/v8/46k9laPnUDrQoNsWDCGXXxYlujh5Wv0nwP4RwxURgWQ-826XvcQ.ttf",weight:400,isVariable:!0},{displayName:"Style Script",filename:"vm8xdRX3SV7Z0aPa88xzW5npeFT76NZnMw",category:"handwriting",url:"https://fonts.gstatic.com/s/stylescript/v13/vm8xdRX3SV7Z0aPa88xzW5npeFT76NZnMw.ttf",weight:400,isVariable:!1},{displayName:"Charis SIL",filename:"oPWK_kV3l-s-Q8govXvKrPrmYjZ2Xn0",category:"serif",url:"https://fonts.gstatic.com/s/charissil/v2/oPWK_kV3l-s-Q8govXvKrPrmYjZ2Xn0.ttf",weight:400,isVariable:!1},{displayName:"IBM Plex Sans KR",filename:"vEFK2-VJISZe3O_rc3ZVYh4aTwNO8tK1W77HtMo",category:"sans-serif",url:"https://fonts.gstatic.com/s/ibmplexsanskr/v11/vEFK2-VJISZe3O_rc3ZVYh4aTwNO8tK1W77HtMo.ttf",weight:400,isVariable:!1},{displayName:"Average Sans",filename:"1Ptpg8fLXP2dlAXR-HlJJNJPBdqazVoK4A",category:"sans-serif",url:"https://fonts.gstatic.com/s/averagesans/v17/1Ptpg8fLXP2dlAXR-HlJJNJPBdqazVoK4A.ttf",weight:400,isVariable:!1},{displayName:"DynaPuff",filename:"z7NXdRvsZDIVHbYPMgxC_pjcTeWU",category:"display",url:"https://fonts.gstatic.com/s/dynapuff/v9/z7NXdRvsZDIVHbYPMgxC_pjcTeWU.ttf",weight:400,isVariable:!0},{displayName:"Calligraffitti",filename:"46k2lbT3XjDVqJw3DCmCFjE0vnFZM5ZBpYN-",category:"handwriting",url:"https://fonts.gstatic.com/s/calligraffitti/v20/46k2lbT3XjDVqJw3DCmCFjE0vnFZM5ZBpYN-.ttf",weight:400,isVariable:!1},{displayName:"Irish Grover",filename:"buExpoi6YtLz2QW7LA4flVgf-P5Oaiw4cw",category:"display",url:"https://fonts.gstatic.com/s/irishgrover/v23/buExpoi6YtLz2QW7LA4flVgf-P5Oaiw4cw.ttf",weight:400,isVariable:!1},{displayName:"Edu SA Beginner",filename:"rnCw-xRb1x-1lHXnLaZZ2xOoLIGFWFAMArZKqQ",category:"handwriting",url:"https://fonts.gstatic.com/s/edusabeginner/v5/rnCw-xRb1x-1lHXnLaZZ2xOoLIGFWFAMArZKqQ.ttf",weight:400,isVariable:!0},{displayName:"Cormorant SC",filename:"0yb5GD4kxqXBmOVLG30OGwserDow9Tbu-Q",category:"serif",url:"https://fonts.gstatic.com/s/cormorantsc/v19/0yb5GD4kxqXBmOVLG30OGwserDow9Tbu-Q.ttf",weight:400,isVariable:!1},{displayName:"Knewave",filename:"sykz-yx0lLcxQaSItSq9-trEvlQ",category:"display",url:"https://fonts.gstatic.com/s/knewave/v15/sykz-yx0lLcxQaSItSq9-trEvlQ.ttf",weight:400,isVariable:!1},{displayName:"Manjari",filename:"k3kQo8UPMOBO2w1UTd7iL0nAMaM",category:"sans-serif",url:"https://fonts.gstatic.com/s/manjari/v14/k3kQo8UPMOBO2w1UTd7iL0nAMaM.ttf",weight:400,isVariable:!1},{displayName:"Libre Barcode 39 Text",filename:"sJoa3KhViNKANw_E3LwoDXvs5Un0HQ1vT-031RRL-9rYaw",category:"display",url:"https://fonts.gstatic.com/s/librebarcode39text/v32/sJoa3KhViNKANw_E3LwoDXvs5Un0HQ1vT-031RRL-9rYaw.ttf",weight:400,isVariable:!1},{displayName:"Baloo Bhaijaan 2",filename:"zYX9KUwuEqdVGqM8tPDdAA_Y-_bMMIZmdd_qFmo",category:"display",url:"https://fonts.gstatic.com/s/baloobhaijaan2/v21/zYX9KUwuEqdVGqM8tPDdAA_Y-_bMMIZmdd_qFmo.ttf",weight:400,isVariable:!0},{displayName:"IM Fell English",filename:"Ktk1ALSLW8zDe0rthJysWrnLsAz3F6mZVY9Y5w",category:"serif",url:"https://fonts.gstatic.com/s/imfellenglish/v14/Ktk1ALSLW8zDe0rthJysWrnLsAz3F6mZVY9Y5w.ttf",weight:400,isVariable:!1},{displayName:"Fjord One",filename:"zOL-4pbEnKBY_9S1jNKr6e5As-FeiQ",category:"serif",url:"https://fonts.gstatic.com/s/fjordone/v22/zOL-4pbEnKBY_9S1jNKr6e5As-FeiQ.ttf",weight:400,isVariable:!1},{displayName:"Marmelad",filename:"Qw3eZQdSHj_jK2e-8tFLG-YMC0R8",category:"sans-serif",url:"https://fonts.gstatic.com/s/marmelad/v19/Qw3eZQdSHj_jK2e-8tFLG-YMC0R8.ttf",weight:400,isVariable:!1},{displayName:"Ma Shan Zheng",filename:"NaPecZTRCLxvwo41b4gvzkXaRMTsDIRSfr0",category:"handwriting",url:"https://fonts.gstatic.com/s/mashanzheng/v14/NaPecZTRCLxvwo41b4gvzkXaRMTsDIRSfr0.ttf",weight:400,isVariable:!1},{displayName:"Markazi Text",filename:"syk0-ydym6AtQaiEtX7yhqblpn-UJ1H6Uw",category:"serif",url:"https://fonts.gstatic.com/s/markazitext/v28/syk0-ydym6AtQaiEtX7yhqblpn-UJ1H6Uw.ttf",weight:400,isVariable:!0},{displayName:"Niconne",filename:"w8gaH2QvRug1_rTfrQut2F4OuOo",category:"handwriting",url:"https://fonts.gstatic.com/s/niconne/v16/w8gaH2QvRug1_rTfrQut2F4OuOo.ttf",weight:400,isVariable:!1},{displayName:"Hina Mincho",filename:"2sDaZGBRhpXa2Jjz5w5LAGW8KbkVZTHR",category:"serif",url:"https://fonts.gstatic.com/s/hinamincho/v16/2sDaZGBRhpXa2Jjz5w5LAGW8KbkVZTHR.ttf",weight:400,isVariable:!1},{displayName:"Cormorant Unicase",filename:"HI_QiZUaILtOqhqgDeXoF_n1_fTGX-vTnsMnx3C9",category:"serif",url:"https://fonts.gstatic.com/s/cormorantunicase/v25/HI_QiZUaILtOqhqgDeXoF_n1_fTGX-vTnsMnx3C9.ttf",weight:400,isVariable:!1},{displayName:"Maitree",filename:"MjQGmil5tffhpBrkrtmmfJmDoL4",category:"serif",url:"https://fonts.gstatic.com/s/maitree/v11/MjQGmil5tffhpBrkrtmmfJmDoL4.ttf",weight:400,isVariable:!1},{displayName:"Bungee Inline",filename:"Gg8zN58UcgnlCweMrih332VuDGJ1-FEglsc",category:"display",url:"https://fonts.gstatic.com/s/bungeeinline/v19/Gg8zN58UcgnlCweMrih332VuDGJ1-FEglsc.ttf",weight:400,isVariable:!1},{displayName:"Hahmlet",filename:"BngIUXpCQ3nKpIo0V_jQjP_L3qE",category:"serif",url:"https://fonts.gstatic.com/s/hahmlet/v21/BngIUXpCQ3nKpIo0V_jQjP_L3qE.ttf",weight:400,isVariable:!0},{displayName:"Geo",filename:"CSRz4zRZlufVL3BmQjlCbQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/geo/v23/CSRz4zRZlufVL3BmQjlCbQ.ttf",weight:400,isVariable:!1},{displayName:"Lekton",filename:"SZc43FDmLaWmWpBeXxfonUPL6Q",category:"monospace",url:"https://fonts.gstatic.com/s/lekton/v21/SZc43FDmLaWmWpBeXxfonUPL6Q.ttf",weight:400,isVariable:!1},{displayName:"RocknRoll One",filename:"kmK7ZqspGAfCeUiW6FFlmEC9guVhs7tfUxc",category:"sans-serif",url:"https://fonts.gstatic.com/s/rocknrollone/v16/kmK7ZqspGAfCeUiW6FFlmEC9guVhs7tfUxc.ttf",weight:400,isVariable:!1},{displayName:"Grenze Gotisch",filename:"Fh4sPjjqNDz1osh_jX9YfjudpAhKF66qe6T5",category:"display",url:"https://fonts.gstatic.com/s/grenzegotisch/v20/Fh4sPjjqNDz1osh_jX9YfjudpAhKF66qe6T5.ttf",weight:400,isVariable:!0},{displayName:"Rampart One",filename:"K2F1fZFGl_JSR1tAWNG9R6qgLS76ZHOM",category:"display",url:"https://fonts.gstatic.com/s/rampartone/v13/K2F1fZFGl_JSR1tAWNG9R6qgLS76ZHOM.ttf",weight:400,isVariable:!1},{displayName:"Turret Road",filename:"pxiAypMgpcBFjE84Zv-fE3tFOvODSVFF",category:"display",url:"https://fonts.gstatic.com/s/turretroad/v11/pxiAypMgpcBFjE84Zv-fE3tFOvODSVFF.ttf",weight:400,isVariable:!1},{displayName:"Over the Rainbow",filename:"11haGoXG1k_HKhMLUWz7Mc7vvW5upvOm9NA2XG0",category:"handwriting",url:"https://fonts.gstatic.com/s/overtherainbow/v23/11haGoXG1k_HKhMLUWz7Mc7vvW5upvOm9NA2XG0.ttf",weight:400,isVariable:!1},{displayName:"Azeret Mono",filename:"3XFuErsiyJsY9O_Gepph-EHmb_jU3eRL",category:"monospace",url:"https://fonts.gstatic.com/s/azeretmono/v21/3XFuErsiyJsY9O_Gepph-EHmb_jU3eRL.ttf",weight:400,isVariable:!0},{displayName:"Mansalva",filename:"aWB4m0aacbtDfvq5NJllI47vdyBg",category:"handwriting",url:"https://fonts.gstatic.com/s/mansalva/v16/aWB4m0aacbtDfvq5NJllI47vdyBg.ttf",weight:400,isVariable:!1},{displayName:"Encode Sans Semi Condensed",filename:"3qT4oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG2yR_sVPRsjp",category:"sans-serif",url:"https://fonts.gstatic.com/s/encodesanssemicondensed/v11/3qT4oiKqnDuUtQUEHMoXcmspmy55SFWrXFRp9FTOG2yR_sVPRsjp.ttf",weight:400,isVariable:!1},{displayName:"Telex",filename:"ieVw2Y1fKWmIO9fTB1piKFIf",category:"sans-serif",url:"https://fonts.gstatic.com/s/telex/v18/ieVw2Y1fKWmIO9fTB1piKFIf.ttf",weight:400,isVariable:!1},{displayName:"Kantumruy Pro",filename:"1q2AY5aECkp34vEBSPFOmJxwpETLeo2gm2U",category:"sans-serif",url:"https://fonts.gstatic.com/s/kantumruypro/v12/1q2AY5aECkp34vEBSPFOmJxwpETLeo2gm2U.ttf",weight:400,isVariable:!0},{displayName:"Waiting for the Sunrise",filename:"WBL1rFvOYl9CEv2i1mO6KUW8RKWJ2zoXoz5JsYZQ9h_ZYk5J",category:"handwriting",url:"https://fonts.gstatic.com/s/waitingforthesunrise/v23/WBL1rFvOYl9CEv2i1mO6KUW8RKWJ2zoXoz5JsYZQ9h_ZYk5J.ttf",weight:400,isVariable:!1},{displayName:"B612 Mono",filename:"kmK_Zq85QVWbN1eW6lJl1wTcquRTtg",category:"monospace",url:"https://fonts.gstatic.com/s/b612mono/v16/kmK_Zq85QVWbN1eW6lJl1wTcquRTtg.ttf",weight:400,isVariable:!1},{displayName:"Sigmar One",filename:"co3DmWZ8kjZuErj9Ta3dk6Pjp3Di8U0",category:"display",url:"https://fonts.gstatic.com/s/sigmarone/v20/co3DmWZ8kjZuErj9Ta3dk6Pjp3Di8U0.ttf",weight:400,isVariable:!1},{displayName:"Bellota Text",filename:"0FlTVP2VnlWS4f3-UE9hHXMB-dMOdS7sSg",category:"display",url:"https://fonts.gstatic.com/s/bellotatext/v20/0FlTVP2VnlWS4f3-UE9hHXMB-dMOdS7sSg.ttf",weight:400,isVariable:!1},{displayName:"Solway",filename:"AMOQz46Cs2uTAOCWgnA9kuYMUg",category:"serif",url:"https://fonts.gstatic.com/s/solway/v19/AMOQz46Cs2uTAOCWgnA9kuYMUg.ttf",weight:400,isVariable:!1},{displayName:"Yuji Boku",filename:"P5sAzZybeNzXsA9xj1Fkjb2r2dgvJA",category:"serif",url:"https://fonts.gstatic.com/s/yujiboku/v8/P5sAzZybeNzXsA9xj1Fkjb2r2dgvJA.ttf",weight:400,isVariable:!1},{displayName:"Rosario",filename:"xfux0WDhWW_fOEoY6FT3zA7DpL4",category:"sans-serif",url:"https://fonts.gstatic.com/s/rosario/v35/xfux0WDhWW_fOEoY6FT3zA7DpL4.ttf",weight:400,isVariable:!0},{displayName:"ADLaM Display",filename:"KFOhCnGXkPOLlhx6jD8_b1ZECsHYkYBPY3o",category:"display",url:"https://fonts.gstatic.com/s/adlamdisplay/v1/KFOhCnGXkPOLlhx6jD8_b1ZECsHYkYBPY3o.ttf",weight:400,isVariable:!1},{displayName:"Modak",filename:"EJRYQgs1XtIEsnMH8BVZ76KU",category:"display",url:"https://fonts.gstatic.com/s/modak/v21/EJRYQgs1XtIEsnMH8BVZ76KU.ttf",weight:400,isVariable:!1},{displayName:"Megrim",filename:"46kulbz5WjvLqJZlbWXgd0RY1g",category:"display",url:"https://fonts.gstatic.com/s/megrim/v18/46kulbz5WjvLqJZlbWXgd0RY1g.ttf",weight:400,isVariable:!1},{displayName:"Vast Shadow",filename:"pe0qMImKOZ1V62ZwbVY9dfe6Kdpickwp",category:"serif",url:"https://fonts.gstatic.com/s/vastshadow/v21/pe0qMImKOZ1V62ZwbVY9dfe6Kdpickwp.ttf",weight:400,isVariable:!1},{displayName:"Trocchi",filename:"qWcqB6WkuIDxDZLcDrtUvMeTYD0",category:"serif",url:"https://fonts.gstatic.com/s/trocchi/v19/qWcqB6WkuIDxDZLcDrtUvMeTYD0.ttf",weight:400,isVariable:!1},{displayName:"Patrick Hand SC",filename:"0nkwC9f7MfsBiWcLtY65AWDK873ViSi6JQc7Vg",category:"handwriting",url:"https://fonts.gstatic.com/s/patrickhandsc/v17/0nkwC9f7MfsBiWcLtY65AWDK873ViSi6JQc7Vg.ttf",weight:400,isVariable:!1},{displayName:"Ubuntu Sans",filename:"co3CmWd6mSRtB7_9UaLWwIPJiXzr6FTJ",category:"sans-serif",url:"https://fonts.gstatic.com/s/ubuntusans/v4/co3CmWd6mSRtB7_9UaLWwIPJiXzr6FTJ.ttf",weight:400,isVariable:!0},{displayName:"Bowlby One",filename:"taiPGmVuC4y96PFeqp8smo6C_Z0wcK4",category:"display",url:"https://fonts.gstatic.com/s/bowlbyone/v25/taiPGmVuC4y96PFeqp8smo6C_Z0wcK4.ttf",weight:400,isVariable:!1},{displayName:"Saira Stencil One",filename:"SLXSc03I6HkvZGJ1GvvipLoYSTEL9AsMawif2YQ2",category:"display",url:"https://fonts.gstatic.com/s/sairastencilone/v18/SLXSc03I6HkvZGJ1GvvipLoYSTEL9AsMawif2YQ2.ttf",weight:400,isVariable:!1},{displayName:"Miriam Libre",filename:"DdTh798HsHwubBAqfkcBTL_vYJn_Teun9g",category:"sans-serif",url:"https://fonts.gstatic.com/s/miriamlibre/v19/DdTh798HsHwubBAqfkcBTL_vYJn_Teun9g.ttf",weight:400,isVariable:!0},{displayName:"Yusei Magic",filename:"yYLt0hbAyuCmoo5wlhPkpjHR-tdfcIT_",category:"sans-serif",url:"https://fonts.gstatic.com/s/yuseimagic/v16/yYLt0hbAyuCmoo5wlhPkpjHR-tdfcIT_.ttf",weight:400,isVariable:!1},{displayName:"Pixelify Sans",filename:"CHylV-3HFUT7aC4iv1TxGDR9FnoOimlReJw",category:"display",url:"https://fonts.gstatic.com/s/pixelifysans/v3/CHylV-3HFUT7aC4iv1TxGDR9FnoOimlReJw.ttf",weight:400,isVariable:!0},{displayName:"Tilt Neon",filename:"E21l_d7gguXdwD9LEFYsUwVUAuu3cw",category:"display",url:"https://fonts.gstatic.com/s/tiltneon/v12/E21l_d7gguXdwD9LEFYsUwVUAuu3cw.ttf",weight:400,isVariable:!1},{displayName:"Lexend Zetta",filename:"ll87K2KYXje7CdOFnEWcU8soliQejRR7AQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/lexendzetta/v32/ll87K2KYXje7CdOFnEWcU8soliQejRR7AQ.ttf",weight:400,isVariable:!0},{displayName:"Carrois Gothic",filename:"Z9XPDmFATg-N1PLtLOOxvIHl9ZmD3i7ajcJ-",category:"sans-serif",url:"https://fonts.gstatic.com/s/carroisgothic/v17/Z9XPDmFATg-N1PLtLOOxvIHl9ZmD3i7ajcJ-.ttf",weight:400,isVariable:!1},{displayName:"Carlito",filename:"3Jn9SDPw3m-pk039PDCLTXUETuE",category:"sans-serif",url:"https://fonts.gstatic.com/s/carlito/v4/3Jn9SDPw3m-pk039PDCLTXUETuE.ttf",weight:400,isVariable:!1},{displayName:"IM Fell English SC",filename:"a8IENpD3CDX-4zrWfr1VY879qFF05pZLO4gOg0shzA",category:"serif",url:"https://fonts.gstatic.com/s/imfellenglishsc/v16/a8IENpD3CDX-4zrWfr1VY879qFF05pZLO4gOg0shzA.ttf",weight:400,isVariable:!1},{displayName:"Sniglet",filename:"cIf9MaFLtkE3UjaJxCmrYGkHgIs",category:"display",url:"https://fonts.gstatic.com/s/sniglet/v18/cIf9MaFLtkE3UjaJxCmrYGkHgIs.ttf",weight:400,isVariable:!1},{displayName:"Average",filename:"fC1hPYBHe23MxA7rIeJwVWytTyk",category:"serif",url:"https://fonts.gstatic.com/s/average/v19/fC1hPYBHe23MxA7rIeJwVWytTyk.ttf",weight:400,isVariable:!1},{displayName:"Freehand",filename:"cIf-Ma5eqk01VjKTgAmBTmUOmZJk",category:"display",url:"https://fonts.gstatic.com/s/freehand/v34/cIf-Ma5eqk01VjKTgAmBTmUOmZJk.ttf",weight:400,isVariable:!1},{displayName:"Meddon",filename:"kmK8ZqA2EgDNeHTZhBdB3y_Aow",category:"handwriting",url:"https://fonts.gstatic.com/s/meddon/v27/kmK8ZqA2EgDNeHTZhBdB3y_Aow.ttf",weight:400,isVariable:!1},{displayName:"Copse",filename:"11hPGpDKz1rGb0djHkihUb-A",category:"serif",url:"https://fonts.gstatic.com/s/copse/v16/11hPGpDKz1rGb0djHkihUb-A.ttf",weight:400,isVariable:!1},{displayName:"Fauna One",filename:"wlpzgwTPBVpjpCuwkuEx2UxLYClOCg",category:"serif",url:"https://fonts.gstatic.com/s/faunaone/v16/wlpzgwTPBVpjpCuwkuEx2UxLYClOCg.ttf",weight:400,isVariable:!1},{displayName:"Encode Sans Semi Expanded",filename:"ke83OhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TC4o_LyjgOXc",category:"sans-serif",url:"https://fonts.gstatic.com/s/encodesanssemiexpanded/v20/ke83OhAPMEZs-BDuzwftTNJ85JvwMOzE9d9Cca5TC4o_LyjgOXc.ttf",weight:400,isVariable:!1},{displayName:"Lacquer",filename:"EYqzma1QwqpG4_BBB7-AXhttQ5I",category:"display",url:"https://fonts.gstatic.com/s/lacquer/v16/EYqzma1QwqpG4_BBB7-AXhttQ5I.ttf",weight:400,isVariable:!1},{displayName:"Baloo Thambi 2",filename:"cY9cfjeOW0NHpmOQXranrbDyu4hHBJOxZQPp",category:"display",url:"https://fonts.gstatic.com/s/baloothambi2/v22/cY9cfjeOW0NHpmOQXranrbDyu4hHBJOxZQPp.ttf",weight:400,isVariable:!0},{displayName:"Birthstone",filename:"8AtsGs2xO4yLRhy87sv_HLn5jRfZHzM",category:"handwriting",url:"https://fonts.gstatic.com/s/birthstone/v16/8AtsGs2xO4yLRhy87sv_HLn5jRfZHzM.ttf",weight:400,isVariable:!1},{displayName:"Fragment Mono",filename:"4iCr6K5wfMRRjxp0DA6-2CLnN4RNh4UI_1U",category:"monospace",url:"https://fonts.gstatic.com/s/fragmentmono/v6/4iCr6K5wfMRRjxp0DA6-2CLnN4RNh4UI_1U.ttf",weight:400,isVariable:!1},{displayName:"Funnel Display",filename:"B50WF7FGv37QNVWgE0ga--4PbY6aB4oWgWHB",category:"display",url:"https://fonts.gstatic.com/s/funneldisplay/v3/B50WF7FGv37QNVWgE0ga--4PbY6aB4oWgWHB.ttf",weight:400,isVariable:!0},{displayName:"Nova Mono",filename:"Cn-0JtiGWQ5Ajb--MRKfYGxYrdM9Sg",category:"monospace",url:"https://fonts.gstatic.com/s/novamono/v23/Cn-0JtiGWQ5Ajb--MRKfYGxYrdM9Sg.ttf",weight:400,isVariable:!1},{displayName:"Bubblegum Sans",filename:"AYCSpXb_Z9EORv1M5QTjEzMEtdaHzoPPb7R4",category:"display",url:"https://fonts.gstatic.com/s/bubblegumsans/v22/AYCSpXb_Z9EORv1M5QTjEzMEtdaHzoPPb7R4.ttf",weight:400,isVariable:!1},{displayName:"Ibarra Real Nova",filename:"sZlfdQiA-DBIDCcaWtQzL4BZHoiDoHxSENxuLuE",category:"serif",url:"https://fonts.gstatic.com/s/ibarrarealnova/v30/sZlfdQiA-DBIDCcaWtQzL4BZHoiDoHxSENxuLuE.ttf",weight:400,isVariable:!0},{displayName:"Gabriela",filename:"qkBWXvsO6sreR8E-b_m-zrpHmRzC",category:"serif",url:"https://fonts.gstatic.com/s/gabriela/v23/qkBWXvsO6sreR8E-b_m-zrpHmRzC.ttf",weight:400,isVariable:!1},{displayName:"Baloo Chettan 2",filename:"vm8udRbmXEva26PK-NtuX4ynWEzf4P17OpYDlg",category:"display",url:"https://fonts.gstatic.com/s/baloochettan2/v23/vm8udRbmXEva26PK-NtuX4ynWEzf4P17OpYDlg.ttf",weight:400,isVariable:!0},{displayName:"ZCOOL XiaoWei",filename:"i7dMIFFrTRywPpUVX9_RJyM1YFKQHwyVd3U",category:"sans-serif",url:"https://fonts.gstatic.com/s/zcoolxiaowei/v15/i7dMIFFrTRywPpUVX9_RJyM1YFKQHwyVd3U.ttf",weight:400,isVariable:!1},{displayName:"Barriecito",filename:"WWXXlj-CbBOSLY2QTuY_KdUiYwTO0MU",category:"display",url:"https://fonts.gstatic.com/s/barriecito/v18/WWXXlj-CbBOSLY2QTuY_KdUiYwTO0MU.ttf",weight:400,isVariable:!1},{displayName:"Sarina",filename:"-F6wfjF3ITQwasLhLkDUriBQxw",category:"display",url:"https://fonts.gstatic.com/s/sarina/v25/-F6wfjF3ITQwasLhLkDUriBQxw.ttf",weight:400,isVariable:!1},{displayName:"Syne Mono",filename:"K2FzfZNHj_FHBmRbFvHzIqCkDyvqZA",category:"monospace",url:"https://fonts.gstatic.com/s/synemono/v16/K2FzfZNHj_FHBmRbFvHzIqCkDyvqZA.ttf",weight:400,isVariable:!1},{displayName:"Pathway Extreme",filename:"neITzCC3pJ0rsaH2_sD-QttXPfDVqVkarSqSwA",category:"sans-serif",url:"https://fonts.gstatic.com/s/pathwayextreme/v7/neITzCC3pJ0rsaH2_sD-QttXPfDVqVkarSqSwA.ttf",weight:400,isVariable:!0},{displayName:"Gurajada",filename:"FwZY7-Qx308m-l-0Kd6A4sijpFu_",category:"sans-serif",url:"https://fonts.gstatic.com/s/gurajada/v22/FwZY7-Qx308m-l-0Kd6A4sijpFu_.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Sinhala",filename:"yMJIMJBya43H0SUF_WmcBEEf4rQVO3ny-WmZp1A3",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssinhala/v36/yMJIMJBya43H0SUF_WmcBEEf4rQVO3ny-WmZp1A3.ttf",weight:400,isVariable:!0},{displayName:"Bayon",filename:"9XUrlJNmn0LPFl-pOhYEd2NJ",category:"sans-serif",url:"https://fonts.gstatic.com/s/bayon/v36/9XUrlJNmn0LPFl-pOhYEd2NJ.ttf",weight:400,isVariable:!1},{displayName:"Bigshot One",filename:"u-470qukhRkkO6BD_7cM_gxuUQJBXv_-",category:"display",url:"https://fonts.gstatic.com/s/bigshotone/v31/u-470qukhRkkO6BD_7cM_gxuUQJBXv_-.ttf",weight:400,isVariable:!1},{displayName:"BIZ UDPMincho",filename:"ypvfbXOBrmYppy7oWWTg1_58nhhYtUb0gZk",category:"serif",url:"https://fonts.gstatic.com/s/bizudpmincho/v11/ypvfbXOBrmYppy7oWWTg1_58nhhYtUb0gZk.ttf",weight:400,isVariable:!1},{displayName:"Cherry Bomb One",filename:"y83DW4od1h6KlV3c6JJhRhGOdhrKDNpF41fr-w",category:"display",url:"https://fonts.gstatic.com/s/cherrybombone/v11/y83DW4od1h6KlV3c6JJhRhGOdhrKDNpF41fr-w.ttf",weight:400,isVariable:!1},{displayName:"Scada",filename:"RLpxK5Pv5qumeWJoxzUobkvv",category:"sans-serif",url:"https://fonts.gstatic.com/s/scada/v16/RLpxK5Pv5qumeWJoxzUobkvv.ttf",weight:400,isVariable:!1},{displayName:"Amarante",filename:"xMQXuF1KTa6EvGx9bq-3C3rAmD-b",category:"display",url:"https://fonts.gstatic.com/s/amarante/v30/xMQXuF1KTa6EvGx9bq-3C3rAmD-b.ttf",weight:400,isVariable:!1},{displayName:"Quando",filename:"xMQVuFNaVa6YuW0pC6WzKX_QmA",category:"serif",url:"https://fonts.gstatic.com/s/quando/v18/xMQVuFNaVa6YuW0pC6WzKX_QmA.ttf",weight:400,isVariable:!1},{displayName:"IBM Plex Sans Hebrew",filename:"BCa2qYENg9Kw1mpLpO0bGM5lfHAAZHhDXH2l8Fk3rSaM",category:"sans-serif",url:"https://fonts.gstatic.com/s/ibmplexsanshebrew/v12/BCa2qYENg9Kw1mpLpO0bGM5lfHAAZHhDXH2l8Fk3rSaM.ttf",weight:400,isVariable:!1},{displayName:"Recursive",filename:"8vIK7wMr0mhh-RQChyHeFGxbO_zo-w",category:"sans-serif",url:"https://fonts.gstatic.com/s/recursive/v44/8vIK7wMr0mhh-RQChyHeFGxbO_zo-w.ttf",weight:400,isVariable:!0},{displayName:"Agdasima",filename:"PN_zRfyxp2f1fUCgAMg6rzjb_-Da",category:"sans-serif",url:"https://fonts.gstatic.com/s/agdasima/v5/PN_zRfyxp2f1fUCgAMg6rzjb_-Da.ttf",weight:400,isVariable:!1},{displayName:"David Libre",filename:"snfus0W_99N64iuYSvp4W_l86p6TYS-Y",category:"serif",url:"https://fonts.gstatic.com/s/davidlibre/v17/snfus0W_99N64iuYSvp4W_l86p6TYS-Y.ttf",weight:400,isVariable:!1},{displayName:"Inria Sans",filename:"ptRMTiqXYfZMCOiVj9kQ5O7yKQNute8",category:"sans-serif",url:"https://fonts.gstatic.com/s/inriasans/v15/ptRMTiqXYfZMCOiVj9kQ5O7yKQNute8.ttf",weight:400,isVariable:!1},{displayName:"Mouse Memoirs",filename:"t5tmIRoSNJ-PH0WNNgDYxdSb7TnFrpOHYh4",category:"sans-serif",url:"https://fonts.gstatic.com/s/mousememoirs/v19/t5tmIRoSNJ-PH0WNNgDYxdSb7TnFrpOHYh4.ttf",weight:400,isVariable:!1},{displayName:"Hurricane",filename:"pe0sMIuULZxTolZ5YldyAv2-C99ycg",category:"handwriting",url:"https://fonts.gstatic.com/s/hurricane/v9/pe0sMIuULZxTolZ5YldyAv2-C99ycg.ttf",weight:400,isVariable:!1},{displayName:"Skranji",filename:"OZpDg_dtriVFNerMYzuuklTm3Ek",category:"display",url:"https://fonts.gstatic.com/s/skranji/v14/OZpDg_dtriVFNerMYzuuklTm3Ek.ttf",weight:400,isVariable:!1},{displayName:"IM Fell DW Pica",filename:"2sDGZGRQotv9nbn2qSl0TxXVYNw9ZAPUvi88MQ",category:"serif",url:"https://fonts.gstatic.com/s/imfelldwpica/v16/2sDGZGRQotv9nbn2qSl0TxXVYNw9ZAPUvi88MQ.ttf",weight:400,isVariable:!1},{displayName:"Fanwood Text",filename:"3XFtErwl05Ad_vSCF6Fq7xXGRdbY1P1Sbg",category:"serif",url:"https://fonts.gstatic.com/s/fanwoodtext/v17/3XFtErwl05Ad_vSCF6Fq7xXGRdbY1P1Sbg.ttf",weight:400,isVariable:!1},{displayName:"Kadwa",filename:"rnCm-x5V0g7iphTHRcc2s2XH",category:"serif",url:"https://fonts.gstatic.com/s/kadwa/v13/rnCm-x5V0g7iphTHRcc2s2XH.ttf",weight:400,isVariable:!1},{displayName:"Radio Canada Big",filename:"LYjZdHrinEImAoQewU0hyTsPFra4eJSY8z6Np1k",category:"sans-serif",url:"https://fonts.gstatic.com/s/radiocanadabig/v3/LYjZdHrinEImAoQewU0hyTsPFra4eJSY8z6Np1k.ttf",weight:400,isVariable:!0},{displayName:"Rambla",filename:"snfrs0ip98hx6mr0I7IONthkwQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/rambla/v14/snfrs0ip98hx6mr0I7IONthkwQ.ttf",weight:400,isVariable:!1},{displayName:"Magra",filename:"uK_94ruaZus72k5xIDMfO-ed",category:"sans-serif",url:"https://fonts.gstatic.com/s/magra/v15/uK_94ruaZus72k5xIDMfO-ed.ttf",weight:400,isVariable:!1},{displayName:"Sansita Swashed",filename:"BXRzvFfZifTZgFlDDLgNkBydPKT31beyoRkJIA",category:"display",url:"https://fonts.gstatic.com/s/sansitaswashed/v23/BXRzvFfZifTZgFlDDLgNkBydPKT31beyoRkJIA.ttf",weight:400,isVariable:!0},{displayName:"Zen Dots",filename:"XRXX3ICfm00IGoesQeaETM_FcCIG",category:"display",url:"https://fonts.gstatic.com/s/zendots/v14/XRXX3ICfm00IGoesQeaETM_FcCIG.ttf",weight:400,isVariable:!1},{displayName:"Alike",filename:"HI_EiYEYI6BIoEjBSZXAQ4-d",category:"serif",url:"https://fonts.gstatic.com/s/alike/v22/HI_EiYEYI6BIoEjBSZXAQ4-d.ttf",weight:400,isVariable:!1},{displayName:"Sunflower",filename:"RWmPoKeF8fUjqIj7Vc-06MfiqYsGBGBzCw",category:"sans-serif",url:"https://fonts.gstatic.com/s/sunflower/v18/RWmPoKeF8fUjqIj7Vc-06MfiqYsGBGBzCw.ttf",weight:300,isVariable:!1},{displayName:"Spectral SC",filename:"KtkpALCRZonmalTgyPmRfvWi6WDfFpuc",category:"serif",url:"https://fonts.gstatic.com/s/spectralsc/v15/KtkpALCRZonmalTgyPmRfvWi6WDfFpuc.ttf",weight:400,isVariable:!1},{displayName:"Metamorphous",filename:"Wnz8HA03aAXcC39ZEX5y1330PCCthTsmaQ",category:"display",url:"https://fonts.gstatic.com/s/metamorphous/v22/Wnz8HA03aAXcC39ZEX5y1330PCCthTsmaQ.ttf",weight:400,isVariable:!1},{displayName:"Marvel",filename:"nwpVtKeoNgBV0qaIkV7ED366zg",category:"sans-serif",url:"https://fonts.gstatic.com/s/marvel/v17/nwpVtKeoNgBV0qaIkV7ED366zg.ttf",weight:400,isVariable:!1},{displayName:"Medula One",filename:"YA9Wr0qb5kjJM6l2V0yukiEqs7GtlvY",category:"display",url:"https://fonts.gstatic.com/s/medulaone/v20/YA9Wr0qb5kjJM6l2V0yukiEqs7GtlvY.ttf",weight:400,isVariable:!1},{displayName:"Della Respira",filename:"RLp5K5v44KaueWI6iEJQBiGPRfkSu6EuTHo",category:"serif",url:"https://fonts.gstatic.com/s/dellarespira/v24/RLp5K5v44KaueWI6iEJQBiGPRfkSu6EuTHo.ttf",weight:400,isVariable:!1},{displayName:"KoHo",filename:"K2F-fZ5fmddNBikefJbSOos",category:"sans-serif",url:"https://fonts.gstatic.com/s/koho/v18/K2F-fZ5fmddNBikefJbSOos.ttf",weight:400,isVariable:!1},{displayName:"Fasthand",filename:"0yb9GDohyKTYn_ZEESkuYkw2rQg1",category:"display",url:"https://fonts.gstatic.com/s/fasthand/v33/0yb9GDohyKTYn_ZEESkuYkw2rQg1.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Hebrew",filename:"k3kKo9MMPvpLmixYH7euCwmkS9Dohi_-2KiSGg-H",category:"serif",url:"https://fonts.gstatic.com/s/notoserifhebrew/v30/k3kKo9MMPvpLmixYH7euCwmkS9Dohi_-2KiSGg-H.ttf",weight:400,isVariable:!0},{displayName:"Bokor",filename:"m8JcjfpeeaqTiR2WdInbcaxE",category:"display",url:"https://fonts.gstatic.com/s/bokor/v32/m8JcjfpeeaqTiR2WdInbcaxE.ttf",weight:400,isVariable:!1},{displayName:"Ruslan Display",filename:"Gw6jwczl81XcIZuckK_e3UpfdzxrldyFvm1n",category:"display",url:"https://fonts.gstatic.com/s/ruslandisplay/v27/Gw6jwczl81XcIZuckK_e3UpfdzxrldyFvm1n.ttf",weight:400,isVariable:!1},{displayName:"Rasa",filename:"xn7vYHIn1mWmTqJelgiQV9w",category:"serif",url:"https://fonts.gstatic.com/s/rasa/v27/xn7vYHIn1mWmTqJelgiQV9w.ttf",weight:400,isVariable:!0},{displayName:"Qwigley",filename:"1cXzaU3UGJb5tGoCuVxsi1mBmcE",category:"handwriting",url:"https://fonts.gstatic.com/s/qwigley/v20/1cXzaU3UGJb5tGoCuVxsi1mBmcE.ttf",weight:400,isVariable:!1},{displayName:"Mallanna",filename:"hv-Vlzx-KEQb84YaDGwzEzRwVvJ-",category:"sans-serif",url:"https://fonts.gstatic.com/s/mallanna/v15/hv-Vlzx-KEQb84YaDGwzEzRwVvJ-.ttf",weight:400,isVariable:!1},{displayName:"Sue Ellen Francisco",filename:"wXK3E20CsoJ9j1DDkjHcQ5ZL8xRaxru9ropF2lqk9H4",category:"handwriting",url:"https://fonts.gstatic.com/s/sueellenfrancisco/v22/wXK3E20CsoJ9j1DDkjHcQ5ZL8xRaxru9ropF2lqk9H4.ttf",weight:400,isVariable:!1},{displayName:"Seaweed Script",filename:"bx6cNx6Tne2pxOATYE8C_Rsoe0WJ-KcGVbLW",category:"display",url:"https://fonts.gstatic.com/s/seaweedscript/v17/bx6cNx6Tne2pxOATYE8C_Rsoe0WJ-KcGVbLW.ttf",weight:400,isVariable:!1},{displayName:"Atma",filename:"uK_84rqWc-Eom25bDj8WIv4",category:"display",url:"https://fonts.gstatic.com/s/atma/v19/uK_84rqWc-Eom25bDj8WIv4.ttf",weight:400,isVariable:!1},{displayName:"Jaldi",filename:"or3sQ67z0_CI30NUZpD_B6g8",category:"sans-serif",url:"https://fonts.gstatic.com/s/jaldi/v14/or3sQ67z0_CI30NUZpD_B6g8.ttf",weight:400,isVariable:!1},{displayName:"Jomhuria",filename:"Dxxp8j-TMXf-llKur2b1MOGbC3Dh",category:"display",url:"https://fonts.gstatic.com/s/jomhuria/v22/Dxxp8j-TMXf-llKur2b1MOGbC3Dh.ttf",weight:400,isVariable:!1},{displayName:"Tienne",filename:"AYCKpX7pe9YCRP0LkEPHSFNyxw",category:"serif",url:"https://fonts.gstatic.com/s/tienne/v21/AYCKpX7pe9YCRP0LkEPHSFNyxw.ttf",weight:400,isVariable:!1},{displayName:"Notable",filename:"gNMEW3N_SIqx-WX9-HMoFIez5MI",category:"sans-serif",url:"https://fonts.gstatic.com/s/notable/v20/gNMEW3N_SIqx-WX9-HMoFIez5MI.ttf",weight:400,isVariable:!1},{displayName:"Slackey",filename:"N0bV2SdQO-5yM0-dKlRaJdbWgdY",category:"display",url:"https://fonts.gstatic.com/s/slackey/v29/N0bV2SdQO-5yM0-dKlRaJdbWgdY.ttf",weight:400,isVariable:!1},{displayName:"Zen Antique",filename:"AYCPpXPnd91Ma_Zf-Ri2JXJq7PKP5Z_G",category:"serif",url:"https://fonts.gstatic.com/s/zenantique/v14/AYCPpXPnd91Ma_Zf-Ri2JXJq7PKP5Z_G.ttf",weight:400,isVariable:!1},{displayName:"Afacad Flux",filename:"9oRKNYYQryMlneUPykRmTvvzM83LHq0O",category:"sans-serif",url:"https://fonts.gstatic.com/s/afacadflux/v4/9oRKNYYQryMlneUPykRmTvvzM83LHq0O.ttf",weight:400,isVariable:!0},{displayName:"Corinthia",filename:"wEO_EBrAnchaJyPMHE0FUfAL3EsHiA",category:"handwriting",url:"https://fonts.gstatic.com/s/corinthia/v13/wEO_EBrAnchaJyPMHE0FUfAL3EsHiA.ttf",weight:400,isVariable:!1},{displayName:"Vibur",filename:"DPEiYwmEzw0QRjTpLjoJd-Xa",category:"handwriting",url:"https://fonts.gstatic.com/s/vibur/v24/DPEiYwmEzw0QRjTpLjoJd-Xa.ttf",weight:400,isVariable:!1},{displayName:"Kalnia",filename:"11hAGpPCwUbbYwZDNGatWKaZ3g",category:"serif",url:"https://fonts.gstatic.com/s/kalnia/v6/11hAGpPCwUbbYwZDNGatWKaZ3g.ttf",weight:400,isVariable:!0},{displayName:"Fuzzy Bubbles",filename:"6qLGKZMbrgv9pwtjPEVNV0F2NnP5Zxsreko",category:"handwriting",url:"https://fonts.gstatic.com/s/fuzzybubbles/v9/6qLGKZMbrgv9pwtjPEVNV0F2NnP5Zxsreko.ttf",weight:400,isVariable:!1},{displayName:"Voltaire",filename:"1Pttg8PcRfSblAvGvQooYKVnBOif",category:"sans-serif",url:"https://fonts.gstatic.com/s/voltaire/v23/1Pttg8PcRfSblAvGvQooYKVnBOif.ttf",weight:400,isVariable:!1},{displayName:"Meie Script",filename:"_LOImzDK7erRjhunIspaMjxn5IXg0WDz",category:"handwriting",url:"https://fonts.gstatic.com/s/meiescript/v22/_LOImzDK7erRjhunIspaMjxn5IXg0WDz.ttf",weight:400,isVariable:!1},{displayName:"Farro",filename:"i7dEIFl3byGNHZVNHLq2cV5d",category:"sans-serif",url:"https://fonts.gstatic.com/s/farro/v15/i7dEIFl3byGNHZVNHLq2cV5d.ttf",weight:400,isVariable:!1},{displayName:"WindSong",filename:"KR1WBsyu-P-GFEW57r95HdG6vjH3",category:"handwriting",url:"https://fonts.gstatic.com/s/windsong/v13/KR1WBsyu-P-GFEW57r95HdG6vjH3.ttf",weight:400,isVariable:!1},{displayName:"Baloo Paaji 2",filename:"i7dMIFFzbz-QHZUdV9_UGWZuYFKQHwyVd3U",category:"display",url:"https://fonts.gstatic.com/s/baloopaaji2/v29/i7dMIFFzbz-QHZUdV9_UGWZuYFKQHwyVd3U.ttf",weight:400,isVariable:!0},{displayName:"Allan",filename:"ea8XadU7WuTxEtb2P9SF8nZE",category:"display",url:"https://fonts.gstatic.com/s/allan/v26/ea8XadU7WuTxEtb2P9SF8nZE.ttf",weight:400,isVariable:!1},{displayName:"Piazzolla",filename:"N0bX2SlTPu5rIkWIZjVQIfTTkdbJYA",category:"serif",url:"https://fonts.gstatic.com/s/piazzolla/v40/N0bX2SlTPu5rIkWIZjVQIfTTkdbJYA.ttf",weight:400,isVariable:!0},{displayName:"Cambay",filename:"SLXJc1rY6H0_ZDsGbrSIz9JsaA",category:"sans-serif",url:"https://fonts.gstatic.com/s/cambay/v14/SLXJc1rY6H0_ZDsGbrSIz9JsaA.ttf",weight:400,isVariable:!1},{displayName:"Gotu",filename:"o-0FIpksx3QOlH0Lioh6-hU",category:"sans-serif",url:"https://fonts.gstatic.com/s/gotu/v18/o-0FIpksx3QOlH0Lioh6-hU.ttf",weight:400,isVariable:!1},{displayName:"Thasadith",filename:"mtG44_1TIqPYrd_f5R1YsEkU0CWuFw",category:"sans-serif",url:"https://fonts.gstatic.com/s/thasadith/v13/mtG44_1TIqPYrd_f5R1YsEkU0CWuFw.ttf",weight:400,isVariable:!1},{displayName:"Coustard",filename:"3XFpErgg3YsZ5fqUU9UPvWXuROTd",category:"serif",url:"https://fonts.gstatic.com/s/coustard/v17/3XFpErgg3YsZ5fqUU9UPvWXuROTd.ttf",weight:400,isVariable:!1},{displayName:"Anybody",filename:"VuJxdNvK2Ib2ppdWeKbXOIFneRo",category:"display",url:"https://fonts.gstatic.com/s/anybody/v13/VuJxdNvK2Ib2ppdWeKbXOIFneRo.ttf",weight:400,isVariable:!0},{displayName:"Inder",filename:"w8gUH2YoQe8_4vq6pw-P3U4O",category:"sans-serif",url:"https://fonts.gstatic.com/s/inder/v15/w8gUH2YoQe8_4vq6pw-P3U4O.ttf",weight:400,isVariable:!1},{displayName:"Qwitcher Grypen",filename:"pxicypclp9tDilN9RrC5BSI1dZmrSGNAom-wpw",category:"handwriting",url:"https://fonts.gstatic.com/s/qwitchergrypen/v8/pxicypclp9tDilN9RrC5BSI1dZmrSGNAom-wpw.ttf",weight:400,isVariable:!1},{displayName:"Aguafina Script",filename:"If2QXTv_ZzSxGIO30LemWEOmt1bHqs4pgicOrg",category:"handwriting",url:"https://fonts.gstatic.com/s/aguafinascript/v24/If2QXTv_ZzSxGIO30LemWEOmt1bHqs4pgicOrg.ttf",weight:400,isVariable:!1},{displayName:"Wendy One",filename:"2sDcZGJOipXfgfXV5wgDb2-4C7wFZQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/wendyone/v20/2sDcZGJOipXfgfXV5wgDb2-4C7wFZQ.ttf",weight:400,isVariable:!1},{displayName:"Coiny",filename:"gyByhwU1K989PXwbElSvO5Tc",category:"display",url:"https://fonts.gstatic.com/s/coiny/v17/gyByhwU1K989PXwbElSvO5Tc.ttf",weight:400,isVariable:!1},{displayName:"Prosto One",filename:"OpNJno4VhNfK-RgpwWWxpipfWhXD00c",category:"display",url:"https://fonts.gstatic.com/s/prostoone/v21/OpNJno4VhNfK-RgpwWWxpipfWhXD00c.ttf",weight:400,isVariable:!1},{displayName:"Hanuman",filename:"VuJxdNvD15HhpJJBeKbXOIFneRo",category:"serif",url:"https://fonts.gstatic.com/s/hanuman/v24/VuJxdNvD15HhpJJBeKbXOIFneRo.ttf",weight:400,isVariable:!0},{displayName:"Baloo Tamma 2",filename:"vEFX2_hCAgcR46PaajtrYlBbT0g21tqeR7c",category:"display",url:"https://fonts.gstatic.com/s/balootamma2/v20/vEFX2_hCAgcR46PaajtrYlBbT0g21tqeR7c.ttf",weight:400,isVariable:!0},{displayName:"Battambang",filename:"uk-mEGe7raEw-HjkzZabDnWj4yxx7o8",category:"display",url:"https://fonts.gstatic.com/s/battambang/v26/uk-mEGe7raEw-HjkzZabDnWj4yxx7o8.ttf",weight:400,isVariable:!1},{displayName:"Happy Monkey",filename:"K2F2fZZcl-9SXwl5F_C4R_OABwD2bWqVjw",category:"display",url:"https://fonts.gstatic.com/s/happymonkey/v15/K2F2fZZcl-9SXwl5F_C4R_OABwD2bWqVjw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Lao Looped",filename:"a8IGNpbwKmHXpgXbMIsbSMP7-3U72qUOX4IKoU4xzO9n",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanslaolooped/v10/a8IGNpbwKmHXpgXbMIsbSMP7-3U72qUOX4IKoU4xzO9n.ttf",weight:400,isVariable:!0},{displayName:"Euphoria Script",filename:"mFTpWb0X2bLb_cx6To2B8GpKoD5ak_ZT1D8x7Q",category:"handwriting",url:"https://fonts.gstatic.com/s/euphoriascript/v22/mFTpWb0X2bLb_cx6To2B8GpKoD5ak_ZT1D8x7Q.ttf",weight:400,isVariable:!1},{displayName:"Kurale",filename:"4iCs6KV9e9dXjho6eAT3v02QFg",category:"serif",url:"https://fonts.gstatic.com/s/kurale/v14/4iCs6KV9e9dXjho6eAT3v02QFg.ttf",weight:400,isVariable:!1},{displayName:"Rouge Script",filename:"LYjFdGbiklMoCIQOw1Ep3S4PVPXbUJWq9g",category:"handwriting",url:"https://fonts.gstatic.com/s/rougescript/v20/LYjFdGbiklMoCIQOw1Ep3S4PVPXbUJWq9g.ttf",weight:400,isVariable:!1},{displayName:"Kaisei Opti",filename:"QldKNThJphYb8_g6c2nlIFle7KlmxuHx",category:"serif",url:"https://fonts.gstatic.com/s/kaiseiopti/v11/QldKNThJphYb8_g6c2nlIFle7KlmxuHx.ttf",weight:400,isVariable:!1},{displayName:"Give You Glory",filename:"8QIQdiHOgt3vv4LR7ahjw9-XYc1zB4ZD6rwa",category:"handwriting",url:"https://fonts.gstatic.com/s/giveyouglory/v17/8QIQdiHOgt3vv4LR7ahjw9-XYc1zB4ZD6rwa.ttf",weight:400,isVariable:!1},{displayName:"Kelly Slab",filename:"-W_7XJX0Rz3cxUnJC5t6TkMBf50kbiM",category:"display",url:"https://fonts.gstatic.com/s/kellyslab/v18/-W_7XJX0Rz3cxUnJC5t6TkMBf50kbiM.ttf",weight:400,isVariable:!1},{displayName:"Capriola",filename:"wXKoE3YSppcvo1PDln_8L-AinG8y",category:"sans-serif",url:"https://fonts.gstatic.com/s/capriola/v15/wXKoE3YSppcvo1PDln_8L-AinG8y.ttf",weight:400,isVariable:!1},{displayName:"Kufam",filename:"C8ct4cY7pG7w_p6CLDwZwmGE",category:"sans-serif",url:"https://fonts.gstatic.com/s/kufam/v26/C8ct4cY7pG7w_p6CLDwZwmGE.ttf",weight:400,isVariable:!0},{displayName:"Unkempt",filename:"2EbnL-Z2DFZue0DSSYYf8z2Yt_c",category:"display",url:"https://fonts.gstatic.com/s/unkempt/v22/2EbnL-Z2DFZue0DSSYYf8z2Yt_c.ttf",weight:400,isVariable:!1},{displayName:"Chelsea Market",filename:"BCawqZsHqfr89WNP_IApC8tzKBhlLA4uKkWk",category:"display",url:"https://fonts.gstatic.com/s/chelseamarket/v14/BCawqZsHqfr89WNP_IApC8tzKBhlLA4uKkWk.ttf",weight:400,isVariable:!1},{displayName:"Asul",filename:"VuJ-dNjKxYr46fMFXK78JIg",category:"serif",url:"https://fonts.gstatic.com/s/asul/v22/VuJ-dNjKxYr46fMFXK78JIg.ttf",weight:400,isVariable:!1},{displayName:"Poetsen One",filename:"ke8hOgIaMUB37xCgvCntWtIvq_KREbG9",category:"display",url:"https://fonts.gstatic.com/s/poetsenone/v3/ke8hOgIaMUB37xCgvCntWtIvq_KREbG9.ttf",weight:400,isVariable:!1},{displayName:"Sofadi One",filename:"JIA2UVBxdnVBuElZaMFGcDOIETkmYDU",category:"display",url:"https://fonts.gstatic.com/s/sofadione/v22/JIA2UVBxdnVBuElZaMFGcDOIETkmYDU.ttf",weight:400,isVariable:!1},{displayName:"Expletus Sans",filename:"RLp5K5v5_bqufTYdnhFzDj2dRfkSu6EuTHo",category:"display",url:"https://fonts.gstatic.com/s/expletussans/v31/RLp5K5v5_bqufTYdnhFzDj2dRfkSu6EuTHo.ttf",weight:400,isVariable:!0},{displayName:"Anaheim",filename:"8vII7w042Wp87g4G0UTUEE5eK_w",category:"sans-serif",url:"https://fonts.gstatic.com/s/anaheim/v17/8vII7w042Wp87g4G0UTUEE5eK_w.ttf",weight:400,isVariable:!0},{displayName:"Bakbak One",filename:"zOL54pXAl6RI-p_ardnuycRuv-hHkOs",category:"display",url:"https://fonts.gstatic.com/s/bakbakone/v11/zOL54pXAl6RI-p_ardnuycRuv-hHkOs.ttf",weight:400,isVariable:!1},{displayName:"Molengo",filename:"I_uuMpWeuBzZNBtQbbRQkiCvs5Y",category:"sans-serif",url:"https://fonts.gstatic.com/s/molengo/v17/I_uuMpWeuBzZNBtQbbRQkiCvs5Y.ttf",weight:400,isVariable:!1},{displayName:"Oregano",filename:"If2IXTPxciS3H4S2kZffPznO3yM",category:"display",url:"https://fonts.gstatic.com/s/oregano/v17/If2IXTPxciS3H4S2kZffPznO3yM.ttf",weight:400,isVariable:!1},{displayName:"Fresca",filename:"6ae94K--SKgCzbM2Gr0W13DKPA",category:"sans-serif",url:"https://fonts.gstatic.com/s/fresca/v24/6ae94K--SKgCzbM2Gr0W13DKPA.ttf",weight:400,isVariable:!1},{displayName:"Vujahday Script",filename:"RWmQoKGA8fEkrIPtSZ3_J7er2dUiDEtvAlaMKw",category:"handwriting",url:"https://fonts.gstatic.com/s/vujahdayscript/v10/RWmQoKGA8fEkrIPtSZ3_J7er2dUiDEtvAlaMKw.ttf",weight:400,isVariable:!1},{displayName:"Julee",filename:"TuGfUVB3RpZPQ6ZLodgzydtk",category:"handwriting",url:"https://fonts.gstatic.com/s/julee/v26/TuGfUVB3RpZPQ6ZLodgzydtk.ttf",weight:400,isVariable:!1},{displayName:"Kablammo",filename:"bWt77fHPcgrhC-J3ld_qU8Z0WH5p",category:"display",url:"https://fonts.gstatic.com/s/kablammo/v4/bWt77fHPcgrhC-J3ld_qU8Z0WH5p.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Khojki",filename:"I_u0MoOduATTei9aP90ctmPGxP2rBL7HwJfIeG71",category:"serif",url:"https://fonts.gstatic.com/s/notoserifkhojki/v13/I_u0MoOduATTei9aP90ctmPGxP2rBL7HwJfIeG71.ttf",weight:400,isVariable:!0},{displayName:"Reddit Sans Condensed",filename:"m8JMjepOc6WYkkm2Dey9A5QGAQXmuL3va5IFbehGW74OXw",category:"sans-serif",url:"https://fonts.gstatic.com/s/redditsanscondensed/v5/m8JMjepOc6WYkkm2Dey9A5QGAQXmuL3va5IFbehGW74OXw.ttf",weight:400,isVariable:!0},{displayName:"AR One Sans",filename:"TUZ0zwhrmbFp0Srr_tH6fuSaU5EP1H3r",category:"sans-serif",url:"https://fonts.gstatic.com/s/aronesans/v6/TUZ0zwhrmbFp0Srr_tH6fuSaU5EP1H3r.ttf",weight:400,isVariable:!0},{displayName:"Esteban",filename:"r05bGLZE-bdGdN-GdOuD5jokU8E",category:"serif",url:"https://fonts.gstatic.com/s/esteban/v16/r05bGLZE-bdGdN-GdOuD5jokU8E.ttf",weight:400,isVariable:!1},{displayName:"Mr De Haviland",filename:"OpNVnooIhJj96FdB73296ksbOj3C4ULVNTlB",category:"handwriting",url:"https://fonts.gstatic.com/s/mrdehaviland/v15/OpNVnooIhJj96FdB73296ksbOj3C4ULVNTlB.ttf",weight:400,isVariable:!1},{displayName:"Supermercado One",filename:"OpNXnpQWg8jc_xps_Gi14kVVEXOn60b3MClBRTs",category:"display",url:"https://fonts.gstatic.com/s/supermercadoone/v29/OpNXnpQWg8jc_xps_Gi14kVVEXOn60b3MClBRTs.ttf",weight:400,isVariable:!1},{displayName:"Goblin One",filename:"CSR64z1ZnOqZRjRCBVY_TOcATNt_pOU",category:"display",url:"https://fonts.gstatic.com/s/goblinone/v28/CSR64z1ZnOqZRjRCBVY_TOcATNt_pOU.ttf",weight:400,isVariable:!1},{displayName:"Loved by the King",filename:"Gw6gwdP76VDVJNXerebZxUMeRXUF2PiNlXFu2R64",category:"handwriting",url:"https://fonts.gstatic.com/s/lovedbytheking/v24/Gw6gwdP76VDVJNXerebZxUMeRXUF2PiNlXFu2R64.ttf",weight:400,isVariable:!1},{displayName:"B612",filename:"3JnySDDxiSz32jm4GDigUXw",category:"sans-serif",url:"https://fonts.gstatic.com/s/b612/v13/3JnySDDxiSz32jm4GDigUXw.ttf",weight:400,isVariable:!1},{displayName:"Federo",filename:"iJWFBX-cbD_ETsbmjVOe2WTG7Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/federo/v20/iJWFBX-cbD_ETsbmjVOe2WTG7Q.ttf",weight:400,isVariable:!1},{displayName:"Aref Ruqaa",filename:"WwkbxPW1E165rajQKDulEIAiVNo5xNY",category:"serif",url:"https://fonts.gstatic.com/s/arefruqaa/v26/WwkbxPW1E165rajQKDulEIAiVNo5xNY.ttf",weight:400,isVariable:!1},{displayName:"Poly",filename:"MQpb-W6wKNitRLCAq2Lpris",category:"serif",url:"https://fonts.gstatic.com/s/poly/v18/MQpb-W6wKNitRLCAq2Lpris.ttf",weight:400,isVariable:!1},{displayName:"Bungee Shade",filename:"DtVkJxarWL0t2KdzK3oI_jks7iLSrwFUlw",category:"display",url:"https://fonts.gstatic.com/s/bungeeshade/v17/DtVkJxarWL0t2KdzK3oI_jks7iLSrwFUlw.ttf",weight:400,isVariable:!1},{displayName:"Vesper Libre",filename:"bx6CNxyWnf-uxPdXDHUD_Rd4D0-N2qIWVQ",category:"serif",url:"https://fonts.gstatic.com/s/vesperlibre/v21/bx6CNxyWnf-uxPdXDHUD_Rd4D0-N2qIWVQ.ttf",weight:400,isVariable:!1},{displayName:"Big Shoulders",filename:"qFdC35CPh40oITJ69S3GFqy54h8ij1I7LLE",category:"display",url:"https://fonts.gstatic.com/s/bigshoulders/v4/qFdC35CPh40oITJ69S3GFqy54h8ij1I7LLE.ttf",weight:400,isVariable:!0},{displayName:"Special Gothic",filename:"1q2fY5WcG0Fg_v0fHc8BvIZ252ThVIGpgnxL",category:"sans-serif",url:"https://fonts.gstatic.com/s/specialgothic/v3/1q2fY5WcG0Fg_v0fHc8BvIZ252ThVIGpgnxL.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Devanagari",filename:"x3d-cl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4djEWqKMxsKw",category:"serif",url:"https://fonts.gstatic.com/s/notoserifdevanagari/v34/x3d-cl3IZKmUqiMk48ZHXJ5jwU-DZGRSaQ4djEWqKMxsKw.ttf",weight:400,isVariable:!0},{displayName:"MedievalSharp",filename:"EvOJzAlL3oU5AQl2mP5KdgptAq96MwvXLDk",category:"display",url:"https://fonts.gstatic.com/s/medievalsharp/v28/EvOJzAlL3oU5AQl2mP5KdgptAq96MwvXLDk.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Myanmar",filename:"AlZq_y1ZtY3ymOryg38hOCSdOnFq0En23OU4o1AC",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmyanmar/v21/AlZq_y1ZtY3ymOryg38hOCSdOnFq0En23OU4o1AC.ttf",weight:400,isVariable:!1},{displayName:"Kodchasan",filename:"1cXxaUPOAJv9sG4I-DJmj3uEicG01A",category:"sans-serif",url:"https://fonts.gstatic.com/s/kodchasan/v20/1cXxaUPOAJv9sG4I-DJmj3uEicG01A.ttf",weight:400,isVariable:!1},{displayName:"Walter Turncoat",filename:"snfys0Gs98ln43n0d-14ULoToe67YB2dQ5ZPqQ",category:"handwriting",url:"https://fonts.gstatic.com/s/walterturncoat/v24/snfys0Gs98ln43n0d-14ULoToe67YB2dQ5ZPqQ.ttf",weight:400,isVariable:!1},{displayName:"Codystar",filename:"FwZY7-Q1xVk-40qxOt6A4sijpFu_",category:"display",url:"https://fonts.gstatic.com/s/codystar/v19/FwZY7-Q1xVk-40qxOt6A4sijpFu_.ttf",weight:400,isVariable:!1},{displayName:"Odibee Sans",filename:"neIPzCSooYAho6WvjeToRYkyepH9qGsf",category:"display",url:"https://fonts.gstatic.com/s/odibeesans/v20/neIPzCSooYAho6WvjeToRYkyepH9qGsf.ttf",weight:400,isVariable:!1},{displayName:"Amethysta",filename:"rP2Fp2K15kgb_F3ibfWIGDWCBl0O8Q",category:"serif",url:"https://fonts.gstatic.com/s/amethysta/v17/rP2Fp2K15kgb_F3ibfWIGDWCBl0O8Q.ttf",weight:400,isVariable:!1},{displayName:"Wire One",filename:"qFdH35Wah5htUhV75WGiWdrCwwcJ",category:"sans-serif",url:"https://fonts.gstatic.com/s/wireone/v30/qFdH35Wah5htUhV75WGiWdrCwwcJ.ttf",weight:400,isVariable:!1},{displayName:"Kaisei Tokumin",filename:"Gg8sN5wdZg7xCwuMsylww2ZiQkJf1l0pj946",category:"serif",url:"https://fonts.gstatic.com/s/kaiseitokumin/v11/Gg8sN5wdZg7xCwuMsylww2ZiQkJf1l0pj946.ttf",weight:400,isVariable:!1},{displayName:"Iceberg",filename:"8QIJdijAiM7o-qnZuIgOq7jkAOw",category:"display",url:"https://fonts.gstatic.com/s/iceberg/v26/8QIJdijAiM7o-qnZuIgOq7jkAOw.ttf",weight:400,isVariable:!1},{displayName:"Cutive",filename:"NaPZcZ_fHOhV3Ip7T_hDoyqlZQ",category:"serif",url:"https://fonts.gstatic.com/s/cutive/v24/NaPZcZ_fHOhV3Ip7T_hDoyqlZQ.ttf",weight:400,isVariable:!1},{displayName:"Meow Script",filename:"0FlQVPqanlaJrtr8AnJ0ESch0_0CfDf1",category:"handwriting",url:"https://fonts.gstatic.com/s/meowscript/v6/0FlQVPqanlaJrtr8AnJ0ESch0_0CfDf1.ttf",weight:400,isVariable:!1},{displayName:"Red Hat Mono",filename:"jVyN7nDnA2uf2zVvFAhhzEskX-ZT_gzweA",category:"monospace",url:"https://fonts.gstatic.com/s/redhatmono/v16/jVyN7nDnA2uf2zVvFAhhzEskX-ZT_gzweA.ttf",weight:400,isVariable:!0},{displayName:"ZCOOL KuaiLe",filename:"tssqApdaRQokwFjFJjvM6h2WpozzoXhC2g",category:"sans-serif",url:"https://fonts.gstatic.com/s/zcoolkuaile/v20/tssqApdaRQokwFjFJjvM6h2WpozzoXhC2g.ttf",weight:400,isVariable:!1},{displayName:"Monomaniac One",filename:"4iC06K17YctZjx50EU-QlwPmcqRnqYkB5kwI",category:"sans-serif",url:"https://fonts.gstatic.com/s/monomaniacone/v15/4iC06K17YctZjx50EU-QlwPmcqRnqYkB5kwI.ttf",weight:400,isVariable:!1},{displayName:"Slabo 13px",filename:"11hEGp_azEvXZUdSBzzRcKer2wkYnvI",category:"serif",url:"https://fonts.gstatic.com/s/slabo13px/v17/11hEGp_azEvXZUdSBzzRcKer2wkYnvI.ttf",weight:400,isVariable:!1},{displayName:"Aladin",filename:"ZgNSjPJFPrvJV5f16Sf4pGT2Ng",category:"display",url:"https://fonts.gstatic.com/s/aladin/v26/ZgNSjPJFPrvJV5f16Sf4pGT2Ng.ttf",weight:400,isVariable:!1},{displayName:"Mukta Vaani",filename:"3Jn5SD_-ynaxmxnEfVHPIF0FfORL0fNy",category:"sans-serif",url:"https://fonts.gstatic.com/s/muktavaani/v15/3Jn5SD_-ynaxmxnEfVHPIF0FfORL0fNy.ttf",weight:400,isVariable:!1},{displayName:"Gaegu",filename:"TuGfUVB6Up9NU6ZLodgzydtk",category:"handwriting",url:"https://fonts.gstatic.com/s/gaegu/v23/TuGfUVB6Up9NU6ZLodgzydtk.ttf",weight:400,isVariable:!1},{displayName:"Crafty Girls",filename:"va9B4kXI39VaDdlPJo8N_NvuQR37fF3Wlg",category:"handwriting",url:"https://fonts.gstatic.com/s/craftygirls/v16/va9B4kXI39VaDdlPJo8N_NvuQR37fF3Wlg.ttf",weight:400,isVariable:!1},{displayName:"Kranky",filename:"hESw6XVgJzlPsFnMpheEZo_H_w",category:"display",url:"https://fonts.gstatic.com/s/kranky/v29/hESw6XVgJzlPsFnMpheEZo_H_w.ttf",weight:400,isVariable:!1},{displayName:"Brawler",filename:"xn7gYHE3xXewAscGsgC7S9XdZN8",category:"serif",url:"https://fonts.gstatic.com/s/brawler/v20/xn7gYHE3xXewAscGsgC7S9XdZN8.ttf",weight:400,isVariable:!1},{displayName:"Zen Antique Soft",filename:"DtV4JwqzSL1q_KwnEWMc_3xfgW6ihwBmkui5HNg",category:"serif",url:"https://fonts.gstatic.com/s/zenantiquesoft/v14/DtV4JwqzSL1q_KwnEWMc_3xfgW6ihwBmkui5HNg.ttf",weight:400,isVariable:!1},{displayName:"Iceland",filename:"rax9HiuFsdMNOnWPWKxGADBbg0s",category:"display",url:"https://fonts.gstatic.com/s/iceland/v22/rax9HiuFsdMNOnWPWKxGADBbg0s.ttf",weight:400,isVariable:!1},{displayName:"Tiro Devanagari Hindi",filename:"55xyezN7P8T4e0_CfIJrwdodg9HoYw0i-M9fSOkOfG0Y3A",category:"serif",url:"https://fonts.gstatic.com/s/tirodevanagarihindi/v5/55xyezN7P8T4e0_CfIJrwdodg9HoYw0i-M9fSOkOfG0Y3A.ttf",weight:400,isVariable:!1},{displayName:"Rubik Dirt",filename:"DtVmJxC7WLEj1uIXEWAdulwm6gDXvwE",category:"display",url:"https://fonts.gstatic.com/s/rubikdirt/v2/DtVmJxC7WLEj1uIXEWAdulwm6gDXvwE.ttf",weight:400,isVariable:!1},{displayName:"Pompiere",filename:"VEMyRoxis5Dwuyeov6Wt5jDtreOL",category:"display",url:"https://fonts.gstatic.com/s/pompiere/v21/VEMyRoxis5Dwuyeov6Wt5jDtreOL.ttf",weight:400,isVariable:!1},{displayName:"Montez",filename:"845ZNMk5GoGIX8lm1LDeSd-R_g",category:"handwriting",url:"https://fonts.gstatic.com/s/montez/v25/845ZNMk5GoGIX8lm1LDeSd-R_g.ttf",weight:400,isVariable:!1},{displayName:"Hi Melody",filename:"46ktlbP8Vnz0pJcqCTbEf29E31BBGA",category:"handwriting",url:"https://fonts.gstatic.com/s/himelody/v19/46ktlbP8Vnz0pJcqCTbEf29E31BBGA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Georgian",filename:"PlIgFke5O6RzLfvNNVSitxkr76PRHBCiaf5GGPq86g",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansgeorgian/v48/PlIgFke5O6RzLfvNNVSitxkr76PRHBCiaf5GGPq86g.ttf",weight:400,isVariable:!0},{displayName:"Waterfall",filename:"MCoRzAfo293fACdFKcwY2rH8D_EZwA",category:"handwriting",url:"https://fonts.gstatic.com/s/waterfall/v8/MCoRzAfo293fACdFKcwY2rH8D_EZwA.ttf",weight:400,isVariable:!1},{displayName:"Viaoda Libre",filename:"vEFW2_lWCgoR6OKuRz9kcRVJb2IY2tOHXg",category:"display",url:"https://fonts.gstatic.com/s/viaodalibre/v20/vEFW2_lWCgoR6OKuRz9kcRVJb2IY2tOHXg.ttf",weight:400,isVariable:!1},{displayName:"League Script",filename:"CSR54zpSlumSWj9CGVsoBZdeaNNUuOwkC2s",category:"handwriting",url:"https://fonts.gstatic.com/s/leaguescript/v30/CSR54zpSlumSWj9CGVsoBZdeaNNUuOwkC2s.ttf",weight:400,isVariable:!1},{displayName:"Puritan",filename:"845YNMgkAJ2VTtIo9JrwRdaI50M",category:"sans-serif",url:"https://fonts.gstatic.com/s/puritan/v25/845YNMgkAJ2VTtIo9JrwRdaI50M.ttf",weight:400,isVariable:!1},{displayName:"Inknut Antiqua",filename:"Y4GSYax7VC4ot_qNB4nYpBdaKXUD6pzxRwYB",category:"serif",url:"https://fonts.gstatic.com/s/inknutantiqua/v16/Y4GSYax7VC4ot_qNB4nYpBdaKXUD6pzxRwYB.ttf",weight:400,isVariable:!1},{displayName:"Shantell Sans",filename:"FeVWS0pCoLIo-lcdY7kjvNoQs250xsQuLFg",category:"display",url:"https://fonts.gstatic.com/s/shantellsans/v13/FeVWS0pCoLIo-lcdY7kjvNoQs250xsQuLFg.ttf",weight:400,isVariable:!0},{displayName:"Ephesis",filename:"uU9PCBUS8IerL2VG7xPb3vyHmlI",category:"handwriting",url:"https://fonts.gstatic.com/s/ephesis/v11/uU9PCBUS8IerL2VG7xPb3vyHmlI.ttf",weight:400,isVariable:!1},{displayName:"Gentium Plus",filename:"Iurd6Ytw-oSPaZ00r2bNe8VpjJtM6G0t9w",category:"serif",url:"https://fonts.gstatic.com/s/gentiumplus/v2/Iurd6Ytw-oSPaZ00r2bNe8VpjJtM6G0t9w.ttf",weight:400,isVariable:!1},{displayName:"Mukta Mahee",filename:"XRXQ3IOIi0hcP8iVU67hA-vNWz4PDWtj",category:"sans-serif",url:"https://fonts.gstatic.com/s/muktamahee/v19/XRXQ3IOIi0hcP8iVU67hA-vNWz4PDWtj.ttf",weight:400,isVariable:!1},{displayName:"McLaren",filename:"2EbnL-ZuAXFqZFXISYYf8z2Yt_c",category:"display",url:"https://fonts.gstatic.com/s/mclaren/v19/2EbnL-ZuAXFqZFXISYYf8z2Yt_c.ttf",weight:400,isVariable:!1},{displayName:"Sarpanch",filename:"hESy6Xt4NCpRuk6Pzh2ARIrX_20n",category:"sans-serif",url:"https://fonts.gstatic.com/s/sarpanch/v15/hESy6Xt4NCpRuk6Pzh2ARIrX_20n.ttf",weight:400,isVariable:!1},{displayName:"Orelega One",filename:"3qTpojOggD2XtAdFb-QXZGt61EcYaQ7F",category:"display",url:"https://fonts.gstatic.com/s/orelegaone/v14/3qTpojOggD2XtAdFb-QXZGt61EcYaQ7F.ttf",weight:400,isVariable:!1},{displayName:"Bilbo Swash Caps",filename:"zrf-0GXbz-H3Wb4XBsGrTgq2PVmdqAPopiRfKp8",category:"handwriting",url:"https://fonts.gstatic.com/s/bilboswashcaps/v23/zrf-0GXbz-H3Wb4XBsGrTgq2PVmdqAPopiRfKp8.ttf",weight:400,isVariable:!1},{displayName:"Cambo",filename:"IFSqHeNEk8FJk416ok7xkPm8",category:"serif",url:"https://fonts.gstatic.com/s/cambo/v19/IFSqHeNEk8FJk416ok7xkPm8.ttf",weight:400,isVariable:!1},{displayName:"Gowun Dodum",filename:"3Jn5SD_00GqwlBnWc1TUJF0FfORL0fNy",category:"sans-serif",url:"https://fonts.gstatic.com/s/gowundodum/v12/3Jn5SD_00GqwlBnWc1TUJF0FfORL0fNy.ttf",weight:400,isVariable:!1},{displayName:"Just Me Again Down Here",filename:"MwQmbgXtz-Wc6RUEGNMc0QpRrfUh2hSdBBMoAuwHvqDwc_fg",category:"handwriting",url:"https://fonts.gstatic.com/s/justmeagaindownhere/v25/MwQmbgXtz-Wc6RUEGNMc0QpRrfUh2hSdBBMoAuwHvqDwc_fg.ttf",weight:400,isVariable:!1},{displayName:"Holtwood One SC",filename:"yYLx0hLR0P-3vMFSk1TCq3Txg5B3cbb6LZttyg",category:"serif",url:"https://fonts.gstatic.com/s/holtwoodonesc/v23/yYLx0hLR0P-3vMFSk1TCq3Txg5B3cbb6LZttyg.ttf",weight:400,isVariable:!1},{displayName:"Balthazar",filename:"d6lKkaajS8Gm4CVQjFEvyRTo39l8hw",category:"serif",url:"https://fonts.gstatic.com/s/balthazar/v18/d6lKkaajS8Gm4CVQjFEvyRTo39l8hw.ttf",weight:400,isVariable:!1},{displayName:"Numans",filename:"SlGRmQmGupYAfH8IYRggiHVqaQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/numans/v16/SlGRmQmGupYAfH8IYRggiHVqaQ.ttf",weight:400,isVariable:!1},{displayName:"Artifika",filename:"VEMyRoxzronptCuxu6Wt5jDtreOL",category:"serif",url:"https://fonts.gstatic.com/s/artifika/v22/VEMyRoxzronptCuxu6Wt5jDtreOL.ttf",weight:400,isVariable:!1},{displayName:"Truculenta",filename:"LhWgMVvBKusVIfNYGi1-QP93NtmZmu8",category:"sans-serif",url:"https://fonts.gstatic.com/s/truculenta/v27/LhWgMVvBKusVIfNYGi1-QP93NtmZmu8.ttf",weight:400,isVariable:!0},{displayName:"Salsa",filename:"gNMKW3FiRpKj-imY8ncKEZez",category:"display",url:"https://fonts.gstatic.com/s/salsa/v23/gNMKW3FiRpKj-imY8ncKEZez.ttf",weight:400,isVariable:!1},{displayName:"ZCOOL QingKe HuangYou",filename:"2Eb5L_R5IXJEWhD3AOhSvFC554MOOahI4mRIi_28c8bHWA",category:"sans-serif",url:"https://fonts.gstatic.com/s/zcoolqingkehuangyou/v16/2Eb5L_R5IXJEWhD3AOhSvFC554MOOahI4mRIi_28c8bHWA.ttf",weight:400,isVariable:!1},{displayName:"Fontdiner Swanky",filename:"ijwOs4XgRNsiaI5-hcVb4hQgMvCD4uEfKiGvxts",category:"display",url:"https://fonts.gstatic.com/s/fontdinerswanky/v24/ijwOs4XgRNsiaI5-hcVb4hQgMvCD4uEfKiGvxts.ttf",weight:400,isVariable:!1},{displayName:"Sunshiney",filename:"LDIwapGTLBwsS-wT4vcgE8moUePWkg",category:"handwriting",url:"https://fonts.gstatic.com/s/sunshiney/v24/LDIwapGTLBwsS-wT4vcgE8moUePWkg.ttf",weight:400,isVariable:!1},{displayName:"Redressed",filename:"x3dickHUbrmJ7wMy9MsBfPACvy_1BA",category:"handwriting",url:"https://fonts.gstatic.com/s/redressed/v32/x3dickHUbrmJ7wMy9MsBfPACvy_1BA.ttf",weight:400,isVariable:!1},{displayName:"Libre Barcode 39 Extended Text",filename:"eLG1P_rwIgOiDA7yrs9LoKaYRVLQ1YldrrOnnL7xPO4jNP68fLIiPopNNA",category:"display",url:"https://fonts.gstatic.com/s/librebarcode39extendedtext/v30/eLG1P_rwIgOiDA7yrs9LoKaYRVLQ1YldrrOnnL7xPO4jNP68fLIiPopNNA.ttf",weight:400,isVariable:!1},{displayName:"Gamja Flower",filename:"6NUR8FiKJg-Pa0rM6uN40Z4kyf9Fdty2ew",category:"handwriting",url:"https://fonts.gstatic.com/s/gamjaflower/v26/6NUR8FiKJg-Pa0rM6uN40Z4kyf9Fdty2ew.ttf",weight:400,isVariable:!1},{displayName:"Jaro",filename:"ea8WadQwV_r_XPbcEdiM628",category:"sans-serif",url:"https://fonts.gstatic.com/s/jaro/v8/ea8WadQwV_r_XPbcEdiM628.ttf",weight:400,isVariable:!1},{displayName:"Anek Devanagari",filename:"jVyS7nP0CGrUsxB-QiRgw0NlLaV39ifscRzoQA",category:"sans-serif",url:"https://fonts.gstatic.com/s/anekdevanagari/v17/jVyS7nP0CGrUsxB-QiRgw0NlLaV39ifscRzoQA.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Khmer",filename:"ijwNs5roRME5LLRxjsRb-gssOenawssxJii23w",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanskhmer/v29/ijwNs5roRME5LLRxjsRb-gssOenawssxJii23w.ttf",weight:400,isVariable:!0},{displayName:"The Girl Next Door",filename:"pe0zMJCIMIsBjFxqYBIcZ6_OI5oFHCYIV7t7w6bE2A",category:"handwriting",url:"https://fonts.gstatic.com/s/thegirlnextdoor/v25/pe0zMJCIMIsBjFxqYBIcZ6_OI5oFHCYIV7t7w6bE2A.ttf",weight:400,isVariable:!1},{displayName:"Xanh Mono",filename:"R70YjykVmvKCep-vWhSYmACQXzLhTg",category:"monospace",url:"https://fonts.gstatic.com/s/xanhmono/v19/R70YjykVmvKCep-vWhSYmACQXzLhTg.ttf",weight:400,isVariable:!1},{displayName:"Ribeye",filename:"L0x8DFMxk1MP9R3RvPCmRSlUig",category:"display",url:"https://fonts.gstatic.com/s/ribeye/v27/L0x8DFMxk1MP9R3RvPCmRSlUig.ttf",weight:400,isVariable:!1},{displayName:"Rubik Bubbles",filename:"JIA1UVdwbHFJtwA7Us1BPFbRNTENfDxyRXI",category:"display",url:"https://fonts.gstatic.com/s/rubikbubbles/v3/JIA1UVdwbHFJtwA7Us1BPFbRNTENfDxyRXI.ttf",weight:400,isVariable:!1},{displayName:"Hedvig Letters Serif",filename:"OD5cuN2I2mekHmyoU1Kj2AXOd5_7v7gIDk_3iBYVfsc4",category:"serif",url:"https://fonts.gstatic.com/s/hedviglettersserif/v4/OD5cuN2I2mekHmyoU1Kj2AXOd5_7v7gIDk_3iBYVfsc4.ttf",weight:400,isVariable:!1},{displayName:"Bellota",filename:"MwQ2bhXl3_qEpiwAGJJRtGs-lbA",category:"display",url:"https://fonts.gstatic.com/s/bellota/v17/MwQ2bhXl3_qEpiwAGJJRtGs-lbA.ttf",weight:400,isVariable:!1},{displayName:"Rubik Glitch",filename:"qkBSXv8b_srFRYQVYrDKh9ZvmC7HONiSFQ",category:"display",url:"https://fonts.gstatic.com/s/rubikglitch/v2/qkBSXv8b_srFRYQVYrDKh9ZvmC7HONiSFQ.ttf",weight:400,isVariable:!1},{displayName:"Anek Malayalam",filename:"6qLZKZActRTs_mZAJUZWWkhke1PTSRciY1M1",category:"sans-serif",url:"https://fonts.gstatic.com/s/anekmalayalam/v18/6qLZKZActRTs_mZAJUZWWkhke1PTSRciY1M1.ttf",weight:400,isVariable:!0},{displayName:"Imprima",filename:"VEMxRoN7sY3yuy-7-oWHyDzktPo",category:"sans-serif",url:"https://fonts.gstatic.com/s/imprima/v19/VEMxRoN7sY3yuy-7-oWHyDzktPo.ttf",weight:400,isVariable:!1},{displayName:"IM Fell Double Pica",filename:"3XF2EqMq_94s9PeKF7Fg4gOKINyMtZ8rT0S1UL5Ayp0",category:"serif",url:"https://fonts.gstatic.com/s/imfelldoublepica/v14/3XF2EqMq_94s9PeKF7Fg4gOKINyMtZ8rT0S1UL5Ayp0.ttf",weight:400,isVariable:!1},{displayName:"Buenard",filename:"OD5DuM6Cyma8FnnsPzf9qGi9HL4",category:"serif",url:"https://fonts.gstatic.com/s/buenard/v22/OD5DuM6Cyma8FnnsPzf9qGi9HL4.ttf",weight:400,isVariable:!0},{displayName:"Mako",filename:"H4coBX6Mmc_Z0ST09g478Lo",category:"sans-serif",url:"https://fonts.gstatic.com/s/mako/v19/H4coBX6Mmc_Z0ST09g478Lo.ttf",weight:400,isVariable:!1},{displayName:"Zen Kurenaido",filename:"3XFsEr0515BK2u6UUptu_gWJZfz22PRLd0U",category:"sans-serif",url:"https://fonts.gstatic.com/s/zenkurenaido/v19/3XFsEr0515BK2u6UUptu_gWJZfz22PRLd0U.ttf",weight:400,isVariable:!1},{displayName:"New Rocker",filename:"MwQzbhjp3-HImzcCU_cJkGMViblPtXs",category:"display",url:"https://fonts.gstatic.com/s/newrocker/v17/MwQzbhjp3-HImzcCU_cJkGMViblPtXs.ttf",weight:400,isVariable:!1},{displayName:"Uncial Antiqua",filename:"N0bM2S5WOex4OUbESzoESK-i-PfRS5VBBSSF",category:"display",url:"https://fonts.gstatic.com/s/uncialantiqua/v22/N0bM2S5WOex4OUbESzoESK-i-PfRS5VBBSSF.ttf",weight:400,isVariable:!1},{displayName:"Cal Sans",filename:"fdN99sWUv3gWqXxqqSBbvloE4LZx",category:"sans-serif",url:"https://fonts.gstatic.com/s/calsans/v2/fdN99sWUv3gWqXxqqSBbvloE4LZx.ttf",weight:400,isVariable:!1},{displayName:"Shojumaru",filename:"rax_HiWfutkLLnaKCtlMBBJek0vA8A",category:"display",url:"https://fonts.gstatic.com/s/shojumaru/v16/rax_HiWfutkLLnaKCtlMBBJek0vA8A.ttf",weight:400,isVariable:!1},{displayName:"Oleo Script Swash Caps",filename:"Noaj6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HMXquSY0Hg90",category:"display",url:"https://fonts.gstatic.com/s/oleoscriptswashcaps/v14/Noaj6Vb-w5SFbTTAsZP_7JkCS08K-jCzDn_HMXquSY0Hg90.ttf",weight:400,isVariable:!1},{displayName:"Sedgwick Ave",filename:"uK_04rKEYuguzAcSYRdWTJq8Xmg1Vcf5JA",category:"handwriting",url:"https://fonts.gstatic.com/s/sedgwickave/v13/uK_04rKEYuguzAcSYRdWTJq8Xmg1Vcf5JA.ttf",weight:400,isVariable:!1},{displayName:"Maiden Orange",filename:"kJE1BuIX7AUmhi2V4m08kb1XjOZdCZS8FY8",category:"serif",url:"https://fonts.gstatic.com/s/maidenorange/v32/kJE1BuIX7AUmhi2V4m08kb1XjOZdCZS8FY8.ttf",weight:400,isVariable:!1},{displayName:"Cherry Cream Soda",filename:"UMBIrOxBrW6w2FFyi9paG0fdVdRciTd6Cd47DJ7G",category:"display",url:"https://fonts.gstatic.com/s/cherrycreamsoda/v21/UMBIrOxBrW6w2FFyi9paG0fdVdRciTd6Cd47DJ7G.ttf",weight:400,isVariable:!1},{displayName:"Shippori Antique",filename:"-F6qfid3KC8pdMyzR0qRyFUht11v8ldPg-IUDNg",category:"sans-serif",url:"https://fonts.gstatic.com/s/shipporiantique/v11/-F6qfid3KC8pdMyzR0qRyFUht11v8ldPg-IUDNg.ttf",weight:400,isVariable:!1},{displayName:"Train One",filename:"gyB-hwkiNtc6KnxUVjWHOqbZRY7JVQ",category:"display",url:"https://fonts.gstatic.com/s/trainone/v16/gyB-hwkiNtc6KnxUVjWHOqbZRY7JVQ.ttf",weight:400,isVariable:!1},{displayName:"Almendra",filename:"H4ckBXKAlMnTn0CskyY6wr-wg763",category:"serif",url:"https://fonts.gstatic.com/s/almendra/v28/H4ckBXKAlMnTn0CskyY6wr-wg763.ttf",weight:400,isVariable:!1},{displayName:"Tenali Ramakrishna",filename:"raxgHj6Yt9gAN3LLKs0BZVMo8jmwn1-8KJXqUFFvtA",category:"sans-serif",url:"https://fonts.gstatic.com/s/tenaliramakrishna/v14/raxgHj6Yt9gAN3LLKs0BZVMo8jmwn1-8KJXqUFFvtA.ttf",weight:400,isVariable:!1},{displayName:"Arima",filename:"neIFzCqmt4Aup-CP9IGON7Ez",category:"display",url:"https://fonts.gstatic.com/s/arima/v7/neIFzCqmt4Aup-CP9IGON7Ez.ttf",weight:400,isVariable:!0},{displayName:"Voces",filename:"-F6_fjJyLyU8d4PBBG7YpzlJ",category:"sans-serif",url:"https://fonts.gstatic.com/s/voces/v24/-F6_fjJyLyU8d4PBBG7YpzlJ.ttf",weight:400,isVariable:!1},{displayName:"Elsie",filename:"BCanqZABrez54yYu9slAeLgX",category:"display",url:"https://fonts.gstatic.com/s/elsie/v26/BCanqZABrez54yYu9slAeLgX.ttf",weight:400,isVariable:!1},{displayName:"Doppio One",filename:"Gg8wN5gSaBfyBw2MqCh-lgshKGpe5Fg",category:"sans-serif",url:"https://fonts.gstatic.com/s/doppioone/v14/Gg8wN5gSaBfyBw2MqCh-lgshKGpe5Fg.ttf",weight:400,isVariable:!1},{displayName:"Shanti",filename:"t5thIREMM4uSDgzgU0ezpKfwzA",category:"sans-serif",url:"https://fonts.gstatic.com/s/shanti/v25/t5thIREMM4uSDgzgU0ezpKfwzA.ttf",weight:400,isVariable:!1},{displayName:"Finger Paint",filename:"0QInMXVJ-o-oRn_7dron8YWO85bS8ANesw",category:"display",url:"https://fonts.gstatic.com/s/fingerpaint/v21/0QInMXVJ-o-oRn_7dron8YWO85bS8ANesw.ttf",weight:400,isVariable:!1},{displayName:"Prociono",filename:"r05YGLlR-KxAf9GGO8upyDYtStiJ",category:"serif",url:"https://fonts.gstatic.com/s/prociono/v28/r05YGLlR-KxAf9GGO8upyDYtStiJ.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Meetei Mayek",filename:"HTx9L3QyKieByqY9eZPFweO0be7M21uSphSdnKkpbrJN35k",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmeeteimayek/v20/HTx9L3QyKieByqY9eZPFweO0be7M21uSphSdnKkpbrJN35k.ttf",weight:400,isVariable:!0},{displayName:"Gluten",filename:"HhyVU5gk9fW7OUdPK9qGGI9STA",category:"display",url:"https://fonts.gstatic.com/s/gluten/v18/HhyVU5gk9fW7OUdPK9qGGI9STA.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Kannada",filename:"8vIS7xs32H97qzQKnzfeXycxXZyUmz6kR47NCV5Z",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanskannada/v31/8vIS7xs32H97qzQKnzfeXycxXZyUmz6kR47NCV5Z.ttf",weight:400,isVariable:!0},{displayName:"Suranna",filename:"gokuH6ztGkFjWe58tBRZT2KmgP0",category:"serif",url:"https://fonts.gstatic.com/s/suranna/v15/gokuH6ztGkFjWe58tBRZT2KmgP0.ttf",weight:400,isVariable:!1},{displayName:"Zain",filename:"syk8-y9lm7soANLHkSKW5tM",category:"sans-serif",url:"https://fonts.gstatic.com/s/zain/v4/syk8-y9lm7soANLHkSKW5tM.ttf",weight:400,isVariable:!1},{displayName:"Square Peg",filename:"y83eW48Nzw6ZlUHc-phrBDHrHHfrFPE",category:"handwriting",url:"https://fonts.gstatic.com/s/squarepeg/v7/y83eW48Nzw6ZlUHc-phrBDHrHHfrFPE.ttf",weight:400,isVariable:!1},{displayName:"Sancreek",filename:"pxiHypAnsdxUm159X7D-XV9NEe-K",category:"display",url:"https://fonts.gstatic.com/s/sancreek/v27/pxiHypAnsdxUm159X7D-XV9NEe-K.ttf",weight:400,isVariable:!1},{displayName:"Arya",filename:"ga6CawNG-HJd9Ub1-beqdFE",category:"sans-serif",url:"https://fonts.gstatic.com/s/arya/v21/ga6CawNG-HJd9Ub1-beqdFE.ttf",weight:400,isVariable:!1},{displayName:"Charmonman",filename:"MjQDmiR3vP_nuxDv47jiWJGovLdh6OE",category:"handwriting",url:"https://fonts.gstatic.com/s/charmonman/v20/MjQDmiR3vP_nuxDv47jiWJGovLdh6OE.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif HK",filename:"BngOUXBETWXI6LwlBZGcqL-B5qCr5RCDY_k",category:"serif",url:"https://fonts.gstatic.com/s/notoserifhk/v11/BngOUXBETWXI6LwlBZGcqL-B5qCr5RCDY_k.ttf",weight:400,isVariable:!0},{displayName:"Baumans",filename:"-W_-XJj9QyTd3QfpR_oyaksqY5Q",category:"display",url:"https://fonts.gstatic.com/s/baumans/v18/-W_-XJj9QyTd3QfpR_oyaksqY5Q.ttf",weight:400,isVariable:!1},{displayName:"Nova Round",filename:"flU9Rqquw5UhEnlwTJYTYYfeeetYEBc",category:"display",url:"https://fonts.gstatic.com/s/novaround/v23/flU9Rqquw5UhEnlwTJYTYYfeeetYEBc.ttf",weight:400,isVariable:!1},{displayName:"Zalando Sans",filename:"FwZc7-Asy1Em_lq_aK3hpr-LpWm6_K7bkA",category:"sans-serif",url:"https://fonts.gstatic.com/s/zalandosans/v2/FwZc7-Asy1Em_lq_aK3hpr-LpWm6_K7bkA.ttf",weight:400,isVariable:!0},{displayName:"Grape Nuts",filename:"syk2-yF4iLM2RfKj4F7k3tLvol2RN1E",category:"handwriting",url:"https://fonts.gstatic.com/s/grapenuts/v7/syk2-yF4iLM2RfKj4F7k3tLvol2RN1E.ttf",weight:400,isVariable:!1},{displayName:"Life Savers",filename:"ZXuie1UftKKabUQMgxAal_lrFgpbuNvB",category:"display",url:"https://fonts.gstatic.com/s/lifesavers/v23/ZXuie1UftKKabUQMgxAal_lrFgpbuNvB.ttf",weight:400,isVariable:!1},{displayName:"Scheherazade New",filename:"4UaZrFhTvxVnHDvUkUiHg8jprP4DCwNsOl4p5Is",category:"serif",url:"https://fonts.gstatic.com/s/scheherazadenew/v20/4UaZrFhTvxVnHDvUkUiHg8jprP4DCwNsOl4p5Is.ttf",weight:400,isVariable:!1},{displayName:"Lily Script One",filename:"LhW9MV7ZMfIPdMxeBjBvFN8SXLS4gsSjQNsRMg",category:"display",url:"https://fonts.gstatic.com/s/lilyscriptone/v16/LhW9MV7ZMfIPdMxeBjBvFN8SXLS4gsSjQNsRMg.ttf",weight:400,isVariable:!1},{displayName:"Averia Sans Libre",filename:"ga6XaxZG_G5OvCf_rt7FH3B6BHLMEeVJGIMYDo_8",category:"display",url:"https://fonts.gstatic.com/s/averiasanslibre/v20/ga6XaxZG_G5OvCf_rt7FH3B6BHLMEeVJGIMYDo_8.ttf",weight:400,isVariable:!1},{displayName:"Crushed",filename:"U9Mc6dym6WXImTlFT1kfuIqyLzA",category:"display",url:"https://fonts.gstatic.com/s/crushed/v32/U9Mc6dym6WXImTlFT1kfuIqyLzA.ttf",weight:400,isVariable:!1},{displayName:"Nosifer",filename:"ZGjXol5JTp0g5bxZaC1RVDNdGDs",category:"display",url:"https://fonts.gstatic.com/s/nosifer/v23/ZGjXol5JTp0g5bxZaC1RVDNdGDs.ttf",weight:400,isVariable:!1},{displayName:"Nokora",filename:"hYkIPuwgTubzaWxQOzoPovZg8Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/nokora/v34/hYkIPuwgTubzaWxQOzoPovZg8Q.ttf",weight:400,isVariable:!0},{displayName:"Galada",filename:"H4cmBXyGmcjXlUX-8iw-4Lqggw",category:"display",url:"https://fonts.gstatic.com/s/galada/v21/H4cmBXyGmcjXlUX-8iw-4Lqggw.ttf",weight:400,isVariable:!1},{displayName:"MonteCarlo",filename:"buEzpo6-f9X01GadLA0G0CoV_NxLeiw",category:"handwriting",url:"https://fonts.gstatic.com/s/montecarlo/v13/buEzpo6-f9X01GadLA0G0CoV_NxLeiw.ttf",weight:400,isVariable:!1},{displayName:"Delicious Handrawn",filename:"wlpsgx_NAUNkpmKQifcxkQchDFo3fJ113JpDd6u3AQ",category:"handwriting",url:"https://fonts.gstatic.com/s/delicioushandrawn/v10/wlpsgx_NAUNkpmKQifcxkQchDFo3fJ113JpDd6u3AQ.ttf",weight:400,isVariable:!1},{displayName:"Flow Circular",filename:"lJwB-pc4j2F-H8YKuyvfxdZ45ifpWdr2rIg",category:"display",url:"https://fonts.gstatic.com/s/flowcircular/v15/lJwB-pc4j2F-H8YKuyvfxdZ45ifpWdr2rIg.ttf",weight:400,isVariable:!1},{displayName:"Sumana",filename:"4UaDrE5TqRBjGj-G8Bji76zR4w",category:"serif",url:"https://fonts.gstatic.com/s/sumana/v12/4UaDrE5TqRBjGj-G8Bji76zR4w.ttf",weight:400,isVariable:!1},{displayName:"Henny Penny",filename:"wXKvE3UZookzsxz_kjGSfMQqt3M7tMDT",category:"display",url:"https://fonts.gstatic.com/s/hennypenny/v18/wXKvE3UZookzsxz_kjGSfMQqt3M7tMDT.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Thai Looped",filename:"B50RF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3gO6ocWiHvWQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansthailooped/v16/B50RF6pOpWTRcGrhOVJJ3-oPfY7WQuFu5R3gO6ocWiHvWQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Gujarati",filename:"wlpsgx_HC1ti5ViekvcxnhMlCVo3f5p13JpDd6u3AQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansgujarati/v27/wlpsgx_HC1ti5ViekvcxnhMlCVo3f5p13JpDd6u3AQ.ttf",weight:400,isVariable:!0},{displayName:"Poller One",filename:"ahccv82n0TN3gia5E4Bud-lbgUS5u0s",category:"display",url:"https://fonts.gstatic.com/s/pollerone/v25/ahccv82n0TN3gia5E4Bud-lbgUS5u0s.ttf",weight:400,isVariable:!1},{displayName:"NTR",filename:"RLpzK5Xy0ZjiGGhs5TA4bg",category:"sans-serif",url:"https://fonts.gstatic.com/s/ntr/v19/RLpzK5Xy0ZjiGGhs5TA4bg.ttf",weight:400,isVariable:!1},{displayName:"Delius Unicase",filename:"845BNMEwEIOVT8BmgfSzIr_6mmLHd-73LXWs",category:"handwriting",url:"https://fonts.gstatic.com/s/deliusunicase/v30/845BNMEwEIOVT8BmgfSzIr_6mmLHd-73LXWs.ttf",weight:400,isVariable:!1},{displayName:"Alike Angular",filename:"3qTrojWunjGQtEBlIcwMbSoI3kM6bB7FKjE",category:"serif",url:"https://fonts.gstatic.com/s/alikeangular/v27/3qTrojWunjGQtEBlIcwMbSoI3kM6bB7FKjE.ttf",weight:400,isVariable:!1},{displayName:"Libre Barcode 128 Text",filename:"fdNv9tubt3ZEnz1Gu3I4-zppwZ9CWZ16Z0w5cV3Y6M90w4k",category:"display",url:"https://fonts.gstatic.com/s/librebarcode128text/v31/fdNv9tubt3ZEnz1Gu3I4-zppwZ9CWZ16Z0w5cV3Y6M90w4k.ttf",weight:400,isVariable:!1},{displayName:"Fuggles",filename:"k3kQo8UEJOlD1hpOTd7iL0nAMaM",category:"handwriting",url:"https://fonts.gstatic.com/s/fuggles/v14/k3kQo8UEJOlD1hpOTd7iL0nAMaM.ttf",weight:400,isVariable:!1},{displayName:"Swanky and Moo Moo",filename:"flUlRrKz24IuWVI_WJYTYcqbEsMUZ3kUtbPkR64SYQ",category:"handwriting",url:"https://fonts.gstatic.com/s/swankyandmoomoo/v24/flUlRrKz24IuWVI_WJYTYcqbEsMUZ3kUtbPkR64SYQ.ttf",weight:400,isVariable:!1},{displayName:"Raleway Dots",filename:"6NUR8FifJg6AfQvzpshgwJ8kyf9Fdty2ew",category:"display",url:"https://fonts.gstatic.com/s/ralewaydots/v19/6NUR8FifJg6AfQvzpshgwJ8kyf9Fdty2ew.ttf",weight:400,isVariable:!1},{displayName:"Short Stack",filename:"bMrzmS2X6p0jZC6EcmPFX-SScX8D0nq6",category:"handwriting",url:"https://fonts.gstatic.com/s/shortstack/v16/bMrzmS2X6p0jZC6EcmPFX-SScX8D0nq6.ttf",weight:400,isVariable:!1},{displayName:"Madimi One",filename:"2V0YKIEADpA8U6RygDnZZFQoBoHMd2U",category:"sans-serif",url:"https://fonts.gstatic.com/s/madimione/v1/2V0YKIEADpA8U6RygDnZZFQoBoHMd2U.ttf",weight:400,isVariable:!1},{displayName:"Asar",filename:"sZlLdRyI6TBIXkYQDLlTW6E",category:"serif",url:"https://fonts.gstatic.com/s/asar/v24/sZlLdRyI6TBIXkYQDLlTW6E.ttf",weight:400,isVariable:!1},{displayName:"Carattere",filename:"4iCv6Kp1b9dXlgt_CkvTt2aMH4V_gg",category:"handwriting",url:"https://fonts.gstatic.com/s/carattere/v8/4iCv6Kp1b9dXlgt_CkvTt2aMH4V_gg.ttf",weight:400,isVariable:!1},{displayName:"Baloo Tammudu 2",filename:"1Pt2g8TIS_SAmkLguUdFP8UaJcK-xXEW6aGXHw",category:"display",url:"https://fonts.gstatic.com/s/balootammudu2/v27/1Pt2g8TIS_SAmkLguUdFP8UaJcK-xXEW6aGXHw.ttf",weight:400,isVariable:!0},{displayName:"Martian Mono",filename:"2V0aKIcADoYhV6w87xrTKjsiAqPJZ2Xx8w",category:"monospace",url:"https://fonts.gstatic.com/s/martianmono/v6/2V0aKIcADoYhV6w87xrTKjsiAqPJZ2Xx8w.ttf",weight:400,isVariable:!0},{displayName:"Freeman",filename:"S6u9w4NGQiLN8nh-ew-FGC_p9dw",category:"display",url:"https://fonts.gstatic.com/s/freeman/v1/S6u9w4NGQiLN8nh-ew-FGC_p9dw.ttf",weight:400,isVariable:!1},{displayName:"Road Rage",filename:"6NUU8F2fKAOBKjjr4ekvtMYAwdRZfw",category:"display",url:"https://fonts.gstatic.com/s/roadrage/v9/6NUU8F2fKAOBKjjr4ekvtMYAwdRZfw.ttf",weight:400,isVariable:!1},{displayName:"Monofett",filename:"mFTyWbofw6zc9NtnW43SuRwr0VJ7",category:"monospace",url:"https://fonts.gstatic.com/s/monofett/v24/mFTyWbofw6zc9NtnW43SuRwr0VJ7.ttf",weight:400,isVariable:!1},{displayName:"Moul",filename:"nuF2D__FSo_3E-RYiJCy-00",category:"display",url:"https://fonts.gstatic.com/s/moul/v30/nuF2D__FSo_3E-RYiJCy-00.ttf",weight:400,isVariable:!1},{displayName:"Jersey 10",filename:"GftH7vZKsggXMf9n_J5X-JLgy1wtSw",category:"display",url:"https://fonts.gstatic.com/s/jersey10/v4/GftH7vZKsggXMf9n_J5X-JLgy1wtSw.ttf",weight:400,isVariable:!1},{displayName:"Mochiy Pop P One",filename:"Ktk2AKuPeY_td1-h9LayHYWCjAqyN4O3WYZB_sU",category:"sans-serif",url:"https://fonts.gstatic.com/s/mochiypoppone/v12/Ktk2AKuPeY_td1-h9LayHYWCjAqyN4O3WYZB_sU.ttf",weight:400,isVariable:!1},{displayName:"Teachers",filename:"H4ckBXKVncXVmUGsgSY6wr-wg763",category:"sans-serif",url:"https://fonts.gstatic.com/s/teachers/v6/H4ckBXKVncXVmUGsgSY6wr-wg763.ttf",weight:400,isVariable:!0},{displayName:"Vampiro One",filename:"gokqH6DoDl5yXvJytFsdLkqnsvhIor3K",category:"display",url:"https://fonts.gstatic.com/s/vampiroone/v19/gokqH6DoDl5yXvJytFsdLkqnsvhIor3K.ttf",weight:400,isVariable:!1},{displayName:"Dynalight",filename:"1Ptsg8LOU_aOmQvTsF4ISotrDfGGxA",category:"display",url:"https://fonts.gstatic.com/s/dynalight/v24/1Ptsg8LOU_aOmQvTsF4ISotrDfGGxA.ttf",weight:400,isVariable:!1},{displayName:"Timmana",filename:"6xKvdShfL9yK-rvpCmvbKHwJUOM",category:"sans-serif",url:"https://fonts.gstatic.com/s/timmana/v14/6xKvdShfL9yK-rvpCmvbKHwJUOM.ttf",weight:400,isVariable:!1},{displayName:"TikTok Sans",filename:"70lXu7g-Lm8OXGnh_Ow1sV3OEJeJRVdC",category:"sans-serif",url:"https://fonts.gstatic.com/s/tiktoksans/v7/70lXu7g-Lm8OXGnh_Ow1sV3OEJeJRVdC.ttf",weight:400,isVariable:!0},{displayName:"Modern Antiqua",filename:"NGStv5TIAUg6Iq_RLNo_2dp1sI1Ea2u0c3Gi",category:"display",url:"https://fonts.gstatic.com/s/modernantiqua/v26/NGStv5TIAUg6Iq_RLNo_2dp1sI1Ea2u0c3Gi.ttf",weight:400,isVariable:!1},{displayName:"Playpen Sans",filename:"dg4i_pj1p6gXP0gzAZgm4c8NSygiiyyhRw",category:"handwriting",url:"https://fonts.gstatic.com/s/playpensans/v22/dg4i_pj1p6gXP0gzAZgm4c8NSygiiyyhRw.ttf",weight:400,isVariable:!0},{displayName:"Vollkorn SC",filename:"j8_v6-zQ3rXpceZj9cqnVhF5NH-iSq_E",category:"serif",url:"https://fonts.gstatic.com/s/vollkornsc/v12/j8_v6-zQ3rXpceZj9cqnVhF5NH-iSq_E.ttf",weight:400,isVariable:!1},{displayName:"Clicker Script",filename:"raxkHiKPvt8CMH6ZWP8PdlEq72rY2zqUKafv",category:"handwriting",url:"https://fonts.gstatic.com/s/clickerscript/v14/raxkHiKPvt8CMH6ZWP8PdlEq72rY2zqUKafv.ttf",weight:400,isVariable:!1},{displayName:"Angkor",filename:"H4cmBXyAlsPdnlb-8iw-4Lqggw",category:"display",url:"https://fonts.gstatic.com/s/angkor/v35/H4cmBXyAlsPdnlb-8iw-4Lqggw.ttf",weight:400,isVariable:!1},{displayName:"Macondo Swash Caps",filename:"6NUL8EaAJgGKZA7lpt941Z9s6ZYgDq6Oekoa_mm5bA",category:"display",url:"https://fonts.gstatic.com/s/macondoswashcaps/v26/6NUL8EaAJgGKZA7lpt941Z9s6ZYgDq6Oekoa_mm5bA.ttf",weight:400,isVariable:!1},{displayName:"Chicle",filename:"lJwG-pw9i2dqU-BDyWKuobYSxw",category:"display",url:"https://fonts.gstatic.com/s/chicle/v27/lJwG-pw9i2dqU-BDyWKuobYSxw.ttf",weight:400,isVariable:!1},{displayName:"Eagle Lake",filename:"ptRMTiqbbuNJDOiKj9wG5O7yKQNute8",category:"handwriting",url:"https://fonts.gstatic.com/s/eaglelake/v26/ptRMTiqbbuNJDOiKj9wG5O7yKQNute8.ttf",weight:400,isVariable:!1},{displayName:"Denk One",filename:"dg4m_pzhrqcFb2IzROtHpbglShon",category:"sans-serif",url:"https://fonts.gstatic.com/s/denkone/v21/dg4m_pzhrqcFb2IzROtHpbglShon.ttf",weight:400,isVariable:!1},{displayName:"Stick No Bills",filename:"bWth7ffXZwHuAa9Uld-oEK4QKkZo1w-1YxiC",category:"sans-serif",url:"https://fonts.gstatic.com/s/sticknobills/v17/bWth7ffXZwHuAa9Uld-oEK4QKkZo1w-1YxiC.ttf",weight:400,isVariable:!0},{displayName:"Nerko One",filename:"m8JQjfZSc7OXlB3ZMOjzcJ5BZmqa3A",category:"handwriting",url:"https://fonts.gstatic.com/s/nerkoone/v17/m8JQjfZSc7OXlB3ZMOjzcJ5BZmqa3A.ttf",weight:400,isVariable:!1},{displayName:"Rosarivo",filename:"PlI-Fl2lO6N9f8HaNAeC2nhMnNy5",category:"serif",url:"https://fonts.gstatic.com/s/rosarivo/v24/PlI-Fl2lO6N9f8HaNAeC2nhMnNy5.ttf",weight:400,isVariable:!1},{displayName:"Baloo Bhai 2",filename:"sZlDdRSL-z1VEWZ4YNA7Y5I3cdTmiH1gFQ",category:"display",url:"https://fonts.gstatic.com/s/baloobhai2/v30/sZlDdRSL-z1VEWZ4YNA7Y5I3cdTmiH1gFQ.ttf",weight:400,isVariable:!0},{displayName:"Platypi",filename:"bMr3mSGU7pMlaX6-JgKMMMyTQ3o",category:"serif",url:"https://fonts.gstatic.com/s/platypi/v6/bMr3mSGU7pMlaX6-JgKMMMyTQ3o.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Armenian",filename:"ZgNOjOZKPa7CHqq0h37c7ReDUubm2SEHHliXap5UrA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansarmenian/v47/ZgNOjOZKPa7CHqq0h37c7ReDUubm2SEHHliXap5UrA.ttf",weight:400,isVariable:!0},{displayName:"Hubot Sans",filename:"pe0rMIiULYxOvxVLbVwhIteQB9Zra1U",category:"sans-serif",url:"https://fonts.gstatic.com/s/hubotsans/v5/pe0rMIiULYxOvxVLbVwhIteQB9Zra1U.ttf",weight:400,isVariable:!0},{displayName:"Benne",filename:"L0xzDFAhn18E6Vjxlt6qTDBN",category:"serif",url:"https://fonts.gstatic.com/s/benne/v24/L0xzDFAhn18E6Vjxlt6qTDBN.ttf",weight:400,isVariable:!1},{displayName:"Beth Ellen",filename:"WwkbxPW2BE-3rb_JNT-qEIAiVNo5xNY",category:"handwriting",url:"https://fonts.gstatic.com/s/bethellen/v22/WwkbxPW2BE-3rb_JNT-qEIAiVNo5xNY.ttf",weight:400,isVariable:!1},{displayName:"Kavivanar",filename:"o-0IIpQgyXYSwhxP7_Jb4j5Ba_2c7A",category:"handwriting",url:"https://fonts.gstatic.com/s/kavivanar/v22/o-0IIpQgyXYSwhxP7_Jb4j5Ba_2c7A.ttf",weight:400,isVariable:!1},{displayName:"Jersey 25",filename:"ll8-K2eeXj2tAs6F9BXIJ4AMng8ChA",category:"display",url:"https://fonts.gstatic.com/s/jersey25/v4/ll8-K2eeXj2tAs6F9BXIJ4AMng8ChA.ttf",weight:400,isVariable:!1},{displayName:"Mirza",filename:"co3ImWlikiN5EurdKMewsrvI",category:"serif",url:"https://fonts.gstatic.com/s/mirza/v19/co3ImWlikiN5EurdKMewsrvI.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Georgian",filename:"VEMtRpd8s4nv8hG_qOzL7HOAw4nt0Sl_RRe4_Tsdkf4",category:"serif",url:"https://fonts.gstatic.com/s/notoserifgeorgian/v29/VEMtRpd8s4nv8hG_qOzL7HOAw4nt0Sl_RRe4_Tsdkf4.ttf",weight:400,isVariable:!0},{displayName:"IM Fell Great Primer",filename:"bx6aNwSJtayYxOkbYFsT6hMsLzX7u85rJorXvDo3SQY1",category:"serif",url:"https://fonts.gstatic.com/s/imfellgreatprimer/v21/bx6aNwSJtayYxOkbYFsT6hMsLzX7u85rJorXvDo3SQY1.ttf",weight:400,isVariable:!1},{displayName:"IM Fell DW Pica SC",filename:"0ybjGCAu5PfqkvtGVU15aBhXz3EUrnTW-BiKEUiBGA",category:"serif",url:"https://fonts.gstatic.com/s/imfelldwpicasc/v21/0ybjGCAu5PfqkvtGVU15aBhXz3EUrnTW-BiKEUiBGA.ttf",weight:400,isVariable:!1},{displayName:"Spicy Rice",filename:"uK_24rSEd-Uqwk4jY1RyGv-2WkowRcc",category:"display",url:"https://fonts.gstatic.com/s/spicyrice/v28/uK_24rSEd-Uqwk4jY1RyGv-2WkowRcc.ttf",weight:400,isVariable:!1},{displayName:"IM Fell French Canon",filename:"-F6ufiNtDWYfYc-tDiyiw08rrghJszkK6coVPt1ozoPz",category:"serif",url:"https://fonts.gstatic.com/s/imfellfrenchcanon/v21/-F6ufiNtDWYfYc-tDiyiw08rrghJszkK6coVPt1ozoPz.ttf",weight:400,isVariable:!1},{displayName:"Convergence",filename:"rax5HiePvdgXPmmMHcIPYRhasU7Q8Cad",category:"sans-serif",url:"https://fonts.gstatic.com/s/convergence/v16/rax5HiePvdgXPmmMHcIPYRhasU7Q8Cad.ttf",weight:400,isVariable:!1},{displayName:"Rhodium Libre",filename:"1q2AY5adA0tn_ukeHcQHqpx6pETLeo2gm2U",category:"serif",url:"https://fonts.gstatic.com/s/rhodiumlibre/v21/1q2AY5adA0tn_ukeHcQHqpx6pETLeo2gm2U.ttf",weight:400,isVariable:!1},{displayName:"Peralta",filename:"hYkJPu0-RP_9d3kRGxAhrv956B8",category:"serif",url:"https://fonts.gstatic.com/s/peralta/v21/hYkJPu0-RP_9d3kRGxAhrv956B8.ttf",weight:400,isVariable:!1},{displayName:"Reggae One",filename:"7r3DqX5msMIkeuwJwOJt_a5L5uH-mts",category:"display",url:"https://fonts.gstatic.com/s/reggaeone/v19/7r3DqX5msMIkeuwJwOJt_a5L5uH-mts.ttf",weight:400,isVariable:!1},{displayName:"Metal Mania",filename:"RWmMoKWb4e8kqMfBUdPFJeXCg6UKDXlq",category:"display",url:"https://fonts.gstatic.com/s/metalmania/v23/RWmMoKWb4e8kqMfBUdPFJeXCg6UKDXlq.ttf",weight:400,isVariable:!1},{displayName:"Cantora One",filename:"gyB4hws1JdgnKy56GB_JX6zdZ4vZVbgZ",category:"sans-serif",url:"https://fonts.gstatic.com/s/cantoraone/v20/gyB4hws1JdgnKy56GB_JX6zdZ4vZVbgZ.ttf",weight:400,isVariable:!1},{displayName:"Orienta",filename:"PlI9FlK4Jrl5Y9zNeyeo9HRFhcU",category:"sans-serif",url:"https://fonts.gstatic.com/s/orienta/v16/PlI9FlK4Jrl5Y9zNeyeo9HRFhcU.ttf",weight:400,isVariable:!1},{displayName:"Aoboshi One",filename:"Gg8xN5kXaAXtHQrFxwl10ysLBmZX_UEg",category:"serif",url:"https://fonts.gstatic.com/s/aoboshione/v13/Gg8xN5kXaAXtHQrFxwl10ysLBmZX_UEg.ttf",weight:400,isVariable:!1},{displayName:"Dokdo",filename:"esDf315XNuCBLxLo4NaMlKcH",category:"display",url:"https://fonts.gstatic.com/s/dokdo/v23/esDf315XNuCBLxLo4NaMlKcH.ttf",weight:400,isVariable:!1},{displayName:"Carme",filename:"ptRHTiWdbvZIDOjGxLNrxfbZ",category:"sans-serif",url:"https://fonts.gstatic.com/s/carme/v17/ptRHTiWdbvZIDOjGxLNrxfbZ.ttf",weight:400,isVariable:!1},{displayName:"Gemunu Libre",filename:"X7ni4bQ6Cfy7jKGXVE_YlqnBGiL1539rvw",category:"sans-serif",url:"https://fonts.gstatic.com/s/gemunulibre/v18/X7ni4bQ6Cfy7jKGXVE_YlqnBGiL1539rvw.ttf",weight:400,isVariable:!0},{displayName:"Germania One",filename:"Fh4yPjrqIyv2ucM2qzBjeS3ezAJONau6ew",category:"display",url:"https://fonts.gstatic.com/s/germaniaone/v21/Fh4yPjrqIyv2ucM2qzBjeS3ezAJONau6ew.ttf",weight:400,isVariable:!1},{displayName:"Anta",filename:"gyBzhwQ3KsIyZFwxPFimIo0",category:"sans-serif",url:"https://fonts.gstatic.com/s/anta/v1/gyBzhwQ3KsIyZFwxPFimIo0.ttf",weight:400,isVariable:!1},{displayName:"Sour Gummy",filename:"8AtsGs2gPYuNDii97MjjHLn5jRfZHzM",category:"sans-serif",url:"https://fonts.gstatic.com/s/sourgummy/v3/8AtsGs2gPYuNDii97MjjHLn5jRfZHzM.ttf",weight:400,isVariable:!0},{displayName:"Borel",filename:"6qLOKZsftAPisgshYyMnOjwE",category:"handwriting",url:"https://fonts.gstatic.com/s/borel/v10/6qLOKZsftAPisgshYyMnOjwE.ttf",weight:400,isVariable:!1},{displayName:"Yuji Syuku",filename:"BngNUXdTV3vO6Lw5ApOPqPfgwqiA-Rk",category:"serif",url:"https://fonts.gstatic.com/s/yujisyuku/v8/BngNUXdTV3vO6Lw5ApOPqPfgwqiA-Rk.ttf",weight:400,isVariable:!1},{displayName:"Ysabeau Office",filename:"LDIrapaZKhM9RuQIp8FmdYrPPMLOub458jGL",category:"sans-serif",url:"https://fonts.gstatic.com/s/ysabeauoffice/v4/LDIrapaZKhM9RuQIp8FmdYrPPMLOub458jGL.ttf",weight:400,isVariable:!0},{displayName:"Nova Flat",filename:"QdVUSTc-JgqpytEbVebEuStkm20oJA",category:"display",url:"https://fonts.gstatic.com/s/novaflat/v26/QdVUSTc-JgqpytEbVebEuStkm20oJA.ttf",weight:400,isVariable:!1},{displayName:"Abyssinica SIL",filename:"oY1H8ezOqK7iI3rK_45WKoc8J6UZBFOVAXuI",category:"serif",url:"https://fonts.gstatic.com/s/abyssinicasil/v9/oY1H8ezOqK7iI3rK_45WKoc8J6UZBFOVAXuI.ttf",weight:400,isVariable:!1},{displayName:"M PLUS 1 Code",filename:"ypvfbXOOx2xFpzmYJS3N2_J2nhhYtUb0gZk",category:"monospace",url:"https://fonts.gstatic.com/s/mplus1code/v16/ypvfbXOOx2xFpzmYJS3N2_J2nhhYtUb0gZk.ttf",weight:400,isVariable:!0},{displayName:"Special Gothic Condensed One",filename:"R70Njzwei_mJM7OsFDzX7EL9NBO6IPvd-Avolzh49w7PUZt_5YtxbX8",category:"sans-serif",url:"https://fonts.gstatic.com/s/specialgothiccondensedone/v2/R70Njzwei_mJM7OsFDzX7EL9NBO6IPvd-Avolzh49w7PUZt_5YtxbX8.ttf",weight:400,isVariable:!1},{displayName:"Khmer",filename:"MjQImit_vPPwpF-BpN2EeYmD",category:"sans-serif",url:"https://fonts.gstatic.com/s/khmer/v38/MjQImit_vPPwpF-BpN2EeYmD.ttf",weight:400,isVariable:!1},{displayName:"BhuTuka Expanded One",filename:"SLXXc0jZ4WUJcClHTtv0t7IaDRsBsWRiJCyX8pg_RVH1",category:"serif",url:"https://fonts.gstatic.com/s/bhutukaexpandedone/v9/SLXXc0jZ4WUJcClHTtv0t7IaDRsBsWRiJCyX8pg_RVH1.ttf",weight:400,isVariable:!1},{displayName:"Zhi Mang Xing",filename:"f0Xw0ey79sErYFtWQ9a2rq-g0actfektIJ0",category:"handwriting",url:"https://fonts.gstatic.com/s/zhimangxing/v19/f0Xw0ey79sErYFtWQ9a2rq-g0actfektIJ0.ttf",weight:400,isVariable:!1},{displayName:"Manuale",filename:"f0X20eas_8Z-TFZdBPbEw8nG6aY",category:"serif",url:"https://fonts.gstatic.com/s/manuale/v31/f0X20eas_8Z-TFZdBPbEw8nG6aY.ttf",weight:400,isVariable:!0},{displayName:"Harmattan",filename:"goksH6L2DkFvVvRp9XpTS0CjkP1Yog",category:"sans-serif",url:"https://fonts.gstatic.com/s/harmattan/v24/goksH6L2DkFvVvRp9XpTS0CjkP1Yog.ttf",weight:400,isVariable:!1},{displayName:"Vend Sans",filename:"E21l_d7ijufNwCJPEUssUwVUAuu3cw",category:"sans-serif",url:"https://fonts.gstatic.com/s/vendsans/v1/E21l_d7ijufNwCJPEUssUwVUAuu3cw.ttf",weight:400,isVariable:!0},{displayName:"UnifrakturCook",filename:"IurA6Yli8YOdcoky-0PTTdkm56n05Uw13ILXs-h6",category:"display",url:"https://fonts.gstatic.com/s/unifrakturcook/v25/IurA6Yli8YOdcoky-0PTTdkm56n05Uw13ILXs-h6.ttf",weight:700,isVariable:!1},{displayName:"The Nautigal",filename:"VdGZAZ8ZH51Lvng9fQV2bfKr5wVk09Se5Q",category:"handwriting",url:"https://fonts.gstatic.com/s/thenautigal/v8/VdGZAZ8ZH51Lvng9fQV2bfKr5wVk09Se5Q.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Thai",filename:"k3kIo80MPvpLmixYH7euCxWpSMut8SX6-q2CGg",category:"serif",url:"https://fonts.gstatic.com/s/notoserifthai/v28/k3kIo80MPvpLmixYH7euCxWpSMut8SX6-q2CGg.ttf",weight:400,isVariable:!0},{displayName:"Montaga",filename:"H4cnBX2Ml8rCkEO_0gYQ7LO5mqc",category:"serif",url:"https://fonts.gstatic.com/s/montaga/v14/H4cnBX2Ml8rCkEO_0gYQ7LO5mqc.ttf",weight:400,isVariable:!1},{displayName:"Badeen Display",filename:"pxidypY2sdZSjFU4cPmNBzckadeLYk1Mq3ap",category:"display",url:"https://fonts.gstatic.com/s/badeendisplay/v1/pxidypY2sdZSjFU4cPmNBzckadeLYk1Mq3ap.ttf",weight:400,isVariable:!1},{displayName:"Lemon",filename:"HI_EiYEVKqRMq0jBSZXAQ4-d",category:"display",url:"https://fonts.gstatic.com/s/lemon/v19/HI_EiYEVKqRMq0jBSZXAQ4-d.ttf",weight:400,isVariable:!1},{displayName:"Ceviche One",filename:"gyB4hws1IcA6JzR-GB_JX6zdZ4vZVbgZ",category:"display",url:"https://fonts.gstatic.com/s/cevicheone/v17/gyB4hws1IcA6JzR-GB_JX6zdZ4vZVbgZ.ttf",weight:400,isVariable:!1},{displayName:"Song Myung",filename:"1cX2aUDWAJH5-EIC7DIhr1GqhcitzeM",category:"serif",url:"https://fonts.gstatic.com/s/songmyung/v22/1cX2aUDWAJH5-EIC7DIhr1GqhcitzeM.ttf",weight:400,isVariable:!1},{displayName:"Special Gothic Expanded One",filename:"IurO6Zxk74-YaYk1r3HOet4g75ENmBxUmOK61tA0Iu5gn5t-KhUVvQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/specialgothicexpandedone/v2/IurO6Zxk74-YaYk1r3HOet4g75ENmBxUmOK61tA0Iu5gn5t-KhUVvQ.ttf",weight:400,isVariable:!1},{displayName:"Tiny5",filename:"KFOpCnmCvdGT7hw-z0hHAi88",category:"sans-serif",url:"https://fonts.gstatic.com/s/tiny5/v3/KFOpCnmCvdGT7hw-z0hHAi88.ttf",weight:400,isVariable:!1},{displayName:"Scope One",filename:"WBLnrEXKYFlGHrOKmGD1W0_MJMGxiQ",category:"serif",url:"https://fonts.gstatic.com/s/scopeone/v15/WBLnrEXKYFlGHrOKmGD1W0_MJMGxiQ.ttf",weight:400,isVariable:!1},{displayName:"Nova Slim",filename:"Z9XUDmZNQAuem8jyZcn-yMOInrib9Q",category:"display",url:"https://fonts.gstatic.com/s/novaslim/v26/Z9XUDmZNQAuem8jyZcn-yMOInrib9Q.ttf",weight:400,isVariable:!1},{displayName:"Frijole",filename:"uU9PCBUR8oakM2BQ7xPb3vyHmlI",category:"display",url:"https://fonts.gstatic.com/s/frijole/v15/uU9PCBUR8oakM2BQ7xPb3vyHmlI.ttf",weight:400,isVariable:!1},{displayName:"IM Fell Double Pica SC",filename:"neIazDmuiMkFo6zj_sHpQ8teNbWlwBB_hXjJ4Y0Eeru2dGg",category:"serif",url:"https://fonts.gstatic.com/s/imfelldoublepicasc/v21/neIazDmuiMkFo6zj_sHpQ8teNbWlwBB_hXjJ4Y0Eeru2dGg.ttf",weight:400,isVariable:!1},{displayName:"Smythe",filename:"MwQ3bhT01--coT1BOLh_uGInjA",category:"display",url:"https://fonts.gstatic.com/s/smythe/v24/MwQ3bhT01--coT1BOLh_uGInjA.ttf",weight:400,isVariable:!1},{displayName:"Emilys Candy",filename:"2EbgL-1mD1Rnb0OGKudbk0y5r9xrX84JjA",category:"display",url:"https://fonts.gstatic.com/s/emilyscandy/v21/2EbgL-1mD1Rnb0OGKudbk0y5r9xrX84JjA.ttf",weight:400,isVariable:!1},{displayName:"Ysabeau SC",filename:"Noa36Uro3JCIKAbW46nMuLl7OCZ4ihE",category:"sans-serif",url:"https://fonts.gstatic.com/s/ysabeausc/v4/Noa36Uro3JCIKAbW46nMuLl7OCZ4ihE.ttf",weight:400,isVariable:!0},{displayName:"Fascinate",filename:"z7NWdRrufC8XJK0IIEli1LbQRPyNrw",category:"display",url:"https://fonts.gstatic.com/s/fascinate/v23/z7NWdRrufC8XJK0IIEli1LbQRPyNrw.ttf",weight:400,isVariable:!1},{displayName:"Akatab",filename:"VuJwdNrK3Z7gqJEPWIz5NIh-YA",category:"sans-serif",url:"https://fonts.gstatic.com/s/akatab/v9/VuJwdNrK3Z7gqJEPWIz5NIh-YA.ttf",weight:400,isVariable:!1},{displayName:"Miniver",filename:"eLGcP-PxIg-5H0vC770Cy8r8fWA",category:"display",url:"https://fonts.gstatic.com/s/miniver/v27/eLGcP-PxIg-5H0vC770Cy8r8fWA.ttf",weight:400,isVariable:!1},{displayName:"Sono",filename:"aFTb7PNiY3U2EKzdohWxGYU",category:"sans-serif",url:"https://fonts.gstatic.com/s/sono/v12/aFTb7PNiY3U2EKzdohWxGYU.ttf",weight:400,isVariable:!0},{displayName:"Stylish",filename:"m8JSjfhPYriQkk7-fo35dLxEdmo",category:"sans-serif",url:"https://fonts.gstatic.com/s/stylish/v25/m8JSjfhPYriQkk7-fo35dLxEdmo.ttf",weight:400,isVariable:!1},{displayName:"Gayathri",filename:"MCoQzAb429DbBilWLIA48J_wBugA",category:"sans-serif",url:"https://fonts.gstatic.com/s/gayathri/v20/MCoQzAb429DbBilWLIA48J_wBugA.ttf",weight:400,isVariable:!1},{displayName:"Gugi",filename:"A2BVn5dXywshVA6A9DEfgqM",category:"display",url:"https://fonts.gstatic.com/s/gugi/v21/A2BVn5dXywshVA6A9DEfgqM.ttf",weight:400,isVariable:!1},{displayName:"Phudu",filename:"0FlaVPSHk0ya-6mfWh8MZB8g",category:"display",url:"https://fonts.gstatic.com/s/phudu/v6/0FlaVPSHk0ya-6mfWh8MZB8g.ttf",weight:400,isVariable:!0},{displayName:"Duru Sans",filename:"xn7iYH8xwmSyTvEV_HOxT_fYdN-WZw",category:"sans-serif",url:"https://fonts.gstatic.com/s/durusans/v21/xn7iYH8xwmSyTvEV_HOxT_fYdN-WZw.ttf",weight:400,isVariable:!1},{displayName:"Freckle Face",filename:"AMOWz4SXrmKHCvXTohxY-YI0U1K2w9lb4g",category:"display",url:"https://fonts.gstatic.com/s/freckleface/v16/AMOWz4SXrmKHCvXTohxY-YI0U1K2w9lb4g.ttf",weight:400,isVariable:!1},{displayName:"Genos",filename:"SlGemQqPqpUOYSwoSzYsgWxz",category:"sans-serif",url:"https://fonts.gstatic.com/s/genos/v16/SlGemQqPqpUOYSwoSzYsgWxz.ttf",weight:400,isVariable:!0},{displayName:"Baloo Bhaina 2",filename:"qWczB6yyq4P9Adr3RtoX1q6yShz7mDUoupoI",category:"display",url:"https://fonts.gstatic.com/s/baloobhaina2/v29/qWczB6yyq4P9Adr3RtoX1q6yShz7mDUoupoI.ttf",weight:400,isVariable:!0},{displayName:"Belgrano",filename:"55xvey5tM9rwKWrJZcMFirl08KDJ",category:"serif",url:"https://fonts.gstatic.com/s/belgrano/v19/55xvey5tM9rwKWrJZcMFirl08KDJ.ttf",weight:400,isVariable:!1},{displayName:"Asset",filename:"SLXGc1na-mM4cWImRJqExst1",category:"display",url:"https://fonts.gstatic.com/s/asset/v30/SLXGc1na-mM4cWImRJqExst1.ttf",weight:400,isVariable:!1},{displayName:"Kdam Thmor Pro",filename:"EJRPQgAzVdcI-Qdvt34jzurnGA7_j89I8ZWb",category:"sans-serif",url:"https://fonts.gstatic.com/s/kdamthmorpro/v7/EJRPQgAzVdcI-Qdvt34jzurnGA7_j89I8ZWb.ttf",weight:400,isVariable:!1},{displayName:"Almendra Display",filename:"0FlPVOGWl1Sb4O3tETtADHRRlZhzXS_eTyer338",category:"display",url:"https://fonts.gstatic.com/s/almendradisplay/v33/0FlPVOGWl1Sb4O3tETtADHRRlZhzXS_eTyer338.ttf",weight:400,isVariable:!1},{displayName:"Kenia",filename:"jizURE5PuHQH9qCONUGswfGM",category:"display",url:"https://fonts.gstatic.com/s/kenia/v30/jizURE5PuHQH9qCONUGswfGM.ttf",weight:400,isVariable:!1},{displayName:"Bona Nova",filename:"B50NF7ZCpX7fcHfvIUBJi6hqHK-CLA",category:"serif",url:"https://fonts.gstatic.com/s/bonanova/v12/B50NF7ZCpX7fcHfvIUBJi6hqHK-CLA.ttf",weight:400,isVariable:!1},{displayName:"Mohave",filename:"7cHpv4ksjJunKqMPC8E46HsxnA",category:"sans-serif",url:"https://fonts.gstatic.com/s/mohave/v13/7cHpv4ksjJunKqMPC8E46HsxnA.ttf",weight:400,isVariable:!0},{displayName:"Comic Relief",filename:"BCauqZkHrvL55SZ8uaEhHMY2XBJhDgs-Kg",category:"display",url:"https://fonts.gstatic.com/s/comicrelief/v2/BCauqZkHrvL55SZ8uaEhHMY2XBJhDgs-Kg.ttf",weight:400,isVariable:!1},{displayName:"Nata Sans",filename:"1q2EY5KBClBit88SU_tOyMQbjEX5fw",category:"sans-serif",url:"https://fonts.gstatic.com/s/natasans/v1/1q2EY5KBClBit88SU_tOyMQbjEX5fw.ttf",weight:400,isVariable:!0},{displayName:"Sail",filename:"DPEjYwiBxwYJFBTDADYAbvw",category:"display",url:"https://fonts.gstatic.com/s/sail/v17/DPEjYwiBxwYJFBTDADYAbvw.ttf",weight:400,isVariable:!1},{displayName:"Birthstone Bounce",filename:"ga6XaxZF43lIvTWrktHOTBJZGH7dEeVJGIMYDo_8",category:"handwriting",url:"https://fonts.gstatic.com/s/birthstonebounce/v13/ga6XaxZF43lIvTWrktHOTBJZGH7dEeVJGIMYDo_8.ttf",weight:400,isVariable:!1},{displayName:"IM Fell Great Primer SC",filename:"ga6daxBOxyt6sCqz3fjZCTFCTUDMHagsQKdDTLf9BXz0s8FG",category:"serif",url:"https://fonts.gstatic.com/s/imfellgreatprimersc/v21/ga6daxBOxyt6sCqz3fjZCTFCTUDMHagsQKdDTLf9BXz0s8FG.ttf",weight:400,isVariable:!1},{displayName:"Sometype Mono",filename:"70lVu745KGk_R3uxyq0WrROhGpOrQEdC7m8",category:"monospace",url:"https://fonts.gstatic.com/s/sometypemono/v4/70lVu745KGk_R3uxyq0WrROhGpOrQEdC7m8.ttf",weight:400,isVariable:!0},{displayName:"Cherry Swash",filename:"i7dNIFByZjaNAMxtZcnfAy58QHi-EwWMbg",category:"display",url:"https://fonts.gstatic.com/s/cherryswash/v22/i7dNIFByZjaNAMxtZcnfAy58QHi-EwWMbg.ttf",weight:400,isVariable:!1},{displayName:"Trade Winds",filename:"AYCPpXPpYNIIT7h8-QenM3Jq7PKP5Z_G",category:"display",url:"https://fonts.gstatic.com/s/tradewinds/v18/AYCPpXPpYNIIT7h8-QenM3Jq7PKP5Z_G.ttf",weight:400,isVariable:!1},{displayName:"Homenaje",filename:"FwZY7-Q-xVAi_l-6Ld6A4sijpFu_",category:"sans-serif",url:"https://fonts.gstatic.com/s/homenaje/v17/FwZY7-Q-xVAi_l-6Ld6A4sijpFu_.ttf",weight:400,isVariable:!1},{displayName:"Astloch",filename:"TuGRUVJ8QI5GSeUjq9wRzMtkH1Q",category:"display",url:"https://fonts.gstatic.com/s/astloch/v27/TuGRUVJ8QI5GSeUjq9wRzMtkH1Q.ttf",weight:400,isVariable:!1},{displayName:"Noto Music",filename:"pe0rMIiSN5pO63htf1sxIteQB9Zra1U",category:"sans-serif",url:"https://fonts.gstatic.com/s/notomusic/v21/pe0rMIiSN5pO63htf1sxIteQB9Zra1U.ttf",weight:400,isVariable:!1},{displayName:"Stick",filename:"Qw3TZQpMCyTtJSvfvPVDMPoF",category:"sans-serif",url:"https://fonts.gstatic.com/s/stick/v20/Qw3TZQpMCyTtJSvfvPVDMPoF.ttf",weight:400,isVariable:!1},{displayName:"Miltonian Tattoo",filename:"EvOUzBRL0o0kCxF-lcMCQxlpVsA_FwP8MDBku-s",category:"display",url:"https://fonts.gstatic.com/s/miltoniantattoo/v34/EvOUzBRL0o0kCxF-lcMCQxlpVsA_FwP8MDBku-s.ttf",weight:400,isVariable:!1},{displayName:"Moon Dance",filename:"WBLgrEbUbFlYW9ekmGawe2XiKMiokE4",category:"handwriting",url:"https://fonts.gstatic.com/s/moondance/v8/WBLgrEbUbFlYW9ekmGawe2XiKMiokE4.ttf",weight:400,isVariable:!1},{displayName:"IM Fell French Canon SC",filename:"FBVmdCru5-ifcor2bgq9V89khWcmQghEURY7H3c0UBCVIVqH",category:"serif",url:"https://fonts.gstatic.com/s/imfellfrenchcanonsc/v23/FBVmdCru5-ifcor2bgq9V89khWcmQghEURY7H3c0UBCVIVqH.ttf",weight:400,isVariable:!1},{displayName:"Lumanosimo",filename:"K2F0fZBYg_JDSEZHEfO8AoqKAyLzfWo",category:"handwriting",url:"https://fonts.gstatic.com/s/lumanosimo/v5/K2F0fZBYg_JDSEZHEfO8AoqKAyLzfWo.ttf",weight:400,isVariable:!1},{displayName:"East Sea Dokdo",filename:"xfuo0Wn2V2_KanASqXSZp22m05_aGavYS18y",category:"handwriting",url:"https://fonts.gstatic.com/s/eastseadokdo/v26/xfuo0Wn2V2_KanASqXSZp22m05_aGavYS18y.ttf",weight:400,isVariable:!1},{displayName:"Sansation",filename:"LYjAdGPjnEg8DNA0z01grXArXN7HWQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/sansation/v1/LYjAdGPjnEg8DNA0z01grXArXN7HWQ.ttf",weight:400,isVariable:!1},{displayName:"Ledger",filename:"j8_q6-HK1L3if_sxm8DwHTBhHw",category:"serif",url:"https://fonts.gstatic.com/s/ledger/v17/j8_q6-HK1L3if_sxm8DwHTBhHw.ttf",weight:400,isVariable:!1},{displayName:"Overlock SC",filename:"1cX3aUHKGZrstGAY8nwVzHGAq8Sk1PoH",category:"display",url:"https://fonts.gstatic.com/s/overlocksc/v25/1cX3aUHKGZrstGAY8nwVzHGAq8Sk1PoH.ttf",weight:400,isVariable:!1},{displayName:"Delius Swash Caps",filename:"oY1E8fPLr7v4JWCExZpWebxVKORpXXedKmeBvEYs",category:"handwriting",url:"https://fonts.gstatic.com/s/deliusswashcaps/v25/oY1E8fPLr7v4JWCExZpWebxVKORpXXedKmeBvEYs.ttf",weight:400,isVariable:!1},{displayName:"Mooli",filename:"-F6_fjJpLyk1bYPBBG7YpzlJ",category:"sans-serif",url:"https://fonts.gstatic.com/s/mooli/v1/-F6_fjJpLyk1bYPBBG7YpzlJ.ttf",weight:400,isVariable:!1},{displayName:"Grenze",filename:"O4ZTFGb7hR12Bxq3_2gnmgwKlg",category:"serif",url:"https://fonts.gstatic.com/s/grenze/v16/O4ZTFGb7hR12Bxq3_2gnmgwKlg.ttf",weight:400,isVariable:!1},{displayName:"Rationale",filename:"9XUnlJ92n0_JFxHIfHcsdlFMzLC2Zw",category:"sans-serif",url:"https://fonts.gstatic.com/s/rationale/v30/9XUnlJ92n0_JFxHIfHcsdlFMzLC2Zw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Math",filename:"7Aump_cpkSecTWaHRlH2hyV5UHkG-V048PW0",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmath/v18/7Aump_cpkSecTWaHRlH2hyV5UHkG-V048PW0.ttf",weight:400,isVariable:!1},{displayName:"Rubik Doodle Shadow",filename:"rP2bp3im_k8G_wTVdvvMdHqmXTR3lEaLyKuZ3KOY7Gw",category:"display",url:"https://fonts.gstatic.com/s/rubikdoodleshadow/v1/rP2bp3im_k8G_wTVdvvMdHqmXTR3lEaLyKuZ3KOY7Gw.ttf",weight:400,isVariable:!1},{displayName:"Inclusive Sans",filename:"0nkxC9biPuwflXcJ46P4PGWE0971owa2LB4i",category:"sans-serif",url:"https://fonts.gstatic.com/s/inclusivesans/v4/0nkxC9biPuwflXcJ46P4PGWE0971owa2LB4i.ttf",weight:400,isVariable:!0},{displayName:"Zilla Slab Highlight",filename:"gNMbW2BrTpK8-inLtBJgMMfbm6uNVDvRxhtIY2DwSXlM",category:"serif",url:"https://fonts.gstatic.com/s/zillaslabhighlight/v21/gNMbW2BrTpK8-inLtBJgMMfbm6uNVDvRxhtIY2DwSXlM.ttf",weight:400,isVariable:!1},{displayName:"Bubbler One",filename:"f0Xy0eqj68ppQV9KBLmAouHH26MPePkt",category:"sans-serif",url:"https://fonts.gstatic.com/s/bubblerone/v22/f0Xy0eqj68ppQV9KBLmAouHH26MPePkt.ttf",weight:400,isVariable:!1},{displayName:"Caesar Dressing",filename:"yYLx0hLa3vawqtwdswbotmK4vrR3cbb6LZttyg",category:"display",url:"https://fonts.gstatic.com/s/caesardressing/v22/yYLx0hLa3vawqtwdswbotmK4vrR3cbb6LZttyg.ttf",weight:400,isVariable:!1},{displayName:"Protest Strike",filename:"0QI5MXdf4Y67Rn6vBog67ZjFlpzW0gZOs7BX",category:"display",url:"https://fonts.gstatic.com/s/proteststrike/v2/0QI5MXdf4Y67Rn6vBog67ZjFlpzW0gZOs7BX.ttf",weight:400,isVariable:!1},{displayName:"Varta",filename:"Qw3TZQpJHj_6LyvfvPVDMPoF",category:"sans-serif",url:"https://fonts.gstatic.com/s/varta/v25/Qw3TZQpJHj_6LyvfvPVDMPoF.ttf",weight:400,isVariable:!0},{displayName:"Edu TAS Beginner",filename:"ZXu9e04WubHfGVY-1TcNg7AFUmshmcPqoeRWfbs",category:"handwriting",url:"https://fonts.gstatic.com/s/edutasbeginner/v5/ZXu9e04WubHfGVY-1TcNg7AFUmshmcPqoeRWfbs.ttf",weight:400,isVariable:!0},{displayName:"Nova Script",filename:"7Au7p_IpkSWSTWaFWkumvmQNEl0O0kEx",category:"display",url:"https://fonts.gstatic.com/s/novascript/v27/7Au7p_IpkSWSTWaFWkumvmQNEl0O0kEx.ttf",weight:400,isVariable:!1},{displayName:"Tauri",filename:"TwMA-IISS0AM3IpVWHU_TBqO",category:"sans-serif",url:"https://fonts.gstatic.com/s/tauri/v20/TwMA-IISS0AM3IpVWHU_TBqO.ttf",weight:400,isVariable:!1},{displayName:"Yomogi",filename:"VuJwdNrS2ZL7rpoPWIz5NIh-YA",category:"handwriting",url:"https://fonts.gstatic.com/s/yomogi/v13/VuJwdNrS2ZL7rpoPWIz5NIh-YA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Thaana",filename:"C8c44dM-vnz-s-3jaEsxlxHkBH-WfuoxrSKMDvI",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansthaana/v26/C8c44dM-vnz-s-3jaEsxlxHkBH-WfuoxrSKMDvI.ttf",weight:400,isVariable:!0},{displayName:"Lavishly Yours",filename:"jizDREVIvGwH5OjiZmX9r5z_WxUY0TY7ikbI",category:"handwriting",url:"https://fonts.gstatic.com/s/lavishlyyours/v7/jizDREVIvGwH5OjiZmX9r5z_WxUY0TY7ikbI.ttf",weight:400,isVariable:!1},{displayName:"Pavanam",filename:"BXRrvF_aiezLh0xPDOtQ9Wf0QcE",category:"sans-serif",url:"https://fonts.gstatic.com/s/pavanam/v13/BXRrvF_aiezLh0xPDOtQ9Wf0QcE.ttf",weight:400,isVariable:!1},{displayName:"Nova Cut",filename:"KFOkCnSYu8mL-39LkWxPKTM1K9nz",category:"display",url:"https://fonts.gstatic.com/s/novacut/v26/KFOkCnSYu8mL-39LkWxPKTM1K9nz.ttf",weight:400,isVariable:!1},{displayName:"Habibi",filename:"CSR-4zFWkuqcTTNCShJeZOYySQ",category:"serif",url:"https://fonts.gstatic.com/s/habibi/v22/CSR-4zFWkuqcTTNCShJeZOYySQ.ttf",weight:400,isVariable:!1},{displayName:"Atomic Age",filename:"f0Xz0eug6sdmRFkYZZGL58Ht9a8GYeA",category:"display",url:"https://fonts.gstatic.com/s/atomicage/v29/f0Xz0eug6sdmRFkYZZGL58Ht9a8GYeA.ttf",weight:400,isVariable:!1},{displayName:"Miltonian",filename:"zOL-4pbPn6Ne9JqTg9mr6e5As-FeiQ",category:"display",url:"https://fonts.gstatic.com/s/miltonian/v32/zOL-4pbPn6Ne9JqTg9mr6e5As-FeiQ.ttf",weight:400,isVariable:!1},{displayName:"Fenix",filename:"XoHo2YL_S7-g5ostKzAFvs8o",category:"serif",url:"https://fonts.gstatic.com/s/fenix/v21/XoHo2YL_S7-g5ostKzAFvs8o.ttf",weight:400,isVariable:!1},{displayName:"Montserrat Underline",filename:"mFTuWaYfw6zH4dthXcyms01NtC8I_7U5uR4pxoPdAYRC",category:"sans-serif",url:"https://fonts.gstatic.com/s/montserratunderline/v3/mFTuWaYfw6zH4dthXcyms01NtC8I_7U5uR4pxoPdAYRC.ttf",weight:400,isVariable:!0},{displayName:"Gafata",filename:"XRXV3I6Cn0VJKon4MuyAbsrVcA",category:"sans-serif",url:"https://fonts.gstatic.com/s/gafata/v22/XRXV3I6Cn0VJKon4MuyAbsrVcA.ttf",weight:400,isVariable:!1},{displayName:"Mystery Quest",filename:"-nF6OG414u0E6k0wynSGlujRHwElD_9Qz9E",category:"display",url:"https://fonts.gstatic.com/s/mysteryquest/v21/-nF6OG414u0E6k0wynSGlujRHwElD_9Qz9E.ttf",weight:400,isVariable:!1},{displayName:"Sulphur Point",filename:"RLp5K5vv8KaycDcazWFPBj2aRfkSu6EuTHo",category:"sans-serif",url:"https://fonts.gstatic.com/s/sulphurpoint/v16/RLp5K5vv8KaycDcazWFPBj2aRfkSu6EuTHo.ttf",weight:400,isVariable:!1},{displayName:"Akaya Kanadaka",filename:"N0bM2S5CPO5oOQqvazoRRb-8-PfRS5VBBSSF",category:"display",url:"https://fonts.gstatic.com/s/akayakanadaka/v18/N0bM2S5CPO5oOQqvazoRRb-8-PfRS5VBBSSF.ttf",weight:400,isVariable:!1},{displayName:"Flamenco",filename:"neIIzCehqYguo67ssaWGHK06UY30",category:"display",url:"https://fonts.gstatic.com/s/flamenco/v19/neIIzCehqYguo67ssaWGHK06UY30.ttf",weight:400,isVariable:!1},{displayName:"Imbue",filename:"RLpxK5P16Ki3fWJoxzUobkvv",category:"serif",url:"https://fonts.gstatic.com/s/imbue/v29/RLpxK5P16Ki3fWJoxzUobkvv.ttf",weight:400,isVariable:!0},{displayName:"Island Moments",filename:"NaPBcZfVGvBdxIt7Ar0qzkXJF-TGIohbZ6SY",category:"handwriting",url:"https://fonts.gstatic.com/s/islandmoments/v8/NaPBcZfVGvBdxIt7Ar0qzkXJF-TGIohbZ6SY.ttf",weight:400,isVariable:!1},{displayName:"Nova Oval",filename:"jAnEgHdmANHvPenMaswCMY-h3cWkWg",category:"display",url:"https://fonts.gstatic.com/s/novaoval/v26/jAnEgHdmANHvPenMaswCMY-h3cWkWg.ttf",weight:400,isVariable:!1},{displayName:"Cute Font",filename:"Noaw6Uny2oWPbSHMrY6vmJNVNC9hkw",category:"display",url:"https://fonts.gstatic.com/s/cutefont/v28/Noaw6Uny2oWPbSHMrY6vmJNVNC9hkw.ttf",weight:400,isVariable:!1},{displayName:"Alkatra",filename:"r05bGLZA5qhCYsyJdOuD5jokU8E",category:"display",url:"https://fonts.gstatic.com/s/alkatra/v5/r05bGLZA5qhCYsyJdOuD5jokU8E.ttf",weight:400,isVariable:!0},{displayName:"Jolly Lodger",filename:"BXRsvFTAh_bGkA1uQ48dlB3VWerT3ZyuqA",category:"display",url:"https://fonts.gstatic.com/s/jollylodger/v21/BXRsvFTAh_bGkA1uQ48dlB3VWerT3ZyuqA.ttf",weight:400,isVariable:!1},{displayName:"Anek Tamil",filename:"XLYjIZH2bYJHGYtPGSbUHcloon8vVXg",category:"sans-serif",url:"https://fonts.gstatic.com/s/anektamil/v18/XLYjIZH2bYJHGYtPGSbUHcloon8vVXg.ttf",weight:400,isVariable:!0},{displayName:"Katibeh",filename:"ZGjXol5MQJog4bxDaC1RVDNdGDs",category:"display",url:"https://fonts.gstatic.com/s/katibeh/v22/ZGjXol5MQJog4bxDaC1RVDNdGDs.ttf",weight:400,isVariable:!1},{displayName:"Londrina Outline",filename:"C8c44dM8vmb14dfsZxhetg3pDH-SfuoxrSKMDvI",category:"display",url:"https://fonts.gstatic.com/s/londrinaoutline/v29/C8c44dM8vmb14dfsZxhetg3pDH-SfuoxrSKMDvI.ttf",weight:400,isVariable:!1},{displayName:"Karantina",filename:"buE0po24ccnh31GVMABJ8AA78NVSYw",category:"display",url:"https://fonts.gstatic.com/s/karantina/v13/buE0po24ccnh31GVMABJ8AA78NVSYw.ttf",weight:400,isVariable:!1},{displayName:"Gulzar",filename:"Wnz6HAc9eB3HB2ILYTwZqg_MPQ",category:"serif",url:"https://fonts.gstatic.com/s/gulzar/v14/Wnz6HAc9eB3HB2ILYTwZqg_MPQ.ttf",weight:400,isVariable:!1},{displayName:"Solitreo",filename:"r05YGLlS5a9KYsyNO8upyDYtStiJ",category:"handwriting",url:"https://fonts.gstatic.com/s/solitreo/v2/r05YGLlS5a9KYsyNO8upyDYtStiJ.ttf",weight:400,isVariable:!1},{displayName:"Akronim",filename:"fdN-9sqWtWZZlHRp-gBxkFYN-a8",category:"display",url:"https://fonts.gstatic.com/s/akronim/v23/fdN-9sqWtWZZlHRp-gBxkFYN-a8.ttf",weight:400,isVariable:!1},{displayName:"Gideon Roman",filename:"e3tmeuGrVOys8sxzZgWlmXoge0PWovdU4w",category:"display",url:"https://fonts.gstatic.com/s/gideonroman/v13/e3tmeuGrVOys8sxzZgWlmXoge0PWovdU4w.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Oriya",filename:"AYCTpXfzfccDCstK_hrjDyADv5en5K3DZq1hIg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansoriya/v33/AYCTpXfzfccDCstK_hrjDyADv5en5K3DZq1hIg.ttf",weight:400,isVariable:!0},{displayName:"Keania One",filename:"zOL54pXJk65E8pXardnuycRuv-hHkOs",category:"display",url:"https://fonts.gstatic.com/s/keaniaone/v26/zOL54pXJk65E8pXardnuycRuv-hHkOs.ttf",weight:400,isVariable:!1},{displayName:"Sigmar",filename:"hv-XlzJgIE8a85pUbWY3MTFgVg",category:"display",url:"https://fonts.gstatic.com/s/sigmar/v9/hv-XlzJgIE8a85pUbWY3MTFgVg.ttf",weight:400,isVariable:!1},{displayName:"Sedgwick Ave Display",filename:"xfuu0XPgU3jZPUoUo3ScvmPi-NapQ8OxM2czd-YnOzUD",category:"handwriting",url:"https://fonts.gstatic.com/s/sedgwickavedisplay/v23/xfuu0XPgU3jZPUoUo3ScvmPi-NapQ8OxM2czd-YnOzUD.ttf",weight:400,isVariable:!1},{displayName:"Zalando Sans SemiExpanded",filename:"6qLSKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE1xaBdpd7fjg",category:"sans-serif",url:"https://fonts.gstatic.com/s/zalandosanssemiexpanded/v2/6qLSKYcHuh3msE9OaXROVVclRRa-ClZSEipa2hrE1xaBdpd7fjg.ttf",weight:400,isVariable:!0},{displayName:"Gwendolyn",filename:"qkBXXvoO_M3CSss-d7ee5JRLkAXbMQ",category:"handwriting",url:"https://fonts.gstatic.com/s/gwendolyn/v9/qkBXXvoO_M3CSss-d7ee5JRLkAXbMQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Malayalam",filename:"JIAsUU5sdmdP_HMcVcZFcH7DeVBeGVgSMFM9UJWbN_un",category:"serif",url:"https://fonts.gstatic.com/s/notoserifmalayalam/v32/JIAsUU5sdmdP_HMcVcZFcH7DeVBeGVgSMFM9UJWbN_un.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Lao",filename:"bx6DNx2Ol_ixgdYWLm9BwxM3L2Wj1qsPTKs",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanslao/v33/bx6DNx2Ol_ixgdYWLm9BwxM3L2Wj1qsPTKs.ttf",weight:400,isVariable:!0},{displayName:"Lexend Mega",filename:"qFdA35aBi5JtHD41zSTFEv7K6BsAikI7",category:"sans-serif",url:"https://fonts.gstatic.com/s/lexendmega/v27/qFdA35aBi5JtHD41zSTFEv7K6BsAikI7.ttf",weight:400,isVariable:!0},{displayName:"Orbit",filename:"_LOCmz7I-uHd2mjEeqciRwRm",category:"sans-serif",url:"https://fonts.gstatic.com/s/orbit/v1/_LOCmz7I-uHd2mjEeqciRwRm.ttf",weight:400,isVariable:!1},{displayName:"Spline Sans Mono",filename:"R70BjzAei_CDNLfgZxrW6wrZOF2Wb5WTmW2a6l0",category:"monospace",url:"https://fonts.gstatic.com/s/splinesansmono/v13/R70BjzAei_CDNLfgZxrW6wrZOF2Wb5WTmW2a6l0.ttf",weight:400,isVariable:!0},{displayName:"Boldonse",filename:"ZgNQjPxGPbbJUZemjC38hmHmNpCO",category:"display",url:"https://fonts.gstatic.com/s/boldonse/v1/ZgNQjPxGPbbJUZemjC38hmHmNpCO.ttf",weight:400,isVariable:!1},{displayName:"Strait",filename:"DtViJxy6WaEr1LZzeDhtkl0U7w",category:"sans-serif",url:"https://fonts.gstatic.com/s/strait/v19/DtViJxy6WaEr1LZzeDhtkl0U7w.ttf",weight:400,isVariable:!1},{displayName:"Gentium Book Plus",filename:"vEFL2-RHBgUK5fbjKxRpbBtJPyRpofKfdbLOrdPV",category:"serif",url:"https://fonts.gstatic.com/s/gentiumbookplus/v1/vEFL2-RHBgUK5fbjKxRpbBtJPyRpofKfdbLOrdPV.ttf",weight:400,isVariable:!1},{displayName:"Comforter Brush",filename:"Y4GTYa1xVSggrfzZI5WMjxRaOz0jwLL9Th8YYA",category:"handwriting",url:"https://fonts.gstatic.com/s/comforterbrush/v9/Y4GTYa1xVSggrfzZI5WMjxRaOz0jwLL9Th8YYA.ttf",weight:400,isVariable:!1},{displayName:"Sonsie One",filename:"PbymFmP_EAnPqbKaoc18YVu80lbp8JM",category:"display",url:"https://fonts.gstatic.com/s/sonsieone/v22/PbymFmP_EAnPqbKaoc18YVu80lbp8JM.ttf",weight:400,isVariable:!1},{displayName:"Darumadrop One",filename:"cY9cfjeIW11dpCKgRLi675a87IhHBJOxZQPp",category:"display",url:"https://fonts.gstatic.com/s/darumadropone/v14/cY9cfjeIW11dpCKgRLi675a87IhHBJOxZQPp.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Telugu",filename:"tDbW2pCbnkEKmXNVmt2M1q6f4HWbbiSHZ0bc5Qj9",category:"serif",url:"https://fonts.gstatic.com/s/notoseriftelugu/v29/tDbW2pCbnkEKmXNVmt2M1q6f4HWbbiSHZ0bc5Qj9.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Buhid",filename:"Dxxy8jiXMW75w3OmoDXVWJD7YwzAe6tgnaFoGA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansbuhid/v23/Dxxy8jiXMW75w3OmoDXVWJD7YwzAe6tgnaFoGA.ttf",weight:400,isVariable:!1},{displayName:"Redacted",filename:"Z9XVDmdRShme2O_7aITe4u2El6GC",category:"display",url:"https://fonts.gstatic.com/s/redacted/v11/Z9XVDmdRShme2O_7aITe4u2El6GC.ttf",weight:400,isVariable:!1},{displayName:"Reddit Mono",filename:"oPWL_kRmmu4oQ88oo13o49rMTDp_R2SX",category:"monospace",url:"https://fonts.gstatic.com/s/redditmono/v5/oPWL_kRmmu4oQ88oo13o49rMTDp_R2SX.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Symbols 2",filename:"I_uyMoGduATTei9eI8daxVHDyfisHr71ypPqfX71-AI",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssymbols2/v25/I_uyMoGduATTei9eI8daxVHDyfisHr71ypPqfX71-AI.ttf",weight:400,isVariable:!1},{displayName:"Unlock",filename:"7Au-p_8ykD-cDl7GKAjSwkUVOQ",category:"display",url:"https://fonts.gstatic.com/s/unlock/v28/7Au-p_8ykD-cDl7GKAjSwkUVOQ.ttf",weight:400,isVariable:!1},{displayName:"Alkalami",filename:"zOL_4pfDmqRL95WXi5eLw8BMuvhH",category:"serif",url:"https://fonts.gstatic.com/s/alkalami/v8/zOL_4pfDmqRL95WXi5eLw8BMuvhH.ttf",weight:400,isVariable:!1},{displayName:"Barrio",filename:"wEO8EBXBk8hBIDiEdQYhWdsX1Q",category:"display",url:"https://fonts.gstatic.com/s/barrio/v20/wEO8EBXBk8hBIDiEdQYhWdsX1Q.ttf",weight:400,isVariable:!1},{displayName:"Chau Philomene One",filename:"55xxezRsPtfie1vPY49qzdgSlJiHRQFsnIx7QMISdQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/chauphilomeneone/v16/55xxezRsPtfie1vPY49qzdgSlJiHRQFsnIx7QMISdQ.ttf",weight:400,isVariable:!1},{displayName:"Winky Sans",filename:"ll85K2SDUiG1Hpf2p06bB6oikgYbnRQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/winkysans/v3/ll85K2SDUiG1Hpf2p06bB6oikgYbnRQ.ttf",weight:400,isVariable:!0},{displayName:"Shalimar",filename:"uU9MCBoE6I6iNWFUvTPx8PCOg0uX",category:"handwriting",url:"https://fonts.gstatic.com/s/shalimar/v9/uU9MCBoE6I6iNWFUvTPx8PCOg0uX.ttf",weight:400,isVariable:!1},{displayName:"Sree Krushnadevaraya",filename:"R70FjzQeifmPepmyQQjQ9kvwMkWYPfTA_EWb2FhQuXir",category:"serif",url:"https://fonts.gstatic.com/s/sreekrushnadevaraya/v23/R70FjzQeifmPepmyQQjQ9kvwMkWYPfTA_EWb2FhQuXir.ttf",weight:400,isVariable:!1},{displayName:"Kapakana",filename:"sykw-yN0m6InS7OD9AqX1NbNp02R",category:"handwriting",url:"https://fonts.gstatic.com/s/kapakana/v19/sykw-yN0m6InS7OD9AqX1NbNp02R.ttf",weight:400,isVariable:!0},{displayName:"Headland One",filename:"yYLu0hHR2vKnp89Tk1TCq3Tx0PlTeZ3mJA",category:"serif",url:"https://fonts.gstatic.com/s/headlandone/v17/yYLu0hHR2vKnp89Tk1TCq3Tx0PlTeZ3mJA.ttf",weight:400,isVariable:!1},{displayName:"Risque",filename:"VdGfAZUfHosahXxoCUYVBJ-T5g",category:"display",url:"https://fonts.gstatic.com/s/risque/v24/VdGfAZUfHosahXxoCUYVBJ-T5g.ttf",weight:400,isVariable:!1},{displayName:"Srisakdi",filename:"yMJRMIlvdpDbkB0A-jq8fSx5i814",category:"display",url:"https://fonts.gstatic.com/s/srisakdi/v18/yMJRMIlvdpDbkB0A-jq8fSx5i814.ttf",weight:400,isVariable:!1},{displayName:"Imperial Script",filename:"5DCPAKrpzy_H98IV2ISnZBbGrVNvPenlvttWNg",category:"handwriting",url:"https://fonts.gstatic.com/s/imperialscript/v8/5DCPAKrpzy_H98IV2ISnZBbGrVNvPenlvttWNg.ttf",weight:400,isVariable:!1},{displayName:"Gupter",filename:"2-cm9JNmxJqPO1QUYZa_Wu_lpA",category:"serif",url:"https://fonts.gstatic.com/s/gupter/v18/2-cm9JNmxJqPO1QUYZa_Wu_lpA.ttf",weight:400,isVariable:!1},{displayName:"Lovers Quarrel",filename:"Yq6N-LSKXTL-5bCy8ksBzpQ_-zAsY7pO6siz",category:"handwriting",url:"https://fonts.gstatic.com/s/loversquarrel/v25/Yq6N-LSKXTL-5bCy8ksBzpQ_-zAsY7pO6siz.ttf",weight:400,isVariable:!1},{displayName:"Chocolate Classical Sans",filename:"nuFqD-PLTZX4XIgT-P2ToCDudWHHflqUpTpfjWdDPI2J9mHITw",category:"sans-serif",url:"https://fonts.gstatic.com/s/chocolateclassicalsans/v14/nuFqD-PLTZX4XIgT-P2ToCDudWHHflqUpTpfjWdDPI2J9mHITw.ttf",weight:400,isVariable:!1},{displayName:"Rum Raisin",filename:"nwpRtKu3Ih8D5avB4h2uJ3-IywA7eMM",category:"sans-serif",url:"https://fonts.gstatic.com/s/rumraisin/v24/nwpRtKu3Ih8D5avB4h2uJ3-IywA7eMM.ttf",weight:400,isVariable:!1},{displayName:"Long Cang",filename:"LYjAdGP8kkgoTec8zkRgrXArXN7HWQ",category:"handwriting",url:"https://fonts.gstatic.com/s/longcang/v21/LYjAdGP8kkgoTec8zkRgrXArXN7HWQ.ttf",weight:400,isVariable:!1},{displayName:"Engagement",filename:"x3dlckLDZbqa7RUs9MFVXNossybsHQI",category:"handwriting",url:"https://fonts.gstatic.com/s/engagement/v29/x3dlckLDZbqa7RUs9MFVXNossybsHQI.ttf",weight:400,isVariable:!1},{displayName:"Stalemate",filename:"taiIGmZ_EJq97-UfkZRpuqSs8ZQpaQ",category:"handwriting",url:"https://fonts.gstatic.com/s/stalemate/v24/taiIGmZ_EJq97-UfkZRpuqSs8ZQpaQ.ttf",weight:400,isVariable:!1},{displayName:"Libre Barcode 39 Extended",filename:"8At7Gt6_O5yNS0-K4Nf5U922qSzhJ3dUdfJpwNUgfNRCOZ1GOBw",category:"display",url:"https://fonts.gstatic.com/s/librebarcode39extended/v30/8At7Gt6_O5yNS0-K4Nf5U922qSzhJ3dUdfJpwNUgfNRCOZ1GOBw.ttf",weight:400,isVariable:!1},{displayName:"Joan",filename:"ZXupe1oZsqWRbRdH8X1p_Ng",category:"serif",url:"https://fonts.gstatic.com/s/joan/v12/ZXupe1oZsqWRbRdH8X1p_Ng.ttf",weight:400,isVariable:!1},{displayName:"Englebert",filename:"xn7iYH8w2XGrC8AR4HSxT_fYdN-WZw",category:"sans-serif",url:"https://fonts.gstatic.com/s/englebert/v24/xn7iYH8w2XGrC8AR4HSxT_fYdN-WZw.ttf",weight:400,isVariable:!1},{displayName:"Bonheur Royale",filename:"c4m51nt_GMTrtX-b9GcG4-YRmYK_c0f1N5Ij",category:"handwriting",url:"https://fonts.gstatic.com/s/bonheurroyale/v15/c4m51nt_GMTrtX-b9GcG4-YRmYK_c0f1N5Ij.ttf",weight:400,isVariable:!1},{displayName:"Mate SC",filename:"-nF8OGQ1-uoVr2wKyiXZ95OkJwA",category:"serif",url:"https://fonts.gstatic.com/s/matesc/v23/-nF8OGQ1-uoVr2wKyiXZ95OkJwA.ttf",weight:400,isVariable:!1},{displayName:"Spirax",filename:"buE3poKgYNLy0F3cXktt-Csn-Q",category:"display",url:"https://fonts.gstatic.com/s/spirax/v22/buE3poKgYNLy0F3cXktt-Csn-Q.ttf",weight:400,isVariable:!1},{displayName:"Rubik Wet Paint",filename:"HTx0L20uMDGHgdULcpTF3Oe4d_-F-zz313DuvQ",category:"display",url:"https://fonts.gstatic.com/s/rubikwetpaint/v2/HTx0L20uMDGHgdULcpTF3Oe4d_-F-zz313DuvQ.ttf",weight:400,isVariable:!1},{displayName:"Comme",filename:"8QIHdirKhMbn-vu-sowsrqjk",category:"sans-serif",url:"https://fonts.gstatic.com/s/comme/v4/8QIHdirKhMbn-vu-sowsrqjk.ttf",weight:400,isVariable:!0},{displayName:"IBM Plex Sans Thai Looped",filename:"tss_AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30LxBKAoFGoBCQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/ibmplexsansthailooped/v12/tss_AoJJRAhL3BTrK3r2xxbFhvKfyBB6l7hHT30LxBKAoFGoBCQ.ttf",weight:400,isVariable:!1},{displayName:"Anek Kannada",filename:"rax6HiCNvNMKe1CKFsINYFl6m2Dc-T-EKQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/anekkannada/v15/rax6HiCNvNMKe1CKFsINYFl6m2Dc-T-EKQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Ethiopic",filename:"7cH1v50vjIepfJVOZZgcpQ5B9FBTH9KcPtq-rpvLpQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansethiopic/v50/7cH1v50vjIepfJVOZZgcpQ5B9FBTH9KcPtq-rpvLpQ.ttf",weight:400,isVariable:!0},{displayName:"Underdog",filename:"CHygV-jCElj7diMroVSiU14GN2Il",category:"display",url:"https://fonts.gstatic.com/s/underdog/v24/CHygV-jCElj7diMroVSiU14GN2Il.ttf",weight:400,isVariable:!1},{displayName:"Beau Rivage",filename:"UcCi3FIgIG2bH4mMNWJUlmg3NZp8K2sL",category:"handwriting",url:"https://fonts.gstatic.com/s/beaurivage/v2/UcCi3FIgIG2bH4mMNWJUlmg3NZp8K2sL.ttf",weight:400,isVariable:!1},{displayName:"Kulim Park",filename:"fdN79secq3hflz1Uu3IwtF4m5aZxebw",category:"sans-serif",url:"https://fonts.gstatic.com/s/kulimpark/v15/fdN79secq3hflz1Uu3IwtF4m5aZxebw.ttf",weight:400,isVariable:!1},{displayName:"Doto",filename:"t5tvIRMbNJ6TWmXqV2W2tKc",category:"sans-serif",url:"https://fonts.gstatic.com/s/doto/v3/t5tvIRMbNJ6TWmXqV2W2tKc.ttf",weight:400,isVariable:!0},{displayName:"Suwannaphum",filename:"jAnCgHV7GtDvc8jbe8hXXIWl_8C0Wg2V",category:"serif",url:"https://fonts.gstatic.com/s/suwannaphum/v33/jAnCgHV7GtDvc8jbe8hXXIWl_8C0Wg2V.ttf",weight:400,isVariable:!1},{displayName:"Ranchers",filename:"zrfm0H3Lx-P2Xvs2AoDYDC79XTHv",category:"display",url:"https://fonts.gstatic.com/s/ranchers/v19/zrfm0H3Lx-P2Xvs2AoDYDC79XTHv.ttf",weight:400,isVariable:!1},{displayName:"Mynerve",filename:"P5sCzZKPdNjb4jt7xCRuiZ-uydg",category:"handwriting",url:"https://fonts.gstatic.com/s/mynerve/v8/P5sCzZKPdNjb4jt7xCRuiZ-uydg.ttf",weight:400,isVariable:!1},{displayName:"Akaya Telivigala",filename:"lJwc-oo_iG9wXqU3rCTD395tp0uifdLdsIH0YH8",category:"display",url:"https://fonts.gstatic.com/s/akayatelivigala/v28/lJwc-oo_iG9wXqU3rCTD395tp0uifdLdsIH0YH8.ttf",weight:400,isVariable:!1},{displayName:"Margarine",filename:"qkBXXvoE6trLT9Y7YLye5JRLkAXbMQ",category:"display",url:"https://fonts.gstatic.com/s/margarine/v27/qkBXXvoE6trLT9Y7YLye5JRLkAXbMQ.ttf",weight:400,isVariable:!1},{displayName:"Liu Jian Mao Cao",filename:"845DNN84HJrccNonurqXILGpvCOoferVKGWsUo8",category:"handwriting",url:"https://fonts.gstatic.com/s/liujianmaocao/v24/845DNN84HJrccNonurqXILGpvCOoferVKGWsUo8.ttf",weight:400,isVariable:!1},{displayName:"Erica One",filename:"WBLnrEXccV9VGrOKmGD1W0_MJMGxiQ",category:"display",url:"https://fonts.gstatic.com/s/ericaone/v29/WBLnrEXccV9VGrOKmGD1W0_MJMGxiQ.ttf",weight:400,isVariable:!1},{displayName:"My Soul",filename:"3XFqErcuy945_u6KF_Ulk2nnXf0",category:"handwriting",url:"https://fonts.gstatic.com/s/mysoul/v7/3XFqErcuy945_u6KF_Ulk2nnXf0.ttf",weight:400,isVariable:!1},{displayName:"Ramaraja",filename:"SlGTmQearpYAYG1CABIkqnB6aSQU",category:"serif",url:"https://fonts.gstatic.com/s/ramaraja/v17/SlGTmQearpYAYG1CABIkqnB6aSQU.ttf",weight:400,isVariable:!1},{displayName:"Port Lligat Slab",filename:"LDIpaoiQNgArA8kR7ulhZ8P_NYOss7ob9yGLmfI",category:"serif",url:"https://fonts.gstatic.com/s/portlligatslab/v27/LDIpaoiQNgArA8kR7ulhZ8P_NYOss7ob9yGLmfI.ttf",weight:400,isVariable:!1},{displayName:"Content",filename:"zrfl0HLayePhU_AwUaDyIiL0RCg",category:"display",url:"https://fonts.gstatic.com/s/content/v27/zrfl0HLayePhU_AwUaDyIiL0RCg.ttf",weight:400,isVariable:!1},{displayName:"Anek Gujarati",filename:"l7gZbj5oysqknvkCo2T_8FuiOxtiArlM4k8",category:"sans-serif",url:"https://fonts.gstatic.com/s/anekgujarati/v17/l7gZbj5oysqknvkCo2T_8FuiOxtiArlM4k8.ttf",weight:400,isVariable:!0},{displayName:"Bagel Fat One",filename:"hYkPPucsQOr5dy02WmQr5Zkd0B5mvv0dSbM",category:"display",url:"https://fonts.gstatic.com/s/bagelfatone/v2/hYkPPucsQOr5dy02WmQr5Zkd0B5mvv0dSbM.ttf",weight:400,isVariable:!1},{displayName:"Trispace",filename:"Yq6X-LKSQC3o56Lxxh5gluJSlggt",category:"sans-serif",url:"https://fonts.gstatic.com/s/trispace/v27/Yq6X-LKSQC3o56Lxxh5gluJSlggt.ttf",weight:400,isVariable:!0},{displayName:"Poltawski Nowy",filename:"flUhRq6ww480U1xsUpFXD-iDBMNZIhI8tIHh",category:"serif",url:"https://fonts.gstatic.com/s/poltawskinowy/v5/flUhRq6ww480U1xsUpFXD-iDBMNZIhI8tIHh.ttf",weight:400,isVariable:!0},{displayName:"Playwrite US Trad",filename:"fdNk9tyHsnVPjW9trmV7wQ0stdwRBZ0uKDBFUEXz",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteustrad/v11/fdNk9tyHsnVPjW9trmV7wQ0stdwRBZ0uKDBFUEXz.ttf",weight:400,isVariable:!0},{displayName:"Jersey 15",filename:"_6_9EDzuROGsUuk2TWjSYoohsCkvSQ",category:"display",url:"https://fonts.gstatic.com/s/jersey15/v4/_6_9EDzuROGsUuk2TWjSYoohsCkvSQ.ttf",weight:400,isVariable:!1},{displayName:"Chiron GoRound TC",filename:"tss3AopDbiwZ4xauFDX3yQ3Ywoaj6lla8dMgPgBu",category:"sans-serif",url:"https://fonts.gstatic.com/s/chirongoroundtc/v2/tss3AopDbiwZ4xauFDX3yQ3Ywoaj6lla8dMgPgBu.ttf",weight:400,isVariable:!0},{displayName:"Jomolhari",filename:"EvONzA1M1Iw_CBd2hsQCF1IZKq5INg",category:"serif",url:"https://fonts.gstatic.com/s/jomolhari/v21/EvONzA1M1Iw_CBd2hsQCF1IZKq5INg.ttf",weight:400,isVariable:!1},{displayName:"Protest Riot",filename:"d6lPkaOxWMKm7TdezXFmpkrM1_JgjmRpOA",category:"display",url:"https://fonts.gstatic.com/s/protestriot/v2/d6lPkaOxWMKm7TdezXFmpkrM1_JgjmRpOA.ttf",weight:400,isVariable:!1},{displayName:"Dangrek",filename:"LYjCdG30nEgoH8E2gCNqqVIuTN4",category:"display",url:"https://fonts.gstatic.com/s/dangrek/v33/LYjCdG30nEgoH8E2gCNqqVIuTN4.ttf",weight:400,isVariable:!1},{displayName:"Sedan SC",filename:"yMJRMIlvYZ3Jn1Y30Dq8fSx5i814",category:"serif",url:"https://fonts.gstatic.com/s/sedansc/v2/yMJRMIlvYZ3Jn1Y30Dq8fSx5i814.ttf",weight:400,isVariable:!1},{displayName:"Tillana",filename:"VuJxdNvf35P4qJ1OeKbXOIFneRo",category:"display",url:"https://fonts.gstatic.com/s/tillana/v15/VuJxdNvf35P4qJ1OeKbXOIFneRo.ttf",weight:400,isVariable:!1},{displayName:"BIZ UDMincho",filename:"EJRRQgI6eOxFjBdKs38yhtW1dwT7rcpY8Q",category:"serif",url:"https://fonts.gstatic.com/s/bizudmincho/v11/EJRRQgI6eOxFjBdKs38yhtW1dwT7rcpY8Q.ttf",weight:400,isVariable:!1},{displayName:"Luxurious Script",filename:"ahcCv9e7yydulT32KZ0rBIoD7DzMg0rOby1JtYk",category:"handwriting",url:"https://fonts.gstatic.com/s/luxuriousscript/v9/ahcCv9e7yydulT32KZ0rBIoD7DzMg0rOby1JtYk.ttf",weight:400,isVariable:!1},{displayName:"Single Day",filename:"LYjHdGDjlEgoAcF95EI5jVoFUNfeQJU",category:"display",url:"https://fonts.gstatic.com/s/singleday/v19/LYjHdGDjlEgoAcF95EI5jVoFUNfeQJU.ttf",weight:400,isVariable:!1},{displayName:"Handjet",filename:"oY1e8eXHq7n1OnbQtu0dDtx0c4Q",category:"display",url:"https://fonts.gstatic.com/s/handjet/v22/oY1e8eXHq7n1OnbQtu0dDtx0c4Q.ttf",weight:400,isVariable:!0},{displayName:"Zen Tokyo Zoo",filename:"NGSyv5ffC0J_BK6aFNtr6sRv8a1uRWe9amg",category:"display",url:"https://fonts.gstatic.com/s/zentokyozoo/v8/NGSyv5ffC0J_BK6aFNtr6sRv8a1uRWe9amg.ttf",weight:400,isVariable:!1},{displayName:"Milonga",filename:"SZc53FHnIaK9W5kffz3GkUrS8DI",category:"display",url:"https://fonts.gstatic.com/s/milonga/v24/SZc53FHnIaK9W5kffz3GkUrS8DI.ttf",weight:400,isVariable:!1},{displayName:"Kaisei HarunoUmi",filename:"HI_RiZQSLqBQoAHhK_C6N_nzy_jcGsv5sM8u3mk",category:"serif",url:"https://fonts.gstatic.com/s/kaiseiharunoumi/v11/HI_RiZQSLqBQoAHhK_C6N_nzy_jcGsv5sM8u3mk.ttf",weight:400,isVariable:!1},{displayName:"Dekko",filename:"46khlb_wWjfSrttFR0vsfl1B",category:"handwriting",url:"https://fonts.gstatic.com/s/dekko/v23/46khlb_wWjfSrttFR0vsfl1B.ttf",weight:400,isVariable:!1},{displayName:"Paprika",filename:"8QIJdijZitv49rDfuIgOq7jkAOw",category:"display",url:"https://fonts.gstatic.com/s/paprika/v24/8QIJdijZitv49rDfuIgOq7jkAOw.ttf",weight:400,isVariable:!1},{displayName:"Passions Conflict",filename:"kmKnZrcrFhfafnWX9x0GuEC-zowow5NeYRI4CN2V",category:"handwriting",url:"https://fonts.gstatic.com/s/passionsconflict/v9/kmKnZrcrFhfafnWX9x0GuEC-zowow5NeYRI4CN2V.ttf",weight:400,isVariable:!1},{displayName:"Sura",filename:"SZc23FL5PbyzFf5UWzXtjUM",category:"serif",url:"https://fonts.gstatic.com/s/sura/v21/SZc23FL5PbyzFf5UWzXtjUM.ttf",weight:400,isVariable:!1},{displayName:"Stint Ultra Condensed",filename:"-W_gXIrsVjjeyEnPC45qD2NoFPtBE0xCh2A-qhUO2cNvdg",category:"serif",url:"https://fonts.gstatic.com/s/stintultracondensed/v25/-W_gXIrsVjjeyEnPC45qD2NoFPtBE0xCh2A-qhUO2cNvdg.ttf",weight:400,isVariable:!1},{displayName:"Seymour One",filename:"4iCp6Khla9xbjQpoWGGd0myIPYBvgpUI",category:"sans-serif",url:"https://fonts.gstatic.com/s/seymourone/v25/4iCp6Khla9xbjQpoWGGd0myIPYBvgpUI.ttf",weight:400,isVariable:!1},{displayName:"Inika",filename:"rnCm-x5X3QP-phTHRcc2s2XH",category:"serif",url:"https://fonts.gstatic.com/s/inika/v22/rnCm-x5X3QP-phTHRcc2s2XH.ttf",weight:400,isVariable:!1},{displayName:"Farsan",filename:"VEMwRoJ0vY_zsyz62q-pxDX9rQ",category:"display",url:"https://fonts.gstatic.com/s/farsan/v24/VEMwRoJ0vY_zsyz62q-pxDX9rQ.ttf",weight:400,isVariable:!1},{displayName:"Lexend Tera",filename:"RrQUbo98_jt_IXnBPwCWtZhARYMgGtWA",category:"sans-serif",url:"https://fonts.gstatic.com/s/lexendtera/v29/RrQUbo98_jt_IXnBPwCWtZhARYMgGtWA.ttf",weight:400,isVariable:!0},{displayName:"Micro 5",filename:"H4cnBX2MkcfEngTr0gYQ7LO5mqc",category:"display",url:"https://fonts.gstatic.com/s/micro5/v2/H4cnBX2MkcfEngTr0gYQ7LO5mqc.ttf",weight:400,isVariable:!1},{displayName:"Braah One",filename:"KFOlCnWUpt6LsxxxiylvAx05IsDqlA",category:"sans-serif",url:"https://fonts.gstatic.com/s/braahone/v8/KFOlCnWUpt6LsxxxiylvAx05IsDqlA.ttf",weight:400,isVariable:!1},{displayName:"Ruthie",filename:"gokvH63sGkdqXuU9lD53Q2u_mQ",category:"handwriting",url:"https://fonts.gstatic.com/s/ruthie/v28/gokvH63sGkdqXuU9lD53Q2u_mQ.ttf",weight:400,isVariable:!1},{displayName:"Ysabeau",filename:"kmK9ZqEiBAXLcnuMpD1v0ybZuuQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/ysabeau/v5/kmK9ZqEiBAXLcnuMpD1v0ybZuuQ.ttf",weight:400,isVariable:!0},{displayName:"Climate Crisis",filename:"wEOkEB3AntNeKCPBVW9XOKlmp2ofo7fHQOnM",category:"display",url:"https://fonts.gstatic.com/s/climatecrisis/v14/wEOkEB3AntNeKCPBVW9XOKlmp2ofo7fHQOnM.ttf",weight:400,isVariable:!1},{displayName:"Girassol",filename:"JTUUjIo_-DK48laaNC9Nz2pJzxbi",category:"display",url:"https://fonts.gstatic.com/s/girassol/v24/JTUUjIo_-DK48laaNC9Nz2pJzxbi.ttf",weight:400,isVariable:!1},{displayName:"Rubik Scribble",filename:"snfzs0Cp48d67SuHQOpjXLsQpbqbSjORSo9W",category:"display",url:"https://fonts.gstatic.com/s/rubikscribble/v1/snfzs0Cp48d67SuHQOpjXLsQpbqbSjORSo9W.ttf",weight:400,isVariable:!1},{displayName:"IBM Plex Sans Devanagari",filename:"XRXH3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O__VUL0c83gCA",category:"sans-serif",url:"https://fonts.gstatic.com/s/ibmplexsansdevanagari/v12/XRXH3JCMvG4IDoS9SubXB6W-UX5iehIMBFR2-O__VUL0c83gCA.ttf",weight:400,isVariable:!1},{displayName:"Texturina",filename:"c4mi1nxpEtL3pXiAulRJmq159KOnWA",category:"serif",url:"https://fonts.gstatic.com/s/texturina/v32/c4mi1nxpEtL3pXiAulRJmq159KOnWA.ttf",weight:400,isVariable:!0},{displayName:"Carrois Gothic SC",filename:"ZgNJjOVHM6jfUZCmyUqT2A2HVKjc-28nNHabY4dN",category:"sans-serif",url:"https://fonts.gstatic.com/s/carroisgothicsc/v16/ZgNJjOVHM6jfUZCmyUqT2A2HVKjc-28nNHabY4dN.ttf",weight:400,isVariable:!1},{displayName:"Dorsa",filename:"yYLn0hjd0OGwqo493XCFxAnQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/dorsa/v29/yYLn0hjd0OGwqo493XCFxAnQ.ttf",weight:400,isVariable:!1},{displayName:"Bilbo",filename:"o-0EIpgpwWwZ210hpIRz4wxE",category:"handwriting",url:"https://fonts.gstatic.com/s/bilbo/v21/o-0EIpgpwWwZ210hpIRz4wxE.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DE Grund",filename:"EJRLQhwoXdccriFurnRxqv-1MFyKy69g8Keepi2lHw",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedegrund/v11/EJRLQhwoXdccriFurnRxqv-1MFyKy69g8Keepi2lHw.ttf",weight:400,isVariable:!0},{displayName:"Romanesco",filename:"w8gYH2ozQOY7_r_J7mSn3HwLqOqSBg",category:"handwriting",url:"https://fonts.gstatic.com/s/romanesco/v22/w8gYH2ozQOY7_r_J7mSn3HwLqOqSBg.ttf",weight:400,isVariable:!1},{displayName:"Federant",filename:"2sDdZGNfip_eirT0_U0jRUG0AqUc",category:"display",url:"https://fonts.gstatic.com/s/federant/v31/2sDdZGNfip_eirT0_U0jRUG0AqUc.ttf",weight:400,isVariable:!1},{displayName:"Rubik Gemstones",filename:"zrf90HrL0-_8Xb4DFM2rUkWbOVrOiCnGqi1GMw",category:"display",url:"https://fonts.gstatic.com/s/rubikgemstones/v1/zrf90HrL0-_8Xb4DFM2rUkWbOVrOiCnGqi1GMw.ttf",weight:400,isVariable:!1},{displayName:"Stoke",filename:"z7NadRb7aTMfKONpfihK1YTV",category:"serif",url:"https://fonts.gstatic.com/s/stoke/v26/z7NadRb7aTMfKONpfihK1YTV.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Osmanya",filename:"8vIS7xs32H97qzQKnzfeWzUyUpOJmz6kR47NCV5Z",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansosmanya/v19/8vIS7xs32H97qzQKnzfeWzUyUpOJmz6kR47NCV5Z.ttf",weight:400,isVariable:!1},{displayName:"Victor Mono",filename:"Yq6Q-LGQWyfv-LGy7lEO08ZavRQkSKZH",category:"monospace",url:"https://fonts.gstatic.com/s/victormono/v5/Yq6Q-LGQWyfv-LGy7lEO08ZavRQkSKZH.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Tagalog",filename:"J7aFnoNzCnFcV9ZI-sUYuvote1R0wwEAA8jHexnL",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstagalog/v23/J7aFnoNzCnFcV9ZI-sUYuvote1R0wwEAA8jHexnL.ttf",weight:400,isVariable:!1},{displayName:"Ballet",filename:"QGYvz_MYZA-HM4N5s0Frc4H0ng",category:"handwriting",url:"https://fonts.gstatic.com/s/ballet/v30/QGYvz_MYZA-HM4N5s0Frc4H0ng.ttf",weight:400,isVariable:!1},{displayName:"Kavoon",filename:"pxiFyp4_scRYhlU4NLr6f1pdEQ",category:"display",url:"https://fonts.gstatic.com/s/kavoon/v25/pxiFyp4_scRYhlU4NLr6f1pdEQ.ttf",weight:400,isVariable:!1},{displayName:"Shippori Antique B1",filename:"2Eb7L_JwClR7Zl_UAKZ0mUHw3oMKd40grRFCj9-5Y8Y",category:"sans-serif",url:"https://fonts.gstatic.com/s/shipporiantiqueb1/v11/2Eb7L_JwClR7Zl_UAKZ0mUHw3oMKd40grRFCj9-5Y8Y.ttf",weight:400,isVariable:!1},{displayName:"Castoro Titling",filename:"buEupouwccj03leTfjUAhEZWlrNqYgckeo9RMw",category:"display",url:"https://fonts.gstatic.com/s/castorotitling/v10/buEupouwccj03leTfjUAhEZWlrNqYgckeo9RMw.ttf",weight:400,isVariable:!1},{displayName:"Alan Sans",filename:"zOL-4pbDmq5Eu6ebjMSr6e5As-FeiQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/alansans/v5/zOL-4pbDmq5Eu6ebjMSr6e5As-FeiQ.ttf",weight:400,isVariable:!0},{displayName:"Siemreap",filename:"Gg82N5oFbgLvHAfNl2YbnA8DLXpe",category:"sans-serif",url:"https://fonts.gstatic.com/s/siemreap/v30/Gg82N5oFbgLvHAfNl2YbnA8DLXpe.ttf",weight:400,isVariable:!1},{displayName:"Yeon Sung",filename:"QldMNTpbohAGtsJvUn6xSVNazqx2xg",category:"display",url:"https://fonts.gstatic.com/s/yeonsung/v22/QldMNTpbohAGtsJvUn6xSVNazqx2xg.ttf",weight:400,isVariable:!1},{displayName:"Playwrite HU",filename:"A2Bdn59A0g0xA3zDhFw-0vfVU7mVsM4Fqg",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritehu/v6/A2Bdn59A0g0xA3zDhFw-0vfVU7mVsM4Fqg.ttf",weight:400,isVariable:!0},{displayName:"Tac One",filename:"ahcZv8Cj3zw7qDr8fO4hU-FwnU0",category:"sans-serif",url:"https://fonts.gstatic.com/s/tacone/v5/ahcZv8Cj3zw7qDr8fO4hU-FwnU0.ttf",weight:400,isVariable:!1},{displayName:"Faculty Glyphic",filename:"RrQIbot2-iBvI2mYSyKIrcgoBuQIG-eFNVmULg",category:"sans-serif",url:"https://fonts.gstatic.com/s/facultyglyphic/v4/RrQIbot2-iBvI2mYSyKIrcgoBuQIG-eFNVmULg.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Tai Viet",filename:"8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZr644fWsRO9w",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstaiviet/v20/8QIUdj3HhN_lv4jf9vsE-9GMOLsaSPZr644fWsRO9w.ttf",weight:400,isVariable:!1},{displayName:"Simonetta",filename:"x3dickHVYrCU5BU15c4BfPACvy_1BA",category:"display",url:"https://fonts.gstatic.com/s/simonetta/v29/x3dickHVYrCU5BU15c4BfPACvy_1BA.ttf",weight:400,isVariable:!1},{displayName:"Devonshire",filename:"46kqlbDwWirWr4gtBD2BX0Vq01lYAZM",category:"handwriting",url:"https://fonts.gstatic.com/s/devonshire/v29/46kqlbDwWirWr4gtBD2BX0Vq01lYAZM.ttf",weight:400,isVariable:!1},{displayName:"Junge",filename:"gokgH670Gl1lUqAdvhB7SnKm",category:"serif",url:"https://fonts.gstatic.com/s/junge/v26/gokgH670Gl1lUqAdvhB7SnKm.ttf",weight:400,isVariable:!1},{displayName:"Londrina Shadow",filename:"oPWX_kB4kOQoWNJmjxLV5JuoCUlXRlaSxkrMCQ",category:"display",url:"https://fonts.gstatic.com/s/londrinashadow/v28/oPWX_kB4kOQoWNJmjxLV5JuoCUlXRlaSxkrMCQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Gurmukhi",filename:"w8gHH3EvQP81sInb43inmyN9zZ7hb7AJZgdEAj--IQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansgurmukhi/v29/w8gHH3EvQP81sInb43inmyN9zZ7hb7AJZgdEAj--IQ.ttf",weight:400,isVariable:!0},{displayName:"Rubik Moonrocks",filename:"845ANMAmAI2VUZMLu_W0M7HqlDHnXcD7JGy1Sw",category:"display",url:"https://fonts.gstatic.com/s/rubikmoonrocks/v7/845ANMAmAI2VUZMLu_W0M7HqlDHnXcD7JGy1Sw.ttf",weight:400,isVariable:!1},{displayName:"Text Me One",filename:"i7dOIFdlayuLUvgoFvHQFWZcalayGhyV",category:"sans-serif",url:"https://fonts.gstatic.com/s/textmeone/v26/i7dOIFdlayuLUvgoFvHQFWZcalayGhyV.ttf",weight:400,isVariable:!1},{displayName:"Ysabeau Infant",filename:"hv-PlzpqOkkV94kBTQVdX1EWI8p_dREcBXxP",category:"sans-serif",url:"https://fonts.gstatic.com/s/ysabeauinfant/v4/hv-PlzpqOkkV94kBTQVdX1EWI8p_dREcBXxP.ttf",weight:400,isVariable:!0},{displayName:"Tilt Prism",filename:"5h1fiZgyPHoZ3YikNzWGZ2yQCUZIv3A",category:"display",url:"https://fonts.gstatic.com/s/tiltprism/v16/5h1fiZgyPHoZ3YikNzWGZ2yQCUZIv3A.ttf",weight:400,isVariable:!1},{displayName:"Tiro Devanagari Sanskrit",filename:"MCoAzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59pEoEqgtOh0w",category:"serif",url:"https://fonts.gstatic.com/s/tirodevanagarisanskrit/v5/MCoAzBbr09vVUgVBM8FWu_yZdZkhkg-I0nUlb59pEoEqgtOh0w.ttf",weight:400,isVariable:!1},{displayName:"Water Brush",filename:"AYCPpXPqc8cJWLhp4hywKHJq7PKP5Z_G",category:"handwriting",url:"https://fonts.gstatic.com/s/waterbrush/v6/AYCPpXPqc8cJWLhp4hywKHJq7PKP5Z_G.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Grid Double",filename:"WBL6rFjbakJVFOargiWSKQysDITG_S0VtHc6_qJY3QPQ",category:"display",url:"https://fonts.gstatic.com/s/bitcountgriddouble/v3/WBL6rFjbakJVFOargiWSKQysDITG_S0VtHc6_qJY3QPQ.ttf",weight:400,isVariable:!0},{displayName:"Gorditas",filename:"ll8_K2aTVD26DsPEtQDoDa4AlxYb",category:"display",url:"https://fonts.gstatic.com/s/gorditas/v24/ll8_K2aTVD26DsPEtQDoDa4AlxYb.ttf",weight:400,isVariable:!1},{displayName:"Jacquard 12",filename:"vm8ydRLuXETEweL79J4rGc3JUnr34c9-",category:"display",url:"https://fonts.gstatic.com/s/jacquard12/v8/vm8ydRLuXETEweL79J4rGc3JUnr34c9-.ttf",weight:400,isVariable:!1},{displayName:"Tourney",filename:"AlZw_ztDtYzv1tzqzQwrcVX9TB0",category:"display",url:"https://fonts.gstatic.com/s/tourney/v16/AlZw_ztDtYzv1tzqzQwrcVX9TB0.ttf",weight:400,isVariable:!0},{displayName:"Mogra",filename:"f0X40eSs8c95TBo4DvLmxtnG",category:"display",url:"https://fonts.gstatic.com/s/mogra/v22/f0X40eSs8c95TBo4DvLmxtnG.ttf",weight:400,isVariable:!1},{displayName:"Festive",filename:"cY9Ffj6KX1xcoDWhFtfgy9HTkak",category:"handwriting",url:"https://fonts.gstatic.com/s/festive/v11/cY9Ffj6KX1xcoDWhFtfgy9HTkak.ttf",weight:400,isVariable:!1},{displayName:"Bodoni Moda SC",filename:"LYjbdGTykkIgA8197UwkzHp8F__fcpC69i6N",category:"serif",url:"https://fonts.gstatic.com/s/bodonimodasc/v3/LYjbdGTykkIgA8197UwkzHp8F__fcpC69i6N.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Kannada",filename:"v6-JGZHLJFKIhClqUYqXDiWqpxQxWSPyUIQDIsKCHg",category:"serif",url:"https://fonts.gstatic.com/s/notoserifkannada/v30/v6-JGZHLJFKIhClqUYqXDiWqpxQxWSPyUIQDIsKCHg.ttf",weight:400,isVariable:!0},{displayName:"Glass Antiqua",filename:"xfu30Wr0Wn3NOQM2piC0uXOjnL_wN6fRUkY",category:"display",url:"https://fonts.gstatic.com/s/glassantiqua/v26/xfu30Wr0Wn3NOQM2piC0uXOjnL_wN6fRUkY.ttf",weight:400,isVariable:!1},{displayName:"Cactus Classical Serif",filename:"sZlVdQ6K-zJOCzUaS90zMNN-Ep-OoC8dZr0JFuBIFX-pv-E",category:"serif",url:"https://fonts.gstatic.com/s/cactusclassicalserif/v13/sZlVdQ6K-zJOCzUaS90zMNN-Ep-OoC8dZr0JFuBIFX-pv-E.ttf",weight:400,isVariable:!1},{displayName:"Almendra SC",filename:"Iure6Yx284eebowr7hbyTZZJprVA4XQ0",category:"serif",url:"https://fonts.gstatic.com/s/almendrasc/v31/Iure6Yx284eebowr7hbyTZZJprVA4XQ0.ttf",weight:400,isVariable:!1},{displayName:"Cagliostro",filename:"ZgNWjP5HM73BV5amnX-TjGXEM4COoE4",category:"sans-serif",url:"https://fonts.gstatic.com/s/cagliostro/v22/ZgNWjP5HM73BV5amnX-TjGXEM4COoE4.ttf",weight:400,isVariable:!1},{displayName:"Stint Ultra Expanded",filename:"CSRg4yNNh-GbW3o3JkwoDcdvMKMf0oBAd0qoATQkWwam",category:"serif",url:"https://fonts.gstatic.com/s/stintultraexpanded/v24/CSRg4yNNh-GbW3o3JkwoDcdvMKMf0oBAd0qoATQkWwam.ttf",weight:400,isVariable:!1},{displayName:"Autour One",filename:"UqyVK80cP25l3fJgbdfbk5lWVscxdKE",category:"display",url:"https://fonts.gstatic.com/s/autourone/v25/UqyVK80cP25l3fJgbdfbk5lWVscxdKE.ttf",weight:400,isVariable:!1},{displayName:"Meera Inimai",filename:"845fNMM5EIqOW5MPuvO3ILep_2jDVevnLQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/meerainimai/v14/845fNMM5EIqOW5MPuvO3ILep_2jDVevnLQ.ttf",weight:400,isVariable:!1},{displayName:"Fascinate Inline",filename:"jVyR7mzzB3zc-jp6QCAu60poNqIy1g3CfRXxWZQ",category:"display",url:"https://fonts.gstatic.com/s/fascinateinline/v24/jVyR7mzzB3zc-jp6QCAu60poNqIy1g3CfRXxWZQ.ttf",weight:400,isVariable:!1},{displayName:"Trykker",filename:"KtktALyWZJXudUPzhNnoOd2j22U",category:"serif",url:"https://fonts.gstatic.com/s/trykker/v22/KtktALyWZJXudUPzhNnoOd2j22U.ttf",weight:400,isVariable:!1},{displayName:"Yaldevi",filename:"cY9Ffj6VW0NMrDWtFtfgy9HTkak",category:"sans-serif",url:"https://fonts.gstatic.com/s/yaldevi/v17/cY9Ffj6VW0NMrDWtFtfgy9HTkak.ttf",weight:400,isVariable:!0},{displayName:"Offside",filename:"HI_KiYMWKa9QrAykQ5HiRp-dhpQ",category:"display",url:"https://fonts.gstatic.com/s/offside/v26/HI_KiYMWKa9QrAykQ5HiRp-dhpQ.ttf",weight:400,isVariable:!1},{displayName:"Smooch",filename:"o-0LIps4xW8U1xUBjqp_6hVdYg",category:"handwriting",url:"https://fonts.gstatic.com/s/smooch/v9/o-0LIps4xW8U1xUBjqp_6hVdYg.ttf",weight:400,isVariable:!1},{displayName:"Marhey",filename:"x3dhck7Laq-T7wlhkYUldNsetg",category:"display",url:"https://fonts.gstatic.com/s/marhey/v8/x3dhck7Laq-T7wlhkYUldNsetg.ttf",weight:400,isVariable:!0},{displayName:"Alumni Sans Pinstripe",filename:"ZgNNjOFFPq_AUJD1umyS30W-Xub8zD1ObhezYrVIpcDA5w",category:"sans-serif",url:"https://fonts.gstatic.com/s/alumnisanspinstripe/v8/ZgNNjOFFPq_AUJD1umyS30W-Xub8zD1ObhezYrVIpcDA5w.ttf",weight:400,isVariable:!1},{displayName:"Edu NSW ACT Cursive",filename:"xn78YGUw02PnIPEjskHSG_2fCaz9DzhQd8_v3bT4Ycc",category:"handwriting",url:"https://fonts.gstatic.com/s/edunswactcursive/v3/xn78YGUw02PnIPEjskHSG_2fCaz9DzhQd8_v3bT4Ycc.ttf",weight:400,isVariable:!0},{displayName:"Stack Sans Text",filename:"kJErBuAJ-Q0hiGPmzHEu345X1JJXDba5BY95mQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/stacksanstext/v1/kJErBuAJ-Q0hiGPmzHEu345X1JJXDba5BY95mQ.ttf",weight:400,isVariable:!0},{displayName:"Mea Culpa",filename:"AMOTz4GcuWbEIuza8jsZms0QW3mqyg",category:"handwriting",url:"https://fonts.gstatic.com/s/meaculpa/v8/AMOTz4GcuWbEIuza8jsZms0QW3mqyg.ttf",weight:400,isVariable:!1},{displayName:"Condiment",filename:"pONk1hggFNmwvXALyH6Sq4n4o1vyCQ",category:"handwriting",url:"https://fonts.gstatic.com/s/condiment/v26/pONk1hggFNmwvXALyH6Sq4n4o1vyCQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Samaritan",filename:"buEqppe9f8_vkXadMBJJo0tSmaYjFkxOUo5jNlOVMzQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssamaritan/v17/buEqppe9f8_vkXadMBJJo0tSmaYjFkxOUo5jNlOVMzQ.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IS",filename:"JTUQjI4o_SGg9lecLGptrD1hziTn89dtpQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteis/v10/JTUQjI4o_SGg9lecLGptrD1hziTn89dtpQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Lao",filename:"3y946bYwcCjmsU8JEzCMxEwQfFpAsZsUPves",category:"serif",url:"https://fonts.gstatic.com/s/notoseriflao/v29/3y946bYwcCjmsU8JEzCMxEwQfFpAsZsUPves.ttf",weight:400,isVariable:!0},{displayName:"Plaster",filename:"DdTm79QatW80eRh4Ei5JOtLOeLI",category:"display",url:"https://fonts.gstatic.com/s/plaster/v25/DdTm79QatW80eRh4Ei5JOtLOeLI.ttf",weight:400,isVariable:!1},{displayName:"Hedvig Letters Sans",filename:"CHy_V_PfGVjobSBkihHWDT98RVp37w8jQJ1N3Twgi1w",category:"sans-serif",url:"https://fonts.gstatic.com/s/hedvigletterssans/v2/CHy_V_PfGVjobSBkihHWDT98RVp37w8jQJ1N3Twgi1w.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Gothic",filename:"TuGKUUVzXI5FBtUq5a8bj6wRbzxTFMX40kFQRx0",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansgothic/v17/TuGKUUVzXI5FBtUq5a8bj6wRbzxTFMX40kFQRx0.ttf",weight:400,isVariable:!1},{displayName:"Kite One",filename:"70lQu7shLnA_E02vyq1b6HnGO4uA",category:"sans-serif",url:"https://fonts.gstatic.com/s/kiteone/v23/70lQu7shLnA_E02vyq1b6HnGO4uA.ttf",weight:400,isVariable:!1},{displayName:"Nabla",filename:"j8_l6-LI0Lvpe6kRse78FCl4",category:"display",url:"https://fonts.gstatic.com/s/nabla/v17/j8_l6-LI0Lvpe6kRse78FCl4.ttf",weight:400,isVariable:!1},{displayName:"Averia Gruesa Libre",filename:"NGSov4nEGEktOaDRKsY-1dhh8eEtIx3ZUmmJw0SLRA8",category:"display",url:"https://fonts.gstatic.com/s/averiagruesalibre/v22/NGSov4nEGEktOaDRKsY-1dhh8eEtIx3ZUmmJw0SLRA8.ttf",weight:400,isVariable:!1},{displayName:"Poor Story",filename:"jizfREFUsnUct9P6cDfd4OmnLD0Z4zM",category:"display",url:"https://fonts.gstatic.com/s/poorstory/v24/jizfREFUsnUct9P6cDfd4OmnLD0Z4zM.ttf",weight:400,isVariable:!1},{displayName:"Jacques Francois Shadow",filename:"KR1FBtOz8PKTMk-kqdkLVrvR0ECFrB6Pin-2_q8VsHuV5ULS",category:"display",url:"https://fonts.gstatic.com/s/jacquesfrancoisshadow/v27/KR1FBtOz8PKTMk-kqdkLVrvR0ECFrB6Pin-2_q8VsHuV5ULS.ttf",weight:400,isVariable:!1},{displayName:"Big Shoulders Stencil",filename:"TwMQ-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbfzYRDT8Yy-w",category:"display",url:"https://fonts.gstatic.com/s/bigshouldersstencil/v4/TwMQ-JIEQ1Je5sI6Bx1TKHD83rT3u3NSCfbfzYRDT8Yy-w.ttf",weight:400,isVariable:!0},{displayName:"Odor Mean Chey",filename:"raxkHiKDttkTe1aOGcJMR1A_4mrY2zqUKafv",category:"serif",url:"https://fonts.gstatic.com/s/odormeanchey/v31/raxkHiKDttkTe1aOGcJMR1A_4mrY2zqUKafv.ttf",weight:400,isVariable:!1},{displayName:"Chilanka",filename:"WWXRlj2DZQiMJYaYRrJQI9EAZhTO",category:"handwriting",url:"https://fonts.gstatic.com/s/chilanka/v23/WWXRlj2DZQiMJYaYRrJQI9EAZhTO.ttf",weight:400,isVariable:!1},{displayName:"Stalinist One",filename:"MQpS-WezM9W4Dd7D3B7I-UT7eZ-UPyacPbo",category:"display",url:"https://fonts.gstatic.com/s/stalinistone/v58/MQpS-WezM9W4Dd7D3B7I-UT7eZ-UPyacPbo.ttf",weight:400,isVariable:!1},{displayName:"Donegal One",filename:"m8JWjfRYea-ZnFz6fsK9FZRFRG-K3Mud",category:"serif",url:"https://fonts.gstatic.com/s/donegalone/v22/m8JWjfRYea-ZnFz6fsK9FZRFRG-K3Mud.ttf",weight:400,isVariable:!1},{displayName:"Bungee Hairline",filename:"snfys0G548t04270a_ljTLUVrv-7YB2dQ5ZPqQ",category:"display",url:"https://fonts.gstatic.com/s/bungeehairline/v26/snfys0G548t04270a_ljTLUVrv-7YB2dQ5ZPqQ.ttf",weight:400,isVariable:!1},{displayName:"Chela One",filename:"6ae-4KC7Uqgdz_JZdPIy31vWNTMwoQ",category:"display",url:"https://fonts.gstatic.com/s/chelaone/v22/6ae-4KC7Uqgdz_JZdPIy31vWNTMwoQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Ahom",filename:"FeVIS0hfp6cprmEUffAW_fUL_AN-wuYrPFiwaw",category:"serif",url:"https://fonts.gstatic.com/s/notoserifahom/v21/FeVIS0hfp6cprmEUffAW_fUL_AN-wuYrPFiwaw.ttf",weight:400,isVariable:!1},{displayName:"Ga Maamli",filename:"uU9NCBsQ4c-DPW1Yo3rR2t6CilKOdQ",category:"display",url:"https://fonts.gstatic.com/s/gamaamli/v3/uU9NCBsQ4c-DPW1Yo3rR2t6CilKOdQ.ttf",weight:400,isVariable:!1},{displayName:"Baskervville SC",filename:"X7n94bc_DeKlh6bBbk_WiKnBSUvR71R3tiSx0g",category:"serif",url:"https://fonts.gstatic.com/s/baskervvillesc/v4/X7n94bc_DeKlh6bBbk_WiKnBSUvR71R3tiSx0g.ttf",weight:400,isVariable:!0},{displayName:"Reem Kufi Fun",filename:"uK_14rOFYukkmyUEbF43fIryfkIbWc7gPbQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/reemkufifun/v13/uK_14rOFYukkmyUEbF43fIryfkIbWc7gPbQ.ttf",weight:400,isVariable:!0},{displayName:"Anek Gurmukhi",filename:"0QImMXRO_YSkA0quVLY79JnH07z8_ApHqqk",category:"sans-serif",url:"https://fonts.gstatic.com/s/anekgurmukhi/v13/0QImMXRO_YSkA0quVLY79JnH07z8_ApHqqk.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Canadian Aboriginal",filename:"4C_gLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmly1RyBEnAtbz",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanscanadianaboriginal/v28/4C_gLjTuEqPj-8J01CwaGkiZ9os0iGVkezM1mUT-j_Lmly1RyBEnAtbz.ttf",weight:400,isVariable:!0},{displayName:"Liter",filename:"SLXGc1nX4GQ4d2ImRJqExst1",category:"sans-serif",url:"https://fonts.gstatic.com/s/liter/v4/SLXGc1nX4GQ4d2ImRJqExst1.ttf",weight:400,isVariable:!1},{displayName:"New Tegomin",filename:"SLXMc1fV7Gd9USdBAfPlqfN0Q3ptkDMN",category:"serif",url:"https://fonts.gstatic.com/s/newtegomin/v13/SLXMc1fV7Gd9USdBAfPlqfN0Q3ptkDMN.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Sinhala",filename:"DtV-JwinQqclnZE2CnsPug9lgGC3y2Fslsq8DNibFw",category:"serif",url:"https://fonts.gstatic.com/s/notoserifsinhala/v30/DtV-JwinQqclnZE2CnsPug9lgGC3y2Fslsq8DNibFw.ttf",weight:400,isVariable:!0},{displayName:"Linden Hill",filename:"-F61fjxoKSg9Yc3hZgO8ygFI7CwC009k",category:"serif",url:"https://fonts.gstatic.com/s/lindenhill/v27/-F61fjxoKSg9Yc3hZgO8ygFI7CwC009k.ttf",weight:400,isVariable:!1},{displayName:"Ewert",filename:"va9I4kzO2tFODYBvS-J3kbDP",category:"display",url:"https://fonts.gstatic.com/s/ewert/v27/va9I4kzO2tFODYBvS-J3kbDP.ttf",weight:400,isVariable:!1},{displayName:"Jacques Francois",filename:"ZXu9e04ZvKeOOHIe1TMahbcIU2cgmcPqoeRWfbs",category:"serif",url:"https://fonts.gstatic.com/s/jacquesfrancois/v26/ZXu9e04ZvKeOOHIe1TMahbcIU2cgmcPqoeRWfbs.ttf",weight:400,isVariable:!1},{displayName:"Preahvihear",filename:"6NUS8F-dNQeEYhzj7uluxswE49FJf8Wv",category:"sans-serif",url:"https://fonts.gstatic.com/s/preahvihear/v32/6NUS8F-dNQeEYhzj7uluxswE49FJf8Wv.ttf",weight:400,isVariable:!1},{displayName:"Metal",filename:"lW-wwjUJIXTo7i3nnoQAUdN2",category:"display",url:"https://fonts.gstatic.com/s/metal/v32/lW-wwjUJIXTo7i3nnoQAUdN2.ttf",weight:400,isVariable:!1},{displayName:"Ojuju",filename:"7r3IqXF7v9ApbqkppYgA3LZg",category:"sans-serif",url:"https://fonts.gstatic.com/s/ojuju/v5/7r3IqXF7v9ApbqkppYgA3LZg.ttf",weight:400,isVariable:!0},{displayName:"Qahiri",filename:"tsssAp1RZy0C_hGuU3Chrnmupw",category:"sans-serif",url:"https://fonts.gstatic.com/s/qahiri/v11/tsssAp1RZy0C_hGuU3Chrnmupw.ttf",weight:400,isVariable:!1},{displayName:"Finlandica",filename:"-nF5OGk-8vAc7lEtg0aS05uPOwkOE_Y",category:"sans-serif",url:"https://fonts.gstatic.com/s/finlandica/v10/-nF5OGk-8vAc7lEtg0aS05uPOwkOE_Y.ttf",weight:400,isVariable:!0},{displayName:"Buda",filename:"GFDqWAN8mnyIJSSrG7UBr7pZKA0",category:"display",url:"https://fonts.gstatic.com/s/buda/v31/GFDqWAN8mnyIJSSrG7UBr7pZKA0.ttf",weight:300,isVariable:!1},{displayName:"Ribeye Marrow",filename:"GFDsWApshnqMRO2JdtRZ2d0vEAwTVWgKdtw",category:"display",url:"https://fonts.gstatic.com/s/ribeyemarrow/v26/GFDsWApshnqMRO2JdtRZ2d0vEAwTVWgKdtw.ttf",weight:400,isVariable:!1},{displayName:"Kumar One",filename:"bMr1mS-P958wYi6YaGeGNO6WU3oT0g",category:"display",url:"https://fonts.gstatic.com/s/kumarone/v25/bMr1mS-P958wYi6YaGeGNO6WU3oT0g.ttf",weight:400,isVariable:!1},{displayName:"Hubballi",filename:"o-0JIpUj3WIZ1RFN56B7yBBNYuSF",category:"sans-serif",url:"https://fonts.gstatic.com/s/hubballi/v10/o-0JIpUj3WIZ1RFN56B7yBBNYuSF.ttf",weight:400,isVariable:!1},{displayName:"Lugrasimo",filename:"qkBXXvoF_s_eT9c7Y7ae5JRLkAXbMQ",category:"handwriting",url:"https://fonts.gstatic.com/s/lugrasimo/v5/qkBXXvoF_s_eT9c7Y7ae5JRLkAXbMQ.ttf",weight:400,isVariable:!1},{displayName:"Port Lligat Sans",filename:"kmKmZrYrGBbdN1aV7Vokow6Lw4s4l7N0Tx4xEcQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/portlligatsans/v24/kmKmZrYrGBbdN1aV7Vokow6Lw4s4l7N0Tx4xEcQ.ttf",weight:400,isVariable:!1},{displayName:"New Amsterdam",filename:"YA9Vr02Y5lucHqUlbEe51kBtl7mGiv_Q7dA",category:"sans-serif",url:"https://fonts.gstatic.com/s/newamsterdam/v1/YA9Vr02Y5lucHqUlbEe51kBtl7mGiv_Q7dA.ttf",weight:400,isVariable:!1},{displayName:"Lancelot",filename:"J7acnppxBGtQEulG4JY4xJ9CGyAa",category:"display",url:"https://fonts.gstatic.com/s/lancelot/v28/J7acnppxBGtQEulG4JY4xJ9CGyAa.ttf",weight:400,isVariable:!1},{displayName:"Sirin Stencil",filename:"mem4YaWwznmLx-lzGfN7MdRydchGBq6al6o",category:"display",url:"https://fonts.gstatic.com/s/sirinstencil/v27/mem4YaWwznmLx-lzGfN7MdRydchGBq6al6o.ttf",weight:400,isVariable:!1},{displayName:"Ruluko",filename:"xMQVuFNZVaODtm0pC6WzKX_QmA",category:"sans-serif",url:"https://fonts.gstatic.com/s/ruluko/v22/xMQVuFNZVaODtm0pC6WzKX_QmA.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IN",filename:"uk-kEGGpoLQ97mfv2J3cZzup5w50_o9T7Q",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritein/v11/uk-kEGGpoLQ97mfv2J3cZzup5w50_o9T7Q.ttf",weight:400,isVariable:!0},{displayName:"Kotta One",filename:"S6u_w41LXzPc_jlfNWqPHA3s5dwt7w",category:"serif",url:"https://fonts.gstatic.com/s/kottaone/v21/S6u_w41LXzPc_jlfNWqPHA3s5dwt7w.ttf",weight:400,isVariable:!1},{displayName:"Smokum",filename:"TK3iWkUbAhopmrdGHjUHte5fKg",category:"display",url:"https://fonts.gstatic.com/s/smokum/v30/TK3iWkUbAhopmrdGHjUHte5fKg.ttf",weight:400,isVariable:!1},{displayName:"Edu AU VIC WA NT Hand",filename:"C8c94dY1tX2x0uuiUHFS4y7ERV-jfqJ6x06tFtksa4Q7LA",category:"handwriting",url:"https://fonts.gstatic.com/s/eduauvicwanthand/v3/C8c94dY1tX2x0uuiUHFS4y7ERV-jfqJ6x06tFtksa4Q7LA.ttf",weight:400,isVariable:!0},{displayName:"Chathura",filename:"_gP71R7-rzUuVjim418goUC5S-Zy",category:"sans-serif",url:"https://fonts.gstatic.com/s/chathura/v22/_gP71R7-rzUuVjim418goUC5S-Zy.ttf",weight:400,isVariable:!1},{displayName:"Marko One",filename:"9Btq3DFG0cnVM5lw1haaKpUfrHPzUw",category:"serif",url:"https://fonts.gstatic.com/s/markoone/v24/9Btq3DFG0cnVM5lw1haaKpUfrHPzUw.ttf",weight:400,isVariable:!1},{displayName:"Playwrite CU",filename:"VuJ2dNDb2p7tvoFGLMPdf9xGYTFZt0rNpQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritecu/v6/VuJ2dNDb2p7tvoFGLMPdf9xGYTFZt0rNpQ.ttf",weight:400,isVariable:!0},{displayName:"Koh Santepheap",filename:"gNMdW3p6SJbwyGj2rBZyeOrTjOPhF1ixsyNJ",category:"serif",url:"https://fonts.gstatic.com/s/kohsantepheap/v15/gNMdW3p6SJbwyGj2rBZyeOrTjOPhF1ixsyNJ.ttf",weight:400,isVariable:!1},{displayName:"Beiruti",filename:"JTUXjIU69Cmr9FGceA9n4WZA1g8",category:"sans-serif",url:"https://fonts.gstatic.com/s/beiruti/v5/JTUXjIU69Cmr9FGceA9n4WZA1g8.ttf",weight:400,isVariable:!0},{displayName:"Galindo",filename:"HI_KiYMeLqVKqwyuQ5HiRp-dhpQ",category:"display",url:"https://fonts.gstatic.com/s/galindo/v26/HI_KiYMeLqVKqwyuQ5HiRp-dhpQ.ttf",weight:400,isVariable:!1},{displayName:"Joti One",filename:"Z9XVDmdJQAmWm9TwaYTe4u2El6GC",category:"display",url:"https://fonts.gstatic.com/s/jotione/v28/Z9XVDmdJQAmWm9TwaYTe4u2El6GC.ttf",weight:400,isVariable:!1},{displayName:"LXGW WenKai TC",filename:"w8gDH20td8wNsI3f40DmtXZb48uKLd0hZzVB",category:"handwriting",url:"https://fonts.gstatic.com/s/lxgwwenkaitc/v9/w8gDH20td8wNsI3f40DmtXZb48uKLd0hZzVB.ttf",weight:400,isVariable:!1},{displayName:"Tagesschrift",filename:"pe0pMI6IOYlEuEZ7ZEA7ZKOaA_Rue1UwVg",category:"display",url:"https://fonts.gstatic.com/s/tagesschrift/v2/pe0pMI6IOYlEuEZ7ZEA7ZKOaA_Rue1UwVg.ttf",weight:400,isVariable:!1},{displayName:"Reem Kufi Ink",filename:"oPWJ_kJmmu8hCvB9iFumxZSnRj5dQnSX1ko",category:"sans-serif",url:"https://fonts.gstatic.com/s/reemkufiink/v11/oPWJ_kJmmu8hCvB9iFumxZSnRj5dQnSX1ko.ttf",weight:400,isVariable:!1},{displayName:"Tiro Devanagari Marathi",filename:"fC1xPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkotDrDJYM2lAZ",category:"serif",url:"https://fonts.gstatic.com/s/tirodevanagarimarathi/v5/fC1xPZBSZHrRhS3rd4M0MAPNJUHl4znXCxAkotDrDJYM2lAZ.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Armenian",filename:"3XF2EqMt3YoFsciDRZxptyCUKJmytZ0kT0S1UL5Ayp0",category:"serif",url:"https://fonts.gstatic.com/s/notoserifarmenian/v30/3XF2EqMt3YoFsciDRZxptyCUKJmytZ0kT0S1UL5Ayp0.ttf",weight:400,isVariable:!0},{displayName:"Geostar Fill",filename:"AMOWz4SWuWiXFfjEohxQ9os0U1K2w9lb4g",category:"display",url:"https://fonts.gstatic.com/s/geostarfill/v27/AMOWz4SWuWiXFfjEohxQ9os0U1K2w9lb4g.ttf",weight:400,isVariable:!1},{displayName:"Playwrite VN Guides",filename:"JIAvUUlydXJZq1IQU8oDBn2CUkROHFEAfXMXfpmSLuI",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritevnguides/v1/JIAvUUlydXJZq1IQU8oDBn2CUkROHFEAfXMXfpmSLuI.ttf",weight:400,isVariable:!1},{displayName:"Monomakh",filename:"Wnz4HAk3Yh_SC3FACTYdiArcPRKo",category:"display",url:"https://fonts.gstatic.com/s/monomakh/v1/Wnz4HAk3Yh_SC3FACTYdiArcPRKo.ttf",weight:400,isVariable:!1},{displayName:"Amiri Quran",filename:"_Xmo-Hk0rD6DbUL4_vH8Zq5t7Cycsu-2",category:"serif",url:"https://fonts.gstatic.com/s/amiriquran/v19/_Xmo-Hk0rD6DbUL4_vH8Zq5t7Cycsu-2.ttf",weight:400,isVariable:!1},{displayName:"Gasoek One",filename:"EJRTQgQ_UMUKvDgnlX80zrq_cyb-vco",category:"sans-serif",url:"https://fonts.gstatic.com/s/gasoekone/v3/EJRTQgQ_UMUKvDgnlX80zrq_cyb-vco.ttf",weight:400,isVariable:!1},{displayName:"Tiro Gurmukhi",filename:"x3dmckXSYq-Uqjc048JUF7Jvly7HAQsyA2Y",category:"serif",url:"https://fonts.gstatic.com/s/tirogurmukhi/v6/x3dmckXSYq-Uqjc048JUF7Jvly7HAQsyA2Y.ttf",weight:400,isVariable:!1},{displayName:"Elsie Swash Caps",filename:"845DNN8xGZyVX5MVo_upKf7KnjK0ferVKGWsUo8",category:"display",url:"https://fonts.gstatic.com/s/elsieswashcaps/v25/845DNN8xGZyVX5MVo_upKf7KnjK0ferVKGWsUo8.ttf",weight:400,isVariable:!1},{displayName:"Bruno Ace SC",filename:"ptROTiycffFLBuiHjdJDl634LSFrpe8uZA",category:"display",url:"https://fonts.gstatic.com/s/brunoacesc/v7/ptROTiycffFLBuiHjdJDl634LSFrpe8uZA.ttf",weight:400,isVariable:!1},{displayName:"Comforter",filename:"H4clBXOCl8nQnlaql3Qa6JG8iqeuag",category:"handwriting",url:"https://fonts.gstatic.com/s/comforter/v9/H4clBXOCl8nQnlaql3Qa6JG8iqeuag.ttf",weight:400,isVariable:!1},{displayName:"Asta Sans",filename:"XoHk2Y74XaWovvhMb0ctv_0tnjvw8Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/astasans/v3/XoHk2Y74XaWovvhMb0ctv_0tnjvw8Q.ttf",weight:400,isVariable:!0},{displayName:"Encode Sans SC",filename:"jVyT7nLwCGzQ9zE7ZyRg0QRXHOxX3AngeAXx",category:"sans-serif",url:"https://fonts.gstatic.com/s/encodesanssc/v14/jVyT7nLwCGzQ9zE7ZyRg0QRXHOxX3AngeAXx.ttf",weight:400,isVariable:!0},{displayName:"Luxurious Roman",filename:"buEupou_ZcP1w0yTKxJJokVSmbpqYgckeo9RMw",category:"display",url:"https://fonts.gstatic.com/s/luxuriousroman/v10/buEupou_ZcP1w0yTKxJJokVSmbpqYgckeo9RMw.ttf",weight:400,isVariable:!1},{displayName:"Grey Qo",filename:"BXRrvF_Nmv_TyXxNDOtQ9Wf0QcE",category:"handwriting",url:"https://fonts.gstatic.com/s/greyqo/v11/BXRrvF_Nmv_TyXxNDOtQ9Wf0QcE.ttf",weight:400,isVariable:!1},{displayName:"Praise",filename:"qkBUXvUZ-cnFXcFyDvO67L9XmQ",category:"handwriting",url:"https://fonts.gstatic.com/s/praise/v9/qkBUXvUZ-cnFXcFyDvO67L9XmQ.ttf",weight:400,isVariable:!1},{displayName:"Arbutus",filename:"NaPYcZ7dG_5J3poob9JtryO8fMU",category:"serif",url:"https://fonts.gstatic.com/s/arbutus/v30/NaPYcZ7dG_5J3poob9JtryO8fMU.ttf",weight:400,isVariable:!1},{displayName:"Twinkle Star",filename:"pe0pMI6IL4dPoFl9LGEmY6WaA_Rue1UwVg",category:"handwriting",url:"https://fonts.gstatic.com/s/twinklestar/v8/pe0pMI6IL4dPoFl9LGEmY6WaA_Rue1UwVg.ttf",weight:400,isVariable:!1},{displayName:"National Park",filename:"GftD7vJOtg4NO-gmoY4nmcqP410fThX-Zsw",category:"sans-serif",url:"https://fonts.gstatic.com/s/nationalpark/v4/GftD7vJOtg4NO-gmoY4nmcqP410fThX-Zsw.ttf",weight:400,isVariable:!0},{displayName:"Arsenal SC",filename:"x3dlckLHea6e5BEtsfxiXNossybsHQI",category:"sans-serif",url:"https://fonts.gstatic.com/s/arsenalsc/v1/x3dlckLHea6e5BEtsfxiXNossybsHQI.ttf",weight:400,isVariable:!1},{displayName:"Nuosu SIL",filename:"8vIK7wM3wmRn_kc4uAjeFGxbO_zo-w",category:"sans-serif",url:"https://fonts.gstatic.com/s/nuosusil/v12/8vIK7wM3wmRn_kc4uAjeFGxbO_zo-w.ttf",weight:400,isVariable:!1},{displayName:"Inspiration",filename:"x3dkckPPZa6L4wIg5cZOEvoGnSrlBBsy",category:"handwriting",url:"https://fonts.gstatic.com/s/inspiration/v7/x3dkckPPZa6L4wIg5cZOEvoGnSrlBBsy.ttf",weight:400,isVariable:!1},{displayName:"Felipa",filename:"FwZa7-owz1Eu4F_wSNSEwM2zpA",category:"handwriting",url:"https://fonts.gstatic.com/s/felipa/v27/FwZa7-owz1Eu4F_wSNSEwM2zpA.ttf",weight:400,isVariable:!1},{displayName:"Agu Display",filename:"iJWABXKbbi6BeMC1_RX7qEXexox2ztOU",category:"display",url:"https://fonts.gstatic.com/s/agudisplay/v3/iJWABXKbbi6BeMC1_RX7qEXexox2ztOU.ttf",weight:400,isVariable:!1},{displayName:"Galdeano",filename:"uU9MCBoQ4YOqOW1boDPx8PCOg0uX",category:"sans-serif",url:"https://fonts.gstatic.com/s/galdeano/v23/uU9MCBoQ4YOqOW1boDPx8PCOg0uX.ttf",weight:400,isVariable:!1},{displayName:"Tulpen One",filename:"dFa6ZfeC474skLgesc0CWj0w_HyIRlE",category:"display",url:"https://fonts.gstatic.com/s/tulpenone/v26/dFa6ZfeC474skLgesc0CWj0w_HyIRlE.ttf",weight:400,isVariable:!1},{displayName:"Caramel",filename:"P5sCzZKBbMTf_ShyxCRuiZ-uydg",category:"handwriting",url:"https://fonts.gstatic.com/s/caramel/v8/P5sCzZKBbMTf_ShyxCRuiZ-uydg.ttf",weight:400,isVariable:!1},{displayName:"Konkhmer Sleokchher",filename:"_Xmw-GE-rjmabA_M-aPOZOsCrUv825LFI3507E0d-W0",category:"display",url:"https://fonts.gstatic.com/s/konkhmersleokchher/v3/_Xmw-GE-rjmabA_M-aPOZOsCrUv825LFI3507E0d-W0.ttf",weight:400,isVariable:!1},{displayName:"Bruno Ace",filename:"WwkcxPa2E06x4trkOj_kMKoMWNMg3Q",category:"display",url:"https://fonts.gstatic.com/s/brunoace/v7/WwkcxPa2E06x4trkOj_kMKoMWNMg3Q.ttf",weight:400,isVariable:!1},{displayName:"Playwrite AU SA",filename:"YcmusZpNS1SdgmHbGgtRuUElnR3YkgJJtci2kA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteausa/v11/YcmusZpNS1SdgmHbGgtRuUElnR3YkgJJtci2kA.ttf",weight:400,isVariable:!0},{displayName:"Sahitya",filename:"6qLAKZkOuhnuqlJAaScFPywEDnI",category:"serif",url:"https://fonts.gstatic.com/s/sahitya/v20/6qLAKZkOuhnuqlJAaScFPywEDnI.ttf",weight:400,isVariable:!1},{displayName:"Wellfleet",filename:"nuF7D_LfQJb3VYgX6eyT42aLDhO2HA",category:"serif",url:"https://fonts.gstatic.com/s/wellfleet/v25/nuF7D_LfQJb3VYgX6eyT42aLDhO2HA.ttf",weight:400,isVariable:!1},{displayName:"Updock",filename:"nuF4D_3dVZ70UI9SjLK3602XBw",category:"handwriting",url:"https://fonts.gstatic.com/s/updock/v7/nuF4D_3dVZ70UI9SjLK3602XBw.ttf",weight:400,isVariable:!1},{displayName:"Grechen Fuemen",filename:"vEFI2_tHEQ4d5ObgKxBzZh0MAWgc-NaXXq7H",category:"handwriting",url:"https://fonts.gstatic.com/s/grechenfuemen/v11/vEFI2_tHEQ4d5ObgKxBzZh0MAWgc-NaXXq7H.ttf",weight:400,isVariable:!1},{displayName:"Neonderthaw",filename:"Iure6Yx5-oWVZI0r-17AeZZJprVA4XQ0",category:"handwriting",url:"https://fonts.gstatic.com/s/neonderthaw/v8/Iure6Yx5-oWVZI0r-17AeZZJprVA4XQ0.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Gujarati",filename:"hESt6WBlOixO-3OJ1FTmTsmqlBRUJBVkaAhpVQOwBDU",category:"serif",url:"https://fonts.gstatic.com/s/notoserifgujarati/v29/hESt6WBlOixO-3OJ1FTmTsmqlBRUJBVkaAhpVQOwBDU.ttf",weight:400,isVariable:!0},{displayName:"Annapurna SIL",filename:"yYLv0hDY0f2iu9tPmRWtllid8NN9dZT_PZs",category:"serif",url:"https://fonts.gstatic.com/s/annapurnasil/v2/yYLv0hDY0f2iu9tPmRWtllid8NN9dZT_PZs.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Sora Sompeng",filename:"PlIsFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolMPuO7-gt-ec",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssorasompeng/v26/PlIsFkO5O6RzLfvNNVSioxM2_OTrEhPyDLolMPuO7-gt-ec.ttf",weight:400,isVariable:!0},{displayName:"Passero One",filename:"JTUTjIko8DOq5FeaeEAjgE5B5Arr-s50",category:"display",url:"https://fonts.gstatic.com/s/passeroone/v28/JTUTjIko8DOq5FeaeEAjgE5B5Arr-s50.ttf",weight:400,isVariable:!1},{displayName:"Moderustic",filename:"2-ci9J9s3o6eLFNHFdXYcu7XoZFDf2Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/moderustic/v3/2-ci9J9s3o6eLFNHFdXYcu7XoZFDf2Q.ttf",weight:400,isVariable:!0},{displayName:"Dr Sugiyama",filename:"HTxoL2k4N3O9n5I1boGI7abRM4-t-g7y",category:"handwriting",url:"https://fonts.gstatic.com/s/drsugiyama/v30/HTxoL2k4N3O9n5I1boGI7abRM4-t-g7y.ttf",weight:400,isVariable:!1},{displayName:"Miss Fajardose",filename:"E21-_dn5gvrawDdPFVl-N0Ajb8qvWPaJq4no",category:"handwriting",url:"https://fonts.gstatic.com/s/missfajardose/v23/E21-_dn5gvrawDdPFVl-N0Ajb8qvWPaJq4no.ttf",weight:400,isVariable:!1},{displayName:"Rubik Iso",filename:"x3dickHUfr-S4VAI4sABfPACvy_1BA",category:"display",url:"https://fonts.gstatic.com/s/rubikiso/v2/x3dickHUfr-S4VAI4sABfPACvy_1BA.ttf",weight:400,isVariable:!1},{displayName:"Anek Odia",filename:"TK3hWkoJARApz5UCd34jvcVDI5S01g",category:"sans-serif",url:"https://fonts.gstatic.com/s/anekodia/v17/TK3hWkoJARApz5UCd34jvcVDI5S01g.ttf",weight:400,isVariable:!0},{displayName:"Explora",filename:"tsstApxFfjUH4wrvc1qPonC3vqc",category:"handwriting",url:"https://fonts.gstatic.com/s/explora/v11/tsstApxFfjUH4wrvc1qPonC3vqc.ttf",weight:400,isVariable:!1},{displayName:"Fleur De Leah",filename:"AYCNpXX7ftYZWLhv9UmPJTMC5vat4I_Gdq0",category:"handwriting",url:"https://fonts.gstatic.com/s/fleurdeleah/v11/AYCNpXX7ftYZWLhv9UmPJTMC5vat4I_Gdq0.ttf",weight:400,isVariable:!1},{displayName:"Mr Bedfort",filename:"MQpR-WCtNZSWAdTMwBicliq0XZe_Iy8",category:"handwriting",url:"https://fonts.gstatic.com/s/mrbedfort/v23/MQpR-WCtNZSWAdTMwBicliq0XZe_Iy8.ttf",weight:400,isVariable:!1},{displayName:"Lakki Reddy",filename:"S6u5w49MUSzD9jlCPmvLZQfox9k97-xZ",category:"handwriting",url:"https://fonts.gstatic.com/s/lakkireddy/v25/S6u5w49MUSzD9jlCPmvLZQfox9k97-xZ.ttf",weight:400,isVariable:!1},{displayName:"Blaka",filename:"8vIG7w8722p_6kdr20D2FV5e",category:"display",url:"https://fonts.gstatic.com/s/blaka/v8/8vIG7w8722p_6kdr20D2FV5e.ttf",weight:400,isVariable:!1},{displayName:"Ponomar",filename:"or3iQ6zp3fKD2wImbJTdArg8hzo",category:"display",url:"https://fonts.gstatic.com/s/ponomar/v5/or3iQ6zp3fKD2wImbJTdArg8hzo.ttf",weight:400,isVariable:!1},{displayName:"Bungee Outline",filename:"_6_mEDvmVP24UvU2MyiGDslL3Qg3YhJqPXxo",category:"display",url:"https://fonts.gstatic.com/s/bungeeoutline/v24/_6_mEDvmVP24UvU2MyiGDslL3Qg3YhJqPXxo.ttf",weight:400,isVariable:!1},{displayName:"Mrs Sheppards",filename:"PN_2Rfm9snC0XUGoEZhb91ig3vjxynMix4Y",category:"handwriting",url:"https://fonts.gstatic.com/s/mrssheppards/v25/PN_2Rfm9snC0XUGoEZhb91ig3vjxynMix4Y.ttf",weight:400,isVariable:!1},{displayName:"Libre Barcode EAN13 Text",filename:"wlpigxXFDU1_oCu9nfZytgIqSG0XRcJm_OQiB96PAGEki52WfA",category:"display",url:"https://fonts.gstatic.com/s/librebarcodeean13text/v25/wlpigxXFDU1_oCu9nfZytgIqSG0XRcJm_OQiB96PAGEki52WfA.ttf",weight:400,isVariable:!1},{displayName:"Bacasime Antique",filename:"tDbX2pGXkFYEykldjZSrmI6T_XWZOwStSUrV_BE",category:"serif",url:"https://fonts.gstatic.com/s/bacasimeantique/v1/tDbX2pGXkFYEykldjZSrmI6T_XWZOwStSUrV_BE.ttf",weight:400,isVariable:!1},{displayName:"Ravi Prakash",filename:"gokpH6fsDkVrF9Bv9X8SOAKHmNZEq6TTFw",category:"display",url:"https://fonts.gstatic.com/s/raviprakash/v21/gokpH6fsDkVrF9Bv9X8SOAKHmNZEq6TTFw.ttf",weight:400,isVariable:!1},{displayName:"Manufacturing Consent",filename:"N0bL2TVONuFkPkuHfiECSLCwuZS-D-IsakikR6QvbfFYLA",category:"display",url:"https://fonts.gstatic.com/s/manufacturingconsent/v1/N0bL2TVONuFkPkuHfiECSLCwuZS-D-IsakikR6QvbfFYLA.ttf",weight:400,isVariable:!1},{displayName:"Kirang Haerang",filename:"E21-_dn_gvvIjhYON1lpIU4-bcqvWPaJq4no",category:"display",url:"https://fonts.gstatic.com/s/kiranghaerang/v22/E21-_dn_gvvIjhYON1lpIU4-bcqvWPaJq4no.ttf",weight:400,isVariable:!1},{displayName:"Fruktur",filename:"SZc53FHsOru5QYsMfz3GkUrS8DI",category:"display",url:"https://fonts.gstatic.com/s/fruktur/v28/SZc53FHsOru5QYsMfz3GkUrS8DI.ttf",weight:400,isVariable:!1},{displayName:"Diplomata SC",filename:"buExpoi3ecvs3kidKgBJo2kf-P5Oaiw4cw",category:"display",url:"https://fonts.gstatic.com/s/diplomatasc/v30/buExpoi3ecvs3kidKgBJo2kf-P5Oaiw4cw.ttf",weight:400,isVariable:!1},{displayName:"Rubik Distressed",filename:"GFDxWBdsmnqAVqjtUsZf2dcrQ2ldcWAhatVBaGM",category:"display",url:"https://fonts.gstatic.com/s/rubikdistressed/v1/GFDxWBdsmnqAVqjtUsZf2dcrQ2ldcWAhatVBaGM.ttf",weight:400,isVariable:!1},{displayName:"Peddana",filename:"aFTU7PBhaX89UcKWhh2aBYyMcKw",category:"serif",url:"https://fonts.gstatic.com/s/peddana/v24/aFTU7PBhaX89UcKWhh2aBYyMcKw.ttf",weight:400,isVariable:!1},{displayName:"Dai Banna SIL",filename:"lW-4wj0AJWmpwGyJ2uEoA4I7jS6AKsLhJgo",category:"serif",url:"https://fonts.gstatic.com/s/daibannasil/v2/lW-4wj0AJWmpwGyJ2uEoA4I7jS6AKsLhJgo.ttf",weight:400,isVariable:!1},{displayName:"Edu AU VIC WA NT Pre",filename:"f0Xp0fWk-t0rbG8Ycr-t55aG0elTWbFeXbwD1TB_JHHY",category:"handwriting",url:"https://fonts.gstatic.com/s/eduauvicwantpre/v3/f0Xp0fWk-t0rbG8Ycr-t55aG0elTWbFeXbwD1TB_JHHY.ttf",weight:400,isVariable:!0},{displayName:"Playwrite AU NSW",filename:"6qLbKY4NtxD-qVlIPUIPenElWCCEQxMAZkM1pn4",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteaunsw/v11/6qLbKY4NtxD-qVlIPUIPenElWCCEQxMAZkM1pn4.ttf",weight:400,isVariable:!0},{displayName:"Chenla",filename:"SZc43FDpIKu8WZ9eXxfonUPL6Q",category:"display",url:"https://fonts.gstatic.com/s/chenla/v25/SZc43FDpIKu8WZ9eXxfonUPL6Q.ttf",weight:400,isVariable:!1},{displayName:"Kumar One Outline",filename:"Noao6VH62pyLP0fsrZ-v18wlUEcX9zDwRQu8EGKF",category:"display",url:"https://fonts.gstatic.com/s/kumaroneoutline/v20/Noao6VH62pyLP0fsrZ-v18wlUEcX9zDwRQu8EGKF.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Tamil",filename:"LYjZdHr-klIgTfc40komjQ5OObazeJSY8z6Np1k",category:"serif",url:"https://fonts.gstatic.com/s/notoseriftamil/v31/LYjZdHr-klIgTfc40komjQ5OObazeJSY8z6Np1k.ttf",weight:400,isVariable:!0},{displayName:"Oi",filename:"w8gXH2EuRqtaut6yjBOG",category:"display",url:"https://fonts.gstatic.com/s/oi/v21/w8gXH2EuRqtaut6yjBOG.ttf",weight:400,isVariable:!1},{displayName:"Bahiana",filename:"uU9PCBUV4YenPWJU7xPb3vyHmlI",category:"display",url:"https://fonts.gstatic.com/s/bahiana/v25/uU9PCBUV4YenPWJU7xPb3vyHmlI.ttf",weight:400,isVariable:!1},{displayName:"Sixtyfour",filename:"OD5BuMCT1numDm3nakX3rEq4DL6w2w",category:"monospace",url:"https://fonts.gstatic.com/s/sixtyfour/v3/OD5BuMCT1numDm3nakX3rEq4DL6w2w.ttf",weight:400,isVariable:!1},{displayName:"Piedra",filename:"ke8kOg8aN0Bn7hTunEyHN_M3gA",category:"display",url:"https://fonts.gstatic.com/s/piedra/v27/ke8kOg8aN0Bn7hTunEyHN_M3gA.ttf",weight:400,isVariable:!1},{displayName:"Tiro Telugu",filename:"aFTQ7PxlZWk2EPiSymjXdKSNQqn0X0BO",category:"serif",url:"https://fonts.gstatic.com/s/tirotelugu/v7/aFTQ7PxlZWk2EPiSymjXdKSNQqn0X0BO.ttf",weight:400,isVariable:!1},{displayName:"Flow Rounded",filename:"-zki91mtwsU9qlLiGwD4oQX3oZX-Xup87g",category:"display",url:"https://fonts.gstatic.com/s/flowrounded/v15/-zki91mtwsU9qlLiGwD4oQX3oZX-Xup87g.ttf",weight:400,isVariable:!1},{displayName:"Princess Sofia",filename:"qWczB6yguIb8DZ_GXZst16n7GRz7mDUoupoI",category:"handwriting",url:"https://fonts.gstatic.com/s/princesssofia/v27/qWczB6yguIb8DZ_GXZst16n7GRz7mDUoupoI.ttf",weight:400,isVariable:!1},{displayName:"Griffy",filename:"FwZa7-ox2FQh9kfwSNSEwM2zpA",category:"display",url:"https://fonts.gstatic.com/s/griffy/v23/FwZa7-ox2FQh9kfwSNSEwM2zpA.ttf",weight:400,isVariable:!1},{displayName:"Bungee Tint",filename:"J7abnpl_EGtUEuAJwN9WmrtKMDwTpTkB",category:"display",url:"https://fonts.gstatic.com/s/bungeetint/v3/J7abnpl_EGtUEuAJwN9WmrtKMDwTpTkB.ttf",weight:400,isVariable:!1},{displayName:"Diphylleia",filename:"DtVmJxCtRKMixK4_HXsIulwm6gDXvwE",category:"serif",url:"https://fonts.gstatic.com/s/diphylleia/v2/DtVmJxCtRKMixK4_HXsIulwm6gDXvwE.ttf",weight:400,isVariable:!1},{displayName:"Uchen",filename:"nKKZ-GokGZ1baIaSEQGodLxA",category:"serif",url:"https://fonts.gstatic.com/s/uchen/v11/nKKZ-GokGZ1baIaSEQGodLxA.ttf",weight:400,isVariable:!1},{displayName:"Stack Sans Headline",filename:"1Ptyg9jZXvmMnkLnuURbaukKZJTyrDV3waClGrw-PTY",category:"sans-serif",url:"https://fonts.gstatic.com/s/stacksansheadline/v1/1Ptyg9jZXvmMnkLnuURbaukKZJTyrDV3waClGrw-PTY.ttf",weight:400,isVariable:!0},{displayName:"Iansui",filename:"w8gbH2UoTuUp5bOajSGD1FcXoQ",category:"handwriting",url:"https://fonts.gstatic.com/s/iansui/v8/w8gbH2UoTuUp5bOajSGD1FcXoQ.ttf",weight:400,isVariable:!1},{displayName:"Hanalei Fill",filename:"fC1mPYtObGbfyQznIaQzPQiMVwLBplm9aw",category:"display",url:"https://fonts.gstatic.com/s/hanaleifill/v23/fC1mPYtObGbfyQznIaQzPQiMVwLBplm9aw.ttf",weight:400,isVariable:!1},{displayName:"Gidugu",filename:"L0x8DFMkk1Uf6w3RvPCmRSlUig",category:"sans-serif",url:"https://fonts.gstatic.com/s/gidugu/v28/L0x8DFMkk1Uf6w3RvPCmRSlUig.ttf",weight:400,isVariable:!1},{displayName:"BioRhyme Expanded",filename:"i7dQIE1zZzytGswgU577CDY9LjbffySURXCPYsje",category:"serif",url:"https://fonts.gstatic.com/s/biorhymeexpanded/v23/i7dQIE1zZzytGswgU577CDY9LjbffySURXCPYsje.ttf",weight:400,isVariable:!1},{displayName:"Tiro Kannada",filename:"CSR44ztKmvqaDxEDJFY7CIYKSPl6tOU9Eg",category:"serif",url:"https://fonts.gstatic.com/s/tirokannada/v6/CSR44ztKmvqaDxEDJFY7CIYKSPl6tOU9Eg.ttf",weight:400,isVariable:!1},{displayName:"Dhurjati",filename:"_6_8ED3gSeatXfFiFX3ySKQtuTA2",category:"sans-serif",url:"https://fonts.gstatic.com/s/dhurjati/v27/_6_8ED3gSeatXfFiFX3ySKQtuTA2.ttf",weight:400,isVariable:!1},{displayName:"Jim Nightshade",filename:"PlIkFlu9Pb08Q8HLM1PxmB0g-OS4V3qKaMxD",category:"handwriting",url:"https://fonts.gstatic.com/s/jimnightshade/v21/PlIkFlu9Pb08Q8HLM1PxmB0g-OS4V3qKaMxD.ttf",weight:400,isVariable:!1},{displayName:"Jersey 20",filename:"ZgNRjP1ON6jeW4D12z3crE_qP4mXuQ",category:"display",url:"https://fonts.gstatic.com/s/jersey20/v4/ZgNRjP1ON6jeW4D12z3crE_qP4mXuQ.ttf",weight:400,isVariable:!1},{displayName:"Bonbon",filename:"0FlVVPeVlFec4ee_cDEAbQY5-A",category:"handwriting",url:"https://fonts.gstatic.com/s/bonbon/v32/0FlVVPeVlFec4ee_cDEAbQY5-A.ttf",weight:400,isVariable:!1},{displayName:"Lunasima",filename:"wEO-EBvPh9RSOj7JFAwle94H1VIe",category:"sans-serif",url:"https://fonts.gstatic.com/s/lunasima/v1/wEO-EBvPh9RSOj7JFAwle94H1VIe.ttf",weight:400,isVariable:!1},{displayName:"Wittgenstein",filename:"WBLirEDOakJCHParhXGwMgvoLOqtgE5h0A",category:"serif",url:"https://fonts.gstatic.com/s/wittgenstein/v4/WBLirEDOakJCHParhXGwMgvoLOqtgE5h0A.ttf",weight:400,isVariable:!0},{displayName:"Zalando Sans Expanded",filename:"JTUJjJci8Cy470GaeFwsix1hi3aTmrgRwU-Dq0Y6QX5Mog",category:"sans-serif",url:"https://fonts.gstatic.com/s/zalandosansexpanded/v2/JTUJjJci8Cy470GaeFwsix1hi3aTmrgRwU-Dq0Y6QX5Mog.ttf",weight:400,isVariable:!0},{displayName:"Snippet",filename:"bWt47f7XfQH9Gupu2v_Afcp9QWc",category:"sans-serif",url:"https://fonts.gstatic.com/s/snippet/v21/bWt47f7XfQH9Gupu2v_Afcp9QWc.ttf",weight:400,isVariable:!1},{displayName:"Bigelow Rules",filename:"RrQWboly8iR_I3KWSzeRuN0zT4cCH8WAJVk",category:"display",url:"https://fonts.gstatic.com/s/bigelowrules/v31/RrQWboly8iR_I3KWSzeRuN0zT4cCH8WAJVk.ttf",weight:400,isVariable:!1},{displayName:"Revalia",filename:"WwkexPimBE2-4ZPEeVruNIgJSNM",category:"display",url:"https://fonts.gstatic.com/s/revalia/v24/WwkexPimBE2-4ZPEeVruNIgJSNM.ttf",weight:400,isVariable:!1},{displayName:"Rubik Glitch Pop",filename:"tDbX2pGHhFcM0gB3hN2elZLa3G-MOwStSUrV_BE",category:"display",url:"https://fonts.gstatic.com/s/rubikglitchpop/v1/tDbX2pGHhFcM0gB3hN2elZLa3G-MOwStSUrV_BE.ttf",weight:400,isVariable:!1},{displayName:"TASA Orbiter",filename:"3XFtErw3860rsdSUVZx78hPGRdbY1P1Sbg",category:"sans-serif",url:"https://fonts.gstatic.com/s/tasaorbiter/v2/3XFtErw3860rsdSUVZx78hPGRdbY1P1Sbg.ttf",weight:400,isVariable:!0},{displayName:"Edu VIC WA NT Beginner",filename:"jizLRF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7qNuL4o61H_E",category:"handwriting",url:"https://fonts.gstatic.com/s/eduvicwantbeginner/v6/jizLRF1BuW9OwcnNPxLl4KfZCHd9nFtd5Tu7qNuL4o61H_E.ttf",weight:400,isVariable:!0},{displayName:"Jacquard 24",filename:"jVyO7nf_B2zO5jVpUGU8lgQEdchf9xXp",category:"display",url:"https://fonts.gstatic.com/s/jacquard24/v4/jVyO7nf_B2zO5jVpUGU8lgQEdchf9xXp.ttf",weight:400,isVariable:!1},{displayName:"Oldenburg",filename:"fC1jPY5JYWzbywv7c4V6UU6oXyndrw",category:"display",url:"https://fonts.gstatic.com/s/oldenburg/v24/fC1jPY5JYWzbywv7c4V6UU6oXyndrw.ttf",weight:400,isVariable:!1},{displayName:"Rubik Vinyl",filename:"iJWABXKIfDnIV4mQ5BfjvUXexox2ztOU",category:"display",url:"https://fonts.gstatic.com/s/rubikvinyl/v1/iJWABXKIfDnIV4mQ5BfjvUXexox2ztOU.ttf",weight:400,isVariable:!1},{displayName:"Butcherman",filename:"2EbiL-thF0loflXUBOdb1zWzq_5uT84",category:"display",url:"https://fonts.gstatic.com/s/butcherman/v25/2EbiL-thF0loflXUBOdb1zWzq_5uT84.ttf",weight:400,isVariable:!1},{displayName:"Epunda Sans",filename:"ea8dads_Rv3-GJfWRrHjgE5Fq16dCmit",category:"sans-serif",url:"https://fonts.gstatic.com/s/epundasans/v5/ea8dads_Rv3-GJfWRrHjgE5Fq16dCmit.ttf",weight:400,isVariable:!0},{displayName:"Trochut",filename:"CHyjV-fDDlP9bDIw5nSIfVIPLns",category:"display",url:"https://fonts.gstatic.com/s/trochut/v24/CHyjV-fDDlP9bDIw5nSIfVIPLns.ttf",weight:400,isVariable:!1},{displayName:"Londrina Sketch",filename:"c4m41npxGMTnomOHtRU68eIJn8qfWWn5Pos6CA",category:"display",url:"https://fonts.gstatic.com/s/londrinasketch/v27/c4m41npxGMTnomOHtRU68eIJn8qfWWn5Pos6CA.ttf",weight:400,isVariable:!1},{displayName:"Ranga",filename:"C8ct4cYisGb28p6CLDwZwmGE",category:"display",url:"https://fonts.gstatic.com/s/ranga/v22/C8ct4cYisGb28p6CLDwZwmGE.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Balinese",filename:"QdVKSS0-JginysQSRvuCmUMB_wVeQAxXRbgJdhapcUU",category:"serif",url:"https://fonts.gstatic.com/s/notoserifbalinese/v21/QdVKSS0-JginysQSRvuCmUMB_wVeQAxXRbgJdhapcUU.ttf",weight:400,isVariable:!1},{displayName:"Langar",filename:"kJEyBukW7AIlgjGVrTVZ99sqrQ",category:"display",url:"https://fonts.gstatic.com/s/langar/v30/kJEyBukW7AIlgjGVrTVZ99sqrQ.ttf",weight:400,isVariable:!1},{displayName:"Emblema One",filename:"nKKT-GQ0F5dSY8vzG0rOEIRBHl57G_f_",category:"display",url:"https://fonts.gstatic.com/s/emblemaone/v22/nKKT-GQ0F5dSY8vzG0rOEIRBHl57G_f_.ttf",weight:400,isVariable:!1},{displayName:"Libertinus Sans",filename:"YA9Lr0-a6k7ZLbw_dle4knJh2cqMjt3V_dB0Yw",category:"sans-serif",url:"https://fonts.gstatic.com/s/libertinussans/v1/YA9Lr0-a6k7ZLbw_dle4knJh2cqMjt3V_dB0Yw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Javanese",filename:"2V0AKJkDAIA6Hp4zoSScDjV0Y-eoHAHJ8r88Rp29eA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansjavanese/v25/2V0AKJkDAIA6Hp4zoSScDjV0Y-eoHAHJ8r88Rp29eA.ttf",weight:400,isVariable:!0},{displayName:"Playwrite AU QLD",filename:"SlGLmR-Yo5oYZX5BFVcEwSFSOXBRQgviqWC_O7Y",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteauqld/v11/SlGLmR-Yo5oYZX5BFVcEwSFSOXBRQgviqWC_O7Y.ttf",weight:400,isVariable:!0},{displayName:"GFS Neohellenic",filename:"8QIRdiDOrfiq0b7R8O1Iw9WLcY5TLahP46UDUw",category:"sans-serif",url:"https://fonts.gstatic.com/s/gfsneohellenic/v27/8QIRdiDOrfiq0b7R8O1Iw9WLcY5TLahP46UDUw.ttf",weight:400,isVariable:!1},{displayName:"Flavors",filename:"FBV2dDrhxqmveJTpbkzlNqkG9UY",category:"display",url:"https://fonts.gstatic.com/s/flavors/v28/FBV2dDrhxqmveJTpbkzlNqkG9UY.ttf",weight:400,isVariable:!1},{displayName:"Playwrite US Modern",filename:"H4c7BWmRlMXPhla3hmMaveiYz8nSDkIFNtk6Z7xL8AQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteusmodern/v11/H4c7BWmRlMXPhla3hmMaveiYz8nSDkIFNtk6Z7xL8AQ.ttf",weight:400,isVariable:!0},{displayName:"Molle",filename:"E21n_dL5hOXFhWEsXzgmVydREus",category:"handwriting",url:"https://fonts.gstatic.com/s/molle/v25/E21n_dL5hOXFhWEsXzgmVydREus.ttf",weight:400,isVariable:!1},{displayName:"Babylonica",filename:"5aUw9_i2qxWVCAE2aHjTqDJ0-VVMoEw",category:"handwriting",url:"https://fonts.gstatic.com/s/babylonica/v7/5aUw9_i2qxWVCAE2aHjTqDJ0-VVMoEw.ttf",weight:400,isVariable:!1},{displayName:"Sedan",filename:"Yq6a-L-VVyD6-eOSiTpovf5b",category:"serif",url:"https://fonts.gstatic.com/s/sedan/v1/Yq6a-L-VVyD6-eOSiTpovf5b.ttf",weight:400,isVariable:!1},{displayName:"Ancizar Sans",filename:"fC1mPYtHY2vX3wj8IbE7PxeMVwLBplm9aw",category:"sans-serif",url:"https://fonts.gstatic.com/s/ancizarsans/v8/fC1mPYtHY2vX3wj8IbE7PxeMVwLBplm9aw.ttf",weight:400,isVariable:!0},{displayName:"Momo Trust Display",filename:"WWXPlieNYgyPZLyBUuEkKZFhFHyjqb1un2xNNgNa1A",category:"sans-serif",url:"https://fonts.gstatic.com/s/momotrustdisplay/v2/WWXPlieNYgyPZLyBUuEkKZFhFHyjqb1un2xNNgNa1A.ttf",weight:400,isVariable:!1},{displayName:"Science Gothic",filename:"CHy6V-7EH1X7aiQh5jPNDTJnVVokpGVYYYVm",category:"sans-serif",url:"https://fonts.gstatic.com/s/sciencegothic/v5/CHy6V-7EH1X7aiQh5jPNDTJnVVokpGVYYYVm.ttf",weight:400,isVariable:!0},{displayName:"Are You Serious",filename:"ll8kK2GVSSr-PtjQ5nONVcNn4306hT9nCGRayg",category:"handwriting",url:"https://fonts.gstatic.com/s/areyouserious/v14/ll8kK2GVSSr-PtjQ5nONVcNn4306hT9nCGRayg.ttf",weight:400,isVariable:!1},{displayName:"Ubuntu Sans Mono",filename:"jVyR7mzgBHrR5yE7ZyRg0QRJMKI41g3CfRXxWZQ",category:"monospace",url:"https://fonts.gstatic.com/s/ubuntusansmono/v3/jVyR7mzgBHrR5yE7ZyRg0QRJMKI41g3CfRXxWZQ.ttf",weight:400,isVariable:!0},{displayName:"Libertinus Serif",filename:"RLpkK4bw7KinajYBg0RTTwCLF5Ben6kFUHPIFaU",category:"serif",url:"https://fonts.gstatic.com/s/libertinusserif/v1/RLpkK4bw7KinajYBg0RTTwCLF5Ben6kFUHPIFaU.ttf",weight:400,isVariable:!1},{displayName:"Tsukimi Rounded",filename:"sJoc3LJNksWZO0LvnZwkF3HtoB7tPXMOP5gP1A",category:"sans-serif",url:"https://fonts.gstatic.com/s/tsukimirounded/v14/sJoc3LJNksWZO0LvnZwkF3HtoB7tPXMOP5gP1A.ttf",weight:400,isVariable:!1},{displayName:"Playwrite PL",filename:"0QInMXVf_4C2VH-yUr5uz72O85bS8ANesw",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritepl/v10/0QInMXVf_4C2VH-yUr5uz72O85bS8ANesw.ttf",weight:400,isVariable:!0},{displayName:"Foldit",filename:"aFTV7PF3Y3c9WdjXpje0CYWVaQ",category:"display",url:"https://fonts.gstatic.com/s/foldit/v8/aFTV7PF3Y3c9WdjXpje0CYWVaQ.ttf",weight:400,isVariable:!0},{displayName:"LXGW WenKai Mono TC",filename:"pxiYyos4iPVgyWx9WtufHnsIf5nkaB0Him6CovpOkXA",category:"monospace",url:"https://fonts.gstatic.com/s/lxgwwenkaimonotc/v9/pxiYyos4iPVgyWx9WtufHnsIf5nkaB0Him6CovpOkXA.ttf",weight:400,isVariable:!1},{displayName:"Momo Signature",filename:"RrQJbop99C51b06IDAuFoM0yCqcoMcmJPECN",category:"sans-serif",url:"https://fonts.gstatic.com/s/momosignature/v2/RrQJbop99C51b06IDAuFoM0yCqcoMcmJPECN.ttf",weight:400,isVariable:!1},{displayName:"Aref Ruqaa Ink",filename:"1q2fY5WOGUFlt84GTOkP6Kdx72ThVIGpgnxL",category:"serif",url:"https://fonts.gstatic.com/s/arefruqaaink/v11/1q2fY5WOGUFlt84GTOkP6Kdx72ThVIGpgnxL.ttf",weight:400,isVariable:!1},{displayName:"Playwrite NO",filename:"nuF-D_fYSZviRJYb-P2TrQOvBjiqFTrghA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteno/v10/nuF-D_fYSZviRJYb-P2TrQOvBjiqFTrghA.ttf",weight:400,isVariable:!0},{displayName:"Alumni Sans Inline One",filename:"RrQBbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpD3AZcr7xbYw",category:"display",url:"https://fonts.gstatic.com/s/alumnisansinlineone/v7/RrQBbpJx9zZ3IXTBOASKp5gJAetBdaihcjbpD3AZcr7xbYw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Nandinagari",filename:"or38Q7733eiDljA1IufXSNFT-1KI5y10H4jVa5RXzC1KOw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansnandinagari/v4/or38Q7733eiDljA1IufXSNFT-1KI5y10H4jVa5RXzC1KOw.ttf",weight:400,isVariable:!1},{displayName:"Bahianita",filename:"yYLr0hTb3vuqqsBUgxWtxTvV2NJPcA",category:"display",url:"https://fonts.gstatic.com/s/bahianita/v23/yYLr0hTb3vuqqsBUgxWtxTvV2NJPcA.ttf",weight:400,isVariable:!1},{displayName:"Purple Purse",filename:"qWctB66gv53iAp-Vfs4My6qyeBb_ujA4ug",category:"display",url:"https://fonts.gstatic.com/s/purplepurse/v25/qWctB66gv53iAp-Vfs4My6qyeBb_ujA4ug.ttf",weight:400,isVariable:!1},{displayName:"Alumni Sans Collegiate One",filename:"MQpB-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhjdayDiPw2ta",category:"sans-serif",url:"https://fonts.gstatic.com/s/alumnisanscollegiateone/v7/MQpB-XChK8G5CtmK_AuGxQrdNvPSXkn0RM-XqjWWhjdayDiPw2ta.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Khmer",filename:"-F6qfidqLzI2JPCkXAO2hmogq0148ldPg-IUDNg",category:"serif",url:"https://fonts.gstatic.com/s/notoserifkhmer/v29/-F6qfidqLzI2JPCkXAO2hmogq0148ldPg-IUDNg.ttf",weight:400,isVariable:!0},{displayName:"Cascadia Code",filename:"qWcsB6-zq5zxD57cT5s916v3WDzRtjkho4M",category:"sans-serif",url:"https://fonts.gstatic.com/s/cascadiacode/v5/qWcsB6-zq5zxD57cT5s916v3WDzRtjkho4M.ttf",weight:400,isVariable:!0},{displayName:"Diplomata",filename:"Cn-0JtiMXwhNwp-wKxyfYGxYrdM9Sg",category:"display",url:"https://fonts.gstatic.com/s/diplomata/v33/Cn-0JtiMXwhNwp-wKxyfYGxYrdM9Sg.ttf",weight:400,isVariable:!1},{displayName:"Splash",filename:"KtksAL2RZoDkbU6hpPPGNdS6wg",category:"handwriting",url:"https://fonts.gstatic.com/s/splash/v8/KtksAL2RZoDkbU6hpPPGNdS6wg.ttf",weight:400,isVariable:!1},{displayName:"Story Script",filename:"mem5YaSw02SQ0OlzDuR8Isk-VeJoCqeDjg",category:"sans-serif",url:"https://fonts.gstatic.com/s/storyscript/v3/mem5YaSw02SQ0OlzDuR8Isk-VeJoCqeDjg.ttf",weight:400,isVariable:!1},{displayName:"Butterfly Kids",filename:"ll8lK2CWTjuqAsXDqlnIbMNs5S4arxFrAX1D",category:"handwriting",url:"https://fonts.gstatic.com/s/butterflykids/v27/ll8lK2CWTjuqAsXDqlnIbMNs5S4arxFrAX1D.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Coptic",filename:"iJWfBWmUZi_OHPqn4wq6kgqumOEd78u_VG0xR4Y",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanscoptic/v22/iJWfBWmUZi_OHPqn4wq6kgqumOEd78u_VG0xR4Y.ttf",weight:400,isVariable:!1},{displayName:"Send Flowers",filename:"If2PXTjtZS-0Xqy13uCQSULvxwjjouU1iw",category:"handwriting",url:"https://fonts.gstatic.com/s/sendflowers/v7/If2PXTjtZS-0Xqy13uCQSULvxwjjouU1iw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Anatolian Hieroglyphs",filename:"ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWXybIymc5QYo",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansanatolianhieroglyphs/v17/ijw9s4roRME5LLRxjsRb8A0gKPSWq4BbDmHHu6j2pEtUJzZWXybIymc5QYo.ttf",weight:400,isVariable:!1},{displayName:"Playwrite HR Lijeva",filename:"gNMYW2dhS5-p7HvxrBYiWN2SsKqLWCrYkjtiTWz5UGA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritehrlijeva/v6/gNMYW2dhS5-p7HvxrBYiWN2SsKqLWCrYkjtiTWz5UGA.ttf",weight:400,isVariable:!0},{displayName:"Kings",filename:"8AtnGsK4O5CYXU_Iq6GSPaHS",category:"handwriting",url:"https://fonts.gstatic.com/s/kings/v9/8AtnGsK4O5CYXU_Iq6GSPaHS.ttf",weight:400,isVariable:!1},{displayName:"Danfo",filename:"snfks0u_98t16SvUCZwCP8F9",category:"serif",url:"https://fonts.gstatic.com/s/danfo/v5/snfks0u_98t16SvUCZwCP8F9.ttf",weight:400,isVariable:!1},{displayName:"Geom",filename:"X7nq4bw6Cf6jwtSdHC67_M0",category:"sans-serif",url:"https://fonts.gstatic.com/s/geom/v1/X7nq4bw6Cf6jwtSdHC67_M0.ttf",weight:400,isVariable:!0},{displayName:"Edu NSW ACT Foundation",filename:"raxsHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAeFBdseyoHko",category:"handwriting",url:"https://fonts.gstatic.com/s/edunswactfoundation/v5/raxsHjqJtsNBFUi8WO0vUBgc9D-2lV_oQdCAeFBdseyoHko.ttf",weight:400,isVariable:!0},{displayName:"Playpen Sans Arabic",filename:"KtkxAKiSeo38bkPvhIqjU6aCgha2der-fY5q4szgE-Q",category:"handwriting",url:"https://fonts.gstatic.com/s/playpensansarabic/v8/KtkxAKiSeo38bkPvhIqjU6aCgha2der-fY5q4szgE-Q.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Syloti Nagri",filename:"uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGFVfxN87gsj0",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssylotinagri/v25/uU9eCAQZ75uhfF9UoWDRiY3q7Sf_VFV3m4dGFVfxN87gsj0.ttf",weight:400,isVariable:!1},{displayName:"Love Light",filename:"t5tlIR0TNJyZWimpNAXDjKbCyTHuspo",category:"handwriting",url:"https://fonts.gstatic.com/s/lovelight/v8/t5tlIR0TNJyZWimpNAXDjKbCyTHuspo.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Grid Single",filename:"cY9afi2OU1tLpjaqQveNvbC2qfsuQPDVATvobxLCBJkS",category:"display",url:"https://fonts.gstatic.com/s/bitcountgridsingle/v3/cY9afi2OU1tLpjaqQveNvbC2qfsuQPDVATvobxLCBJkS.ttf",weight:400,isVariable:!0},{displayName:"Cascadia Mono",filename:"TUZ2zw5pquJF3iuizJDZYqr1WZUt0W3r4WA",category:"sans-serif",url:"https://fonts.gstatic.com/s/cascadiamono/v5/TUZ2zw5pquJF3iuizJDZYqr1WZUt0W3r4WA.ttf",weight:400,isVariable:!0},{displayName:"Labrada",filename:"ieV-2Y9HLWefIpOyDV5ALUIfEcs",category:"serif",url:"https://fonts.gstatic.com/s/labrada/v4/ieV-2Y9HLWefIpOyDV5ALUIfEcs.ttf",weight:400,isVariable:!0},{displayName:"Noto Rashi Hebrew",filename:"EJRMQh82XsIK-QFmqXk4zvLwFVya0utA2omSrzS8",category:"serif",url:"https://fonts.gstatic.com/s/notorashihebrew/v28/EJRMQh82XsIK-QFmqXk4zvLwFVya0utA2omSrzS8.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Tibetan",filename:"gokzH7nwAEdtF9N45n0Vaz7O-pk0wsvrFsIn6WYDvA",category:"serif",url:"https://fonts.gstatic.com/s/notoseriftibetan/v24/gokzH7nwAEdtF9N45n0Vaz7O-pk0wsvrFsIn6WYDvA.ttf",weight:400,isVariable:!0},{displayName:"BBH Bartle",filename:"zYXjKVYuMYMaN-IMqP3RSm6Tkd7_CIc",category:"sans-serif",url:"https://fonts.gstatic.com/s/bbhbartle/v1/zYXjKVYuMYMaN-IMqP3RSm6Tkd7_CIc.ttf",weight:400,isVariable:!1},{displayName:"Sassy Frass",filename:"LhWhMVrGOe0FLb97BjhsE99dGNWQg_am",category:"handwriting",url:"https://fonts.gstatic.com/s/sassyfrass/v9/LhWhMVrGOe0FLb97BjhsE99dGNWQg_am.ttf",weight:400,isVariable:!1},{displayName:"TASA Explorer",filename:"K2F3fZdAt8xjBmxMCPK8UO_SJyrYYWOMluQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/tasaexplorer/v2/K2F3fZdAt8xjBmxMCPK8UO_SJyrYYWOMluQ.ttf",weight:400,isVariable:!0},{displayName:"Jacquarda Bastarda 9",filename:"f0Xp0fWr_8t6WFtKQJfOhaC0hcZ1HYAMAbwD1TB_JHHY",category:"display",url:"https://fonts.gstatic.com/s/jacquardabastarda9/v6/f0Xp0fWr_8t6WFtKQJfOhaC0hcZ1HYAMAbwD1TB_JHHY.ttf",weight:400,isVariable:!1},{displayName:"Rubik Beastly",filename:"0QImMXRd5oOmSC2ZQ7o9653X07z8_ApHqqk",category:"display",url:"https://fonts.gstatic.com/s/rubikbeastly/v11/0QImMXRd5oOmSC2ZQ7o9653X07z8_ApHqqk.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Vithkuqi",filename:"YA9Pr1OY7FjTf5szakutkndpw9HH-4a41dFGZiCpggI",category:"serif",url:"https://fonts.gstatic.com/s/notoserifvithkuqi/v3/YA9Pr1OY7FjTf5szakutkndpw9HH-4a41dFGZiCpggI.ttf",weight:400,isVariable:!0},{displayName:"Aubrey",filename:"q5uGsou7NPBw-p7vugNsCxVEgA",category:"display",url:"https://fonts.gstatic.com/s/aubrey/v29/q5uGsou7NPBw-p7vugNsCxVEgA.ttf",weight:400,isVariable:!1},{displayName:"Rubik 80s Fade",filename:"U9MF6dW37nLSmnwZXyoV-uPXUhHwkbL8IHcK",category:"display",url:"https://fonts.gstatic.com/s/rubik80sfade/v2/U9MF6dW37nLSmnwZXyoV-uPXUhHwkbL8IHcK.ttf",weight:400,isVariable:!1},{displayName:"Flow Block",filename:"wlp0gwfPCEB65UmTk-d6-WZlbCBXE_I",category:"display",url:"https://fonts.gstatic.com/s/flowblock/v15/wlp0gwfPCEB65UmTk-d6-WZlbCBXE_I.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Batak",filename:"gok2H6TwAEdtF9N8-mdTCQvT-Zdgo4_PHuk74A",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansbatak/v23/gok2H6TwAEdtF9N8-mdTCQvT-Zdgo4_PHuk74A.ttf",weight:400,isVariable:!1},{displayName:"Rubik Spray Paint",filename:"WnzhHBAoeBPUDTB4EWR82y6EXWPH-Ro-QoaBZQxP",category:"display",url:"https://fonts.gstatic.com/s/rubikspraypaint/v1/WnzhHBAoeBPUDTB4EWR82y6EXWPH-Ro-QoaBZQxP.ttf",weight:400,isVariable:!1},{displayName:"Rubik Burned",filename:"Jqzk5TmOVOqQHihKqPpscqniHQuaCY5ZSg",category:"display",url:"https://fonts.gstatic.com/s/rubikburned/v1/Jqzk5TmOVOqQHihKqPpscqniHQuaCY5ZSg.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Cypro Minoan",filename:"2Eb2L_dtDUlkNmPHB_UVtEzp3ZlPGqZ_4nAGq9eSf8_eQSE",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanscyprominoan/v1/2Eb2L_dtDUlkNmPHB_UVtEzp3ZlPGqZ_4nAGq9eSf8_eQSE.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DE SAS",filename:"1Pt1g9vaRvmWghDdrE8IDuRPVrHN5Vs45aiOBrU",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedesas/v11/1Pt1g9vaRvmWghDdrE8IDuRPVrHN5Vs45aiOBrU.ttf",weight:400,isVariable:!0},{displayName:"Matemasie",filename:"OD5BuMCN3ne3Gmr7dlL3rEq4DL6w2w",category:"sans-serif",url:"https://fonts.gstatic.com/s/matemasie/v4/OD5BuMCN3ne3Gmr7dlL3rEq4DL6w2w.ttf",weight:400,isVariable:!1},{displayName:"Edu AU VIC WA NT Dots",filename:"S6ujw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3lDKWpMFUwWQ",category:"handwriting",url:"https://fonts.gstatic.com/s/eduauvicwantdots/v4/S6ujw5FFVDKI3kwwDUbsPHCpzZNhzrA3or3lDKWpMFUwWQ.ttf",weight:400,isVariable:!0},{displayName:"Ruwudu",filename:"syky-y1tj6UzRKfNlQCT9tPdpw",category:"serif",url:"https://fonts.gstatic.com/s/ruwudu/v4/syky-y1tj6UzRKfNlQCT9tPdpw.ttf",weight:400,isVariable:!1},{displayName:"Chiron Hei HK",filename:"wXKtE3MSr44vpVKPvzqVJaxhvXcZsdDTlos",category:"sans-serif",url:"https://fonts.gstatic.com/s/chironheihk/v3/wXKtE3MSr44vpVKPvzqVJaxhvXcZsdDTlos.ttf",weight:400,isVariable:!0},{displayName:"Black And White Picture",filename:"TwMe-JAERlQd3ooUHBUXGmrmioKjjnRSFO-NqI5HbcMi-yWY",category:"display",url:"https://fonts.gstatic.com/s/blackandwhitepicture/v30/TwMe-JAERlQd3ooUHBUXGmrmioKjjnRSFO-NqI5HbcMi-yWY.ttf",weight:400,isVariable:!1},{displayName:"Ancizar Serif",filename:"PN_2RfmxrmD9dEi_Qbtf91W13vjxynMix4Y",category:"serif",url:"https://fonts.gstatic.com/s/ancizarserif/v8/PN_2RfmxrmD9dEi_Qbtf91W13vjxynMix4Y.ttf",weight:400,isVariable:!0},{displayName:"Redacted Script",filename:"ypvBbXGRglhokR7dcC3d1-R6zmxSsWTxkZkr_g",category:"display",url:"https://fonts.gstatic.com/s/redactedscript/v12/ypvBbXGRglhokR7dcC3d1-R6zmxSsWTxkZkr_g.ttf",weight:400,isVariable:!1},{displayName:"Taprom",filename:"UcCn3F82JHycULbFQyk3-0kvHg",category:"display",url:"https://fonts.gstatic.com/s/taprom/v29/UcCn3F82JHycULbFQyk3-0kvHg.ttf",weight:400,isVariable:!1},{displayName:"Playwrite GB S",filename:"oPWW_kFkk-s1Xclhmlemy7jsNR53bHiez1PV",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritegbs/v12/oPWW_kFkk-s1Xclhmlemy7jsNR53bHiez1PV.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Adlam",filename:"neITzCCpqp0s5pPusPamd81eMfjVqVkarSqSwA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansadlam/v27/neITzCCpqp0s5pPusPamd81eMfjVqVkarSqSwA.ttf",weight:400,isVariable:!0},{displayName:"Tai Heritage Pro",filename:"sZlfdQid-zgaNiNIYcUzJMU3IYyNoHxSENxuLuE",category:"serif",url:"https://fonts.gstatic.com/s/taiheritagepro/v9/sZlfdQid-zgaNiNIYcUzJMU3IYyNoHxSENxuLuE.ttf",weight:400,isVariable:!1},{displayName:"Tiro Tamil",filename:"m8JXjfVIf7OT22n3M-S_ULRvamODxdI",category:"serif",url:"https://fonts.gstatic.com/s/tirotamil/v11/m8JXjfVIf7OT22n3M-S_ULRvamODxdI.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Tangut",filename:"xn76YGc72GKoTvER4Gn3b4m9Ern7Em41fcvN2KT4",category:"serif",url:"https://fonts.gstatic.com/s/notoseriftangut/v19/xn76YGc72GKoTvER4Gn3b4m9Ern7Em41fcvN2KT4.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DK Loopet",filename:"memiYbuzy2qb3rtJGfM1FvY-GacDcsPvr6v9WSCHpm8",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedkloopet/v6/memiYbuzy2qb3rtJGfM1FvY-GacDcsPvr6v9WSCHpm8.ttf",weight:400,isVariable:!0},{displayName:"Mozilla Headline",filename:"QGY1z-UXahmCOps4kyMKGuSA9pYtwfjcL4mVDik",category:"sans-serif",url:"https://fonts.gstatic.com/s/mozillaheadline/v1/QGY1z-UXahmCOps4kyMKGuSA9pYtwfjcL4mVDik.ttf",weight:400,isVariable:!0},{displayName:"Gidole",filename:"sZlFdR6O8zVVEiMaCJtWS6EPcA",category:"sans-serif",url:"https://fonts.gstatic.com/s/gidole/v24/sZlFdR6O8zVVEiMaCJtWS6EPcA.ttf",weight:400,isVariable:!1},{displayName:"Momo Trust Sans",filename:"BXRzvFfHh_fFyXlQWZgO0TyUN7P31beyoRkJIA",category:"sans-serif",url:"https://fonts.gstatic.com/s/momotrustsans/v4/BXRzvFfHh_fFyXlQWZgO0TyUN7P31beyoRkJIA.ttf",weight:400,isVariable:!0},{displayName:"Huninn",filename:"OpNNnoINg9bQ4xkpjiHQjittXw",category:"sans-serif",url:"https://fonts.gstatic.com/s/huninn/v2/OpNNnoINg9bQ4xkpjiHQjittXw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Mongolian",filename:"VdGCAYADGIwE0EopZx8xQfHlgEAMsrToxLsg6-av1x0",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmongolian/v23/VdGCAYADGIwE0EopZx8xQfHlgEAMsrToxLsg6-av1x0.ttf",weight:400,isVariable:!1},{displayName:"WDXL Lubrifont JP N",filename:"8At1GtSkFqazDiO949fzWta9_T-SVxJiIZctoLhFRNU",category:"sans-serif",url:"https://fonts.gstatic.com/s/wdxllubrifontjpn/v1/8At1GtSkFqazDiO949fzWta9_T-SVxJiIZctoLhFRNU.ttf",weight:400,isVariable:!1},{displayName:"Hind Mysuru",filename:"syk3-yB3k7wiAJ-U5l_li_LFjFGYLkjj",category:"sans-serif",url:"https://fonts.gstatic.com/s/hindmysuru/v1/syk3-yB3k7wiAJ-U5l_li_LFjFGYLkjj.ttf",weight:400,isVariable:!1},{displayName:"Elms Sans",filename:"q5uFsoS_Lf9xv7Su1FpIAz5YiYVICQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/elmssans/v7/q5uFsoS_Lf9xv7Su1FpIAz5YiYVICQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Carian",filename:"LDIpaoiONgYwA9Yc6f0gUILeMIOgs7ob9yGLmfI",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanscarian/v17/LDIpaoiONgYwA9Yc6f0gUILeMIOgs7ob9yGLmfI.ttf",weight:400,isVariable:!1},{displayName:"Stack Sans Notch",filename:"TwMV-JcVXlQd3ooGEx9EbUzgioTr_h0bZJL-1a8",category:"sans-serif",url:"https://fonts.gstatic.com/s/stacksansnotch/v5/TwMV-JcVXlQd3ooGEx9EbUzgioTr_h0bZJL-1a8.ttf",weight:400,isVariable:!0},{displayName:"Playwrite HR",filename:"WWXVljmQYQCZM5qaU_dwQYcoZybLwMVWng",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritehr/v6/WWXVljmQYQCZM5qaU_dwQYcoZybLwMVWng.ttf",weight:400,isVariable:!0},{displayName:"Libertinus Mono",filename:"_gPg1RnxrjY_TDm97ApTqwneJJFToBF3YROW_w",category:"monospace",url:"https://fonts.gstatic.com/s/libertinusmono/v1/_gPg1RnxrjY_TDm97ApTqwneJJFToBF3YROW_w.ttf",weight:400,isVariable:!1},{displayName:"Combo",filename:"BXRlvF3Jh_fIhg0iBu9y8Hf0",category:"display",url:"https://fonts.gstatic.com/s/combo/v22/BXRlvF3Jh_fIhg0iBu9y8Hf0.ttf",weight:400,isVariable:!1},{displayName:"Rubik Puddles",filename:"1Ptog8bYX_qGnkLkrU5MJsQcJfC0wVMT-aE",category:"display",url:"https://fonts.gstatic.com/s/rubikpuddles/v2/1Ptog8bYX_qGnkLkrU5MJsQcJfC0wVMT-aE.ttf",weight:400,isVariable:!1},{displayName:"WDXL Lubrifont SC",filename:"gNMeW2VmY6acu0XtugFrduDciOOyfny5mD9ASHz5",category:"sans-serif",url:"https://fonts.gstatic.com/s/wdxllubrifontsc/v1/gNMeW2VmY6acu0XtugFrduDciOOyfny5mD9ASHz5.ttf",weight:400,isVariable:!1},{displayName:"Asimovian",filename:"oY1c8evOub78P2XN94MXCv5xY4QBLw",category:"sans-serif",url:"https://fonts.gstatic.com/s/asimovian/v2/oY1c8evOub78P2XN94MXCv5xY4QBLw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Duployan",filename:"gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvrFsIn6WYDvA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansduployan/v19/gokzH7nwAEdtF9N8-mdTDx_X9JM5wsvrFsIn6WYDvA.ttf",weight:400,isVariable:!1},{displayName:"Snowburst One",filename:"MQpS-WezKdujBsXY3B7I-UT7eZ-UPyacPbo",category:"display",url:"https://fonts.gstatic.com/s/snowburstone/v21/MQpS-WezKdujBsXY3B7I-UT7eZ-UPyacPbo.ttf",weight:400,isVariable:!1},{displayName:"Chokokutai",filename:"kmK4Zqw4HwvCeHGM8Fws9y7ypu1Kr7I",category:"display",url:"https://fonts.gstatic.com/s/chokokutai/v12/kmK4Zqw4HwvCeHGM8Fws9y7ypu1Kr7I.ttf",weight:400,isVariable:!1},{displayName:"Protest Guerrilla",filename:"Qw3HZR5PDSL6K3irtrY-VJB2YzARHV0koJ8y_eiS",category:"display",url:"https://fonts.gstatic.com/s/protestguerrilla/v2/Qw3HZR5PDSL6K3irtrY-VJB2YzARHV0koJ8y_eiS.ttf",weight:400,isVariable:!1},{displayName:"Triodion",filename:"IFSnHe5TgMVEmMQV5mr5u-W10l_X",category:"display",url:"https://fonts.gstatic.com/s/triodion/v3/IFSnHe5TgMVEmMQV5mr5u-W10l_X.ttf",weight:400,isVariable:!1},{displayName:"Rubik Microbe",filename:"UqyWK8oPP3hjw6ANS9rM3PsZcs8aaKgiauE",category:"display",url:"https://fonts.gstatic.com/s/rubikmicrobe/v2/UqyWK8oPP3hjw6ANS9rM3PsZcs8aaKgiauE.ttf",weight:400,isVariable:!1},{displayName:"Playwrite RO",filename:"gokpH6fuA1J7QPJ04HFTGSWHmNZEq6TTFw",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritero/v10/gokpH6fuA1J7QPJ04HFTGSWHmNZEq6TTFw.ttf",weight:400,isVariable:!0},{displayName:"Geostar",filename:"sykz-yx4n701VLOftSq9-trEvlQ",category:"display",url:"https://fonts.gstatic.com/s/geostar/v27/sykz-yx4n701VLOftSq9-trEvlQ.ttf",weight:400,isVariable:!1},{displayName:"Mingzat",filename:"0QIgMX5C-o-oWWyvBttkm_mv670",category:"sans-serif",url:"https://fonts.gstatic.com/s/mingzat/v11/0QIgMX5C-o-oWWyvBttkm_mv670.ttf",weight:400,isVariable:!1},{displayName:"Workbench",filename:"FeVSS05Gp6Et7FcfbPFQ3Z5nm29Gww",category:"monospace",url:"https://fonts.gstatic.com/s/workbench/v3/FeVSS05Gp6Et7FcfbPFQ3Z5nm29Gww.ttf",weight:400,isVariable:!1},{displayName:"Kolker Brush",filename:"iJWDBXWRZjfKWdvmzwvvog3-7KJ6x8qNUQ",category:"handwriting",url:"https://fonts.gstatic.com/s/kolkerbrush/v8/iJWDBXWRZjfKWdvmzwvvog3-7KJ6x8qNUQ.ttf",weight:400,isVariable:!1},{displayName:"Moulpali",filename:"H4ckBXKMl9HagUWymyY6wr-wg763",category:"sans-serif",url:"https://fonts.gstatic.com/s/moulpali/v33/H4ckBXKMl9HagUWymyY6wr-wg763.ttf",weight:400,isVariable:!1},{displayName:"Suravaram",filename:"_gP61R_usiY7SCym4xIAi261Qv9roQ",category:"serif",url:"https://fonts.gstatic.com/s/suravaram/v23/_gP61R_usiY7SCym4xIAi261Qv9roQ.ttf",weight:400,isVariable:!1},{displayName:"Alumni Sans SC",filename:"Y4GSYaxzVjArrOeNFYbCvkZ8C3UD6pzxRwYB",category:"sans-serif",url:"https://fonts.gstatic.com/s/alumnisanssc/v3/Y4GSYaxzVjArrOeNFYbCvkZ8C3UD6pzxRwYB.ttf",weight:400,isVariable:!0},{displayName:"Ruge Boogie",filename:"JIA3UVFwbHRF_GIWSMhKNROiPzUveSxy",category:"handwriting",url:"https://fonts.gstatic.com/s/rugeboogie/v30/JIA3UVFwbHRF_GIWSMhKNROiPzUveSxy.ttf",weight:400,isVariable:!1},{displayName:"Palette Mosaic",filename:"AMOIz4aBvWuBFe3TohdW6YZ9MFiy4dxL4jSr",category:"display",url:"https://fonts.gstatic.com/s/palettemosaic/v13/AMOIz4aBvWuBFe3TohdW6YZ9MFiy4dxL4jSr.ttf",weight:400,isVariable:!1},{displayName:"Sixtyfour Convergence",filename:"m8JMjepPf7mIglv5K__zM9srGA7wurbybZMFbehGW74OXw",category:"monospace",url:"https://fonts.gstatic.com/s/sixtyfourconvergence/v5/m8JMjepPf7mIglv5K__zM9srGA7wurbybZMFbehGW74OXw.ttf",weight:400,isVariable:!1},{displayName:"Estonia",filename:"7Au_p_4ijSecA1yHCCL8zkwMIFg",category:"handwriting",url:"https://fonts.gstatic.com/s/estonia/v13/7Au_p_4ijSecA1yHCCL8zkwMIFg.ttf",weight:400,isVariable:!1},{displayName:"Zen Loop",filename:"h0GrssK16UsnJwHsEK9zqwzX5vOG",category:"display",url:"https://fonts.gstatic.com/s/zenloop/v11/h0GrssK16UsnJwHsEK9zqwzX5vOG.ttf",weight:400,isVariable:!1},{displayName:"Ole",filename:"dFazZf6Z-rd89fw69qJ_ew",category:"handwriting",url:"https://fonts.gstatic.com/s/ole/v3/dFazZf6Z-rd89fw69qJ_ew.ttf",weight:400,isVariable:!1},{displayName:"Rock 3D",filename:"yYLp0hrL0PCo651513SnwRnQyNI",category:"display",url:"https://fonts.gstatic.com/s/rock3d/v13/yYLp0hrL0PCo651513SnwRnQyNI.ttf",weight:400,isVariable:!1},{displayName:"M PLUS Code Latin",filename:"hv-MlyV-aXg7x7tULiNXXBA0Np4WMTUULmBGjSwZ",category:"sans-serif",url:"https://fonts.gstatic.com/s/mpluscodelatin/v16/hv-MlyV-aXg7x7tULiNXXBA0Np4WMTUULmBGjSwZ.ttf",weight:400,isVariable:!0},{displayName:"Winky Rough",filename:"t5tkIRwIMoSXA0WSPBjQxIbo5z3nq4OH",category:"sans-serif",url:"https://fonts.gstatic.com/s/winkyrough/v4/t5tkIRwIMoSXA0WSPBjQxIbo5z3nq4OH.ttf",weight:400,isVariable:!0},{displayName:"Edu QLD Beginner",filename:"AMOKz5iUuHLEMNXyohhc_Y56PR3A69hp5ySriqg",category:"handwriting",url:"https://fonts.gstatic.com/s/eduqldbeginner/v5/AMOKz5iUuHLEMNXyohhc_Y56PR3A69hp5ySriqg.ttf",weight:400,isVariable:!0},{displayName:"Petemoss",filename:"A2BZn5tA2xgtGWHZgxkesKb9UouQ",category:"handwriting",url:"https://fonts.gstatic.com/s/petemoss/v9/A2BZn5tA2xgtGWHZgxkesKb9UouQ.ttf",weight:400,isVariable:!1},{displayName:"Shizuru",filename:"O4ZSFGfvnxFiCA3i30IJlgUTj2A",category:"display",url:"https://fonts.gstatic.com/s/shizuru/v13/O4ZSFGfvnxFiCA3i30IJlgUTj2A.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Hanunoo",filename:"f0Xs0fCv8dxkDWlZSoXOj6CphMloFsEsEpgL_ix2",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanshanunoo/v22/f0Xs0fCv8dxkDWlZSoXOj6CphMloFsEsEpgL_ix2.ttf",weight:400,isVariable:!1},{displayName:"Lilex",filename:"DPEiYwmezwMATDTpLjoJd-Xa",category:"monospace",url:"https://fonts.gstatic.com/s/lilex/v1/DPEiYwmezwMATDTpLjoJd-Xa.ttf",weight:400,isVariable:!0},{displayName:"Cherish",filename:"ll88K2mXUyqsDsTN5iDCI6IJjg8",category:"handwriting",url:"https://fonts.gstatic.com/s/cherish/v9/ll88K2mXUyqsDsTN5iDCI6IJjg8.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Ethiopic",filename:"V8mZoR7-XjwJ8_Au3Ti5tXj5Rd83frpWNqU_FjYhCmo",category:"serif",url:"https://fonts.gstatic.com/s/notoserifethiopic/v32/V8mZoR7-XjwJ8_Au3Ti5tXj5Rd83frpWNqU_FjYhCmo.ttf",weight:400,isVariable:!0},{displayName:"Slackside One",filename:"EJRQQgMrXdcGsiBuvnRxodTwVy7VocNB6Iw",category:"handwriting",url:"https://fonts.gstatic.com/s/slacksideone/v14/EJRQQgMrXdcGsiBuvnRxodTwVy7VocNB6Iw.ttf",weight:400,isVariable:!1},{displayName:"Playwrite NL",filename:"k3kXo84SPe9dzQ1UGbvoZQ3hKYiJ-Q7m8w",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritenl/v10/k3kXo84SPe9dzQ1UGbvoZQ3hKYiJ-Q7m8w.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Palmyrene",filename:"ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCPnK5ZpdNtcA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanspalmyrene/v17/ZgNPjOdKPa7CHqq0h37c_ASCWvH93SFCPnK5ZpdNtcA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Caucasian Albanian",filename:"nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXrYDmoVmRSZo",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanscaucasianalbanian/v19/nKKA-HM_FYFRJvXzVXaANsU0VzsAc46QGOkWytlTs-TXrYDmoVmRSZo.ttf",weight:400,isVariable:!1},{displayName:"BBH Bogle",filename:"GFDoWA58rVDJf-fOV9ALq5hcOA0hUA",category:"sans-serif",url:"https://fonts.gstatic.com/s/bbhbogle/v1/GFDoWA58rVDJf-fOV9ALq5hcOA0hUA.ttf",weight:400,isVariable:!1},{displayName:"LXGW Marker Gothic",filename:"Gg8oN4AaXyDVTi_NlS1-xCtMQxY3lToBjuw_cZe26Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/lxgwmarkergothic/v1/Gg8oN4AaXyDVTi_NlS1-xCtMQxY3lToBjuw_cZe26Q.ttf",weight:400,isVariable:!1},{displayName:"Cossette Titre",filename:"11hYGpvKz1nGbxMXUWz9OdPzuiEZrPeE8cA2",category:"sans-serif",url:"https://fonts.gstatic.com/s/cossettetitre/v3/11hYGpvKz1nGbxMXUWz9OdPzuiEZrPeE8cA2.ttf",weight:400,isVariable:!1},{displayName:"Grandiflora One",filename:"0ybmGD0g27bCk_5MGWZcKWhxwnUU_R3y8DOWGA",category:"serif",url:"https://fonts.gstatic.com/s/grandifloraone/v3/0ybmGD0g27bCk_5MGWZcKWhxwnUU_R3y8DOWGA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Old Hungarian",filename:"E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgRfjbg5nCYXt",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansoldhungarian/v19/E213_cD6hP3GwCJPEUssHEM0KqLaHJXg2PiIgRfjbg5nCYXt.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IT Moderna",filename:"mFTuWaYCwKPK5cx6W8jy2kwDnSUe9q45vR4pxoPdAYRC",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteitmoderna/v11/mFTuWaYCwKPK5cx6W8jy2kwDnSUe9q45vR4pxoPdAYRC.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Glagolitic",filename:"1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4ERK4Amu7nM1",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansglagolitic/v19/1q2ZY4-BBFBst88SU_tOj4J-4yuNF_HI4ERK4Amu7nM1.ttf",weight:400,isVariable:!1},{displayName:"Mozilla Text",filename:"SZc-3FrnJ7S7WZIff2mJ7Tbz6BlLiCcUGA",category:"sans-serif",url:"https://fonts.gstatic.com/s/mozillatext/v1/SZc-3FrnJ7S7WZIff2mJ7Tbz6BlLiCcUGA.ttf",weight:400,isVariable:!0},{displayName:"Playwrite CA",filename:"z7NTdR_4cT0NOrEAIElil930TNeRpoq5Zg",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteca/v11/z7NTdR_4cT0NOrEAIElil930TNeRpoq5Zg.ttf",weight:400,isVariable:!0},{displayName:"Vibes",filename:"QdVYSTsmIB6tmbd3HpbsuBlh",category:"display",url:"https://fonts.gstatic.com/s/vibes/v16/QdVYSTsmIB6tmbd3HpbsuBlh.ttf",weight:400,isVariable:!1},{displayName:"BBH Hegarty",filename:"yYLt0hbb_dvjg8talgb5vDHR-tdfcIT_",category:"sans-serif",url:"https://fonts.gstatic.com/s/bbhhegarty/v1/yYLt0hbb_dvjg8talgb5vDHR-tdfcIT_.ttf",weight:400,isVariable:!1},{displayName:"Kalnia Glaze",filename:"wlp2gwHCBUNjrGrfu-hwowNvaAJSA_JN3Q",category:"display",url:"https://fonts.gstatic.com/s/kalniaglaze/v5/wlp2gwHCBUNjrGrfu-hwowNvaAJSA_JN3Q.ttf",weight:400,isVariable:!0},{displayName:"Sekuya",filename:"fdN_9suEu39Dg3wk2ipfnF8U4A",category:"display",url:"https://fonts.gstatic.com/s/sekuya/v1/fdN_9suEu39Dg3wk2ipfnF8U4A.ttf",weight:400,isVariable:!1},{displayName:"Playwrite BE VLG",filename:"GFDxWBdug3mQSvrAT9AL6fd4ZkB-cWAhatVBaGM",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritebevlg/v6/GFDxWBdug3mQSvrAT9AL6fd4ZkB-cWAhatVBaGM.ttf",weight:400,isVariable:!0},{displayName:"Phetsarath",filename:"N0bQ2SpTP-plK0uWayAYAd79nd_QeZA",category:"sans-serif",url:"https://fonts.gstatic.com/s/phetsarath/v3/N0bQ2SpTP-plK0uWayAYAd79nd_QeZA.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Myanmar",filename:"VuJsdM7F2Yv76aBKKs-bHMQfAHUw3jn1pBrocdDqRA",category:"serif",url:"https://fonts.gstatic.com/s/notoserifmyanmar/v14/VuJsdM7F2Yv76aBKKs-bHMQfAHUw3jn1pBrocdDqRA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Nag Mundari",filename:"3qTzoi2hnSyU8TNFIdhZTyod3g5lBnKlQFksmg2vd02J1Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansnagmundari/v4/3qTzoi2hnSyU8TNFIdhZTyod3g5lBnKlQFksmg2vd02J1Q.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Yi",filename:"sJoD3LFXjsSdcnzn071rO3apxVDJNVgSNg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansyi/v20/sJoD3LFXjsSdcnzn071rO3apxVDJNVgSNg.ttf",weight:400,isVariable:!1},{displayName:"Parastoo",filename:"-F6yfj90ITQ4d9euQUrQjCVAxzAL",category:"serif",url:"https://fonts.gstatic.com/s/parastoo/v3/-F6yfj90ITQ4d9euQUrQjCVAxzAL.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Tangsa",filename:"z7NPdQPmcigbbZAIOl9igP26K470jouLY_WiBuM",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstangsa/v9/z7NPdQPmcigbbZAIOl9igP26K470jouLY_WiBuM.ttf",weight:400,isVariable:!0},{displayName:"Rubik Broken Fax",filename:"NGSvv4rXG042O-GzH9sg1cUgl8w8YW-WdmGi300",category:"display",url:"https://fonts.gstatic.com/s/rubikbrokenfax/v1/NGSvv4rXG042O-GzH9sg1cUgl8w8YW-WdmGi300.ttf",weight:400,isVariable:!1},{displayName:"Hanalei",filename:"E21n_dD8iufIjBRHXzgmVydREus",category:"display",url:"https://fonts.gstatic.com/s/hanalei/v24/E21n_dD8iufIjBRHXzgmVydREus.ttf",weight:400,isVariable:!1},{displayName:"Playwrite ZA",filename:"Noa16Uzhw5CTOhXKt5-vwvhxPAR9mhHobg",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteza/v11/Noa16Uzhw5CTOhXKt5-vwvhxPAR9mhHobg.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Toto",filename:"Ktk1ALSMeZjqPnXk1rCkHYHNtwv3F6mZVY9Y5w",category:"serif",url:"https://fonts.gstatic.com/s/notoseriftoto/v7/Ktk1ALSMeZjqPnXk1rCkHYHNtwv3F6mZVY9Y5w.ttf",weight:400,isVariable:!0},{displayName:"Tapestry",filename:"SlGTmQecrosEYXhaGBIkqnB6aSQU",category:"handwriting",url:"https://fonts.gstatic.com/s/tapestry/v6/SlGTmQecrosEYXhaGBIkqnB6aSQU.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Multani",filename:"9Bty3ClF38_RfOpe1gCaZ8p30BOFO1A0pfCs5Kos",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmultani/v21/9Bty3ClF38_RfOpe1gCaZ8p30BOFO1A0pfCs5Kos.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Avestan",filename:"bWti7ejKfBziStx7lIzKOLQZKhIJkyu9SASLji8U",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansavestan/v22/bWti7ejKfBziStx7lIzKOLQZKhIJkyu9SASLji8U.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Syriac Eastern",filename:"Noah6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxSkTa8Ck93gbw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssyriaceastern/v3/Noah6Vj_wIWFbTTCrYmvy8AjVU8aslWRHHvRYxSkTa8Ck93gbw.ttf",weight:400,isVariable:!0},{displayName:"SUSE Mono",filename:"y83ZW4wN6yi9x2mTxJIsJBvFEH7yDQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/susemono/v1/y83ZW4wN6yi9x2mTxJIsJBvFEH7yDQ.ttf",weight:400,isVariable:!0},{displayName:"Warnes",filename:"pONn1hc0GsW6sW5OpiC2o6Lkqg",category:"display",url:"https://fonts.gstatic.com/s/warnes/v29/pONn1hc0GsW6sW5OpiC2o6Lkqg.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Yezidi",filename:"XLY8IYr5bJNDGYxLBibeHZAn3B5KJFlsYMYHGGeT",category:"serif",url:"https://fonts.gstatic.com/s/notoserifyezidi/v23/XLY8IYr5bJNDGYxLBibeHZAn3B5KJFlsYMYHGGeT.ttf",weight:400,isVariable:!0},{displayName:"Rubik Doodle Triangles",filename:"esDA301BLOmMKxKspb3g-domRuLPeaSn2bTzdLi_slZxgWE",category:"display",url:"https://fonts.gstatic.com/s/rubikdoodletriangles/v1/esDA301BLOmMKxKspb3g-domRuLPeaSn2bTzdLi_slZxgWE.ttf",weight:400,isVariable:!1},{displayName:"Playwrite MX Guides",filename:"k3kMo9ESPe9dzQ1UGbvoZhnhbtfklWqN0qywHx-HpY0",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritemxguides/v1/k3kMo9ESPe9dzQ1UGbvoZhnhbtfklWqN0qywHx-HpY0.ttf",weight:400,isVariable:!1},{displayName:"Moo Lah Lah",filename:"dg4h_p_opKZOA0w1AYcm55wtYQYugjW4",category:"display",url:"https://fonts.gstatic.com/s/moolahlah/v8/dg4h_p_opKZOA0w1AYcm55wtYQYugjW4.ttf",weight:400,isVariable:!1},{displayName:"Moirai One",filename:"2sDbZGFUgJLJmby6xgNGT0WWB7UcfCg",category:"display",url:"https://fonts.gstatic.com/s/moiraione/v1/2sDbZGFUgJLJmby6xgNGT0WWB7UcfCg.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Balinese",filename:"NaPFcYvSBuhTirw6IaFn6UrRDaqje-lzZpaduWMmxA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansbalinese/v27/NaPFcYvSBuhTirw6IaFn6UrRDaqje-lzZpaduWMmxA.ttf",weight:400,isVariable:!0},{displayName:"Syne Tactile",filename:"11hGGpna2UTQKjMCVzjAPMKh3ysdjvKU8Q",category:"display",url:"https://fonts.gstatic.com/s/synetactile/v16/11hGGpna2UTQKjMCVzjAPMKh3ysdjvKU8Q.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Old Italic",filename:"TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tWlRdRhtCC4d",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansolditalic/v18/TuGOUUFzXI5FBtUq5a8bh68BJxxEVam7tWlRdRhtCC4d.ttf",weight:400,isVariable:!1},{displayName:"WDXL Lubrifont TC",filename:"nKKN-H4mPq1yJurnWXfJE8svQHonWc_-EqxyqaA8",category:"sans-serif",url:"https://fonts.gstatic.com/s/wdxllubrifonttc/v4/nKKN-H4mPq1yJurnWXfJE8svQHonWc_-EqxyqaA8.ttf",weight:400,isVariable:!1},{displayName:"Edu AU VIC WA NT Arrows",filename:"z7NEdQTteSlUDJZJAmUB9MuVbLPBjsrTFZLUbcLsaJmY0RIQ",category:"handwriting",url:"https://fonts.gstatic.com/s/eduauvicwantarrows/v4/z7NEdQTteSlUDJZJAmUB9MuVbLPBjsrTFZLUbcLsaJmY0RIQ.ttf",weight:400,isVariable:!0},{displayName:"Rubik Marker Hatch",filename:"QldTNSFQsh0B_bFXXWv6LAt-jswapJHQDL4iw0H6zw",category:"display",url:"https://fonts.gstatic.com/s/rubikmarkerhatch/v1/QldTNSFQsh0B_bFXXWv6LAt-jswapJHQDL4iw0H6zw.ttf",weight:400,isVariable:!1},{displayName:"Yuji Hentaigana Akari",filename:"cY9bfiyVT0VB6QuhWKOrpr6z58lnb_zYFnLIRTzODYALaA",category:"handwriting",url:"https://fonts.gstatic.com/s/yujihentaiganaakari/v14/cY9bfiyVT0VB6QuhWKOrpr6z58lnb_zYFnLIRTzODYALaA.ttf",weight:400,isVariable:!1},{displayName:"Puppies Play",filename:"wlp2gwHZEV99rG6M3NR9uB9vaAJSA_JN3Q",category:"handwriting",url:"https://fonts.gstatic.com/s/puppiesplay/v11/wlp2gwHZEV99rG6M3NR9uB9vaAJSA_JN3Q.ttf",weight:400,isVariable:!1},{displayName:"Libertinus Math",filename:"Gw6iwc3770TVMoHVurPejWtfenRLv_KJt3R-2Q",category:"display",url:"https://fonts.gstatic.com/s/libertinusmath/v1/Gw6iwc3770TVMoHVurPejWtfenRLv_KJt3R-2Q.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Dogra",filename:"MQpP-XquKMC7ROPP3QOOlm7xPu3fGy63IbPzkns",category:"serif",url:"https://fonts.gstatic.com/s/notoserifdogra/v24/MQpP-XquKMC7ROPP3QOOlm7xPu3fGy63IbPzkns.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Cherokee",filename:"KFO6Cm6Yu8uF-29fiz9vQF9YWK6Z8O1ue1GwCVgHYg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanscherokee/v25/KFO6Cm6Yu8uF-29fiz9vQF9YWK6Z8O1ue1GwCVgHYg.ttf",weight:400,isVariable:!0},{displayName:"Playwrite DE LA",filename:"oY1G8e3fprboJ2HN4ogXTpFVJ8Q5Ln2ZCGKRvA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedela/v11/oY1G8e3fprboJ2HN4ogXTpFVJ8Q5Ln2ZCGKRvA.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Syriac",filename:"Ktk2AKuMeZjqPnXgyqribqzQqgW0N4O3WYZB_sU",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssyriac/v18/Ktk2AKuMeZjqPnXgyqribqzQqgW0N4O3WYZB_sU.ttf",weight:400,isVariable:!0},{displayName:"Chiron Sung HK",filename:"nuFgD_XLTZPpXIpS3-3dhGzHTTKuNz_whHE_",category:"serif",url:"https://fonts.gstatic.com/s/chironsunghk/v1/nuFgD_XLTZPpXIpS3-3dhGzHTTKuNz_whHE_.ttf",weight:400,isVariable:!0},{displayName:"Playwrite MX",filename:"6xKodSNbKtCe7KfhXg7RYSwoSMj-N4_4kQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritemx/v13/6xKodSNbKtCe7KfhXg7RYSwoSMj-N4_4kQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Shavian",filename:"CHy5V_HZE0jxJBQlqAeCKjJvQBNF4EFQSplv2Cwg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansshavian/v18/CHy5V_HZE0jxJBQlqAeCKjJvQBNF4EFQSplv2Cwg.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Osage",filename:"oPWX_kB6kP4jCuhpgEGmw4mtAVtXRlaSxkrMCQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansosage/v19/oPWX_kB6kP4jCuhpgEGmw4mtAVtXRlaSxkrMCQ.ttf",weight:400,isVariable:!1},{displayName:"Epunda Slab",filename:"46krlbHxTynXpZplPiOFHWVA_VVRGIpI",category:"serif",url:"https://fonts.gstatic.com/s/epundaslab/v2/46krlbHxTynXpZplPiOFHWVA_VVRGIpI.ttf",weight:400,isVariable:!0},{displayName:"Amarna",filename:"MCoSzAj-18jIHCAERYo80prgBg",category:"sans-serif",url:"https://fonts.gstatic.com/s/amarna/v1/MCoSzAj-18jIHCAERYo80prgBg.ttf",weight:400,isVariable:!0},{displayName:"Sirivennela",filename:"kmK5Zq0oHhbAYX-X6lgptg7YiOFDtqtf",category:"sans-serif",url:"https://fonts.gstatic.com/s/sirivennela/v2/kmK5Zq0oHhbAYX-X6lgptg7YiOFDtqtf.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Linear A",filename:"oPWS_l16kP4jCuhpgEGmwJOiA18FZj22zmHQAGQicw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanslineara/v19/oPWS_l16kP4jCuhpgEGmwJOiA18FZj22zmHQAGQicw.ttf",weight:400,isVariable:!1},{displayName:"Libertinus Serif Display",filename:"0FlHVOmbklub_P32Hm53RVREi5BsXWudOF_Gpgcrg81gHhVOxQ",category:"display",url:"https://fonts.gstatic.com/s/libertinusserifdisplay/v2/0FlHVOmbklub_P32Hm53RVREi5BsXWudOF_Gpgcrg81gHhVOxQ.ttf",weight:400,isVariable:!1},{displayName:"Ingrid Darling",filename:"LDIrapaJNxUtSuFdw-9yf4rCPsLOub458jGL",category:"handwriting",url:"https://fonts.gstatic.com/s/ingriddarling/v7/LDIrapaJNxUtSuFdw-9yf4rCPsLOub458jGL.ttf",weight:400,isVariable:!1},{displayName:"Noto Traditional Nushu",filename:"SZco3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67J011GNh6SYA",category:"sans-serif",url:"https://fonts.gstatic.com/s/nototraditionalnushu/v23/SZco3EDkJ7q9FaoMPlmF4Su8hlIjoGh5aj67J011GNh6SYA.ttf",weight:400,isVariable:!0},{displayName:"Rubik Pixels",filename:"SlGXmQOaupkIeSx4CEpB7AdSaBYRagrQrA",category:"display",url:"https://fonts.gstatic.com/s/rubikpixels/v3/SlGXmQOaupkIeSx4CEpB7AdSaBYRagrQrA.ttf",weight:400,isVariable:!1},{displayName:"Playwrite BE WAL",filename:"DtV4Jwq5QbIzyrA6DHdJ2BksuUmahwBmkui5HNg",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritebewal/v7/DtV4Jwq5QbIzyrA6DHdJ2BksuUmahwBmkui5HNg.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Indic Siyaq Numbers",filename:"6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKx2WPOpVd5Iu",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansindicsiyaqnumbers/v17/6xK5dTJFKcWIu4bpRBjRZRpsIYHabOeZ8UZLubTzpXNHKx2WPOpVd5Iu.ttf",weight:400,isVariable:!1},{displayName:"Rubik Maps",filename:"Gw6_wcjl80TZK9XxtbbejSYUChRqp9k",category:"display",url:"https://fonts.gstatic.com/s/rubikmaps/v1/Gw6_wcjl80TZK9XxtbbejSYUChRqp9k.ttf",weight:400,isVariable:!1},{displayName:"Coral Pixels",filename:"qWctB66zpZ3zAtrlR8Mb1LyyeBb_ujA4ug",category:"display",url:"https://fonts.gstatic.com/s/coralpixels/v1/qWctB66zpZ3zAtrlR8Mb1LyyeBb_ujA4ug.ttf",weight:400,isVariable:!1},{displayName:"Linefont",filename:"dg4m_pzpoqcLKUIzVetHpbglShon",category:"display",url:"https://fonts.gstatic.com/s/linefont/v10/dg4m_pzpoqcLKUIzVetHpbglShon.ttf",weight:400,isVariable:!0},{displayName:"Intel One Mono",filename:"P5sbzZuLY8Lb_G1RikFkwPjBvvk3D4tEBiLF",category:"monospace",url:"https://fonts.gstatic.com/s/intelonemono/v2/P5sbzZuLY8Lb_G1RikFkwPjBvvk3D4tEBiLF.ttf",weight:400,isVariable:!0},{displayName:"Cause",filename:"or3sQ6760-mf00NUZpD_B6g8",category:"handwriting",url:"https://fonts.gstatic.com/s/cause/v1/or3sQ6760-mf00NUZpD_B6g8.ttf",weight:400,isVariable:!0},{displayName:"Edu SA Hand",filename:"mem6YaOmw37C-ogAJfd7Np0ef8xkA76a",category:"handwriting",url:"https://fonts.gstatic.com/s/edusahand/v3/mem6YaOmw37C-ogAJfd7Np0ef8xkA76a.ttf",weight:400,isVariable:!0},{displayName:"Playwrite FR Moderne",filename:"3y9-6awucz3w5m4FFTzKolJRXhUk_u1yWs-tNtKENeNp",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritefrmoderne/v11/3y9-6awucz3w5m4FFTzKolJRXhUk_u1yWs-tNtKENeNp.ttf",weight:400,isVariable:!0},{displayName:"Kedebideri",filename:"t5tlIR0UPo6ZGAykNh_ejKbCyTHuspo",category:"sans-serif",url:"https://fonts.gstatic.com/s/kedebideri/v2/t5tlIR0UPo6ZGAykNh_ejKbCyTHuspo.ttf",weight:400,isVariable:!1},{displayName:"Playpen Sans Thai",filename:"VdGEAYIdG5kSgHwmKT9wYu2rs0cBsvWGzr8C7vav",category:"handwriting",url:"https://fonts.gstatic.com/s/playpensansthai/v8/VdGEAYIdG5kSgHwmKT9wYu2rs0cBsvWGzr8C7vav.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Oriya",filename:"MjQdmj56u-r69izk_LDqWN7w0cYB0OBNBn8Kwb0",category:"serif",url:"https://fonts.gstatic.com/s/notoseriforiya/v6/MjQdmj56u-r69izk_LDqWN7w0cYB0OBNBn8Kwb0.ttf",weight:400,isVariable:!0},{displayName:"Tuffy",filename:"1q2IY56bHkJl7rxzF4xmyfYe",category:"sans-serif",url:"https://fonts.gstatic.com/s/tuffy/v1/1q2IY56bHkJl7rxzF4xmyfYe.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Adlam Unjoined",filename:"P5sRzY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcAaZ41lBRPOw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansadlamunjoined/v28/P5sRzY2MYsLRsB5_ildkzPPDsLQXcOEmaFOqOGcAaZ41lBRPOw.ttf",weight:400,isVariable:!0},{displayName:"UoqMunThenKhung",filename:"Y4GTYa1nVTQLt-D5LoLChg5aJjIjwLL9Th8YYA",category:"serif",url:"https://fonts.gstatic.com/s/uoqmunthenkhung/v1/Y4GTYa1nVTQLt-D5LoLChg5aJjIjwLL9Th8YYA.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif NP Hmong",filename:"pON61gItFMO79E4L1GPUi-2sixKHZyFj7peYDHDLnAo",category:"serif",url:"https://fonts.gstatic.com/s/notoserifnphmong/v5/pON61gItFMO79E4L1GPUi-2sixKHZyFj7peYDHDLnAo.ttf",weight:400,isVariable:!0},{displayName:"Playpen Sans Hebrew",filename:"lJwb-okuj29wT-AN6RvLx8QqjkKhL7eAlInffHZXQf0",category:"handwriting",url:"https://fonts.gstatic.com/s/playpensanshebrew/v8/lJwb-okuj29wT-AN6RvLx8QqjkKhL7eAlInffHZXQf0.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Lisu",filename:"uk-6EGO3o6EruUbnwovcYhz6kgRw3IpD7ZRl",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanslisu/v27/uk-6EGO3o6EruUbnwovcYhz6kgRw3IpD7ZRl.ttf",weight:400,isVariable:!0},{displayName:"Playwrite AR",filename:"VEM2RohisJz5pTCzruCNjWbFrNGOsEkJZA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritear/v6/VEM2RohisJz5pTCzruCNjWbFrNGOsEkJZA.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Todhri",filename:"dFalZeyY-aYz1YVbjMoBWml1nBz7N3ByX6n0fnNk",category:"serif",url:"https://fonts.gstatic.com/s/notoseriftodhri/v3/dFalZeyY-aYz1YVbjMoBWml1nBz7N3ByX6n0fnNk.ttf",weight:400,isVariable:!1},{displayName:"Playwrite PT",filename:"6NUR8FidKwOcfRjj8ukv5Lgkyf9Fdty2ew",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritept/v10/6NUR8FidKwOcfRjj8ukv5Lgkyf9Fdty2ew.ttf",weight:400,isVariable:!0},{displayName:"Gajraj One",filename:"1cX2aUDCDpXsuWVb1jIjr1GqhcitzeM",category:"display",url:"https://fonts.gstatic.com/s/gajrajone/v7/1cX2aUDCDpXsuWVb1jIjr1GqhcitzeM.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Old North Arabian",filename:"esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBQmUo_xw4ABw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansoldnortharabian/v17/esDF30BdNv-KYGGJpKGk2tNiMt7Jar6olZDyNdr81zBQmUo_xw4ABw.ttf",weight:400,isVariable:!1},{displayName:"Rubik Maze",filename:"xMQRuF9ZVa2ftiJEavXSAX7inS-bxV4",category:"display",url:"https://fonts.gstatic.com/s/rubikmaze/v2/xMQRuF9ZVa2ftiJEavXSAX7inS-bxV4.ttf",weight:400,isVariable:!1},{displayName:"Shafarik",filename:"RWmLoKaF7PojpZXlW52sbsHKqLkD",category:"display",url:"https://fonts.gstatic.com/s/shafarik/v3/RWmLoKaF7PojpZXlW52sbsHKqLkD.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Cham",filename:"pe03MIySN5pO62Z5YkFyQb_bbv5qWVAgVol-",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanscham/v33/pe03MIySN5pO62Z5YkFyQb_bbv5qWVAgVol-.ttf",weight:400,isVariable:!0},{displayName:"Bitcount Prop Single",filename:"-W_hXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhyQegDsC0Np2",category:"display",url:"https://fonts.gstatic.com/s/bitcountpropsingle/v3/-W_hXIv9SyXT0xz0E9pIHCxbW8ZMGEVdhyQegDsC0Np2.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Khitan Small Script",filename:"jizzRFVKsm4Bt9PrbSzC4KLlQUF5lRJg5j-l5PvyhfTdd4TsZ8lb39iddA",category:"serif",url:"https://fonts.gstatic.com/s/notoserifkhitansmallscript/v4/jizzRFVKsm4Bt9PrbSzC4KLlQUF5lRJg5j-l5PvyhfTdd4TsZ8lb39iddA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Takri",filename:"TuGJUVpzXI5FBtUq5a8bnKIOdTwQNO_W3khJXg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstakri/v25/TuGJUVpzXI5FBtUq5a8bnKIOdTwQNO_W3khJXg.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Egyptian Hieroglyphs",filename:"vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYindSVK8xRg7iw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansegyptianhieroglyphs/v30/vEF42-tODB8RrNDvZSUmRhcQHzx1s7y_F9-j3qSzEcbEYindSVK8xRg7iw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Medefaidrin",filename:"WwkAxOq6Dk-wranENynkfeVsNbRZtbOIdLbvcDV8OQsNbw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmedefaidrin/v29/WwkAxOq6Dk-wranENynkfeVsNbRZtbOIdLbvcDV8OQsNbw.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Bamum",filename:"uk-7EGK3o6EruUbnwovcbBTkkklQ9qRP5I18Mg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansbamum/v35/uk-7EGK3o6EruUbnwovcbBTkkklQ9qRP5I18Mg.ttf",weight:400,isVariable:!0},{displayName:"Playwrite ES",filename:"kJE0BuMK4Q07lDHc2Xp9uokSrMxzBZ2lDA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritees/v11/kJE0BuMK4Q07lDHc2Xp9uokSrMxzBZ2lDA.ttf",weight:400,isVariable:!0},{displayName:"Namdhinggo",filename:"uk-mEGe3rbgg8Xzoy5-TDnWj4yxx7o8",category:"serif",url:"https://fonts.gstatic.com/s/namdhinggo/v2/uk-mEGe3rbgg8Xzoy5-TDnWj4yxx7o8.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Tifinagh",filename:"I_uzMoCduATTei9eI8dawkHIwvmhCvbn6rnEcXfs4Q",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstifinagh/v21/I_uzMoCduATTei9eI8dawkHIwvmhCvbn6rnEcXfs4Q.ttf",weight:400,isVariable:!1},{displayName:"Blaka Hollow",filename:"MCoUzAL91sjRE2FsKsxUtezYB9oFyW_-oA",category:"display",url:"https://fonts.gstatic.com/s/blakahollow/v8/MCoUzAL91sjRE2FsKsxUtezYB9oFyW_-oA.ttf",weight:400,isVariable:!1},{displayName:"Playwrite NZ",filename:"d6lPkaOxRsyr_zZDmUYvh2TM1_JgjmRpOA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritenz/v11/d6lPkaOxRsyr_zZDmUYvh2TM1_JgjmRpOA.ttf",weight:400,isVariable:!0},{displayName:"Bytesized",filename:"goksH6L8FkdnROln8XBTS0CjkP1Yog",category:"sans-serif",url:"https://fonts.gstatic.com/s/bytesized/v1/goksH6L8FkdnROln8XBTS0CjkP1Yog.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Old Uyghur",filename:"v6-KGZbLJFKIhClqUYqXDiGnrVoFRCW6JdwnKumeF2yVgA",category:"serif",url:"https://fonts.gstatic.com/s/notoserifolduyghur/v4/v6-KGZbLJFKIhClqUYqXDiGnrVoFRCW6JdwnKumeF2yVgA.ttf",weight:400,isVariable:!1},{displayName:"Playwrite GB J",filename:"k3kJo8wSPe9dzQ1UGbvobAPhY4KN2wv287Sb",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritegbj/v11/k3kJo8wSPe9dzQ1UGbvobAPhY4KN2wv287Sb.ttf",weight:400,isVariable:!0},{displayName:"Blaka Ink",filename:"AlZy_zVVtpj22Znag2chdXf4XB0Tow",category:"display",url:"https://fonts.gstatic.com/s/blakaink/v10/AlZy_zVVtpj22Znag2chdXf4XB0Tow.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DK Uloopet",filename:"bWtn7e3Ufwn0Hf1zjprKPYlcDAoHknvYFiCDpTMddp8a",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedkuloopet/v6/bWtn7e3Ufwn0Hf1zjprKPYlcDAoHknvYFiCDpTMddp8a.ttf",weight:400,isVariable:!0},{displayName:"Lisu Bosa",filename:"3XFoErkv240fsdmJRJQvl0viTf3E3Q",category:"serif",url:"https://fonts.gstatic.com/s/lisubosa/v2/3XFoErkv240fsdmJRJQvl0viTf3E3Q.ttf",weight:400,isVariable:!1},{displayName:"Jaini",filename:"fC1vPYJMbGHQzEmOK-ZSUHyt",category:"display",url:"https://fonts.gstatic.com/s/jaini/v1/fC1vPYJMbGHQzEmOK-ZSUHyt.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Inscriptional Pahlavi",filename:"ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCVtqVOAYK0QA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansinscriptionalpahlavi/v18/ll8UK3GaVDuxR-TEqFPIbsR79Xxz9WEKbwsjpz7VklYlC7FCVtqVOAYK0QA.ttf",weight:400,isVariable:!1},{displayName:"Exile",filename:"pxiKyp0xqNtbjBsYHpT2dkNE",category:"display",url:"https://fonts.gstatic.com/s/exile/v1/pxiKyp0xqNtbjBsYHpT2dkNE.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Newa",filename:"7r3fqXp6utEsO9pI4f8ok8sWg8n_qN4R5lNU",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansnewa/v17/7r3fqXp6utEsO9pI4f8ok8sWg8n_qN4R5lNU.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Gurmukhi",filename:"92zJtA9LNqsg7tCYlXdCV1VPnAEeDU0vNI0un_HLMEo",category:"serif",url:"https://fonts.gstatic.com/s/notoserifgurmukhi/v22/92zJtA9LNqsg7tCYlXdCV1VPnAEeDU0vNI0un_HLMEo.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Gunjala Gondi",filename:"bWto7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5hcVXYMTK4q1",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansgunjalagondi/v21/bWto7e7KfBziStx7lIzKPrcSMwcEnCv6DW7n5hcVXYMTK4q1.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Sogdian",filename:"taiQGn5iC4--qtsfi4Jp6eHPnfxQBo--Pm6KHidM",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssogdian/v17/taiQGn5iC4--qtsfi4Jp6eHPnfxQBo--Pm6KHidM.ttf",weight:400,isVariable:!1},{displayName:"Playpen Sans Deva",filename:"vm8sdQj0UUbMxObnsO17RZ7pPBuJgfd_GJMTlo_4",category:"handwriting",url:"https://fonts.gstatic.com/s/playpensansdeva/v4/vm8sdQj0UUbMxObnsO17RZ7pPBuJgfd_GJMTlo_4.ttf",weight:400,isVariable:!0},{displayName:"Savate",filename:"QdVXSTgjKAqpnvJXNLjgsQB4kg",category:"sans-serif",url:"https://fonts.gstatic.com/s/savate/v5/QdVXSTgjKAqpnvJXNLjgsQB4kg.ttf",weight:400,isVariable:!0},{displayName:"Playwrite CO",filename:"0FlTVP2Hl1iH-fv2BH4kJkgB-dMOdS7sSg",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteco/v13/0FlTVP2Hl1iH-fv2BH4kJkgB-dMOdS7sSg.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Cuneiform",filename:"bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWgb9JlRQueeQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanscuneiform/v18/bMrrmTWK7YY-MF22aHGGd7H8PhJtvBDWgb9JlRQueeQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Vithkuqi",filename:"jVyX7m77CXvQswd6WjYu9E1wN6cih2TIeTf0SZST2g",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansvithkuqi/v3/jVyX7m77CXvQswd6WjYu9E1wN6cih2TIeTf0SZST2g.ttf",weight:400,isVariable:!0},{displayName:"Playwrite VN",filename:"mtG94_hXJqPSu8nf5RBY5i0w2A6yHk9d8w",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritevn/v11/mtG94_hXJqPSu8nf5RBY5i0w2A6yHk9d8w.ttf",weight:400,isVariable:!0},{displayName:"Edu NSW ACT Hand Pre",filename:"kmKiZrI-ExGJWUmupHwGgw6Qw4svl-MsLjYwI8Gcw6Oi",category:"handwriting",url:"https://fonts.gstatic.com/s/edunswacthandpre/v3/kmKiZrI-ExGJWUmupHwGgw6Qw4svl-MsLjYwI8Gcw6Oi.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Ottoman Siyaq",filename:"fC1yPZ9IYnzRhTrrc4s8cSvYI0eozzaFOQ01qoHLJrgA00kAdA",category:"serif",url:"https://fonts.gstatic.com/s/notoserifottomansiyaq/v2/fC1yPZ9IYnzRhTrrc4s8cSvYI0eozzaFOQ01qoHLJrgA00kAdA.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Makasar",filename:"memjYbqtyH-NiZpFH_9zcvB_PqkfY9S7j4HTVSmevw",category:"serif",url:"https://fonts.gstatic.com/s/notoserifmakasar/v1/memjYbqtyH-NiZpFH_9zcvB_PqkfY9S7j4HTVSmevw.ttf",weight:400,isVariable:!1},{displayName:"Playwrite AU TAS",filename:"Gfte7u9QuxsdI_QuuctXue3Elxxmah3VesW0BfM",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteautas/v11/Gfte7u9QuxsdI_QuuctXue3Elxxmah3VesW0BfM.ttf",weight:400,isVariable:!0},{displayName:"Bitcount",filename:"ijwWs53kQsE1Y5J-lJd7m2dJXYP7",category:"display",url:"https://fonts.gstatic.com/s/bitcount/v3/ijwWs53kQsE1Y5J-lJd7m2dJXYP7.ttf",weight:400,isVariable:!0},{displayName:"Rubik Lines",filename:"_gP81R3vsjYzVW2Y6xFF-GSxYPp7oSNy",category:"display",url:"https://fonts.gstatic.com/s/rubiklines/v1/_gP81R3vsjYzVW2Y6xFF-GSxYPp7oSNy.ttf",weight:400,isVariable:!1},{displayName:"Noto Znamenny Musical Notation",filename:"CSRW4ylQnPyaDwAMK1U_AolTaJ4Lz41GcgaIZV9YO2rO88jvtpqqdoWa7g",category:"sans-serif",url:"https://fonts.gstatic.com/s/notoznamennymusicalnotation/v7/CSRW4ylQnPyaDwAMK1U_AolTaJ4Lz41GcgaIZV9YO2rO88jvtpqqdoWa7g.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Elbasan",filename:"-F6rfiZqLzI2JPCgQBnw400qp1trvHdlre4dFcFh",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanselbasan/v17/-F6rfiZqLzI2JPCgQBnw400qp1trvHdlre4dFcFh.ttf",weight:400,isVariable:!1},{displayName:"Narnoor",filename:"cIf9MaFWuVo-UTyPxCmrYGkHgIs",category:"sans-serif",url:"https://fonts.gstatic.com/s/narnoor/v10/cIf9MaFWuVo-UTyPxCmrYGkHgIs.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Grantha",filename:"qkBIXuEH5NzDDvc3fLDYxPk9-Wq3WLiqFENLR7fHGw",category:"serif",url:"https://fonts.gstatic.com/s/notoserifgrantha/v22/qkBIXuEH5NzDDvc3fLDYxPk9-Wq3WLiqFENLR7fHGw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Bhaiksuki",filename:"UcC63EosKniBH4iELXATsSBWdvUHXxhj8rLUdU4wh9U",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansbhaiksuki/v18/UcC63EosKniBH4iELXATsSBWdvUHXxhj8rLUdU4wh9U.ttf",weight:400,isVariable:!1},{displayName:"Big Shoulders Inline",filename:"bx6aNwSCkev-8u0YNXAF6gArLyznvspgMYrXvDo3SQY1",category:"display",url:"https://fonts.gstatic.com/s/bigshouldersinline/v4/bx6aNwSCkev-8u0YNXAF6gArLyznvspgMYrXvDo3SQY1.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Khojki",filename:"-nFnOHM29Oofr2wohFbTuPPKVWpmK_d709jy92k",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanskhojki/v20/-nFnOHM29Oofr2wohFbTuPPKVWpmK_d709jy92k.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Old Persian",filename:"wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_tqOlQfx9CjA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansoldpersian/v17/wEOjEAbNnc5caQTFG18FHrZr9Bp6-8CmIJ_tqOlQfx9CjA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Tai Le",filename:"vEFK2-VODB8RrNDvZSUmVxEATwR58tK1W77HtMo",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstaile/v18/vEFK2-VODB8RrNDvZSUmVxEATwR58tK1W77HtMo.ttf",weight:400,isVariable:!1},{displayName:"Playwrite CZ",filename:"8vIP7wYp22pt_BUChSHeVxx_M9f08h-8bA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritecz/v6/8vIP7wYp22pt_BUChSHeVxx_M9f08h-8bA.ttf",weight:400,isVariable:!0},{displayName:"Edu AU VIC WA NT Guides",filename:"TuGBUUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LDxlIzIU5RwD",category:"handwriting",url:"https://fonts.gstatic.com/s/eduauvicwantguides/v3/TuGBUUJ4V48KZ9Nr3ZV46JQkJxtkFIKnvy00LDxlIzIU5RwD.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Ol Chiki",filename:"N0bI2TJNOPt-eHmFZCdQbrL32r-4CvhpBBaAT48zZA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansolchiki/v31/N0bI2TJNOPt-eHmFZCdQbrL32r-4CvhpBBaAT48zZA.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Brahmi",filename:"vEFK2-VODB8RrNDvZSUmQQIIByV18tK1W77HtMo",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansbrahmi/v20/vEFK2-VODB8RrNDvZSUmQQIIByV18tK1W77HtMo.ttf",weight:400,isVariable:!1},{displayName:"Jacquard 12 Charted",filename:"i7dWIE97bzCOB9Q_Up6PQmYfKDPIb2HwT3StZ9jetKY",category:"display",url:"https://fonts.gstatic.com/s/jacquard12charted/v4/i7dWIE97bzCOB9Q_Up6PQmYfKDPIb2HwT3StZ9jetKY.ttf",weight:400,isVariable:!1},{displayName:"Playwrite NG Modern",filename:"ijwJs4b2R9Qve5V5lNJb_yRhEfSep5NbDimE2tKY2yY",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritengmodern/v11/ijwJs4b2R9Qve5V5lNJb_yRhEfSep5NbDimE2tKY2yY.ttf",weight:400,isVariable:!0},{displayName:"Playwrite AU VIC",filename:"bWtj7enUfwn0Hf1zjprKOJdcDy8r3QuXZgiClzY",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteauvic/v11/bWtj7enUfwn0Hf1zjprKOJdcDy8r3QuXZgiClzY.ttf",weight:400,isVariable:!0},{displayName:"Playwrite AT",filename:"Gw69wc7n6kfJN4fVoKON7HIeDjZvt9mVvg",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteat/v6/Gw69wc7n6kfJN4fVoKON7HIeDjZvt9mVvg.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans NKo Unjoined",filename:"MCoCzBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szJutjFqMvktM",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansnkounjoined/v4/MCoCzBjx1d3VUhJFK9MYlNCXJ6VvqwGPz3szJutjFqMvktM.ttf",weight:400,isVariable:!0},{displayName:"Jaini Purva",filename:"CHynV-vdHVXwbWcUswbUGHoOHH4sj3lR",category:"display",url:"https://fonts.gstatic.com/s/jainipurva/v1/CHynV-vdHVXwbWcUswbUGHoOHH4sj3lR.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Prop Single Ink",filename:"wXK4E2YTrpM-pUnBg3-sd4tavSRa27--66omsDmF7FUIszQijA",category:"display",url:"https://fonts.gstatic.com/s/bitcountpropsingleink/v4/wXK4E2YTrpM-pUnBg3-sd4tavSRa27--66omsDmF7FUIszQijA.ttf",weight:400,isVariable:!0},{displayName:"Edu QLD Hand",filename:"d6lPkaOkTtjy2QhuzWtup1rM1_JgjmRpOA",category:"handwriting",url:"https://fonts.gstatic.com/s/eduqldhand/v3/d6lPkaOkTtjy2QhuzWtup1rM1_JgjmRpOA.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Mahajani",filename:"-F6sfiVqLzI2JPCgQBnw60Agp0JrvD5Fh8ARHNh4zg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmahajani/v20/-F6sfiVqLzI2JPCgQBnw60Agp0JrvD5Fh8ARHNh4zg.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Pahawh Hmong",filename:"bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7krzc_c48aMpM",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanspahawhhmong/v19/bWtp7e_KfBziStx7lIzKKaMUOBEA3UPQDW7krzc_c48aMpM.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Miao",filename:"Dxxz8jmXMW75w3OmoDXVV4zyZUjgUYVslLhx",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmiao/v18/Dxxz8jmXMW75w3OmoDXVV4zyZUjgUYVslLhx.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Imperial Aramaic",filename:"a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrtdml3YfPNno",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansimperialaramaic/v18/a8IMNpjwKmHXpgXbMIsbTc_kvks91LlLetBr5itQrtdml3YfPNno.ttf",weight:400,isVariable:!1},{displayName:"Rubik Storm",filename:"eLGYP-_uPgO5Ag7ju9JaouL9T2Xh9NQk",category:"display",url:"https://fonts.gstatic.com/s/rubikstorm/v1/eLGYP-_uPgO5Ag7ju9JaouL9T2Xh9NQk.ttf",weight:400,isVariable:!1},{displayName:"Wavefont",filename:"L0x-DF00m0cP6hefyPqiZyxEimK3",category:"display",url:"https://fonts.gstatic.com/s/wavefont/v19/L0x-DF00m0cP6hefyPqiZyxEimK3.ttf",weight:400,isVariable:!0},{displayName:"Menbere",filename:"lJwH-p0zhmBrWvcG6UiArb8L3iY",category:"sans-serif",url:"https://fonts.gstatic.com/s/menbere/v1/lJwH-p0zhmBrWvcG6UiArb8L3iY.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Sundanese",filename:"FwZH7_84xUkosG2xJo2gm7nFwSLQkdymsWKGP6kvdPA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssundanese/v28/FwZH7_84xUkosG2xJo2gm7nFwSLQkdymsWKGP6kvdPA.ttf",weight:400,isVariable:!0},{displayName:"Sankofa Display",filename:"Ktk1ALSRd4LucUDghJ2rTqXOoh33F6mZVY9Y5w",category:"sans-serif",url:"https://fonts.gstatic.com/s/sankofadisplay/v2/Ktk1ALSRd4LucUDghJ2rTqXOoh33F6mZVY9Y5w.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Mro",filename:"qWcsB6--pZv9TqnUQMhe9b39WDzRtjkho4M",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmro/v19/qWcsB6--pZv9TqnUQMhe9b39WDzRtjkho4M.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Prop Double Ink",filename:"Y4GYYbpwUzElrfvDMsf8vwlfaBFstfqVIz5JD-B-oNRyiOmDZQ",category:"display",url:"https://fonts.gstatic.com/s/bitcountpropdoubleink/v2/Y4GYYbpwUzElrfvDMsf8vwlfaBFstfqVIz5JD-B-oNRyiOmDZQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Tai Tham",filename:"kJEuBv0U4hgtwxDUw2x9q7tbjLIfbPGdDaRlkJrUNw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstaitham/v25/kJEuBv0U4hgtwxDUw2x9q7tbjLIfbPGdDaRlkJrUNw.ttf",weight:400,isVariable:!0},{displayName:"Matangi",filename:"kmK9ZqE2FhDIeX2QpD1v0ybZuuQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/matangi/v5/kmK9ZqE2FhDIeX2QpD1v0ybZuuQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans New Tai Lue",filename:"H4c5BW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wwY55O4AS32A",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansnewtailue/v24/H4c5BW-Pl9DZ0Xe_nHUapt7PovLXAhAnY7wwY55O4AS32A.ttf",weight:400,isVariable:!0},{displayName:"Padyakke Expanded One",filename:"K2FvfY9El_tbR0JfHb6WWvrBaU6XAUvC4IAYOKRkpDjeoQ",category:"serif",url:"https://fonts.gstatic.com/s/padyakkeexpandedone/v8/K2FvfY9El_tbR0JfHb6WWvrBaU6XAUvC4IAYOKRkpDjeoQ.ttf",weight:400,isVariable:!1},{displayName:"Maname",filename:"gNMFW3J8RpCx9my42FkGGI6q_Q",category:"serif",url:"https://fonts.gstatic.com/s/maname/v2/gNMFW3J8RpCx9my42FkGGI6q_Q.ttf",weight:400,isVariable:!1},{displayName:"Playwrite CL",filename:"-zki91m7wssz_XLkGgu8hy33oZX-Xup87g",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritecl/v6/-zki91m7wssz_XLkGgu8hy33oZX-Xup87g.ttf",weight:400,isVariable:!0},{displayName:"Karla Tamil Upright",filename:"IFS4HfVMk95HnY0u6SeQ_cHoozW_3U5XoBJ9hK8kMK4",category:"sans-serif",url:"https://fonts.gstatic.com/s/karlatamilupright/v2/IFS4HfVMk95HnY0u6SeQ_cHoozW_3U5XoBJ9hK8kMK4.ttf",weight:400,isVariable:!1},{displayName:"Playwrite CO Guides",filename:"AYCXpWvtftIVXepC5AzjAx1KgYPugOK0TqxTJw_GOM0",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritecoguides/v5/AYCXpWvtftIVXepC5AzjAx1KgYPugOK0TqxTJw_GOM0.ttf",weight:400,isVariable:!1},{displayName:"Edu VIC WA NT Hand Pre",filename:"neIazDmioZxjkInM_tLHFudmcN2Uxxc-9Vnv4Y0Eeru2dGg",category:"handwriting",url:"https://fonts.gstatic.com/s/eduvicwanthandpre/v3/neIazDmioZxjkInM_tLHFudmcN2Uxxc-9Vnv4Y0Eeru2dGg.ttf",weight:400,isVariable:!0},{displayName:"Noto Serif Hentaigana",filename:"uk-9EHi3o6EruUbj3pGaDj3siVARn-kqgu1EM1vLGR4V2g",category:"serif",url:"https://fonts.gstatic.com/s/notoserifhentaigana/v17/uk-9EHi3o6EruUbj3pGaDj3siVARn-kqgu1EM1vLGR4V2g.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Tagbanwa",filename:"Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_nZRjQEaYpGoQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstagbanwa/v19/Y4GWYbB8VTEp4t3MKJSMmQdIKjRtt_nZRjQEaYpGoQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Lydian",filename:"c4m71mVzGN7s8FmIukZJ1v4ZlcPReUPXMoIjEQI",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanslydian/v19/c4m71mVzGN7s8FmIukZJ1v4ZlcPReUPXMoIjEQI.ttf",weight:400,isVariable:!1},{displayName:"Ponnala",filename:"w8gaH2QxQOU08bbbrQut2F4OuOo",category:"display",url:"https://fonts.gstatic.com/s/ponnala/v3/w8gaH2QxQOU08bbbrQut2F4OuOo.ttf",weight:400,isVariable:!1},{displayName:"Edu VIC WA NT Hand",filename:"UcC73EsnIXnOaZKmY1Ry0wZjP9YVRBcq0pj6eUcpng",category:"handwriting",url:"https://fonts.gstatic.com/s/eduvicwanthand/v3/UcC73EsnIXnOaZKmY1Ry0wZjP9YVRBcq0pj6eUcpng.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Wancho",filename:"zrf-0GXXyfn6Fs0lH9P4cUubP0GBqAPopiRfKp8",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanswancho/v18/zrf-0GXXyfn6Fs0lH9P4cUubP0GBqAPopiRfKp8.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Single Ink",filename:"FwZH7_80w0kk_0u-PN7ToaLMySaevcGosWKGP6kvdPA",category:"display",url:"https://fonts.gstatic.com/s/bitcountsingleink/v4/FwZH7_80w0kk_0u-PN7ToaLMySaevcGosWKGP6kvdPA.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Marchen",filename:"aFTO7OZ_Y282EP-WyG6QTOX_C8WZMHhPk652ZaHk",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmarchen/v21/aFTO7OZ_Y282EP-WyG6QTOX_C8WZMHhPk652ZaHk.ttf",weight:400,isVariable:!1},{displayName:"Playwrite PE",filename:"FwZc7-Amxlw-50y5PJugmImLpWm6_K7bkA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritepe/v6/FwZc7-Amxlw-50y5PJugmImLpWm6_K7bkA.ttf",weight:400,isVariable:!0},{displayName:"Kay Pho Du",filename:"jizfREFPvGNOx-jhPwHR4OmnLD0Z4zM",category:"serif",url:"https://fonts.gstatic.com/s/kayphodu/v2/jizfREFPvGNOx-jhPwHR4OmnLD0Z4zM.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Warang Citi",filename:"EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKRpeVCCXzdgA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanswarangciti/v18/EYqtmb9SzL1YtsZSScyKDXIeOv3w-zgsNvKRpeVCCXzdgA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Rejang",filename:"Ktk2AKuMeZjqPnXgyqrib7DIogqwN4O3WYZB_sU",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansrejang/v23/Ktk2AKuMeZjqPnXgyqrib7DIogqwN4O3WYZB_sU.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Old South Arabian",filename:"3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKx1OtDT9HwTA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansoldsoutharabian/v17/3qT5oiOhnSyU8TNFIdhZTice3hB_HWKsEnF--0XCHiKx1OtDT9HwTA.ttf",weight:400,isVariable:!1},{displayName:"Jacquard 24 Charted",filename:"mtGm4-dNK6HaudrE9VVKhENTsEXEYish0iRrMYJ_K-4",category:"display",url:"https://fonts.gstatic.com/s/jacquard24charted/v5/mtGm4-dNK6HaudrE9VVKhENTsEXEYish0iRrMYJ_K-4.ttf",weight:400,isVariable:!1},{displayName:"Libertinus Keyboard",filename:"NaPEcYrQAP5Z2JsyIac0i2DYHaapaf43RryztWo_3fk",category:"display",url:"https://fonts.gstatic.com/s/libertinuskeyboard/v2/NaPEcYrQAP5Z2JsyIac0i2DYHaapaf43RryztWo_3fk.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IE",filename:"fC1mPYtWYWnH0hvndYd6GCGMVwLBplm9aw",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteie/v11/fC1mPYtWYWnH0hvndYd6GCGMVwLBplm9aw.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Sharada",filename:"gok0H7rwAEdtF9N8-mdTGALG6p0kwoXLPOwr4H8a",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssharada/v17/gok0H7rwAEdtF9N8-mdTGALG6p0kwoXLPOwr4H8a.ttf",weight:400,isVariable:!1},{displayName:"Kanchenjunga",filename:"RWmPoKKd5fUmrILiWsjCI6TiqYsGBGBzCw",category:"sans-serif",url:"https://fonts.gstatic.com/s/kanchenjunga/v2/RWmPoKKd5fUmrILiWsjCI6TiqYsGBGBzCw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans PhagsPa",filename:"XLY8IYr5bJNDGYxPGjyYbaEjwQR-LFlsYMYHGGeT",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansphagspa/v24/XLY8IYr5bJNDGYxPGjyYbaEjwQR-LFlsYMYHGGeT.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Buginese",filename:"esDM30ldNv-KYGGJpKGk18phe_7Da6_gtfuEXLmNtw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansbuginese/v19/esDM30ldNv-KYGGJpKGk18phe_7Da6_gtfuEXLmNtw.ttf",weight:400,isVariable:!1},{displayName:"Playwrite US Trad Guides",filename:"-zk29027wssz_XLkGgu8kTL39c2bMssjmiZPNnk5nJCZAyrUdw",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteustradguides/v1/-zk29027wssz_XLkGgu8kTL39c2bMssjmiZPNnk5nJCZAyrUdw.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Grid Single Ink",filename:"NaPLcYHeAOhfxZo1O_IA2ULZRJevZus_A5zQ3wkexdKKt36GpQ",category:"display",url:"https://fonts.gstatic.com/s/bitcountgridsingleink/v2/NaPLcYHeAOhfxZo1O_IA2ULZRJevZus_A5zQ3wkexdKKt36GpQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Linear B",filename:"HhyJU4wt9vSgfHoORYOiXOckKNB737IV3BkFTq4EPw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanslinearb/v18/HhyJU4wt9vSgfHoORYOiXOckKNB737IV3BkFTq4EPw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Zanabazar Square",filename:"Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQtJxOCEgN0Gc",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanszanabazarsquare/v20/Cn-jJsuGWQxOjaGwMQ6fOicyxLBEMRfDtkzl4uagQtJxOCEgN0Gc.ttf",weight:400,isVariable:!1},{displayName:"Playwrite SK",filename:"9XUilJp0klrZDw3AZHcsJTBoxJuqbi3ezg",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritesk/v10/9XUilJp0klrZDw3AZHcsJTBoxJuqbi3ezg.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Mandaic",filename:"cIfnMbdWt1w_HgCcilqhKQBo_OsMI5_A_gMk0izH",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmandaic/v18/cIfnMbdWt1w_HgCcilqhKQBo_OsMI5_A_gMk0izH.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Single",filename:"or36Q6T72-iP2RY6OLSkb95a817GhmARZeDtag",category:"display",url:"https://fonts.gstatic.com/s/bitcountsingle/v3/or36Q6T72-iP2RY6OLSkb95a817GhmARZeDtag.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Syriac Western",filename:"ke82OhEEMVFsvCav8hWjbItd6Jf6MP7Z9spJZ6UXK6ARIyH5IA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssyriacwestern/v2/ke82OhEEMVFsvCav8hWjbItd6Jf6MP7Z9spJZ6UXK6ARIyH5IA.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans NKo",filename:"esDX31ZdNv-KYGGJpKGk2_RpMpCMHMLBrdA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansnko/v7/esDX31ZdNv-KYGGJpKGk2_RpMpCMHMLBrdA.ttf",weight:400,isVariable:!1},{displayName:"Karla Tamil Inclined",filename:"vm8pdQ3vXFXZ1aPd8dNzR82AFh2TibkaVrcbvZPxCDLR",category:"sans-serif",url:"https://fonts.gstatic.com/s/karlatamilinclined/v2/vm8pdQ3vXFXZ1aPd8dNzR82AFh2TibkaVrcbvZPxCDLR.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Vai",filename:"NaPecZTSBuhTirw6IaFn_UrURMTsDIRSfr0",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansvai/v18/NaPecZTSBuhTirw6IaFn_UrURMTsDIRSfr0.ttf",weight:400,isVariable:!1},{displayName:"Tirra",filename:"WBLrrEnNakREGrPF3AHdWn3J",category:"sans-serif",url:"https://fonts.gstatic.com/s/tirra/v2/WBLrrEnNakREGrPF3AHdWn3J.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Runic",filename:"H4c_BXWPl9DZ0Xe_nHUaus7W68WWaxpvHtgIYg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansrunic/v18/H4c_BXWPl9DZ0Xe_nHUaus7W68WWaxpvHtgIYg.ttf",weight:400,isVariable:!1},{displayName:"Jersey 15 Charted",filename:"nuFjD-rCQIjoVp1Sva2ToCTudGbLeRv4r2024gxi",category:"display",url:"https://fonts.gstatic.com/s/jersey15charted/v4/nuFjD-rCQIjoVp1Sva2ToCTudGbLeRv4r2024gxi.ttf",weight:400,isVariable:!1},{displayName:"Playwrite ES Deco",filename:"7Aulp-g3kjKKGkePXEf2jxctfDxlvHkw2-m9x2iC",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteesdeco/v11/7Aulp-g3kjKKGkePXEf2jxctfDxlvHkw2-m9x2iC.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Saurashtra",filename:"ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef9ndjhPTSIx9",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssaurashtra/v24/ea8GacQ0Wfz_XKWXe6OtoA8w8zvmYwTef9ndjhPTSIx9.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Inscriptional Parthian",filename:"k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2yklBJ2jNkLlLr",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansinscriptionalparthian/v18/k3k7o-IMPvpLmixcA63oYi-yStDkgXuXncL7dzfW3P4TAJ2yklBJ2jNkLlLr.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Chakma",filename:"Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi4JjTQhYBeYo",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanschakma/v18/Y4GQYbJ8VTEp4t3MKJSMjg5OIzhi4JjTQhYBeYo.ttf",weight:400,isVariable:!1},{displayName:"Pochaevsk",filename:"55xuey9_OdX_Om7ReYgloJd4-bnQKg",category:"display",url:"https://fonts.gstatic.com/s/pochaevsk/v5/55xuey9_OdX_Om7ReYgloJd4-bnQKg.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Elymaic",filename:"UqyKK9YTJW5liNMhTMqe9vUFP65ZD4AjWOT0zi2V",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanselymaic/v18/UqyKK9YTJW5liNMhTMqe9vUFP65ZD4AjWOT0zi2V.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Sunuwar",filename:"FwZB7_04xUkosG2xJo2gm7nF0DTfho_Du2akOrkv",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssunuwar/v1/FwZB7_04xUkosG2xJo2gm7nF0DTfho_Du2akOrkv.ttf",weight:400,isVariable:!1},{displayName:"Playwrite ID",filename:"Cn-xJt2YWhlY2oC4KxifKQJ8pfghQ3eplw",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteid/v11/Cn-xJt2YWhlY2oC4KxifKQJ8pfghQ3eplw.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Mayan Numerals",filename:"PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIiE68oo6eepYQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmayannumerals/v17/PlIuFk25O6RzLfvNNVSivR09_KqYMwvvDKYjfIiE68oo6eepYQ.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DE Grund Guides",filename:"OD5RuNCQ02KrAHnha1L36CWcQ83dtK5BLxqexnduX98TJlnjHAA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedegrundguides/v1/OD5RuNCQ02KrAHnha1L36CWcQ83dtK5BLxqexnduX98TJlnjHAA.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Prop Double",filename:"K2FufY5Wn-tBSVxaDL6DUOXQJ26dEAnh68U4EoporSHH",category:"display",url:"https://fonts.gstatic.com/s/bitcountpropdouble/v3/K2FufY5Wn-tBSVxaDL6DUOXQJ26dEAnh68U4EoporSHH.ttf",weight:400,isVariable:!0},{displayName:"Micro 5 Charted",filename:"hESp6XxmPDtTtADZhn7oD_yrmxEGRUsJQAlbUA",category:"display",url:"https://fonts.gstatic.com/s/micro5charted/v2/hESp6XxmPDtTtADZhn7oD_yrmxEGRUsJQAlbUA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Old Permic",filename:"snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKLdXgv_dKYB5",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansoldpermic/v18/snf1s1q1-dF8pli1TesqcbUY4Mr-ElrwKLdXgv_dKYB5.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Kawi",filename:"92zMtBJLNqsg7tCciW0EPHNNh0xrTCFOFZUF",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanskawi/v5/92zMtBJLNqsg7tCciW0EPHNNh0xrTCFOFZUF.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Nabataean",filename:"IFS4HfVJndhE3P4b5jnZ34DfsjO330dNoBJ9hK8kMK4",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansnabataean/v17/IFS4HfVJndhE3P4b5jnZ34DfsjO330dNoBJ9hK8kMK4.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Grantha",filename:"3y976akwcCjmsU8NDyrKo3IQfQ4o-r8cFeulHc6N",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansgrantha/v20/3y976akwcCjmsU8NDyrKo3IQfQ4o-r8cFeulHc6N.ttf",weight:400,isVariable:!1},{displayName:"Jersey 25 Charted",filename:"6NUM8EWHIhCWbxOqtLkv94Rlu6EkGv2uUGQW93Cg",category:"display",url:"https://fonts.gstatic.com/s/jersey25charted/v3/6NUM8EWHIhCWbxOqtLkv94Rlu6EkGv2uUGQW93Cg.ttf",weight:400,isVariable:!1},{displayName:"Playwrite TZ",filename:"RLp4K5rs6au7bzABmVQAOwnOZdM8t6g3VQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritetz/v11/RLp4K5rs6au7bzABmVQAOwnOZdM8t6g3VQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Psalter Pahlavi",filename:"rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w1G3KsUQBct4",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanspsalterpahlavi/v18/rP2Vp3K65FkAtHfwd-eISGznYihzggmsicPfud3w1G3KsUQBct4.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Hatran",filename:"A2BBn4Ne0RgnVF3Lnko-0sOBIfL_mM83r1nwzDs",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanshatran/v17/A2BBn4Ne0RgnVF3Lnko-0sOBIfL_mM83r1nwzDs.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Hanifi Rohingya",filename:"5h1IiYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLN0IbPeXAy64Y",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanshanifirohingya/v30/5h1IiYsoOmIC3Yu3MDXLDw3UZCgghyOEBBY7hhLN0IbPeXAy64Y.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Limbu",filename:"3JnlSDv90Gmq2mrzckOBBRRoNJVj0MF3OHRDnA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanslimbu/v26/3JnlSDv90Gmq2mrzckOBBRRoNJVj0MF3OHRDnA.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Tamil Supplement",filename:"DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax_vsAeMkeq1x",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstamilsupplement/v23/DdTz78kEtnooLS5rXF1DaruiCd_bFp_Ph4sGcn7ax_vsAeMkeq1x.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Cypriot",filename:"8AtzGta9PYqQDjyp79a6f8Cj-3a3cxIsK5MPpahF",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanscypriot/v20/8AtzGta9PYqQDjyp79a6f8Cj-3a3cxIsK5MPpahF.ttf",weight:400,isVariable:!1},{displayName:"Jersey 20 Charted",filename:"JTUNjJMy9DKq5FzVaj9tpgYgvHqGn_Z1ji-rqnQ_",category:"display",url:"https://fonts.gstatic.com/s/jersey20charted/v4/JTUNjJMy9DKq5FzVaj9tpgYgvHqGn_Z1ji-rqnQ_.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans SignWriting",filename:"Noas6VX_wIWFbTTCrYmvy9A2UnkL-2SZAWiUEVCARYQemg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssignwriting/v5/Noas6VX_wIWFbTTCrYmvy9A2UnkL-2SZAWiUEVCARYQemg.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Old Turkic",filename:"yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsE2RjEw-Vyws",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansoldturkic/v19/yMJNMJVya43H0SUF_WmcGEQVqoEMKDKbsE2RjEw-Vyws.ttf",weight:400,isVariable:!1},{displayName:"Yuji Hentaigana Akebono",filename:"EJRGQhkhRNwM-RtitGUwh930GU_f5KAlkuL0wQy9NKXRzrrF",category:"handwriting",url:"https://fonts.gstatic.com/s/yujihentaiganaakebono/v15/EJRGQhkhRNwM-RtitGUwh930GU_f5KAlkuL0wQy9NKXRzrrF.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Tirhuta",filename:"t5t6IQYRNJ6TWjahPR6X-M-apUyby7uGUBsTrn5P",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanstirhuta/v17/t5t6IQYRNJ6TWjahPR6X-M-apUyby7uGUBsTrn5P.ttf",weight:400,isVariable:!1},{displayName:"Playwrite BR",filename:"kJE0BuMK4Q07lDHc2Xp9vYgSrMxzBZ2lDA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritebr/v11/kJE0BuMK4Q07lDHc2Xp9vYgSrMxzBZ2lDA.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Modi",filename:"pe03MIySN5pO62Z5YkFyT7jeav5qWVAgVol-",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmodi/v25/pe03MIySN5pO62Z5YkFyT7jeav5qWVAgVol-.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Bassa Vah",filename:"PN_sRee-r3f7LnqsD5sax12gjZn7mBpL_4c2VNUQptE",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansbassavah/v21/PN_sRee-r3f7LnqsD5sax12gjZn7mBpL_4c2VNUQptE.ttf",weight:400,isVariable:!0},{displayName:"Playwrite DE VA",filename:"VuJpdNPb2p7tvoFGLMPdeMxGN1p9v2HRrDH0eA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedeva/v11/VuJpdNPb2p7tvoFGLMPdeMxGN1p9v2HRrDH0eA.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Ugaritic",filename:"3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXkMhoIkiazfg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansugaritic/v17/3qTwoiqhnSyU8TNFIdhZVCwbjCpkAXXkMhoIkiazfg.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Ink",filename:"CHykV-zVFUj9azIqslTrFzEuNlAghmBIYQ",category:"display",url:"https://fonts.gstatic.com/s/bitcountink/v2/CHykV-zVFUj9azIqslTrFzEuNlAghmBIYQ.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Kaithi",filename:"buEtppS9f8_vkXadMBJJu0tWjLwjQi0KdoZIKlo",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanskaithi/v23/buEtppS9f8_vkXadMBJJu0tWjLwjQi0KdoZIKlo.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Masaram Gondi",filename:"6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPnuGe7RI9WSWX",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmasaramgondi/v18/6xK_dThFKcWIu4bpRBjRYRV7KZCbUq6n_1kPnuGe7RI9WSWX.ttf",weight:400,isVariable:!1},{displayName:"Noto Serif Dives Akuru",filename:"QldfNSVMqAsHtsJ_TnD3aT03sMgd57ibeeZT60DIyoV9Ejs",category:"serif",url:"https://fonts.gstatic.com/s/notoserifdivesakuru/v8/QldfNSVMqAsHtsJ_TnD3aT03sMgd57ibeeZT60DIyoV9Ejs.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Khudawadi",filename:"fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHIjRnVVXz9MY",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanskhudawadi/v23/fdNi9t6ZsWBZ2k5ltHN73zZ5hc8HANlHIjRnVVXz9MY.ttf",weight:400,isVariable:!1},{displayName:"Playwrite PL Guides",filename:"jVyW7m_lCm7G5CZyQCAu8mgkGLk-kmibWR3aRZ2Kw7A",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteplguides/v1/jVyW7m_lCm7G5CZyQCAu8mgkGLk-kmibWR3aRZ2Kw7A.ttf",weight:400,isVariable:!1},{displayName:"Playwrite PT Guides",filename:"sJoY3K5JjdGLJV3vyatrMkupgg-kWTx5F5k90TZO69o",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteptguides/v2/sJoY3K5JjdGLJV3vyatrMkupgg-kWTx5F5k90TZO69o.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Soyombo",filename:"RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY0FrIFOcK25W",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssoyombo/v18/RWmSoL-Y6-8q5LTtXs6MF6q7xsxgY0FrIFOcK25W.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Deseret",filename:"MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Vq9ZnJSZtQG",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansdeseret/v18/MwQsbgPp1eKH6QsAVuFb9AZM6MMr2Vq9ZnJSZtQG.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Pau Cin Hau",filename:"x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehIdjEWqKMxsKw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanspaucinhau/v21/x3d-cl3IZKmUqiMg_9wBLLtzl22EayN7ehIdjEWqKMxsKw.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Kayah Li",filename:"B50SF61OpWTRcGrhOVJJwOMXdca6Yec-gFPEM4EAUw",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanskayahli/v26/B50SF61OpWTRcGrhOVJJwOMXdca6Yec-gFPEM4EAUw.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Chorasmian",filename:"MQpL-X6uKMC7ROPLwRnI9ULxK_7NVkf8S5vyoH7w4g9b",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanschorasmian/v3/MQpL-X6uKMC7ROPLwRnI9ULxK_7NVkf8S5vyoH7w4g9b.ttf",weight:400,isVariable:!1},{displayName:"Playwrite PE Guides",filename:"AMONz5uBsGadFuvf9j8ZyqI0FA3br70wwyyAlqETME8",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritepeguides/v1/AMONz5uBsGadFuvf9j8ZyqI0FA3br70wwyyAlqETME8.ttf",weight:400,isVariable:!1},{displayName:"Jersey 10 Charted",filename:"oY1E8fPFr6XiNWqEp90XSbwUGfF8SnedKmeBvEYs",category:"display",url:"https://fonts.gstatic.com/s/jersey10charted/v4/oY1E8fPFr6XiNWqEp90XSbwUGfF8SnedKmeBvEYs.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Old Sogdian",filename:"3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURt7neIqM-9uyg",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansoldsogdian/v18/3JnjSCH90Gmq2mrzckOBBhFhdrMst48aURt7neIqM-9uyg.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IT Trad",filename:"SlGKmR6Yo5oYZX5BFVcEySBSPE50BivIh2y2Iq91",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteittrad/v11/SlGKmR6Yo5oYZX5BFVcEySBSPE50BivIh2y2Iq91.ttf",weight:400,isVariable:!0},{displayName:"Yarndings 20",filename:"TuGWUVlkUohEQu8l7K8b-vNFB380PMTK1w",category:"display",url:"https://fonts.gstatic.com/s/yarndings20/v4/TuGWUVlkUohEQu8l7K8b-vNFB380PMTK1w.ttf",weight:400,isVariable:!1},{displayName:"Bitcount Grid Double Ink",filename:"55x_ez5tP8L0NH7JfsNC0tQY0fynXgYg-YY2JqgqdEYE1Ubx_A",category:"display",url:"https://fonts.gstatic.com/s/bitcountgriddoubleink/v2/55x_ez5tP8L0NH7JfsNC0tQY0fynXgYg-YY2JqgqdEYE1Ubx_A.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Nushu",filename:"rnCw-xRQ3B7652emAbAe_Ai1IYaFWFAMArZKqQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansnushu/v20/rnCw-xRQ3B7652emAbAe_Ai1IYaFWFAMArZKqQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Lepcha",filename:"0QI7MWlB_JWgA166SKhu05TekNS32AJstqBXgd4",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanslepcha/v20/0QI7MWlB_JWgA166SKhu05TekNS32AJstqBXgd4.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Ogham",filename:"kmKlZqk1GBDGN0mY6k5lmEmww4hrt5laQxcoCA",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansogham/v18/kmKlZqk1GBDGN0mY6k5lmEmww4hrt5laQxcoCA.ttf",weight:400,isVariable:!1},{displayName:"Yarndings 12",filename:"55xreyp2N8T5P2LJbZAlkY9c8ZLMI2VUnQ",category:"display",url:"https://fonts.gstatic.com/s/yarndings12/v4/55xreyp2N8T5P2LJbZAlkY9c8ZLMI2VUnQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Mende Kikakui",filename:"11hRGoLHz17aKjQCWj-JHcLvu2Q5zZrnkbNCLUx_aDJLAHer",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmendekikakui/v29/11hRGoLHz17aKjQCWj-JHcLvu2Q5zZrnkbNCLUx_aDJLAHer.ttf",weight:400,isVariable:!1},{displayName:"Jacquarda Bastarda 9 Charted",filename:"Yq6D-KaMUyfq4qLgx19A_ocp43FeLd9m0vDxm-yf8JPuf0cPaL8pmQg",category:"display",url:"https://fonts.gstatic.com/s/jacquardabastarda9charted/v4/Yq6D-KaMUyfq4qLgx19A_ocp43FeLd9m0vDxm-yf8JPuf0cPaL8pmQg.ttf",weight:400,isVariable:!1},{displayName:"Playwrite FR Trad",filename:"sJoe3KxJjdGLJV3vyatrJE2pkQisWXkKHZ0f1CZO",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritefrtrad/v13/sJoe3KxJjdGLJV3vyatrJE2pkQisWXkKHZ0f1CZO.ttf",weight:400,isVariable:!0},{displayName:"Noto Sans Manichaean",filename:"taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfekqCNTtFCtdX",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmanichaean/v19/taiVGntiC4--qtsfi4Jp9-_GkPZZCcrfekqCNTtFCtdX.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Meroitic",filename:"IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UDgDhTiKY9KQ",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansmeroitic/v19/IFS5HfRJndhE3P4b5jnZ3ITPvC6i00UDgDhTiKY9KQ.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Phoenician",filename:"jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5X7Jot-p5561",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosansphoenician/v18/jizFRF9Ksm4Bt9PvcTaEkIHiTVtxmFtS5X7Jot-p5561.ttf",weight:400,isVariable:!1},{displayName:"Playwrite NZ Guides",filename:"t5t8IQQPN4uFDRepJwiX4vzIikyGzv71Wh8xq25PL5k",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritenzguides/v1/t5t8IQQPN4uFDRepJwiX4vzIikyGzv71Wh8xq25PL5k.ttf",weight:400,isVariable:!1},{displayName:"Yarndings 12 Charted",filename:"eLGDP_DlKhO-DUfeqM4I_vDdJgmIh7hAvvbJ0t-dHaJH",category:"display",url:"https://fonts.gstatic.com/s/yarndings12charted/v4/eLGDP_DlKhO-DUfeqM4I_vDdJgmIh7hAvvbJ0t-dHaJH.ttf",weight:400,isVariable:!1},{displayName:"Playwrite NL Guides",filename:"FwZH7_8mxlw-50y5PJughoCL4jbXkMqwsWKGP6kvdPA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritenlguides/v1/FwZH7_8mxlw-50y5PJughoCL4jbXkMqwsWKGP6kvdPA.ttf",weight:400,isVariable:!1},{displayName:"Playwrite TZ Guides",filename:"SLXUc0_L5XEkcjBPGvusk4lULgsM9U5_YQy93JQ2XEg",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritetzguides/v1/SLXUc0_L5XEkcjBPGvusk4lULgsM9U5_YQy93JQ2XEg.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Kharoshthi",filename:"Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE5z4rFyx5mR1",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanskharoshthi/v17/Fh4qPiLjKS30-P4-pGMMXCCfvkc5Vd7KE5z4rFyx5mR1.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Lycian",filename:"QldVNSNMqAsHtsJ7UmqxBQA9r8wA5_naCJwn00E",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanslycian/v16/QldVNSNMqAsHtsJ7UmqxBQA9r8wA5_naCJwn00E.ttf",weight:400,isVariable:!1},{displayName:"Noto Sans Siddham",filename:"OZpZg-FwqiNLe9PELUikxTWDoCCeGqndk3Ic92ZH",category:"sans-serif",url:"https://fonts.gstatic.com/s/notosanssiddham/v21/OZpZg-FwqiNLe9PELUikxTWDoCCeGqndk3Ic92ZH.ttf",weight:400,isVariable:!1},{displayName:"Playwrite BE WAL Guides",filename:"l7gPbiR5yM62ycwevWCt02rrTFoEJvY4kyrrUzHlVJabaOSA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritebewalguides/v1/l7gPbiR5yM62ycwevWCt02rrTFoEJvY4kyrrUzHlVJabaOSA.ttf",weight:400,isVariable:!1},{displayName:"Yarndings 20 Charted",filename:"QldRNSdbpg0G8vh0W2qxe0l-hcUPtY2VaLQm4UTqz5V9",category:"display",url:"https://fonts.gstatic.com/s/yarndings20charted/v4/QldRNSdbpg0G8vh0W2qxe0l-hcUPtY2VaLQm4UTqz5V9.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IE Guides",filename:"LhW5MULFNP8PI-1UADw_Kbp9daTx5ovUaNojN9_8IVQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteieguides/v1/LhW5MULFNP8PI-1UADw_Kbp9daTx5ovUaNojN9_8IVQ.ttf",weight:400,isVariable:!1},{displayName:"Playwrite AU VIC Guides",filename:"ll8sK3mEVy6nEMXMskXIZv8owEdZpVIWaQEnuD6F2TpBa98q",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteauvicguides/v1/ll8sK3mEVy6nEMXMskXIZv8owEdZpVIWaQEnuD6F2TpBa98q.ttf",weight:400,isVariable:!1},{displayName:"Cossette Texte",filename:"S6ukw4pDXzTb-m1kPi_7eV-ciP01xPBQ19bE",category:"sans-serif",url:"https://fonts.gstatic.com/s/cossettetexte/v3/S6ukw4pDXzTb-m1kPi_7eV-ciP01xPBQ19bE.ttf",weight:400,isVariable:!1},{displayName:"Playwrite GB J Guides",filename:"CSRh4yJOn-mMWCgLPl16K6UKAvM5yY1BdhmIKxooUh-_nQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritegbjguides/v2/CSRh4yJOn-mMWCgLPl16K6UKAvM5yY1BdhmIKxooUh-_nQ.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DE VA Guides",filename:"WwkPxOmkDVqm-ojMLT_kdMUoBpMYm6KTeb28UB9SNQIUdqQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedevaguides/v1/WwkPxOmkDVqm-ojMLT_kdMUoBpMYm6KTeb28UB9SNQIUdqQ.ttf",weight:400,isVariable:!1},{displayName:"Playwrite US Modern Guides",filename:"0QI1MWNf_4C2VH-yUr5uyqKOvtOynXAoku8j8Lv9pryxZQscrW1V",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteusmodernguides/v1/0QI1MWNf_4C2VH-yUr5uyqKOvtOynXAoku8j8Lv9pryxZQscrW1V.ttf",weight:400,isVariable:!1},{displayName:"Playwrite ES Deco Guides",filename:"flUrRriwwII5RVl2TZ1XBNTUOYY6ZzZzwPCEKtwqYEyDBQWJ7Q",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteesdecoguides/v1/flUrRriwwII5RVl2TZ1XBNTUOYY6ZzZzwPCEKtwqYEyDBQWJ7Q.ttf",weight:400,isVariable:!1},{displayName:"Playwrite FR Moderne Guides",filename:"CSRr4yxOn-mMWCgLPl16KrUKBbwa2ZZLdkrvXllIP22HnIzLvrG2fw",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritefrmoderneguides/v2/CSRr4yxOn-mMWCgLPl16KrUKBbwa2ZZLdkrvXllIP22HnIzLvrG2fw.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IT Moderna Guides",filename:"2sDKZHBJg5rCj6fz_QgDJhGcTtJ5AVu-1w5jRQjRv9qPpOVtBhB5gQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteitmodernaguides/v1/2sDKZHBJg5rCj6fz_QgDJhGcTtJ5AVu-1w5jRQjRv9qPpOVtBhB5gQ.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IT Trad Guides",filename:"SlGDmReYo5oYZX5BFVcEySBSPE50BiuP2AHaRsRUA4V-e6yHgQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteittradguides/v2/SlGDmReYo5oYZX5BFVcEySBSPE50BiuP2AHaRsRUA4V-e6yHgQ.ttf",weight:400,isVariable:!1},{displayName:"Playwrite ZA Guides",filename:"O4ZOFHPsmxlhCg3-iycDyEwy0BT1ribk2HDoCLfQmgE",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritezaguides/v1/O4ZOFHPsmxlhCg3-iycDyEwy0BT1ribk2HDoCLfQmgE.ttf",weight:400,isVariable:!1},{displayName:"Playwrite FR Trad Guides",filename:"l7gMbit5yM62ycwevWCt133rT2kpYpEKjyfqRWLFfriXYf2ZXw",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritefrtradguides/v1/l7gMbit5yM62ycwevWCt133rT2kpYpEKjyfqRWLFfriXYf2ZXw.ttf",weight:400,isVariable:!1},{displayName:"Playwrite BR Guides",filename:"tssxAohQaiQS-wrnJz-F5CqW4dOezRwp-9cCOxBu_BM",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritebrguides/v1/tssxAohQaiQS-wrnJz-F5CqW4dOezRwp-9cCOxBu_BM.ttf",weight:400,isVariable:!1},{displayName:"Playwrite HR Guides",filename:"6NUK8EedKwOcfRjj8ukv_L4kjqAoGrjdWmA08mCgdfM",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritehrguides/v1/6NUK8EedKwOcfRjj8ukv_L4kjqAoGrjdWmA08mCgdfM.ttf",weight:400,isVariable:!1},{displayName:"Playwrite HU Guides",filename:"AYCXpWvtftIVXepC5AzjCAdKgYPugOK0TqxTJw_GOM0",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritehuguides/v1/AYCXpWvtftIVXepC5AzjCAdKgYPugOK0TqxTJw_GOM0.ttf",weight:400,isVariable:!1},{displayName:"Playwrite AU NSW Guides",filename:"LDIiao-QNRMmVPcU8-sgUraMF7GZs_1Emk3v8tPbZeQ3YBXs",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteaunswguides/v1/LDIiao-QNRMmVPcU8-sgUraMF7GZs_1Emk3v8tPbZeQ3YBXs.ttf",weight:400,isVariable:!1},{displayName:"Playwrite AT Guides",filename:"QdVKSS0gJR2xneUeQPfE-FVA1BlZQRpBRbgJdhapcUU",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteatguides/v1/QdVKSS0gJR2xneUeQPfE-FVA1BlZQRpBRbgJdhapcUU.ttf",weight:400,isVariable:!1},{displayName:"Playwrite AU SA Guides",filename:"3JnsSCLj03y8jUv7aFWBCCglBaFjl54aVBAovcgEP-Z3054",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteausaguides/v1/3JnsSCLj03y8jUv7aFWBCCglBaFjl54aVBAovcgEP-Z3054.ttf",weight:400,isVariable:!1},{displayName:"Playwrite CL Guides",filename:"Z9XKDnxTQxyGzOn3eMH-i6Ws0czqkE-hrNpVuw5_BAM",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteclguides/v2/Z9XKDnxTQxyGzOn3eMH-i6Ws0czqkE-hrNpVuw5_BAM.ttf",weight:400,isVariable:!1},{displayName:"Playwrite NG Modern Guides",filename:"6qLVKYQNtxD-qVlIPUIPdWMlWxy3BmFEQgxB1xvFhDarWJtyZyGU",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritengmodernguides/v1/6qLVKYQNtxD-qVlIPUIPdWMlWxy3BmFEQgxB1xvFhDarWJtyZyGU.ttf",weight:400,isVariable:!1},{displayName:"Playwrite ID Guides",filename:"MjQamj1kuP_soQ3o-rysMdWi_8oJlIUUInch3bTfcxs",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteidguides/v1/MjQamj1kuP_soQ3o-rysMdWi_8oJlIUUInch3bTfcxs.ttf",weight:400,isVariable:!1},{displayName:"Playwrite GB S Guides",filename:"0FlKVOSHl1iH-fv2BH4kIkUBqtlNCEaQLlyKx1QPi-Z8Fw",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritegbsguides/v1/0FlKVOSHl1iH-fv2BH4kIkUBqtlNCEaQLlyKx1QPi-Z8Fw.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DK Uloopet Guides",filename:"WwkKxOSkDVqm-ojMLT_kdMsoBb5Xs6efafiIBXYcVHk1bo9bkIONtA",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedkuloopetguides/v1/WwkKxOSkDVqm-ojMLT_kdMsoBb5Xs6efafiIBXYcVHk1bo9bkIONtA.ttf",weight:400,isVariable:!1},{displayName:"Playwrite CA Guides",filename:"MjQamj1kuP_soQ3o-rysO9Ci_8oJlIUUInch3bTfcxs",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritecaguides/v1/MjQamj1kuP_soQ3o-rysO9Ci_8oJlIUUInch3bTfcxs.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DK Loopet Guides",filename:"4iC46LlmYsRPlQ1zDEvT8weoW-sI8-h9xxN83W-Cb5tmElj-b0nB",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedkloopetguides/v1/4iC46LlmYsRPlQ1zDEvT8weoW-sI8-h9xxN83W-Cb5tmElj-b0nB.ttf",weight:400,isVariable:!1},{displayName:"Playwrite ES Guides",filename:"VuJtdM_b2p7tvoFGLMPdedpGJm402y6mhDDGfdnzXeU",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteesguides/v1/VuJtdM_b2p7tvoFGLMPdedpGJm402y6mhDDGfdnzXeU.ttf",weight:400,isVariable:!1},{displayName:"Playwrite HR Lijeva Guides",filename:"uU9aCAgH7I63K35cu3bRkqamzjr8EW133LJaXDO-QObhgDgMKYJO",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritehrlijevaguides/v1/uU9aCAgH7I63K35cu3bRkqamzjr8EW133LJaXDO-QObhgDgMKYJO.ttf",weight:400,isVariable:!1},{displayName:"Playwrite AU QLD Guides",filename:"TuGBUUJtX5tTUfQi_7kbiZZFVhl0FIKnvy00LDxlIzIU5RwD",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteauqldguides/v1/TuGBUUJtX5tTUfQi_7kbiZZFVhl0FIKnvy00LDxlIzIU5RwD.ttf",weight:400,isVariable:!1},{displayName:"Playwrite CU Guides",filename:"c4m81mZtG8v6p3iAoFBJ2dJdu9fWPSaOFooIDQtJbok",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritecuguides/v1/c4m81mZtG8v6p3iAoFBJ2dJdu9fWPSaOFooIDQtJbok.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IN Guides",filename:"GFD2WBRug3mQSvrAT9AL4vx4d3lQNQV4Tt1qdGqgdlM",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteinguides/v1/GFD2WBRug3mQSvrAT9AL4vx4d3lQNQV4Tt1qdGqgdlM.ttf",weight:400,isVariable:!1},{displayName:"Playwrite SK Guides",filename:"P5sezYaSYdfH5z93kEFk3tyPlqxeQeo_JzruWQshcbU",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteskguides/v1/P5sezYaSYdfH5z93kEFk3tyPlqxeQeo_JzruWQshcbU.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DE LA Guides",filename:"1q2XY42fB0V64O4aSe1OjKs_yAXBOfDI5wE56g2M62M1AXs",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedelaguides/v2/1q2XY42fB0V64O4aSe1OjKs_yAXBOfDI5wE56g2M62M1AXs.ttf",weight:400,isVariable:!1},{displayName:"Playwrite BE VLG Guides",filename:"EYqjmb1Mz6hO4edaU9qKGFZMDd_Q-zwwK__U1u9GK3nNgEoc",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritebevlgguides/v2/EYqjmb1Mz6hO4edaU9qKGFZMDd_Q-zwwK__U1u9GK3nNgEoc.ttf",weight:400,isVariable:!1},{displayName:"Playwrite RO Guides",filename:"wlptgx7ZCE50snmWiOExiylvL10_b5Ym_LBte6KuGEo",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteroguides/v1/wlptgx7ZCE50snmWiOExiylvL10_b5Ym_LBte6KuGEo.ttf",weight:400,isVariable:!1},{displayName:"Playwrite NO Guides",filename:"DPEwYx-Cyg4cQ2aAcFshOLL79zJKccqHe2-Z2vnLeAs",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritenoguides/v1/DPEwYx-Cyg4cQ2aAcFshOLL79zJKccqHe2-Z2vnLeAs.ttf",weight:400,isVariable:!1},{displayName:"Playwrite DE SAS Guides",filename:"8At5GtCjPp-GWR2h9cC6ePzz2l6LJ3VZaPNi15BEdtBgPI1G",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritedesasguides/v1/8At5GtCjPp-GWR2h9cC6ePzz2l6LJ3VZaPNi15BEdtBgPI1G.ttf",weight:400,isVariable:!1},{displayName:"Playwrite IS Guides",filename:"5aUp9-GkphaVExwxdX6SwWF-uigk3Cglrm9ptxu7HZ0",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteisguides/v1/5aUp9-GkphaVExwxdX6SwWF-uigk3Cglrm9ptxu7HZ0.ttf",weight:400,isVariable:!1},{displayName:"Playwrite CZ Guides",filename:"6qLcKY0NtxD-qVlIPUIPeH4lUQa6B3ZZQkseuneh7xc",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteczguides/v1/6qLcKY0NtxD-qVlIPUIPeH4lUQa6B3ZZQkseuneh7xc.ttf",weight:400,isVariable:!1},{displayName:"Playwrite AR Guides",filename:"iJWYBWqKZTrYS9uv-Ry6kDf-q_0Xq67mcGUaW4_MiYQ",category:"handwriting",url:"https://fonts.gstatic.com/s/playwritearguides/v5/iJWYBWqKZTrYS9uv-Ry6kDf-q_0Xq67mcGUaW4_MiYQ.ttf",weight:400,isVariable:!1},{displayName:"Playwrite AU TAS Guides",filename:"cY9Vfi6cVk5RvjGtQrLqjozy3ekUDtDMDX-NNjbKL4UbaDZD",category:"handwriting",url:"https://fonts.gstatic.com/s/playwriteautasguides/v1/cY9Vfi6cVk5RvjGtQrLqjozy3ekUDtDMDX-NNjbKL4UbaDZD.ttf",weight:400,isVariable:!1}],$d=new Map(Pl.map(e=>[e.filename,e])),eh=new Map(Pl.map(e=>[e.displayName,e])),mt="https://templates.shotstack.io/basic/asset/font",Qs={Arapey:`${mt}/arapey-regular.ttf`,"Clear Sans":`${mt}/clearsans-regular.ttf`,"Clear Sans Bold":`${mt}/clearsans-bold.ttf`,"Didact Gothic":`${mt}/didactgothic-regular.ttf`,Montserrat:`${mt}/montserrat-regular.ttf`,"Montserrat Bold":`${mt}/montserrat-bold.ttf`,"Montserrat ExtraBold":`${mt}/montserrat-extrabold.ttf`,"Montserrat SemiBold":`${mt}/montserrat-semibold.ttf`,"Montserrat Light":`${mt}/montserrat-light.ttf`,"Montserrat Medium":`${mt}/montserrat-medium.ttf`,"Montserrat Black":`${mt}/montserrat-black.ttf`,MovLette:`${mt}/movlette.ttf`,"Open Sans":`${mt}/opensans-regular.ttf`,"Open Sans Bold":`${mt}/opensans-bold.ttf`,"Open Sans ExtraBold":`${mt}/opensans-extrabold.ttf`,"Permanent Marker":`${mt}/permanentmarker-regular.ttf`,Roboto:`${mt}/roboto-regular.ttf`,"Roboto Bold":`${mt}/roboto-bold.ttf`,"Roboto Light":`${mt}/roboto-light.ttf`,"Roboto Medium":`${mt}/roboto-medium.ttf`,"Sue Ellen Francisco":`${mt}/sueellenfrancisco-regular.ttf`,"Work Sans":`${mt}/worksans.ttf`},th={ClearSans:"Clear Sans",DidactGothic:"Didact Gothic",OpenSans:"Open Sans",PermanentMarker:"Permanent Marker",SueEllenFrancisco:"Sue Ellen Francisco",WorkSans:"Work Sans"},ih={Thin:100,ExtraLight:200,Light:300,Regular:400,Medium:500,SemiBold:600,Bold:700,ExtraBold:800,Black:900};function Ni(e){const t=e.toLowerCase();for(const[i,a]of Object.entries(ih)){const s=` ${i.toLowerCase()}`;if(t.endsWith(s))return{baseFontFamily:e.slice(0,-i.length-1),fontWeight:a}}return{baseFontFamily:e,fontWeight:400}}function zn(e){const t=$d.get(e);if(t)return t.url;if(Qs[e])return Qs[e];const{baseFontFamily:i}=Ni(e),a=th[i]??i;if(Qs[a])return Qs[a];const s=eh.get(e);if(s)return s.url}function ah(e){return e/1e3}function iI(e){return e}function aI(e){return e}const sh=3;function rh(e){return new Promise(t=>{const i=document.createElement("video");i.preload="metadata",i.crossOrigin="anonymous",i.onloadedmetadata=()=>t(i.duration),i.onerror=()=>t(null),i.src=e})}async function El(e){const t=e;if(["video","audio","luma"].includes(t.type)&&t.src){const i=await rh(t.src);if(i!==null&&!Number.isNaN(i)){const a=t.trim??0;return i-a}}return sh}function $s(e,t,i){return t===0?0:i[e][t-1].getEnd()}function Ln(e,t){return Math.max(0,t-e)}function er(e){let t=0;for(const i of e)for(const a of i)a.getTimingIntent().length!=="end"&&(t=Math.max(t,a.getEnd()));return t}function nh(e){return typeof e=="object"&&e!==null&&e.type==="text"}function oh(e){const t=e.font?.family??"Open Sans",{fontWeight:i}=Ni(t),a={family:t,size:e.font?.size??32,weight:e.font?.weight??i,color:e.font?.color??"#ffffff",opacity:e.font?.opacity??1};e.stroke?.width&&e.stroke.width>0&&(a.stroke={width:e.stroke.width,color:e.stroke.color??"#000000",opacity:1});const s={letterSpacing:0,lineHeight:e.font?.lineHeight??1.2,textTransform:"none",textDecoration:"none"};let r="middle";e.alignment?.vertical==="top"?r="top":e.alignment?.vertical==="bottom"&&(r="bottom");const n={horizontal:e.alignment?.horizontal??"center",vertical:r},o={type:"rich-text",text:e.text,font:a,style:s,align:n};e.background&&(o.background={color:e.background.color,opacity:e.background.opacity??1,borderRadius:e.background.borderRadius??0},e.background.padding&&(o.padding=e.background.padding)),e.animation&&(o.animation={preset:e.animation.preset,speed:1,duration:e.animation.duration});const l={};return e.width!==void 0&&(l.width=e.width),e.height!==void 0&&(l.height=e.height),{richTextAsset:o,clipUpdates:l}}async function lh(e,t,i){const a=i.getClipAt(e,t);if(!a?.clipConfiguration)throw new Error("Cannot convert clip: invalid player");const{asset:s}=a.clipConfiguration;if(!nh(s))throw new Error("Cannot convert clip: asset is not a TextAsset");const r={...a.clipConfiguration},n=a.getTimingIntent(),o=new Map(a.getMergeFieldBindings()),{richTextAsset:l,clipUpdates:c}=oh(s),f={...r,...c,asset:l},u=i.createPlayerFromAssetType(f);if(!u)throw new Error("Failed to create RichTextPlayer");u.layer=e+1,u.setTimingIntent(n),o.size>0&&u.setInitialBindings(o);const h=i.getTrack(e);if(!h)throw new Error("Invalid track index");h[t]=u;const m=i.getClips(),b=m.indexOf(a);if(b!==-1&&(m[b]=u),i.addPlayerToContainer(e,u),n.length==="end"){i.untrackEndLengthClip(a),i.trackEndLengthClip(u);const M=i.getTracks(),G=er(M),L=u.getResolvedTiming();u.setResolvedTiming({start:L.start,length:Ln(L.start,G)})}else n.length==="auto"&&i.resolveClipAutoLength(u);i.updateDuration(),u.reconfigureAfterRestore(),await u.load(),u.draw(),i.emitEvent(ue.ClipUpdated,{previous:{trackIndex:e,clipIndex:t,clip:r},current:{trackIndex:e,clipIndex:t,clip:f}}),i.queueDisposeClip(a)}function tr(e){return!!(e&&typeof e=="object"&&!Array.isArray(e))}function Bn(e,t){const i={...e};return tr(e)&&tr(t)&&Object.keys(t).forEach(a=>{if(a==="__proto__"||a==="constructor"||a==="prototype")return;const s=t[a],r=e[a];tr(s)?a in e&&tr(r)?i[a]=Bn(r,s):i[a]=Bn({},s):i[a]=s}),i}function Un(e,t,i){const a=t.split(".");let s=e;for(let r=0;r<a.length-1;r+=1){if(s==null||typeof s!="object")return;s=s[a[r]]}s!=null&&typeof s=="object"&&(s[a[a.length-1]]=i)}function Aa(e,t){const i=t.split(".");let a=e;for(const s of i){if(a==null||typeof a!="object")return;a=a[s]}return a}class Ol{constructor(t,i,a,s,r,n,o,l){this.clip=t,this.propertyPath=i,this.fieldName=a,this.previousFieldName=s,this.previousValue=r,this.newValue=n,this.storedPreviousValue=r,this.storedNewValue=n,this.trackIndex=o,this.clipIndex=l}name="setMergeField";storedPreviousValue;storedNewValue;trackIndex;clipIndex;storedPreviousBinding;async execute(t){if(!t)return;const i=t.getMergeFields();this.storedPreviousBinding=this.clip.getMergeFieldBinding(this.propertyPath),Un(this.clip.clipConfiguration,this.propertyPath,this.storedNewValue),this.fieldName?this.clip.setMergeFieldBinding(this.propertyPath,{placeholder:i.createTemplate(this.fieldName),resolvedValue:this.storedNewValue}):this.clip.removeMergeFieldBinding(this.propertyPath),this.fieldName?i.register({name:this.fieldName,defaultValue:this.storedNewValue},{silent:!0}):this.previousFieldName&&i.remove(this.previousFieldName,{silent:!0}),(this.propertyPath==="asset.src"||this.propertyPath.endsWith(".src"))&&await this.clip.reloadAsset(),this.clip.reconfigureAfterRestore(),this.clip.draw(),t.emitEvent(ue.MergeFieldApplied,{propertyPath:this.propertyPath,fieldName:this.fieldName??"",trackIndex:this.trackIndex,clipIndex:this.clipIndex})}async undo(t){if(!t)return;const i=t.getMergeFields();Un(this.clip.clipConfiguration,this.propertyPath,this.storedPreviousValue),this.storedPreviousBinding?this.clip.setMergeFieldBinding(this.propertyPath,this.storedPreviousBinding):this.clip.removeMergeFieldBinding(this.propertyPath),this.previousFieldName&&i.register({name:this.previousFieldName,defaultValue:this.storedPreviousValue},{silent:!0}),(this.propertyPath==="asset.src"||this.propertyPath.endsWith(".src"))&&await this.clip.reloadAsset(),this.clip.reconfigureAfterRestore(),this.clip.draw(),t.emitEvent(ue.MergeFieldRemoved,{propertyPath:this.propertyPath,fieldName:this.previousFieldName,trackIndex:this.trackIndex,clipIndex:this.clipIndex})}}class ch{curves={};constructor(){this.initializeCurves()}initializeCurves(){this.curves={smooth:[[.5,0],[.5,1]],ease:[[.25,.1],[.25,1]],easeIn:[[.42,0],[1,1]],easeOut:[[0,0],[.58,1]],easeInOut:[[.42,0],[.58,1]],easeInQuad:[[.55,.085],[.68,.53]],easeInCubic:[[.55,.055],[.675,.19]],easeInQuart:[[.895,.03],[.685,.22]],easeInQuint:[[.755,.05],[.855,.06]],easeInSine:[[.47,0],[.745,.715]],easeInExpo:[[.95,.05],[.795,.035]],easeInCirc:[[.6,.04],[.98,.335]],easeInBack:[[.6,-.28],[.735,.045]],easeOutQuad:[[.25,.46],[.45,.94]],easeOutCubic:[[.215,.61],[.355,1]],easeOutQuart:[[.165,.84],[.44,1]],easeOutQuint:[[.23,1],[.32,1]],easeOutSine:[[.39,.575],[.565,1]],easeOutExpo:[[.19,1],[.22,1]],easeOutCirc:[[.075,.82],[.165,1]],easeOutBack:[[.175,.885],[.32,1.275]],easeInOutQuad:[[.455,.03],[.515,.955]],easeInOutCubic:[[.645,.045],[.355,1]],easeInOutQuart:[[.77,0],[.175,1]],easeInOutQuint:[[.86,0],[.07,1]],easeInOutSine:[[.445,.05],[.55,.95]],easeInOutExpo:[[1,0],[0,1]],easeInOutCirc:[[.785,.135],[.15,.86]],easeInOutBack:[[.68,-.55],[.265,1.55]]}}getValue(t,i,a,s){const r=this.curves[s??""]??this.curves.ease,[[n,o],[l,c]]=r,f=a+(3*n-3*l+1)*a*(1-a),u=t,h=t+(i-t)*o,m=t+(i-t)*c,b=i,M=f,G=1-M;return G**3*u+3*G**2*M*h+3*G*M**2*m+M**3*b}}class os{property;length;cubicBuilder;constructor(t,i,a=0){this.property=this.createKeyframes(t,i,a),this.length=i,this.cubicBuilder=new ch}getValue(t){const i=this.property.find(s=>t>=s.start&&t<s.start+s.length);if(!i){if(this.property.length>0){if(t>=this.length)return this.property[this.property.length-1].to;if(t<0)return this.property[0].from}return 1}const a=(t-i.start)/i.length;switch(i.interpolation){case"bezier":return this.cubicBuilder.getValue(i.from,i.to,a,i.easing);case"constant":return i.from;case"linear":default:return i.from+(i.to-i.from)*a}}createKeyframes(t,i,a=0){if(typeof t=="number")return[{start:0,length:i,from:t,to:t}];if(!t.length)throw new Error("Keyframes should have at least one value.");const s=this.createNormalizedKeyframes(t);try{this.validateKeyframes(s)}catch(r){console.warn("Keyframe configuration issues detected:",r)}return this.insertFillerKeyframes(s,i,a)}createNormalizedKeyframes(t){return t.filter(i=>typeof i.start=="number"&&typeof i.length=="number").toSorted((i,a)=>i.start-a.start).map(i=>({start:i.start,length:i.length,from:typeof i.from=="number"?i.from:0,to:typeof i.to=="number"?i.to:0,interpolation:i.interpolation,easing:i.easing}))}validateKeyframes(t){for(let i=0;i<t.length;i+=1){const a=t[i],s=t[i+1];if(!s){if(a.start+a.length>this.length)throw new Error("Last keyframe exceeds the maximum duration.");break}if(a.start+a.length>s.start)throw new Error("Overlapping keyframes detected.")}}insertFillerKeyframes(t,i,a=0){const s=[];for(let r=0;r<t.length;r+=1){const n=t[r],o=t[r+1];if(r===0&&n.start!==0){const f={start:0,length:n.start,from:a,to:n.from};s.push(f)}if(s.push(n),!o){if(n.start+n.length<i){const u=n.start+n.length,h={start:u,length:i-u,from:n.to,to:n.to};s.push(h)}break}if(n.start+n.length!==o.start){const f=n.start+n.length,u=o.start-f,h={start:f,length:u,from:n.to,to:o.from};s.push(h)}}return s}}class ir{static Name="AudioLoadParser";id;name;extension;validAudioExtensions;constructor(){this.id=ir.Name,this.name=ir.Name,this.extension={type:[se.ExtensionType.LoadParser],priority:se.LoaderParserPriority.Normal,ref:null},this.validAudioExtensions=["mp3","mpeg","ogg","wav"]}test(t){const i=t.split("?")[0]?.split(".").pop()??"";return this.validAudioExtensions.includes(i)}async load(t,i,a){return new Promise(s=>{const r={src:t},n=new Howl(r);n.on("load",()=>s(n)),n.on("loaderror",()=>s(null))})}unload(t){t?.unload()}}class ta{baseValue;mode;layers=[];length;clampRange;constructor(t,i,a,s){this.baseValue=t,this.length=i,this.mode=a,this.clampRange=s}addLayer(t){if(t.length===0)return;const i=this.mode==="additive"?0:1;this.layers.push(new os(t,this.length,i))}getValue(t){if(this.layers.length===0)return this.baseValue;if(this.mode==="additive"){let a=this.baseValue;for(const s of this.layers)a+=s.getValue(t);return a}let i=this.baseValue;for(const a of this.layers)i*=a.getValue(t);return this.clampRange&&(i=Math.max(this.clampRange.min,Math.min(this.clampRange.max,i))),i}}class fh{clipConfiguration;constructor(t){this.clipConfiguration=t}buildRelative(t,i){const a=[],s=[],r=[],n=[],o=[],{effect:l,length:c}=this.clipConfiguration;if(!l)return{offsetXKeyframes:a,offsetYKeyframes:s,opacityKeyframes:r,scaleKeyframes:n,rotationKeyframes:o};const f=0;switch(this.getPresetName()){case"zoomIn":{const h=this.getZoomSpeed();n.push({from:1,to:h,start:f,length:c,interpolation:"linear"});break}case"zoomOut":{const h=this.getZoomSpeed();n.push({from:h,to:1,start:f,length:c,interpolation:"linear"});break}case"slideLeft":{const h=this.getFittedSize(t,i);let m=this.getSlideStart();const b=t.width+t.width*m*2;if(h.width<b){const M=b/h.width;n.push({from:M,to:M,start:f,length:c,interpolation:"linear"})}else m=(h.width-t.width)/2/t.width;a.push({from:m,to:-m,start:f,length:c});break}case"slideRight":{const h=this.getFittedSize(t,i);let m=this.getSlideStart();const b=t.width+t.width*m*2;if(h.width<b){const M=b/h.width;n.push({from:M,to:M,start:f,length:c,interpolation:"linear"})}else m=(h.width-t.width)/2/t.width;a.push({from:-m,to:m,start:f,length:c});break}case"slideUp":{const h=this.getFittedSize(t,i);let m=this.getSlideStart();const b=t.height+t.height*m*2;if(h.height<b){const M=b/h.height;n.push({from:M,to:M,start:f,length:c,interpolation:"linear"})}else m=(h.height-t.height)/2/t.height;s.push({from:m,to:-m,start:f,length:c});break}case"slideDown":{const h=this.getFittedSize(t,i);let m=this.getSlideStart();const b=t.height+t.height*m*2;if(h.height<b){const M=b/h.height;n.push({from:M,to:M,start:f,length:c,interpolation:"linear"})}else m=(h.height-t.height)/2/t.height;s.push({from:-m,to:m,start:f,length:c});break}}return{offsetXKeyframes:a,offsetYKeyframes:s,opacityKeyframes:r,scaleKeyframes:n,rotationKeyframes:o}}getPresetName(){const[t]=(this.clipConfiguration.effect??"").split(/(Slow|Fast)/);return t}getZoomSpeed(){const[t,i]=(this.clipConfiguration.effect??"").split(/(Slow|Fast)/);if(t.startsWith("zoom"))switch(i){case"Slow":return 1.1;case"Fast":return 1.7;default:return 1.3}return 0}getSlideStart(){const[t,i]=(this.clipConfiguration.effect??"").split(/(Slow|Fast)/);if(t.startsWith("slide"))switch(i){case"Slow":return .03;case"Fast":return .2;default:return .12}return 0}getFittedSize(t,i){switch(this.clipConfiguration.fit??"crop"){case"cover":case"crop":{const s=Math.max(t.width/i.width,t.height/i.height);return{width:i.width*s,height:i.height*s}}case"contain":{const s=Math.min(t.width/i.width,t.height/i.height);return{width:i.width*s,height:i.height*s}}case"none":default:return i}}}class uh{clipConfiguration;constructor(t){this.clipConfiguration=t}buildRelative(){return{in:this.buildInPresetRelative(),out:this.buildOutPresetRelative()}}buildInPresetRelative(){const t=[],i=[],a=[],s=[],r=[],n=[];if(!this.clipConfiguration.transition?.in)return{offsetXKeyframes:t,offsetYKeyframes:i,opacityKeyframes:a,scaleKeyframes:s,rotationKeyframes:r,maskXKeyframes:n};const o=0,l=this.getInPresetLength();switch(this.getInPresetName()){case"fade":{a.push({from:0,to:1,start:o,length:l,interpolation:"bezier",easing:"ease"});break}case"zoom":{s.push({from:10,to:1,start:o,length:l,interpolation:"bezier",easing:"easeIn"}),a.push({from:0,to:1,start:o,length:l,interpolation:"bezier",easing:"easeIn"});break}case"slideLeft":{t.push({from:.025,to:0,start:o,length:l,interpolation:"linear"}),a.push({from:0,to:1,start:o,length:l,interpolation:"bezier",easing:"ease"});break}case"slideRight":{t.push({from:-.025,to:0,start:o,length:l,interpolation:"linear"}),a.push({from:0,to:1,start:o,length:l,interpolation:"bezier",easing:"ease"});break}case"slideUp":{i.push({from:.025,to:0,start:o,length:l,interpolation:"linear"}),a.push({from:0,to:1,start:o,length:l,interpolation:"bezier",easing:"ease"});break}case"slideDown":{i.push({from:-.025,to:0,start:o,length:l,interpolation:"linear"}),a.push({from:0,to:1,start:o,length:l,interpolation:"bezier",easing:"ease"});break}case"carouselLeft":{t.push({from:1,to:0,start:o,length:l,interpolation:"linear"});break}case"carouselRight":{t.push({from:-1,to:0,start:o,length:l,interpolation:"linear"});break}case"carouselUp":{i.push({from:-1.05,to:0,start:o,length:l,interpolation:"linear"});break}case"carouselDown":{i.push({from:1.05,to:0,start:o,length:l,interpolation:"linear"});break}case"reveal":case"wipeRight":{n.push({from:0,to:1,start:o,length:l,interpolation:"bezier",easing:"ease"});break}case"wipeLeft":{n.push({from:1,to:0,start:o,length:l,interpolation:"bezier",easing:"ease"});break}}return{offsetXKeyframes:t,offsetYKeyframes:i,opacityKeyframes:a,scaleKeyframes:s,rotationKeyframes:r,maskXKeyframes:n}}buildOutPresetRelative(){const t=[],i=[],a=[],s=[],r=[],n=[];if(!this.clipConfiguration.transition?.out)return{offsetXKeyframes:t,offsetYKeyframes:i,opacityKeyframes:a,scaleKeyframes:s,rotationKeyframes:r,maskXKeyframes:n};const o=this.getOutPresetLength(),l=this.clipConfiguration.length-o;switch(this.getOutPresetName()){case"fade":{a.push({from:1,to:0,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"zoom":{s.push({from:1,to:10,start:l,length:o,interpolation:"bezier",easing:"easeOut"}),a.push({from:1,to:0,start:l,length:o,interpolation:"bezier",easing:"easeOut"});break}case"slideLeft":{t.push({from:0,to:-.025,start:l,length:o,interpolation:"bezier",easing:"ease"}),a.push({from:1,to:0,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"slideRight":{t.push({from:0,to:.025,start:l,length:o,interpolation:"bezier",easing:"ease"}),a.push({from:1,to:0,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"slideUp":{i.push({from:0,to:-.025,start:l,length:o,interpolation:"bezier",easing:"ease"}),a.push({from:1,to:0,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"slideDown":{i.push({from:0,to:.025,start:l,length:o,interpolation:"bezier",easing:"ease"}),a.push({from:1,to:0,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"carouselLeft":{t.push({from:0,to:-1,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"carouselRight":{t.push({from:0,to:1,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"carouselUp":{i.push({from:0,to:1.1,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"carouselDown":{i.push({from:0,to:-1.1,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"reveal":case"wipeRight":{n.push({from:1,to:0,start:l,length:o,interpolation:"bezier",easing:"ease"});break}case"wipeLeft":{n.push({from:0,to:1,start:l,length:o,interpolation:"bezier",easing:"ease"});break}}return{offsetXKeyframes:t,offsetYKeyframes:i,opacityKeyframes:a,scaleKeyframes:s,rotationKeyframes:r,maskXKeyframes:n}}getInPresetName(){const[t]=(this.clipConfiguration.transition?.in??"").split(/(Slow|Fast|VeryFast)/);return t}getOutPresetName(){const[t]=(this.clipConfiguration.transition?.out??"").split(/(Slow|Fast|VeryFast)/);return t}getInPresetLength(){const t=this.clipConfiguration.transition?.in??"",[i,a]=t.split(/(Slow|Fast|VeryFast)/),s=i.startsWith("carousel"),r=i.startsWith("slide");if(i==="zoom")return .4;switch(a){case"Slow":return 2;case"Fast":return s||r?.25:.5;case"VeryFast":return .25;default:return s||r?.5:1}}getOutPresetLength(){const t=this.clipConfiguration.transition?.out??"",[i,a]=t.split(/(Slow|Fast|VeryFast)/),s=i.startsWith("carousel"),r=i.startsWith("slide");if(i==="zoom")return .4;switch(a){case"Slow":return 2;case"Fast":return s||r?.25:.5;case"VeryFast":return .25;default:return s||r?.5:1}}}function dh(e,t,i){const a=t.width/e.width,s=t.height/e.height;switch(i??"crop"){case"crop":case"cover":return Math.max(a,s);case"contain":return Math.min(a,s);case"none":default:return 1}}function hh(e,t,i,a,s){if(s)return{x:a,y:a};if(e.width===0||e.height===0)return{x:a,y:a};const r=t.width/e.width,n=t.height/e.height;switch(i??"crop"){case"contain":{const o=Math.min(r,n)*a;return{x:o,y:o}}case"crop":{const o=Math.max(r,n)*a;return{x:o,y:o}}case"cover":return{x:r*a,y:n*a};case"none":default:return{x:a,y:a}}}function ph(e,t,i){const a=t.width/2,s=t.height/2;switch(i??"crop"){case"cover":{const r=t.width/e.width,n=t.height/e.height;return{scaleX:r,scaleY:n,positionX:a,positionY:s}}case"crop":{const r=Math.max(t.width/e.width,t.height/e.height);return{scaleX:r,scaleY:r,positionX:a,positionY:s}}case"contain":{const r=Math.min(t.width/e.width,t.height/e.height);return{scaleX:r,scaleY:r,positionX:a,positionY:s}}case"none":default:return{scaleX:1,scaleY:1,positionX:a,positionY:s}}}let gh=class{static ButtonLeftClick=0;static ButtonRightClick=3};class mh{containerSize;constructor(t){this.containerSize=t}relativeToAbsolute(t,i,a){switch(i){case"topLeft":return{x:a.x*this.containerSize.width,y:-a.y*this.containerSize.height};case"topRight":return{x:(a.x+1)*this.containerSize.width-t.width,y:-a.y*this.containerSize.height};case"bottomLeft":return{x:a.x*this.containerSize.width,y:(-a.y+1)*this.containerSize.height-t.height};case"bottomRight":return{x:(a.x+1)*this.containerSize.width-t.width,y:(-a.y+1)*this.containerSize.height-t.height};case"left":return{x:a.x*this.containerSize.width,y:(-a.y+.5)*this.containerSize.height-t.height/2};case"right":return{x:(a.x+1)*this.containerSize.width-t.width,y:(-a.y+.5)*this.containerSize.height-t.height/2};case"top":return{x:(a.x+.5)*this.containerSize.width-t.width/2,y:-a.y*this.containerSize.height};case"bottom":return{x:(a.x+.5)*this.containerSize.width-t.width/2,y:(-a.y+1)*this.containerSize.height-t.height};case"center":default:return{x:(a.x+.5)*this.containerSize.width-t.width/2,y:(-a.y+.5)*this.containerSize.height-t.height/2}}}absoluteToRelative(t,i,a){switch(i){case"topLeft":return{x:a.x/this.containerSize.width,y:-(a.y/this.containerSize.height)};case"topRight":return{x:(a.x+t.width)/this.containerSize.width-1,y:-(a.y/this.containerSize.height)};case"bottomLeft":return{x:a.x/this.containerSize.width,y:-((a.y+t.height)/this.containerSize.height-1)};case"bottomRight":return{x:(a.x+t.width)/this.containerSize.width-1,y:-((a.y+t.height)/this.containerSize.height-1)};case"left":return{x:a.x/this.containerSize.width,y:-((a.y+t.height/2)/this.containerSize.height-.5)};case"right":return{x:(a.x+t.width)/this.containerSize.width-1,y:-((a.y+t.height/2)/this.containerSize.height-.5)};case"top":return{x:(a.x+t.width/2)/this.containerSize.width-.5,y:-(a.y/this.containerSize.height)};case"bottom":return{x:(a.x+t.width/2)/this.containerSize.width-.5,y:-((a.y+t.height)/this.containerSize.height-1)};case"center":default:return{x:(a.x+t.width/2)/this.containerSize.width-.5,y:-((a.y+t.height/2)/this.containerSize.height-.5)}}}}class Ml{container;constructor(){this.container=new se.Container}getContainer(){return this.container}}var Qe=(e=>(e.Video="video",e.Image="image",e.Audio="audio",e.Text="text",e.RichText="rich-text",e.Luma="luma",e.Html="html",e.Shape="shape",e.Caption="caption",e.Svg="svg",e))(Qe||{});class Qt extends Ml{static DiscardedFrameCount=0;layer;shouldDispose;playerType;edit;clipConfiguration;timingIntent;resolvedTiming;positionBuilder;offsetXKeyframeBuilder;offsetYKeyframeBuilder;scaleKeyframeBuilder;opacityKeyframeBuilder;rotationKeyframeBuilder;maskXKeyframeBuilder;wipeMask;contentContainer;mergeFieldBindings=new Map;constructor(t,i,a){super(),this.edit=t,this.layer=0,this.shouldDispose=!1,this.playerType=a,this.clipConfiguration=i,this.positionBuilder=new mh(t.size),this.timingIntent={start:i.start,length:i.length},this.resolvedTiming={start:i.start,length:i.length},this.wipeMask=null,this.contentContainer=new se.Container,this.getContainer().addChild(this.contentContainer)}reconfigureAfterRestore(){this.configureKeyframes()}async reloadAsset(){}configureKeyframes(){const t=this.getLength(),i=this.clipConfiguration,a=typeof i.offset?.x=="number"?i.offset.x:0,s=typeof i.offset?.y=="number"?i.offset.y:0,r=typeof i.scale=="number"?i.scale:1,n=typeof i.opacity=="number"?i.opacity:1,o=typeof i.transform?.rotate?.angle=="number"?i.transform.rotate.angle:0;if(this.offsetXKeyframeBuilder=new ta(a,t,"additive"),this.offsetYKeyframeBuilder=new ta(s,t,"additive"),this.scaleKeyframeBuilder=new ta(r,t,"multiplicative"),this.opacityKeyframeBuilder=new ta(n,t,"multiplicative",{min:0,max:1}),this.rotationKeyframeBuilder=new ta(o,t,"additive"),this.clipHasKeyframes())return;const l={...i,start:this.getStart(),length:t},c=new fh(l).buildRelative(this.edit.size,this.getSize()),f=new uh(l).buildRelative();this.offsetXKeyframeBuilder.addLayer(c.offsetXKeyframes),this.offsetYKeyframeBuilder.addLayer(c.offsetYKeyframes),this.scaleKeyframeBuilder.addLayer(c.scaleKeyframes),this.opacityKeyframeBuilder.addLayer(c.opacityKeyframes),this.rotationKeyframeBuilder.addLayer(c.rotationKeyframes),this.offsetXKeyframeBuilder.addLayer(f.in.offsetXKeyframes),this.offsetYKeyframeBuilder.addLayer(f.in.offsetYKeyframes),this.scaleKeyframeBuilder.addLayer(f.in.scaleKeyframes),this.opacityKeyframeBuilder.addLayer(f.in.opacityKeyframes),this.rotationKeyframeBuilder.addLayer(f.in.rotationKeyframes),this.offsetXKeyframeBuilder.addLayer(f.out.offsetXKeyframes),this.offsetYKeyframeBuilder.addLayer(f.out.offsetYKeyframes),this.scaleKeyframeBuilder.addLayer(f.out.scaleKeyframes),this.opacityKeyframeBuilder.addLayer(f.out.opacityKeyframes),this.rotationKeyframeBuilder.addLayer(f.out.rotationKeyframes);const u=[...f.in.maskXKeyframes,...f.out.maskXKeyframes];u.length&&(this.maskXKeyframeBuilder=new os(u,t))}async load(){this.contentContainer?.destroyed&&(this.contentContainer=new se.Container,this.getContainer().addChild(this.contentContainer)),this.getContainer().sortableChildren=!0,this.getContainer().cursor="pointer",this.getContainer().eventMode="static",this.getContainer().on?.("pointerdown",this.onPointerDown.bind(this))}update(t,i){if(this.getContainer().visible=this.isActive(),this.getContainer().zIndex=1e5-this.layer*100,!this.isActive())return;const a=this.getPivot(),s=this.getPosition(),r=this.getContainerScale();this.getContainer().scale.set(r.x,r.y),this.getContainer().pivot.set(a.x,a.y),this.getContainer().position.set(s.x+a.x,s.y+a.y);const n=this.getRotation();this.contentContainer.alpha=this.getOpacity(),this.getContainer().angle=n,this.clipConfiguration.width&&this.clipConfiguration.height&&this.applyFixedDimensions(),this.updateWipeMask(),this.shouldDiscardFrame()&&(this.contentContainer.alpha=0)}updateWipeMask(){if(!this.maskXKeyframeBuilder){this.wipeMask&&(this.getContainer().mask=null,this.wipeMask.destroy(),this.wipeMask=null);return}const t=this.maskXKeyframeBuilder.getValue(this.getPlaybackTime()),i=this.getSize();this.wipeMask||(this.wipeMask=new se.Graphics,this.getContainer().addChild(this.wipeMask),this.getContainer().mask=this.wipeMask),this.wipeMask.clear(),this.wipeMask.rect(0,0,i.width*t,i.height),this.wipeMask.fill(16777215)}draw(){this.clipConfiguration.width&&this.clipConfiguration.height&&this.applyFixedDimensions()}dispose(){this.wipeMask?.destroy(),this.wipeMask=null,this.contentContainer?.destroy()}getStart(){return this.resolvedTiming.start}getLength(){return this.resolvedTiming.length}getEnd(){return this.resolvedTiming.start+this.resolvedTiming.length}getTimingIntent(){return{...this.timingIntent}}setTimingIntent(t){t.start!==void 0&&(this.timingIntent.start=t.start),t.length!==void 0&&(this.timingIntent.length=t.length)}getResolvedTiming(){return{...this.resolvedTiming}}setResolvedTiming(t){this.resolvedTiming={...t}}convertToFixedTiming(){this.timingIntent={start:this.resolvedTiming.start,length:this.resolvedTiming.length}}setMergeFieldBinding(t,i){this.mergeFieldBindings.set(t,i)}getMergeFieldBinding(t){return this.mergeFieldBindings.get(t)}removeMergeFieldBinding(t){this.mergeFieldBindings.delete(t)}getMergeFieldBindings(){return this.mergeFieldBindings}setInitialBindings(t){this.mergeFieldBindings=new Map(t)}getExportableClip(){const t=structuredClone(this.clipConfiguration);for(const[a,{placeholder:s,resolvedValue:r}]of this.mergeFieldBindings)Aa(t,a)===r&&Un(t,a,s);const i=this.getTimingIntent();return t.start=i.start,t.length=i.length,t}getPlaybackTime(){const i=this.edit.playbackTime/1e3-this.getStart();return i<0?0:i>this.getLength()?this.getLength():i}getContentSize(){return this.getSize()}getContentContainer(){return this.contentContainer}getOpacity(){return this.opacityKeyframeBuilder?.getValue(this.getPlaybackTime())??1}getPosition(){const t={x:this.offsetXKeyframeBuilder?.getValue(this.getPlaybackTime())??0,y:this.offsetYKeyframeBuilder?.getValue(this.getPlaybackTime())??0};return this.positionBuilder.relativeToAbsolute(this.getSize(),this.clipConfiguration.position??"center",t)}getPivot(){const t=this.getSize();return{x:t.width/2,y:t.height/2}}moveBy(t,i){const a=this.getPosition(),s={x:a.x+t,y:a.y+i},r=this.positionBuilder.absoluteToRelative(this.getSize(),this.clipConfiguration.position??"center",s);this.clipConfiguration.offset||(this.clipConfiguration.offset={x:0,y:0}),this.clipConfiguration.offset.x=r.x,this.clipConfiguration.offset.y=r.y,this.offsetXKeyframeBuilder=new ta(r.x,this.getLength(),"additive"),this.offsetYKeyframeBuilder=new ta(r.y,this.getLength(),"additive")}getFitScale(){const t={width:this.clipConfiguration.width??this.edit.size.width,height:this.clipConfiguration.height??this.edit.size.height},i=this.getContentSize(),a=this.clipConfiguration.fit??"crop";return dh(i,t,a)}getScale(){return(this.scaleKeyframeBuilder?.getValue(this.getPlaybackTime())??1)*this.getFitScale()}getContainerScale(){const t=this.scaleKeyframeBuilder?.getValue(this.getPlaybackTime())??1,i=this.getContentSize(),a=this.clipConfiguration.fit??"crop",s=!!(this.clipConfiguration.width&&this.clipConfiguration.height);return hh(i,this.edit.size,a,t,s)}getRotation(){return this.rotationKeyframeBuilder?.getValue(this.getPlaybackTime())??0}isActive(){const t=this.edit.playbackTime/1e3;return t>=this.getStart()&&t<this.getEnd()}shouldDiscardFrame(){return this.getPlaybackTime()<Qt.DiscardedFrameCount}onPointerDown(t){t.button===gh.ButtonLeftClick&&this.edit.events.emit(Na.CanvasClipClicked,{player:this})}clipHasKeyframes(){return[this.clipConfiguration.scale,this.clipConfiguration.offset?.x,this.clipConfiguration.offset?.y,this.clipConfiguration.transform?.rotate?.angle].some(t=>t&&typeof t!="number")}applyFixedDimensions(){const t=this.clipConfiguration.width,i=this.clipConfiguration.height;if(!t||!i)return;const a=this.contentContainer.children.find(h=>h instanceof se.Sprite);if(!a?.texture)return;const s=a.texture.width,r=a.texture.height,n=this.clipConfiguration.fit||"crop";let o=this.contentContainer.mask;o||(o=new se.Graphics,this.contentContainer.addChild(o),this.contentContainer.mask=o),o.clear(),o.rect(0,0,t,i),o.fill(16777215);const l=this.scaleKeyframeBuilder?.getValue(this.getPlaybackTime())??1;a.anchor.set(.5,.5);const u=ph({width:s,height:r},{width:t,height:i},n);a.scale.set(u.scaleX,u.scaleY),a.position.set(u.positionX,u.positionY),this.contentContainer.scale.set(l,l),this.contentContainer.position.set(t/2*(1-l),i/2*(1-l))}applyAnchorPositioning(t,i,a,s){const r=s.width,n=s.height;if(!!s.mask){s.position.set(0,0);return}const l=(t??"center").toLowerCase();let c=0,f=0;l.includes("left")||l==="left"?c=0:l.includes("right")||l==="right"?c=i-r:c=(i-r)/2,l.includes("top")||l==="top"?f=0:l.includes("bottom")||l==="bottom"?f=a-n:f=(a-n)/2,s.position.set(c,f)}supportsEdgeResize(){return!1}onDimensionsChanged(){}notifyDimensionsChanged(){this.onDimensionsChanged()}}class Rl extends Qt{audioResource;isPlaying;volumeKeyframeBuilder;syncTimer;constructor(t,i){super(t,i,Qe.Audio),this.audioResource=null,this.isPlaying=!1,this.syncTimer=0}async load(){await super.load();const t=this.clipConfiguration.asset,i=t.src,a={src:i,parser:ir.Name},s=await this.edit.assetLoader.load(i,a);if(!(s instanceof Qd.Howl))throw new Error(`Invalid audio source '${t.src}'.`);this.audioResource=s;const n=typeof t.volume=="number"?t.volume:1;this.volumeKeyframeBuilder=new os(this.createVolumeKeyframes(t,n),this.getLength(),n),this.configureKeyframes()}update(t,i){super.update(t,i);const{trim:a=0}=this.clipConfiguration.asset;if(this.syncTimer+=i,this.getContainer().alpha=0,!this.audioResource)return;const s=this.edit.isPlaying&&this.isActive(),r=this.getPlaybackTime();s&&(this.isPlaying||(this.isPlaying=!0,this.audioResource.seek(r+a),this.audioResource.play()),this.audioResource.volume()!==this.getVolume()&&this.audioResource.volume(this.getVolume()),Math.abs(this.audioResource.seek()-a-r)>.1&&(this.audioResource.seek(r+a),this.edit.recordSyncCorrection())),this.isPlaying&&!s&&(this.isPlaying=!1,this.audioResource.pause());const n=this.syncTimer>100;!this.edit.isPlaying&&this.isActive()&&n&&(this.syncTimer=0,this.audioResource.seek(r+a))}draw(){super.draw()}dispose(){this.audioResource?.unload(),this.audioResource=null}reconfigureAfterRestore(){super.reconfigureAfterRestore();const t=this.clipConfiguration.asset,i=typeof t.volume=="number"?t.volume:1;this.volumeKeyframeBuilder=new os(this.createVolumeKeyframes(t,i),this.getLength(),i)}getSize(){return{width:0,height:0}}getVolume(){return this.volumeKeyframeBuilder.getValue(this.getPlaybackTime())}getCurrentDrift(){if(!this.audioResource)return 0;const{trim:t=0}=this.clipConfiguration.asset,i=this.audioResource.seek(),a=this.getPlaybackTime();return Math.abs(i-t-a)}createVolumeKeyframes(t,i){const{effect:a,volume:s}=t;if(!a||a==="none"||Array.isArray(s))return s??1;const r=this.getLength()/1e3,n=Math.min(2,r/2);return a==="fadeIn"?[{from:0,to:i,start:0,length:n}]:a==="fadeOut"?[{from:i,to:0,start:r-n,length:n}]:[{from:0,to:i,start:0,length:n},{from:i,to:0,start:r-n,length:n}]}}function ar(e){const t=e.trim().replace(",","."),i=t.split(":");if(i.length===3){const a=parseInt(i[0],10),s=parseInt(i[1],10),r=parseFloat(i[2]);return a*3600+s*60+r}if(i.length===2){const a=parseInt(i[0],10),s=parseFloat(i[1]);return a*60+s}return parseFloat(t)||0}function yh(e){const t=[],i=e.split(/\r?\n/);let a=0;for(;a<i.length&&!i[a].includes("-->");)a+=1;for(;a<i.length;){const s=i[a].trim();if(s.includes("-->")){const[r,n]=s.split("-->").map(f=>f.trim().split(" ")[0]),o=ar(r),l=ar(n),c=[];for(a+=1;a<i.length&&i[a].trim()!==""&&!i[a].includes("-->");){const f=i[a].trim();f.startsWith("NOTE")||c.push(f),a+=1}c.length>0&&t.push({start:o,end:l,text:c.join(`
|
|
2
|
+
`)})}else a+=1}return t}function bh(e){const t=[],i=e.split(/\r?\n/);let a=0;for(;a<i.length;){const s=i[a].trim();if(/^\d+$/.test(s)||s==="")a+=1;else if(s.includes("-->")){const[r,n]=s.split("-->").map(f=>f.trim()),o=ar(r),l=ar(n),c=[];for(a+=1;a<i.length&&i[a].trim()!=="";)c.push(i[a].trim()),a+=1;c.length>0&&t.push({start:o,end:l,text:c.join(`
|
|
3
|
+
`)})}else a+=1}return t}function wh(e){return e.trim().startsWith("WEBVTT")?yh(e):bh(e)}function vh(e,t){return e.find(i=>t>=i.start&&t<=i.end)??null}const xh=`
|
|
4
|
+
let transcriber = null;
|
|
5
|
+
let currentModelId = null;
|
|
6
|
+
|
|
7
|
+
function postWorkerMessage(message) {
|
|
8
|
+
self.postMessage(message);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
self.onmessage = async (event) => {
|
|
12
|
+
const { type, audioData, modelId } = event.data;
|
|
13
|
+
if (type !== "transcribe") return;
|
|
14
|
+
|
|
15
|
+
try {
|
|
16
|
+
if (!transcriber || currentModelId !== modelId) {
|
|
17
|
+
postWorkerMessage({ type: "progress", status: "loading", progress: 0, message: "Loading AI model... 0%" });
|
|
18
|
+
|
|
19
|
+
const { pipeline } = await import("https://cdn.jsdelivr.net/npm/@huggingface/transformers@3");
|
|
20
|
+
|
|
21
|
+
transcriber = await pipeline("automatic-speech-recognition", modelId, {
|
|
22
|
+
dtype: {
|
|
23
|
+
encoder_model: "q8",
|
|
24
|
+
decoder_model_merged: "q8",
|
|
25
|
+
},
|
|
26
|
+
progress_callback: (data) => {
|
|
27
|
+
if (data.progress !== undefined) {
|
|
28
|
+
const pct = Math.round(data.progress);
|
|
29
|
+
postWorkerMessage({ type: "progress", status: "loading", progress: pct, message: "Loading AI model... " + pct + "%" });
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
currentModelId = modelId;
|
|
34
|
+
postWorkerMessage({ type: "progress", status: "loading", progress: 100, message: "AI model loaded" });
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
postWorkerMessage({ type: "progress", status: "transcribing", progress: 0, message: "Transcribing audio..." });
|
|
38
|
+
|
|
39
|
+
const result = await transcriber(audioData, {
|
|
40
|
+
task: "transcribe",
|
|
41
|
+
return_timestamps: "word",
|
|
42
|
+
chunk_length_s: 30,
|
|
43
|
+
stride_length_s: 5
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
postWorkerMessage({ type: "complete", chunks: result.chunks || [] });
|
|
47
|
+
} catch (error) {
|
|
48
|
+
postWorkerMessage({ type: "error", message: error.message || "Transcription failed" });
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
`;class kh{worker=null;workerUrl=null;modelId;constructor(t={}){this.modelId=t.model??"Xenova/whisper-tiny"}async transcribe(t,i){if(!this.worker){const s=new Blob([xh],{type:"application/javascript"});this.workerUrl=URL.createObjectURL(s),this.worker=new Worker(this.workerUrl,{type:"module"})}i?.({status:"loading",progress:0,message:"Loading audio..."});const a=await this.decodeAudioFromUrl(t);return i?.({status:"loading",progress:5,message:"Audio loaded, starting transcription..."}),new Promise((s,r)=>{if(!this.worker){r(new Error("Worker not initialized"));return}this.worker.onmessage=n=>{const{data:o}=n;switch(o.type){case"progress":i?.({status:o.status,progress:o.progress,message:o.message});break;case"complete":{const l=this.chunksToVTTCues(o.chunks),c=this.cuesToVTT(l);i?.({status:"complete",progress:100,message:"Transcription complete"}),s({vtt:c,cues:l});break}case"error":i?.({status:"error",progress:0,message:o.message}),r(new Error(o.message));break}},this.worker.onerror=n=>{i?.({status:"error",progress:0,message:n.message||"Worker error"}),r(new Error(n.message||"Worker error"))},this.worker.postMessage({type:"transcribe",audioData:a,modelId:this.modelId},[a.buffer])})}async decodeAudioFromUrl(t){const a=await(await fetch(t)).arrayBuffer(),s=new AudioContext({sampleRate:16e3});try{const r=await s.decodeAudioData(a);let n;if(r.numberOfChannels>1){const o=r.getChannelData(0),l=r.getChannelData(1);n=new Float32Array(o.length);for(let c=0;c<o.length;c+=1)n[c]=(o[c]+l[c])/2}else n=new Float32Array(r.getChannelData(0));return n}finally{await s.close()}}dispose(){this.worker&&(this.worker.terminate(),this.worker=null),this.workerUrl&&(URL.revokeObjectURL(this.workerUrl),this.workerUrl=null)}chunksToVTTCues(t){if(!t||t.length===0)return[];const i=[],a=8;let s=[];for(const r of t){const[n,o]=r.timestamp,l=r.text.trim();l?(s.push({text:l,start:n,end:o}),s.length>=a&&(i.push(this.createCueFromWords(s)),s=[])):s.length>0&&(i.push(this.createCueFromWords(s)),s=[])}return s.length>0&&i.push(this.createCueFromWords(s)),i}createCueFromWords(t){return{start:t[0].start,end:t[t.length-1].end,text:t.map(i=>i.text).join(" ")}}cuesToVTT(t){const i=["WEBVTT",""];for(const a of t){const s=this.formatVTTTimestamp(a.start),r=this.formatVTTTimestamp(a.end);i.push(`${s} --> ${r}`),i.push(a.text),i.push("")}return i.join(`
|
|
52
|
+
`)}formatVTTTimestamp(t){const i=Math.floor(t/3600),a=Math.floor(t%3600/60),s=t%60,r=i.toString().padStart(2,"0"),n=a.toString().padStart(2,"0"),o=s.toFixed(3).padStart(6,"0");return`${r}:${n}:${o}`}}const Dl=/^alias:\/\/([a-zA-Z0-9_-]+)$/;function Nh(e){return typeof e!="string"?!1:Dl.test(e)}function Ah(e){if(typeof e!="string")return null;const t=e.match(Dl);return t?t[1]:null}function Ch(e,t){for(let i=0;i<e.timeline.tracks.length;i+=1){const a=e.timeline.tracks[i];for(let s=0;s<a.clips.length;s+=1){const r=a.clips[s];if(r.alias===t)return{clip:r,trackIndex:i,clipIndex:s}}}return null}function Sh(e){return e&&(e.type==="video"||e.type==="audio")?e.src??null:null}async function Vh(e,t,i){const a=Ah(e);if(!a)throw new Error(`Invalid alias reference: ${e}`);const s=Ch(t,a);if(!s)throw new Error(`Alias "${a}" not found in timeline`);const r=Sh(s.clip.asset);if(!r)throw new Error(`Cannot extract audio from clip "${a}" - asset type ${s.clip.asset?.type} is not supported`);const o=await new kh().transcribe(r,i),l=new Blob([o.vtt],{type:"text/vtt"});return{vttUrl:URL.createObjectURL(l),vttContent:o.vtt}}function _h(e){e.startsWith("blob:")&&URL.revokeObjectURL(e)}class ls{static Name="SubtitleLoadParser";id;name;extension;validExtensions;constructor(){this.id=ls.Name,this.name=ls.Name,this.extension={type:[se.ExtensionType.LoadParser],priority:se.LoaderParserPriority.Normal,ref:null},this.validExtensions=["srt","vtt"]}test(t){const i=t.split("?")[0]?.split(".").pop()?.toLowerCase()??"";return this.validExtensions.includes(i)}async load(t){try{const i=await fetch(t);if(!i.ok)return null;const a=await i.text();return{content:a,cues:wh(a)}}catch{return null}}unload(t){}}var Ih=`in vec2 aPosition;
|
|
53
|
+
out vec2 vTextureCoord;
|
|
54
|
+
|
|
55
|
+
uniform vec4 uInputSize;
|
|
56
|
+
uniform vec4 uOutputFrame;
|
|
57
|
+
uniform vec4 uOutputTexture;
|
|
58
|
+
|
|
59
|
+
vec4 filterVertexPosition( void )
|
|
60
|
+
{
|
|
61
|
+
vec2 position = aPosition * uOutputFrame.zw + uOutputFrame.xy;
|
|
62
|
+
|
|
63
|
+
position.x = position.x * (2.0 / uOutputTexture.x) - 1.0;
|
|
64
|
+
position.y = position.y * (2.0*uOutputTexture.z / uOutputTexture.y) - uOutputTexture.z;
|
|
65
|
+
|
|
66
|
+
return vec4(position, 0.0, 1.0);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
vec2 filterTextureCoord( void )
|
|
70
|
+
{
|
|
71
|
+
return aPosition * (uOutputFrame.zw * uInputSize.zw);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
void main(void)
|
|
75
|
+
{
|
|
76
|
+
gl_Position = filterVertexPosition();
|
|
77
|
+
vTextureCoord = filterTextureCoord();
|
|
78
|
+
}
|
|
79
|
+
`,Th=`struct GlobalFilterUniforms {
|
|
80
|
+
uInputSize:vec4<f32>,
|
|
81
|
+
uInputPixel:vec4<f32>,
|
|
82
|
+
uInputClamp:vec4<f32>,
|
|
83
|
+
uOutputFrame:vec4<f32>,
|
|
84
|
+
uGlobalFrame:vec4<f32>,
|
|
85
|
+
uOutputTexture:vec4<f32>,
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
@group(0) @binding(0) var<uniform> gfu: GlobalFilterUniforms;
|
|
89
|
+
|
|
90
|
+
struct VSOutput {
|
|
91
|
+
@builtin(position) position: vec4<f32>,
|
|
92
|
+
@location(0) uv : vec2<f32>
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
fn filterVertexPosition(aPosition:vec2<f32>) -> vec4<f32>
|
|
96
|
+
{
|
|
97
|
+
var position = aPosition * gfu.uOutputFrame.zw + gfu.uOutputFrame.xy;
|
|
98
|
+
|
|
99
|
+
position.x = position.x * (2.0 / gfu.uOutputTexture.x) - 1.0;
|
|
100
|
+
position.y = position.y * (2.0*gfu.uOutputTexture.z / gfu.uOutputTexture.y) - gfu.uOutputTexture.z;
|
|
101
|
+
|
|
102
|
+
return vec4(position, 0.0, 1.0);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
fn filterTextureCoord( aPosition:vec2<f32> ) -> vec2<f32>
|
|
106
|
+
{
|
|
107
|
+
return aPosition * (gfu.uOutputFrame.zw * gfu.uInputSize.zw);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
fn globalTextureCoord( aPosition:vec2<f32> ) -> vec2<f32>
|
|
111
|
+
{
|
|
112
|
+
return (aPosition.xy / gfu.uGlobalFrame.zw) + (gfu.uGlobalFrame.xy / gfu.uGlobalFrame.zw);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
fn getSize() -> vec2<f32>
|
|
116
|
+
{
|
|
117
|
+
return gfu.uGlobalFrame.zw;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
@vertex
|
|
121
|
+
fn mainVertex(
|
|
122
|
+
@location(0) aPosition : vec2<f32>,
|
|
123
|
+
) -> VSOutput {
|
|
124
|
+
return VSOutput(
|
|
125
|
+
filterVertexPosition(aPosition),
|
|
126
|
+
filterTextureCoord(aPosition)
|
|
127
|
+
);
|
|
128
|
+
}`,Fh=`precision highp float;
|
|
129
|
+
in vec2 vTextureCoord;
|
|
130
|
+
out vec4 finalColor;
|
|
131
|
+
|
|
132
|
+
uniform sampler2D uTexture;
|
|
133
|
+
uniform vec2 uThickness;
|
|
134
|
+
uniform vec3 uColor;
|
|
135
|
+
uniform float uAlpha;
|
|
136
|
+
uniform float uKnockout;
|
|
137
|
+
|
|
138
|
+
uniform vec4 uInputClamp;
|
|
139
|
+
|
|
140
|
+
const float DOUBLE_PI = 2. * 3.14159265358979323846264;
|
|
141
|
+
const float ANGLE_STEP = \${ANGLE_STEP};
|
|
142
|
+
|
|
143
|
+
float outlineMaxAlphaAtPos(vec2 pos) {
|
|
144
|
+
if (uThickness.x == 0. || uThickness.y == 0.) {
|
|
145
|
+
return 0.;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
vec4 displacedColor;
|
|
149
|
+
vec2 displacedPos;
|
|
150
|
+
float maxAlpha = 0.;
|
|
151
|
+
|
|
152
|
+
for (float angle = 0.; angle <= DOUBLE_PI; angle += ANGLE_STEP) {
|
|
153
|
+
displacedPos.x = vTextureCoord.x + uThickness.x * cos(angle);
|
|
154
|
+
displacedPos.y = vTextureCoord.y + uThickness.y * sin(angle);
|
|
155
|
+
displacedColor = texture(uTexture, clamp(displacedPos, uInputClamp.xy, uInputClamp.zw));
|
|
156
|
+
maxAlpha = max(maxAlpha, displacedColor.a);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
return maxAlpha;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
void main(void) {
|
|
163
|
+
vec4 sourceColor = texture(uTexture, vTextureCoord);
|
|
164
|
+
vec4 contentColor = sourceColor * float(uKnockout < 0.5);
|
|
165
|
+
float outlineAlpha = uAlpha * outlineMaxAlphaAtPos(vTextureCoord.xy) * (1.-sourceColor.a);
|
|
166
|
+
vec4 outlineColor = vec4(vec3(uColor) * outlineAlpha, outlineAlpha);
|
|
167
|
+
finalColor = contentColor + outlineColor;
|
|
168
|
+
}
|
|
169
|
+
`,Ph=`struct OutlineUniforms {
|
|
170
|
+
uThickness:vec2<f32>,
|
|
171
|
+
uColor:vec3<f32>,
|
|
172
|
+
uAlpha:f32,
|
|
173
|
+
uAngleStep:f32,
|
|
174
|
+
uKnockout:f32,
|
|
175
|
+
};
|
|
176
|
+
|
|
177
|
+
struct GlobalFilterUniforms {
|
|
178
|
+
uInputSize:vec4<f32>,
|
|
179
|
+
uInputPixel:vec4<f32>,
|
|
180
|
+
uInputClamp:vec4<f32>,
|
|
181
|
+
uOutputFrame:vec4<f32>,
|
|
182
|
+
uGlobalFrame:vec4<f32>,
|
|
183
|
+
uOutputTexture:vec4<f32>,
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
@group(0) @binding(0) var<uniform> gfu: GlobalFilterUniforms;
|
|
187
|
+
|
|
188
|
+
@group(0) @binding(1) var uTexture: texture_2d<f32>;
|
|
189
|
+
@group(0) @binding(2) var uSampler: sampler;
|
|
190
|
+
@group(1) @binding(0) var<uniform> outlineUniforms : OutlineUniforms;
|
|
191
|
+
|
|
192
|
+
@fragment
|
|
193
|
+
fn mainFragment(
|
|
194
|
+
@builtin(position) position: vec4<f32>,
|
|
195
|
+
@location(0) uv : vec2<f32>
|
|
196
|
+
) -> @location(0) vec4<f32> {
|
|
197
|
+
let sourceColor: vec4<f32> = textureSample(uTexture, uSampler, uv);
|
|
198
|
+
let contentColor: vec4<f32> = sourceColor * (1. - outlineUniforms.uKnockout);
|
|
199
|
+
|
|
200
|
+
let outlineAlpha: f32 = outlineUniforms.uAlpha * outlineMaxAlphaAtPos(uv) * (1. - sourceColor.a);
|
|
201
|
+
let outlineColor: vec4<f32> = vec4<f32>(vec3<f32>(outlineUniforms.uColor) * outlineAlpha, outlineAlpha);
|
|
202
|
+
|
|
203
|
+
return contentColor + outlineColor;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
fn outlineMaxAlphaAtPos(uv: vec2<f32>) -> f32 {
|
|
207
|
+
let thickness = outlineUniforms.uThickness;
|
|
208
|
+
|
|
209
|
+
if (thickness.x == 0. || thickness.y == 0.) {
|
|
210
|
+
return 0.;
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
let angleStep = outlineUniforms.uAngleStep;
|
|
214
|
+
|
|
215
|
+
var displacedColor: vec4<f32>;
|
|
216
|
+
var displacedPos: vec2<f32>;
|
|
217
|
+
|
|
218
|
+
var maxAlpha: f32 = 0.;
|
|
219
|
+
var displaced: vec2<f32>;
|
|
220
|
+
var curColor: vec4<f32>;
|
|
221
|
+
|
|
222
|
+
for (var angle = 0.; angle <= DOUBLE_PI; angle += angleStep)
|
|
223
|
+
{
|
|
224
|
+
displaced.x = uv.x + thickness.x * cos(angle);
|
|
225
|
+
displaced.y = uv.y + thickness.y * sin(angle);
|
|
226
|
+
curColor = textureSample(uTexture, uSampler, clamp(displaced, gfu.uInputClamp.xy, gfu.uInputClamp.zw));
|
|
227
|
+
maxAlpha = max(maxAlpha, curColor.a);
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
return maxAlpha;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
const DOUBLE_PI: f32 = 3.14159265358979323846264 * 2.;`,Eh=Object.defineProperty,Oh=(e,t,i)=>t in e?Eh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,ia=(e,t,i)=>(Oh(e,typeof t!="symbol"?t+"":t,i),i);const sr=class ka extends ci.Filter{constructor(...t){let i=t[0]??{};typeof i=="number"&&(ci.deprecation("6.0.0","OutlineFilter constructor params are now options object. See params: { thickness, color, quality, alpha, knockout }"),i={thickness:i},t[1]!==void 0&&(i.color=t[1]),t[2]!==void 0&&(i.quality=t[2]),t[3]!==void 0&&(i.alpha=t[3]),t[4]!==void 0&&(i.knockout=t[4])),i={...ka.DEFAULT_OPTIONS,...i};const a=i.quality??.1,s=ci.GpuProgram.from({vertex:{source:Th,entryPoint:"mainVertex"},fragment:{source:Ph,entryPoint:"mainFragment"}}),r=ci.GlProgram.from({vertex:Ih,fragment:Fh.replace(/\$\{ANGLE_STEP\}/,ka.getAngleStep(a).toFixed(7)),name:"outline-filter"});super({gpuProgram:s,glProgram:r,resources:{outlineUniforms:{uThickness:{value:new Float32Array(2),type:"vec2<f32>"},uColor:{value:new Float32Array(3),type:"vec3<f32>"},uAlpha:{value:i.alpha,type:"f32"},uAngleStep:{value:0,type:"f32"},uKnockout:{value:i.knockout?1:0,type:"f32"}}}}),ia(this,"uniforms"),ia(this,"_thickness"),ia(this,"_quality"),ia(this,"_color"),this.uniforms=this.resources.outlineUniforms.uniforms,this.uniforms.uAngleStep=ka.getAngleStep(a),this._color=new ci.Color,this.color=i.color??0,Object.assign(this,i)}apply(t,i,a,s){this.uniforms.uThickness[0]=this.thickness/i.source.width,this.uniforms.uThickness[1]=this.thickness/i.source.height,t.applyFilter(this,i,a,s)}static getAngleStep(t){return parseFloat((Math.PI*2/Math.max(t*ka.MAX_SAMPLES,ka.MIN_SAMPLES)).toFixed(7))}get thickness(){return this._thickness}set thickness(t){this._thickness=this.padding=t}get color(){return this._color.value}set color(t){this._color.setValue(t);const[i,a,s]=this._color.toArray();this.uniforms.uColor[0]=i,this.uniforms.uColor[1]=a,this.uniforms.uColor[2]=s}get alpha(){return this.uniforms.uAlpha}set alpha(t){this.uniforms.uAlpha=t}get quality(){return this._quality}set quality(t){this._quality=t,this.uniforms.uAngleStep=ka.getAngleStep(t)}get knockout(){return this.uniforms.uKnockout===1}set knockout(t){this.uniforms.uKnockout=t?1:0}};ia(sr,"DEFAULT_OPTIONS",{thickness:1,color:0,alpha:1,quality:.1,knockout:!1}),ia(sr,"MIN_SAMPLES",1),ia(sr,"MAX_SAMPLES",100);let cs=sr;class rr extends Qt{static loadedFonts=new Set;cues=[];currentCue=null;background=null;text=null;vttBlobUrl=null;pendingTranscription=null;isTranscribing=!1;constructor(t,i){super(t,i,Qe.Caption)}async load(){await super.load();const t=this.clipConfiguration.asset,i=t.font?.family??"Open Sans";if(await this.loadFont(i),Nh(t.src)?(this.isTranscribing=!0,this.pendingTranscription=this.loadTranscriptionInBackground(t.src)):await this.loadSubtitles(t.src),this.background=new se.Graphics,this.contentContainer.addChild(this.background),this.text=new se.Text({text:"",style:this.createTextStyle(t)}),this.text.visible=!1,t.stroke?.width&&t.stroke.width>0&&t.stroke.color){const a=new cs({thickness:t.stroke.width,color:t.stroke.color});this.text.filters=[a]}this.contentContainer.addChild(this.text),this.configureKeyframes()}async loadTranscriptionInBackground(t){const i=this.clipConfiguration.alias??"";try{const a=this.edit.getOriginalEdit();if(!a)throw new Error("Cannot resolve alias: edit not loaded");const s=await Vh(t,a,o=>{this.edit.events.emit(ue.TranscriptionProgress,{clipAlias:i,...o})});this.vttBlobUrl=s.vttUrl;const r={src:s.vttUrl,parser:ls.Name},n=await this.edit.assetLoader.load(s.vttUrl,r);n&&(this.cues=n.cues),this.isTranscribing=!1,this.edit.events.emit(ue.TranscriptionCompleted,{clipAlias:i,cueCount:this.cues.length})}catch(a){this.isTranscribing=!1,console.error("Failed to transcribe:",a),this.edit.events.emit(ue.TranscriptionFailed,{clipAlias:i,error:a instanceof Error?a.message:"Transcription failed"})}}isTranscriptionPending(){return this.isTranscribing}async waitForTranscription(){this.pendingTranscription&&await this.pendingTranscription}update(t,i){if(super.update(t,i),!this.text)return;const a=this.clipConfiguration.asset,s=a.trim??0,r=this.getPlaybackTime()+s,n=vh(this.cues,r);n!==this.currentCue&&(this.currentCue=n,this.updateDisplay(n,a))}dispose(){super.dispose(),this.background?.destroy(),this.background=null,this.text?.destroy(),this.text=null,this.vttBlobUrl&&(_h(this.vttBlobUrl),this.vttBlobUrl=null),this.cues=[],this.currentCue=null}getSize(){const t=this.clipConfiguration.asset;return{width:this.clipConfiguration.width??t.width??this.edit.size.width,height:this.clipConfiguration.height??t.height??this.edit.size.height}}getFitScale(){return 1}getContainerScale(){const t=this.getScale();return{x:t,y:t}}async loadSubtitles(t){try{const i={src:t,parser:ls.Name},a=await this.edit.assetLoader.load(t,i);a?this.cues=a.cues:(console.error("Failed to load subtitles"),this.cues=[])}catch(i){console.error("Failed to load subtitles:",i),this.cues=[]}}createTextStyle(t){const i=t.font?.family??"Open Sans",{baseFontFamily:a,fontWeight:s}=Ni(i),r=t.font?.size??32,{width:n}=this.getSize();return new se.TextStyle({fontFamily:a,fontSize:r,fill:t.font?.color??"#ffffff",fontWeight:s.toString(),wordWrap:!0,wordWrapWidth:n*.9,lineHeight:(t.font?.lineHeight??1.2)*r,align:t.alignment?.horizontal??"center"})}updateDisplay(t,i){if(!(!this.text||!this.background)){if(!t){this.text.visible=!1,this.background.clear();return}this.text.text=t.text,this.text.visible=!0,this.positionText(i),this.drawBackground(i)}}positionText(t){if(!this.text)return;const i=t.alignment?.horizontal??"center",a=t.alignment?.vertical??"bottom",{width:s,height:r}=this.getSize(),n=t.background?.padding??10;let o=s/2-this.text.width/2;i==="left"?o=n:i==="right"&&(o=s-this.text.width-n);let l=r*.9;a==="top"?l=n:a==="center"&&(l=r/2-this.text.height/2),this.text.position.set(o,l)}drawBackground(t){if(!this.background||!this.text||!this.text.visible){this.background?.clear();return}const i=t.background;if(!i?.color){this.background.clear();return}const a=i.padding??10,s=i.borderRadius??4,r=this.text.x-a,n=this.text.y-a,o=this.text.width+a*2,l=this.text.height+a*2;this.background.clear(),this.background.fillStyle={color:i.color,alpha:i.opacity??.8},s>0?this.background.roundRect(r,n,o,l,s):this.background.rect(r,n,o,l),this.background.fill()}async loadFont(t){const{baseFontFamily:i,fontWeight:a}=Ni(t),s=`${i}-${a}`;if(rr.loadedFonts.has(s))return;const r=zn(t);if(r){const n=new FontFace(i,`url(${r})`,{weight:a.toString()});await n.load(),document.fonts.add(n),rr.loadedFonts.add(s)}}}class Mh extends Qt{background;text;constructor(t,i){super(t,i,Qe.Html),this.background=null,this.text=null}async load(){await super.load();const t=this.clipConfiguration.asset,i=await this.parseDocument();if(!i)return;const a=new se.Graphics;i.background.color&&(a.fillStyle={color:i.background.color,alpha:i.background.opacity??1},a.rect(0,0,t.width??this.edit.size.width,t.height??this.edit.size.height),a.fill());const s=new se.Text;s.text=i.text;const{horizontal:r,vertical:n}=i.alignment;s.style={fontFamily:i.font?.family??"Open Sans",fontSize:i.font?.size??32,fill:i.font?.color??"#ffffff",fontWeight:(i.font?.weight??"400").toString(),wordWrap:!0,wordWrapWidth:t.width??this.edit.size.width,lineHeight:(i.font?.lineHeight??1)*(i.font?.size??32),align:r};let o=(t.width??this.edit.size.width)/2-s.width/2,l=(t.height??this.edit.size.height)/2-s.height/2;if(r==="left"&&(o=0),r==="right"&&(o=(t.width??this.edit.size.width)-s.width),n==="top"&&(l=0),n==="bottom"&&(l=(t.height??this.edit.size.height)-s.height),s.position={x:o,y:l},i.stroke.color&&i.stroke.width){const c=new cs({thickness:i.stroke.width,color:i.stroke.color});s.filters=[c]}this.background=a,this.text=s,this.contentContainer.addChild(a),this.contentContainer.addChild(s),this.configureKeyframes()}update(t,i){super.update(t,i)}draw(){super.draw()}dispose(){super.dispose(),this.background?.destroy(),this.background=null,this.text?.destroy(),this.text=null}getSize(){const t=this.clipConfiguration.asset;return{width:t.width??this.edit.size.width,height:t.height??this.edit.size.height}}getFitScale(){return 1}async parseDocument(){const t=this.clipConfiguration.asset,{html:i,css:a="",position:s}=t;if(!i.includes('data-html-type="text"'))return console.warn("Unsupported html format."),null;const n=new DOMParser().parseFromString(i,"text/html").body.textContent??"",l=(await new CSSStyleSheet().replace(a)).cssRules[0],c={text:n,font:{},alignment:{},background:{},stroke:{}};if(l?.constructor.name!=="CSSStyleRule"||!("style"in l))return console.warn("Unsupported css format."),c;const f=l.style,u=this.parseAlignment(s??"center");c.font={color:f.color.length?f.color:void 0,family:f.fontFamily.length?f.fontFamily:void 0,size:f.fontSize.length?parseInt(f.fontSize,10):void 0,weight:f.fontWeight.length?parseInt(f.fontWeight,10):void 0,lineHeight:f.lineHeight.length?parseInt(f.lineHeight,10):void 0},c.alignment=u;let h="";return f.background.length&&(h=f.background),f.backgroundColor.length&&(h=f.backgroundColor),c.background={color:h.length?h:void 0,opacity:f.opacity.length?parseInt(f.opacity,10):void 0},c.stroke={width:f.strokeWidth.length?parseInt(f.strokeWidth,10):void 0,color:f.stroke.length?f.stroke:void 0},c}parseAlignment(t){switch(t){case"topLeft":return{horizontal:"left",vertical:"top"};case"top":return{horizontal:"center",vertical:"top"};case"topRight":return{horizontal:"right",vertical:"top"};case"left":return{horizontal:"left",vertical:"center"};case"right":return{horizontal:"right",vertical:"center"};case"bottomLeft":return{horizontal:"left",vertical:"bottom"};case"bottom":return{horizontal:"center",vertical:"bottom"};case"bottomRight":return{horizontal:"right",vertical:"bottom"};case"center":default:return{horizontal:"center",vertical:"center"}}}}class Rh extends Qt{texture;sprite;constructor(t,i){super(t,i,Qe.Image),this.texture=null,this.sprite=null}async load(){await super.load(),await this.loadTexture(),this.configureKeyframes()}update(t,i){super.update(t,i)}draw(){super.draw()}dispose(){super.dispose(),this.disposeTexture()}getSize(){return this.clipConfiguration.width&&this.clipConfiguration.height?{width:this.clipConfiguration.width,height:this.clipConfiguration.height}:{width:this.sprite?.width??0,height:this.sprite?.height??0}}getContentSize(){return{width:this.sprite?.width??0,height:this.sprite?.height??0}}async reloadAsset(){this.disposeTexture(),await this.loadTexture()}async loadTexture(){const t=this.clipConfiguration.asset,{src:i}=t,a=`${i}${i.includes("?")?"&":"?"}x-cors=1`,s={src:a,crossorigin:"anonymous",data:{}},r=await this.edit.assetLoader.load(a,s);if(!(r?.source instanceof se.ImageSource))throw r&&r.destroy(!0),new Error(`Invalid image source '${i}'.`);this.texture=this.createCroppedTexture(r),this.sprite=new se.Sprite(this.texture),this.contentContainer.addChild(this.sprite),this.clipConfiguration.width&&this.clipConfiguration.height&&this.applyFixedDimensions()}disposeTexture(){this.sprite&&(this.contentContainer.removeChild(this.sprite),this.sprite.destroy(),this.sprite=null),this.texture=null}supportsEdgeResize(){return!0}createCroppedTexture(t){const i=this.clipConfiguration.asset;if(!i.crop)return t;const a=t.width,s=t.height,r=Math.floor((i.crop?.left??0)*a),n=Math.floor((i.crop?.right??0)*a),o=Math.floor((i.crop?.top??0)*s),l=Math.floor((i.crop?.bottom??0)*s),c=r,f=o,u=a-r-n,h=s-o-l,m=new se.Rectangle(c,f,u,h);return new se.Texture({source:t.source,frame:m})}}class Dh extends Qt{texture;sprite;isPlaying;constructor(t,i){super(t,i,Qe.Luma),this.texture=null,this.sprite=null,this.isPlaying=!1}async load(){await super.load();const t=this.clipConfiguration.asset,i=t.src,a={src:i,data:{autoPlay:!1,muted:!0}},s=await this.edit.assetLoader.load(i,a);if(!(s?.source instanceof se.ImageSource||s?.source instanceof se.VideoSource))throw s&&this.edit.assetLoader.decrementRef(i),new Error(`Invalid luma source '${t.src}'.`);s.source instanceof se.VideoSource&&(s.source.alphaMode="no-premultiply-alpha"),this.texture=s,this.sprite=new se.Sprite(this.texture),this.contentContainer.addChild(this.sprite),this.configureKeyframes()}update(t,i){if(super.update(t,i),!this.texture||!(this.texture.source instanceof se.VideoSource))return;const a=this.getPlaybackTime(),s=this.edit.isPlaying&&this.isActive();s&&(this.isPlaying||(this.isPlaying=!0,this.texture.source.resource.currentTime=a,this.texture.source.resource.play().catch(console.error)),this.texture.source.resource.volume!==this.getVolume()&&(this.texture.source.resource.volume=this.getVolume()),Math.abs(this.texture.source.resource.currentTime-a)>.1&&(this.texture.source.resource.currentTime=a)),!s&&this.isPlaying&&(this.isPlaying=!1,this.texture.source.resource.pause()),!this.edit.isPlaying&&this.isActive()&&(this.texture.source.resource.currentTime=a)}draw(){super.draw()}dispose(){super.dispose(),this.sprite?.destroy(),this.sprite=null,this.texture=null}getSize(){return this.clipConfiguration.width&&this.clipConfiguration.height?{width:this.clipConfiguration.width,height:this.clipConfiguration.height}:{width:this.sprite?.width??0,height:this.sprite?.height??0}}getVolume(){return 0}getSprite(){return this.sprite}isVideoSource(){return this.texture?.source instanceof se.VideoSource}getVideoCurrentTime(){return this.texture?.source instanceof se.VideoSource?this.texture.source.resource.currentTime:-1}}function U(e,t,i){function a(o,l){if(o._zod||Object.defineProperty(o,"_zod",{value:{def:l,constr:n,traits:new Set},enumerable:!1}),o._zod.traits.has(e))return;o._zod.traits.add(e),t(o,l);const c=n.prototype,f=Object.keys(c);for(let u=0;u<f.length;u++){const h=f[u];h in o||(o[h]=c[h].bind(o))}}const s=i?.Parent??Object;class r extends s{}Object.defineProperty(r,"name",{value:e});function n(o){var l;const c=i?.Parent?new r:this;a(c,o),(l=c._zod).deferred??(l.deferred=[]);for(const f of c._zod.deferred)f();return c}return Object.defineProperty(n,"init",{value:a}),Object.defineProperty(n,Symbol.hasInstance,{value:o=>i?.Parent&&o instanceof i.Parent?!0:o?._zod?.traits?.has(e)}),Object.defineProperty(n,"name",{value:e}),n}let Ca=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},zl=class extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}};const Ll={};function Ei(e){return Ll}function Bl(e){const t=Object.values(e).filter(a=>typeof a=="number");return Object.entries(e).filter(([a,s])=>t.indexOf(+a)===-1).map(([a,s])=>s)}function Zn(e,t){return typeof t=="bigint"?t.toString():t}function nr(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Gn(e){return e==null}function Wn(e){const t=e.startsWith("^")?1:0,i=e.endsWith("$")?e.length-1:e.length;return e.slice(t,i)}function zh(e,t){const i=(e.toString().split(".")[1]||"").length,a=t.toString();let s=(a.split(".")[1]||"").length;if(s===0&&/\d?e-\d?/.test(a)){const l=a.match(/\d?e-(\d?)/);l?.[1]&&(s=Number.parseInt(l[1]))}const r=i>s?i:s,n=Number.parseInt(e.toFixed(r).replace(".","")),o=Number.parseInt(t.toFixed(r).replace(".",""));return n%o/10**r}const Ul=Symbol("evaluating");function $e(e,t,i){let a;Object.defineProperty(e,t,{get(){if(a!==Ul)return a===void 0&&(a=Ul,a=i()),a},set(s){Object.defineProperty(e,t,{value:s})},configurable:!0})}function aa(e,t,i){Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!0,configurable:!0})}function sa(...e){const t={};for(const i of e){const a=Object.getOwnPropertyDescriptors(i);Object.assign(t,a)}return Object.defineProperties({},t)}function Zl(e){return JSON.stringify(e)}function Lh(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Gl="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function fs(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Bh=nr(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function Sa(e){if(fs(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const i=t.prototype;return!(fs(i)===!1||Object.prototype.hasOwnProperty.call(i,"isPrototypeOf")===!1)}function Wl(e){return Sa(e)?{...e}:Array.isArray(e)?[...e]:e}const Uh=new Set(["string","number","symbol"]);function Va(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Oi(e,t,i){const a=new e._zod.constr(t??e._zod.def);return(!t||i?.parent)&&(a._zod.parent=e),a}function pe(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function Zh(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const Gh={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Wh(e,t){const i=e._zod.def,a=sa(e._zod.def,{get shape(){const s={};for(const r in t){if(!(r in i.shape))throw new Error(`Unrecognized key: "${r}"`);t[r]&&(s[r]=i.shape[r])}return aa(this,"shape",s),s},checks:[]});return Oi(e,a)}function jh(e,t){const i=e._zod.def,a=sa(e._zod.def,{get shape(){const s={...e._zod.def.shape};for(const r in t){if(!(r in i.shape))throw new Error(`Unrecognized key: "${r}"`);t[r]&&delete s[r]}return aa(this,"shape",s),s},checks:[]});return Oi(e,a)}function Yh(e,t){if(!Sa(t))throw new Error("Invalid input to extend: expected a plain object");const i=e._zod.def.checks;if(i&&i.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const s=sa(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t};return aa(this,"shape",r),r},checks:[]});return Oi(e,s)}function Hh(e,t){if(!Sa(t))throw new Error("Invalid input to safeExtend: expected a plain object");const i={...e._zod.def,get shape(){const a={...e._zod.def.shape,...t};return aa(this,"shape",a),a},checks:e._zod.def.checks};return Oi(e,i)}function Xh(e,t){const i=sa(e._zod.def,{get shape(){const a={...e._zod.def.shape,...t._zod.def.shape};return aa(this,"shape",a),a},get catchall(){return t._zod.def.catchall},checks:[]});return Oi(e,i)}function Kh(e,t,i){const a=sa(t._zod.def,{get shape(){const s=t._zod.def.shape,r={...s};if(i)for(const n in i){if(!(n in s))throw new Error(`Unrecognized key: "${n}"`);i[n]&&(r[n]=e?new e({type:"optional",innerType:s[n]}):s[n])}else for(const n in s)r[n]=e?new e({type:"optional",innerType:s[n]}):s[n];return aa(this,"shape",r),r},checks:[]});return Oi(t,a)}function qh(e,t,i){const a=sa(t._zod.def,{get shape(){const s=t._zod.def.shape,r={...s};if(i)for(const n in i){if(!(n in r))throw new Error(`Unrecognized key: "${n}"`);i[n]&&(r[n]=new e({type:"nonoptional",innerType:s[n]}))}else for(const n in s)r[n]=new e({type:"nonoptional",innerType:s[n]});return aa(this,"shape",r),r},checks:[]});return Oi(t,a)}function _a(e,t=0){if(e.aborted===!0)return!0;for(let i=t;i<e.issues.length;i++)if(e.issues[i]?.continue!==!0)return!0;return!1}function Ia(e,t){return t.map(i=>{var a;return(a=i).path??(a.path=[]),i.path.unshift(e),i})}function or(e){return typeof e=="string"?e:e?.message}function Mi(e,t,i){const a={...e,path:e.path??[]};if(!e.message){const s=or(e.inst?._zod.def?.error?.(e))??or(t?.error?.(e))??or(i.customError?.(e))??or(i.localeError?.(e))??"Invalid input";a.message=s}return delete a.inst,delete a.continue,t?.reportInput||delete a.input,a}function jn(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function us(...e){const[t,i,a]=e;return typeof t=="string"?{message:t,code:"custom",input:i,inst:a}:{...t}}const jl=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Zn,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Yl=U("$ZodError",jl),Hl=U("$ZodError",jl,{Parent:Error});function Jh(e,t=i=>i.message){const i={},a=[];for(const s of e.issues)s.path.length>0?(i[s.path[0]]=i[s.path[0]]||[],i[s.path[0]].push(t(s))):a.push(t(s));return{formErrors:a,fieldErrors:i}}function Qh(e,t=i=>i.message){const i={_errors:[]},a=s=>{for(const r of s.issues)if(r.code==="invalid_union"&&r.errors.length)r.errors.map(n=>a({issues:n}));else if(r.code==="invalid_key")a({issues:r.issues});else if(r.code==="invalid_element")a({issues:r.issues});else if(r.path.length===0)i._errors.push(t(r));else{let n=i,o=0;for(;o<r.path.length;){const l=r.path[o];o===r.path.length-1?(n[l]=n[l]||{_errors:[]},n[l]._errors.push(t(r))):n[l]=n[l]||{_errors:[]},n=n[l],o++}}};return a(e),i}const Yn=e=>(t,i,a,s)=>{const r=a?Object.assign(a,{async:!1}):{async:!1},n=t._zod.run({value:i,issues:[]},r);if(n instanceof Promise)throw new Ca;if(n.issues.length){const o=new(s?.Err??e)(n.issues.map(l=>Mi(l,r,Ei())));throw Gl(o,s?.callee),o}return n.value},Hn=e=>async(t,i,a,s)=>{const r=a?Object.assign(a,{async:!0}):{async:!0};let n=t._zod.run({value:i,issues:[]},r);if(n instanceof Promise&&(n=await n),n.issues.length){const o=new(s?.Err??e)(n.issues.map(l=>Mi(l,r,Ei())));throw Gl(o,s?.callee),o}return n.value},lr=e=>(t,i,a)=>{const s=a?{...a,async:!1}:{async:!1},r=t._zod.run({value:i,issues:[]},s);if(r instanceof Promise)throw new Ca;return r.issues.length?{success:!1,error:new(e??Yl)(r.issues.map(n=>Mi(n,s,Ei())))}:{success:!0,data:r.value}},$h=lr(Hl),cr=e=>async(t,i,a)=>{const s=a?Object.assign(a,{async:!0}):{async:!0};let r=t._zod.run({value:i,issues:[]},s);return r instanceof Promise&&(r=await r),r.issues.length?{success:!1,error:new e(r.issues.map(n=>Mi(n,s,Ei())))}:{success:!0,data:r.value}},ep=cr(Hl),tp=e=>(t,i,a)=>{const s=a?Object.assign(a,{direction:"backward"}):{direction:"backward"};return Yn(e)(t,i,s)},ip=e=>(t,i,a)=>Yn(e)(t,i,a),ap=e=>async(t,i,a)=>{const s=a?Object.assign(a,{direction:"backward"}):{direction:"backward"};return Hn(e)(t,i,s)},sp=e=>async(t,i,a)=>Hn(e)(t,i,a),rp=e=>(t,i,a)=>{const s=a?Object.assign(a,{direction:"backward"}):{direction:"backward"};return lr(e)(t,i,s)},np=e=>(t,i,a)=>lr(e)(t,i,a),op=e=>async(t,i,a)=>{const s=a?Object.assign(a,{direction:"backward"}):{direction:"backward"};return cr(e)(t,i,s)},lp=e=>async(t,i,a)=>cr(e)(t,i,a),cp=/^[cC][^\s-]{8,}$/,fp=/^[0-9a-z]+$/,up=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,dp=/^[0-9a-vA-V]{20}$/,hp=/^[A-Za-z0-9]{27}$/,pp=/^[a-zA-Z0-9_-]{21}$/,gp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,mp=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Xl=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,yp=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,bp="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function wp(){return new RegExp(bp,"u")}const vp=/^(?:(?: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])$/,xp=/^(([0-9a-fA-F]{1,4}:){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}|:))$/,kp=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,Np=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Ap=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Kl=/^[A-Za-z0-9_-]*$/,Cp=/^\+(?:[0-9]){6,14}[0-9]$/,ql="(?:(?:\\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])))",Sp=new RegExp(`^${ql}$`);function Jl(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Vp(e){return new RegExp(`^${Jl(e)}$`)}function _p(e){const t=Jl({precision:e.precision}),i=["Z"];e.local&&i.push(""),e.offset&&i.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const a=`${t}(?:${i.join("|")})`;return new RegExp(`^${ql}T(?:${a})$`)}const Ip=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Tp=/^-?\d+$/,Fp=/^-?\d+(?:\.\d+)?/,Pp=/^(?:true|false)$/i,Ep=/^null$/i,Op=/^[^A-Z]*$/,Mp=/^[^a-z]*$/,Zt=U("$ZodCheck",(e,t)=>{var i;e._zod??(e._zod={}),e._zod.def=t,(i=e._zod).onattach??(i.onattach=[])}),Ql={number:"number",bigint:"bigint",object:"date"},$l=U("$ZodCheckLessThan",(e,t)=>{Zt.init(e,t);const i=Ql[typeof t.value];e._zod.onattach.push(a=>{const s=a._zod.bag,r=(t.inclusive?s.maximum:s.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<r&&(t.inclusive?s.maximum=t.value:s.exclusiveMaximum=t.value)}),e._zod.check=a=>{(t.inclusive?a.value<=t.value:a.value<t.value)||a.issues.push({origin:i,code:"too_big",maximum:t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ec=U("$ZodCheckGreaterThan",(e,t)=>{Zt.init(e,t);const i=Ql[typeof t.value];e._zod.onattach.push(a=>{const s=a._zod.bag,r=(t.inclusive?s.minimum:s.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>r&&(t.inclusive?s.minimum=t.value:s.exclusiveMinimum=t.value)}),e._zod.check=a=>{(t.inclusive?a.value>=t.value:a.value>t.value)||a.issues.push({origin:i,code:"too_small",minimum:t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Rp=U("$ZodCheckMultipleOf",(e,t)=>{Zt.init(e,t),e._zod.onattach.push(i=>{var a;(a=i._zod.bag).multipleOf??(a.multipleOf=t.value)}),e._zod.check=i=>{if(typeof i.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof i.value=="bigint"?i.value%t.value===BigInt(0):zh(i.value,t.value)===0)||i.issues.push({origin:typeof i.value,code:"not_multiple_of",divisor:t.value,input:i.value,inst:e,continue:!t.abort})}}),Dp=U("$ZodCheckNumberFormat",(e,t)=>{Zt.init(e,t),t.format=t.format||"float64";const i=t.format?.includes("int"),a=i?"int":"number",[s,r]=Gh[t.format];e._zod.onattach.push(n=>{const o=n._zod.bag;o.format=t.format,o.minimum=s,o.maximum=r,i&&(o.pattern=Tp)}),e._zod.check=n=>{const o=n.value;if(i){if(!Number.isInteger(o)){n.issues.push({expected:a,format:t.format,code:"invalid_type",continue:!1,input:o,inst:e});return}if(!Number.isSafeInteger(o)){o>0?n.issues.push({input:o,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,continue:!t.abort}):n.issues.push({input:o,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,continue:!t.abort});return}}o<s&&n.issues.push({origin:"number",input:o,code:"too_small",minimum:s,inclusive:!0,inst:e,continue:!t.abort}),o>r&&n.issues.push({origin:"number",input:o,code:"too_big",maximum:r,inst:e})}}),zp=U("$ZodCheckMaxLength",(e,t)=>{var i;Zt.init(e,t),(i=e._zod.def).when??(i.when=a=>{const s=a.value;return!Gn(s)&&s.length!==void 0}),e._zod.onattach.push(a=>{const s=a._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<s&&(a._zod.bag.maximum=t.maximum)}),e._zod.check=a=>{const s=a.value;if(s.length<=t.maximum)return;const n=jn(s);a.issues.push({origin:n,code:"too_big",maximum:t.maximum,inclusive:!0,input:s,inst:e,continue:!t.abort})}}),Lp=U("$ZodCheckMinLength",(e,t)=>{var i;Zt.init(e,t),(i=e._zod.def).when??(i.when=a=>{const s=a.value;return!Gn(s)&&s.length!==void 0}),e._zod.onattach.push(a=>{const s=a._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>s&&(a._zod.bag.minimum=t.minimum)}),e._zod.check=a=>{const s=a.value;if(s.length>=t.minimum)return;const n=jn(s);a.issues.push({origin:n,code:"too_small",minimum:t.minimum,inclusive:!0,input:s,inst:e,continue:!t.abort})}}),Bp=U("$ZodCheckLengthEquals",(e,t)=>{var i;Zt.init(e,t),(i=e._zod.def).when??(i.when=a=>{const s=a.value;return!Gn(s)&&s.length!==void 0}),e._zod.onattach.push(a=>{const s=a._zod.bag;s.minimum=t.length,s.maximum=t.length,s.length=t.length}),e._zod.check=a=>{const s=a.value,r=s.length;if(r===t.length)return;const n=jn(s),o=r>t.length;a.issues.push({origin:n,...o?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:a.value,inst:e,continue:!t.abort})}}),fr=U("$ZodCheckStringFormat",(e,t)=>{var i,a;Zt.init(e,t),e._zod.onattach.push(s=>{const r=s._zod.bag;r.format=t.format,t.pattern&&(r.patterns??(r.patterns=new Set),r.patterns.add(t.pattern))}),t.pattern?(i=e._zod).check??(i.check=s=>{t.pattern.lastIndex=0,!t.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:t.format,input:s.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(a=e._zod).check??(a.check=()=>{})}),Up=U("$ZodCheckRegex",(e,t)=>{fr.init(e,t),e._zod.check=i=>{t.pattern.lastIndex=0,!t.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:"regex",input:i.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Zp=U("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Op),fr.init(e,t)}),Gp=U("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Mp),fr.init(e,t)}),Wp=U("$ZodCheckIncludes",(e,t)=>{Zt.init(e,t);const i=Va(t.includes),a=new RegExp(typeof t.position=="number"?`^.{${t.position}}${i}`:i);t.pattern=a,e._zod.onattach.push(s=>{const r=s._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(a)}),e._zod.check=s=>{s.value.includes(t.includes,t.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:s.value,inst:e,continue:!t.abort})}}),jp=U("$ZodCheckStartsWith",(e,t)=>{Zt.init(e,t);const i=new RegExp(`^${Va(t.prefix)}.*`);t.pattern??(t.pattern=i),e._zod.onattach.push(a=>{const s=a._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(i)}),e._zod.check=a=>{a.value.startsWith(t.prefix)||a.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:a.value,inst:e,continue:!t.abort})}}),Yp=U("$ZodCheckEndsWith",(e,t)=>{Zt.init(e,t);const i=new RegExp(`.*${Va(t.suffix)}$`);t.pattern??(t.pattern=i),e._zod.onattach.push(a=>{const s=a._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(i)}),e._zod.check=a=>{a.value.endsWith(t.suffix)||a.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:a.value,inst:e,continue:!t.abort})}}),Hp=U("$ZodCheckOverwrite",(e,t)=>{Zt.init(e,t),e._zod.check=i=>{i.value=t.tx(i.value)}});let Xp=class{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const a=t.split(`
|
|
234
|
+
`).filter(n=>n),s=Math.min(...a.map(n=>n.length-n.trimStart().length)),r=a.map(n=>n.slice(s)).map(n=>" ".repeat(this.indent*2)+n);for(const n of r)this.content.push(n)}compile(){const t=Function,i=this?.args,s=[...(this?.content??[""]).map(r=>` ${r}`)];return new t(...i,s.join(`
|
|
235
|
+
`))}};const Kp={major:4,minor:2,patch:1},at=U("$ZodType",(e,t)=>{var i;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Kp;const a=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&a.unshift(e);for(const s of a)for(const r of s._zod.onattach)r(e);if(a.length===0)(i=e._zod).deferred??(i.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const s=(n,o,l)=>{let c=_a(n),f;for(const u of o){if(u._zod.def.when){if(!u._zod.def.when(n))continue}else if(c)continue;const h=n.issues.length,m=u._zod.check(n);if(m instanceof Promise&&l?.async===!1)throw new Ca;if(f||m instanceof Promise)f=(f??Promise.resolve()).then(async()=>{await m,n.issues.length!==h&&(c||(c=_a(n,h)))});else{if(n.issues.length===h)continue;c||(c=_a(n,h))}}return f?f.then(()=>n):n},r=(n,o,l)=>{if(_a(n))return n.aborted=!0,n;const c=s(o,a,l);if(c instanceof Promise){if(l.async===!1)throw new Ca;return c.then(f=>e._zod.parse(f,l))}return e._zod.parse(c,l)};e._zod.run=(n,o)=>{if(o.skipChecks)return e._zod.parse(n,o);if(o.direction==="backward"){const c=e._zod.parse({value:n.value,issues:[]},{...o,skipChecks:!0});return c instanceof Promise?c.then(f=>r(f,n,o)):r(c,n,o)}const l=e._zod.parse(n,o);if(l instanceof Promise){if(o.async===!1)throw new Ca;return l.then(c=>s(c,a,o))}return s(l,a,o)}}e["~standard"]={validate:s=>{try{const r=$h(e,s);return r.success?{value:r.data}:{issues:r.error?.issues}}catch{return ep(e,s).then(n=>n.success?{value:n.data}:{issues:n.error?.issues})}},vendor:"zod",version:1}}),Xn=U("$ZodString",(e,t)=>{at.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Ip(e._zod.bag),e._zod.parse=(i,a)=>{if(t.coerce)try{i.value=String(i.value)}catch{}return typeof i.value=="string"||i.issues.push({expected:"string",code:"invalid_type",input:i.value,inst:e}),i}}),rt=U("$ZodStringFormat",(e,t)=>{fr.init(e,t),Xn.init(e,t)}),qp=U("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=mp),rt.init(e,t)}),Jp=U("$ZodUUID",(e,t)=>{if(t.version){const a={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(a===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Xl(a))}else t.pattern??(t.pattern=Xl());rt.init(e,t)}),Qp=U("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=yp),rt.init(e,t)}),$p=U("$ZodURL",(e,t)=>{rt.init(e,t),e._zod.check=i=>{try{const a=i.value.trim(),s=new URL(a);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(s.hostname)||i.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:i.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(s.protocol.endsWith(":")?s.protocol.slice(0,-1):s.protocol)||i.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:i.value,inst:e,continue:!t.abort})),t.normalize?i.value=s.href:i.value=a;return}catch{i.issues.push({code:"invalid_format",format:"url",input:i.value,inst:e,continue:!t.abort})}}}),eg=U("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=wp()),rt.init(e,t)}),tg=U("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=pp),rt.init(e,t)}),ig=U("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=cp),rt.init(e,t)}),ag=U("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=fp),rt.init(e,t)}),sg=U("$ZodULID",(e,t)=>{t.pattern??(t.pattern=up),rt.init(e,t)}),rg=U("$ZodXID",(e,t)=>{t.pattern??(t.pattern=dp),rt.init(e,t)}),ng=U("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=hp),rt.init(e,t)}),og=U("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=_p(t)),rt.init(e,t)}),lg=U("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Sp),rt.init(e,t)}),cg=U("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Vp(t)),rt.init(e,t)}),fg=U("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=gp),rt.init(e,t)}),ug=U("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=vp),rt.init(e,t),e._zod.bag.format="ipv4"}),dg=U("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=xp),rt.init(e,t),e._zod.bag.format="ipv6",e._zod.check=i=>{try{new URL(`http://[${i.value}]`)}catch{i.issues.push({code:"invalid_format",format:"ipv6",input:i.value,inst:e,continue:!t.abort})}}}),hg=U("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=kp),rt.init(e,t)}),pg=U("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Np),rt.init(e,t),e._zod.check=i=>{const a=i.value.split("/");try{if(a.length!==2)throw new Error;const[s,r]=a;if(!r)throw new Error;const n=Number(r);if(`${n}`!==r)throw new Error;if(n<0||n>128)throw new Error;new URL(`http://[${s}]`)}catch{i.issues.push({code:"invalid_format",format:"cidrv6",input:i.value,inst:e,continue:!t.abort})}}});function tc(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const gg=U("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Ap),rt.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=i=>{tc(i.value)||i.issues.push({code:"invalid_format",format:"base64",input:i.value,inst:e,continue:!t.abort})}});function mg(e){if(!Kl.test(e))return!1;const t=e.replace(/[-_]/g,a=>a==="-"?"+":"/"),i=t.padEnd(Math.ceil(t.length/4)*4,"=");return tc(i)}const yg=U("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Kl),rt.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=i=>{mg(i.value)||i.issues.push({code:"invalid_format",format:"base64url",input:i.value,inst:e,continue:!t.abort})}}),bg=U("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Cp),rt.init(e,t)});function wg(e,t=null){try{const i=e.split(".");if(i.length!==3)return!1;const[a]=i;if(!a)return!1;const s=JSON.parse(atob(a));return!("typ"in s&&s?.typ!=="JWT"||!s.alg||t&&(!("alg"in s)||s.alg!==t))}catch{return!1}}const vg=U("$ZodJWT",(e,t)=>{rt.init(e,t),e._zod.check=i=>{wg(i.value,t.alg)||i.issues.push({code:"invalid_format",format:"jwt",input:i.value,inst:e,continue:!t.abort})}}),ic=U("$ZodNumber",(e,t)=>{at.init(e,t),e._zod.pattern=e._zod.bag.pattern??Fp,e._zod.parse=(i,a)=>{if(t.coerce)try{i.value=Number(i.value)}catch{}const s=i.value;if(typeof s=="number"&&!Number.isNaN(s)&&Number.isFinite(s))return i;const r=typeof s=="number"?Number.isNaN(s)?"NaN":Number.isFinite(s)?void 0:"Infinity":void 0;return i.issues.push({expected:"number",code:"invalid_type",input:s,inst:e,...r?{received:r}:{}}),i}}),xg=U("$ZodNumberFormat",(e,t)=>{Dp.init(e,t),ic.init(e,t)}),kg=U("$ZodBoolean",(e,t)=>{at.init(e,t),e._zod.pattern=Pp,e._zod.parse=(i,a)=>{if(t.coerce)try{i.value=!!i.value}catch{}const s=i.value;return typeof s=="boolean"||i.issues.push({expected:"boolean",code:"invalid_type",input:s,inst:e}),i}}),Ng=U("$ZodNull",(e,t)=>{at.init(e,t),e._zod.pattern=Ep,e._zod.values=new Set([null]),e._zod.parse=(i,a)=>{const s=i.value;return s===null||i.issues.push({expected:"null",code:"invalid_type",input:s,inst:e}),i}}),Ag=U("$ZodUnknown",(e,t)=>{at.init(e,t),e._zod.parse=i=>i}),Cg=U("$ZodNever",(e,t)=>{at.init(e,t),e._zod.parse=(i,a)=>(i.issues.push({expected:"never",code:"invalid_type",input:i.value,inst:e}),i)}),Sg=U("$ZodVoid",(e,t)=>{at.init(e,t),e._zod.parse=(i,a)=>{const s=i.value;return typeof s>"u"||i.issues.push({expected:"void",code:"invalid_type",input:s,inst:e}),i}});function ac(e,t,i){e.issues.length&&t.issues.push(...Ia(i,e.issues)),t.value[i]=e.value}const Vg=U("$ZodArray",(e,t)=>{at.init(e,t),e._zod.parse=(i,a)=>{const s=i.value;if(!Array.isArray(s))return i.issues.push({expected:"array",code:"invalid_type",input:s,inst:e}),i;i.value=Array(s.length);const r=[];for(let n=0;n<s.length;n++){const o=s[n],l=t.element._zod.run({value:o,issues:[]},a);l instanceof Promise?r.push(l.then(c=>ac(c,i,n))):ac(l,i,n)}return r.length?Promise.all(r).then(()=>i):i}});function ur(e,t,i,a){e.issues.length&&t.issues.push(...Ia(i,e.issues)),e.value===void 0?i in a&&(t.value[i]=void 0):t.value[i]=e.value}function sc(e){const t=Object.keys(e.shape);for(const a of t)if(!e.shape?.[a]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${a}": expected a Zod schema`);const i=Zh(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(i)}}function rc(e,t,i,a,s,r){const n=[],o=s.keySet,l=s.catchall._zod,c=l.def.type;for(const f in t){if(o.has(f))continue;if(c==="never"){n.push(f);continue}const u=l.run({value:t[f],issues:[]},a);u instanceof Promise?e.push(u.then(h=>ur(h,i,f,t))):ur(u,i,f,t)}return n.length&&i.issues.push({code:"unrecognized_keys",keys:n,input:t,inst:r}),e.length?Promise.all(e).then(()=>i):i}const _g=U("$ZodObject",(e,t)=>{if(at.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const o=t.shape;Object.defineProperty(t,"shape",{get:()=>{const l={...o};return Object.defineProperty(t,"shape",{value:l}),l}})}const a=nr(()=>sc(t));$e(e._zod,"propValues",()=>{const o=t.shape,l={};for(const c in o){const f=o[c]._zod;if(f.values){l[c]??(l[c]=new Set);for(const u of f.values)l[c].add(u)}}return l});const s=fs,r=t.catchall;let n;e._zod.parse=(o,l)=>{n??(n=a.value);const c=o.value;if(!s(c))return o.issues.push({expected:"object",code:"invalid_type",input:c,inst:e}),o;o.value={};const f=[],u=n.shape;for(const h of n.keys){const b=u[h]._zod.run({value:c[h],issues:[]},l);b instanceof Promise?f.push(b.then(M=>ur(M,o,h,c))):ur(b,o,h,c)}return r?rc(f,c,o,l,a.value,e):f.length?Promise.all(f).then(()=>o):o}}),Ig=U("$ZodObjectJIT",(e,t)=>{_g.init(e,t);const i=e._zod.parse,a=nr(()=>sc(t)),s=h=>{const m=new Xp(["shape","payload","ctx"]),b=a.value,M=v=>{const P=Zl(v);return`shape[${P}]._zod.run({ value: input[${P}], issues: [] }, ctx)`};m.write("const input = payload.value;");const G=Object.create(null);let L=0;for(const v of b.keys)G[v]=`key_${L++}`;m.write("const newResult = {};");for(const v of b.keys){const P=G[v],y=Zl(v);m.write(`const ${P} = ${M(v)};`),m.write(`
|
|
236
|
+
if (${P}.issues.length) {
|
|
237
|
+
payload.issues = payload.issues.concat(${P}.issues.map(iss => ({
|
|
238
|
+
...iss,
|
|
239
|
+
path: iss.path ? [${y}, ...iss.path] : [${y}]
|
|
240
|
+
})));
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
if (${P}.value === undefined) {
|
|
245
|
+
if (${y} in input) {
|
|
246
|
+
newResult[${y}] = undefined;
|
|
247
|
+
}
|
|
248
|
+
} else {
|
|
249
|
+
newResult[${y}] = ${P}.value;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
`)}m.write("payload.value = newResult;"),m.write("return payload;");const O=m.compile();return(v,P)=>O(h,v,P)};let r;const n=fs,o=!Ll.jitless,c=o&&Bh.value,f=t.catchall;let u;e._zod.parse=(h,m)=>{u??(u=a.value);const b=h.value;return n(b)?o&&c&&m?.async===!1&&m.jitless!==!0?(r||(r=s(t.shape)),h=r(h,m),f?rc([],b,h,m,u,e):h):i(h,m):(h.issues.push({expected:"object",code:"invalid_type",input:b,inst:e}),h)}});function nc(e,t,i,a){for(const r of e)if(r.issues.length===0)return t.value=r.value,t;const s=e.filter(r=>!_a(r));return s.length===1?(t.value=s[0].value,s[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:i,errors:e.map(r=>r.issues.map(n=>Mi(n,a,Ei())))}),t)}const oc=U("$ZodUnion",(e,t)=>{at.init(e,t),$e(e._zod,"optin",()=>t.options.some(s=>s._zod.optin==="optional")?"optional":void 0),$e(e._zod,"optout",()=>t.options.some(s=>s._zod.optout==="optional")?"optional":void 0),$e(e._zod,"values",()=>{if(t.options.every(s=>s._zod.values))return new Set(t.options.flatMap(s=>Array.from(s._zod.values)))}),$e(e._zod,"pattern",()=>{if(t.options.every(s=>s._zod.pattern)){const s=t.options.map(r=>r._zod.pattern);return new RegExp(`^(${s.map(r=>Wn(r.source)).join("|")})$`)}});const i=t.options.length===1,a=t.options[0]._zod.run;e._zod.parse=(s,r)=>{if(i)return a(s,r);let n=!1;const o=[];for(const l of t.options){const c=l._zod.run({value:s.value,issues:[]},r);if(c instanceof Promise)o.push(c),n=!0;else{if(c.issues.length===0)return c;o.push(c)}}return n?Promise.all(o).then(l=>nc(l,s,e,r)):nc(o,s,e,r)}}),Tg=U("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,oc.init(e,t);const i=e._zod.parse;$e(e._zod,"propValues",()=>{const s={};for(const r of t.options){const n=r._zod.propValues;if(!n||Object.keys(n).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(const[o,l]of Object.entries(n)){s[o]||(s[o]=new Set);for(const c of l)s[o].add(c)}}return s});const a=nr(()=>{const s=t.options,r=new Map;for(const n of s){const o=n._zod.propValues?.[t.discriminator];if(!o||o.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(const l of o){if(r.has(l))throw new Error(`Duplicate discriminator value "${String(l)}"`);r.set(l,n)}}return r});e._zod.parse=(s,r)=>{const n=s.value;if(!fs(n))return s.issues.push({code:"invalid_type",expected:"object",input:n,inst:e}),s;const o=a.value.get(n?.[t.discriminator]);return o?o._zod.run(s,r):t.unionFallback?i(s,r):(s.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:n,path:[t.discriminator],inst:e}),s)}}),Fg=U("$ZodIntersection",(e,t)=>{at.init(e,t),e._zod.parse=(i,a)=>{const s=i.value,r=t.left._zod.run({value:s,issues:[]},a),n=t.right._zod.run({value:s,issues:[]},a);return r instanceof Promise||n instanceof Promise?Promise.all([r,n]).then(([l,c])=>lc(i,l,c)):lc(i,r,n)}});function Kn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Sa(e)&&Sa(t)){const i=Object.keys(t),a=Object.keys(e).filter(r=>i.indexOf(r)!==-1),s={...e,...t};for(const r of a){const n=Kn(e[r],t[r]);if(!n.valid)return{valid:!1,mergeErrorPath:[r,...n.mergeErrorPath]};s[r]=n.data}return{valid:!0,data:s}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const i=[];for(let a=0;a<e.length;a++){const s=e[a],r=t[a],n=Kn(s,r);if(!n.valid)return{valid:!1,mergeErrorPath:[a,...n.mergeErrorPath]};i.push(n.data)}return{valid:!0,data:i}}return{valid:!1,mergeErrorPath:[]}}function lc(e,t,i){if(t.issues.length&&e.issues.push(...t.issues),i.issues.length&&e.issues.push(...i.issues),_a(e))return e;const a=Kn(t.value,i.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return e.value=a.data,e}const Pg=U("$ZodRecord",(e,t)=>{at.init(e,t),e._zod.parse=(i,a)=>{const s=i.value;if(!Sa(s))return i.issues.push({expected:"record",code:"invalid_type",input:s,inst:e}),i;const r=[],n=t.keyType._zod.values;if(n){i.value={};const o=new Set;for(const c of n)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){o.add(typeof c=="number"?c.toString():c);const f=t.valueType._zod.run({value:s[c],issues:[]},a);f instanceof Promise?r.push(f.then(u=>{u.issues.length&&i.issues.push(...Ia(c,u.issues)),i.value[c]=u.value})):(f.issues.length&&i.issues.push(...Ia(c,f.issues)),i.value[c]=f.value)}let l;for(const c in s)o.has(c)||(l=l??[],l.push(c));l&&l.length>0&&i.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:l})}else{i.value={};for(const o of Reflect.ownKeys(s)){if(o==="__proto__")continue;const l=t.keyType._zod.run({value:o,issues:[]},a);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(l.issues.length){t.mode==="loose"?i.value[o]=s[o]:i.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(f=>Mi(f,a,Ei())),input:o,path:[o],inst:e});continue}const c=t.valueType._zod.run({value:s[o],issues:[]},a);c instanceof Promise?r.push(c.then(f=>{f.issues.length&&i.issues.push(...Ia(o,f.issues)),i.value[l.value]=f.value})):(c.issues.length&&i.issues.push(...Ia(o,c.issues)),i.value[l.value]=c.value)}}return r.length?Promise.all(r).then(()=>i):i}}),Eg=U("$ZodEnum",(e,t)=>{at.init(e,t);const i=Bl(t.entries),a=new Set(i);e._zod.values=a,e._zod.pattern=new RegExp(`^(${i.filter(s=>Uh.has(typeof s)).map(s=>typeof s=="string"?Va(s):s.toString()).join("|")})$`),e._zod.parse=(s,r)=>{const n=s.value;return a.has(n)||s.issues.push({code:"invalid_value",values:i,input:n,inst:e}),s}}),Og=U("$ZodLiteral",(e,t)=>{if(at.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const i=new Set(t.values);e._zod.values=i,e._zod.pattern=new RegExp(`^(${t.values.map(a=>typeof a=="string"?Va(a):a?Va(a.toString()):String(a)).join("|")})$`),e._zod.parse=(a,s)=>{const r=a.value;return i.has(r)||a.issues.push({code:"invalid_value",values:t.values,input:r,inst:e}),a}}),Mg=U("$ZodTransform",(e,t)=>{at.init(e,t),e._zod.parse=(i,a)=>{if(a.direction==="backward")throw new zl(e.constructor.name);const s=t.transform(i.value,i);if(a.async)return(s instanceof Promise?s:Promise.resolve(s)).then(n=>(i.value=n,i));if(s instanceof Promise)throw new Ca;return i.value=s,i}});function cc(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const Rg=U("$ZodOptional",(e,t)=>{at.init(e,t),e._zod.optin="optional",e._zod.optout="optional",$e(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),$e(e._zod,"pattern",()=>{const i=t.innerType._zod.pattern;return i?new RegExp(`^(${Wn(i.source)})?$`):void 0}),e._zod.parse=(i,a)=>{if(t.innerType._zod.optin==="optional"){const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(r=>cc(r,i.value)):cc(s,i.value)}return i.value===void 0?i:t.innerType._zod.run(i,a)}}),Dg=U("$ZodNullable",(e,t)=>{at.init(e,t),$e(e._zod,"optin",()=>t.innerType._zod.optin),$e(e._zod,"optout",()=>t.innerType._zod.optout),$e(e._zod,"pattern",()=>{const i=t.innerType._zod.pattern;return i?new RegExp(`^(${Wn(i.source)}|null)$`):void 0}),$e(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(i,a)=>i.value===null?i:t.innerType._zod.run(i,a)}),zg=U("$ZodDefault",(e,t)=>{at.init(e,t),e._zod.optin="optional",$e(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(i,a)=>{if(a.direction==="backward")return t.innerType._zod.run(i,a);if(i.value===void 0)return i.value=t.defaultValue,i;const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(r=>fc(r,t)):fc(s,t)}});function fc(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Lg=U("$ZodPrefault",(e,t)=>{at.init(e,t),e._zod.optin="optional",$e(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(i,a)=>(a.direction==="backward"||i.value===void 0&&(i.value=t.defaultValue),t.innerType._zod.run(i,a))}),Bg=U("$ZodNonOptional",(e,t)=>{at.init(e,t),$e(e._zod,"values",()=>{const i=t.innerType._zod.values;return i?new Set([...i].filter(a=>a!==void 0)):void 0}),e._zod.parse=(i,a)=>{const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(r=>uc(r,e)):uc(s,e)}});function uc(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const Ug=U("$ZodCatch",(e,t)=>{at.init(e,t),$e(e._zod,"optin",()=>t.innerType._zod.optin),$e(e._zod,"optout",()=>t.innerType._zod.optout),$e(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(i,a)=>{if(a.direction==="backward")return t.innerType._zod.run(i,a);const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(r=>(i.value=r.value,r.issues.length&&(i.value=t.catchValue({...i,error:{issues:r.issues.map(n=>Mi(n,a,Ei()))},input:i.value}),i.issues=[]),i)):(i.value=s.value,s.issues.length&&(i.value=t.catchValue({...i,error:{issues:s.issues.map(r=>Mi(r,a,Ei()))},input:i.value}),i.issues=[]),i)}}),Zg=U("$ZodPipe",(e,t)=>{at.init(e,t),$e(e._zod,"values",()=>t.in._zod.values),$e(e._zod,"optin",()=>t.in._zod.optin),$e(e._zod,"optout",()=>t.out._zod.optout),$e(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(i,a)=>{if(a.direction==="backward"){const r=t.out._zod.run(i,a);return r instanceof Promise?r.then(n=>dr(n,t.in,a)):dr(r,t.in,a)}const s=t.in._zod.run(i,a);return s instanceof Promise?s.then(r=>dr(r,t.out,a)):dr(s,t.out,a)}});function dr(e,t,i){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},i)}const Gg=U("$ZodReadonly",(e,t)=>{at.init(e,t),$e(e._zod,"propValues",()=>t.innerType._zod.propValues),$e(e._zod,"values",()=>t.innerType._zod.values),$e(e._zod,"optin",()=>t.innerType?._zod?.optin),$e(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(i,a)=>{if(a.direction==="backward")return t.innerType._zod.run(i,a);const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(dc):dc(s)}});function dc(e){return e.value=Object.freeze(e.value),e}const Wg=U("$ZodCustom",(e,t)=>{Zt.init(e,t),at.init(e,t),e._zod.parse=(i,a)=>i,e._zod.check=i=>{const a=i.value,s=t.fn(a);if(s instanceof Promise)return s.then(r=>hc(r,i,a,e));hc(s,i,a,e)}});function hc(e,t,i,a){if(!e){const s={code:"custom",input:i,inst:a,path:[...a._zod.def.path??[]],continue:!a._zod.def.abort};a._zod.def.params&&(s.params=a._zod.def.params),t.issues.push(us(s))}}var pc;let jg=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...i){const a=i[0];if(this._map.set(t,a),a&&typeof a=="object"&&"id"in a){if(this._idmap.has(a.id))throw new Error(`ID ${a.id} already exists in the registry`);this._idmap.set(a.id,t)}return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const i=this._map.get(t);return i&&typeof i=="object"&&"id"in i&&this._idmap.delete(i.id),this._map.delete(t),this}get(t){const i=t._zod.parent;if(i){const a={...this.get(i)??{}};delete a.id;const s={...a,...this._map.get(t)};return Object.keys(s).length?s:void 0}return this._map.get(t)}has(t){return this._map.has(t)}};function Yg(){return new jg}(pc=globalThis).__zod_globalRegistry??(pc.__zod_globalRegistry=Yg());const ds=globalThis.__zod_globalRegistry;function Hg(e,t){return new e({type:"string",...pe(t)})}function Xg(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...pe(t)})}function gc(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...pe(t)})}function Kg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...pe(t)})}function qg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...pe(t)})}function Jg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...pe(t)})}function Qg(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...pe(t)})}function $g(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...pe(t)})}function em(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...pe(t)})}function tm(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...pe(t)})}function im(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...pe(t)})}function am(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...pe(t)})}function sm(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...pe(t)})}function rm(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...pe(t)})}function nm(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...pe(t)})}function om(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...pe(t)})}function lm(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...pe(t)})}function cm(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...pe(t)})}function fm(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...pe(t)})}function um(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...pe(t)})}function dm(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...pe(t)})}function hm(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...pe(t)})}function pm(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...pe(t)})}function gm(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...pe(t)})}function mm(e,t){return new e({type:"string",format:"date",check:"string_format",...pe(t)})}function ym(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...pe(t)})}function bm(e,t){return new e({type:"string",format:"duration",check:"string_format",...pe(t)})}function wm(e,t){return new e({type:"number",checks:[],...pe(t)})}function vm(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...pe(t)})}function xm(e,t){return new e({type:"boolean",...pe(t)})}function km(e,t){return new e({type:"null",...pe(t)})}function Nm(e){return new e({type:"unknown"})}function Am(e,t){return new e({type:"never",...pe(t)})}function Cm(e,t){return new e({type:"void",...pe(t)})}function mc(e,t){return new $l({check:"less_than",...pe(t),value:e,inclusive:!1})}function qn(e,t){return new $l({check:"less_than",...pe(t),value:e,inclusive:!0})}function yc(e,t){return new ec({check:"greater_than",...pe(t),value:e,inclusive:!1})}function Jn(e,t){return new ec({check:"greater_than",...pe(t),value:e,inclusive:!0})}function bc(e,t){return new Rp({check:"multiple_of",...pe(t),value:e})}function wc(e,t){return new zp({check:"max_length",...pe(t),maximum:e})}function hr(e,t){return new Lp({check:"min_length",...pe(t),minimum:e})}function vc(e,t){return new Bp({check:"length_equals",...pe(t),length:e})}function Sm(e,t){return new Up({check:"string_format",format:"regex",...pe(t),pattern:e})}function Vm(e){return new Zp({check:"string_format",format:"lowercase",...pe(e)})}function _m(e){return new Gp({check:"string_format",format:"uppercase",...pe(e)})}function Im(e,t){return new Wp({check:"string_format",format:"includes",...pe(t),includes:e})}function Tm(e,t){return new jp({check:"string_format",format:"starts_with",...pe(t),prefix:e})}function Fm(e,t){return new Yp({check:"string_format",format:"ends_with",...pe(t),suffix:e})}function Ta(e){return new Hp({check:"overwrite",tx:e})}function Pm(e){return Ta(t=>t.normalize(e))}function Em(){return Ta(e=>e.trim())}function Om(){return Ta(e=>e.toLowerCase())}function Mm(){return Ta(e=>e.toUpperCase())}function Rm(){return Ta(e=>Lh(e))}function Dm(e,t,i){return new e({type:"array",element:t,...pe(i)})}function zm(e,t,i){return new e({type:"custom",check:"custom",fn:t,...pe(i)})}function Lm(e){const t=Bm(i=>(i.addIssue=a=>{if(typeof a=="string")i.issues.push(us(a,i.value,t._zod.def));else{const s=a;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=i.value),s.inst??(s.inst=t),s.continue??(s.continue=!t._zod.def.abort),i.issues.push(us(s))}},e(i.value,i)));return t}function Bm(e,t){const i=new Zt({check:"custom",...pe(t)});return i._zod.check=e,i}function xc(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??ds,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function Nt(e,t,i={path:[],schemaPath:[]}){var a;const s=e._zod.def,r=t.seen.get(e);if(r)return r.count++,i.schemaPath.includes(e)&&(r.cycle=i.path),r.schema;const n={schema:{},count:1,cycle:void 0,path:i.path};t.seen.set(e,n);const o=e._zod.toJSONSchema?.();if(o)n.schema=o;else{const f={...i,schemaPath:[...i.schemaPath,e],path:i.path},u=e._zod.parent;if(u)n.ref=u,Nt(u,t,f),t.seen.get(u).isParent=!0;else if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,n.schema,f);else{const h=n.schema,m=t.processors[s.type];if(!m)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${s.type}`);m(e,t,h,f)}}const l=t.metadataRegistry.get(e);return l&&Object.assign(n.schema,l),t.io==="input"&&zt(e)&&(delete n.schema.examples,delete n.schema.default),t.io==="input"&&n.schema._prefault&&((a=n.schema).default??(a.default=n.schema._prefault)),delete n.schema._prefault,t.seen.get(e).schema}function kc(e,t){const i=e.seen.get(t);if(!i)throw new Error("Unprocessed schema. This is a bug in Zod.");const a=r=>{const n=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const f=e.external.registry.get(r[0])?.id,u=e.external.uri??(m=>m);if(f)return{ref:u(f)};const h=r[1].defId??r[1].schema.id??`schema${e.counter++}`;return r[1].defId=h,{defId:h,ref:`${u("__shared")}#/${n}/${h}`}}if(r[1]===i)return{ref:"#"};const l=`#/${n}/`,c=r[1].schema.id??`__schema${e.counter++}`;return{defId:c,ref:l+c}},s=r=>{if(r[1].schema.$ref)return;const n=r[1],{ref:o,defId:l}=a(r);n.def={...n.schema},l&&(n.defId=l);const c=n.schema;for(const f in c)delete c[f];c.$ref=o};if(e.cycles==="throw")for(const r of e.seen.entries()){const n=r[1];if(n.cycle)throw new Error(`Cycle detected: #/${n.cycle?.join("/")}/<root>
|
|
253
|
+
|
|
254
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const r of e.seen.entries()){const n=r[1];if(t===r[0]){s(r);continue}if(e.external){const l=e.external.registry.get(r[0])?.id;if(t!==r[0]&&l){s(r);continue}}if(e.metadataRegistry.get(r[0])?.id){s(r);continue}if(n.cycle){s(r);continue}if(n.count>1&&e.reused==="ref"){s(r);continue}}}function Nc(e,t){const i=e.seen.get(t);if(!i)throw new Error("Unprocessed schema. This is a bug in Zod.");const a=n=>{const o=e.seen.get(n),l=o.def??o.schema,c={...l};if(o.ref===null)return;const f=o.ref;if(o.ref=null,f){a(f);const u=e.seen.get(f).schema;u.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(l.allOf=l.allOf??[],l.allOf.push(u)):(Object.assign(l,u),Object.assign(l,c))}o.isParent||e.override({zodSchema:n,jsonSchema:l,path:o.path??[]})};for(const n of[...e.seen.entries()].reverse())a(n[0]);const s={};if(e.target==="draft-2020-12"?s.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?s.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?s.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const n=e.external.registry.get(t)?.id;if(!n)throw new Error("Schema is missing an `id` property");s.$id=e.external.uri(n)}Object.assign(s,i.def??i.schema);const r=e.external?.defs??{};for(const n of e.seen.entries()){const o=n[1];o.def&&o.defId&&(r[o.defId]=o.def)}e.external||Object.keys(r).length>0&&(e.target==="draft-2020-12"?s.$defs=r:s.definitions=r);try{const n=JSON.parse(JSON.stringify(s));return Object.defineProperty(n,"~standard",{value:{...t["~standard"],jsonSchema:{input:pr(t,"input"),output:pr(t,"output")}},enumerable:!1,writable:!1}),n}catch{throw new Error("Error converting schema to JSON.")}}function zt(e,t){const i=t??{seen:new Set};if(i.seen.has(e))return!1;i.seen.add(e);const a=e._zod.def;if(a.type==="transform")return!0;if(a.type==="array")return zt(a.element,i);if(a.type==="set")return zt(a.valueType,i);if(a.type==="lazy")return zt(a.getter(),i);if(a.type==="promise"||a.type==="optional"||a.type==="nonoptional"||a.type==="nullable"||a.type==="readonly"||a.type==="default"||a.type==="prefault")return zt(a.innerType,i);if(a.type==="intersection")return zt(a.left,i)||zt(a.right,i);if(a.type==="record"||a.type==="map")return zt(a.keyType,i)||zt(a.valueType,i);if(a.type==="pipe")return zt(a.in,i)||zt(a.out,i);if(a.type==="object"){for(const s in a.shape)if(zt(a.shape[s],i))return!0;return!1}if(a.type==="union"){for(const s of a.options)if(zt(s,i))return!0;return!1}if(a.type==="tuple"){for(const s of a.items)if(zt(s,i))return!0;return!!(a.rest&&zt(a.rest,i))}return!1}const Um=(e,t={})=>i=>{const a=xc({...i,processors:t});return Nt(e,a),kc(a,e),Nc(a,e)},pr=(e,t)=>i=>{const{libraryOptions:a,target:s}=i??{},r=xc({...a??{},target:s,io:t,processors:{}});return Nt(e,r),kc(r,e),Nc(r,e)},Zm={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Gm=(e,t,i,a)=>{const s=i;s.type="string";const{minimum:r,maximum:n,format:o,patterns:l,contentEncoding:c}=e._zod.bag;if(typeof r=="number"&&(s.minLength=r),typeof n=="number"&&(s.maxLength=n),o&&(s.format=Zm[o]??o,s.format===""&&delete s.format),c&&(s.contentEncoding=c),l&&l.size>0){const f=[...l];f.length===1?s.pattern=f[0].source:f.length>1&&(s.allOf=[...f.map(u=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:u.source}))])}},Wm=(e,t,i,a)=>{const s=i,{minimum:r,maximum:n,format:o,multipleOf:l,exclusiveMaximum:c,exclusiveMinimum:f}=e._zod.bag;typeof o=="string"&&o.includes("int")?s.type="integer":s.type="number",typeof f=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(s.minimum=f,s.exclusiveMinimum=!0):s.exclusiveMinimum=f),typeof r=="number"&&(s.minimum=r,typeof f=="number"&&t.target!=="draft-04"&&(f>=r?delete s.minimum:delete s.exclusiveMinimum)),typeof c=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(s.maximum=c,s.exclusiveMaximum=!0):s.exclusiveMaximum=c),typeof n=="number"&&(s.maximum=n,typeof c=="number"&&t.target!=="draft-04"&&(c<=n?delete s.maximum:delete s.exclusiveMaximum)),typeof l=="number"&&(s.multipleOf=l)},jm=(e,t,i,a)=>{i.type="boolean"},Ym=(e,t,i,a)=>{t.target==="openapi-3.0"?(i.type="string",i.nullable=!0,i.enum=[null]):i.type="null"},Hm=(e,t,i,a)=>{if(t.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},Xm=(e,t,i,a)=>{i.not={}},Km=(e,t,i,a)=>{},qm=(e,t,i,a)=>{const s=e._zod.def,r=Bl(s.entries);r.every(n=>typeof n=="number")&&(i.type="number"),r.every(n=>typeof n=="string")&&(i.type="string"),i.enum=r},Jm=(e,t,i,a)=>{const s=e._zod.def,r=[];for(const n of s.values)if(n===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof n=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");r.push(Number(n))}else r.push(n);if(r.length!==0)if(r.length===1){const n=r[0];i.type=n===null?"null":typeof n,t.target==="draft-04"||t.target==="openapi-3.0"?i.enum=[n]:i.const=n}else r.every(n=>typeof n=="number")&&(i.type="number"),r.every(n=>typeof n=="string")&&(i.type="string"),r.every(n=>typeof n=="boolean")&&(i.type="boolean"),r.every(n=>n===null)&&(i.type="null"),i.enum=r},Qm=(e,t,i,a)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},$m=(e,t,i,a)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},ey=(e,t,i,a)=>{const s=i,r=e._zod.def,{minimum:n,maximum:o}=e._zod.bag;typeof n=="number"&&(s.minItems=n),typeof o=="number"&&(s.maxItems=o),s.type="array",s.items=Nt(r.element,t,{...a,path:[...a.path,"items"]})},ty=(e,t,i,a)=>{const s=i,r=e._zod.def;s.type="object",s.properties={};const n=r.shape;for(const c in n)s.properties[c]=Nt(n[c],t,{...a,path:[...a.path,"properties",c]});const o=new Set(Object.keys(n)),l=new Set([...o].filter(c=>{const f=r.shape[c]._zod;return t.io==="input"?f.optin===void 0:f.optout===void 0}));l.size>0&&(s.required=Array.from(l)),r.catchall?._zod.def.type==="never"?s.additionalProperties=!1:r.catchall?r.catchall&&(s.additionalProperties=Nt(r.catchall,t,{...a,path:[...a.path,"additionalProperties"]})):t.io==="output"&&(s.additionalProperties=!1)},iy=(e,t,i,a)=>{const s=e._zod.def,r=s.inclusive===!1,n=s.options.map((o,l)=>Nt(o,t,{...a,path:[...a.path,r?"oneOf":"anyOf",l]}));r?i.oneOf=n:i.anyOf=n},ay=(e,t,i,a)=>{const s=e._zod.def,r=Nt(s.left,t,{...a,path:[...a.path,"allOf",0]}),n=Nt(s.right,t,{...a,path:[...a.path,"allOf",1]}),o=c=>"allOf"in c&&Object.keys(c).length===1,l=[...o(r)?r.allOf:[r],...o(n)?n.allOf:[n]];i.allOf=l},sy=(e,t,i,a)=>{const s=i,r=e._zod.def;s.type="object",(t.target==="draft-07"||t.target==="draft-2020-12")&&(s.propertyNames=Nt(r.keyType,t,{...a,path:[...a.path,"propertyNames"]})),s.additionalProperties=Nt(r.valueType,t,{...a,path:[...a.path,"additionalProperties"]})},ry=(e,t,i,a)=>{const s=e._zod.def,r=Nt(s.innerType,t,a),n=t.seen.get(e);t.target==="openapi-3.0"?(n.ref=s.innerType,i.nullable=!0):i.anyOf=[r,{type:"null"}]},ny=(e,t,i,a)=>{const s=e._zod.def;Nt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType},oy=(e,t,i,a)=>{const s=e._zod.def;Nt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType,i.default=JSON.parse(JSON.stringify(s.defaultValue))},ly=(e,t,i,a)=>{const s=e._zod.def;Nt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType,t.io==="input"&&(i._prefault=JSON.parse(JSON.stringify(s.defaultValue)))},cy=(e,t,i,a)=>{const s=e._zod.def;Nt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType;let n;try{n=s.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}i.default=n},fy=(e,t,i,a)=>{const s=e._zod.def,r=t.io==="input"?s.in._zod.def.type==="transform"?s.out:s.in:s.out;Nt(r,t,a);const n=t.seen.get(e);n.ref=r},uy=(e,t,i,a)=>{const s=e._zod.def;Nt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType,i.readOnly=!0},dy=(e,t,i,a)=>{const s=e._zod.def;Nt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType},hy=U("ZodISODateTime",(e,t)=>{og.init(e,t),ut.init(e,t)});function py(e){return gm(hy,e)}const gy=U("ZodISODate",(e,t)=>{lg.init(e,t),ut.init(e,t)});function my(e){return mm(gy,e)}const yy=U("ZodISOTime",(e,t)=>{cg.init(e,t),ut.init(e,t)});function by(e){return ym(yy,e)}const wy=U("ZodISODuration",(e,t)=>{fg.init(e,t),ut.init(e,t)});function vy(e){return bm(wy,e)}const $t=U("ZodError",(e,t)=>{Yl.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:i=>Qh(e,i)},flatten:{value:i=>Jh(e,i)},addIssue:{value:i=>{e.issues.push(i),e.message=JSON.stringify(e.issues,Zn,2)}},addIssues:{value:i=>{e.issues.push(...i),e.message=JSON.stringify(e.issues,Zn,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),xy=Yn($t),ky=Hn($t),Ny=lr($t),Ay=cr($t),Cy=tp($t),Sy=ip($t),Vy=ap($t),_y=sp($t),Iy=rp($t),Ty=np($t),Fy=op($t),Py=lp($t),nt=U("ZodType",(e,t)=>(at.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:pr(e,"input"),output:pr(e,"output")}}),e.toJSONSchema=Um(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...i)=>e.clone(sa(t,{checks:[...t.checks??[],...i.map(a=>typeof a=="function"?{_zod:{check:a,def:{check:"custom"},onattach:[]}}:a)]})),e.clone=(i,a)=>Oi(e,i,a),e.brand=()=>e,e.register=(i,a)=>(i.add(e,a),e),e.parse=(i,a)=>xy(e,i,a,{callee:e.parse}),e.safeParse=(i,a)=>Ny(e,i,a),e.parseAsync=async(i,a)=>ky(e,i,a,{callee:e.parseAsync}),e.safeParseAsync=async(i,a)=>Ay(e,i,a),e.spa=e.safeParseAsync,e.encode=(i,a)=>Cy(e,i,a),e.decode=(i,a)=>Sy(e,i,a),e.encodeAsync=async(i,a)=>Vy(e,i,a),e.decodeAsync=async(i,a)=>_y(e,i,a),e.safeEncode=(i,a)=>Iy(e,i,a),e.safeDecode=(i,a)=>Ty(e,i,a),e.safeEncodeAsync=async(i,a)=>Fy(e,i,a),e.safeDecodeAsync=async(i,a)=>Py(e,i,a),e.refine=(i,a)=>e.check(Ab(i,a)),e.superRefine=i=>e.check(Cb(i)),e.overwrite=i=>e.check(Ta(i)),e.optional=()=>p(e),e.nullable=()=>Pc(e),e.nullish=()=>p(Pc(e)),e.nonoptional=i=>yb(e,i),e.array=()=>Je(e),e.or=i=>At([e,i]),e.and=i=>ob(e,i),e.transform=i=>to(e,Tc(i)),e.default=i=>pb(e,i),e.prefault=i=>mb(e,i),e.catch=i=>wb(e,i),e.pipe=i=>to(e,i),e.readonly=()=>kb(e),e.describe=i=>{const a=e.clone();return ds.add(a,{description:i}),a},Object.defineProperty(e,"description",{get(){return ds.get(e)?.description},configurable:!0}),e.meta=(...i)=>{if(i.length===0)return ds.get(e);const a=e.clone();return ds.add(a,i[0]),a},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),Ac=U("_ZodString",(e,t)=>{Xn.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(a,s,r)=>Gm(e,a,s);const i=e._zod.bag;e.format=i.format??null,e.minLength=i.minimum??null,e.maxLength=i.maximum??null,e.regex=(...a)=>e.check(Sm(...a)),e.includes=(...a)=>e.check(Im(...a)),e.startsWith=(...a)=>e.check(Tm(...a)),e.endsWith=(...a)=>e.check(Fm(...a)),e.min=(...a)=>e.check(hr(...a)),e.max=(...a)=>e.check(wc(...a)),e.length=(...a)=>e.check(vc(...a)),e.nonempty=(...a)=>e.check(hr(1,...a)),e.lowercase=a=>e.check(Vm(a)),e.uppercase=a=>e.check(_m(a)),e.trim=()=>e.check(Em()),e.normalize=(...a)=>e.check(Pm(...a)),e.toLowerCase=()=>e.check(Om()),e.toUpperCase=()=>e.check(Mm()),e.slugify=()=>e.check(Rm())}),Ey=U("ZodString",(e,t)=>{Xn.init(e,t),Ac.init(e,t),e.email=i=>e.check(Xg(Oy,i)),e.url=i=>e.check($g(My,i)),e.jwt=i=>e.check(pm(qy,i)),e.emoji=i=>e.check(em(Ry,i)),e.guid=i=>e.check(gc(Cc,i)),e.uuid=i=>e.check(Kg(gr,i)),e.uuidv4=i=>e.check(qg(gr,i)),e.uuidv6=i=>e.check(Jg(gr,i)),e.uuidv7=i=>e.check(Qg(gr,i)),e.nanoid=i=>e.check(tm(Dy,i)),e.guid=i=>e.check(gc(Cc,i)),e.cuid=i=>e.check(im(zy,i)),e.cuid2=i=>e.check(am(Ly,i)),e.ulid=i=>e.check(sm(By,i)),e.base64=i=>e.check(um(Hy,i)),e.base64url=i=>e.check(dm(Xy,i)),e.xid=i=>e.check(rm(Uy,i)),e.ksuid=i=>e.check(nm(Zy,i)),e.ipv4=i=>e.check(om(Gy,i)),e.ipv6=i=>e.check(lm(Wy,i)),e.cidrv4=i=>e.check(cm(jy,i)),e.cidrv6=i=>e.check(fm(Yy,i)),e.e164=i=>e.check(hm(Ky,i)),e.datetime=i=>e.check(py(i)),e.date=i=>e.check(my(i)),e.time=i=>e.check(by(i)),e.duration=i=>e.check(vy(i))});function _(e){return Hg(Ey,e)}const ut=U("ZodStringFormat",(e,t)=>{rt.init(e,t),Ac.init(e,t)}),Oy=U("ZodEmail",(e,t)=>{Qp.init(e,t),ut.init(e,t)}),Cc=U("ZodGUID",(e,t)=>{qp.init(e,t),ut.init(e,t)}),gr=U("ZodUUID",(e,t)=>{Jp.init(e,t),ut.init(e,t)}),My=U("ZodURL",(e,t)=>{$p.init(e,t),ut.init(e,t)}),Ry=U("ZodEmoji",(e,t)=>{eg.init(e,t),ut.init(e,t)}),Dy=U("ZodNanoID",(e,t)=>{tg.init(e,t),ut.init(e,t)}),zy=U("ZodCUID",(e,t)=>{ig.init(e,t),ut.init(e,t)}),Ly=U("ZodCUID2",(e,t)=>{ag.init(e,t),ut.init(e,t)}),By=U("ZodULID",(e,t)=>{sg.init(e,t),ut.init(e,t)}),Uy=U("ZodXID",(e,t)=>{rg.init(e,t),ut.init(e,t)}),Zy=U("ZodKSUID",(e,t)=>{ng.init(e,t),ut.init(e,t)}),Gy=U("ZodIPv4",(e,t)=>{ug.init(e,t),ut.init(e,t)}),Wy=U("ZodIPv6",(e,t)=>{dg.init(e,t),ut.init(e,t)}),jy=U("ZodCIDRv4",(e,t)=>{hg.init(e,t),ut.init(e,t)}),Yy=U("ZodCIDRv6",(e,t)=>{pg.init(e,t),ut.init(e,t)}),Hy=U("ZodBase64",(e,t)=>{gg.init(e,t),ut.init(e,t)}),Xy=U("ZodBase64URL",(e,t)=>{yg.init(e,t),ut.init(e,t)}),Ky=U("ZodE164",(e,t)=>{bg.init(e,t),ut.init(e,t)}),qy=U("ZodJWT",(e,t)=>{vg.init(e,t),ut.init(e,t)}),Sc=U("ZodNumber",(e,t)=>{ic.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(a,s,r)=>Wm(e,a,s),e.gt=(a,s)=>e.check(yc(a,s)),e.gte=(a,s)=>e.check(Jn(a,s)),e.min=(a,s)=>e.check(Jn(a,s)),e.lt=(a,s)=>e.check(mc(a,s)),e.lte=(a,s)=>e.check(qn(a,s)),e.max=(a,s)=>e.check(qn(a,s)),e.int=a=>e.check(Vc(a)),e.safe=a=>e.check(Vc(a)),e.positive=a=>e.check(yc(0,a)),e.nonnegative=a=>e.check(Jn(0,a)),e.negative=a=>e.check(mc(0,a)),e.nonpositive=a=>e.check(qn(0,a)),e.multipleOf=(a,s)=>e.check(bc(a,s)),e.step=(a,s)=>e.check(bc(a,s)),e.finite=()=>e;const i=e._zod.bag;e.minValue=Math.max(i.minimum??Number.NEGATIVE_INFINITY,i.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(i.maximum??Number.POSITIVE_INFINITY,i.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(i.format??"").includes("int")||Number.isSafeInteger(i.multipleOf??.5),e.isFinite=!0,e.format=i.format??null});function F(e){return wm(Sc,e)}const Jy=U("ZodNumberFormat",(e,t)=>{xg.init(e,t),Sc.init(e,t)});function Vc(e){return vm(Jy,e)}const Qy=U("ZodBoolean",(e,t)=>{kg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>jm(e,i,a)});function dt(e){return xm(Qy,e)}const $y=U("ZodNull",(e,t)=>{Ng.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>Ym(e,i,a)});function _c(e){return km($y,e)}const eb=U("ZodUnknown",(e,t)=>{Ag.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>Km()});function ht(){return Nm(eb)}const tb=U("ZodNever",(e,t)=>{Cg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>Xm(e,i,a)});function Se(e){return Am(tb,e)}const ib=U("ZodVoid",(e,t)=>{Sg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>Hm(e,i)});function Qn(e){return Cm(ib,e)}const ab=U("ZodArray",(e,t)=>{Vg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>ey(e,i,a,s),e.element=t.element,e.min=(i,a)=>e.check(hr(i,a)),e.nonempty=i=>e.check(hr(1,i)),e.max=(i,a)=>e.check(wc(i,a)),e.length=(i,a)=>e.check(vc(i,a)),e.unwrap=()=>e.element});function Je(e,t){return Dm(ab,e,t)}const sb=U("ZodObject",(e,t)=>{Ig.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>ty(e,i,a,s),$e(e,"shape",()=>t.shape),e.keyof=()=>Y(Object.keys(e._zod.def.shape)),e.catchall=i=>e.clone({...e._zod.def,catchall:i}),e.passthrough=()=>e.clone({...e._zod.def,catchall:ht()}),e.loose=()=>e.clone({...e._zod.def,catchall:ht()}),e.strict=()=>e.clone({...e._zod.def,catchall:Se()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=i=>Yh(e,i),e.safeExtend=i=>Hh(e,i),e.merge=i=>Xh(e,i),e.pick=i=>Wh(e,i),e.omit=i=>jh(e,i),e.partial=(...i)=>Kh(Fc,e,i[0]),e.required=(...i)=>qh(Ec,e,i[0])});function x(e,t){const i={type:"object",shape:e??{},...pe(t)};return new sb(i)}const Ic=U("ZodUnion",(e,t)=>{oc.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>iy(e,i,a,s),e.options=t.options});function At(e,t){return new Ic({type:"union",options:e,...pe(t)})}const rb=U("ZodDiscriminatedUnion",(e,t)=>{Ic.init(e,t),Tg.init(e,t)});function $n(e,t,i){return new rb({type:"union",options:t,discriminator:e,...pe(i)})}const nb=U("ZodIntersection",(e,t)=>{Fg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>ay(e,i,a,s)});function ob(e,t){return new nb({type:"intersection",left:e,right:t})}const lb=U("ZodRecord",(e,t)=>{Pg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>sy(e,i,a,s),e.keyType=t.keyType,e.valueType=t.valueType});function cb(e,t,i){return new lb({type:"record",keyType:e,valueType:t,...pe(i)})}const eo=U("ZodEnum",(e,t)=>{Eg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(a,s,r)=>qm(e,a,s),e.enum=t.entries,e.options=Object.values(t.entries);const i=new Set(Object.keys(t.entries));e.extract=(a,s)=>{const r={};for(const n of a)if(i.has(n))r[n]=t.entries[n];else throw new Error(`Key ${n} not found in enum`);return new eo({...t,checks:[],...pe(s),entries:r})},e.exclude=(a,s)=>{const r={...t.entries};for(const n of a)if(i.has(n))delete r[n];else throw new Error(`Key ${n} not found in enum`);return new eo({...t,checks:[],...pe(s),entries:r})}});function Y(e,t){const i=Array.isArray(e)?Object.fromEntries(e.map(a=>[a,a])):e;return new eo({type:"enum",entries:i,...pe(t)})}const fb=U("ZodLiteral",(e,t)=>{Og.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>Jm(e,i,a),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function ve(e,t){return new fb({type:"literal",values:Array.isArray(e)?e:[e],...pe(t)})}const ub=U("ZodTransform",(e,t)=>{Mg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>$m(e,i),e._zod.parse=(i,a)=>{if(a.direction==="backward")throw new zl(e.constructor.name);i.addIssue=r=>{if(typeof r=="string")i.issues.push(us(r,i.value,t));else{const n=r;n.fatal&&(n.continue=!1),n.code??(n.code="custom"),n.input??(n.input=i.value),n.inst??(n.inst=e),i.issues.push(us(n))}};const s=t.transform(i.value,i);return s instanceof Promise?s.then(r=>(i.value=r,i)):(i.value=s,i)}});function Tc(e){return new ub({type:"transform",transform:e})}const Fc=U("ZodOptional",(e,t)=>{Rg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>dy(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function p(e){return new Fc({type:"optional",innerType:e})}const db=U("ZodNullable",(e,t)=>{Dg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>ry(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function Pc(e){return new db({type:"nullable",innerType:e})}const hb=U("ZodDefault",(e,t)=>{zg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>oy(e,i,a,s),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function pb(e,t){return new hb({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():Wl(t)}})}const gb=U("ZodPrefault",(e,t)=>{Lg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>ly(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function mb(e,t){return new gb({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():Wl(t)}})}const Ec=U("ZodNonOptional",(e,t)=>{Bg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>ny(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function yb(e,t){return new Ec({type:"nonoptional",innerType:e,...pe(t)})}const bb=U("ZodCatch",(e,t)=>{Ug.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>cy(e,i,a,s),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function wb(e,t){return new bb({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const vb=U("ZodPipe",(e,t)=>{Zg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>fy(e,i,a,s),e.in=t.in,e.out=t.out});function to(e,t){return new vb({type:"pipe",in:e,out:t})}const xb=U("ZodReadonly",(e,t)=>{Gg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>uy(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function kb(e){return new xb({type:"readonly",innerType:e})}const Nb=U("ZodCustom",(e,t)=>{Wg.init(e,t),nt.init(e,t),e._zod.processJSONSchema=(i,a,s)=>Qm(e,i)});function Ab(e,t={}){return zm(Nb,e,t)}function Cb(e){return Lm(e)}function I(e,t){return to(Tc(e),t)}const io={custom:"custom"};ht(),ht(),ht(),ht(),ht(),ht(),ht(),ht(),ht(),ht(),ht(),ht(),ht(),ht(),ht(),ht();const Sb=x({color:p(_()),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),padding:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),borderRadius:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int()))}),Vb=x({family:p(_()),color:p(_()),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),size:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),lineHeight:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),stroke:p(_()),strokeWidth:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()))}),_b=x({top:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),left:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),right:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()))}),Ib=x({type:Y(["caption"]),src:_(),font:p(Vb),background:p(Sb),margin:p(_b),trim:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),speed:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(10)))}),Tb=x({color:p(_()),threshold:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(0).lte(250))),halo:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(0).lte(250)))}),Fb=x({type:Y(["text-to-avatar"]),text:_(),avatar:Y(["jack","lana","lily","matt","rian"]),background:p(_())}),Pb=x({type:ve("didTextToAvatarOptions_DIDTextToAvatarOptions")}).and(Fb),Eb=x({provider:Y(["d-id"]),options:Pb}),Ob=x({type:Y(["text-to-speech"]),text:_(),voice:Y(["Adam","Antoni","Arnold","Bella","Domi","Elli","Josh","Rachel","Sam"])}),Mb=x({type:ve("elevenlabsTextToSpeechOptions_ElevenLabsTextToSpeechOptions")}).and(Ob),Rb=x({provider:Y(["elevenlabs"]),options:Mb}),Db=x({type:Y(["text-to-avatar"]),text:_(),avatar:Y(["Angela","Bill","Daisy","Derek","Eva","Jake","Jeff","Jerome","Joon","Kayla","Kent","Luna","Mark","Matthew","Monica","Peter","Selina","Tanya","Thomas","Tina","Tyler","Vanessa","Vera","Wilson","Zoey"]),voice:Y(["Abbi - Natural","Adam - Natural","Aiston - Friendly","Alice - Newscaster","Alison - Cheerful","Amber - Friendly","Amy - Warm","Ana - Cheerful","Antoni - Friendly","Aria - Newscaster","Arnold - Cheerful","Arthur - Natural","Bella - Friendly","Belle - Natural","Brandon - Warm","Brian - Natural","Bruce - Natural","Cerise - Cheerful","Christopher - Calm","Clara - Professional","Connor - Natural","Dahlia - Friendly","Davis - Professional","Dean - Natural","Delbert - Cheerful","Edward - Friendly","Elaine - Calm","Emily - Natural","Emma - Newscaster","Eric - Newscaster","Grace - Natural","Hailey - Calm","Indira - Cheerful","Isabella - Cheerful","Jacob - Natural","Jahmai - Friendly","Jane - Serious","Jason - Serious","Jelle - Friendly","Jen - Natural","Jenny - Professional","Jodi - Cheerful","Joey - Calm","Johan - Friendly","Josie - Cheerful","Keanan - Natural","Keith - Cheerful","Kellie - Friendly","Lauren - Friendly","Leah - Natural","Liam - Professional","Libby - Natural","Lily - Professional","Lucas - Natural","Luke - Professional","Luna - Natural","Marieke - Natural","Matthew - Professional","Michelle - Natural","Mitchell - Natural","Molly - Newscaster","Monica - Calm","Natasha - Professional","Neerja - Newscaster","Noah - Serious","Oliver - Newscaster","Olivia - Calm","Paul - Natural","Prabhat - Natural","Raveena - Natural","Rudi - Friendly","Ryan - Professional","Sam - Natural","Sara - Cheerful","Sherry - Friendly","Sonia - Warm","Thomas - Natural","Todd - Professional","Tony - Professional","Tracy - Cheerful","Wayne - Natural","Wilder - Natural","Wille - Natural","William - Friendly"]),avatarStyle:p(Y(["normal","circle"])),background:p(_()),ratio:p(Y(["16:9","9:16"])),test:p(dt())}),zb=x({type:ve("heygenTextToAvatarOptions_HeyGenTextToAvatarOptions")}).and(Db),Lb=x({provider:Y(["heygen"]),options:zb}),Bb=x({type:Y(["text-generator"]),prompt:_(),model:Y(["gpt-3.5-turbo","gpt-4"]),systemPrompt:p(_())}),Ub=x({type:ve("openaiTextGeneratorOptions_OpenAiTextGeneratorOptions")}).and(Bb),Zb=x({provider:Y(["openai"]),options:Ub}),Gb=x({status:_(),title:_(),detail:_()});x({errors:Je(Gb)});const Wb=x({owner:_(),provider:Y(["shotstack","elevenlabs","heygen","d-id"]),type:Y(["text-to-speech","text-to-avatar"]),url:p(_()),status:Y(["queued","processing","saving","done","failed"]),created:_(),updated:_()}),jb=x({type:_(),id:_(),attributes:Wb});x({data:jb});const Yb=x({type:Y(["image-to-video"]),imageUrl:_(),guidanceScale:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(1.8),motion:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())).default(127)}),Hb=x({type:Y(["text-generator"]),prompt:_()}),Xb=x({type:Y(["text-to-image"]),prompt:_(),width:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int()),height:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())}),Kb=x({type:Y(["text-to-speech"]),text:_(),voice:Y(["Hala","Lisa","Arlet","Hiujin","Zhiyu","Sofie","Laura","Olivia","Amy","Emma","Brian","Arthur","Kajal","Niamh","Aria","Ayanda","Ivy","Joanna","Kendra","Kimberly","Salli","Joey","Justin","Kevin","Matthew","Ruth","Stephen","Suvi","Léa","Rémi","Gabrielle","Liam","Vicki","Daniel","Hannah","Kajal","Bianca","Adriano","Takumi","Kazuha","Tomoko","Seoyeon","Ida","Ola","Camila","Vitória","Vitoria","Thiago","Inês","Ines","Lucia","Sergio","Mia","Andrés","Lupe","Pedro","Elin"]),language:p(Y(["cmn-CN","da-DK","de-DE","en-AU","en-GB","en-IN","en-US","es-ES","es-MX","es-US","fr-CA","fr-FR","it-IT","ja-JP","hi-IN","ko-KR","nb-NO","nl-NL","pl-PL","pt-BR","pt-PT","sv-SE","en-NZ","en-ZA","ca-ES","de-AT","yue-CN","ar-AE","fi-FI"])),newscaster:p(dt()).default(!1)}),qb=At([x({type:ve("shotstackTextToSpeechOptions_ShotstackTextToSpeechOptions")}).and(Kb),x({type:ve("shotstackTextToImageOptions_ShotstackTextToImageOptions")}).and(Xb),x({type:ve("shotstackTextGeneratorOptions_ShotstackTextGeneratorOptions")}).and(Hb),x({type:ve("shotstackImageToVideoOptions_ShotstackImageToVideoOptions")}).and(Yb)]),Jb=x({provider:Y(["shotstack"]),options:qb}),Qb=x({type:Y(["text-to-image"]),prompt:_(),engine:p(Y(["stable-diffusion-xl-1024-v0-9","stable-diffusion-xl-1024-v1-0","stable-diffusion-v1-6","stable-diffusion-512-v2-1","stable-diffusion-xl-beta-v2-2-2"])),width:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int()),height:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int()),steps:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())).default(30),seed:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())).default(0),cfgScale:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(7),stylePreset:p(Y(["3d-model","analog-film","anime","cinematic","comic-book","digital-art","enhance","fantasy-art","isometric","line-art","low-poly","modeling-compound","neon-punk","origami","photographic","pixel-art","tile-texture"]))}),$b=x({type:ve("stabilityAiTextToImageOptions_StabilityAiTextToImageOptions")}).and(Qb),ew=x({provider:Y(["stability-ai"]),options:$b}),tw=At([x({provider:ve("shotstackGeneratedAsset_ShotstackGeneratedAsset")}).and(Jb),x({provider:ve("didGeneratedAsset_DIDGeneratedAsset")}).and(Eb),x({provider:ve("elevenlabsGeneratedAsset_ElevenLabsGeneratedAsset")}).and(Rb),x({provider:ve("heygenGeneratedAsset_HeyGenGeneratedAsset")}).and(Lb),x({provider:ve("openaiGeneratedAsset_OpenAiGeneratedAsset")}).and(Zb),x({provider:ve("stabilityAiGeneratedAsset_StabilityAiGeneratedAsset")}).and(ew)]),mr=x({top:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))),bottom:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))),left:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))),right:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1)))}),iw=x({bucket:_(),prefix:p(_()),filename:p(_())}),aw=x({provider:_().default("google-cloud-storage"),options:p(iw)}),sw=x({folderId:_(),filename:p(_())}),rw=x({provider:_().default("google-drive"),options:sw}),nw=x({playbackPolicy:p(Je(Y(["public","signed"]))),passthrough:p(_().max(255))}),ow=x({provider:_().default("mux"),options:p(nw)}),lw=x({region:_(),bucket:_(),prefix:p(_()),filename:p(_()),acl:p(_())}),cw=x({provider:_().default("s3"),options:p(lw)}),fw=x({provider:_().default("shotstack"),exclude:p(dt())}),uw=x({title:p(_().max(150)),privacyLevel:p(Y(["public","friends","private"])),disableDuet:p(dt()).default(!1),disableStitch:p(dt()).default(!1),disableComment:p(dt()).default(!1)}),dw=x({provider:_().default("tiktok"),options:p(uw)}),hw=x({view:p(Y(["anybody","nobody","contacts","password","unlisted"])),embed:p(Y(["public","private","whitelist"])),comments:p(Y(["anybody","nobody","contacts"]))}),pw=x({name:p(_()),description:p(_()),privacy:p(hw),folderUri:p(_())}),gw=x({provider:_().default("vimeo"),options:p(pw)}),yr=At([x({destinations:p(ve("shotstackDestination_ShotstackDestination"))}).and(fw),x({destinations:p(ve("muxDestination_MuxDestination"))}).and(ow),x({destinations:p(ve("s3Destination_S3Destination"))}).and(cw),x({destinations:p(ve("googleCloudStorageDestination_GoogleCloudStorageDestination"))}).and(aw),x({destinations:p(ve("googleDriveDestination_GoogleDriveDestination"))}).and(rw),x({destinations:p(ve("vimeoDestination_VimeoDestination"))}).and(gw),x({destinations:p(ve("tiktokDestination_TiktokDestination"))}).and(dw)]),mw=yr,yw=x({horizontal:p(dt()),vertical:p(dt())}),bw=x({src:_()}),ww=x({type:Y(["html"]),html:_(),css:p(_()),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),height:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),background:p(_()),position:p(Y(["top","topRight","right","bottomRight","bottom","bottomLeft","left","topLeft","center"]))}),vw=x({type:Y(["image"]),src:_(),crop:p(mr)}),xw=x({type:p(Y(["image-to-video"])),src:p(_()),prompt:p(_()),aspectRatio:p(Y(["1:1","4:3","16:9","9:16","3:4","21:9","9:21"])),speed:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(10))),crop:p(mr)}),kw=x({preset:Y(["conference","interview","lecture","meeting","mobile_phone","music","podcast","studio","voice_over"])}),Nw=x({provider:_().default("dolby"),options:kw}),Aw=x({enhancement:ve("dolbyEnhancement_DolbyEnhancement")}).and(Nw),Cw=x({audio:p(Aw)}),Sw=x({status:_(),title:_(),detail:_()});x({errors:Je(Sw)});const Vw=x({type:_(),id:_()});x({data:Vw});const _w=x({id:_(),url:_(),expires:_()}),Iw=x({type:_(),id:_(),attributes:_w});x({data:Iw});const Tw=x({speed:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(10))),preservePitch:p(dt())}),Fw=x({format:p(Y(["srt","vtt"]))}),Pw=x({type:Y(["luma"]),src:_(),trim:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()))}),Oc=x({find:_(),replace:ht()}),Ew=x({capture:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())}),Ow=x({start:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))),length:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0)))}),Mw=x({id:_(),owner:_(),region:p(_()),renderId:p(_()),providerId:p(_()),filename:p(_()),url:p(_()),status:Y(["importing","ready","failed","deleted"]),created:p(_()),updated:p(_())}),Mc=x({type:_(),attributes:Mw});x({data:Je(Mc)}),x({data:Mc}),x({success:dt(),message:_(),response:cb(_(),ht())});const Rw=x({message:_(),id:_()});x({success:dt(),message:_(),response:Rw});const Dw=x({id:_(),name:_(),created:p(_()),updated:p(_())}),zw=x({owner:_(),templates:Je(Dw)});x({success:dt(),message:_(),response:zw});const Lw=x({message:_(),id:_()});x({success:dt(),message:_(),response:Lw});const Bw=x({horizontal:p(Y(["left","center","right"])),vertical:p(Y(["top","middle","bottom"]))}),Uw=x({preset:Y(["fadeIn","slideIn","typewriter","ascend","shift","movingLetters"]),speed:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(.1).lte(10))).default(1),duration:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(.1).lte(30))),style:p(Y(["character","word"])),direction:p(Y(["left","right","up","down"]))}),Zw=x({color:p(_().regex(/^#[A-Fa-f0-9]{6}$/)),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(1),borderRadius:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0)}),Gw=x({width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0),color:p(_().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(1),radius:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0)}),Ww=x({type:p(Y(["linear","radial"])),angle:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(360))).default(0),stops:Je(x({offset:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1)),color:_().regex(/^#[A-Fa-f0-9]{6}$/)})).min(2)}),jw=x({top:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0),right:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0),bottom:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0),left:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0)}),Yw=x({offsetX:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(0),offsetY:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(0),blur:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0),color:p(_().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(.5)}),Hw=x({width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0),color:p(_().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(1)}),Xw=x({family:p(_()).default("Open Sans"),size:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(1).lte(500))).default(24),weight:p(ht()).default("400"),color:p(_().regex(/^#[A-Fa-f0-9]{6}$/)).default("#ffffff"),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(1),background:p(_().regex(/^#[A-Fa-f0-9]{6}$/)),stroke:p(Hw)}),Kw=x({letterSpacing:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(0),lineHeight:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(10))).default(1.2),textTransform:p(Y(["none","uppercase","lowercase","capitalize"])),textDecoration:p(Y(["none","underline","line-through"])),gradient:p(Ww)}),Rc=x({type:Y(["rich-text"]),text:_().max(5e3),font:p(Xw),style:p(Kw),shadow:p(Yw),background:p(Zw),border:p(Gw),padding:p(At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0)),jw])),align:p(Bw),animation:p(Uw)}),qw=Rc,Jw=x({id:p(_()),owner:p(_()),status:p(Y(["queued","failed"])),created:p(_())}),Qw=x({type:p(_()),attributes:p(Jw)});x({data:Qw});const $w=x({url:_(),id:_(),destinations:Je(yr)}),e1=x({type:Y(["shape"]),shape:Y(["rectangle","circle","line"]),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),height:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),fill:p(x({color:p(_()),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()))})),stroke:p(x({color:p(_()),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()))})),rectangle:p(x({width:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int()),height:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int()),cornerRadius:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int()))})),circle:p(x({radius:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())})),line:p(x({length:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int()),thickness:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())}))}),ao=x({width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(1).lte(4096))),height:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(1).lte(4096)))}),t1=ao,Dc=x({format:p(Y(["mp4","webm","mov","avi","mkv","ogv","wmv","avif","gif","mp3","wav","jpg","png","webp","tif"])),size:p(ao),fit:p(Y(["cover","contain","crop"])),resolution:p(Y(["preview","mobile","sd","hd","fhd"])),quality:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(1).lte(100))),fps:p(At([ve(12),ve(15),ve(23.976),ve(24),ve(25),ve(29.97),ve(30),ve(48),ve(50),ve(59.94),ve(60)])),speed:p(Tw),keyframeInterval:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(1).lte(300))),fixOffset:p(dt()),fixRotation:p(dt()),enhance:p(Cw),filename:p(_())}),i1=x({renditions:p(Je(Dc)),transcription:p(Fw)}),a1=x({id:_(),status:p(Y(["queued","importing","ready","failed","deleted","overwritten"])),url:p(_()),executionTime:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),transformation:p(Dc),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),height:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),duration:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),fps:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()))}),s1=x({renditions:p(Je(a1))}),r1=x({id:_(),owner:_(),input:p(_()),source:p(_()),status:p(Y(["queued","importing","ready","failed","deleted","overwritten"])),outputs:p(s1),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),height:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),duration:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),fps:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),created:p(_()),updated:p(_())}),zc=x({type:_(),id:_(),attributes:r1});x({data:Je(zc)}),x({data:zc});const n1=x({url:p(_()),outputs:p(i1),destinations:p(yr),callback:p(_())}),o1=x({src:_(),effect:p(Y(["fadeIn","fadeOut","fadeInFadeOut"])),volume:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()))}),Lc=x({offset:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1)),color:_().regex(/^#[A-Fa-f0-9]{6}$/)}),l1=x({type:Y(["linear"]),angle:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(360))).default(0),stops:Je(Lc).min(2),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(1)}),c1=x({type:Y(["radial"]),stops:Je(Lc).min(2),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(1)}),f1=x({offsetX:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(0),offsetY:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(0),blur:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0))).default(0),color:p(_().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(.5)}),u1=x({type:Y(["solid"]),color:_().regex(/^#[A-Fa-f0-9]{6}$/).default("#000000"),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(1)}),d1=$n("type",[u1,l1,c1]),h1=x({color:p(_().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(100))).default(1),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(1),lineCap:p(Y(["butt","round","square"])),lineJoin:p(Y(["miter","round","bevel"])),dashArray:p(Je(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0)))),dashOffset:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(0)}),p1=x({x:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(0),y:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())).default(0),rotation:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(-360).lte(360))).default(0),scale:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(.01).lte(100))).default(1),originX:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(.5),originY:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))).default(.5)}),g1=x({type:Y(["arrow"]),length:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(4096)),headWidth:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(1e3)),headLength:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(1e3)),shaftWidth:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(1e3))}),m1=x({type:Y(["circle"]),radius:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(2048))}),y1=x({type:Y(["cross"]),width:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(4096)),height:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(4096)),thickness:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(500))}),b1=x({type:Y(["ellipse"]),radiusX:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(2048)),radiusY:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(2048))}),w1=x({type:Y(["heart"]),size:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(4096))}),v1=x({type:Y(["line"]),length:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(4096)),thickness:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(500))}),x1=x({type:Y(["path"]),d:_().min(1).max(1e5)}),k1=x({type:Y(["polygon"]),sides:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(3).lte(100)),radius:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(2048))}),N1=x({type:Y(["rectangle"]),width:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(4096)),height:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(4096)),cornerRadius:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(2048))).default(0)}),A1=x({type:Y(["ring"]),outerRadius:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(2048)),innerRadius:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(2048))}),C1=x({type:Y(["star"]),points:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(3).lte(100)),outerRadius:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(2048)),innerRadius:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(1).lte(2048))}),S1=$n("type",[N1,m1,b1,v1,k1,C1,g1,w1,y1,A1,x1]),Bc=x({type:Y(["svg"]),src:p(_().min(1).max(5e5)),shape:p(S1),fill:p(d1),stroke:p(h1),shadow:p(f1),transform:p(p1),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1)))).default(1),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(1).lte(4096)))),height:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(1).lte(4096))))}).superRefine((e,t)=>{const i=e.shape!==void 0,a=e.src!==void 0&&e.src.trim()!=="";if(!i&&!a&&t.addIssue({code:io.custom,message:"Either 'src' or 'shape' must be provided",path:[]}),i&&a&&t.addIssue({code:io.custom,message:"Provide either 'src' or 'shape', not both",path:["src"]}),a){const s=["shape","fill","stroke","shadow","transform","width","height"];for(const r of s)e[r]!==void 0&&t.addIssue({code:io.custom,message:`'${r}' is not allowed when using 'src'. Only 'type' and 'src' are allowed in import mode`,path:[r]})}}),V1=Bc,_1=x({id:_(),merge:p(Je(Oc))}),I1=x({horizontal:p(Y(["left","center","right"])),vertical:p(Y(["top","center","bottom"]))}),T1=x({preset:Y(["typewriter"]),duration:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(.1).lte(30)))}),F1=x({color:p(_().regex(/^#[A-Fa-f0-9]{6}$/)),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))),padding:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(100))),borderRadius:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0)))}),P1=x({family:p(_()),color:p(_()),opacity:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),size:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),weight:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),lineHeight:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()))}),E1=x({width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(10))),color:p(_().regex(/^#[A-Fa-f0-9]{6}$/))}),O1=x({type:Y(["text"]),text:_(),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),height:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),font:p(P1),background:p(F1),alignment:p(I1),stroke:p(E1),animation:p(T1),ellipsis:p(_())}),M1=x({type:Y(["text-to-image"]),prompt:_(),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),height:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int())),crop:p(mr)}),R1=x({capture:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()),scale:I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1))}),Uc=x({format:Y(["mp4","gif","mp3","jpg","png","bmp"]),resolution:p(Y(["preview","mobile","sd","hd","1080","4k"])),aspectRatio:p(Y(["16:9","9:16","1:1","4:5","4:3"])),size:p(ao),fps:p(At([ve(12),ve(15),ve(23.976),ve(24),ve(25),ve(29.97),ve(30),ve(48),ve(50),ve(59.94),ve(60)])),scaleTo:p(Y(["preview","mobile","sd","hd","1080","4k"])),quality:p(Y(["verylow","low","medium","high","veryhigh"])),repeat:p(dt()),mute:p(dt()),range:p(Ow),poster:p(Ew),thumbnail:p(R1),destinations:p(Je(yr))}),Zc=Uc,D1=x({in:p(Y(["none","fade","fadeSlow","fadeFast","reveal","revealSlow","revealFast","wipeLeft","wipeLeftSlow","wipeLeftFast","wipeRight","wipeRightSlow","wipeRightFast","slideLeft","slideLeftSlow","slideLeftFast","slideRight","slideRightSlow","slideRightFast","slideUp","slideUpSlow","slideUpFast","slideDown","slideDownSlow","slideDownFast","carouselLeft","carouselLeftSlow","carouselLeftFast","carouselRight","carouselRightSlow","carouselRightFast","carouselUp","carouselUpSlow","carouselUpFast","carouselDown","carouselDownSlow","carouselDownFast","shuffleTopRight","shuffleTopRightSlow","shuffleTopRightFast","shuffleRightTop","shuffleRightTopSlow","shuffleRightTopFast","shuffleRightBottom","shuffleRightBottomSlow","shuffleRightBottomFast","shuffleBottomRight","shuffleBottomRightSlow","shuffleBottomRightFast","shuffleBottomLeft","shuffleBottomLeftSlow","shuffleBottomLeftFast","shuffleLeftBottom","shuffleLeftBottomSlow","shuffleLeftBottomFast","shuffleLeftTop","shuffleLeftTopSlow","shuffleLeftTopFast","shuffleTopLeft","shuffleTopLeftSlow","shuffleTopLeftFast","zoom"])),out:p(Y(["none","fade","fadeSlow","fadeFast","reveal","revealSlow","revealFast","wipeLeft","wipeLeftSlow","wipeLeftFast","wipeRight","wipeRightSlow","wipeRightFast","slideLeft","slideLeftSlow","slideLeftFast","slideRight","slideRightSlow","slideRightFast","slideUp","slideUpSlow","slideUpFast","slideDown","slideDownSlow","slideDownFast","carouselLeft","carouselLeftSlow","carouselLeftFast","carouselRight","carouselRightSlow","carouselRightFast","carouselUp","carouselUpSlow","carouselUpFast","carouselDown","carouselDownSlow","carouselDownFast","shuffleTopRight","shuffleTopRightSlow","shuffleTopRightFast","shuffleRightTop","shuffleRightTopSlow","shuffleRightTopFast","shuffleRightBottom","shuffleRightBottomSlow","shuffleRightBottomFast","shuffleBottomRight","shuffleBottomRightSlow","shuffleBottomRightFast","shuffleBottomLeft","shuffleBottomLeftSlow","shuffleBottomLeftFast","shuffleLeftBottom","shuffleLeftBottomSlow","shuffleLeftBottomFast","shuffleLeftTop","shuffleLeftTopSlow","shuffleLeftTopFast","shuffleTopLeft","shuffleTopLeftSlow","shuffleTopLeftFast","zoom"]))}),Ri=x({from:p(ht()),to:p(ht()),start:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),length:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),interpolation:p(Y(["linear","bezier","constant"])),easing:p(Y(["ease","easeIn","easeOut","easeInOut","easeInQuad","easeInCubic","easeInQuart","easeInQuint","easeInSine","easeInExpo","easeInCirc","easeInBack","easeOutQuad","easeOutCubic","easeOutQuart","easeOutQuint","easeOutSine","easeOutExpo","easeOutCirc","easeOutBack","easeInOutQuad","easeInOutCubic","easeInOutQuart","easeInOutQuint","easeInOutSine","easeInOutExpo","easeInOutCirc","easeInOutBack"]))}),z1=x({type:Y(["audio"]),src:_(),trim:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),volume:p(At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1)),Je(Ri)])),speed:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(10))),effect:p(Y(["none","fadeIn","fadeOut","fadeInFadeOut"]))}),Gc=x({x:p(At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(-10).lte(10)),Je(Ri)])),y:p(At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(-10).lte(10)),Je(Ri)]))}),L1=x({angle:p(At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(-360).lte(360)),Je(Ri)]))}),B1=x({x:p(At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(-100).lte(100)),Je(Ri)])),y:p(At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(-100).lte(100)),Je(Ri)]))}),U1=x({type:Y(["title"]),text:_(),style:p(Y(["minimal","blockbuster","vogue","sketchy","skinny","chunk","chunkLight","marker","future","subtitle"])),color:p(_()),size:p(Y(["xx-small","x-small","small","medium","large","x-large","xx-large"])),background:p(_()),position:p(Y(["top","topRight","right","bottomRight","bottom","bottomLeft","left","topLeft","center"])),offset:p(Gc)}),Z1=x({rotate:p(L1),skew:p(B1),flip:p(yw)}),G1=x({type:Y(["video"]),src:_(),transcode:p(dt()),trim:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),volume:p(At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(1)),Je(Ri)])),volumeEffect:p(Y(["none","fadeIn","fadeOut","fadeInFadeOut"])),speed:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().gte(0).lte(10))),crop:p(mr),chromaKey:p(Tb)}),W1=$n("type",[G1,vw,O1,Rc,z1,Pw,Ib,ww,U1,e1,Bc,M1,xw]),j1=x({asset:W1,start:At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()),Y(["auto"])]),length:At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()),ve("auto"),ve("end")]),fit:p(Y(["cover","contain","crop","none"])),scale:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),width:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(1).lte(3840))),height:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F().int().gte(1).lte(2160))),position:p(Y(["top","topRight","right","bottomRight","bottom","bottomLeft","left","topLeft","center"])),offset:p(Gc),transition:p(D1),effect:p(Y(["zoomIn","zoomInSlow","zoomInFast","zoomOut","zoomOutSlow","zoomOutFast","slideLeft","slideLeftSlow","slideLeftFast","slideRight","slideRightSlow","slideRightFast","slideUp","slideUpSlow","slideUpFast","slideDown","slideDownSlow","slideDownFast"])),filter:p(Y(["none","blur","boost","contrast","darken","greyscale","lighten","muted","negative"])),opacity:p(At([I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F()),Je(Ri)])),transform:p(Z1),alias:p(_().regex(/^[A-Za-z0-9_-]+$/))}),Y1=x({clips:Je(j1)}),H1=x({soundtrack:p(o1),background:p(_()),fonts:p(Je(bw)),tracks:Je(Y1),cache:p(dt())}),hs=x({timeline:H1,output:Uc,merge:p(Je(Oc)),callback:p(_()),disk:p(Y(["local","mount"]))}),Wc=hs,X1=x({id:_(),owner:_(),plan:p(_()),status:Y(["queued","fetching","preprocessing","rendering","saving","done","failed"]),error:p(_()),duration:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),renderTime:p(I(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},F())),url:p(_()),poster:p(At([_(),_c()])),thumbnail:p(At([_(),_c()])),data:p(hs),created:p(_()),updated:p(_())});x({success:dt(),message:_(),response:X1});const K1=x({id:_(),name:_(),owner:_(),template:hs});x({success:dt(),message:_(),response:K1});const jc=x({name:_(),template:p(hs)});x({body:hs,path:p(Se()),query:p(Se())}),x({body:p(Se()),path:x({id:_().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:p(x({data:p(dt()),merged:p(dt())}))}),x({body:p(Se()),path:p(Se()),query:p(Se())}),x({body:jc,path:p(Se()),query:p(Se())}),x({body:p(Se()),path:x({id:_().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:p(Se())}),Qn(),x({body:p(Se()),path:x({id:_().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:p(Se())}),x({body:jc,path:x({id:_().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:p(Se())}),x({body:_1,path:p(Se()),query:p(Se())}),x({body:p(Se()),path:x({url:_()}),query:p(Se())}),x({body:p(Se()),path:x({id:_().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:p(Se())}),Qn(),x({body:p(Se()),path:x({id:_().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:p(Se())}),x({body:p(Se()),path:x({id:_().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:p(Se())}),x({body:$w,path:p(Se()),query:p(Se())}),x({body:p(Se()),path:p(Se()),query:p(Se())}),x({body:n1,path:p(Se()),query:p(Se())}),x({body:p(Se()),path:x({id:_().regex(/^[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}$/)}),query:p(Se())}),Qn(),x({body:p(Se()),path:x({id:_().regex(/^[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}$/)}),query:p(Se())}),x({body:p(Se()),path:p(Se()),query:p(Se())}),x({body:tw,path:p(Se()),query:p(Se())}),x({body:p(Se()),path:x({id:_().regex(/^[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}$/)}),query:p(Se())});const q1=mw,J1=t1,Q1=Zc.shape.format,$1=Zc.shape.fps.unwrap(),e4=_().regex(/^#[0-9A-Fa-f]{6}$|^#[0-9A-Fa-f]{8}$/);var t4=Object.defineProperty,i4=Object.getOwnPropertyNames,a4=(e,t,i)=>t in e?t4(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,s4=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,i)=>(typeof require<"u"?require:t)[i]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),Yc=(e,t)=>function(){return t||(0,e[i4(e)[0]])((t={exports:{}}).exports,t),t.exports},Mt=(e,t,i)=>a4(e,typeof t!="symbol"?t+"":t,i);function Z(e,t,i){function a(o,l){if(o._zod||Object.defineProperty(o,"_zod",{value:{def:l,constr:n,traits:new Set},enumerable:!1}),o._zod.traits.has(e))return;o._zod.traits.add(e),t(o,l);const c=n.prototype,f=Object.keys(c);for(let u=0;u<f.length;u++){const h=f[u];h in o||(o[h]=c[h].bind(o))}}const s=i?.Parent??Object;class r extends s{}Object.defineProperty(r,"name",{value:e});function n(o){var l;const c=i?.Parent?new r:this;a(c,o),(l=c._zod).deferred??(l.deferred=[]);for(const f of c._zod.deferred)f();return c}return Object.defineProperty(n,"init",{value:a}),Object.defineProperty(n,Symbol.hasInstance,{value:o=>i?.Parent&&o instanceof i.Parent?!0:o?._zod?.traits?.has(e)}),Object.defineProperty(n,"name",{value:e}),n}class Fa extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Hc extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const Xc={};function Di(e){return Xc}function Kc(e){const t=Object.values(e).filter(a=>typeof a=="number");return Object.entries(e).filter(([a,s])=>t.indexOf(+a)===-1).map(([a,s])=>s)}function so(e,t){return typeof t=="bigint"?t.toString():t}function br(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function ro(e){return e==null}function no(e){const t=e.startsWith("^")?1:0,i=e.endsWith("$")?e.length-1:e.length;return e.slice(t,i)}function r4(e,t){const i=(e.toString().split(".")[1]||"").length,a=t.toString();let s=(a.split(".")[1]||"").length;if(s===0&&/\d?e-\d?/.test(a)){const l=a.match(/\d?e-(\d?)/);l?.[1]&&(s=Number.parseInt(l[1]))}const r=i>s?i:s,n=Number.parseInt(e.toFixed(r).replace(".","")),o=Number.parseInt(t.toFixed(r).replace(".",""));return n%o/10**r}const qc=Symbol("evaluating");function Ze(e,t,i){let a;Object.defineProperty(e,t,{get(){if(a!==qc)return a===void 0&&(a=qc,a=i()),a},set(s){Object.defineProperty(e,t,{value:s})},configurable:!0})}function ra(e,t,i){Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!0,configurable:!0})}function zi(...e){const t={};for(const i of e){const a=Object.getOwnPropertyDescriptors(i);Object.assign(t,a)}return Object.defineProperties({},t)}function Jc(e){return JSON.stringify(e)}function n4(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Qc="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function ps(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const o4=br(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function Pa(e){if(ps(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const i=t.prototype;return!(ps(i)===!1||Object.prototype.hasOwnProperty.call(i,"isPrototypeOf")===!1)}function $c(e){return Pa(e)?{...e}:Array.isArray(e)?[...e]:e}const l4=new Set(["string","number","symbol"]);function Ea(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Li(e,t,i){const a=new e._zod.constr(t??e._zod.def);return(!t||i?.parent)&&(a._zod.parent=e),a}function ge(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function c4(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}const f4={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function u4(e,t){const i=e._zod.def,a=i.checks;if(a&&a.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const r=zi(e._zod.def,{get shape(){const n={};for(const o in t){if(!(o in i.shape))throw new Error(`Unrecognized key: "${o}"`);t[o]&&(n[o]=i.shape[o])}return ra(this,"shape",n),n},checks:[]});return Li(e,r)}function d4(e,t){const i=e._zod.def,a=i.checks;if(a&&a.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const r=zi(e._zod.def,{get shape(){const n={...e._zod.def.shape};for(const o in t){if(!(o in i.shape))throw new Error(`Unrecognized key: "${o}"`);t[o]&&delete n[o]}return ra(this,"shape",n),n},checks:[]});return Li(e,r)}function h4(e,t){if(!Pa(t))throw new Error("Invalid input to extend: expected a plain object");const i=e._zod.def.checks;if(i&&i.length>0){const r=e._zod.def.shape;for(const n in t)if(Object.getOwnPropertyDescriptor(r,n)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const s=zi(e._zod.def,{get shape(){const r={...e._zod.def.shape,...t};return ra(this,"shape",r),r}});return Li(e,s)}function p4(e,t){if(!Pa(t))throw new Error("Invalid input to safeExtend: expected a plain object");const i=zi(e._zod.def,{get shape(){const a={...e._zod.def.shape,...t};return ra(this,"shape",a),a}});return Li(e,i)}function g4(e,t){const i=zi(e._zod.def,{get shape(){const a={...e._zod.def.shape,...t._zod.def.shape};return ra(this,"shape",a),a},get catchall(){return t._zod.def.catchall},checks:[]});return Li(e,i)}function m4(e,t,i){const s=t._zod.def.checks;if(s&&s.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const n=zi(t._zod.def,{get shape(){const o=t._zod.def.shape,l={...o};if(i)for(const c in i){if(!(c in o))throw new Error(`Unrecognized key: "${c}"`);i[c]&&(l[c]=e?new e({type:"optional",innerType:o[c]}):o[c])}else for(const c in o)l[c]=e?new e({type:"optional",innerType:o[c]}):o[c];return ra(this,"shape",l),l},checks:[]});return Li(t,n)}function y4(e,t,i){const a=zi(t._zod.def,{get shape(){const s=t._zod.def.shape,r={...s};if(i)for(const n in i){if(!(n in r))throw new Error(`Unrecognized key: "${n}"`);i[n]&&(r[n]=new e({type:"nonoptional",innerType:s[n]}))}else for(const n in s)r[n]=new e({type:"nonoptional",innerType:s[n]});return ra(this,"shape",r),r}});return Li(t,a)}function Oa(e,t=0){if(e.aborted===!0)return!0;for(let i=t;i<e.issues.length;i++)if(e.issues[i]?.continue!==!0)return!0;return!1}function Ma(e,t){return t.map(i=>{var a;return(a=i).path??(a.path=[]),i.path.unshift(e),i})}function wr(e){return typeof e=="string"?e:e?.message}function Bi(e,t,i){const a={...e,path:e.path??[]};if(!e.message){const s=wr(e.inst?._zod.def?.error?.(e))??wr(t?.error?.(e))??wr(i.customError?.(e))??wr(i.localeError?.(e))??"Invalid input";a.message=s}return delete a.inst,delete a.continue,t?.reportInput||delete a.input,a}function oo(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function gs(...e){const[t,i,a]=e;return typeof t=="string"?{message:t,code:"custom",input:i,inst:a}:{...t}}const ef=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,so,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},tf=Z("$ZodError",ef),af=Z("$ZodError",ef,{Parent:Error});function b4(e,t=i=>i.message){const i={},a=[];for(const s of e.issues)s.path.length>0?(i[s.path[0]]=i[s.path[0]]||[],i[s.path[0]].push(t(s))):a.push(t(s));return{formErrors:a,fieldErrors:i}}function w4(e,t=i=>i.message){const i={_errors:[]},a=s=>{for(const r of s.issues)if(r.code==="invalid_union"&&r.errors.length)r.errors.map(n=>a({issues:n}));else if(r.code==="invalid_key")a({issues:r.issues});else if(r.code==="invalid_element")a({issues:r.issues});else if(r.path.length===0)i._errors.push(t(r));else{let n=i,o=0;for(;o<r.path.length;){const l=r.path[o];o===r.path.length-1?(n[l]=n[l]||{_errors:[]},n[l]._errors.push(t(r))):n[l]=n[l]||{_errors:[]},n=n[l],o++}}};return a(e),i}const lo=e=>(t,i,a,s)=>{const r=a?Object.assign(a,{async:!1}):{async:!1},n=t._zod.run({value:i,issues:[]},r);if(n instanceof Promise)throw new Fa;if(n.issues.length){const o=new(s?.Err??e)(n.issues.map(l=>Bi(l,r,Di())));throw Qc(o,s?.callee),o}return n.value},co=e=>async(t,i,a,s)=>{const r=a?Object.assign(a,{async:!0}):{async:!0};let n=t._zod.run({value:i,issues:[]},r);if(n instanceof Promise&&(n=await n),n.issues.length){const o=new(s?.Err??e)(n.issues.map(l=>Bi(l,r,Di())));throw Qc(o,s?.callee),o}return n.value},vr=e=>(t,i,a)=>{const s=a?{...a,async:!1}:{async:!1},r=t._zod.run({value:i,issues:[]},s);if(r instanceof Promise)throw new Fa;return r.issues.length?{success:!1,error:new(e??tf)(r.issues.map(n=>Bi(n,s,Di())))}:{success:!0,data:r.value}},v4=vr(af),xr=e=>async(t,i,a)=>{const s=a?Object.assign(a,{async:!0}):{async:!0};let r=t._zod.run({value:i,issues:[]},s);return r instanceof Promise&&(r=await r),r.issues.length?{success:!1,error:new e(r.issues.map(n=>Bi(n,s,Di())))}:{success:!0,data:r.value}},x4=xr(af),k4=e=>(t,i,a)=>{const s=a?Object.assign(a,{direction:"backward"}):{direction:"backward"};return lo(e)(t,i,s)},N4=e=>(t,i,a)=>lo(e)(t,i,a),A4=e=>async(t,i,a)=>{const s=a?Object.assign(a,{direction:"backward"}):{direction:"backward"};return co(e)(t,i,s)},C4=e=>async(t,i,a)=>co(e)(t,i,a),S4=e=>(t,i,a)=>{const s=a?Object.assign(a,{direction:"backward"}):{direction:"backward"};return vr(e)(t,i,s)},V4=e=>(t,i,a)=>vr(e)(t,i,a),_4=e=>async(t,i,a)=>{const s=a?Object.assign(a,{direction:"backward"}):{direction:"backward"};return xr(e)(t,i,s)},I4=e=>async(t,i,a)=>xr(e)(t,i,a),T4=/^[cC][^\s-]{8,}$/,F4=/^[0-9a-z]+$/,P4=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,E4=/^[0-9a-vA-V]{20}$/,O4=/^[A-Za-z0-9]{27}$/,M4=/^[a-zA-Z0-9_-]{21}$/,R4=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,D4=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,sf=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,z4=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,L4="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function B4(){return new RegExp(L4,"u")}const U4=/^(?:(?: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])$/,Z4=/^(([0-9a-fA-F]{1,4}:){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}|:))$/,G4=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,W4=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,j4=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,rf=/^[A-Za-z0-9_-]*$/,Y4=/^\+[1-9]\d{6,14}$/,nf="(?:(?:\\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])))",H4=new RegExp(`^${nf}$`);function of(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function X4(e){return new RegExp(`^${of(e)}$`)}function K4(e){const t=of({precision:e.precision}),i=["Z"];e.local&&i.push(""),e.offset&&i.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const a=`${t}(?:${i.join("|")})`;return new RegExp(`^${nf}T(?:${a})$`)}const q4=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},J4=/^-?\d+$/,lf=/^-?\d+(?:\.\d+)?$/,Q4=/^(?:true|false)$/i,$4=/^null$/i,e2=/^[^A-Z]*$/,t2=/^[^a-z]*$/,Gt=Z("$ZodCheck",(e,t)=>{var i;e._zod??(e._zod={}),e._zod.def=t,(i=e._zod).onattach??(i.onattach=[])}),cf={number:"number",bigint:"bigint",object:"date"},ff=Z("$ZodCheckLessThan",(e,t)=>{Gt.init(e,t);const i=cf[typeof t.value];e._zod.onattach.push(a=>{const s=a._zod.bag,r=(t.inclusive?s.maximum:s.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<r&&(t.inclusive?s.maximum=t.value:s.exclusiveMaximum=t.value)}),e._zod.check=a=>{(t.inclusive?a.value<=t.value:a.value<t.value)||a.issues.push({origin:i,code:"too_big",maximum:typeof t.value=="object"?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),uf=Z("$ZodCheckGreaterThan",(e,t)=>{Gt.init(e,t);const i=cf[typeof t.value];e._zod.onattach.push(a=>{const s=a._zod.bag,r=(t.inclusive?s.minimum:s.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>r&&(t.inclusive?s.minimum=t.value:s.exclusiveMinimum=t.value)}),e._zod.check=a=>{(t.inclusive?a.value>=t.value:a.value>t.value)||a.issues.push({origin:i,code:"too_small",minimum:typeof t.value=="object"?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),i2=Z("$ZodCheckMultipleOf",(e,t)=>{Gt.init(e,t),e._zod.onattach.push(i=>{var a;(a=i._zod.bag).multipleOf??(a.multipleOf=t.value)}),e._zod.check=i=>{if(typeof i.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof i.value=="bigint"?i.value%t.value===BigInt(0):r4(i.value,t.value)===0)||i.issues.push({origin:typeof i.value,code:"not_multiple_of",divisor:t.value,input:i.value,inst:e,continue:!t.abort})}}),a2=Z("$ZodCheckNumberFormat",(e,t)=>{Gt.init(e,t),t.format=t.format||"float64";const i=t.format?.includes("int"),a=i?"int":"number",[s,r]=f4[t.format];e._zod.onattach.push(n=>{const o=n._zod.bag;o.format=t.format,o.minimum=s,o.maximum=r,i&&(o.pattern=J4)}),e._zod.check=n=>{const o=n.value;if(i){if(!Number.isInteger(o)){n.issues.push({expected:a,format:t.format,code:"invalid_type",continue:!1,input:o,inst:e});return}if(!Number.isSafeInteger(o)){o>0?n.issues.push({input:o,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort}):n.issues.push({input:o,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort});return}}o<s&&n.issues.push({origin:"number",input:o,code:"too_small",minimum:s,inclusive:!0,inst:e,continue:!t.abort}),o>r&&n.issues.push({origin:"number",input:o,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),s2=Z("$ZodCheckMaxLength",(e,t)=>{var i;Gt.init(e,t),(i=e._zod.def).when??(i.when=a=>{const s=a.value;return!ro(s)&&s.length!==void 0}),e._zod.onattach.push(a=>{const s=a._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<s&&(a._zod.bag.maximum=t.maximum)}),e._zod.check=a=>{const s=a.value;if(s.length<=t.maximum)return;const n=oo(s);a.issues.push({origin:n,code:"too_big",maximum:t.maximum,inclusive:!0,input:s,inst:e,continue:!t.abort})}}),r2=Z("$ZodCheckMinLength",(e,t)=>{var i;Gt.init(e,t),(i=e._zod.def).when??(i.when=a=>{const s=a.value;return!ro(s)&&s.length!==void 0}),e._zod.onattach.push(a=>{const s=a._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>s&&(a._zod.bag.minimum=t.minimum)}),e._zod.check=a=>{const s=a.value;if(s.length>=t.minimum)return;const n=oo(s);a.issues.push({origin:n,code:"too_small",minimum:t.minimum,inclusive:!0,input:s,inst:e,continue:!t.abort})}}),n2=Z("$ZodCheckLengthEquals",(e,t)=>{var i;Gt.init(e,t),(i=e._zod.def).when??(i.when=a=>{const s=a.value;return!ro(s)&&s.length!==void 0}),e._zod.onattach.push(a=>{const s=a._zod.bag;s.minimum=t.length,s.maximum=t.length,s.length=t.length}),e._zod.check=a=>{const s=a.value,r=s.length;if(r===t.length)return;const n=oo(s),o=r>t.length;a.issues.push({origin:n,...o?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:a.value,inst:e,continue:!t.abort})}}),kr=Z("$ZodCheckStringFormat",(e,t)=>{var i,a;Gt.init(e,t),e._zod.onattach.push(s=>{const r=s._zod.bag;r.format=t.format,t.pattern&&(r.patterns??(r.patterns=new Set),r.patterns.add(t.pattern))}),t.pattern?(i=e._zod).check??(i.check=s=>{t.pattern.lastIndex=0,!t.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:t.format,input:s.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(a=e._zod).check??(a.check=()=>{})}),o2=Z("$ZodCheckRegex",(e,t)=>{kr.init(e,t),e._zod.check=i=>{t.pattern.lastIndex=0,!t.pattern.test(i.value)&&i.issues.push({origin:"string",code:"invalid_format",format:"regex",input:i.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),l2=Z("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=e2),kr.init(e,t)}),c2=Z("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=t2),kr.init(e,t)}),f2=Z("$ZodCheckIncludes",(e,t)=>{Gt.init(e,t);const i=Ea(t.includes),a=new RegExp(typeof t.position=="number"?`^.{${t.position}}${i}`:i);t.pattern=a,e._zod.onattach.push(s=>{const r=s._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(a)}),e._zod.check=s=>{s.value.includes(t.includes,t.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:s.value,inst:e,continue:!t.abort})}}),u2=Z("$ZodCheckStartsWith",(e,t)=>{Gt.init(e,t);const i=new RegExp(`^${Ea(t.prefix)}.*`);t.pattern??(t.pattern=i),e._zod.onattach.push(a=>{const s=a._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(i)}),e._zod.check=a=>{a.value.startsWith(t.prefix)||a.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:a.value,inst:e,continue:!t.abort})}}),d2=Z("$ZodCheckEndsWith",(e,t)=>{Gt.init(e,t);const i=new RegExp(`.*${Ea(t.suffix)}$`);t.pattern??(t.pattern=i),e._zod.onattach.push(a=>{const s=a._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(i)}),e._zod.check=a=>{a.value.endsWith(t.suffix)||a.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:a.value,inst:e,continue:!t.abort})}}),h2=Z("$ZodCheckOverwrite",(e,t)=>{Gt.init(e,t),e._zod.check=i=>{i.value=t.tx(i.value)}});class p2{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const a=t.split(`
|
|
255
|
+
`).filter(n=>n),s=Math.min(...a.map(n=>n.length-n.trimStart().length)),r=a.map(n=>n.slice(s)).map(n=>" ".repeat(this.indent*2)+n);for(const n of r)this.content.push(n)}compile(){const t=Function,i=this?.args,s=[...(this?.content??[""]).map(r=>` ${r}`)];return new t(...i,s.join(`
|
|
256
|
+
`))}}const g2={major:4,minor:3,patch:5},ot=Z("$ZodType",(e,t)=>{var i;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=g2;const a=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&a.unshift(e);for(const s of a)for(const r of s._zod.onattach)r(e);if(a.length===0)(i=e._zod).deferred??(i.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const s=(n,o,l)=>{let c=Oa(n),f;for(const u of o){if(u._zod.def.when){if(!u._zod.def.when(n))continue}else if(c)continue;const h=n.issues.length,m=u._zod.check(n);if(m instanceof Promise&&l?.async===!1)throw new Fa;if(f||m instanceof Promise)f=(f??Promise.resolve()).then(async()=>{await m,n.issues.length!==h&&(c||(c=Oa(n,h)))});else{if(n.issues.length===h)continue;c||(c=Oa(n,h))}}return f?f.then(()=>n):n},r=(n,o,l)=>{if(Oa(n))return n.aborted=!0,n;const c=s(o,a,l);if(c instanceof Promise){if(l.async===!1)throw new Fa;return c.then(f=>e._zod.parse(f,l))}return e._zod.parse(c,l)};e._zod.run=(n,o)=>{if(o.skipChecks)return e._zod.parse(n,o);if(o.direction==="backward"){const c=e._zod.parse({value:n.value,issues:[]},{...o,skipChecks:!0});return c instanceof Promise?c.then(f=>r(f,n,o)):r(c,n,o)}const l=e._zod.parse(n,o);if(l instanceof Promise){if(o.async===!1)throw new Fa;return l.then(c=>s(c,a,o))}return s(l,a,o)}}Ze(e,"~standard",()=>({validate:s=>{try{const r=v4(e,s);return r.success?{value:r.data}:{issues:r.error?.issues}}catch{return x4(e,s).then(n=>n.success?{value:n.data}:{issues:n.error?.issues})}},vendor:"zod",version:1}))}),fo=Z("$ZodString",(e,t)=>{ot.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??q4(e._zod.bag),e._zod.parse=(i,a)=>{if(t.coerce)try{i.value=String(i.value)}catch{}return typeof i.value=="string"||i.issues.push({expected:"string",code:"invalid_type",input:i.value,inst:e}),i}}),lt=Z("$ZodStringFormat",(e,t)=>{kr.init(e,t),fo.init(e,t)}),m2=Z("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=D4),lt.init(e,t)}),y2=Z("$ZodUUID",(e,t)=>{if(t.version){const a={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(a===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=sf(a))}else t.pattern??(t.pattern=sf());lt.init(e,t)}),b2=Z("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=z4),lt.init(e,t)}),w2=Z("$ZodURL",(e,t)=>{lt.init(e,t),e._zod.check=i=>{try{const a=i.value.trim(),s=new URL(a);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(s.hostname)||i.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:i.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(s.protocol.endsWith(":")?s.protocol.slice(0,-1):s.protocol)||i.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:i.value,inst:e,continue:!t.abort})),t.normalize?i.value=s.href:i.value=a;return}catch{i.issues.push({code:"invalid_format",format:"url",input:i.value,inst:e,continue:!t.abort})}}}),v2=Z("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=B4()),lt.init(e,t)}),x2=Z("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=M4),lt.init(e,t)}),k2=Z("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=T4),lt.init(e,t)}),N2=Z("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=F4),lt.init(e,t)}),A2=Z("$ZodULID",(e,t)=>{t.pattern??(t.pattern=P4),lt.init(e,t)}),C2=Z("$ZodXID",(e,t)=>{t.pattern??(t.pattern=E4),lt.init(e,t)}),S2=Z("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=O4),lt.init(e,t)}),V2=Z("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=K4(t)),lt.init(e,t)}),_2=Z("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=H4),lt.init(e,t)}),I2=Z("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=X4(t)),lt.init(e,t)}),T2=Z("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=R4),lt.init(e,t)}),F2=Z("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=U4),lt.init(e,t),e._zod.bag.format="ipv4"}),P2=Z("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Z4),lt.init(e,t),e._zod.bag.format="ipv6",e._zod.check=i=>{try{new URL(`http://[${i.value}]`)}catch{i.issues.push({code:"invalid_format",format:"ipv6",input:i.value,inst:e,continue:!t.abort})}}}),E2=Z("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=G4),lt.init(e,t)}),O2=Z("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=W4),lt.init(e,t),e._zod.check=i=>{const a=i.value.split("/");try{if(a.length!==2)throw new Error;const[s,r]=a;if(!r)throw new Error;const n=Number(r);if(`${n}`!==r)throw new Error;if(n<0||n>128)throw new Error;new URL(`http://[${s}]`)}catch{i.issues.push({code:"invalid_format",format:"cidrv6",input:i.value,inst:e,continue:!t.abort})}}});function df(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const M2=Z("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=j4),lt.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=i=>{df(i.value)||i.issues.push({code:"invalid_format",format:"base64",input:i.value,inst:e,continue:!t.abort})}});function R2(e){if(!rf.test(e))return!1;const t=e.replace(/[-_]/g,a=>a==="-"?"+":"/"),i=t.padEnd(Math.ceil(t.length/4)*4,"=");return df(i)}const D2=Z("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=rf),lt.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=i=>{R2(i.value)||i.issues.push({code:"invalid_format",format:"base64url",input:i.value,inst:e,continue:!t.abort})}}),z2=Z("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Y4),lt.init(e,t)});function L2(e,t=null){try{const i=e.split(".");if(i.length!==3)return!1;const[a]=i;if(!a)return!1;const s=JSON.parse(atob(a));return!("typ"in s&&s?.typ!=="JWT"||!s.alg||t&&(!("alg"in s)||s.alg!==t))}catch{return!1}}const B2=Z("$ZodJWT",(e,t)=>{lt.init(e,t),e._zod.check=i=>{L2(i.value,t.alg)||i.issues.push({code:"invalid_format",format:"jwt",input:i.value,inst:e,continue:!t.abort})}}),hf=Z("$ZodNumber",(e,t)=>{ot.init(e,t),e._zod.pattern=e._zod.bag.pattern??lf,e._zod.parse=(i,a)=>{if(t.coerce)try{i.value=Number(i.value)}catch{}const s=i.value;if(typeof s=="number"&&!Number.isNaN(s)&&Number.isFinite(s))return i;const r=typeof s=="number"?Number.isNaN(s)?"NaN":Number.isFinite(s)?void 0:"Infinity":void 0;return i.issues.push({expected:"number",code:"invalid_type",input:s,inst:e,...r?{received:r}:{}}),i}}),U2=Z("$ZodNumberFormat",(e,t)=>{a2.init(e,t),hf.init(e,t)}),Z2=Z("$ZodBoolean",(e,t)=>{ot.init(e,t),e._zod.pattern=Q4,e._zod.parse=(i,a)=>{if(t.coerce)try{i.value=!!i.value}catch{}const s=i.value;return typeof s=="boolean"||i.issues.push({expected:"boolean",code:"invalid_type",input:s,inst:e}),i}}),G2=Z("$ZodNull",(e,t)=>{ot.init(e,t),e._zod.pattern=$4,e._zod.values=new Set([null]),e._zod.parse=(i,a)=>{const s=i.value;return s===null||i.issues.push({expected:"null",code:"invalid_type",input:s,inst:e}),i}}),W2=Z("$ZodUnknown",(e,t)=>{ot.init(e,t),e._zod.parse=i=>i}),j2=Z("$ZodNever",(e,t)=>{ot.init(e,t),e._zod.parse=(i,a)=>(i.issues.push({expected:"never",code:"invalid_type",input:i.value,inst:e}),i)});function pf(e,t,i){e.issues.length&&t.issues.push(...Ma(i,e.issues)),t.value[i]=e.value}const Y2=Z("$ZodArray",(e,t)=>{ot.init(e,t),e._zod.parse=(i,a)=>{const s=i.value;if(!Array.isArray(s))return i.issues.push({expected:"array",code:"invalid_type",input:s,inst:e}),i;i.value=Array(s.length);const r=[];for(let n=0;n<s.length;n++){const o=s[n],l=t.element._zod.run({value:o,issues:[]},a);l instanceof Promise?r.push(l.then(c=>pf(c,i,n))):pf(l,i,n)}return r.length?Promise.all(r).then(()=>i):i}});function Nr(e,t,i,a,s){if(e.issues.length){if(s&&!(i in a))return;t.issues.push(...Ma(i,e.issues))}e.value===void 0?i in a&&(t.value[i]=void 0):t.value[i]=e.value}function gf(e){const t=Object.keys(e.shape);for(const a of t)if(!e.shape?.[a]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${a}": expected a Zod schema`);const i=c4(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(i)}}function mf(e,t,i,a,s,r){const n=[],o=s.keySet,l=s.catchall._zod,c=l.def.type,f=l.optout==="optional";for(const u in t){if(o.has(u))continue;if(c==="never"){n.push(u);continue}const h=l.run({value:t[u],issues:[]},a);h instanceof Promise?e.push(h.then(m=>Nr(m,i,u,t,f))):Nr(h,i,u,t,f)}return n.length&&i.issues.push({code:"unrecognized_keys",keys:n,input:t,inst:r}),e.length?Promise.all(e).then(()=>i):i}const H2=Z("$ZodObject",(e,t)=>{if(ot.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const o=t.shape;Object.defineProperty(t,"shape",{get:()=>{const l={...o};return Object.defineProperty(t,"shape",{value:l}),l}})}const a=br(()=>gf(t));Ze(e._zod,"propValues",()=>{const o=t.shape,l={};for(const c in o){const f=o[c]._zod;if(f.values){l[c]??(l[c]=new Set);for(const u of f.values)l[c].add(u)}}return l});const s=ps,r=t.catchall;let n;e._zod.parse=(o,l)=>{n??(n=a.value);const c=o.value;if(!s(c))return o.issues.push({expected:"object",code:"invalid_type",input:c,inst:e}),o;o.value={};const f=[],u=n.shape;for(const h of n.keys){const m=u[h],b=m._zod.optout==="optional",M=m._zod.run({value:c[h],issues:[]},l);M instanceof Promise?f.push(M.then(G=>Nr(G,o,h,c,b))):Nr(M,o,h,c,b)}return r?mf(f,c,o,l,a.value,e):f.length?Promise.all(f).then(()=>o):o}}),X2=Z("$ZodObjectJIT",(e,t)=>{H2.init(e,t);const i=e._zod.parse,a=br(()=>gf(t)),s=h=>{const m=new p2(["shape","payload","ctx"]),b=a.value,M=v=>{const P=Jc(v);return`shape[${P}]._zod.run({ value: input[${P}], issues: [] }, ctx)`};m.write("const input = payload.value;");const G=Object.create(null);let L=0;for(const v of b.keys)G[v]=`key_${L++}`;m.write("const newResult = {};");for(const v of b.keys){const P=G[v],y=Jc(v),R=h[v]?._zod?.optout==="optional";m.write(`const ${P} = ${M(v)};`),R?m.write(`
|
|
257
|
+
if (${P}.issues.length) {
|
|
258
|
+
if (${y} in input) {
|
|
259
|
+
payload.issues = payload.issues.concat(${P}.issues.map(iss => ({
|
|
260
|
+
...iss,
|
|
261
|
+
path: iss.path ? [${y}, ...iss.path] : [${y}]
|
|
262
|
+
})));
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
if (${P}.value === undefined) {
|
|
267
|
+
if (${y} in input) {
|
|
268
|
+
newResult[${y}] = undefined;
|
|
269
|
+
}
|
|
270
|
+
} else {
|
|
271
|
+
newResult[${y}] = ${P}.value;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
`):m.write(`
|
|
275
|
+
if (${P}.issues.length) {
|
|
276
|
+
payload.issues = payload.issues.concat(${P}.issues.map(iss => ({
|
|
277
|
+
...iss,
|
|
278
|
+
path: iss.path ? [${y}, ...iss.path] : [${y}]
|
|
279
|
+
})));
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
if (${P}.value === undefined) {
|
|
283
|
+
if (${y} in input) {
|
|
284
|
+
newResult[${y}] = undefined;
|
|
285
|
+
}
|
|
286
|
+
} else {
|
|
287
|
+
newResult[${y}] = ${P}.value;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
`)}m.write("payload.value = newResult;"),m.write("return payload;");const O=m.compile();return(v,P)=>O(h,v,P)};let r;const n=ps,o=!Xc.jitless,c=o&&o4.value,f=t.catchall;let u;e._zod.parse=(h,m)=>{u??(u=a.value);const b=h.value;return n(b)?o&&c&&m?.async===!1&&m.jitless!==!0?(r||(r=s(t.shape)),h=r(h,m),f?mf([],b,h,m,u,e):h):i(h,m):(h.issues.push({expected:"object",code:"invalid_type",input:b,inst:e}),h)}});function yf(e,t,i,a){for(const r of e)if(r.issues.length===0)return t.value=r.value,t;const s=e.filter(r=>!Oa(r));return s.length===1?(t.value=s[0].value,s[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:i,errors:e.map(r=>r.issues.map(n=>Bi(n,a,Di())))}),t)}const bf=Z("$ZodUnion",(e,t)=>{ot.init(e,t),Ze(e._zod,"optin",()=>t.options.some(s=>s._zod.optin==="optional")?"optional":void 0),Ze(e._zod,"optout",()=>t.options.some(s=>s._zod.optout==="optional")?"optional":void 0),Ze(e._zod,"values",()=>{if(t.options.every(s=>s._zod.values))return new Set(t.options.flatMap(s=>Array.from(s._zod.values)))}),Ze(e._zod,"pattern",()=>{if(t.options.every(s=>s._zod.pattern)){const s=t.options.map(r=>r._zod.pattern);return new RegExp(`^(${s.map(r=>no(r.source)).join("|")})$`)}});const i=t.options.length===1,a=t.options[0]._zod.run;e._zod.parse=(s,r)=>{if(i)return a(s,r);let n=!1;const o=[];for(const l of t.options){const c=l._zod.run({value:s.value,issues:[]},r);if(c instanceof Promise)o.push(c),n=!0;else{if(c.issues.length===0)return c;o.push(c)}}return n?Promise.all(o).then(l=>yf(l,s,e,r)):yf(o,s,e,r)}}),K2=Z("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,bf.init(e,t);const i=e._zod.parse;Ze(e._zod,"propValues",()=>{const s={};for(const r of t.options){const n=r._zod.propValues;if(!n||Object.keys(n).length===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(const[o,l]of Object.entries(n)){s[o]||(s[o]=new Set);for(const c of l)s[o].add(c)}}return s});const a=br(()=>{const s=t.options,r=new Map;for(const n of s){const o=n._zod.propValues?.[t.discriminator];if(!o||o.size===0)throw new Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(const l of o){if(r.has(l))throw new Error(`Duplicate discriminator value "${String(l)}"`);r.set(l,n)}}return r});e._zod.parse=(s,r)=>{const n=s.value;if(!ps(n))return s.issues.push({code:"invalid_type",expected:"object",input:n,inst:e}),s;const o=a.value.get(n?.[t.discriminator]);return o?o._zod.run(s,r):t.unionFallback?i(s,r):(s.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,input:n,path:[t.discriminator],inst:e}),s)}}),q2=Z("$ZodIntersection",(e,t)=>{ot.init(e,t),e._zod.parse=(i,a)=>{const s=i.value,r=t.left._zod.run({value:s,issues:[]},a),n=t.right._zod.run({value:s,issues:[]},a);return r instanceof Promise||n instanceof Promise?Promise.all([r,n]).then(([l,c])=>wf(i,l,c)):wf(i,r,n)}});function uo(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Pa(e)&&Pa(t)){const i=Object.keys(t),a=Object.keys(e).filter(r=>i.indexOf(r)!==-1),s={...e,...t};for(const r of a){const n=uo(e[r],t[r]);if(!n.valid)return{valid:!1,mergeErrorPath:[r,...n.mergeErrorPath]};s[r]=n.data}return{valid:!0,data:s}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const i=[];for(let a=0;a<e.length;a++){const s=e[a],r=t[a],n=uo(s,r);if(!n.valid)return{valid:!1,mergeErrorPath:[a,...n.mergeErrorPath]};i.push(n.data)}return{valid:!0,data:i}}return{valid:!1,mergeErrorPath:[]}}function wf(e,t,i){const a=new Map;let s;for(const o of t.issues)if(o.code==="unrecognized_keys"){s??(s=o);for(const l of o.keys)a.has(l)||a.set(l,{}),a.get(l).l=!0}else e.issues.push(o);for(const o of i.issues)if(o.code==="unrecognized_keys")for(const l of o.keys)a.has(l)||a.set(l,{}),a.get(l).r=!0;else e.issues.push(o);const r=[...a].filter(([,o])=>o.l&&o.r).map(([o])=>o);if(r.length&&s&&e.issues.push({...s,keys:r}),Oa(e))return e;const n=uo(t.value,i.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return e.value=n.data,e}const J2=Z("$ZodRecord",(e,t)=>{ot.init(e,t),e._zod.parse=(i,a)=>{const s=i.value;if(!Pa(s))return i.issues.push({expected:"record",code:"invalid_type",input:s,inst:e}),i;const r=[],n=t.keyType._zod.values;if(n){i.value={};const o=new Set;for(const c of n)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){o.add(typeof c=="number"?c.toString():c);const f=t.valueType._zod.run({value:s[c],issues:[]},a);f instanceof Promise?r.push(f.then(u=>{u.issues.length&&i.issues.push(...Ma(c,u.issues)),i.value[c]=u.value})):(f.issues.length&&i.issues.push(...Ma(c,f.issues)),i.value[c]=f.value)}let l;for(const c in s)o.has(c)||(l=l??[],l.push(c));l&&l.length>0&&i.issues.push({code:"unrecognized_keys",input:s,inst:e,keys:l})}else{i.value={};for(const o of Reflect.ownKeys(s)){if(o==="__proto__")continue;let l=t.keyType._zod.run({value:o,issues:[]},a);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof o=="string"&&lf.test(o)&&l.issues.length&&l.issues.some(u=>u.code==="invalid_type"&&u.expected==="number")){const u=t.keyType._zod.run({value:Number(o),issues:[]},a);if(u instanceof Promise)throw new Error("Async schemas not supported in object keys currently");u.issues.length===0&&(l=u)}if(l.issues.length){t.mode==="loose"?i.value[o]=s[o]:i.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(u=>Bi(u,a,Di())),input:o,path:[o],inst:e});continue}const f=t.valueType._zod.run({value:s[o],issues:[]},a);f instanceof Promise?r.push(f.then(u=>{u.issues.length&&i.issues.push(...Ma(o,u.issues)),i.value[l.value]=u.value})):(f.issues.length&&i.issues.push(...Ma(o,f.issues)),i.value[l.value]=f.value)}}return r.length?Promise.all(r).then(()=>i):i}}),Q2=Z("$ZodEnum",(e,t)=>{ot.init(e,t);const i=Kc(t.entries),a=new Set(i);e._zod.values=a,e._zod.pattern=new RegExp(`^(${i.filter(s=>l4.has(typeof s)).map(s=>typeof s=="string"?Ea(s):s.toString()).join("|")})$`),e._zod.parse=(s,r)=>{const n=s.value;return a.has(n)||s.issues.push({code:"invalid_value",values:i,input:n,inst:e}),s}}),$2=Z("$ZodLiteral",(e,t)=>{if(ot.init(e,t),t.values.length===0)throw new Error("Cannot create literal schema with no valid values");const i=new Set(t.values);e._zod.values=i,e._zod.pattern=new RegExp(`^(${t.values.map(a=>typeof a=="string"?Ea(a):a?Ea(a.toString()):String(a)).join("|")})$`),e._zod.parse=(a,s)=>{const r=a.value;return i.has(r)||a.issues.push({code:"invalid_value",values:t.values,input:r,inst:e}),a}}),ev=Z("$ZodTransform",(e,t)=>{ot.init(e,t),e._zod.parse=(i,a)=>{if(a.direction==="backward")throw new Hc(e.constructor.name);const s=t.transform(i.value,i);if(a.async)return(s instanceof Promise?s:Promise.resolve(s)).then(n=>(i.value=n,i));if(s instanceof Promise)throw new Fa;return i.value=s,i}});function vf(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const xf=Z("$ZodOptional",(e,t)=>{ot.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Ze(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ze(e._zod,"pattern",()=>{const i=t.innerType._zod.pattern;return i?new RegExp(`^(${no(i.source)})?$`):void 0}),e._zod.parse=(i,a)=>{if(t.innerType._zod.optin==="optional"){const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(r=>vf(r,i.value)):vf(s,i.value)}return i.value===void 0?i:t.innerType._zod.run(i,a)}}),tv=Z("$ZodExactOptional",(e,t)=>{xf.init(e,t),Ze(e._zod,"values",()=>t.innerType._zod.values),Ze(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(i,a)=>t.innerType._zod.run(i,a)}),iv=Z("$ZodNullable",(e,t)=>{ot.init(e,t),Ze(e._zod,"optin",()=>t.innerType._zod.optin),Ze(e._zod,"optout",()=>t.innerType._zod.optout),Ze(e._zod,"pattern",()=>{const i=t.innerType._zod.pattern;return i?new RegExp(`^(${no(i.source)}|null)$`):void 0}),Ze(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(i,a)=>i.value===null?i:t.innerType._zod.run(i,a)}),av=Z("$ZodDefault",(e,t)=>{ot.init(e,t),e._zod.optin="optional",Ze(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(i,a)=>{if(a.direction==="backward")return t.innerType._zod.run(i,a);if(i.value===void 0)return i.value=t.defaultValue,i;const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(r=>kf(r,t)):kf(s,t)}});function kf(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const sv=Z("$ZodPrefault",(e,t)=>{ot.init(e,t),e._zod.optin="optional",Ze(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(i,a)=>(a.direction==="backward"||i.value===void 0&&(i.value=t.defaultValue),t.innerType._zod.run(i,a))}),rv=Z("$ZodNonOptional",(e,t)=>{ot.init(e,t),Ze(e._zod,"values",()=>{const i=t.innerType._zod.values;return i?new Set([...i].filter(a=>a!==void 0)):void 0}),e._zod.parse=(i,a)=>{const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(r=>Nf(r,e)):Nf(s,e)}});function Nf(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const nv=Z("$ZodCatch",(e,t)=>{ot.init(e,t),Ze(e._zod,"optin",()=>t.innerType._zod.optin),Ze(e._zod,"optout",()=>t.innerType._zod.optout),Ze(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(i,a)=>{if(a.direction==="backward")return t.innerType._zod.run(i,a);const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(r=>(i.value=r.value,r.issues.length&&(i.value=t.catchValue({...i,error:{issues:r.issues.map(n=>Bi(n,a,Di()))},input:i.value}),i.issues=[]),i)):(i.value=s.value,s.issues.length&&(i.value=t.catchValue({...i,error:{issues:s.issues.map(r=>Bi(r,a,Di()))},input:i.value}),i.issues=[]),i)}}),ov=Z("$ZodPipe",(e,t)=>{ot.init(e,t),Ze(e._zod,"values",()=>t.in._zod.values),Ze(e._zod,"optin",()=>t.in._zod.optin),Ze(e._zod,"optout",()=>t.out._zod.optout),Ze(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(i,a)=>{if(a.direction==="backward"){const r=t.out._zod.run(i,a);return r instanceof Promise?r.then(n=>Ar(n,t.in,a)):Ar(r,t.in,a)}const s=t.in._zod.run(i,a);return s instanceof Promise?s.then(r=>Ar(r,t.out,a)):Ar(s,t.out,a)}});function Ar(e,t,i){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},i)}const lv=Z("$ZodReadonly",(e,t)=>{ot.init(e,t),Ze(e._zod,"propValues",()=>t.innerType._zod.propValues),Ze(e._zod,"values",()=>t.innerType._zod.values),Ze(e._zod,"optin",()=>t.innerType?._zod?.optin),Ze(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(i,a)=>{if(a.direction==="backward")return t.innerType._zod.run(i,a);const s=t.innerType._zod.run(i,a);return s instanceof Promise?s.then(Af):Af(s)}});function Af(e){return e.value=Object.freeze(e.value),e}const cv=Z("$ZodCustom",(e,t)=>{Gt.init(e,t),ot.init(e,t),e._zod.parse=(i,a)=>i,e._zod.check=i=>{const a=i.value,s=t.fn(a);if(s instanceof Promise)return s.then(r=>Cf(r,i,a,e));Cf(s,i,a,e)}});function Cf(e,t,i,a){if(!e){const s={code:"custom",input:i,inst:a,path:[...a._zod.def.path??[]],continue:!a._zod.def.abort};a._zod.def.params&&(s.params=a._zod.def.params),t.issues.push(gs(s))}}var Sf;class fv{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...i){const a=i[0];return this._map.set(t,a),a&&typeof a=="object"&&"id"in a&&this._idmap.set(a.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const i=this._map.get(t);return i&&typeof i=="object"&&"id"in i&&this._idmap.delete(i.id),this._map.delete(t),this}get(t){const i=t._zod.parent;if(i){const a={...this.get(i)??{}};delete a.id;const s={...a,...this._map.get(t)};return Object.keys(s).length?s:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function uv(){return new fv}(Sf=globalThis).__zod_globalRegistry??(Sf.__zod_globalRegistry=uv());const ms=globalThis.__zod_globalRegistry;function dv(e,t){return new e({type:"string",...ge(t)})}function hv(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...ge(t)})}function Vf(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...ge(t)})}function pv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...ge(t)})}function gv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...ge(t)})}function mv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...ge(t)})}function yv(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...ge(t)})}function bv(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...ge(t)})}function wv(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...ge(t)})}function vv(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...ge(t)})}function xv(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...ge(t)})}function kv(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...ge(t)})}function Nv(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...ge(t)})}function Av(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...ge(t)})}function Cv(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...ge(t)})}function Sv(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...ge(t)})}function Vv(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...ge(t)})}function _v(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...ge(t)})}function Iv(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...ge(t)})}function Tv(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...ge(t)})}function Fv(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...ge(t)})}function Pv(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...ge(t)})}function Ev(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...ge(t)})}function Ov(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...ge(t)})}function Mv(e,t){return new e({type:"string",format:"date",check:"string_format",...ge(t)})}function Rv(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...ge(t)})}function Dv(e,t){return new e({type:"string",format:"duration",check:"string_format",...ge(t)})}function zv(e,t){return new e({type:"number",checks:[],...ge(t)})}function Lv(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...ge(t)})}function Bv(e,t){return new e({type:"boolean",...ge(t)})}function Uv(e,t){return new e({type:"null",...ge(t)})}function Zv(e){return new e({type:"unknown"})}function Gv(e,t){return new e({type:"never",...ge(t)})}function _f(e,t){return new ff({check:"less_than",...ge(t),value:e,inclusive:!1})}function ho(e,t){return new ff({check:"less_than",...ge(t),value:e,inclusive:!0})}function If(e,t){return new uf({check:"greater_than",...ge(t),value:e,inclusive:!1})}function po(e,t){return new uf({check:"greater_than",...ge(t),value:e,inclusive:!0})}function Tf(e,t){return new i2({check:"multiple_of",...ge(t),value:e})}function Ff(e,t){return new s2({check:"max_length",...ge(t),maximum:e})}function Cr(e,t){return new r2({check:"min_length",...ge(t),minimum:e})}function Pf(e,t){return new n2({check:"length_equals",...ge(t),length:e})}function Wv(e,t){return new o2({check:"string_format",format:"regex",...ge(t),pattern:e})}function jv(e){return new l2({check:"string_format",format:"lowercase",...ge(e)})}function Yv(e){return new c2({check:"string_format",format:"uppercase",...ge(e)})}function Hv(e,t){return new f2({check:"string_format",format:"includes",...ge(t),includes:e})}function Xv(e,t){return new u2({check:"string_format",format:"starts_with",...ge(t),prefix:e})}function Kv(e,t){return new d2({check:"string_format",format:"ends_with",...ge(t),suffix:e})}function Ra(e){return new h2({check:"overwrite",tx:e})}function qv(e){return Ra(t=>t.normalize(e))}function Jv(){return Ra(e=>e.trim())}function Qv(){return Ra(e=>e.toLowerCase())}function $v(){return Ra(e=>e.toUpperCase())}function e3(){return Ra(e=>n4(e))}function t3(e,t,i){return new e({type:"array",element:t,...ge(i)})}function i3(e,t,i){return new e({type:"custom",check:"custom",fn:t,...ge(i)})}function a3(e){const t=s3(i=>(i.addIssue=a=>{if(typeof a=="string")i.issues.push(gs(a,i.value,t._zod.def));else{const s=a;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=i.value),s.inst??(s.inst=t),s.continue??(s.continue=!t._zod.def.abort),i.issues.push(gs(s))}},e(i.value,i)));return t}function s3(e,t){const i=new Gt({check:"custom",...ge(t)});return i._zod.check=e,i}function Ef(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??ms,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function kt(e,t,i={path:[],schemaPath:[]}){var a;const s=e._zod.def,r=t.seen.get(e);if(r)return r.count++,i.schemaPath.includes(e)&&(r.cycle=i.path),r.schema;const n={schema:{},count:1,cycle:void 0,path:i.path};t.seen.set(e,n);const o=e._zod.toJSONSchema?.();if(o)n.schema=o;else{const f={...i,schemaPath:[...i.schemaPath,e],path:i.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,n.schema,f);else{const h=n.schema,m=t.processors[s.type];if(!m)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${s.type}`);m(e,t,h,f)}const u=e._zod.parent;u&&(n.ref||(n.ref=u),kt(u,t,f),t.seen.get(u).isParent=!0)}const l=t.metadataRegistry.get(e);return l&&Object.assign(n.schema,l),t.io==="input"&&Lt(e)&&(delete n.schema.examples,delete n.schema.default),t.io==="input"&&n.schema._prefault&&((a=n.schema).default??(a.default=n.schema._prefault)),delete n.schema._prefault,t.seen.get(e).schema}function Of(e,t){const i=e.seen.get(t);if(!i)throw new Error("Unprocessed schema. This is a bug in Zod.");const a=new Map;for(const n of e.seen.entries()){const o=e.metadataRegistry.get(n[0])?.id;if(o){const l=a.get(o);if(l&&l!==n[0])throw new Error(`Duplicate schema id "${o}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);a.set(o,n[0])}}const s=n=>{const o=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const u=e.external.registry.get(n[0])?.id,h=e.external.uri??(b=>b);if(u)return{ref:h(u)};const m=n[1].defId??n[1].schema.id??`schema${e.counter++}`;return n[1].defId=m,{defId:m,ref:`${h("__shared")}#/${o}/${m}`}}if(n[1]===i)return{ref:"#"};const c=`#/${o}/`,f=n[1].schema.id??`__schema${e.counter++}`;return{defId:f,ref:c+f}},r=n=>{if(n[1].schema.$ref)return;const o=n[1],{ref:l,defId:c}=s(n);o.def={...o.schema},c&&(o.defId=c);const f=o.schema;for(const u in f)delete f[u];f.$ref=l};if(e.cycles==="throw")for(const n of e.seen.entries()){const o=n[1];if(o.cycle)throw new Error(`Cycle detected: #/${o.cycle?.join("/")}/<root>
|
|
291
|
+
|
|
292
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const n of e.seen.entries()){const o=n[1];if(t===n[0]){r(n);continue}if(e.external){const c=e.external.registry.get(n[0])?.id;if(t!==n[0]&&c){r(n);continue}}if(e.metadataRegistry.get(n[0])?.id){r(n);continue}if(o.cycle){r(n);continue}if(o.count>1&&e.reused==="ref"){r(n);continue}}}function Mf(e,t){const i=e.seen.get(t);if(!i)throw new Error("Unprocessed schema. This is a bug in Zod.");const a=n=>{const o=e.seen.get(n);if(o.ref===null)return;const l=o.def??o.schema,c={...l},f=o.ref;if(o.ref=null,f){a(f);const h=e.seen.get(f),m=h.schema;if(m.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(l.allOf=l.allOf??[],l.allOf.push(m)):Object.assign(l,m),Object.assign(l,c),n._zod.parent===f)for(const M in l)M==="$ref"||M==="allOf"||M in c||delete l[M];if(m.$ref)for(const M in l)M==="$ref"||M==="allOf"||M in h.def&&JSON.stringify(l[M])===JSON.stringify(h.def[M])&&delete l[M]}const u=n._zod.parent;if(u&&u!==f){a(u);const h=e.seen.get(u);if(h?.schema.$ref&&(l.$ref=h.schema.$ref,h.def))for(const m in l)m==="$ref"||m==="allOf"||m in h.def&&JSON.stringify(l[m])===JSON.stringify(h.def[m])&&delete l[m]}e.override({zodSchema:n,jsonSchema:l,path:o.path??[]})};for(const n of[...e.seen.entries()].reverse())a(n[0]);const s={};if(e.target==="draft-2020-12"?s.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?s.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?s.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const n=e.external.registry.get(t)?.id;if(!n)throw new Error("Schema is missing an `id` property");s.$id=e.external.uri(n)}Object.assign(s,i.def??i.schema);const r=e.external?.defs??{};for(const n of e.seen.entries()){const o=n[1];o.def&&o.defId&&(r[o.defId]=o.def)}e.external||Object.keys(r).length>0&&(e.target==="draft-2020-12"?s.$defs=r:s.definitions=r);try{const n=JSON.parse(JSON.stringify(s));return Object.defineProperty(n,"~standard",{value:{...t["~standard"],jsonSchema:{input:Sr(t,"input",e.processors),output:Sr(t,"output",e.processors)}},enumerable:!1,writable:!1}),n}catch{throw new Error("Error converting schema to JSON.")}}function Lt(e,t){const i=t??{seen:new Set};if(i.seen.has(e))return!1;i.seen.add(e);const a=e._zod.def;if(a.type==="transform")return!0;if(a.type==="array")return Lt(a.element,i);if(a.type==="set")return Lt(a.valueType,i);if(a.type==="lazy")return Lt(a.getter(),i);if(a.type==="promise"||a.type==="optional"||a.type==="nonoptional"||a.type==="nullable"||a.type==="readonly"||a.type==="default"||a.type==="prefault")return Lt(a.innerType,i);if(a.type==="intersection")return Lt(a.left,i)||Lt(a.right,i);if(a.type==="record"||a.type==="map")return Lt(a.keyType,i)||Lt(a.valueType,i);if(a.type==="pipe")return Lt(a.in,i)||Lt(a.out,i);if(a.type==="object"){for(const s in a.shape)if(Lt(a.shape[s],i))return!0;return!1}if(a.type==="union"){for(const s of a.options)if(Lt(s,i))return!0;return!1}if(a.type==="tuple"){for(const s of a.items)if(Lt(s,i))return!0;return!!(a.rest&&Lt(a.rest,i))}return!1}const r3=(e,t={})=>i=>{const a=Ef({...i,processors:t});return kt(e,a),Of(a,e),Mf(a,e)},Sr=(e,t,i={})=>a=>{const{libraryOptions:s,target:r}=a??{},n=Ef({...s??{},target:r,io:t,processors:i});return kt(e,n),Of(n,e),Mf(n,e)},n3={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},o3=(e,t,i,a)=>{const s=i;s.type="string";const{minimum:r,maximum:n,format:o,patterns:l,contentEncoding:c}=e._zod.bag;if(typeof r=="number"&&(s.minLength=r),typeof n=="number"&&(s.maxLength=n),o&&(s.format=n3[o]??o,s.format===""&&delete s.format,o==="time"&&delete s.format),c&&(s.contentEncoding=c),l&&l.size>0){const f=[...l];f.length===1?s.pattern=f[0].source:f.length>1&&(s.allOf=[...f.map(u=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:u.source}))])}},l3=(e,t,i,a)=>{const s=i,{minimum:r,maximum:n,format:o,multipleOf:l,exclusiveMaximum:c,exclusiveMinimum:f}=e._zod.bag;typeof o=="string"&&o.includes("int")?s.type="integer":s.type="number",typeof f=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(s.minimum=f,s.exclusiveMinimum=!0):s.exclusiveMinimum=f),typeof r=="number"&&(s.minimum=r,typeof f=="number"&&t.target!=="draft-04"&&(f>=r?delete s.minimum:delete s.exclusiveMinimum)),typeof c=="number"&&(t.target==="draft-04"||t.target==="openapi-3.0"?(s.maximum=c,s.exclusiveMaximum=!0):s.exclusiveMaximum=c),typeof n=="number"&&(s.maximum=n,typeof c=="number"&&t.target!=="draft-04"&&(c<=n?delete s.maximum:delete s.exclusiveMaximum)),typeof l=="number"&&(s.multipleOf=l)},c3=(e,t,i,a)=>{i.type="boolean"},f3=(e,t,i,a)=>{t.target==="openapi-3.0"?(i.type="string",i.nullable=!0,i.enum=[null]):i.type="null"},u3=(e,t,i,a)=>{i.not={}},d3=(e,t,i,a)=>{},h3=(e,t,i,a)=>{const s=e._zod.def,r=Kc(s.entries);r.every(n=>typeof n=="number")&&(i.type="number"),r.every(n=>typeof n=="string")&&(i.type="string"),i.enum=r},p3=(e,t,i,a)=>{const s=e._zod.def,r=[];for(const n of s.values)if(n===void 0){if(t.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof n=="bigint"){if(t.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");r.push(Number(n))}else r.push(n);if(r.length!==0)if(r.length===1){const n=r[0];i.type=n===null?"null":typeof n,t.target==="draft-04"||t.target==="openapi-3.0"?i.enum=[n]:i.const=n}else r.every(n=>typeof n=="number")&&(i.type="number"),r.every(n=>typeof n=="string")&&(i.type="string"),r.every(n=>typeof n=="boolean")&&(i.type="boolean"),r.every(n=>n===null)&&(i.type="null"),i.enum=r},g3=(e,t,i,a)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},m3=(e,t,i,a)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},y3=(e,t,i,a)=>{const s=i,r=e._zod.def,{minimum:n,maximum:o}=e._zod.bag;typeof n=="number"&&(s.minItems=n),typeof o=="number"&&(s.maxItems=o),s.type="array",s.items=kt(r.element,t,{...a,path:[...a.path,"items"]})},b3=(e,t,i,a)=>{const s=i,r=e._zod.def;s.type="object",s.properties={};const n=r.shape;for(const c in n)s.properties[c]=kt(n[c],t,{...a,path:[...a.path,"properties",c]});const o=new Set(Object.keys(n)),l=new Set([...o].filter(c=>{const f=r.shape[c]._zod;return t.io==="input"?f.optin===void 0:f.optout===void 0}));l.size>0&&(s.required=Array.from(l)),r.catchall?._zod.def.type==="never"?s.additionalProperties=!1:r.catchall?r.catchall&&(s.additionalProperties=kt(r.catchall,t,{...a,path:[...a.path,"additionalProperties"]})):t.io==="output"&&(s.additionalProperties=!1)},w3=(e,t,i,a)=>{const s=e._zod.def,r=s.inclusive===!1,n=s.options.map((o,l)=>kt(o,t,{...a,path:[...a.path,r?"oneOf":"anyOf",l]}));r?i.oneOf=n:i.anyOf=n},v3=(e,t,i,a)=>{const s=e._zod.def,r=kt(s.left,t,{...a,path:[...a.path,"allOf",0]}),n=kt(s.right,t,{...a,path:[...a.path,"allOf",1]}),o=c=>"allOf"in c&&Object.keys(c).length===1,l=[...o(r)?r.allOf:[r],...o(n)?n.allOf:[n]];i.allOf=l},x3=(e,t,i,a)=>{const s=i,r=e._zod.def;s.type="object";const n=r.keyType,l=n._zod.bag?.patterns;if(r.mode==="loose"&&l&&l.size>0){const f=kt(r.valueType,t,{...a,path:[...a.path,"patternProperties","*"]});s.patternProperties={};for(const u of l)s.patternProperties[u.source]=f}else(t.target==="draft-07"||t.target==="draft-2020-12")&&(s.propertyNames=kt(r.keyType,t,{...a,path:[...a.path,"propertyNames"]})),s.additionalProperties=kt(r.valueType,t,{...a,path:[...a.path,"additionalProperties"]});const c=n._zod.values;if(c){const f=[...c].filter(u=>typeof u=="string"||typeof u=="number");f.length>0&&(s.required=f)}},k3=(e,t,i,a)=>{const s=e._zod.def,r=kt(s.innerType,t,a),n=t.seen.get(e);t.target==="openapi-3.0"?(n.ref=s.innerType,i.nullable=!0):i.anyOf=[r,{type:"null"}]},N3=(e,t,i,a)=>{const s=e._zod.def;kt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType},A3=(e,t,i,a)=>{const s=e._zod.def;kt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType,i.default=JSON.parse(JSON.stringify(s.defaultValue))},C3=(e,t,i,a)=>{const s=e._zod.def;kt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType,t.io==="input"&&(i._prefault=JSON.parse(JSON.stringify(s.defaultValue)))},S3=(e,t,i,a)=>{const s=e._zod.def;kt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType;let n;try{n=s.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}i.default=n},V3=(e,t,i,a)=>{const s=e._zod.def,r=t.io==="input"?s.in._zod.def.type==="transform"?s.out:s.in:s.out;kt(r,t,a);const n=t.seen.get(e);n.ref=r},_3=(e,t,i,a)=>{const s=e._zod.def;kt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType,i.readOnly=!0},Rf=(e,t,i,a)=>{const s=e._zod.def;kt(s.innerType,t,a);const r=t.seen.get(e);r.ref=s.innerType},I3=Z("ZodISODateTime",(e,t)=>{V2.init(e,t),pt.init(e,t)});function T3(e){return Ov(I3,e)}const F3=Z("ZodISODate",(e,t)=>{_2.init(e,t),pt.init(e,t)});function P3(e){return Mv(F3,e)}const E3=Z("ZodISOTime",(e,t)=>{I2.init(e,t),pt.init(e,t)});function O3(e){return Rv(E3,e)}const M3=Z("ZodISODuration",(e,t)=>{T2.init(e,t),pt.init(e,t)});function R3(e){return Dv(M3,e)}const ei=Z("ZodError",(e,t)=>{tf.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:i=>w4(e,i)},flatten:{value:i=>b4(e,i)},addIssue:{value:i=>{e.issues.push(i),e.message=JSON.stringify(e.issues,so,2)}},addIssues:{value:i=>{e.issues.push(...i),e.message=JSON.stringify(e.issues,so,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),D3=lo(ei),z3=co(ei),L3=vr(ei),B3=xr(ei),U3=k4(ei),Z3=N4(ei),G3=A4(ei),W3=C4(ei),j3=S4(ei),Y3=V4(ei),H3=_4(ei),X3=I4(ei),ct=Z("ZodType",(e,t)=>(ot.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Sr(e,"input"),output:Sr(e,"output")}}),e.toJSONSchema=r3(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...i)=>e.clone(zi(t,{checks:[...t.checks??[],...i.map(a=>typeof a=="function"?{_zod:{check:a,def:{check:"custom"},onattach:[]}}:a)]}),{parent:!0}),e.with=e.check,e.clone=(i,a)=>Li(e,i,a),e.brand=()=>e,e.register=(i,a)=>(i.add(e,a),e),e.parse=(i,a)=>D3(e,i,a,{callee:e.parse}),e.safeParse=(i,a)=>L3(e,i,a),e.parseAsync=async(i,a)=>z3(e,i,a,{callee:e.parseAsync}),e.safeParseAsync=async(i,a)=>B3(e,i,a),e.spa=e.safeParseAsync,e.encode=(i,a)=>U3(e,i,a),e.decode=(i,a)=>Z3(e,i,a),e.encodeAsync=async(i,a)=>G3(e,i,a),e.decodeAsync=async(i,a)=>W3(e,i,a),e.safeEncode=(i,a)=>j3(e,i,a),e.safeDecode=(i,a)=>Y3(e,i,a),e.safeEncodeAsync=async(i,a)=>H3(e,i,a),e.safeDecodeAsync=async(i,a)=>X3(e,i,a),e.refine=(i,a)=>e.check(Ux(i,a)),e.superRefine=i=>e.check(Zx(i)),e.overwrite=i=>e.check(Ra(i)),e.optional=()=>g(e),e.exactOptional=()=>_x(e),e.nullable=()=>jf(e),e.nullish=()=>g(jf(e)),e.nonoptional=i=>Ox(e,i),e.array=()=>Ge(e),e.or=i=>yt([e,i]),e.and=i=>kx(e,i),e.transform=i=>yo(e,Gf(i)),e.default=i=>Fx(e,i),e.prefault=i=>Ex(e,i),e.catch=i=>Rx(e,i),e.pipe=i=>yo(e,i),e.readonly=()=>Lx(e),e.describe=i=>{const a=e.clone();return ms.add(a,{description:i}),a},Object.defineProperty(e,"description",{get(){return ms.get(e)?.description},configurable:!0}),e.meta=(...i)=>{if(i.length===0)return ms.get(e);const a=e.clone();return ms.add(a,i[0]),a},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=i=>i(e),e)),Df=Z("_ZodString",(e,t)=>{fo.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(a,s,r)=>o3(e,a,s);const i=e._zod.bag;e.format=i.format??null,e.minLength=i.minimum??null,e.maxLength=i.maximum??null,e.regex=(...a)=>e.check(Wv(...a)),e.includes=(...a)=>e.check(Hv(...a)),e.startsWith=(...a)=>e.check(Xv(...a)),e.endsWith=(...a)=>e.check(Kv(...a)),e.min=(...a)=>e.check(Cr(...a)),e.max=(...a)=>e.check(Ff(...a)),e.length=(...a)=>e.check(Pf(...a)),e.nonempty=(...a)=>e.check(Cr(1,...a)),e.lowercase=a=>e.check(jv(a)),e.uppercase=a=>e.check(Yv(a)),e.trim=()=>e.check(Jv()),e.normalize=(...a)=>e.check(qv(...a)),e.toLowerCase=()=>e.check(Qv()),e.toUpperCase=()=>e.check($v()),e.slugify=()=>e.check(e3())}),K3=Z("ZodString",(e,t)=>{fo.init(e,t),Df.init(e,t),e.email=i=>e.check(hv(q3,i)),e.url=i=>e.check(bv(J3,i)),e.jwt=i=>e.check(Ev(dx,i)),e.emoji=i=>e.check(wv(Q3,i)),e.guid=i=>e.check(Vf(zf,i)),e.uuid=i=>e.check(pv(Vr,i)),e.uuidv4=i=>e.check(gv(Vr,i)),e.uuidv6=i=>e.check(mv(Vr,i)),e.uuidv7=i=>e.check(yv(Vr,i)),e.nanoid=i=>e.check(vv($3,i)),e.guid=i=>e.check(Vf(zf,i)),e.cuid=i=>e.check(xv(ex,i)),e.cuid2=i=>e.check(kv(tx,i)),e.ulid=i=>e.check(Nv(ix,i)),e.base64=i=>e.check(Tv(cx,i)),e.base64url=i=>e.check(Fv(fx,i)),e.xid=i=>e.check(Av(ax,i)),e.ksuid=i=>e.check(Cv(sx,i)),e.ipv4=i=>e.check(Sv(rx,i)),e.ipv6=i=>e.check(Vv(nx,i)),e.cidrv4=i=>e.check(_v(ox,i)),e.cidrv6=i=>e.check(Iv(lx,i)),e.e164=i=>e.check(Pv(ux,i)),e.datetime=i=>e.check(T3(i)),e.date=i=>e.check(P3(i)),e.time=i=>e.check(O3(i)),e.duration=i=>e.check(R3(i))});function N(e){return dv(K3,e)}const pt=Z("ZodStringFormat",(e,t)=>{lt.init(e,t),Df.init(e,t)}),q3=Z("ZodEmail",(e,t)=>{b2.init(e,t),pt.init(e,t)}),zf=Z("ZodGUID",(e,t)=>{m2.init(e,t),pt.init(e,t)}),Vr=Z("ZodUUID",(e,t)=>{y2.init(e,t),pt.init(e,t)}),J3=Z("ZodURL",(e,t)=>{w2.init(e,t),pt.init(e,t)}),Q3=Z("ZodEmoji",(e,t)=>{v2.init(e,t),pt.init(e,t)}),$3=Z("ZodNanoID",(e,t)=>{x2.init(e,t),pt.init(e,t)}),ex=Z("ZodCUID",(e,t)=>{k2.init(e,t),pt.init(e,t)}),tx=Z("ZodCUID2",(e,t)=>{N2.init(e,t),pt.init(e,t)}),ix=Z("ZodULID",(e,t)=>{A2.init(e,t),pt.init(e,t)}),ax=Z("ZodXID",(e,t)=>{C2.init(e,t),pt.init(e,t)}),sx=Z("ZodKSUID",(e,t)=>{S2.init(e,t),pt.init(e,t)}),rx=Z("ZodIPv4",(e,t)=>{F2.init(e,t),pt.init(e,t)}),nx=Z("ZodIPv6",(e,t)=>{P2.init(e,t),pt.init(e,t)}),ox=Z("ZodCIDRv4",(e,t)=>{E2.init(e,t),pt.init(e,t)}),lx=Z("ZodCIDRv6",(e,t)=>{O2.init(e,t),pt.init(e,t)}),cx=Z("ZodBase64",(e,t)=>{M2.init(e,t),pt.init(e,t)}),fx=Z("ZodBase64URL",(e,t)=>{D2.init(e,t),pt.init(e,t)}),ux=Z("ZodE164",(e,t)=>{z2.init(e,t),pt.init(e,t)}),dx=Z("ZodJWT",(e,t)=>{B2.init(e,t),pt.init(e,t)}),Lf=Z("ZodNumber",(e,t)=>{hf.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(a,s,r)=>l3(e,a,s),e.gt=(a,s)=>e.check(If(a,s)),e.gte=(a,s)=>e.check(po(a,s)),e.min=(a,s)=>e.check(po(a,s)),e.lt=(a,s)=>e.check(_f(a,s)),e.lte=(a,s)=>e.check(ho(a,s)),e.max=(a,s)=>e.check(ho(a,s)),e.int=a=>e.check(Bf(a)),e.safe=a=>e.check(Bf(a)),e.positive=a=>e.check(If(0,a)),e.nonnegative=a=>e.check(po(0,a)),e.negative=a=>e.check(_f(0,a)),e.nonpositive=a=>e.check(ho(0,a)),e.multipleOf=(a,s)=>e.check(Tf(a,s)),e.step=(a,s)=>e.check(Tf(a,s)),e.finite=()=>e;const i=e._zod.bag;e.minValue=Math.max(i.minimum??Number.NEGATIVE_INFINITY,i.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(i.maximum??Number.POSITIVE_INFINITY,i.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(i.format??"").includes("int")||Number.isSafeInteger(i.multipleOf??.5),e.isFinite=!0,e.format=i.format??null});function k(e){return zv(Lf,e)}const hx=Z("ZodNumberFormat",(e,t)=>{U2.init(e,t),Lf.init(e,t)});function Bf(e){return Lv(hx,e)}const px=Z("ZodBoolean",(e,t)=>{Z2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>c3(e,i,a)});function gt(e){return Bv(px,e)}const gx=Z("ZodNull",(e,t)=>{G2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>f3(e,i,a)});function Uf(e){return Uv(gx,e)}const mx=Z("ZodUnknown",(e,t)=>{W2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>d3()});function na(){return Zv(mx)}const yx=Z("ZodNever",(e,t)=>{j2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>u3(e,i,a)});function Ve(e){return Gv(yx,e)}const bx=Z("ZodArray",(e,t)=>{Y2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>y3(e,i,a,s),e.element=t.element,e.min=(i,a)=>e.check(Cr(i,a)),e.nonempty=i=>e.check(Cr(1,i)),e.max=(i,a)=>e.check(Ff(i,a)),e.length=(i,a)=>e.check(Pf(i,a)),e.unwrap=()=>e.element});function Ge(e,t){return t3(bx,e,t)}const wx=Z("ZodObject",(e,t)=>{X2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>b3(e,i,a,s),Ze(e,"shape",()=>t.shape),e.keyof=()=>W(Object.keys(e._zod.def.shape)),e.catchall=i=>e.clone({...e._zod.def,catchall:i}),e.passthrough=()=>e.clone({...e._zod.def,catchall:na()}),e.loose=()=>e.clone({...e._zod.def,catchall:na()}),e.strict=()=>e.clone({...e._zod.def,catchall:Ve()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=i=>h4(e,i),e.safeExtend=i=>p4(e,i),e.merge=i=>g4(e,i),e.pick=i=>u4(e,i),e.omit=i=>d4(e,i),e.partial=(...i)=>m4(Wf,e,i[0]),e.required=(...i)=>y4(Yf,e,i[0])});function w(e,t){const i={type:"object",shape:e??{},...ge(t)};return new wx(i)}const Zf=Z("ZodUnion",(e,t)=>{bf.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>w3(e,i,a,s),e.options=t.options});function yt(e,t){return new Zf({type:"union",options:e,...ge(t)})}const vx=Z("ZodDiscriminatedUnion",(e,t)=>{Zf.init(e,t),K2.init(e,t)});function go(e,t,i){return new vx({type:"union",options:t,discriminator:e,...ge(i)})}const xx=Z("ZodIntersection",(e,t)=>{q2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>v3(e,i,a,s)});function kx(e,t){return new xx({type:"intersection",left:e,right:t})}const Nx=Z("ZodRecord",(e,t)=>{J2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>x3(e,i,a,s),e.keyType=t.keyType,e.valueType=t.valueType});function Ax(e,t,i){return new Nx({type:"record",keyType:e,valueType:t,...ge(i)})}const mo=Z("ZodEnum",(e,t)=>{Q2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(a,s,r)=>h3(e,a,s),e.enum=t.entries,e.options=Object.values(t.entries);const i=new Set(Object.keys(t.entries));e.extract=(a,s)=>{const r={};for(const n of a)if(i.has(n))r[n]=t.entries[n];else throw new Error(`Key ${n} not found in enum`);return new mo({...t,checks:[],...ge(s),entries:r})},e.exclude=(a,s)=>{const r={...t.entries};for(const n of a)if(i.has(n))delete r[n];else throw new Error(`Key ${n} not found in enum`);return new mo({...t,checks:[],...ge(s),entries:r})}});function W(e,t){const i=Array.isArray(e)?Object.fromEntries(e.map(a=>[a,a])):e;return new mo({type:"enum",entries:i,...ge(t)})}const Cx=Z("ZodLiteral",(e,t)=>{$2.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>p3(e,i,a),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function be(e,t){return new Cx({type:"literal",values:Array.isArray(e)?e:[e],...ge(t)})}const Sx=Z("ZodTransform",(e,t)=>{ev.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>m3(e,i),e._zod.parse=(i,a)=>{if(a.direction==="backward")throw new Hc(e.constructor.name);i.addIssue=r=>{if(typeof r=="string")i.issues.push(gs(r,i.value,t));else{const n=r;n.fatal&&(n.continue=!1),n.code??(n.code="custom"),n.input??(n.input=i.value),n.inst??(n.inst=e),i.issues.push(gs(n))}};const s=t.transform(i.value,i);return s instanceof Promise?s.then(r=>(i.value=r,i)):(i.value=s,i)}});function Gf(e){return new Sx({type:"transform",transform:e})}const Wf=Z("ZodOptional",(e,t)=>{xf.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>Rf(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function g(e){return new Wf({type:"optional",innerType:e})}const Vx=Z("ZodExactOptional",(e,t)=>{tv.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>Rf(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function _x(e){return new Vx({type:"optional",innerType:e})}const Ix=Z("ZodNullable",(e,t)=>{iv.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>k3(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function jf(e){return new Ix({type:"nullable",innerType:e})}const Tx=Z("ZodDefault",(e,t)=>{av.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>A3(e,i,a,s),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Fx(e,t){return new Tx({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():$c(t)}})}const Px=Z("ZodPrefault",(e,t)=>{sv.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>C3(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function Ex(e,t){return new Px({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():$c(t)}})}const Yf=Z("ZodNonOptional",(e,t)=>{rv.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>N3(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function Ox(e,t){return new Yf({type:"nonoptional",innerType:e,...ge(t)})}const Mx=Z("ZodCatch",(e,t)=>{nv.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>S3(e,i,a,s),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Rx(e,t){return new Mx({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const Dx=Z("ZodPipe",(e,t)=>{ov.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>V3(e,i,a,s),e.in=t.in,e.out=t.out});function yo(e,t){return new Dx({type:"pipe",in:e,out:t})}const zx=Z("ZodReadonly",(e,t)=>{lv.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>_3(e,i,a,s),e.unwrap=()=>e._zod.def.innerType});function Lx(e){return new zx({type:"readonly",innerType:e})}const Bx=Z("ZodCustom",(e,t)=>{cv.init(e,t),ct.init(e,t),e._zod.processJSONSchema=(i,a,s)=>g3(e,i)});function Ux(e,t={}){return i3(Bx,e,t)}function Zx(e){return a3(e)}function T(e,t){return yo(Gf(e),t)}const Da={custom:"custom"},Gx=w({color:g(N()),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),padding:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),borderRadius:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int()))}),Wx=w({family:g(N()),color:g(N()),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),size:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),lineHeight:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),stroke:g(N()),strokeWidth:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()))}),jx=w({top:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),left:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),right:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()))}),Yx=w({type:W(["caption"]),src:N(),font:g(Wx),background:g(Gx),margin:g(jx),trim:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),speed:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(10)))}),Hx=w({color:g(N()),threshold:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(0).lte(250))),halo:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(0).lte(250)))}),Xx=w({type:W(["text-to-avatar"]),text:N(),avatar:W(["jack","lana","lily","matt","rian"]),background:g(N())}),Kx=w({type:be("didTextToAvatarOptions_DIDTextToAvatarOptions")}).and(Xx),qx=w({provider:W(["d-id"]),options:Kx}),Jx=w({type:W(["text-to-speech"]),text:N(),voice:W(["Adam","Antoni","Arnold","Bella","Domi","Elli","Josh","Rachel","Sam"])}),Qx=w({type:be("elevenlabsTextToSpeechOptions_ElevenLabsTextToSpeechOptions")}).and(Jx),$x=w({provider:W(["elevenlabs"]),options:Qx}),ek=w({type:W(["text-to-avatar"]),text:N(),avatar:W(["Angela","Bill","Daisy","Derek","Eva","Jake","Jeff","Jerome","Joon","Kayla","Kent","Luna","Mark","Matthew","Monica","Peter","Selina","Tanya","Thomas","Tina","Tyler","Vanessa","Vera","Wilson","Zoey"]),voice:W(["Abbi - Natural","Adam - Natural","Aiston - Friendly","Alice - Newscaster","Alison - Cheerful","Amber - Friendly","Amy - Warm","Ana - Cheerful","Antoni - Friendly","Aria - Newscaster","Arnold - Cheerful","Arthur - Natural","Bella - Friendly","Belle - Natural","Brandon - Warm","Brian - Natural","Bruce - Natural","Cerise - Cheerful","Christopher - Calm","Clara - Professional","Connor - Natural","Dahlia - Friendly","Davis - Professional","Dean - Natural","Delbert - Cheerful","Edward - Friendly","Elaine - Calm","Emily - Natural","Emma - Newscaster","Eric - Newscaster","Grace - Natural","Hailey - Calm","Indira - Cheerful","Isabella - Cheerful","Jacob - Natural","Jahmai - Friendly","Jane - Serious","Jason - Serious","Jelle - Friendly","Jen - Natural","Jenny - Professional","Jodi - Cheerful","Joey - Calm","Johan - Friendly","Josie - Cheerful","Keanan - Natural","Keith - Cheerful","Kellie - Friendly","Lauren - Friendly","Leah - Natural","Liam - Professional","Libby - Natural","Lily - Professional","Lucas - Natural","Luke - Professional","Luna - Natural","Marieke - Natural","Matthew - Professional","Michelle - Natural","Mitchell - Natural","Molly - Newscaster","Monica - Calm","Natasha - Professional","Neerja - Newscaster","Noah - Serious","Oliver - Newscaster","Olivia - Calm","Paul - Natural","Prabhat - Natural","Raveena - Natural","Rudi - Friendly","Ryan - Professional","Sam - Natural","Sara - Cheerful","Sherry - Friendly","Sonia - Warm","Thomas - Natural","Todd - Professional","Tony - Professional","Tracy - Cheerful","Wayne - Natural","Wilder - Natural","Wille - Natural","William - Friendly"]),avatarStyle:g(W(["normal","circle"])),background:g(N()),ratio:g(W(["16:9","9:16"])),test:g(gt())}),tk=w({type:be("heygenTextToAvatarOptions_HeyGenTextToAvatarOptions")}).and(ek),ik=w({provider:W(["heygen"]),options:tk}),ak=w({type:W(["text-generator"]),prompt:N(),model:W(["gpt-3.5-turbo","gpt-4"]),systemPrompt:g(N())}),sk=w({type:be("openaiTextGeneratorOptions_OpenAiTextGeneratorOptions")}).and(ak),rk=w({provider:W(["openai"]),options:sk}),nk=w({status:N(),title:N(),detail:N()});w({errors:Ge(nk)});const ok=w({owner:N(),provider:W(["shotstack","elevenlabs","heygen","d-id"]),type:W(["text-to-speech","text-to-avatar"]),url:g(N()),status:W(["queued","processing","saving","done","failed"]),created:N(),updated:N()}),lk=w({type:N(),id:N(),attributes:ok});w({data:lk});const ck=w({type:W(["image-to-video"]),imageUrl:N(),guidanceScale:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(1.8),motion:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())).default(127)}),fk=w({type:W(["text-generator"]),prompt:N()}),uk=w({type:W(["text-to-image"]),prompt:N(),width:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int()),height:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())}),dk=w({type:W(["text-to-speech"]),text:N(),voice:W(["Hala","Lisa","Arlet","Hiujin","Zhiyu","Sofie","Laura","Olivia","Amy","Emma","Brian","Arthur","Kajal","Niamh","Aria","Ayanda","Ivy","Joanna","Kendra","Kimberly","Salli","Joey","Justin","Kevin","Matthew","Ruth","Stephen","Suvi","Léa","Rémi","Gabrielle","Liam","Vicki","Daniel","Hannah","Kajal","Bianca","Adriano","Takumi","Kazuha","Tomoko","Seoyeon","Ida","Ola","Camila","Vitória","Vitoria","Thiago","Inês","Ines","Lucia","Sergio","Mia","Andrés","Lupe","Pedro","Elin"]),language:g(W(["cmn-CN","da-DK","de-DE","en-AU","en-GB","en-IN","en-US","es-ES","es-MX","es-US","fr-CA","fr-FR","it-IT","ja-JP","hi-IN","ko-KR","nb-NO","nl-NL","pl-PL","pt-BR","pt-PT","sv-SE","en-NZ","en-ZA","ca-ES","de-AT","yue-CN","ar-AE","fi-FI"])),newscaster:g(gt()).default(!1)}),hk=yt([w({type:be("shotstackTextToSpeechOptions_ShotstackTextToSpeechOptions")}).and(dk),w({type:be("shotstackTextToImageOptions_ShotstackTextToImageOptions")}).and(uk),w({type:be("shotstackTextGeneratorOptions_ShotstackTextGeneratorOptions")}).and(fk),w({type:be("shotstackImageToVideoOptions_ShotstackImageToVideoOptions")}).and(ck)]),pk=w({provider:W(["shotstack"]),options:hk}),gk=w({type:W(["text-to-image"]),prompt:N(),engine:g(W(["stable-diffusion-xl-1024-v0-9","stable-diffusion-xl-1024-v1-0","stable-diffusion-v1-6","stable-diffusion-512-v2-1","stable-diffusion-xl-beta-v2-2-2"])),width:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int()),height:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int()),steps:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())).default(30),seed:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())).default(0),cfgScale:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(7),stylePreset:g(W(["3d-model","analog-film","anime","cinematic","comic-book","digital-art","enhance","fantasy-art","isometric","line-art","low-poly","modeling-compound","neon-punk","origami","photographic","pixel-art","tile-texture"]))}),mk=w({type:be("stabilityAiTextToImageOptions_StabilityAiTextToImageOptions")}).and(gk),yk=w({provider:W(["stability-ai"]),options:mk}),bk=yt([w({provider:be("shotstackGeneratedAsset_ShotstackGeneratedAsset")}).and(pk),w({provider:be("didGeneratedAsset_DIDGeneratedAsset")}).and(qx),w({provider:be("elevenlabsGeneratedAsset_ElevenLabsGeneratedAsset")}).and($x),w({provider:be("heygenGeneratedAsset_HeyGenGeneratedAsset")}).and(ik),w({provider:be("openaiGeneratedAsset_OpenAiGeneratedAsset")}).and(rk),w({provider:be("stabilityAiGeneratedAsset_StabilityAiGeneratedAsset")}).and(yk)]),_r=w({top:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))),bottom:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))),left:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))),right:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1)))}),wk=w({bucket:N(),prefix:g(N()),filename:g(N())}),vk=w({provider:N().default("google-cloud-storage"),options:g(wk)}),xk=w({folderId:N(),filename:g(N())}),kk=w({provider:N().default("google-drive"),options:xk}),Nk=w({playbackPolicy:g(Ge(W(["public","signed"]))),passthrough:g(N().max(255))}),Ak=w({provider:N().default("mux"),options:g(Nk)}),Ck=w({region:N(),bucket:N(),prefix:g(N()),filename:g(N()),acl:g(N())}),Sk=w({provider:N().default("s3"),options:g(Ck)}),Vk=w({provider:N().default("shotstack"),exclude:g(gt())}),_k=w({title:g(N().max(150)),privacyLevel:g(W(["public","friends","private"])),disableDuet:g(gt()).default(!1),disableStitch:g(gt()).default(!1),disableComment:g(gt()).default(!1)}),Ik=w({provider:N().default("tiktok"),options:g(_k)}),Tk=w({view:g(W(["anybody","nobody","contacts","password","unlisted"])),embed:g(W(["public","private","whitelist"])),comments:g(W(["anybody","nobody","contacts"]))}),Fk=w({name:g(N()),description:g(N()),privacy:g(Tk),folderUri:g(N())}),Pk=w({provider:N().default("vimeo"),options:g(Fk)}),bo=yt([w({destinations:g(be("shotstackDestination_ShotstackDestination"))}).and(Vk),w({destinations:g(be("muxDestination_MuxDestination"))}).and(Ak),w({destinations:g(be("s3Destination_S3Destination"))}).and(Sk),w({destinations:g(be("googleCloudStorageDestination_GoogleCloudStorageDestination"))}).and(vk),w({destinations:g(be("googleDriveDestination_GoogleDriveDestination"))}).and(kk),w({destinations:g(be("vimeoDestination_VimeoDestination"))}).and(Pk),w({destinations:g(be("tiktokDestination_TiktokDestination"))}).and(Ik)]),Ek=w({horizontal:g(gt()),vertical:g(gt())}),Ok=w({src:N()}),Mk=w({type:W(["html"]),html:N(),css:g(N()),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),height:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),background:g(N()),position:g(W(["top","topRight","right","bottomRight","bottom","bottomLeft","left","topLeft","center"]))}),Rk=w({type:W(["image"]),src:N(),crop:g(_r)}),Dk=w({type:g(W(["image-to-video"])),src:g(N()),prompt:g(N()),aspectRatio:g(W(["1:1","4:3","16:9","9:16","3:4","21:9","9:21"])),speed:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(10))),crop:g(_r)}),zk=w({preset:W(["conference","interview","lecture","meeting","mobile_phone","music","podcast","studio","voice_over"])}),Lk=w({provider:N().default("dolby"),options:zk}),Bk=w({enhancement:be("dolbyEnhancement_DolbyEnhancement")}).and(Lk),Uk=w({audio:g(Bk)}),Zk=w({status:N(),title:N(),detail:N()});w({errors:Ge(Zk)});const Gk=w({type:N(),id:N()});w({data:Gk});const Wk=w({id:N(),url:N(),expires:N()}),jk=w({type:N(),id:N(),attributes:Wk});w({data:jk});const Yk=w({speed:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(10))),preservePitch:g(gt())}),Hk=w({format:g(W(["srt","vtt"]))}),Xk=w({type:W(["luma"]),src:N(),trim:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()))}),Hf=w({find:N(),replace:na()}),Kk=w({capture:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())}),qk=w({start:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))),length:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0)))}),Jk=w({id:N(),owner:N(),region:g(N()),renderId:g(N()),providerId:g(N()),filename:g(N()),url:g(N()),status:W(["importing","ready","failed","deleted"]),created:g(N()),updated:g(N())}),Xf=w({type:N(),attributes:Jk});w({data:Ge(Xf)}),w({data:Xf}),w({success:gt(),message:N(),response:Ax(N(),na())});const Qk=w({message:N(),id:N()});w({success:gt(),message:N(),response:Qk});const $k=w({id:N(),name:N(),created:g(N()),updated:g(N())}),eN=w({owner:N(),templates:Ge($k)});w({success:gt(),message:N(),response:eN});const tN=w({message:N(),id:N()});w({success:gt(),message:N(),response:tN});const Kf=w({horizontal:g(W(["left","center","right"])),vertical:g(W(["top","middle","bottom"]))}),iN=Kf,qf=w({preset:W(["fadeIn","slideIn","typewriter","ascend","shift","movingLetters"]),speed:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(.1).lte(10))).default(1),duration:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(.1).lte(30))),style:g(W(["character","word"])),direction:g(W(["left","right","up","down"]))}),aN=qf,Jf=w({color:g(N().regex(/^#[A-Fa-f0-9]{6}$/)),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(1),borderRadius:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0)}),sN=Jf,rN=w({width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0),color:g(N().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(1),radius:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0)}),nN=w({type:g(W(["linear","radial"])),angle:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(360))).default(0),stops:Ge(w({offset:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1)),color:N().regex(/^#[A-Fa-f0-9]{6}$/)})).min(2)}),oN=w({top:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0),right:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0),bottom:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0),left:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0)}),Qf=w({offsetX:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(0),offsetY:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(0),blur:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0),color:g(N().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(.5)}),lN=Qf,$f=w({width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0),color:g(N().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(1)}),cN=$f,eu=w({family:g(N()).default("Open Sans"),size:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(1).lte(500))).default(24),weight:g(na()).default("400"),color:g(N().regex(/^#[A-Fa-f0-9]{6}$/)).default("#ffffff"),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(1),background:g(N().regex(/^#[A-Fa-f0-9]{6}$/)),stroke:g($f)}),fN=eu,tu=w({letterSpacing:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(0),lineHeight:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(10))).default(1.2),textTransform:g(W(["none","uppercase","lowercase","capitalize"])),textDecoration:g(W(["none","underline","line-through"])),gradient:g(nN)}),uN=tu,iu=w({type:W(["rich-text"]),text:N().max(5e3),font:g(eu),style:g(tu),shadow:g(Qf),background:g(Jf),border:g(rN),padding:g(yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0)),oN])),align:g(Kf),animation:g(qf)}),dN=iu,hN=w({id:g(N()),owner:g(N()),status:g(W(["queued","failed"])),created:g(N())}),pN=w({type:g(N()),attributes:g(hN)});w({data:pN});const gN=w({url:N(),id:N(),destinations:Ge(bo)}),mN=w({type:W(["shape"]),shape:W(["rectangle","circle","line"]),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),height:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),fill:g(w({color:g(N()),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()))})),stroke:g(w({color:g(N()),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()))})),rectangle:g(w({width:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int()),height:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int()),cornerRadius:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int()))})),circle:g(w({radius:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())})),line:g(w({length:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int()),thickness:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())}))}),au=w({width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(1).lte(4096))),height:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(1).lte(4096)))}),su=w({format:g(W(["mp4","webm","mov","avi","mkv","ogv","wmv","avif","gif","mp3","wav","jpg","png","webp","tif"])),size:g(au),fit:g(W(["cover","contain","crop"])),resolution:g(W(["preview","mobile","sd","hd","fhd"])),quality:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(1).lte(100))),fps:g(yt([be(12),be(15),be(23.976),be(24),be(25),be(29.97),be(30),be(48),be(50),be(59.94),be(60)])),speed:g(Yk),keyframeInterval:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(1).lte(300))),fixOffset:g(gt()),fixRotation:g(gt()),enhance:g(Uk),filename:g(N())}),yN=w({renditions:g(Ge(su)),transcription:g(Hk)}),bN=w({id:N(),status:g(W(["queued","importing","ready","failed","deleted","overwritten"])),url:g(N()),executionTime:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),transformation:g(su),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),height:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),duration:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),fps:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()))}),wN=w({renditions:g(Ge(bN))}),vN=w({id:N(),owner:N(),input:g(N()),source:g(N()),status:g(W(["queued","importing","ready","failed","deleted","overwritten"])),outputs:g(wN),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),height:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),duration:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),fps:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),created:g(N()),updated:g(N())}),ru=w({type:N(),id:N(),attributes:vN});w({data:Ge(ru)}),w({data:ru});const xN=w({url:g(N()),outputs:g(yN),destinations:g(bo),callback:g(N())}),kN=w({src:N(),effect:g(W(["fadeIn","fadeOut","fadeInFadeOut"])),volume:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()))}),nu=w({offset:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1)),color:N().regex(/^#[A-Fa-f0-9]{6}$/)}),NN=w({type:W(["linear"]),angle:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(360))).default(0),stops:Ge(nu).min(2),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(1)}),AN=w({type:W(["radial"]),stops:Ge(nu).min(2),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(1)}),CN=w({offsetX:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(0),offsetY:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(0),blur:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0))).default(0),color:g(N().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(.5)}),SN=w({type:W(["solid"]),color:N().regex(/^#[A-Fa-f0-9]{6}$/).default("#000000"),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(1)}),VN=go("type",[SN,NN,AN]),_N=w({color:g(N().regex(/^#[A-Fa-f0-9]{6}$/)).default("#000000"),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(100))).default(1),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(1),lineCap:g(W(["butt","round","square"])),lineJoin:g(W(["miter","round","bevel"])),dashArray:g(Ge(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0)))),dashOffset:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(0)}),IN=w({x:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(0),y:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())).default(0),rotation:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(-360).lte(360))).default(0),scale:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(.01).lte(100))).default(1),originX:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(.5),originY:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))).default(.5)}),TN=w({type:W(["arrow"]),length:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(4096)),headWidth:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(1e3)),headLength:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(1e3)),shaftWidth:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(1e3))}),FN=w({type:W(["circle"]),radius:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(2048))}),PN=w({type:W(["cross"]),width:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(4096)),height:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(4096)),thickness:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(500))}),EN=w({type:W(["ellipse"]),radiusX:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(2048)),radiusY:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(2048))}),ON=w({type:W(["heart"]),size:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(4096))}),MN=w({type:W(["line"]),length:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(4096)),thickness:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(500))}),RN=w({type:W(["path"]),d:N().min(1).max(1e5)}),DN=w({type:W(["polygon"]),sides:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(3).lte(100)),radius:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(2048))}),zN=w({type:W(["rectangle"]),width:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(4096)),height:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(4096)),cornerRadius:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(2048))).default(0)}),LN=w({type:W(["ring"]),outerRadius:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(2048)),innerRadius:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(2048))}),BN=w({type:W(["star"]),points:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(3).lte(100)),outerRadius:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(2048)),innerRadius:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(1).lte(2048))}),UN=go("type",[zN,FN,EN,MN,DN,BN,TN,ON,PN,LN,RN]),ZN=w({type:W(["svg"]),src:g(N().min(1).max(5e5)),shape:g(UN),fill:g(VN),stroke:g(_N),shadow:g(CN),transform:g(IN),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1)))).default(1),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(1).lte(4096)))),height:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(1).lte(4096))))}).superRefine((e,t)=>{const i=e.shape!==void 0,a=e.src!==void 0&&e.src.trim()!=="";if(!i&&!a&&t.addIssue({code:Da.custom,message:"Either 'src' or 'shape' must be provided",path:[]}),i&&a&&t.addIssue({code:Da.custom,message:"Provide either 'src' or 'shape', not both",path:["src"]}),a){const s=["shape","fill","stroke","shadow","transform","width","height"];for(const r of s)e[r]!==void 0&&t.addIssue({code:Da.custom,message:`'${r}' is not allowed when using 'src'. Only 'type' and 'src' are allowed in import mode`,path:[r]})}}),GN=w({id:N(),merge:g(Ge(Hf))}),WN=w({horizontal:g(W(["left","center","right"])),vertical:g(W(["top","center","bottom"]))}),jN=w({preset:W(["typewriter"]),duration:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(.1).lte(30)))}),YN=w({color:g(N().regex(/^#[A-Fa-f0-9]{6}$/)),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))),padding:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(100))),borderRadius:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0)))}),HN=w({family:g(N()),color:g(N()),opacity:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),size:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),weight:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),lineHeight:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()))}),XN=w({width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(10))),color:g(N().regex(/^#[A-Fa-f0-9]{6}$/))}),KN=w({type:W(["text"]),text:N(),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),height:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),font:g(HN),background:g(YN),alignment:g(WN),stroke:g(XN),animation:g(jN),ellipsis:g(N())}),qN=w({type:W(["text-to-image"]),prompt:N(),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),height:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int())),crop:g(_r)}),JN=w({capture:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()),scale:T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1))}),QN=w({format:W(["mp4","gif","mp3","jpg","png","bmp"]),resolution:g(W(["preview","mobile","sd","hd","1080","4k"])),aspectRatio:g(W(["16:9","9:16","1:1","4:5","4:3"])),size:g(au),fps:g(yt([be(12),be(15),be(23.976),be(24),be(25),be(29.97),be(30),be(48),be(50),be(59.94),be(60)])),scaleTo:g(W(["preview","mobile","sd","hd","1080","4k"])),quality:g(W(["verylow","low","medium","high","veryhigh"])),repeat:g(gt()),mute:g(gt()),range:g(qk),poster:g(Kk),thumbnail:g(JN),destinations:g(Ge(bo))}),$N=w({in:g(W(["none","fade","fadeSlow","fadeFast","reveal","revealSlow","revealFast","wipeLeft","wipeLeftSlow","wipeLeftFast","wipeRight","wipeRightSlow","wipeRightFast","slideLeft","slideLeftSlow","slideLeftFast","slideRight","slideRightSlow","slideRightFast","slideUp","slideUpSlow","slideUpFast","slideDown","slideDownSlow","slideDownFast","carouselLeft","carouselLeftSlow","carouselLeftFast","carouselRight","carouselRightSlow","carouselRightFast","carouselUp","carouselUpSlow","carouselUpFast","carouselDown","carouselDownSlow","carouselDownFast","shuffleTopRight","shuffleTopRightSlow","shuffleTopRightFast","shuffleRightTop","shuffleRightTopSlow","shuffleRightTopFast","shuffleRightBottom","shuffleRightBottomSlow","shuffleRightBottomFast","shuffleBottomRight","shuffleBottomRightSlow","shuffleBottomRightFast","shuffleBottomLeft","shuffleBottomLeftSlow","shuffleBottomLeftFast","shuffleLeftBottom","shuffleLeftBottomSlow","shuffleLeftBottomFast","shuffleLeftTop","shuffleLeftTopSlow","shuffleLeftTopFast","shuffleTopLeft","shuffleTopLeftSlow","shuffleTopLeftFast","zoom"])),out:g(W(["none","fade","fadeSlow","fadeFast","reveal","revealSlow","revealFast","wipeLeft","wipeLeftSlow","wipeLeftFast","wipeRight","wipeRightSlow","wipeRightFast","slideLeft","slideLeftSlow","slideLeftFast","slideRight","slideRightSlow","slideRightFast","slideUp","slideUpSlow","slideUpFast","slideDown","slideDownSlow","slideDownFast","carouselLeft","carouselLeftSlow","carouselLeftFast","carouselRight","carouselRightSlow","carouselRightFast","carouselUp","carouselUpSlow","carouselUpFast","carouselDown","carouselDownSlow","carouselDownFast","shuffleTopRight","shuffleTopRightSlow","shuffleTopRightFast","shuffleRightTop","shuffleRightTopSlow","shuffleRightTopFast","shuffleRightBottom","shuffleRightBottomSlow","shuffleRightBottomFast","shuffleBottomRight","shuffleBottomRightSlow","shuffleBottomRightFast","shuffleBottomLeft","shuffleBottomLeftSlow","shuffleBottomLeftFast","shuffleLeftBottom","shuffleLeftBottomSlow","shuffleLeftBottomFast","shuffleLeftTop","shuffleLeftTopSlow","shuffleLeftTopFast","shuffleTopLeft","shuffleTopLeftSlow","shuffleTopLeftFast","zoom"]))}),Ui=w({from:g(na()),to:g(na()),start:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),length:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),interpolation:g(W(["linear","bezier","constant"])),easing:g(W(["ease","easeIn","easeOut","easeInOut","easeInQuad","easeInCubic","easeInQuart","easeInQuint","easeInSine","easeInExpo","easeInCirc","easeInBack","easeOutQuad","easeOutCubic","easeOutQuart","easeOutQuint","easeOutSine","easeOutExpo","easeOutCirc","easeOutBack","easeInOutQuad","easeInOutCubic","easeInOutQuart","easeInOutQuint","easeInOutSine","easeInOutExpo","easeInOutCirc","easeInOutBack"]))}),eA=w({type:W(["audio"]),src:N(),trim:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),volume:g(yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1)),Ge(Ui)])),speed:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(10))),effect:g(W(["none","fadeIn","fadeOut","fadeInFadeOut"]))}),ou=w({x:g(yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(-10).lte(10)),Ge(Ui)])),y:g(yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(-10).lte(10)),Ge(Ui)]))}),tA=w({angle:g(yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(-360).lte(360)),Ge(Ui)]))}),iA=w({x:g(yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(-100).lte(100)),Ge(Ui)])),y:g(yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(-100).lte(100)),Ge(Ui)]))}),aA=w({type:W(["title"]),text:N(),style:g(W(["minimal","blockbuster","vogue","sketchy","skinny","chunk","chunkLight","marker","future","subtitle"])),color:g(N()),size:g(W(["xx-small","x-small","small","medium","large","x-large","xx-large"])),background:g(N()),position:g(W(["top","topRight","right","bottomRight","bottom","bottomLeft","left","topLeft","center"])),offset:g(ou)}),sA=w({rotate:g(tA),skew:g(iA),flip:g(Ek)}),rA=w({type:W(["video"]),src:N(),transcode:g(gt()),trim:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),volume:g(yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(1)),Ge(Ui)])),volumeEffect:g(W(["none","fadeIn","fadeOut","fadeInFadeOut"])),speed:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().gte(0).lte(10))),crop:g(_r),chromaKey:g(Hx)}),nA=go("type",[rA,Rk,KN,iu,eA,Xk,Yx,Mk,aA,mN,ZN,qN,Dk]),oA=w({asset:nA,start:yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()),W(["auto"])]),length:yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()),be("auto"),be("end")]),fit:g(W(["cover","contain","crop","none"])),scale:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),width:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(1).lte(3840))),height:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k().int().gte(1).lte(2160))),position:g(W(["top","topRight","right","bottomRight","bottom","bottomLeft","left","topLeft","center"])),offset:g(ou),transition:g($N),effect:g(W(["zoomIn","zoomInSlow","zoomInFast","zoomOut","zoomOutSlow","zoomOutFast","slideLeft","slideLeftSlow","slideLeftFast","slideRight","slideRightSlow","slideRightFast","slideUp","slideUpSlow","slideUpFast","slideDown","slideDownSlow","slideDownFast"])),filter:g(W(["none","blur","boost","contrast","darken","greyscale","lighten","muted","negative"])),opacity:g(yt([T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k()),Ge(Ui)])),transform:g(sA),alias:g(N().regex(/^[A-Za-z0-9_-]+$/))}),lA=w({clips:Ge(oA)}),cA=w({soundtrack:g(kN),background:g(N()),fonts:g(Ge(Ok)),tracks:Ge(lA),cache:g(gt())}),Ir=w({timeline:cA,output:QN,merge:g(Ge(Hf)),callback:g(N()),disk:g(W(["local","mount"]))}),fA=w({id:N(),owner:N(),plan:g(N()),status:W(["queued","fetching","preprocessing","rendering","saving","done","failed"]),error:g(N()),duration:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),renderTime:g(T(e=>{if(!(e===""||e===null||e===void 0||Array.isArray(e)))return typeof e=="string"?Number(e):e},k())),url:g(N()),poster:g(yt([N(),Uf()])),thumbnail:g(yt([N(),Uf()])),data:g(Ir),created:g(N()),updated:g(N())});w({success:gt(),message:N(),response:fA});const uA=w({id:N(),name:N(),owner:N(),template:Ir});w({success:gt(),message:N(),response:uA});const lu=w({name:N(),template:g(Ir)});w({body:Ir,path:g(Ve()),query:g(Ve())}),w({body:g(Ve()),path:w({id:N().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:g(w({data:g(gt()),merged:g(gt())}))}),w({body:g(Ve()),path:g(Ve()),query:g(Ve())}),w({body:lu,path:g(Ve()),query:g(Ve())}),w({body:g(Ve()),path:w({id:N().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:g(Ve())}),w({body:g(Ve()),path:w({id:N().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:g(Ve())}),w({body:lu,path:w({id:N().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:g(Ve())}),w({body:GN,path:g(Ve()),query:g(Ve())}),w({body:g(Ve()),path:w({url:N()}),query:g(Ve())}),w({body:g(Ve()),path:w({id:N().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:g(Ve())}),w({body:g(Ve()),path:w({id:N().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:g(Ve())}),w({body:g(Ve()),path:w({id:N().regex(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)}),query:g(Ve())}),w({body:gN,path:g(Ve()),query:g(Ve())}),w({body:g(Ve()),path:g(Ve()),query:g(Ve())}),w({body:xN,path:g(Ve()),query:g(Ve())}),w({body:g(Ve()),path:w({id:N().regex(/^[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}$/)}),query:g(Ve())}),w({body:g(Ve()),path:w({id:N().regex(/^[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}$/)}),query:g(Ve())}),w({body:g(Ve()),path:g(Ve()),query:g(Ve())}),w({body:bk,path:g(Ve()),query:g(Ve())}),w({body:g(Ve()),path:w({id:N().regex(/^[0-9a-zA-Z]{8}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{4}-[0-9a-zA-Z]{12}$/)}),query:g(Ve())});const dA={utf16le:"utf-16le",ucs2:"utf-16le",utf16be:"utf-16be"};class Pt{constructor(t){this.buffer=t,this.view=new DataView(t.buffer,t.byteOffset,t.byteLength),this.pos=0,this.length=this.buffer.length}readString(t,i="ascii"){i=dA[i]||i;let a=this.readBuffer(t);try{return new TextDecoder(i).decode(a)}catch{return a}}readBuffer(t){return this.buffer.slice(this.pos,this.pos+=t)}readUInt24BE(){return(this.readUInt16BE()<<8)+this.readUInt8()}readUInt24LE(){return this.readUInt16LE()+(this.readUInt8()<<16)}readInt24BE(){return(this.readInt16BE()<<8)+this.readUInt8()}readInt24LE(){return this.readUInt16LE()+(this.readInt8()<<16)}}Pt.TYPES={UInt8:1,UInt16:2,UInt24:3,UInt32:4,Int8:1,Int16:2,Int24:3,Int32:4,Float:4,Double:8};for(let e of Object.getOwnPropertyNames(DataView.prototype))if(e.slice(0,3)==="get"){let t=e.slice(3).replace("Ui","UI");t==="Float32"?t="Float":t==="Float64"&&(t="Double");let i=Pt.TYPES[t];Pt.prototype["read"+t+(i===1?"":"BE")]=function(){const a=this.view[e](this.pos,!1);return this.pos+=i,a},i!==1&&(Pt.prototype["read"+t+"LE"]=function(){const a=this.view[e](this.pos,!0);return this.pos+=i,a})}const hA=new TextEncoder,cu=new Uint8Array(new Uint16Array([4660]).buffer)[0]==18;class Tr{constructor(t){this.buffer=t,this.view=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength),this.pos=0}writeBuffer(t){this.buffer.set(t,this.pos),this.pos+=t.length}writeString(t,i="ascii"){let a;switch(i){case"utf16le":case"utf16-le":case"ucs2":a=fu(t,cu);break;case"utf16be":case"utf16-be":a=fu(t,!cu);break;case"utf8":a=hA.encode(t);break;case"ascii":a=pA(t);break;default:throw new Error(`Unsupported encoding: ${i}`)}this.writeBuffer(a)}writeUInt24BE(t){this.buffer[this.pos++]=t>>>16&255,this.buffer[this.pos++]=t>>>8&255,this.buffer[this.pos++]=t&255}writeUInt24LE(t){this.buffer[this.pos++]=t&255,this.buffer[this.pos++]=t>>>8&255,this.buffer[this.pos++]=t>>>16&255}writeInt24BE(t){t>=0?this.writeUInt24BE(t):this.writeUInt24BE(t+16777215+1)}writeInt24LE(t){t>=0?this.writeUInt24LE(t):this.writeUInt24LE(t+16777215+1)}fill(t,i){if(i<this.buffer.length)this.buffer.fill(t,this.pos,this.pos+i),this.pos+=i;else{const a=new Uint8Array(i);a.fill(t),this.writeBuffer(a)}}}function fu(e,t){let i=new Uint16Array(e.length);for(let a=0;a<e.length;a++){let s=e.charCodeAt(a);t&&(s=s>>8|(s&255)<<8),i[a]=s}return new Uint8Array(i.buffer)}function pA(e){let t=new Uint8Array(e.length);for(let i=0;i<e.length;i++)t[i]=e.charCodeAt(i);return t}for(let e of Object.getOwnPropertyNames(DataView.prototype))if(e.slice(0,3)==="set"){let t=e.slice(3).replace("Ui","UI");t==="Float32"?t="Float":t==="Float64"&&(t="Double");let i=Pt.TYPES[t];Tr.prototype["write"+t+(i===1?"":"BE")]=function(a){this.view[e](this.pos,a,!1),this.pos+=i},i!==1&&(Tr.prototype["write"+t+"LE"]=function(a){this.view[e](this.pos,a,!0),this.pos+=i})}class Ai{fromBuffer(t){let i=new Pt(t);return this.decode(i)}toBuffer(t){let i=this.size(t),a=new Uint8Array(i),s=new Tr(a);return this.encode(s,t),a}}class Be extends Ai{constructor(t,i="BE"){super(),this.type=t,this.endian=i,this.fn=this.type,this.type[this.type.length-1]!=="8"&&(this.fn+=this.endian)}size(){return Pt.TYPES[this.type]}decode(t){return t[`read${this.fn}`]()}encode(t,i){return t[`write${this.fn}`](i)}}const ee=new Be("UInt8"),d=new Be("UInt16","BE");new Be("UInt16","LE");const Zi=new Be("UInt24","BE");new Be("UInt24","LE");const V=new Be("UInt32","BE");new Be("UInt32","LE");const Ct=new Be("Int8"),H=new Be("Int16","BE");new Be("Int16","LE"),new Be("Int24","BE"),new Be("Int24","LE");const oa=new Be("Int32","BE");new Be("Int32","LE"),new Be("Float","BE"),new Be("Float","LE"),new Be("Double","BE"),new Be("Double","LE");class la extends Be{constructor(t,i,a=t>>1){super(`Int${t}`,i),this._point=1<<a}decode(t){return super.decode(t)/this._point}encode(t,i){return super.encode(t,i*this._point|0)}}const gA=new la(16,"BE");new la(16,"LE");const bt=new la(32,"BE");new la(32,"LE");function fi(e,t,i){let a;if(typeof e=="number"?a=e:typeof e=="function"?a=e.call(i,i):i&&typeof e=="string"?a=i[e]:t&&e instanceof Be&&(a=e.decode(t)),isNaN(a))throw new Error("Not a fixed size");return a}class wo{constructor(t={}){this.enumerable=!0,this.configurable=!0;for(let i in t){const a=t[i];this[i]=a}}}class A extends Ai{constructor(t,i,a="count"){super(),this.type=t,this.length=i,this.lengthType=a}decode(t,i){let a;const{pos:s}=t,r=[];let n=i;if(this.length!=null&&(a=fi(this.length,t,i)),this.length instanceof Be&&(Object.defineProperties(r,{parent:{value:i},_startOffset:{value:s},_currentOffset:{value:0,writable:!0},_length:{value:a}}),n=r),a==null||this.lengthType==="bytes"){const o=a!=null?t.pos+a:i?._length?i._startOffset+i._length:t.length;for(;t.pos<o;)r.push(this.type.decode(t,n))}else for(let o=0,l=a;o<l;o++)r.push(this.type.decode(t,n));return r}size(t,i,a=!0){if(!t)return this.type.size(null,i)*fi(this.length,null,i);let s=0;this.length instanceof Be&&(s+=this.length.size(),i={parent:i,pointerSize:0});for(let r of t)s+=this.type.size(r,i);return i&&a&&this.length instanceof Be&&(s+=i.pointerSize),s}encode(t,i,a){let s=a;this.length instanceof Be&&(s={pointers:[],startOffset:t.pos,parent:a},s.pointerOffset=t.pos+this.size(i,s,!1),this.length.encode(t,i.length));for(let r of i)this.type.encode(t,r,s);if(this.length instanceof Be){let r=0;for(;r<s.pointers.length;){const n=s.pointers[r++];n.type.encode(t,n.val,n.parent)}}}}class Xe extends A{decode(t,i){const{pos:a}=t,s=fi(this.length,t,i);this.length instanceof Be&&(i={parent:i,_startOffset:a,_currentOffset:0,_length:s});const r=new vo(this.type,s,t,i);return t.pos+=s*this.type.size(null,i),r}size(t,i){return t instanceof vo&&(t=t.toArray()),super.size(t,i)}encode(t,i,a){return i instanceof vo&&(i=i.toArray()),super.encode(t,i,a)}}class vo{constructor(t,i,a,s){this.type=t,this.length=i,this.stream=a,this.ctx=s,this.base=this.stream.pos,this.items=[]}get(t){if(!(t<0||t>=this.length)){if(this.items[t]==null){const{pos:i}=this.stream;this.stream.pos=this.base+this.type.size(null,this.ctx)*t,this.items[t]=this.type.decode(this.stream,this.ctx),this.stream.pos=i}return this.items[t]}}toArray(){const t=[];for(let i=0,a=this.length;i<a;i++)t.push(this.get(i));return t}}class ai extends Ai{constructor(t,i=[]){super(),this.type=t,this.flags=i}decode(t){const i=this.type.decode(t),a={};for(let s=0;s<this.flags.length;s++){const r=this.flags[s];r!=null&&(a[r]=!!(i&1<<s))}return a}size(){return this.type.size()}encode(t,i){let a=0;for(let s=0;s<this.flags.length;s++){const r=this.flags[s];r!=null&&i[r]&&(a|=1<<s)}return this.type.encode(t,a)}}class ui extends Ai{constructor(t){super(),this.length=t}decode(t,i){const a=fi(this.length,t,i);return t.readBuffer(a)}size(t,i){if(!t)return fi(this.length,null,i);let a=t.length;return this.length instanceof Be&&(a+=this.length.size()),a}encode(t,i,a){return this.length instanceof Be&&this.length.encode(t,i.length),t.writeBuffer(i)}}class Fr extends Ai{constructor(t,i=!0){super(),this.type=t,this.condition=i}decode(t,i){let{condition:a}=this;if(typeof a=="function"&&(a=a.call(i,i)),a)return this.type.decode(t,i)}size(t,i){let{condition:a}=this;return typeof a=="function"&&(a=a.call(i,i)),a?this.type.size(t,i):0}encode(t,i,a){let{condition:s}=this;if(typeof s=="function"&&(s=s.call(a,a)),s)return this.type.encode(t,i,a)}}class st extends Ai{constructor(t,i=1){super(),this.type=t,this.count=i}decode(t,i){t.pos+=this.size(null,i)}size(t,i){const a=fi(this.count,null,i);return this.type.size()*a}encode(t,i,a){return t.fill(0,this.size(i,a))}}class We extends Ai{constructor(t,i="ascii"){super(),this.length=t,this.encoding=i}decode(t,i){let a,s,{encoding:r}=this;typeof r=="function"&&(r=r.call(i,i)||"ascii");let n=xo(r);if(this.length!=null)a=fi(this.length,t,i);else{let l;for({buffer:l,length:a,pos:s}=t;s<a-n+1&&(l[s]!==0||n===2&&l[s+1]!==0);)s+=n;a=s-t.pos}const o=t.readString(a,r);return this.length==null&&t.pos<t.length&&(t.pos+=n),o}size(t,i){if(t==null)return fi(this.length,null,i);let{encoding:a}=this;typeof a=="function"&&(a=a.call(i?.val,i?.val)||"ascii"),a==="utf16be"&&(a="utf16le");let s=uu(t,a);return this.length instanceof Be&&(s+=this.length.size()),this.length==null&&(s+=xo(a)),s}encode(t,i,a){let{encoding:s}=this;if(typeof s=="function"&&(s=s.call(a?.val,a?.val)||"ascii"),this.length instanceof Be&&this.length.encode(t,uu(i,s)),t.writeString(i,s),this.length==null)return xo(s)==2?t.writeUInt16LE(0):t.writeUInt8(0)}}function xo(e){switch(e){case"ascii":case"utf8":return 1;case"utf16le":case"utf16-le":case"utf-16be":case"utf-16le":case"utf16be":case"utf16-be":case"ucs2":return 2;default:return 1}}function uu(e,t){switch(t){case"ascii":return e.length;case"utf8":let i=0;for(let a=0;a<e.length;a++){let s=e.charCodeAt(a);if(s>=55296&&s<=56319&&a<e.length-1){let r=e.charCodeAt(++a);(r&64512)===56320?s=((s&1023)<<10)+(r&1023)+65536:a--}s&4294967168?s&4294965248?s&4294901760?s&4292870144||(i+=4):i+=3:i+=2:i++}return i;case"utf16le":case"utf16-le":case"utf16be":case"utf16-be":case"ucs2":return e.length*2;default:throw new Error("Unknown encoding "+t)}}class E extends Ai{constructor(t={}){super(),this.fields=t}decode(t,i,a=0){const s=this._setup(t,i,a);return this._parseFields(t,s,this.fields),this.process!=null&&this.process.call(s,t),s}_setup(t,i,a){const s={};return Object.defineProperties(s,{parent:{value:i},_startOffset:{value:t.pos},_currentOffset:{value:0,writable:!0},_length:{value:a}}),s}_parseFields(t,i,a){for(let r in a){var s;const n=a[r];typeof n=="function"?s=n.call(i,i):s=n.decode(t,i),s!==void 0&&(s instanceof wo?Object.defineProperty(i,r,s):i[r]=s),i._currentOffset=t.pos-i._startOffset}}size(t,i,a=!0){t==null&&(t={});const s={parent:i,val:t,pointerSize:0};this.preEncode!=null&&this.preEncode.call(t);let r=0;for(let n in this.fields){const o=this.fields[n];o.size!=null&&(r+=o.size(t[n],s))}return a&&(r+=s.pointerSize),r}encode(t,i,a){let s;this.preEncode!=null&&this.preEncode.call(i,t);const r={pointers:[],startOffset:t.pos,parent:a,val:i,pointerSize:0};r.pointerOffset=t.pos+this.size(i,r,!1);for(let o in this.fields)s=this.fields[o],s.encode!=null&&s.encode(t,i[o],r);let n=0;for(;n<r.pointers.length;){const o=r.pointers[n++];o.type.encode(t,o.val,o.parent)}}}const mA=(e,t)=>t.reduce((i,a)=>i&&i[a],e);class Ie extends E{constructor(t,i={}){super(),this.type=t,this.versions=i,typeof t=="string"&&(this.versionPath=t.split("."))}decode(t,i,a=0){const s=this._setup(t,i,a);typeof this.type=="string"?s.version=mA(i,this.versionPath):s.version=this.type.decode(t),this.versions.header&&this._parseFields(t,s,this.versions.header);const r=this.versions[s.version];if(r==null)throw new Error(`Unknown version ${s.version}`);return r instanceof Ie?r.decode(t,i):(this._parseFields(t,s,r),this.process!=null&&this.process.call(s,t),s)}size(t,i,a=!0){let s,r;if(!t)throw new Error("Not a fixed size");this.preEncode!=null&&this.preEncode.call(t);const n={parent:i,val:t,pointerSize:0};let o=0;if(typeof this.type!="string"&&(o+=this.type.size(t.version,n)),this.versions.header)for(s in this.versions.header)r=this.versions.header[s],r.size!=null&&(o+=r.size(t[s],n));const l=this.versions[t.version];if(l==null)throw new Error(`Unknown version ${t.version}`);for(s in l)r=l[s],r.size!=null&&(o+=r.size(t[s],n));return a&&(o+=n.pointerSize),o}encode(t,i,a){let s,r;this.preEncode!=null&&this.preEncode.call(i,t);const n={pointers:[],startOffset:t.pos,parent:a,val:i,pointerSize:0};if(n.pointerOffset=t.pos+this.size(i,n,!1),typeof this.type!="string"&&this.type.encode(t,i.version),this.versions.header)for(s in this.versions.header)r=this.versions.header[s],r.encode!=null&&r.encode(t,i[s],n);const o=this.versions[i.version];for(s in o)r=o[s],r.encode!=null&&r.encode(t,i[s],n);let l=0;for(;l<n.pointers.length;){const c=n.pointers[l++];c.type.encode(t,c.val,c.parent)}}}class S extends Ai{constructor(t,i,a={}){if(super(),this.offsetType=t,this.type=i,this.options=a,this.type==="void"&&(this.type=null),this.options.type==null&&(this.options.type="local"),this.options.allowNull==null&&(this.options.allowNull=!0),this.options.nullValue==null&&(this.options.nullValue=0),this.options.lazy==null&&(this.options.lazy=!1),this.options.relativeTo){if(typeof this.options.relativeTo!="function")throw new Error("relativeTo option must be a function");this.relativeToGetter=a.relativeTo}}decode(t,i){const a=this.offsetType.decode(t,i);if(a===this.options.nullValue&&this.options.allowNull)return null;let s;switch(this.options.type){case"local":s=i._startOffset;break;case"immediate":s=t.pos-this.offsetType.size();break;case"parent":s=i.parent._startOffset;break;default:for(var r=i;r.parent;)r=r.parent;s=r._startOffset||0}this.options.relativeTo&&(s+=this.relativeToGetter(i));const n=a+s;if(this.type!=null){let o=null;const l=()=>{if(o!=null)return o;const{pos:c}=t;return t.pos=n,o=this.type.decode(t,i),t.pos=c,o};return this.options.lazy?new wo({get:l}):l()}else return n}size(t,i){const a=i;switch(this.options.type){case"local":case"immediate":break;case"parent":i=i.parent;break;default:for(;i.parent;)i=i.parent}let{type:s}=this;if(s==null){if(!(t instanceof ko))throw new Error("Must be a VoidPointer");({type:s}=t),t=t.value}if(t&&i){let r=s.size(t,a);i.pointerSize+=r}return this.offsetType.size()}encode(t,i,a){let s;const r=a;if(i==null){this.offsetType.encode(t,this.options.nullValue);return}switch(this.options.type){case"local":s=a.startOffset;break;case"immediate":s=t.pos+this.offsetType.size(i,r);break;case"parent":a=a.parent,s=a.startOffset;break;default:for(s=0;a.parent;)a=a.parent}this.options.relativeTo&&(s+=this.relativeToGetter(r.val)),this.offsetType.encode(t,a.pointerOffset-s);let{type:n}=this;if(n==null){if(!(i instanceof ko))throw new Error("Must be a VoidPointer");({type:n}=i),i=i.value}return a.pointers.push({type:n,val:i,parent:r}),a.pointerOffset+=n.size(i,r)}}class ko{constructor(t,i){this.type=t,this.value=i}}function Wt(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function Et(e,t,i,a){var s=arguments.length,r=s<3?t:a===null?a=Object.getOwnPropertyDescriptor(t,i):a,n;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")r=Reflect.decorate(e,t,i,a);else for(var o=e.length-1;o>=0;o--)(n=e[o])&&(r=(s<3?n(r):s>3?n(t,i,r):n(t,i))||r);return s>3&&r&&Object.defineProperty(t,i,r),r}typeof SuppressedError=="function"&&SuppressedError;function za(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var yA=function e(t,i){if(t===i)return!0;if(t&&i&&typeof t=="object"&&typeof i=="object"){if(t.constructor!==i.constructor)return!1;var a,s,r;if(Array.isArray(t)){if(a=t.length,a!=i.length)return!1;for(s=a;s--!==0;)if(!e(t[s],i[s]))return!1;return!0}if(t.constructor===RegExp)return t.source===i.source&&t.flags===i.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===i.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===i.toString();if(r=Object.keys(t),a=r.length,a!==Object.keys(i).length)return!1;for(s=a;s--!==0;)if(!Object.prototype.hasOwnProperty.call(i,r[s]))return!1;for(s=a;s--!==0;){var n=r[s];if(!e(t[n],i[n]))return!1}return!0}return t!==t&&i!==i};const du=za(yA);var ys={};ys.byteLength=vA,ys.toByteArray=kA,ys.fromByteArray=CA;for(var di=[],ti=[],bA=typeof Uint8Array<"u"?Uint8Array:Array,No="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",La=0,wA=No.length;La<wA;++La)di[La]=No[La],ti[No.charCodeAt(La)]=La;ti[45]=62,ti[95]=63;function hu(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var i=e.indexOf("=");i===-1&&(i=t);var a=i===t?0:4-i%4;return[i,a]}function vA(e){var t=hu(e),i=t[0],a=t[1];return(i+a)*3/4-a}function xA(e,t,i){return(t+i)*3/4-i}function kA(e){var t,i=hu(e),a=i[0],s=i[1],r=new bA(xA(e,a,s)),n=0,o=s>0?a-4:a,l;for(l=0;l<o;l+=4)t=ti[e.charCodeAt(l)]<<18|ti[e.charCodeAt(l+1)]<<12|ti[e.charCodeAt(l+2)]<<6|ti[e.charCodeAt(l+3)],r[n++]=t>>16&255,r[n++]=t>>8&255,r[n++]=t&255;return s===2&&(t=ti[e.charCodeAt(l)]<<2|ti[e.charCodeAt(l+1)]>>4,r[n++]=t&255),s===1&&(t=ti[e.charCodeAt(l)]<<10|ti[e.charCodeAt(l+1)]<<4|ti[e.charCodeAt(l+2)]>>2,r[n++]=t>>8&255,r[n++]=t&255),r}function NA(e){return di[e>>18&63]+di[e>>12&63]+di[e>>6&63]+di[e&63]}function AA(e,t,i){for(var a,s=[],r=t;r<i;r+=3)a=(e[r]<<16&16711680)+(e[r+1]<<8&65280)+(e[r+2]&255),s.push(NA(a));return s.join("")}function CA(e){for(var t,i=e.length,a=i%3,s=[],r=16383,n=0,o=i-a;n<o;n+=r)s.push(AA(e,n,n+r>o?o:n+r));return a===1?(t=e[i-1],s.push(di[t>>2]+di[t<<4&63]+"==")):a===2&&(t=(e[i-2]<<8)+e[i-1],s.push(di[t>>10]+di[t>>4&63]+di[t<<2&63]+"=")),s.join("")}var Ao=0,pu=-3;function bs(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function SA(e,t){this.source=e,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=t,this.destLen=0,this.ltree=new bs,this.dtree=new bs}var gu=new bs,mu=new bs,Co=new Uint8Array(30),So=new Uint16Array(30),yu=new Uint8Array(30),bu=new Uint16Array(30),VA=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),wu=new bs,hi=new Uint8Array(320);function vu(e,t,i,a){var s,r;for(s=0;s<i;++s)e[s]=0;for(s=0;s<30-i;++s)e[s+i]=s/i|0;for(r=a,s=0;s<30;++s)t[s]=r,r+=1<<e[s]}function _A(e,t){var i;for(i=0;i<7;++i)e.table[i]=0;for(e.table[7]=24,e.table[8]=152,e.table[9]=112,i=0;i<24;++i)e.trans[i]=256+i;for(i=0;i<144;++i)e.trans[24+i]=i;for(i=0;i<8;++i)e.trans[168+i]=280+i;for(i=0;i<112;++i)e.trans[176+i]=144+i;for(i=0;i<5;++i)t.table[i]=0;for(t.table[5]=32,i=0;i<32;++i)t.trans[i]=i}var xu=new Uint16Array(16);function Vo(e,t,i,a){var s,r;for(s=0;s<16;++s)e.table[s]=0;for(s=0;s<a;++s)e.table[t[i+s]]++;for(e.table[0]=0,r=0,s=0;s<16;++s)xu[s]=r,r+=e.table[s];for(s=0;s<a;++s)t[i+s]&&(e.trans[xu[t[i+s]]++]=s)}function IA(e){e.bitcount--||(e.tag=e.source[e.sourceIndex++],e.bitcount=7);var t=e.tag&1;return e.tag>>>=1,t}function pi(e,t,i){if(!t)return i;for(;e.bitcount<24;)e.tag|=e.source[e.sourceIndex++]<<e.bitcount,e.bitcount+=8;var a=e.tag&65535>>>16-t;return e.tag>>>=t,e.bitcount-=t,a+i}function _o(e,t){for(;e.bitcount<24;)e.tag|=e.source[e.sourceIndex++]<<e.bitcount,e.bitcount+=8;var i=0,a=0,s=0,r=e.tag;do a=2*a+(r&1),r>>>=1,++s,i+=t.table[s],a-=t.table[s];while(a>=0);return e.tag=r,e.bitcount-=s,t.trans[i+a]}function TA(e,t,i){var a,s,r,n,o,l;for(a=pi(e,5,257),s=pi(e,5,1),r=pi(e,4,4),n=0;n<19;++n)hi[n]=0;for(n=0;n<r;++n){var c=pi(e,3,0);hi[VA[n]]=c}for(Vo(wu,hi,0,19),o=0;o<a+s;){var f=_o(e,wu);switch(f){case 16:var u=hi[o-1];for(l=pi(e,2,3);l;--l)hi[o++]=u;break;case 17:for(l=pi(e,3,3);l;--l)hi[o++]=0;break;case 18:for(l=pi(e,7,11);l;--l)hi[o++]=0;break;default:hi[o++]=f;break}}Vo(t,hi,0,a),Vo(i,hi,a,s)}function ku(e,t,i){for(;;){var a=_o(e,t);if(a===256)return Ao;if(a<256)e.dest[e.destLen++]=a;else{var s,r,n,o;for(a-=257,s=pi(e,Co[a],So[a]),r=_o(e,i),n=e.destLen-pi(e,yu[r],bu[r]),o=n;o<n+s;++o)e.dest[e.destLen++]=e.dest[o]}}}function FA(e){for(var t,i,a;e.bitcount>8;)e.sourceIndex--,e.bitcount-=8;if(t=e.source[e.sourceIndex+1],t=256*t+e.source[e.sourceIndex],i=e.source[e.sourceIndex+3],i=256*i+e.source[e.sourceIndex+2],t!==(~i&65535))return pu;for(e.sourceIndex+=4,a=t;a;--a)e.dest[e.destLen++]=e.source[e.sourceIndex++];return e.bitcount=0,Ao}function PA(e,t){var i=new SA(e,t),a,s,r;do{switch(a=IA(i),s=pi(i,2,0),s){case 0:r=FA(i);break;case 1:r=ku(i,gu,mu);break;case 2:TA(i,i.ltree,i.dtree),r=ku(i,i.ltree,i.dtree);break;default:r=pu}if(r!==Ao)throw new Error("Data error")}while(!a);return i.destLen<i.dest.length?typeof i.dest.slice=="function"?i.dest.slice(0,i.destLen):i.dest.subarray(0,i.destLen):i.dest}_A(gu,mu),vu(Co,So,4,3),vu(yu,bu,2,1),Co[28]=0,So[28]=258;var Nu=PA;const EA=za(Nu),OA=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,Au=(e,t,i)=>{let a=e[t];e[t]=e[i],e[i]=a},MA=e=>{const t=e.length;for(let i=0;i<t;i+=4)Au(e,i,i+3),Au(e,i+1,i+2)};var RA={swap32LE:e=>{OA&&MA(e)}};const Cu=Nu,{swap32LE:DA}=RA,Io=11,ca=5,zA=Io-ca,LA=65536>>Io,BA=(1<<zA)-1,Pr=2,To=(1<<ca)-1,Su=65536>>ca,UA=1024>>ca,ZA=Su+UA+32,GA=1<<Pr;class WA{constructor(t){const i=typeof t.readUInt32BE=="function"&&typeof t.slice=="function";if(i||t instanceof Uint8Array){let a;if(i)this.highStart=t.readUInt32LE(0),this.errorValue=t.readUInt32LE(4),a=t.readUInt32LE(8),t=t.slice(12);else{const s=new DataView(t.buffer);this.highStart=s.getUint32(0,!0),this.errorValue=s.getUint32(4,!0),a=s.getUint32(8,!0),t=t.subarray(12)}t=Cu(t,new Uint8Array(a)),t=Cu(t,new Uint8Array(a)),DA(t),this.data=new Uint32Array(t.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=t)}get(t){let i;return t<0||t>1114111?this.errorValue:t<55296||t>56319&&t<=65535?(i=(this.data[t>>ca]<<Pr)+(t&To),this.data[i]):t<=65535?(i=(this.data[Su+(t-55296>>ca)]<<Pr)+(t&To),this.data[i]):t<this.highStart?(i=this.data[ZA-LA+(t>>Io)],i=this.data[i+(t>>ca&BA)],i=(i<<Pr)+(t&To),this.data[i]):this.data[this.data.length-GA]}}var jA=WA;const Er=za(jA);function fa(e){return e&&e.__esModule?e.default:e}var Gi={};Gi=JSON.parse('{"categories":["Cc","Zs","Po","Sc","Ps","Pe","Sm","Pd","Nd","Lu","Sk","Pc","Ll","So","Lo","Pi","Cf","No","Pf","Lt","Lm","Mn","Me","Mc","Nl","Zl","Zp","Cs","Co"],"combiningClasses":["Not_Reordered","Above","Above_Right","Below","Attached_Above_Right","Attached_Below","Overlay","Iota_Subscript","Double_Below","Double_Above","Below_Right","Above_Left","CCC10","CCC11","CCC12","CCC13","CCC14","CCC15","CCC16","CCC17","CCC18","CCC19","CCC20","CCC21","CCC22","CCC23","CCC24","CCC25","CCC30","CCC31","CCC32","CCC27","CCC28","CCC29","CCC33","CCC34","CCC35","CCC36","Nukta","Virama","CCC84","CCC91","CCC103","CCC107","CCC118","CCC122","CCC129","CCC130","CCC132","Attached_Above","Below_Left","Left","Kana_Voicing","CCC26","Right"],"scripts":["Common","Latin","Bopomofo","Inherited","Greek","Coptic","Cyrillic","Armenian","Hebrew","Arabic","Syriac","Thaana","Nko","Samaritan","Mandaic","Devanagari","Bengali","Gurmukhi","Gujarati","Oriya","Tamil","Telugu","Kannada","Malayalam","Sinhala","Thai","Lao","Tibetan","Myanmar","Georgian","Hangul","Ethiopic","Cherokee","Canadian_Aboriginal","Ogham","Runic","Tagalog","Hanunoo","Buhid","Tagbanwa","Khmer","Mongolian","Limbu","Tai_Le","New_Tai_Lue","Buginese","Tai_Tham","Balinese","Sundanese","Batak","Lepcha","Ol_Chiki","Braille","Glagolitic","Tifinagh","Han","Hiragana","Katakana","Yi","Lisu","Vai","Bamum","Syloti_Nagri","Phags_Pa","Saurashtra","Kayah_Li","Rejang","Javanese","Cham","Tai_Viet","Meetei_Mayek","null","Linear_B","Lycian","Carian","Old_Italic","Gothic","Old_Permic","Ugaritic","Old_Persian","Deseret","Shavian","Osmanya","Osage","Elbasan","Caucasian_Albanian","Linear_A","Cypriot","Imperial_Aramaic","Palmyrene","Nabataean","Hatran","Phoenician","Lydian","Meroitic_Hieroglyphs","Meroitic_Cursive","Kharoshthi","Old_South_Arabian","Old_North_Arabian","Manichaean","Avestan","Inscriptional_Parthian","Inscriptional_Pahlavi","Psalter_Pahlavi","Old_Turkic","Old_Hungarian","Hanifi_Rohingya","Old_Sogdian","Sogdian","Elymaic","Brahmi","Kaithi","Sora_Sompeng","Chakma","Mahajani","Sharada","Khojki","Multani","Khudawadi","Grantha","Newa","Tirhuta","Siddham","Modi","Takri","Ahom","Dogra","Warang_Citi","Nandinagari","Zanabazar_Square","Soyombo","Pau_Cin_Hau","Bhaiksuki","Marchen","Masaram_Gondi","Gunjala_Gondi","Makasar","Cuneiform","Egyptian_Hieroglyphs","Anatolian_Hieroglyphs","Mro","Bassa_Vah","Pahawh_Hmong","Medefaidrin","Miao","Tangut","Nushu","Duployan","SignWriting","Nyiakeng_Puachue_Hmong","Wancho","Mende_Kikakui","Adlam"],"eaw":["N","Na","A","W","H","F"]}');const Fo=new Er(ys.toByteArray("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")),YA=Math.log2||(e=>Math.log(e)/Math.LN2),Or=e=>YA(e)+1|0,HA=Or(fa(Gi).categories.length-1),Vu=Or(fa(Gi).combiningClasses.length-1),Po=Or(fa(Gi).scripts.length-1),Eo=Or(fa(Gi).eaw.length-1),Oo=10,XA=Vu+Po+Eo+Oo,KA=Po+Eo+Oo,qA=Eo+Oo,JA=(1<<HA)-1,QA=(1<<Vu)-1,$A=(1<<Po)-1;function Mr(e){const t=Fo.get(e);return fa(Gi).categories[t>>XA&JA]}function eC(e){const t=Fo.get(e);return fa(Gi).combiningClasses[t>>KA&QA]}function _u(e){const t=Fo.get(e);return fa(Gi).scripts[t>>qA&$A]}function Iu(e){return Mr(e)==="Nd"}function Tu(e){const t=Mr(e);return t==="Mn"||t==="Me"||t==="Mc"}var Mo=1,Ro=0;class tC{constructor(t){this.stateTable=t.stateTable,this.accepting=t.accepting,this.tags=t.tags}match(t){var i=this;return{*[Symbol.iterator](){for(var a=Mo,s=null,r=null,n=null,o=0;o<t.length;o++){var l=t[o];n=a,a=i.stateTable[a][l],a===Ro&&(s!=null&&r!=null&&r>=s&&(yield[s,r,i.tags[n]]),a=i.stateTable[Mo][l],s=null),a!==Ro&&s==null&&(s=o),i.accepting[a]&&(r=o),a===Ro&&(a=Mo)}s!=null&&r!=null&&r>=s&&(yield[s,r,i.tags[a]])}}}apply(t,i){for(var[a,s,r]of this.match(t))for(var n of r)typeof i[n]=="function"&&i[n](a,s,t.slice(a,s+1))}}var iC=tC;const Fu=za(iC);var Pu={exports:{}};(function(e){var t=function(){function i(h,m){return m!=null&&h instanceof m}var a;try{a=Map}catch{a=function(){}}var s;try{s=Set}catch{s=function(){}}var r;try{r=Promise}catch{r=function(){}}function n(h,m,b,M,G){typeof m=="object"&&(b=m.depth,M=m.prototype,G=m.includeNonEnumerable,m=m.circular);var L=[],O=[],v=typeof Buffer<"u";typeof m>"u"&&(m=!0),typeof b>"u"&&(b=1/0);function P(y,K){if(y===null)return null;if(K===0)return y;var R,j;if(typeof y!="object")return y;if(i(y,a))R=new a;else if(i(y,s))R=new s;else if(i(y,r))R=new r(function(Ce,X){y.then(function(J){Ce(P(J,K-1))},function(J){X(P(J,K-1))})});else if(n.__isArray(y))R=[];else if(n.__isRegExp(y))R=new RegExp(y.source,u(y)),y.lastIndex&&(R.lastIndex=y.lastIndex);else if(n.__isDate(y))R=new Date(y.getTime());else{if(v&&Buffer.isBuffer(y))return Buffer.allocUnsafe?R=Buffer.allocUnsafe(y.length):R=new Buffer(y.length),y.copy(R),R;i(y,Error)?R=Object.create(y):typeof M>"u"?(j=Object.getPrototypeOf(y),R=Object.create(j)):(R=Object.create(M),j=M)}if(m){var ie=L.indexOf(y);if(ie!=-1)return O[ie];L.push(y),O.push(R)}i(y,a)&&y.forEach(function(Ce,X){var J=P(X,K-1),q=P(Ce,K-1);R.set(J,q)}),i(y,s)&&y.forEach(function(Ce){var X=P(Ce,K-1);R.add(X)});for(var re in y){var le;j&&(le=Object.getOwnPropertyDescriptor(j,re)),!(le&&le.set==null)&&(R[re]=P(y[re],K-1))}if(Object.getOwnPropertySymbols)for(var we=Object.getOwnPropertySymbols(y),re=0;re<we.length;re++){var Fe=we[re],ze=Object.getOwnPropertyDescriptor(y,Fe);ze&&!ze.enumerable&&!G||(R[Fe]=P(y[Fe],K-1),ze.enumerable||Object.defineProperty(R,Fe,{enumerable:!1}))}if(G)for(var Oe=Object.getOwnPropertyNames(y),re=0;re<Oe.length;re++){var Ye=Oe[re],ze=Object.getOwnPropertyDescriptor(y,Ye);ze&&ze.enumerable||(R[Ye]=P(y[Ye],K-1),Object.defineProperty(R,Ye,{enumerable:!1}))}return R}return P(h,b)}n.clonePrototype=function(m){if(m===null)return null;var b=function(){};return b.prototype=m,new b};function o(h){return Object.prototype.toString.call(h)}n.__objToStr=o;function l(h){return typeof h=="object"&&o(h)==="[object Date]"}n.__isDate=l;function c(h){return typeof h=="object"&&o(h)==="[object Array]"}n.__isArray=c;function f(h){return typeof h=="object"&&o(h)==="[object RegExp]"}n.__isRegExp=f;function u(h){var m="";return h.global&&(m+="g"),h.ignoreCase&&(m+="i"),h.multiline&&(m+="m"),m}return n.__getRegExpFlags=u,n}();e.exports&&(e.exports=t)})(Pu);var aC=Pu.exports;const Do=za(aC);var ws={},Rr={};function Eu(e){this.buffer=e,this.pos=0}Eu.prototype.read=function(e,t,i){this.pos+i>this.buffer.length&&(i=this.buffer.length-this.pos);for(var a=0;a<i;a++)e[t+a]=this.buffer[this.pos+a];return this.pos+=i,i},Rr.BrotliInput=Eu;function Ou(e){this.buffer=e,this.pos=0}Ou.prototype.write=function(e,t){if(this.pos+t>this.buffer.length)throw new Error("Output buffer is not large enough");return this.buffer.set(e.subarray(0,t),this.pos),this.pos+=t,t},Rr.BrotliOutput=Ou;var ua=4096,sC=2*ua+32,Mu=2*ua-1,rC=new Uint32Array([0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535,131071,262143,524287,1048575,2097151,4194303,8388607,16777215]);function da(e){this.buf_=new Uint8Array(sC),this.input_=e,this.reset()}da.READ_SIZE=ua,da.IBUF_MASK=Mu,da.prototype.reset=function(){this.buf_ptr_=0,this.val_=0,this.pos_=0,this.bit_pos_=0,this.bit_end_pos_=0,this.eos_=0,this.readMoreInput();for(var e=0;e<4;e++)this.val_|=this.buf_[this.pos_]<<8*e,++this.pos_;return this.bit_end_pos_>0},da.prototype.readMoreInput=function(){if(!(this.bit_end_pos_>256))if(this.eos_){if(this.bit_pos_>this.bit_end_pos_)throw new Error("Unexpected end of input "+this.bit_pos_+" "+this.bit_end_pos_)}else{var e=this.buf_ptr_,t=this.input_.read(this.buf_,e,ua);if(t<0)throw new Error("Unexpected end of input");if(t<ua){this.eos_=1;for(var i=0;i<32;i++)this.buf_[e+t+i]=0}if(e===0){for(var i=0;i<32;i++)this.buf_[(ua<<1)+i]=this.buf_[i];this.buf_ptr_=ua}else this.buf_ptr_=0;this.bit_end_pos_+=t<<3}},da.prototype.fillBitWindow=function(){for(;this.bit_pos_>=8;)this.val_>>>=8,this.val_|=this.buf_[this.pos_&Mu]<<24,++this.pos_,this.bit_pos_=this.bit_pos_-8>>>0,this.bit_end_pos_=this.bit_end_pos_-8>>>0},da.prototype.readBits=function(e){32-this.bit_pos_<e&&this.fillBitWindow();var t=this.val_>>>this.bit_pos_&rC[e];return this.bit_pos_+=e,t};var nC=da,Wi={},zo={},Lo,Ru;function oC(){return Ru||(Ru=1,Lo="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"),Lo}var Du;function lC(){if(Du)return zo;Du=1;var e=ys;return zo.init=function(){var t=Wu().BrotliDecompressBuffer,i=e.toByteArray(oC());return t(i)},zo}var zu;function Lu(){if(zu)return Wi;zu=1;var e=lC();return Wi.init=function(){Wi.dictionary=e.init()},Wi.offsetsByLength=new Uint32Array([0,0,0,0,0,4096,9216,21504,35840,44032,53248,63488,74752,87040,93696,100864,104704,106752,108928,113536,115968,118528,119872,121280,122016]),Wi.sizeBitsByLength=new Uint8Array([0,0,0,0,10,10,11,11,10,10,10,10,10,9,9,8,7,7,8,7,7,6,6,5,5]),Wi.minDictionaryWordLength=4,Wi.maxDictionaryWordLength=24,Wi}var Dr={};function Ba(e,t){this.bits=e,this.value=t}Dr.HuffmanCode=Ba;var Ua=15;function Bu(e,t){for(var i=1<<t-1;e&i;)i>>=1;return(e&i-1)+i}function Uu(e,t,i,a,s){do a-=i,e[t+a]=new Ba(s.bits,s.value);while(a>0)}function cC(e,t,i){for(var a=1<<t-i;t<Ua&&(a-=e[t],!(a<=0));)++t,a<<=1;return t-i}Dr.BrotliBuildHuffmanTable=function(e,t,i,a,s){var r=t,n,o,l,c,f,u,h,m,b,M,G,L=new Int32Array(Ua+1),O=new Int32Array(Ua+1);for(G=new Int32Array(s),l=0;l<s;l++)L[a[l]]++;for(O[1]=0,o=1;o<Ua;o++)O[o+1]=O[o]+L[o];for(l=0;l<s;l++)a[l]!==0&&(G[O[a[l]]++]=l);if(m=i,b=1<<m,M=b,O[Ua]===1){for(c=0;c<M;++c)e[t+c]=new Ba(0,G[0]&65535);return M}for(c=0,l=0,o=1,f=2;o<=i;++o,f<<=1)for(;L[o]>0;--L[o])n=new Ba(o&255,G[l++]&65535),Uu(e,t+c,f,b,n),c=Bu(c,o);for(h=M-1,u=-1,o=i+1,f=2;o<=Ua;++o,f<<=1)for(;L[o]>0;--L[o])(c&h)!==u&&(t+=b,m=cC(L,o,i),b=1<<m,M+=b,u=c&h,e[r+u]=new Ba(m+i&255,t-r-u&65535)),n=new Ba(o-i&255,G[l++]&65535),Uu(e,t+(c>>i),f,b,n),c=Bu(c,o);return M};var Bo={};Bo.lookup=new Uint8Array([0,0,0,0,0,0,0,0,0,4,4,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,12,16,12,12,20,12,16,24,28,12,12,32,12,36,12,44,44,44,44,44,44,44,44,44,44,32,32,24,40,28,12,12,48,52,52,52,48,52,52,52,48,52,52,52,52,52,48,52,52,52,52,52,48,52,52,52,52,52,24,12,28,12,12,12,56,60,60,60,56,60,60,60,56,60,60,60,60,60,56,60,60,60,60,60,56,60,60,60,60,60,24,12,28,12,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,9,9,9,9,10,10,10,10,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,22,22,22,22,23,23,23,23,24,24,24,24,25,25,25,25,26,26,26,26,27,27,27,27,28,28,28,28,29,29,29,29,30,30,30,30,31,31,31,31,32,32,32,32,33,33,33,33,34,34,34,34,35,35,35,35,36,36,36,36,37,37,37,37,38,38,38,38,39,39,39,39,40,40,40,40,41,41,41,41,42,42,42,42,43,43,43,43,44,44,44,44,45,45,45,45,46,46,46,46,47,47,47,47,48,48,48,48,49,49,49,49,50,50,50,50,51,51,51,51,52,52,52,52,53,53,53,53,54,54,54,54,55,55,55,55,56,56,56,56,57,57,57,57,58,58,58,58,59,59,59,59,60,60,60,60,61,61,61,61,62,62,62,62,63,63,63,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),Bo.lookupOffsets=new Uint16Array([1024,1536,1280,1536,0,256,768,512]);var Za={};function ae(e,t){this.offset=e,this.nbits=t}Za.kBlockLengthPrefixCode=[new ae(1,2),new ae(5,2),new ae(9,2),new ae(13,2),new ae(17,3),new ae(25,3),new ae(33,3),new ae(41,3),new ae(49,4),new ae(65,4),new ae(81,4),new ae(97,4),new ae(113,5),new ae(145,5),new ae(177,5),new ae(209,5),new ae(241,6),new ae(305,6),new ae(369,7),new ae(497,8),new ae(753,9),new ae(1265,10),new ae(2289,11),new ae(4337,12),new ae(8433,13),new ae(16625,24)],Za.kInsertLengthPrefixCode=[new ae(0,0),new ae(1,0),new ae(2,0),new ae(3,0),new ae(4,0),new ae(5,0),new ae(6,1),new ae(8,1),new ae(10,2),new ae(14,2),new ae(18,3),new ae(26,3),new ae(34,4),new ae(50,4),new ae(66,5),new ae(98,5),new ae(130,6),new ae(194,7),new ae(322,8),new ae(578,9),new ae(1090,10),new ae(2114,12),new ae(6210,14),new ae(22594,24)],Za.kCopyLengthPrefixCode=[new ae(2,0),new ae(3,0),new ae(4,0),new ae(5,0),new ae(6,0),new ae(7,0),new ae(8,0),new ae(9,0),new ae(10,1),new ae(12,1),new ae(14,2),new ae(18,2),new ae(22,3),new ae(30,3),new ae(38,4),new ae(54,4),new ae(70,5),new ae(102,5),new ae(134,6),new ae(198,7),new ae(326,8),new ae(582,9),new ae(1094,10),new ae(2118,24)],Za.kInsertRangeLut=[0,0,8,8,0,16,8,16,16],Za.kCopyRangeLut=[0,8,0,8,16,0,16,8,16];var vs={},Zu;function fC(){if(Zu)return vs;Zu=1;var e=Lu(),t=0,i=1,a=2,s=3,r=4,n=5,o=6,l=7,c=8,f=9,u=10,h=11,m=12,b=13,M=14,G=15,L=16,O=17,v=18,P=20;function y(j,ie,re){this.prefix=new Uint8Array(j.length),this.transform=ie,this.suffix=new Uint8Array(re.length);for(var le=0;le<j.length;le++)this.prefix[le]=j.charCodeAt(le);for(var le=0;le<re.length;le++)this.suffix[le]=re.charCodeAt(le)}var K=[new y("",t,""),new y("",t," "),new y(" ",t," "),new y("",m,""),new y("",u," "),new y("",t," the "),new y(" ",t,""),new y("s ",t," "),new y("",t," of "),new y("",u,""),new y("",t," and "),new y("",b,""),new y("",i,""),new y(", ",t," "),new y("",t,", "),new y(" ",u," "),new y("",t," in "),new y("",t," to "),new y("e ",t," "),new y("",t,'"'),new y("",t,"."),new y("",t,'">'),new y("",t,`
|
|
293
|
+
`),new y("",s,""),new y("",t,"]"),new y("",t," for "),new y("",M,""),new y("",a,""),new y("",t," a "),new y("",t," that "),new y(" ",u,""),new y("",t,". "),new y(".",t,""),new y(" ",t,", "),new y("",G,""),new y("",t," with "),new y("",t,"'"),new y("",t," from "),new y("",t," by "),new y("",L,""),new y("",O,""),new y(" the ",t,""),new y("",r,""),new y("",t,". The "),new y("",h,""),new y("",t," on "),new y("",t," as "),new y("",t," is "),new y("",l,""),new y("",i,"ing "),new y("",t,`
|
|
294
|
+
`),new y("",t,":"),new y(" ",t,". "),new y("",t,"ed "),new y("",P,""),new y("",v,""),new y("",o,""),new y("",t,"("),new y("",u,", "),new y("",c,""),new y("",t," at "),new y("",t,"ly "),new y(" the ",t," of "),new y("",n,""),new y("",f,""),new y(" ",u,", "),new y("",u,'"'),new y(".",t,"("),new y("",h," "),new y("",u,'">'),new y("",t,'="'),new y(" ",t,"."),new y(".com/",t,""),new y(" the ",t," of the "),new y("",u,"'"),new y("",t,". This "),new y("",t,","),new y(".",t," "),new y("",u,"("),new y("",u,"."),new y("",t," not "),new y(" ",t,'="'),new y("",t,"er "),new y(" ",h," "),new y("",t,"al "),new y(" ",h,""),new y("",t,"='"),new y("",h,'"'),new y("",u,". "),new y(" ",t,"("),new y("",t,"ful "),new y(" ",u,". "),new y("",t,"ive "),new y("",t,"less "),new y("",h,"'"),new y("",t,"est "),new y(" ",u,"."),new y("",h,'">'),new y(" ",t,"='"),new y("",u,","),new y("",t,"ize "),new y("",h,"."),new y(" ",t,""),new y(" ",t,","),new y("",u,'="'),new y("",h,'="'),new y("",t,"ous "),new y("",h,", "),new y("",u,"='"),new y(" ",u,","),new y(" ",h,'="'),new y(" ",h,", "),new y("",h,","),new y("",h,"("),new y("",h,". "),new y(" ",h,"."),new y("",h,"='"),new y(" ",h,". "),new y(" ",u,'="'),new y(" ",h,"='"),new y(" ",u,"='")];vs.kTransforms=K,vs.kNumTransforms=K.length;function R(j,ie){return j[ie]<192?(j[ie]>=97&&j[ie]<=122&&(j[ie]^=32),1):j[ie]<224?(j[ie+1]^=32,2):(j[ie+2]^=5,3)}return vs.transformDictionaryWord=function(j,ie,re,le,we){var Fe=K[we].prefix,ze=K[we].suffix,Oe=K[we].transform,Ye=Oe<m?0:Oe-(m-1),Ce=0,X=ie,J;Ye>le&&(Ye=le);for(var q=0;q<Fe.length;)j[ie++]=Fe[q++];for(re+=Ye,le-=Ye,Oe<=f&&(le-=Oe),Ce=0;Ce<le;Ce++)j[ie++]=e.dictionary[re+Ce];if(J=ie-le,Oe===u)R(j,J);else if(Oe===h)for(;le>0;){var Ne=R(j,J);J+=Ne,le-=Ne}for(var ke=0;ke<ze.length;)j[ie++]=ze[ke++];return ie-X},vs}var Gu;function Wu(){if(Gu)return ws;Gu=1;var e=Rr.BrotliInput,t=Rr.BrotliOutput,i=nC,a=Lu(),s=Dr.HuffmanCode,r=Dr.BrotliBuildHuffmanTable,n=Bo,o=Za,l=fC(),c=8,f=16,u=256,h=704,m=26,b=6,M=2,G=8,L=255,O=1080,v=18,P=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),y=16,K=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),R=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),j=new Uint16Array([256,402,436,468,500,534,566,598,630,662,694,726,758,790,822,854,886,920,952,984,1016,1048,1080]);function ie(Q){var B;return Q.readBits(1)===0?16:(B=Q.readBits(3),B>0?17+B:(B=Q.readBits(3),B>0?8+B:17))}function re(Q){if(Q.readBits(1)){var B=Q.readBits(3);return B===0?1:Q.readBits(B)+(1<<B)}return 0}function le(){this.meta_block_length=0,this.input_end=0,this.is_uncompressed=0,this.is_metadata=!1}function we(Q){var B=new le,z,D,ne;if(B.input_end=Q.readBits(1),B.input_end&&Q.readBits(1))return B;if(z=Q.readBits(2)+4,z===7){if(B.is_metadata=!0,Q.readBits(1)!==0)throw new Error("Invalid reserved bit");if(D=Q.readBits(2),D===0)return B;for(ne=0;ne<D;ne++){var he=Q.readBits(8);if(ne+1===D&&D>1&&he===0)throw new Error("Invalid size byte");B.meta_block_length|=he<<ne*8}}else for(ne=0;ne<z;++ne){var ce=Q.readBits(4);if(ne+1===z&&z>4&&ce===0)throw new Error("Invalid size nibble");B.meta_block_length|=ce<<ne*4}return++B.meta_block_length,!B.input_end&&!B.is_metadata&&(B.is_uncompressed=Q.readBits(1)),B}function Fe(Q,B,z){var D;return z.fillBitWindow(),B+=z.val_>>>z.bit_pos_&L,D=Q[B].bits-G,D>0&&(z.bit_pos_+=G,B+=Q[B].value,B+=z.val_>>>z.bit_pos_&(1<<D)-1),z.bit_pos_+=Q[B].bits,Q[B].value}function ze(Q,B,z,D){for(var ne=0,he=c,ce=0,de=0,Ae=32768,fe=[],te=0;te<32;te++)fe.push(new s(0,0));for(r(fe,0,5,Q,v);ne<B&&Ae>0;){var _e=0,ft;if(D.readMoreInput(),D.fillBitWindow(),_e+=D.val_>>>D.bit_pos_&31,D.bit_pos_+=fe[_e].bits,ft=fe[_e].value&255,ft<f)ce=0,z[ne++]=ft,ft!==0&&(he=ft,Ae-=32768>>ft);else{var Ft=ft-14,tt,vt,xt=0;if(ft===f&&(xt=he),de!==xt&&(ce=0,de=xt),tt=ce,ce>0&&(ce-=2,ce<<=Ft),ce+=D.readBits(Ft)+3,vt=ce-tt,ne+vt>B)throw new Error("[ReadHuffmanCodeLengths] symbol + repeat_delta > num_symbols");for(var Dt=0;Dt<vt;Dt++)z[ne+Dt]=de;ne+=vt,de!==0&&(Ae-=vt<<15-de)}}if(Ae!==0)throw new Error("[ReadHuffmanCodeLengths] space = "+Ae);for(;ne<B;ne++)z[ne]=0}function Oe(Q,B,z,D){var ne=0,he,ce=new Uint8Array(Q);if(D.readMoreInput(),he=D.readBits(2),he===1){for(var de,Ae=Q-1,fe=0,te=new Int32Array(4),_e=D.readBits(2)+1;Ae;)Ae>>=1,++fe;for(de=0;de<_e;++de)te[de]=D.readBits(fe)%Q,ce[te[de]]=2;switch(ce[te[0]]=1,_e){case 1:break;case 3:if(te[0]===te[1]||te[0]===te[2]||te[1]===te[2])throw new Error("[ReadHuffmanCode] invalid symbols");break;case 2:if(te[0]===te[1])throw new Error("[ReadHuffmanCode] invalid symbols");ce[te[1]]=1;break;case 4:if(te[0]===te[1]||te[0]===te[2]||te[0]===te[3]||te[1]===te[2]||te[1]===te[3]||te[2]===te[3])throw new Error("[ReadHuffmanCode] invalid symbols");D.readBits(1)?(ce[te[2]]=3,ce[te[3]]=3):ce[te[0]]=2;break}}else{var de,ft=new Uint8Array(v),Ft=32,tt=0,vt=[new s(2,0),new s(2,4),new s(2,3),new s(3,2),new s(2,0),new s(2,4),new s(2,3),new s(4,1),new s(2,0),new s(2,4),new s(2,3),new s(3,2),new s(2,0),new s(2,4),new s(2,3),new s(4,5)];for(de=he;de<v&&Ft>0;++de){var xt=P[de],Dt=0,Ht;D.fillBitWindow(),Dt+=D.val_>>>D.bit_pos_&15,D.bit_pos_+=vt[Dt].bits,Ht=vt[Dt].value,ft[xt]=Ht,Ht!==0&&(Ft-=32>>Ht,++tt)}if(!(tt===1||Ft===0))throw new Error("[ReadHuffmanCode] invalid num_codes or space");ze(ft,Q,ce,D)}if(ne=r(B,z,G,ce,Q),ne===0)throw new Error("[ReadHuffmanCode] BuildHuffmanTable failed: ");return ne}function Ye(Q,B,z){var D,ne;return D=Fe(Q,B,z),ne=o.kBlockLengthPrefixCode[D].nbits,o.kBlockLengthPrefixCode[D].offset+z.readBits(ne)}function Ce(Q,B,z){var D;return Q<y?(z+=K[Q],z&=3,D=B[z]+R[Q]):D=Q-y+1,D}function X(Q,B){for(var z=Q[B],D=B;D;--D)Q[D]=Q[D-1];Q[0]=z}function J(Q,B){var z=new Uint8Array(256),D;for(D=0;D<256;++D)z[D]=D;for(D=0;D<B;++D){var ne=Q[D];Q[D]=z[ne],ne&&X(z,ne)}}function q(Q,B){this.alphabet_size=Q,this.num_htrees=B,this.codes=new Array(B+B*j[Q+31>>>5]),this.htrees=new Uint32Array(B)}q.prototype.decode=function(Q){var B,z,D=0;for(B=0;B<this.num_htrees;++B)this.htrees[B]=D,z=Oe(this.alphabet_size,this.codes,D,Q),D+=z};function Ne(Q,B){var z={num_htrees:null,context_map:null},D,ne=0,he,ce;B.readMoreInput();var de=z.num_htrees=re(B)+1,Ae=z.context_map=new Uint8Array(Q);if(de<=1)return z;for(D=B.readBits(1),D&&(ne=B.readBits(4)+1),he=[],ce=0;ce<O;ce++)he[ce]=new s(0,0);for(Oe(de+ne,he,0,B),ce=0;ce<Q;){var fe;if(B.readMoreInput(),fe=Fe(he,0,B),fe===0)Ae[ce]=0,++ce;else if(fe<=ne)for(var te=1+(1<<fe)+B.readBits(fe);--te;){if(ce>=Q)throw new Error("[DecodeContextMap] i >= context_map_size");Ae[ce]=0,++ce}else Ae[ce]=fe-ne,++ce}return B.readBits(1)&&J(Ae,Q),z}function ke(Q,B,z,D,ne,he,ce){var de=z*2,Ae=z,fe=Fe(B,z*O,ce),te;fe===0?te=ne[de+(he[Ae]&1)]:fe===1?te=ne[de+(he[Ae]-1&1)]+1:te=fe-2,te>=Q&&(te-=Q),D[z]=te,ne[de+(he[Ae]&1)]=te,++he[Ae]}function Le(Q,B,z,D,ne,he){var ce=ne+1,de=z&ne,Ae=he.pos_&i.IBUF_MASK,fe;if(B<8||he.bit_pos_+(B<<3)<he.bit_end_pos_){for(;B-- >0;)he.readMoreInput(),D[de++]=he.readBits(8),de===ce&&(Q.write(D,ce),de=0);return}if(he.bit_end_pos_<32)throw new Error("[CopyUncompressedBlockToOutput] br.bit_end_pos_ < 32");for(;he.bit_pos_<32;)D[de]=he.val_>>>he.bit_pos_,he.bit_pos_+=8,++de,--B;if(fe=he.bit_end_pos_-he.bit_pos_>>3,Ae+fe>i.IBUF_MASK){for(var te=i.IBUF_MASK+1-Ae,_e=0;_e<te;_e++)D[de+_e]=he.buf_[Ae+_e];fe-=te,de+=te,B-=te,Ae=0}for(var _e=0;_e<fe;_e++)D[de+_e]=he.buf_[Ae+_e];if(de+=fe,B-=fe,de>=ce){Q.write(D,ce),de-=ce;for(var _e=0;_e<de;_e++)D[_e]=D[ce+_e]}for(;de+B>=ce;){if(fe=ce-de,he.input_.read(D,de,fe)<fe)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");Q.write(D,ce),B-=fe,de=0}if(he.input_.read(D,de,B)<B)throw new Error("[CopyUncompressedBlockToOutput] not enough bytes");he.reset()}function Ke(Q){var B=Q.bit_pos_+7&-8,z=Q.readBits(B-Q.bit_pos_);return z==0}function Ue(Q){var B=new e(Q),z=new i(B);ie(z);var D=we(z);return D.meta_block_length}ws.BrotliDecompressedSize=Ue;function De(Q,B){var z=new e(Q);B==null&&(B=Ue(Q));var D=new Uint8Array(B),ne=new t(D);return Vt(z,ne),ne.pos<ne.buffer.length&&(ne.buffer=ne.buffer.subarray(0,ne.pos)),ne.buffer}ws.BrotliDecompressBuffer=De;function Vt(Q,B){var z,D=0,ne=0,he=0,ce,de=0,Ae,fe,te,_e,ft=[16,15,11,4],Ft=0,tt=0,vt=0,xt=[new q(0,0),new q(0,0),new q(0,0)],Dt,Ht,Pe,Cl=128+i.READ_SIZE;Pe=new i(Q),he=ie(Pe),ce=(1<<he)-16,Ae=1<<he,fe=Ae-1,te=new Uint8Array(Ae+Cl+a.maxDictionaryWordLength),_e=Ae,Dt=[],Ht=[];for(var ts=0;ts<3*O;ts++)Dt[ts]=new s(0,0),Ht[ts]=new s(0,0);for(;!ne;){var _t=0,js,ii=[1<<28,1<<28,1<<28],oi=[0],Kt=[1,1,1],Fi=[0,1,0,1,0,1],xa=[0],$i,qt,_n,is,In=null,ea=null,Tn,Fn=null,Ys,Pn=0,as=null,li=0,ss=0,Hs=null,C=0,oe=0,Re=0,He,qe;for(z=0;z<3;++z)xt[z].codes=null,xt[z].htrees=null;Pe.readMoreInput();var It=we(Pe);if(_t=It.meta_block_length,D+_t>B.buffer.length){var rs=new Uint8Array(D+_t);rs.set(B.buffer),B.buffer=rs}if(ne=It.input_end,js=It.is_uncompressed,It.is_metadata){for(Ke(Pe);_t>0;--_t)Pe.readMoreInput(),Pe.readBits(8);continue}if(_t!==0){if(js){Pe.bit_pos_=Pe.bit_pos_+7&-8,Le(B,_t,D,te,fe,Pe),D+=_t;continue}for(z=0;z<3;++z)Kt[z]=re(Pe)+1,Kt[z]>=2&&(Oe(Kt[z]+2,Dt,z*O,Pe),Oe(m,Ht,z*O,Pe),ii[z]=Ye(Ht,z*O,Pe),xa[z]=1);for(Pe.readMoreInput(),$i=Pe.readBits(2),qt=y+(Pe.readBits(4)<<$i),_n=(1<<$i)-1,is=qt+(48<<$i),ea=new Uint8Array(Kt[0]),z=0;z<Kt[0];++z)Pe.readMoreInput(),ea[z]=Pe.readBits(2)<<1;var En=Ne(Kt[0]<<b,Pe);Tn=En.num_htrees,In=En.context_map;var Sl=Ne(Kt[2]<<M,Pe);for(Ys=Sl.num_htrees,Fn=Sl.context_map,xt[0]=new q(u,Tn),xt[1]=new q(h,Kt[1]),xt[2]=new q(is,Ys),z=0;z<3;++z)xt[z].decode(Pe);for(as=0,Hs=0,He=ea[oi[0]],oe=n.lookupOffsets[He],Re=n.lookupOffsets[He+1],qe=xt[1].htrees[0];_t>0;){var On,Xs,Vl,_l,Il,Xt,Jt,Pi,Ks,ns,qs;for(Pe.readMoreInput(),ii[1]===0&&(ke(Kt[1],Dt,1,oi,Fi,xa,Pe),ii[1]=Ye(Ht,O,Pe),qe=xt[1].htrees[oi[1]]),--ii[1],On=Fe(xt[1].codes,qe,Pe),Xs=On>>6,Xs>=2?(Xs-=2,Jt=-1):Jt=0,Vl=o.kInsertRangeLut[Xs]+(On>>3&7),_l=o.kCopyRangeLut[Xs]+(On&7),Il=o.kInsertLengthPrefixCode[Vl].offset+Pe.readBits(o.kInsertLengthPrefixCode[Vl].nbits),Xt=o.kCopyLengthPrefixCode[_l].offset+Pe.readBits(o.kCopyLengthPrefixCode[_l].nbits),tt=te[D-1&fe],vt=te[D-2&fe],ns=0;ns<Il;++ns)Pe.readMoreInput(),ii[0]===0&&(ke(Kt[0],Dt,0,oi,Fi,xa,Pe),ii[0]=Ye(Ht,0,Pe),Pn=oi[0]<<b,as=Pn,He=ea[oi[0]],oe=n.lookupOffsets[He],Re=n.lookupOffsets[He+1]),Ks=n.lookup[oe+tt]|n.lookup[Re+vt],li=In[as+Ks],--ii[0],vt=tt,tt=Fe(xt[0].codes,xt[0].htrees[li],Pe),te[D&fe]=tt,(D&fe)===fe&&B.write(te,Ae),++D;if(_t-=Il,_t<=0)break;if(Jt<0){var Ks;if(Pe.readMoreInput(),ii[2]===0&&(ke(Kt[2],Dt,2,oi,Fi,xa,Pe),ii[2]=Ye(Ht,2*O,Pe),ss=oi[2]<<M,Hs=ss),--ii[2],Ks=(Xt>4?3:Xt-2)&255,C=Fn[Hs+Ks],Jt=Fe(xt[2].codes,xt[2].htrees[C],Pe),Jt>=qt){var Tl,Wd,Js;Jt-=qt,Wd=Jt&_n,Jt>>=$i,Tl=(Jt>>1)+1,Js=(2+(Jt&1)<<Tl)-4,Jt=qt+(Js+Pe.readBits(Tl)<<$i)+Wd}}if(Pi=Ce(Jt,ft,Ft),Pi<0)throw new Error("[BrotliDecompress] invalid distance");if(D<ce&&de!==ce?de=D:de=ce,qs=D&fe,Pi>de)if(Xt>=a.minDictionaryWordLength&&Xt<=a.maxDictionaryWordLength){var Js=a.offsetsByLength[Xt],jd=Pi-de-1,Yd=a.sizeBitsByLength[Xt],eI=(1<<Yd)-1,tI=jd&eI,Hd=jd>>Yd;if(Js+=tI*Xt,Hd<l.kNumTransforms){var Fl=l.transformDictionaryWord(te,qs,Js,Xt,Hd);if(qs+=Fl,D+=Fl,_t-=Fl,qs>=_e){B.write(te,Ae);for(var Mn=0;Mn<qs-_e;Mn++)te[Mn]=te[_e+Mn]}}else throw new Error("Invalid backward reference. pos: "+D+" distance: "+Pi+" len: "+Xt+" bytes left: "+_t)}else throw new Error("Invalid backward reference. pos: "+D+" distance: "+Pi+" len: "+Xt+" bytes left: "+_t);else{if(Jt>0&&(ft[Ft&3]=Pi,++Ft),Xt>_t)throw new Error("Invalid backward reference. pos: "+D+" distance: "+Pi+" len: "+Xt+" bytes left: "+_t);for(ns=0;ns<Xt;++ns)te[D&fe]=te[D-Pi&fe],(D&fe)===fe&&B.write(te,Ae),++D,--_t}tt=te[D-1&fe],vt=te[D-2&fe]}D&=1073741823}}B.write(te,D&fe)}return ws.BrotliDecompress=Vt,a.init(),ws}var uC=Wu().BrotliDecompressBuffer;const dC=za(uC);function xs(e,t,i,a){Object.defineProperty(e,t,{get:i,set:a,enumerable:!0,configurable:!0})}function zr(e){return e&&e.__esModule?e.default:e}var ks={};xs(ks,"logErrors",()=>hC),xs(ks,"registerFormat",()=>Ga),xs(ks,"create",()=>ju),xs(ks,"defaultLanguage",()=>Lr),xs(ks,"setDefaultLanguage",()=>pC);let hC=!1,Uo=[];function Ga(e){Uo.push(e)}function ju(e,t){for(let i=0;i<Uo.length;i++){let a=Uo[i];if(a.probe(e)){let s=new a(new Pt(e));return t?s.getFont(t):s}}throw new Error("Unknown font format")}let Lr="en";function pC(e="en"){Lr=e}function Ot(e,t,i){if(i.get){let a=i.get;i.get=function(){let s=a.call(this);return Object.defineProperty(this,t,{value:s}),s}}else if(typeof i.value=="function"){let a=i.value;return{get(){let s=new Map;function r(...n){let o=n.length>0?n[0]:"value";if(s.has(o))return s.get(o);let l=a.apply(this,n);return s.set(o,l),l}return Object.defineProperty(this,t,{value:r}),r}}}}let gC=new E({firstCode:d,entryCount:d,idDelta:H,idRangeOffset:d}),Zo=new E({startCharCode:V,endCharCode:V,glyphID:V}),mC=new E({startUnicodeValue:Zi,additionalCount:ee}),yC=new E({unicodeValue:Zi,glyphID:d}),bC=new A(mC,V),wC=new A(yC,V),vC=new E({varSelector:Zi,defaultUVS:new S(V,bC,{type:"parent"}),nonDefaultUVS:new S(V,wC,{type:"parent"})}),xC=new Ie(d,{0:{length:d,language:d,codeMap:new Xe(ee,256)},2:{length:d,language:d,subHeaderKeys:new A(d,256),subHeaderCount:e=>Math.max.apply(Math,e.subHeaderKeys),subHeaders:new Xe(gC,"subHeaderCount"),glyphIndexArray:new Xe(d,"subHeaderCount")},4:{length:d,language:d,segCountX2:d,segCount:e=>e.segCountX2>>1,searchRange:d,entrySelector:d,rangeShift:d,endCode:new Xe(d,"segCount"),reservedPad:new st(d),startCode:new Xe(d,"segCount"),idDelta:new Xe(H,"segCount"),idRangeOffset:new Xe(d,"segCount"),glyphIndexArray:new Xe(d,e=>(e.length-e._currentOffset)/2)},6:{length:d,language:d,firstCode:d,entryCount:d,glyphIndices:new Xe(d,"entryCount")},8:{reserved:new st(d),length:V,language:d,is32:new Xe(ee,8192),nGroups:V,groups:new Xe(Zo,"nGroups")},10:{reserved:new st(d),length:V,language:V,firstCode:V,entryCount:V,glyphIndices:new Xe(d,"numChars")},12:{reserved:new st(d),length:V,language:V,nGroups:V,groups:new Xe(Zo,"nGroups")},13:{reserved:new st(d),length:V,language:V,nGroups:V,groups:new Xe(Zo,"nGroups")},14:{length:V,numRecords:V,varSelectors:new Xe(vC,"numRecords")}}),kC=new E({platformID:d,encodingID:d,table:new S(V,xC,{type:"parent",lazy:!0})});var NC=new E({version:d,numSubtables:d,tables:new A(kC,"numSubtables")}),AC=new E({version:oa,revision:oa,checkSumAdjustment:V,magicNumber:V,flags:d,unitsPerEm:d,created:new A(oa,2),modified:new A(oa,2),xMin:H,yMin:H,xMax:H,yMax:H,macStyle:new ai(d,["bold","italic","underline","outline","shadow","condensed","extended"]),lowestRecPPEM:d,fontDirectionHint:H,indexToLocFormat:H,glyphDataFormat:H}),CC=new E({version:oa,ascent:H,descent:H,lineGap:H,advanceWidthMax:d,minLeftSideBearing:H,minRightSideBearing:H,xMaxExtent:H,caretSlopeRise:H,caretSlopeRun:H,caretOffset:H,reserved:new st(H,4),metricDataFormat:H,numberOfMetrics:d});let SC=new E({advance:d,bearing:H});var VC=new E({metrics:new Xe(SC,e=>e.parent.hhea.numberOfMetrics),bearings:new Xe(H,e=>e.parent.maxp.numGlyphs-e.parent.hhea.numberOfMetrics)}),_C=new E({version:oa,numGlyphs:d,maxPoints:d,maxContours:d,maxComponentPoints:d,maxComponentContours:d,maxZones:d,maxTwilightPoints:d,maxStorage:d,maxFunctionDefs:d,maxInstructionDefs:d,maxStackElements:d,maxSizeOfInstructions:d,maxComponentElements:d,maxComponentDepth:d});function Yu(e,t,i=0){return e===1&&Hu[i]?Hu[i]:PC[e][t]}const IC=new Set(["x-mac-roman","x-mac-cyrillic","iso-8859-6","iso-8859-8"]),TC={"x-mac-croatian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈ƫȅ ÀÃÕŒœĐ—“”‘’÷◊©⁄€‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ","x-mac-gaelic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØḂ±≤≥ḃĊċḊḋḞḟĠġṀæøṁṖṗɼƒſṠ«»… ÀÃÕŒœ–—“”‘’ṡẛÿŸṪ€‹›Ŷŷṫ·Ỳỳ⁊ÂÊÁËÈÍÎÏÌÓÔ♣ÒÚÛÙıÝýŴŵẄẅẀẁẂẃ","x-mac-greek":"Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦€ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ","x-mac-icelandic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüݰ¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-inuit":"ᐃᐄᐅᐆᐊᐋᐱᐲᐳᐴᐸᐹᑉᑎᑏᑐᑑᑕᑖᑦᑭᑮᑯᑰᑲᑳᒃᒋᒌᒍᒎᒐᒑ°ᒡᒥᒦ•¶ᒧ®©™ᒨᒪᒫᒻᓂᓃᓄᓅᓇᓈᓐᓯᓰᓱᓲᓴᓵᔅᓕᓖᓗᓘᓚᓛᓪᔨᔩᔪᔫᔭ… ᔮᔾᕕᕖᕗ–—“”‘’ᕘᕙᕚᕝᕆᕇᕈᕉᕋᕌᕐᕿᖀᖁᖂᖃᖄᖅᖏᖐᖑᖒᖓᖔᖕᙱᙲᙳᙴᙵᙶᖖᖠᖡᖢᖣᖤᖥᖦᕼŁł","x-mac-ce":"ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ","x-mac-romanian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂȘ∞±≤≥¥µ∂∑∏π∫ªºΩăș¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›Țț‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-turkish":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙˆ˜¯˘˙˚¸˝˛ˇ"},Go=new Map;function FC(e){let t=Go.get(e);if(t)return t;let i=TC[e];if(i){let a=new Map;for(let s=0;s<i.length;s++)a.set(i.charCodeAt(s),128+s);return Go.set(e,a),a}if(IC.has(e)){let a=new TextDecoder(e),s=new Uint8Array(128);for(let o=0;o<128;o++)s[o]=128+o;let r=new Map,n=a.decode(s);for(let o=0;o<128;o++)r.set(n.charCodeAt(o),128+o);return Go.set(e,r),r}}const PC=[["utf-16be","utf-16be","utf-16be","utf-16be","utf-16be","utf-16be","utf-16be"],["x-mac-roman","shift-jis","big5","euc-kr","iso-8859-6","iso-8859-8","x-mac-greek","x-mac-cyrillic","x-mac-symbol","x-mac-devanagari","x-mac-gurmukhi","x-mac-gujarati","Oriya","Bengali","Tamil","Telugu","Kannada","Malayalam","Sinhalese","Burmese","Khmer","iso-8859-11","Laotian","Georgian","Armenian","gbk","Tibetan","Mongolian","Geez","x-mac-ce","Vietnamese","Sindhi"],["ascii",null,"iso-8859-1"],["symbol","utf-16be","shift-jis","gb18030","big5","euc-kr","johab",null,null,null,"utf-16be"]],Hu={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"},EC=[[],{0:"en",30:"fo",60:"ks",90:"rw",1:"fr",31:"fa",61:"ku",91:"rn",2:"de",32:"ru",62:"sd",92:"ny",3:"it",33:"zh",63:"bo",93:"mg",4:"nl",34:"nl-BE",64:"ne",94:"eo",5:"sv",35:"ga",65:"sa",128:"cy",6:"es",36:"sq",66:"mr",129:"eu",7:"da",37:"ro",67:"bn",130:"ca",8:"pt",38:"cz",68:"as",131:"la",9:"no",39:"sk",69:"gu",132:"qu",10:"he",40:"si",70:"pa",133:"gn",11:"ja",41:"yi",71:"or",134:"ay",12:"ar",42:"sr",72:"ml",135:"tt",13:"fi",43:"mk",73:"kn",136:"ug",14:"el",44:"bg",74:"ta",137:"dz",15:"is",45:"uk",75:"te",138:"jv",16:"mt",46:"be",76:"si",139:"su",17:"tr",47:"uz",77:"my",140:"gl",18:"hr",48:"kk",78:"km",141:"af",19:"zh-Hant",49:"az-Cyrl",79:"lo",142:"br",20:"ur",50:"az-Arab",80:"vi",143:"iu",21:"hi",51:"hy",81:"id",144:"gd",22:"th",52:"ka",82:"tl",145:"gv",23:"ko",53:"mo",83:"ms",146:"ga",24:"lt",54:"ky",84:"ms-Arab",147:"to",25:"pl",55:"tg",85:"am",148:"el-polyton",26:"hu",56:"tk",86:"ti",149:"kl",27:"es",57:"mn-CN",87:"om",150:"az",28:"lv",58:"mn",88:"so",151:"nn",29:"se",59:"ps",89:"sw"},[],{1078:"af",16393:"en-IN",1159:"rw",1074:"tn",1052:"sq",6153:"en-IE",1089:"sw",1115:"si",1156:"gsw",8201:"en-JM",1111:"kok",1051:"sk",1118:"am",17417:"en-MY",1042:"ko",1060:"sl",5121:"ar-DZ",5129:"en-NZ",1088:"ky",11274:"es-AR",15361:"ar-BH",13321:"en-PH",1108:"lo",16394:"es-BO",3073:"ar",18441:"en-SG",1062:"lv",13322:"es-CL",2049:"ar-IQ",7177:"en-ZA",1063:"lt",9226:"es-CO",11265:"ar-JO",11273:"en-TT",2094:"dsb",5130:"es-CR",13313:"ar-KW",2057:"en-GB",1134:"lb",7178:"es-DO",12289:"ar-LB",1033:"en",1071:"mk",12298:"es-EC",4097:"ar-LY",12297:"en-ZW",2110:"ms-BN",17418:"es-SV",6145:"ary",1061:"et",1086:"ms",4106:"es-GT",8193:"ar-OM",1080:"fo",1100:"ml",18442:"es-HN",16385:"ar-QA",1124:"fil",1082:"mt",2058:"es-MX",1025:"ar-SA",1035:"fi",1153:"mi",19466:"es-NI",10241:"ar-SY",2060:"fr-BE",1146:"arn",6154:"es-PA",7169:"aeb",3084:"fr-CA",1102:"mr",15370:"es-PY",14337:"ar-AE",1036:"fr",1148:"moh",10250:"es-PE",9217:"ar-YE",5132:"fr-LU",1104:"mn",20490:"es-PR",1067:"hy",6156:"fr-MC",2128:"mn-CN",3082:"es",1101:"as",4108:"fr-CH",1121:"ne",1034:"es",2092:"az-Cyrl",1122:"fy",1044:"nb",21514:"es-US",1068:"az",1110:"gl",2068:"nn",14346:"es-UY",1133:"ba",1079:"ka",1154:"oc",8202:"es-VE",1069:"eu",3079:"de-AT",1096:"or",2077:"sv-FI",1059:"be",1031:"de",1123:"ps",1053:"sv",2117:"bn",5127:"de-LI",1045:"pl",1114:"syr",1093:"bn-IN",4103:"de-LU",1046:"pt",1064:"tg",8218:"bs-Cyrl",2055:"de-CH",2070:"pt-PT",2143:"tzm",5146:"bs",1032:"el",1094:"pa",1097:"ta",1150:"br",1135:"kl",1131:"qu-BO",1092:"tt",1026:"bg",1095:"gu",2155:"qu-EC",1098:"te",1027:"ca",1128:"ha",3179:"qu",1054:"th",3076:"zh-HK",1037:"he",1048:"ro",1105:"bo",5124:"zh-MO",1081:"hi",1047:"rm",1055:"tr",2052:"zh",1038:"hu",1049:"ru",1090:"tk",4100:"zh-SG",1039:"is",9275:"smn",1152:"ug",1028:"zh-TW",1136:"ig",4155:"smj-NO",1058:"uk",1155:"co",1057:"id",5179:"smj",1070:"hsb",1050:"hr",1117:"iu",3131:"se-FI",1056:"ur",4122:"hr-BA",2141:"iu-Latn",1083:"se",2115:"uz-Cyrl",1029:"cs",2108:"ga",2107:"se-SE",1091:"uz",1030:"da",1076:"xh",8251:"sms",1066:"vi",1164:"prs",1077:"zu",6203:"sma-NO",1106:"cy",1125:"dv",1040:"it",7227:"sms",1160:"wo",2067:"nl-BE",2064:"it-CH",1103:"sa",1157:"sah",1043:"nl",1041:"ja",7194:"sr-Cyrl-BA",1144:"ii",3081:"en-AU",1099:"kn",3098:"sr",1130:"yo",10249:"en-BZ",1087:"kk",6170:"sr-Latn-BA",4105:"en-CA",1107:"km",2074:"sr-Latn",9225:"en-029",1158:"quc",1132:"nso"}];let Xu=new E({platformID:d,encodingID:d,languageID:d,nameID:d,length:d,string:new S(d,new We("length",e=>Yu(e.platformID,e.encodingID,e.languageID)),{type:"parent",relativeTo:e=>e.parent.stringOffset,allowNull:!1})}),OC=new E({length:d,tag:new S(d,new We("length","utf16be"),{type:"parent",relativeTo:e=>e.stringOffset})});var Br=new Ie(d,{0:{count:d,stringOffset:d,records:new A(Xu,"count")},1:{count:d,stringOffset:d,records:new A(Xu,"count"),langTagCount:d,langTags:new A(OC,"langTagCount")}}),MC=Br;const Wo=["copyright","fontFamily","fontSubfamily","uniqueSubfamily","fullName","version","postscriptName","trademark","manufacturer","designer","description","vendorURL","designerURL","license","licenseURL",null,"preferredFamily","preferredSubfamily","compatibleFull","sampleText","postscriptCIDFontName","wwsFamilyName","wwsSubfamilyName"];Br.process=function(e){var t={};for(let i of this.records){let a=EC[i.platformID][i.languageID];a==null&&this.langTags!=null&&i.languageID>=32768&&(a=this.langTags[i.languageID-32768].tag),a==null&&(a=i.platformID+"-"+i.languageID);let s=i.nameID>=256?"fontFeatures":Wo[i.nameID]||i.nameID;t[s]==null&&(t[s]={});let r=t[s];i.nameID>=256&&(r=r[i.nameID]||(r[i.nameID]={})),(typeof i.string=="string"||typeof r[a]!="string")&&(r[a]=i.string)}this.records=t},Br.preEncode=function(){if(Array.isArray(this.records))return;this.version=0;let e=[];for(let t in this.records){let i=this.records[t];t!=="fontFeatures"&&(e.push({platformID:3,encodingID:1,languageID:1033,nameID:Wo.indexOf(t),length:i.en.length*2,string:i.en}),t==="postscriptName"&&e.push({platformID:1,encodingID:0,languageID:0,nameID:Wo.indexOf(t),length:i.en.length,string:i.en}))}this.records=e,this.count=e.length,this.stringOffset=Br.size(this,null,!1)};var Ku=new Ie(d,{header:{xAvgCharWidth:H,usWeightClass:d,usWidthClass:d,fsType:new ai(d,[null,"noEmbedding","viewOnly","editable",null,null,null,null,"noSubsetting","bitmapOnly"]),ySubscriptXSize:H,ySubscriptYSize:H,ySubscriptXOffset:H,ySubscriptYOffset:H,ySuperscriptXSize:H,ySuperscriptYSize:H,ySuperscriptXOffset:H,ySuperscriptYOffset:H,yStrikeoutSize:H,yStrikeoutPosition:H,sFamilyClass:H,panose:new A(ee,10),ulCharRange:new A(V,4),vendorID:new We(4),fsSelection:new ai(d,["italic","underscore","negative","outlined","strikeout","bold","regular","useTypoMetrics","wws","oblique"]),usFirstCharIndex:d,usLastCharIndex:d},0:{},1:{typoAscender:H,typoDescender:H,typoLineGap:H,winAscent:d,winDescent:d,codePageRange:new A(V,2)},2:{typoAscender:H,typoDescender:H,typoLineGap:H,winAscent:d,winDescent:d,codePageRange:new A(V,2),xHeight:H,capHeight:H,defaultChar:d,breakChar:d,maxContent:d},5:{typoAscender:H,typoDescender:H,typoLineGap:H,winAscent:d,winDescent:d,codePageRange:new A(V,2),xHeight:H,capHeight:H,defaultChar:d,breakChar:d,maxContent:d,usLowerOpticalPointSize:d,usUpperOpticalPointSize:d}});let jo=Ku.versions;jo[3]=jo[4]=jo[2];var RC=Ku,DC=new Ie(bt,{header:{italicAngle:bt,underlinePosition:H,underlineThickness:H,isFixedPitch:V,minMemType42:V,maxMemType42:V,minMemType1:V,maxMemType1:V},1:{},2:{numberOfGlyphs:d,glyphNameIndex:new A(d,"numberOfGlyphs"),names:new A(new We(ee))},2.5:{numberOfGlyphs:d,offsets:new A(ee,"numberOfGlyphs")},3:{},4:{map:new A(V,e=>e.parent.maxp.numGlyphs)}}),zC=new E({controlValues:new A(H)}),LC=new E({instructions:new A(ee)});let Yo=new Ie("head.indexToLocFormat",{0:{offsets:new A(d)},1:{offsets:new A(V)}});Yo.process=function(){if(this.version===0&&!this._processed){for(let e=0;e<this.offsets.length;e++)this.offsets[e]<<=1;this._processed=!0}},Yo.preEncode=function(){if(this.version===0&&this._processed!==!1){for(let e=0;e<this.offsets.length;e++)this.offsets[e]>>>=1;this._processed=!1}};var BC=Yo,UC=new E({controlValueProgram:new A(ee)}),ZC=new A(new ui);class gi{getCFFVersion(t){for(;t&&!t.hdrSize;)t=t.parent;return t?t.version:-1}decode(t,i){let s=this.getCFFVersion(i)>=2?t.readUInt32BE():t.readUInt16BE();if(s===0)return[];let r=t.readUInt8(),n;if(r===1)n=ee;else if(r===2)n=d;else if(r===3)n=Zi;else if(r===4)n=V;else throw new Error(`Bad offset size in CFFIndex: ${r} ${t.pos}`);let o=[],l=t.pos+(s+1)*r-1,c=n.decode(t);for(let f=0;f<s;f++){let u=n.decode(t);if(this.type!=null){let h=t.pos;t.pos=l+c,i.length=u-c,o.push(this.type.decode(t,i)),t.pos=h}else o.push({offset:l+c,length:u-c});c=u}return t.pos=l+c,o}size(t,i){let a=2;if(t.length===0)return a;let s=this.type||new ui,r=1;for(let o=0;o<t.length;o++){let l=t[o];r+=s.size(l,i)}let n;if(r<=255)n=ee;else if(r<=65535)n=d;else if(r<=16777215)n=Zi;else if(r<=4294967295)n=V;else throw new Error("Bad offset in CFFIndex");return a+=1+n.size()*(t.length+1),a+=r-1,a}encode(t,i,a){if(t.writeUInt16BE(i.length),i.length===0)return;let s=this.type||new ui,r=[],n=1;for(let l of i){let c=s.size(l,a);r.push(c),n+=c}let o;if(n<=255)o=ee;else if(n<=65535)o=d;else if(n<=16777215)o=Zi;else if(n<=4294967295)o=V;else throw new Error("Bad offset in CFFIndex");t.writeUInt8(o.size()),n=1,o.encode(t,n);for(let l of r)n+=l,o.encode(t,n);for(let l of i)s.encode(t,l,a)}constructor(t){this.type=t}}const Ns=15,qu=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"],Ju={".":10,E:11,"E-":12,"-":14};class Ho{static decode(t,i){if(32<=i&&i<=246)return i-139;if(247<=i&&i<=250)return(i-247)*256+t.readUInt8()+108;if(251<=i&&i<=254)return-(i-251)*256-t.readUInt8()-108;if(i===28)return t.readInt16BE();if(i===29)return t.readInt32BE();if(i===30){let a="";for(;;){let s=t.readUInt8(),r=s>>4;if(r===Ns)break;a+=qu[r];let n=s&15;if(n===Ns)break;a+=qu[n]}return parseFloat(a)}return null}static size(t){if(t.forceLarge&&(t=32768),(t|0)!==t){let i=""+t;return 1+Math.ceil((i.length+1)/2)}else return-107<=t&&t<=107?1:108<=t&&t<=1131||-1131<=t&&t<=-108?2:-32768<=t&&t<=32767?3:5}static encode(t,i){let a=Number(i);if(i.forceLarge)return t.writeUInt8(29),t.writeInt32BE(a);if((a|0)!==a){t.writeUInt8(30);let r=""+a;for(let n=0;n<r.length;n+=2){let o=r[n],l=Ju[o]||+o;if(n===r.length-1)var s=Ns;else{let c=r[n+1];var s=Ju[c]||+c}t.writeUInt8(l<<4|s&15)}if(s!==Ns)return t.writeUInt8(Ns<<4)}else return-107<=a&&a<=107?t.writeUInt8(a+139):108<=a&&a<=1131?(a-=108,t.writeUInt8((a>>8)+247),t.writeUInt8(a&255)):-1131<=a&&a<=-108?(a=-a-108,t.writeUInt8((a>>8)+251),t.writeUInt8(a&255)):-32768<=a&&a<=32767?(t.writeUInt8(28),t.writeInt16BE(a)):(t.writeUInt8(29),t.writeInt32BE(a))}}class Ur{decodeOperands(t,i,a,s){if(Array.isArray(t))return s.map((r,n)=>this.decodeOperands(t[n],i,a,[r]));if(t.decode!=null)return t.decode(i,a,s);switch(t){case"number":case"offset":case"sid":return s[0];case"boolean":return!!s[0];default:return s}}encodeOperands(t,i,a,s){return Array.isArray(t)?s.map((r,n)=>this.encodeOperands(t[n],i,a,r)[0]):t.encode!=null?t.encode(i,s,a):typeof s=="number"?[s]:typeof s=="boolean"?[+s]:Array.isArray(s)?s:[s]}decode(t,i){let a=t.pos+i.length,s={},r=[];Object.defineProperties(s,{parent:{value:i},_startOffset:{value:t.pos}});for(let n in this.fields){let o=this.fields[n];s[o[1]]=o[3]}for(;t.pos<a;){let n=t.readUInt8();if(n<28){n===12&&(n=n<<8|t.readUInt8());let o=this.fields[n];if(!o)throw new Error(`Unknown operator ${n}`);let l=this.decodeOperands(o[2],t,s,r);l!=null&&(l instanceof wo?Object.defineProperty(s,o[1],l):s[o[1]]=l),r=[]}else r.push(Ho.decode(t,n))}return s}size(t,i,a=!0){let s={parent:i,val:t,pointerSize:0,startOffset:i.startOffset||0},r=0;for(let n in this.fields){let o=this.fields[n],l=t[o[1]];if(l==null||du(l,o[3]))continue;let c=this.encodeOperands(o[2],null,s,l);for(let u of c)r+=Ho.size(u);let f=Array.isArray(o[0])?o[0]:[o[0]];r+=f.length}return a&&(r+=s.pointerSize),r}encode(t,i,a){let s={pointers:[],startOffset:t.pos,parent:a,val:i,pointerSize:0};s.pointerOffset=t.pos+this.size(i,s,!1);for(let n of this.ops){let o=i[n[1]];if(o==null||du(o,n[3]))continue;let l=this.encodeOperands(n[2],t,s,o);for(let f of l)Ho.encode(t,f);let c=Array.isArray(n[0])?n[0]:[n[0]];for(let f of c)t.writeUInt8(f)}let r=0;for(;r<s.pointers.length;){let n=s.pointers[r++];n.type.encode(t,n.val,n.parent)}}constructor(t=[]){this.ops=t,this.fields={};for(let i of t){let a=Array.isArray(i[0])?i[0][0]<<8|i[0][1]:i[0];this.fields[a]=i}}}class si extends S{decode(t,i,a){return this.offsetType={decode:()=>a[0]},super.decode(t,i,a)}encode(t,i,a){if(!t)return this.offsetType={size:()=>0},this.size(i,a),[new Qu(0)];let s=null;return this.offsetType={encode:(r,n)=>s=n},super.encode(t,i,a),[new Qu(s)]}constructor(t,i={}){i.type==null&&(i.type="global"),super(null,t,i)}}class Qu{valueOf(){return this.val}constructor(t){this.val=t,this.forceLarge=!0}}class GC{static decode(t,i,a){let s=a.pop();for(;a.length>s;)a.pop()}}var Xo=new Ur([[6,"BlueValues","delta",null],[7,"OtherBlues","delta",null],[8,"FamilyBlues","delta",null],[9,"FamilyOtherBlues","delta",null],[[12,9],"BlueScale","number",.039625],[[12,10],"BlueShift","number",7],[[12,11],"BlueFuzz","number",1],[10,"StdHW","number",null],[11,"StdVW","number",null],[[12,12],"StemSnapH","delta",null],[[12,13],"StemSnapV","delta",null],[[12,14],"ForceBold","boolean",!1],[[12,17],"LanguageGroup","number",0],[[12,18],"ExpansionFactor","number",.06],[[12,19],"initialRandomSeed","number",0],[20,"defaultWidthX","number",0],[21,"nominalWidthX","number",0],[22,"vsindex","number",0],[23,"blend",GC,null],[19,"Subrs",new si(new gi,{type:"local"}),null]]),Zr=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"];let $u=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls"],WC=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],e0=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron"],jC=[".notdef","space","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],YC=[".notdef","space","dollaroldstyle","dollarsuperior","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","hyphensuperior","colonmonetary","onefitted","rupiah","centoldstyle","figuredash","hypheninferior","onequarter","onehalf","threequarters","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior"],t0=new E({reserved:new st(d),reqFeatureIndex:d,featureCount:d,featureIndexes:new A(d,"featureCount")}),HC=new E({tag:new We(4),langSys:new S(d,t0,{type:"parent"})}),XC=new E({defaultLangSys:new S(d,t0),count:d,langSysRecords:new A(HC,"count")}),KC=new E({tag:new We(4),script:new S(d,XC,{type:"parent"})}),i0=new A(KC,d),qC=new E({version:d,nameID:d}),a0=new E({featureParams:new S(d,qC),lookupCount:d,lookupListIndexes:new A(d,"lookupCount")}),JC=new E({tag:new We(4),feature:new S(d,a0,{type:"parent"})}),s0=new A(JC,d),QC=new E({markAttachmentType:ee,flags:new ai(ee,["rightToLeft","ignoreBaseGlyphs","ignoreLigatures","ignoreMarks","useMarkFilteringSet"])});function Gr(e){let t=new E({lookupType:d,flags:QC,subTableCount:d,subTables:new A(new S(d,e),"subTableCount"),markFilteringSet:new Fr(d,i=>i.flags.flags.useMarkFilteringSet)});return new Xe(new S(d,t),d)}let $C=new E({start:d,end:d,startCoverageIndex:d}),je=new Ie(d,{1:{glyphCount:d,glyphs:new A(d,"glyphCount")},2:{rangeCount:d,rangeRecords:new A($C,"rangeCount")}}),eS=new E({start:d,end:d,class:d}),ji=new Ie(d,{1:{startGlyph:d,glyphCount:d,classValueArray:new A(d,"glyphCount")},2:{classRangeCount:d,classRangeRecord:new A(eS,"classRangeCount")}}),Yi=new E({a:d,b:d,deltaFormat:d}),As=new E({sequenceIndex:d,lookupListIndex:d}),tS=new E({glyphCount:d,lookupCount:d,input:new A(d,e=>e.glyphCount-1),lookupRecords:new A(As,"lookupCount")}),iS=new A(new S(d,tS),d),aS=new E({glyphCount:d,lookupCount:d,classes:new A(d,e=>e.glyphCount-1),lookupRecords:new A(As,"lookupCount")}),sS=new A(new S(d,aS),d),r0=new Ie(d,{1:{coverage:new S(d,je),ruleSetCount:d,ruleSets:new A(new S(d,iS),"ruleSetCount")},2:{coverage:new S(d,je),classDef:new S(d,ji),classSetCnt:d,classSet:new A(new S(d,sS),"classSetCnt")},3:{glyphCount:d,lookupCount:d,coverages:new A(new S(d,je),"glyphCount"),lookupRecords:new A(As,"lookupCount")}}),rS=new E({backtrackGlyphCount:d,backtrack:new A(d,"backtrackGlyphCount"),inputGlyphCount:d,input:new A(d,e=>e.inputGlyphCount-1),lookaheadGlyphCount:d,lookahead:new A(d,"lookaheadGlyphCount"),lookupCount:d,lookupRecords:new A(As,"lookupCount")}),n0=new A(new S(d,rS),d),o0=new Ie(d,{1:{coverage:new S(d,je),chainCount:d,chainRuleSets:new A(new S(d,n0),"chainCount")},2:{coverage:new S(d,je),backtrackClassDef:new S(d,ji),inputClassDef:new S(d,ji),lookaheadClassDef:new S(d,ji),chainCount:d,chainClassSet:new A(new S(d,n0),"chainCount")},3:{backtrackGlyphCount:d,backtrackCoverage:new A(new S(d,je),"backtrackGlyphCount"),inputGlyphCount:d,inputCoverage:new A(new S(d,je),"inputGlyphCount"),lookaheadGlyphCount:d,lookaheadCoverage:new A(new S(d,je),"lookaheadGlyphCount"),lookupCount:d,lookupRecords:new A(As,"lookupCount")}}),Cs=new la(16,"BE",14),nS=new E({startCoord:Cs,peakCoord:Cs,endCoord:Cs}),oS=new E({axisCount:d,regionCount:d,variationRegions:new A(new A(nS,"axisCount"),"regionCount")}),lS=new E({shortDeltas:new A(H,e=>e.parent.shortDeltaCount),regionDeltas:new A(Ct,e=>e.parent.regionIndexCount-e.parent.shortDeltaCount),deltas:e=>e.shortDeltas.concat(e.regionDeltas)}),cS=new E({itemCount:d,shortDeltaCount:d,regionIndexCount:d,regionIndexes:new A(d,"regionIndexCount"),deltaSets:new A(lS,"itemCount")}),Wr=new E({format:d,variationRegionList:new S(V,oS),variationDataCount:d,itemVariationData:new A(new S(V,cS),"variationDataCount")}),fS=new Ie(d,{1:{axisIndex:d,axisIndex:d,filterRangeMinValue:Cs,filterRangeMaxValue:Cs}}),uS=new E({conditionCount:d,conditionTable:new A(new S(V,fS),"conditionCount")}),dS=new E({featureIndex:d,alternateFeatureTable:new S(V,a0,{type:"parent"})}),hS=new E({version:bt,substitutionCount:d,substitutions:new A(dS,"substitutionCount")}),pS=new E({conditionSet:new S(V,uS,{type:"parent"}),featureTableSubstitution:new S(V,hS,{type:"parent"})}),l0=new E({majorVersion:d,minorVersion:d,featureVariationRecordCount:V,featureVariationRecords:new A(pS,"featureVariationRecordCount")});class c0{decode(t,i,a){return this.predefinedOps[a[0]]?this.predefinedOps[a[0]]:this.type.decode(t,i,a)}size(t,i){return this.type.size(t,i)}encode(t,i,a){let s=this.predefinedOps.indexOf(i);return s!==-1?s:this.type.encode(t,i,a)}constructor(t,i){this.predefinedOps=t,this.type=i}}class gS extends Be{decode(t){return ee.decode(t)&127}constructor(){super("UInt8")}}let f0=new E({first:d,nLeft:ee}),mS=new E({first:d,nLeft:d}),yS=new Ie(new gS,{0:{nCodes:ee,codes:new A(ee,"nCodes")},1:{nRanges:ee,ranges:new A(f0,"nRanges")}}),bS=new c0([$u,WC],new si(yS,{lazy:!0}));class u0 extends A{decode(t,i){let a=fi(this.length,t,i),s=0,r=[];for(;s<a;){let n=this.type.decode(t,i);n.offset=s,s+=n.nLeft+1,r.push(n)}return r}}let wS=new Ie(ee,{0:{glyphs:new A(d,e=>e.parent.CharStrings.length-1)},1:{ranges:new u0(f0,e=>e.parent.CharStrings.length-1)},2:{ranges:new u0(mS,e=>e.parent.CharStrings.length-1)}}),vS=new c0([e0,jC,YC],new si(wS,{lazy:!0})),xS=new E({first:d,fd:ee}),kS=new E({first:V,fd:d}),d0=new Ie(ee,{0:{fds:new A(ee,e=>e.parent.CharStrings.length)},3:{nRanges:d,ranges:new A(xS,"nRanges"),sentinel:d},4:{nRanges:V,ranges:new A(kS,"nRanges"),sentinel:V}}),Ko=new si(Xo);class h0{decode(t,i,a){return i.length=a[0],Ko.decode(t,i,[a[1]])}size(t,i){return[Xo.size(t,i,!1),Ko.size(t,i)[0]]}encode(t,i,a){return[Xo.size(i,a,!1),Ko.encode(t,i,a)[0]]}}let p0=new Ur([[18,"Private",new h0,null],[[12,38],"FontName","sid",null],[[12,7],"FontMatrix","array",[.001,0,0,.001,0,0]],[[12,5],"PaintType","number",0]]),NS=new Ur([[[12,30],"ROS",["sid","sid","number"],null],[0,"version","sid",null],[1,"Notice","sid",null],[[12,0],"Copyright","sid",null],[2,"FullName","sid",null],[3,"FamilyName","sid",null],[4,"Weight","sid",null],[[12,1],"isFixedPitch","boolean",!1],[[12,2],"ItalicAngle","number",0],[[12,3],"UnderlinePosition","number",-100],[[12,4],"UnderlineThickness","number",50],[[12,5],"PaintType","number",0],[[12,6],"CharstringType","number",2],[[12,7],"FontMatrix","array",[.001,0,0,.001,0,0]],[13,"UniqueID","number",null],[5,"FontBBox","array",[0,0,0,0]],[[12,8],"StrokeWidth","number",0],[14,"XUID","array",null],[15,"charset",vS,e0],[16,"Encoding",bS,$u],[17,"CharStrings",new si(new gi),null],[18,"Private",new h0,null],[[12,20],"SyntheticBase","number",null],[[12,21],"PostScript","sid",null],[[12,22],"BaseFontName","sid",null],[[12,23],"BaseFontBlend","delta",null],[[12,31],"CIDFontVersion","number",0],[[12,32],"CIDFontRevision","number",0],[[12,33],"CIDFontType","number",0],[[12,34],"CIDCount","number",8720],[[12,35],"UIDBase","number",null],[[12,37],"FDSelect",new si(d0),null],[[12,36],"FDArray",new si(new gi(p0)),null],[[12,38],"FontName","sid",null]]),AS=new E({length:d,itemVariationStore:Wr}),CS=new Ur([[[12,7],"FontMatrix","array",[.001,0,0,.001,0,0]],[17,"CharStrings",new si(new gi),null],[[12,37],"FDSelect",new si(d0),null],[[12,36],"FDArray",new si(new gi(p0)),null],[24,"vstore",new si(AS),null],[25,"maxstack","number",193]]);var g0=new Ie(gA,{1:{hdrSize:ee,offSize:ee,nameIndex:new gi(new We("length")),topDictIndex:new gi(NS),stringIndex:new gi(new We("length")),globalSubrIndex:new gi},2:{hdrSize:ee,length:d,topDict:CS,globalSubrIndex:new gi}});class qo{static decode(t){return new qo(t)}decode(){this.stream.pos;let t=g0.decode(this.stream);for(let i in t){let a=t[i];this[i]=a}if(this.version<2){if(this.topDictIndex.length!==1)throw new Error("Only a single font is allowed in CFF");this.topDict=this.topDictIndex[0]}return this.isCIDFont=this.topDict.ROS!=null,this}string(t){return this.version>=2?null:t<Zr.length?Zr[t]:this.stringIndex[t-Zr.length]}get postscriptName(){return this.version<2?this.nameIndex[0]:null}get fullName(){return this.string(this.topDict.FullName)}get familyName(){return this.string(this.topDict.FamilyName)}getCharString(t){return this.stream.pos=this.topDict.CharStrings[t].offset,this.stream.readBuffer(this.topDict.CharStrings[t].length)}getGlyphName(t){if(this.version>=2||this.isCIDFont)return null;let{charset:i}=this.topDict;if(Array.isArray(i))return i[t];if(t===0)return".notdef";switch(t-=1,i.version){case 0:return this.string(i.glyphs[t]);case 1:case 2:for(let a=0;a<i.ranges.length;a++){let s=i.ranges[a];if(s.offset<=t&&t<=s.offset+s.nLeft)return this.string(s.first+(t-s.offset))}break}return null}fdForGlyph(t){if(!this.topDict.FDSelect)return null;switch(this.topDict.FDSelect.version){case 0:return this.topDict.FDSelect.fds[t];case 3:case 4:let{ranges:i}=this.topDict.FDSelect,a=0,s=i.length-1;for(;a<=s;){let r=a+s>>1;if(t<i[r].first)s=r-1;else if(r<s&&t>=i[r+1].first)a=r+1;else return i[r].fd}default:throw new Error(`Unknown FDSelect version: ${this.topDict.FDSelect.version}`)}}privateDictForGlyph(t){if(this.topDict.FDSelect){let i=this.fdForGlyph(t);return this.topDict.FDArray[i]?this.topDict.FDArray[i].Private:null}return this.version<2?this.topDict.Private:this.topDict.FDArray[0].Private}constructor(t){this.stream=t,this.decode()}}var m0=qo;let SS=new E({glyphIndex:d,vertOriginY:H});var VS=new E({majorVersion:d,minorVersion:d,defaultVertOriginY:H,numVertOriginYMetrics:d,metrics:new A(SS,"numVertOriginYMetrics")});let Wa=new E({height:ee,width:ee,horiBearingX:Ct,horiBearingY:Ct,horiAdvance:ee,vertBearingX:Ct,vertBearingY:Ct,vertAdvance:ee}),jr=new E({height:ee,width:ee,bearingX:Ct,bearingY:Ct,advance:ee}),y0=new E({glyph:d,xOffset:Ct,yOffset:Ct});class b0{}class Jo{}new Ie("version",{1:{metrics:jr,data:b0},2:{metrics:jr,data:Jo},5:{data:Jo},6:{metrics:Wa,data:b0},7:{metrics:Wa,data:Jo},8:{metrics:jr,pad:new st(ee),numComponents:d,components:new A(y0,"numComponents")},9:{metrics:Wa,pad:new st(ee),numComponents:d,components:new A(y0,"numComponents")},17:{metrics:jr,dataLen:V,data:new ui("dataLen")},18:{metrics:Wa,dataLen:V,data:new ui("dataLen")},19:{dataLen:V,data:new ui("dataLen")}});let w0=new E({ascender:Ct,descender:Ct,widthMax:ee,caretSlopeNumerator:Ct,caretSlopeDenominator:Ct,caretOffset:Ct,minOriginSB:Ct,minAdvanceSB:Ct,maxBeforeBL:Ct,minAfterBL:Ct,pad:new st(Ct,2)}),_S=new E({glyphCode:d,offset:d}),IS=new Ie(d,{header:{imageFormat:d,imageDataOffset:V},1:{offsetArray:new A(V,e=>e.parent.lastGlyphIndex-e.parent.firstGlyphIndex+1)},2:{imageSize:V,bigMetrics:Wa},3:{offsetArray:new A(d,e=>e.parent.lastGlyphIndex-e.parent.firstGlyphIndex+1)},4:{numGlyphs:V,glyphArray:new A(_S,e=>e.numGlyphs+1)},5:{imageSize:V,bigMetrics:Wa,numGlyphs:V,glyphCodeArray:new A(d,"numGlyphs")}}),TS=new E({firstGlyphIndex:d,lastGlyphIndex:d,subtable:new S(V,IS)}),FS=new E({indexSubTableArray:new S(V,new A(TS,1),{type:"parent"}),indexTablesSize:V,numberOfIndexSubTables:V,colorRef:V,hori:w0,vert:w0,startGlyphIndex:d,endGlyphIndex:d,ppemX:ee,ppemY:ee,bitDepth:ee,flags:new ai(ee,["horizontal","vertical"])});var PS=new E({version:V,numSizes:V,sizes:new A(FS,"numSizes")});let ES=new E({ppem:d,resolution:d,imageOffsets:new A(new S(V,"void"),e=>e.parent.parent.maxp.numGlyphs+1)});var OS=new E({version:d,flags:new ai(d,["renderOutlines"]),numImgTables:V,imageTables:new A(new S(V,ES),"numImgTables")});let MS=new E({gid:d,paletteIndex:d}),RS=new E({gid:d,firstLayerIndex:d,numLayers:d});var DS=new E({version:d,numBaseGlyphRecords:d,baseGlyphRecord:new S(V,new A(RS,"numBaseGlyphRecords")),layerRecords:new S(V,new A(MS,"numLayerRecords"),{lazy:!0}),numLayerRecords:d});let zS=new E({blue:ee,green:ee,red:ee,alpha:ee});var LS=new Ie(d,{header:{numPaletteEntries:d,numPalettes:d,numColorRecords:d,colorRecords:new S(V,new A(zS,"numColorRecords")),colorRecordIndices:new A(d,"numPalettes")},0:{},1:{offsetPaletteTypeArray:new S(V,new A(V,"numPalettes")),offsetPaletteLabelArray:new S(V,new A(d,"numPalettes")),offsetPaletteEntryLabelArray:new S(V,new A(d,"numPaletteEntries"))}});let Ss=new Ie(d,{1:{coordinate:H},2:{coordinate:H,referenceGlyph:d,baseCoordPoint:d},3:{coordinate:H,deviceTable:new S(d,Yi)}}),BS=new E({defaultIndex:d,baseCoordCount:d,baseCoords:new A(new S(d,Ss),"baseCoordCount")}),US=new E({tag:new We(4),minCoord:new S(d,Ss,{type:"parent"}),maxCoord:new S(d,Ss,{type:"parent"})}),v0=new E({minCoord:new S(d,Ss),maxCoord:new S(d,Ss),featMinMaxCount:d,featMinMaxRecords:new A(US,"featMinMaxCount")}),ZS=new E({tag:new We(4),minMax:new S(d,v0,{type:"parent"})}),GS=new E({baseValues:new S(d,BS),defaultMinMax:new S(d,v0),baseLangSysCount:d,baseLangSysRecords:new A(ZS,"baseLangSysCount")}),WS=new E({tag:new We(4),script:new S(d,GS,{type:"parent"})}),jS=new A(WS,d),YS=new A(new We(4),d),x0=new E({baseTagList:new S(d,YS),baseScriptList:new S(d,jS)});var HS=new Ie(V,{header:{horizAxis:new S(d,x0),vertAxis:new S(d,x0)},65536:{},65537:{itemVariationStore:new S(V,Wr)}});let XS=new A(d,d),KS=new E({coverage:new S(d,je),glyphCount:d,attachPoints:new A(new S(d,XS),"glyphCount")}),qS=new Ie(d,{1:{coordinate:H},2:{caretValuePoint:d},3:{coordinate:H,deviceTable:new S(d,Yi)}}),JS=new A(new S(d,qS),d),QS=new E({coverage:new S(d,je),ligGlyphCount:d,ligGlyphs:new A(new S(d,JS),"ligGlyphCount")}),k0=new E({markSetTableFormat:d,markSetCount:d,coverage:new A(new S(V,je),"markSetCount")});var $S=new Ie(V,{header:{glyphClassDef:new S(d,ji),attachList:new S(d,KS),ligCaretList:new S(d,QS),markAttachClassDef:new S(d,ji)},65536:{},65538:{markGlyphSetsDef:new S(d,k0)},65539:{markGlyphSetsDef:new S(d,k0),itemVariationStore:new S(V,Wr)}});let ja=new ai(d,["xPlacement","yPlacement","xAdvance","yAdvance","xPlaDevice","yPlaDevice","xAdvDevice","yAdvDevice"]),e5={xPlacement:H,yPlacement:H,xAdvance:H,yAdvance:H,xPlaDevice:new S(d,Yi,{type:"global",relativeTo:e=>e.rel}),yPlaDevice:new S(d,Yi,{type:"global",relativeTo:e=>e.rel}),xAdvDevice:new S(d,Yi,{type:"global",relativeTo:e=>e.rel}),yAdvDevice:new S(d,Yi,{type:"global",relativeTo:e=>e.rel})};class Ya{buildStruct(t){let i=t;for(;!i[this.key]&&i.parent;)i=i.parent;if(!i[this.key])return;let a={};a.rel=()=>i._startOffset;let s=i[this.key];for(let r in s)s[r]&&(a[r]=e5[r]);return new E(a)}size(t,i){return this.buildStruct(i).size(t,i)}decode(t,i){let a=this.buildStruct(i).decode(t,i);return delete a.rel,a}constructor(t="valueFormat"){this.key=t}}let t5=new E({secondGlyph:d,value1:new Ya("valueFormat1"),value2:new Ya("valueFormat2")}),i5=new A(t5,d),a5=new E({value1:new Ya("valueFormat1"),value2:new Ya("valueFormat2")}),Vs=new Ie(d,{1:{xCoordinate:H,yCoordinate:H},2:{xCoordinate:H,yCoordinate:H,anchorPoint:d},3:{xCoordinate:H,yCoordinate:H,xDeviceTable:new S(d,Yi),yDeviceTable:new S(d,Yi)}}),s5=new E({entryAnchor:new S(d,Vs,{type:"parent"}),exitAnchor:new S(d,Vs,{type:"parent"})}),r5=new E({class:d,markAnchor:new S(d,Vs,{type:"parent"})}),Qo=new A(r5,d),n5=new A(new S(d,Vs),e=>e.parent.classCount),N0=new A(n5,d),o5=new A(new S(d,Vs),e=>e.parent.parent.classCount),l5=new A(o5,d),c5=new A(new S(d,l5),d),_s=new Ie("lookupType",{1:new Ie(d,{1:{coverage:new S(d,je),valueFormat:ja,value:new Ya},2:{coverage:new S(d,je),valueFormat:ja,valueCount:d,values:new Xe(new Ya,"valueCount")}}),2:new Ie(d,{1:{coverage:new S(d,je),valueFormat1:ja,valueFormat2:ja,pairSetCount:d,pairSets:new Xe(new S(d,i5),"pairSetCount")},2:{coverage:new S(d,je),valueFormat1:ja,valueFormat2:ja,classDef1:new S(d,ji),classDef2:new S(d,ji),class1Count:d,class2Count:d,classRecords:new Xe(new Xe(a5,"class2Count"),"class1Count")}}),3:{format:d,coverage:new S(d,je),entryExitCount:d,entryExitRecords:new A(s5,"entryExitCount")},4:{format:d,markCoverage:new S(d,je),baseCoverage:new S(d,je),classCount:d,markArray:new S(d,Qo),baseArray:new S(d,N0)},5:{format:d,markCoverage:new S(d,je),ligatureCoverage:new S(d,je),classCount:d,markArray:new S(d,Qo),ligatureArray:new S(d,c5)},6:{format:d,mark1Coverage:new S(d,je),mark2Coverage:new S(d,je),classCount:d,mark1Array:new S(d,Qo),mark2Array:new S(d,N0)},7:r0,8:o0,9:{posFormat:d,lookupType:d,extension:new S(V,null)}});_s.versions[9].extension.type=_s;var f5=new Ie(V,{header:{scriptList:new S(d,i0),featureList:new S(d,s0),lookupList:new S(d,new Gr(_s))},65536:{},65537:{featureVariations:new S(V,l0)}});let A0=new A(d,d),u5=A0,d5=new E({glyph:d,compCount:d,components:new A(d,e=>e.compCount-1)}),h5=new A(new S(d,d5),d),$o=new Ie("lookupType",{1:new Ie(d,{1:{coverage:new S(d,je),deltaGlyphID:H},2:{coverage:new S(d,je),glyphCount:d,substitute:new Xe(d,"glyphCount")}}),2:{substFormat:d,coverage:new S(d,je),count:d,sequences:new Xe(new S(d,A0),"count")},3:{substFormat:d,coverage:new S(d,je),count:d,alternateSet:new Xe(new S(d,u5),"count")},4:{substFormat:d,coverage:new S(d,je),count:d,ligatureSets:new Xe(new S(d,h5),"count")},5:r0,6:o0,7:{substFormat:d,lookupType:d,extension:new S(V,null)},8:{substFormat:d,coverage:new S(d,je),backtrackCoverage:new A(new S(d,je),"backtrackGlyphCount"),lookaheadGlyphCount:d,lookaheadCoverage:new A(new S(d,je),"lookaheadGlyphCount"),glyphCount:d,substitutes:new A(d,"glyphCount")}});$o.versions[7].extension.type=$o;var p5=new Ie(V,{header:{scriptList:new S(d,i0),featureList:new S(d,s0),lookupList:new S(d,new Gr($o))},65536:{},65537:{featureVariations:new S(V,l0)}});let Hi=new A(d,d),g5=new E({shrinkageEnableGSUB:new S(d,Hi),shrinkageDisableGSUB:new S(d,Hi),shrinkageEnableGPOS:new S(d,Hi),shrinkageDisableGPOS:new S(d,Hi),shrinkageJstfMax:new S(d,new Gr(_s)),extensionEnableGSUB:new S(d,Hi),extensionDisableGSUB:new S(d,Hi),extensionEnableGPOS:new S(d,Hi),extensionDisableGPOS:new S(d,Hi),extensionJstfMax:new S(d,new Gr(_s))}),C0=new A(new S(d,g5),d),m5=new E({tag:new We(4),jstfLangSys:new S(d,C0)}),y5=new E({extenderGlyphs:new S(d,new A(d,d)),defaultLangSys:new S(d,C0),langSysCount:d,langSysRecords:new A(m5,"langSysCount")}),b5=new E({tag:new We(4),script:new S(d,y5,{type:"parent"})});var w5=new E({version:V,scriptCount:d,scriptList:new A(b5,"scriptCount")});class v5{decode(t,i){switch(this.size(0,i)){case 1:return t.readUInt8();case 2:return t.readUInt16BE();case 3:return t.readUInt24BE();case 4:return t.readUInt32BE()}}size(t,i){return fi(this._size,null,i)}constructor(t){this._size=t}}let x5=new E({entry:new v5(e=>((e.parent.entryFormat&48)>>4)+1),outerIndex:e=>e.entry>>(e.parent.entryFormat&15)+1,innerIndex:e=>e.entry&(1<<(e.parent.entryFormat&15)+1)-1}),el=new E({entryFormat:d,mapCount:d,mapData:new A(x5,"mapCount")});var k5=new E({majorVersion:d,minorVersion:d,itemVariationStore:new S(V,Wr),advanceWidthMapping:new S(V,el),LSBMapping:new S(V,el),RSBMapping:new S(V,el)});let N5=new E({format:V,length:V,offset:V}),A5=new E({reserved:new st(d,2),cbSignature:V,signature:new ui("cbSignature")});var C5=new E({ulVersion:V,usNumSigs:d,usFlag:d,signatures:new A(N5,"usNumSigs"),signatureBlocks:new A(A5,"usNumSigs")});let S5=new E({rangeMaxPPEM:d,rangeGaspBehavior:new ai(d,["grayscale","gridfit","symmetricSmoothing","symmetricGridfit"])});var V5=new E({version:d,numRanges:d,gaspRanges:new A(S5,"numRanges")});let _5=new E({pixelSize:ee,maximumWidth:ee,widths:new A(ee,e=>e.parent.parent.maxp.numGlyphs)});var I5=new E({version:d,numRecords:H,sizeDeviceRecord:oa,records:new A(_5,"numRecords")});let T5=new E({left:d,right:d,value:H}),S0=new E({firstGlyph:d,nGlyphs:d,offsets:new A(d,"nGlyphs"),max:e=>e.offsets.length&&Math.max.apply(Math,e.offsets)}),F5=new E({off:e=>e._startOffset-e.parent.parent._startOffset,len:e=>((e.parent.leftTable.max-e.off)/e.parent.rowWidth+1)*(e.parent.rowWidth/2),values:new Xe(H,"len")}),V0=new Ie("format",{0:{nPairs:d,searchRange:d,entrySelector:d,rangeShift:d,pairs:new A(T5,"nPairs")},2:{rowWidth:d,leftTable:new S(d,S0,{type:"parent"}),rightTable:new S(d,S0,{type:"parent"}),array:new S(d,F5,{type:"parent"})},3:{glyphCount:d,kernValueCount:ee,leftClassCount:ee,rightClassCount:ee,flags:ee,kernValue:new A(H,"kernValueCount"),leftClass:new A(ee,"glyphCount"),rightClass:new A(ee,"glyphCount"),kernIndex:new A(ee,e=>e.leftClassCount*e.rightClassCount)}}),_0=new Ie("version",{0:{subVersion:d,length:d,format:ee,coverage:new ai(ee,["horizontal","minimum","crossStream","override"]),subtable:V0,padding:new st(ee,e=>e.length-e._currentOffset)},1:{length:V,coverage:new ai(ee,[null,null,null,null,null,"variation","crossStream","vertical"]),format:ee,tupleIndex:d,subtable:V0,padding:new st(ee,e=>e.length-e._currentOffset)}});var P5=new Ie(d,{0:{nTables:d,tables:new A(_0,"nTables")},1:{reserved:new st(d),nTables:V,tables:new A(_0,"nTables")}}),E5=new E({version:d,numGlyphs:d,yPels:new A(ee,"numGlyphs")}),O5=new E({version:d,fontNumber:V,pitch:d,xHeight:d,style:d,typeFamily:d,capHeight:d,symbolSet:d,typeface:new We(16),characterComplement:new We(8),fileName:new We(6),strokeWeight:new We(1),widthType:new We(1),serifStyle:ee,reserved:new st(ee)});let M5=new E({bCharSet:ee,xRatio:ee,yStartRatio:ee,yEndRatio:ee}),R5=new E({yPelHeight:d,yMax:H,yMin:H}),D5=new E({recs:d,startsz:ee,endsz:ee,entries:new A(R5,"recs")});var z5=new E({version:d,numRecs:d,numRatios:d,ratioRanges:new A(M5,"numRatios"),offsets:new A(d,"numRatios"),groups:new A(D5,"numRecs")}),L5=new E({version:d,ascent:H,descent:H,lineGap:H,advanceHeightMax:H,minTopSideBearing:H,minBottomSideBearing:H,yMaxExtent:H,caretSlopeRise:H,caretSlopeRun:H,caretOffset:H,reserved:new st(H,4),metricDataFormat:H,numberOfMetrics:d});let B5=new E({advance:d,bearing:H});var U5=new E({metrics:new Xe(B5,e=>e.parent.vhea.numberOfMetrics),bearings:new Xe(H,e=>e.parent.maxp.numGlyphs-e.parent.vhea.numberOfMetrics)});let I0=new la(16,"BE",14),Z5=new E({fromCoord:I0,toCoord:I0}),G5=new E({pairCount:d,correspondence:new A(Z5,"pairCount")});var W5=new E({version:bt,axisCount:V,segment:new A(G5,"axisCount")});class j5{getItem(t){if(this._items[t]==null){let i=this.stream.pos;this.stream.pos=this.base+this.type.size(null,this.parent)*t,this._items[t]=this.type.decode(this.stream,this.parent),this.stream.pos=i}return this._items[t]}inspect(){return`[UnboundedArray ${this.type.constructor.name}]`}constructor(t,i,a){this.type=t,this.stream=i,this.parent=a,this.base=this.stream.pos,this._items=[]}}class mi extends A{decode(t,i){return new j5(this.type,t,i)}constructor(t){super(t,0)}}let Xi=function(e=d){class t{decode(o,l){return l=l.parent.parent,this.type.decode(o,l)}size(o,l){return l=l.parent.parent,this.type.size(o,l)}encode(o,l,c){return c=c.parent.parent,this.type.encode(o,l,c)}constructor(o){this.type=o}}e=new t(e);let i=new E({unitSize:d,nUnits:d,searchRange:d,entrySelector:d,rangeShift:d}),a=new E({lastGlyph:d,firstGlyph:d,value:e}),s=new E({lastGlyph:d,firstGlyph:d,values:new S(d,new A(e,n=>n.lastGlyph-n.firstGlyph+1),{type:"parent"})}),r=new E({glyph:d,value:e});return new Ie(d,{0:{values:new mi(e)},2:{binarySearchHeader:i,segments:new A(a,n=>n.binarySearchHeader.nUnits)},4:{binarySearchHeader:i,segments:new A(s,n=>n.binarySearchHeader.nUnits)},6:{binarySearchHeader:i,segments:new A(r,n=>n.binarySearchHeader.nUnits)},8:{firstGlyph:d,count:d,values:new A(e,"count")}})};function Yr(e={},t=d){let i=Object.assign({newState:d,flags:d},e),a=new E(i),s=new mi(new A(d,n=>n.nClasses));return new E({nClasses:V,classTable:new S(V,new Xi(t)),stateArray:new S(V,s),entryTable:new S(V,new mi(a))})}function Y5(e={},t=d){let i=new E({version(){return 8},firstGlyph:d,values:new A(ee,d)}),a=Object.assign({newStateOffset:d,newState:o=>(o.newStateOffset-(o.parent.stateArray.base-o.parent._startOffset))/o.parent.nClasses,flags:d},e),s=new E(a),r=new mi(new A(ee,o=>o.nClasses));return new E({nClasses:d,classTable:new S(d,i),stateArray:new S(d,r),entryTable:new S(d,new mi(s))})}let H5=new Ie("format",{0:{deltas:new A(H,32)},1:{deltas:new A(H,32),mappingData:new Xi(d)},2:{standardGlyph:d,controlPoints:new A(d,32)},3:{standardGlyph:d,controlPoints:new A(d,32),mappingData:new Xi(d)}});var X5=new E({version:bt,format:d,defaultBaseline:d,subtable:H5});let K5=new E({setting:d,nameIndex:H,name:e=>e.parent.parent.parent.name.records.fontFeatures[e.nameIndex]}),q5=new E({feature:d,nSettings:d,settingTable:new S(V,new A(K5,"nSettings"),{type:"parent"}),featureFlags:new ai(ee,[null,null,null,null,null,null,"hasDefault","exclusive"]),defaultSetting:ee,nameIndex:H,name:e=>e.parent.parent.name.records.fontFeatures[e.nameIndex]});var J5=new E({version:bt,featureNameCount:d,reserved1:new st(d),reserved2:new st(V),featureNames:new A(q5,"featureNameCount")});let Q5=new E({axisTag:new We(4),minValue:bt,defaultValue:bt,maxValue:bt,flags:d,nameID:d,name:e=>e.parent.parent.name.records.fontFeatures[e.nameID]}),$5=new E({nameID:d,name:e=>e.parent.parent.name.records.fontFeatures[e.nameID],flags:d,coord:new A(bt,e=>e.parent.axisCount),postscriptNameID:new Fr(d,e=>e.parent.instanceSize-e._currentOffset>0)});var e6=new E({version:bt,offsetToData:d,countSizePairs:d,axisCount:d,axisSize:d,instanceCount:d,instanceSize:d,axis:new A(Q5,"axisCount"),instance:new A($5,"instanceCount")});let t6=new la(16,"BE",14);class i6{static decode(t,i){return i.flags?t.readUInt32BE():t.readUInt16BE()*2}}var a6=new E({version:d,reserved:new st(d),axisCount:d,globalCoordCount:d,globalCoords:new S(V,new A(new A(t6,"axisCount"),"globalCoordCount")),glyphCount:d,flags:d,offsetToData:V,offsets:new A(new S(i6,"void",{relativeTo:e=>e.offsetToData,allowNull:!1}),e=>e.glyphCount+1)});let s6=new E({length:d,coverage:d,subFeatureFlags:V,stateTable:new Y5}),r6=new E({justClass:V,beforeGrowLimit:bt,beforeShrinkLimit:bt,afterGrowLimit:bt,afterShrinkLimit:bt,growFlags:d,shrinkFlags:d}),n6=new A(r6,V),o6=new Ie("actionType",{0:{lowerLimit:bt,upperLimit:bt,order:d,glyphs:new A(d,d)},1:{addGlyph:d},2:{substThreshold:bt,addGlyph:d,substGlyph:d},3:{},4:{variationAxis:V,minimumLimit:bt,noStretchValue:bt,maximumLimit:bt},5:{flags:d,glyph:d}}),l6=new E({actionClass:d,actionType:d,actionLength:V,actionData:o6,padding:new st(ee,e=>e.actionLength-e._currentOffset)}),c6=new A(l6,V),f6=new E({lookupTable:new Xi(new S(d,c6))}),T0=new E({classTable:new S(d,s6,{type:"parent"}),wdcOffset:d,postCompensationTable:new S(d,f6,{type:"parent"}),widthDeltaClusters:new Xi(new S(d,n6,{type:"parent",relativeTo:e=>e.wdcOffset}))});var u6=new E({version:V,format:d,horizontal:new S(d,T0),vertical:new S(d,T0)});let d6={action:d},h6={markIndex:d,currentIndex:d},p6={currentInsertIndex:d,markedInsertIndex:d},g6=new E({items:new mi(new S(V,new Xi))}),m6=new Ie("type",{0:{stateTable:new Yr},1:{stateTable:new Yr(h6),substitutionTable:new S(V,g6)},2:{stateTable:new Yr(d6),ligatureActions:new S(V,new mi(V)),components:new S(V,new mi(d)),ligatureList:new S(V,new mi(d))},4:{lookupTable:new Xi},5:{stateTable:new Yr(p6),insertionActions:new S(V,new mi(d))}}),y6=new E({length:V,coverage:Zi,type:ee,subFeatureFlags:V,table:m6,padding:new st(ee,e=>e.length-e._currentOffset)}),b6=new E({featureType:d,featureSetting:d,enableFlags:V,disableFlags:V}),w6=new E({defaultFlags:V,chainLength:V,nFeatureEntries:V,nSubtables:V,features:new A(b6,"nFeatureEntries"),subtables:new A(y6,"nSubtables")});var v6=new E({version:d,unused:new st(d),nChains:V,chains:new A(w6,"nChains")});let x6=new E({left:H,top:H,right:H,bottom:H});var k6=new E({version:bt,format:d,lookupTable:new Xi(x6)});let xe={};var Hr=xe;xe.cmap=NC,xe.head=AC,xe.hhea=CC,xe.hmtx=VC,xe.maxp=_C,xe.name=MC,xe["OS/2"]=RC,xe.post=DC,xe.fpgm=LC,xe.loca=BC,xe.prep=UC,xe["cvt "]=zC,xe.glyf=ZC,xe["CFF "]=m0,xe.CFF2=m0,xe.VORG=VS,xe.EBLC=PS,xe.CBLC=xe.EBLC,xe.sbix=OS,xe.COLR=DS,xe.CPAL=LS,xe.BASE=HS,xe.GDEF=$S,xe.GPOS=f5,xe.GSUB=p5,xe.JSTF=w5,xe.HVAR=k5,xe.DSIG=C5,xe.gasp=V5,xe.hdmx=I5,xe.kern=P5,xe.LTSH=E5,xe.PCLT=O5,xe.VDMX=z5,xe.vhea=L5,xe.vmtx=U5,xe.avar=W5,xe.bsln=X5,xe.feat=J5,xe.fvar=e6,xe.gvar=a6,xe.just=u6,xe.morx=v6,xe.opbd=k6;let N6=new E({tag:new We(4),checkSum:V,offset:new S(V,"void",{type:"global"}),length:V}),tl=new E({tag:new We(4),numTables:d,searchRange:d,entrySelector:d,rangeShift:d,tables:new A(N6,"numTables")});tl.process=function(){let e={};for(let t of this.tables)e[t.tag]=t;this.tables=e},tl.preEncode=function(){if(!Array.isArray(this.tables)){let i=[];for(let a in this.tables){let s=this.tables[a];s&&i.push({tag:a,checkSum:0,offset:new ko(Hr[a],s),length:Hr[a].size(s)})}this.tables=i}this.tag="true",this.numTables=this.tables.length;let e=Math.floor(Math.log(this.numTables)/Math.LN2),t=Math.pow(2,e);this.searchRange=t*16,this.entrySelector=Math.log(t)/Math.LN2,this.rangeShift=this.numTables*16-this.searchRange};var F0=tl;function Xr(e,t){let i=0,a=e.length-1;for(;i<=a;){let s=i+a>>1,r=t(e[s]);if(r<0)a=s-1;else if(r>0)i=s+1;else return s}return-1}function Ha(e,t){let i=[];for(;e<t;)i.push(e++);return i}const Kr=new TextDecoder("ascii"),P0="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Is=new Uint8Array(256);for(let e=0;e<P0.length;e++)Is[P0.charCodeAt(e)]=e;function il(e){let t=e.length*.75;e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);let i=new Uint8Array(t),a=0;for(let s=0,r=e.length;s<r;s+=4){let n=Is[e.charCodeAt(s)],o=Is[e.charCodeAt(s+1)],l=Is[e.charCodeAt(s+2)],c=Is[e.charCodeAt(s+3)];i[a++]=n<<2|o>>4,i[a++]=(o&15)<<4|l>>2,i[a++]=(l&3)<<6|c&63}return i}class al{findSubtable(t,i){for(let[a,s]of i)for(let r of t.tables)if(r.platformID===a&&r.encodingID===s)return r.table;return null}lookup(t,i){if(this.encoding)t=this.encoding.get(t)||t;else if(i){let s=this.getVariationSelector(t,i);if(s)return s}let a=this.cmap;switch(a.version){case 0:return a.codeMap.get(t)||0;case 4:{let s=0,r=a.segCount-1;for(;s<=r;){let n=s+r>>1;if(t<a.startCode.get(n))r=n-1;else if(t>a.endCode.get(n))s=n+1;else{let o=a.idRangeOffset.get(n),l;if(o===0)l=t+a.idDelta.get(n);else{let c=o/2+(t-a.startCode.get(n))-(a.segCount-n);l=a.glyphIndexArray.get(c)||0,l!==0&&(l+=a.idDelta.get(n))}return l&65535}}return 0}case 8:throw new Error("TODO: cmap format 8");case 6:case 10:return a.glyphIndices.get(t-a.firstCode)||0;case 12:case 13:{let s=0,r=a.nGroups-1;for(;s<=r;){let n=s+r>>1,o=a.groups.get(n);if(t<o.startCharCode)r=n-1;else if(t>o.endCharCode)s=n+1;else return a.version===12?o.glyphID+(t-o.startCharCode):o.glyphID}return 0}case 14:throw new Error("TODO: cmap format 14");default:throw new Error(`Unknown cmap format ${a.version}`)}}getVariationSelector(t,i){if(!this.uvs)return 0;let a=this.uvs.varSelectors.toArray(),s=Xr(a,n=>i-n.varSelector),r=a[s];return s!==-1&&r.defaultUVS&&(s=Xr(r.defaultUVS,n=>t<n.startUnicodeValue?-1:t>n.startUnicodeValue+n.additionalCount?1:0)),s!==-1&&r.nonDefaultUVS&&(s=Xr(r.nonDefaultUVS,n=>t-n.unicodeValue),s!==-1)?r.nonDefaultUVS[s].glyphID:0}getCharacterSet(){let t=this.cmap;switch(t.version){case 0:return Ha(0,t.codeMap.length);case 4:{let i=[],a=t.endCode.toArray();for(let s=0;s<a.length;s++){let r=a[s]+1,n=t.startCode.get(s);i.push(...Ha(n,r))}return i}case 8:throw new Error("TODO: cmap format 8");case 6:case 10:return Ha(t.firstCode,t.firstCode+t.glyphIndices.length);case 12:case 13:{let i=[];for(let a of t.groups.toArray())i.push(...Ha(a.startCharCode,a.endCharCode+1));return i}case 14:throw new Error("TODO: cmap format 14");default:throw new Error(`Unknown cmap format ${t.version}`)}}codePointsForGlyph(t){let i=this.cmap;switch(i.version){case 0:{let s=[];for(let r=0;r<256;r++)i.codeMap.get(r)===t&&s.push(r);return s}case 4:{let s=[];for(let r=0;r<i.segCount;r++){let n=i.endCode.get(r),o=i.startCode.get(r),l=i.idRangeOffset.get(r),c=i.idDelta.get(r);for(var a=o;a<=n;a++){let f=0;if(l===0)f=a+c;else{let u=l/2+(a-o)-(i.segCount-r);f=i.glyphIndexArray.get(u)||0,f!==0&&(f+=c)}f===t&&s.push(a)}}return s}case 12:{let s=[];for(let r of i.groups.toArray())t>=r.glyphID&&t<=r.glyphID+(r.endCharCode-r.startCharCode)&&s.push(r.startCharCode+(t-r.glyphID));return s}case 13:{let s=[];for(let r of i.groups.toArray())t===r.glyphID&&s.push(...Ha(r.startCharCode,r.endCharCode+1));return s}default:throw new Error(`Unknown cmap format ${i.version}`)}}constructor(t){if(this.encoding=null,this.cmap=this.findSubtable(t,[[3,10],[0,6],[0,4],[3,1],[0,3],[0,2],[0,1],[0,0]]),!this.cmap)for(let i of t.tables){let a=Yu(i.platformID,i.encodingID,i.table.language-1),s=FC(a);s&&(this.cmap=i.table,this.encoding=s)}if(!this.cmap)throw new Error("Could not find a supported cmap table");this.uvs=this.findSubtable(t,[[0,5]]),this.uvs&&this.uvs.version!==14&&(this.uvs=null)}}Et([Ot],al.prototype,"getCharacterSet",null),Et([Ot],al.prototype,"codePointsForGlyph",null);class A6{process(t,i){for(let a=0;a<t.length-1;a++){let s=t[a].id,r=t[a+1].id;i[a].xAdvance+=this.getKerning(s,r)}}getKerning(t,i){let a=0;for(let s of this.kern.tables){if(s.coverage.crossStream)continue;switch(s.version){case 0:if(!s.coverage.horizontal)continue;break;case 1:if(s.coverage.vertical||s.coverage.variation)continue;break;default:throw new Error(`Unsupported kerning table version ${s.version}`)}let r=0,n=s.subtable;switch(s.format){case 0:let o=Xr(n.pairs,function(u){return t-u.left||i-u.right});o>=0&&(r=n.pairs[o].value);break;case 2:let l=0,c=0;t>=n.leftTable.firstGlyph&&t<n.leftTable.firstGlyph+n.leftTable.nGlyphs?l=n.leftTable.offsets[t-n.leftTable.firstGlyph]:l=n.array.off,i>=n.rightTable.firstGlyph&&i<n.rightTable.firstGlyph+n.rightTable.nGlyphs&&(c=n.rightTable.offsets[i-n.rightTable.firstGlyph]);let f=(l+c-n.array.off)/2;r=n.array.values.get(f);break;case 3:if(t>=n.glyphCount||i>=n.glyphCount)return 0;r=n.kernValue[n.kernIndex[n.leftClass[t]*n.rightClassCount+n.rightClass[i]]];break;default:throw new Error(`Unsupported kerning sub-table format ${s.format}`)}s.coverage.override?a=r:a+=r}return a}constructor(t){this.kern=t.kern}}class C6{positionGlyphs(t,i){let a=0,s=0;for(let r=0;r<t.length;r++)t[r].isMark?s=r:(a!==s&&this.positionCluster(t,i,a,s),a=s=r);return a!==s&&this.positionCluster(t,i,a,s),i}positionCluster(t,i,a,s){let r=t[a],n=r.cbox.copy();r.codePoints.length>1&&(n.minX+=(r.codePoints.length-1)*n.width/r.codePoints.length);let o=-i[a].xAdvance,l=0,c=this.font.unitsPerEm/16;for(let f=a+1;f<=s;f++){let u=t[f],h=u.cbox,m=i[f],b=this.getCombiningClass(u.codePoints[0]);if(b!=="Not_Reordered"){switch(m.xOffset=m.yOffset=0,b){case"Double_Above":case"Double_Below":m.xOffset+=n.minX-h.width/2-h.minX;break;case"Attached_Below_Left":case"Below_Left":case"Above_Left":m.xOffset+=n.minX-h.minX;break;case"Attached_Above_Right":case"Below_Right":case"Above_Right":m.xOffset+=n.maxX-h.width-h.minX;break;default:m.xOffset+=n.minX+(n.width-h.width)/2-h.minX}switch(b){case"Double_Below":case"Below_Left":case"Below":case"Below_Right":case"Attached_Below_Left":case"Attached_Below":(b==="Attached_Below_Left"||b==="Attached_Below")&&(n.minY+=c),m.yOffset=-n.minY-h.maxY,n.minY+=h.height;break;case"Double_Above":case"Above_Left":case"Above":case"Above_Right":case"Attached_Above":case"Attached_Above_Right":(b==="Attached_Above"||b==="Attached_Above_Right")&&(n.maxY+=c),m.yOffset=n.maxY-h.minY,n.maxY+=h.height;break}m.xAdvance=m.yAdvance=0,m.xOffset+=o,m.yOffset+=l}else o-=m.xAdvance,l-=m.yAdvance}}getCombiningClass(t){let i=eC(t);if((t&-256)===3584){if(i==="Not_Reordered")switch(t){case 3633:case 3636:case 3637:case 3638:case 3639:case 3655:case 3660:case 3645:case 3662:return"Above_Right";case 3761:case 3764:case 3765:case 3766:case 3767:case 3771:case 3788:case 3789:return"Above";case 3772:return"Below"}else if(t===3642)return"Below_Right"}switch(i){case"CCC10":case"CCC11":case"CCC12":case"CCC13":case"CCC14":case"CCC15":case"CCC16":case"CCC17":case"CCC18":case"CCC20":case"CCC22":return"Below";case"CCC23":return"Attached_Above";case"CCC24":return"Above_Right";case"CCC25":case"CCC19":return"Above_Left";case"CCC26":return"Above";case"CCC21":break;case"CCC27":case"CCC28":case"CCC30":case"CCC31":case"CCC33":case"CCC34":case"CCC35":case"CCC36":return"Above";case"CCC29":case"CCC32":return"Below";case"CCC103":return"Below_Right";case"CCC107":return"Above_Right";case"CCC118":return"Below";case"CCC122":return"Above";case"CCC129":case"CCC132":return"Below";case"CCC130":return"Above"}return i}constructor(t){this.font=t}}class Ki{get width(){return this.maxX-this.minX}get height(){return this.maxY-this.minY}addPoint(t,i){Math.abs(t)!==1/0&&(t<this.minX&&(this.minX=t),t>this.maxX&&(this.maxX=t)),Math.abs(i)!==1/0&&(i<this.minY&&(this.minY=i),i>this.maxY&&(this.maxY=i))}copy(){return new Ki(this.minX,this.minY,this.maxX,this.maxY)}constructor(t=1/0,i=1/0,a=-1/0,s=-1/0){this.minX=t,this.minY=i,this.maxX=a,this.maxY=s}}const Xa={Caucasian_Albanian:"aghb",Arabic:"arab",Imperial_Aramaic:"armi",Armenian:"armn",Avestan:"avst",Balinese:"bali",Bamum:"bamu",Bassa_Vah:"bass",Batak:"batk",Bengali:["bng2","beng"],Bopomofo:"bopo",Brahmi:"brah",Braille:"brai",Buginese:"bugi",Buhid:"buhd",Chakma:"cakm",Canadian_Aboriginal:"cans",Carian:"cari",Cham:"cham",Cherokee:"cher",Coptic:"copt",Cypriot:"cprt",Cyrillic:"cyrl",Devanagari:["dev2","deva"],Deseret:"dsrt",Duployan:"dupl",Egyptian_Hieroglyphs:"egyp",Elbasan:"elba",Ethiopic:"ethi",Georgian:"geor",Glagolitic:"glag",Gothic:"goth",Grantha:"gran",Greek:"grek",Gujarati:["gjr2","gujr"],Gurmukhi:["gur2","guru"],Hangul:"hang",Han:"hani",Hanunoo:"hano",Hebrew:"hebr",Hiragana:"hira",Pahawh_Hmong:"hmng",Katakana_Or_Hiragana:"hrkt",Old_Italic:"ital",Javanese:"java",Kayah_Li:"kali",Katakana:"kana",Kharoshthi:"khar",Khmer:"khmr",Khojki:"khoj",Kannada:["knd2","knda"],Kaithi:"kthi",Tai_Tham:"lana",Lao:"lao ",Latin:"latn",Lepcha:"lepc",Limbu:"limb",Linear_A:"lina",Linear_B:"linb",Lisu:"lisu",Lycian:"lyci",Lydian:"lydi",Mahajani:"mahj",Mandaic:"mand",Manichaean:"mani",Mende_Kikakui:"mend",Meroitic_Cursive:"merc",Meroitic_Hieroglyphs:"mero",Malayalam:["mlm2","mlym"],Modi:"modi",Mongolian:"mong",Mro:"mroo",Meetei_Mayek:"mtei",Myanmar:["mym2","mymr"],Old_North_Arabian:"narb",Nabataean:"nbat",Nko:"nko ",Ogham:"ogam",Ol_Chiki:"olck",Old_Turkic:"orkh",Oriya:["ory2","orya"],Osmanya:"osma",Palmyrene:"palm",Pau_Cin_Hau:"pauc",Old_Permic:"perm",Phags_Pa:"phag",Inscriptional_Pahlavi:"phli",Psalter_Pahlavi:"phlp",Phoenician:"phnx",Miao:"plrd",Inscriptional_Parthian:"prti",Rejang:"rjng",Runic:"runr",Samaritan:"samr",Old_South_Arabian:"sarb",Saurashtra:"saur",Shavian:"shaw",Sharada:"shrd",Siddham:"sidd",Khudawadi:"sind",Sinhala:"sinh",Sora_Sompeng:"sora",Sundanese:"sund",Syloti_Nagri:"sylo",Syriac:"syrc",Tagbanwa:"tagb",Takri:"takr",Tai_Le:"tale",New_Tai_Lue:"talu",Tamil:["tml2","taml"],Tai_Viet:"tavt",Telugu:["tel2","telu"],Tifinagh:"tfng",Tagalog:"tglg",Thaana:"thaa",Thai:"thai",Tibetan:"tibt",Tirhuta:"tirh",Ugaritic:"ugar",Vai:"vai ",Warang_Citi:"wara",Old_Persian:"xpeo",Cuneiform:"xsux",Yi:"yi ",Inherited:"zinh",Common:"zyyy",Unknown:"zzzz"},sl={};for(let e in Xa){let t=Xa[e];if(Array.isArray(t))for(let i of t)sl[i]=e;else sl[t]=e}function S6(e){return sl[e]}function V6(e){let t=e.length,i=0;for(;i<t;){let a=e.charCodeAt(i++);if(55296<=a&&a<=56319&&i<t){let r=e.charCodeAt(i);56320<=r&&r<=57343&&(i++,a=((a&1023)<<10)+(r&1023)+65536)}let s=_u(a);if(s!=="Common"&&s!=="Inherited"&&s!=="Unknown")return Xa[s]}return Xa.Unknown}function _6(e){for(let t=0;t<e.length;t++){let i=e[t],a=_u(i);if(a!=="Common"&&a!=="Inherited"&&a!=="Unknown")return Xa[a]}return Xa.Unknown}const I6={arab:!0,hebr:!0,syrc:!0,thaa:!0,cprt:!0,khar:!0,phnx:!0,"nko ":!0,lydi:!0,avst:!0,armi:!0,phli:!0,prti:!0,sarb:!0,orkh:!0,samr:!0,mand:!0,merc:!0,mero:!0,mani:!0,mend:!0,nbat:!0,narb:!0,palm:!0,phlp:!0};function E0(e){return I6[e]?"rtl":"ltr"}class T6{get advanceWidth(){let t=0;for(let i of this.positions)t+=i.xAdvance;return t}get advanceHeight(){let t=0;for(let i of this.positions)t+=i.yAdvance;return t}get bbox(){let t=new Ki,i=0,a=0;for(let s=0;s<this.glyphs.length;s++){let r=this.glyphs[s],n=this.positions[s],o=r.bbox;t.addPoint(o.minX+i+n.xOffset,o.minY+a+n.yOffset),t.addPoint(o.maxX+i+n.xOffset,o.maxY+a+n.yOffset),i+=n.xAdvance,a+=n.yAdvance}return t}constructor(t,i,a,s,r){if(this.glyphs=t,this.positions=null,this.script=a,this.language=s||null,this.direction=r||E0(a),this.features={},Array.isArray(i))for(let n of i)this.features[n]=!0;else typeof i=="object"&&(this.features=i)}}class F6{constructor(t=0,i=0,a=0,s=0){this.xAdvance=t,this.yAdvance=i,this.xOffset=a,this.yOffset=s}}const ha={allTypographicFeatures:{code:0,exclusive:!1,allTypeFeatures:0},ligatures:{code:1,exclusive:!1,requiredLigatures:0,commonLigatures:2,rareLigatures:4,rebusPictures:8,diphthongLigatures:10,squaredLigatures:12,abbrevSquaredLigatures:14,symbolLigatures:16,contextualLigatures:18,historicalLigatures:20},cursiveConnection:{code:2,exclusive:!0,unconnected:0,partiallyConnected:1,cursive:2},letterCase:{code:3,exclusive:!0},verticalSubstitution:{code:4,exclusive:!1,substituteVerticalForms:0},linguisticRearrangement:{code:5,exclusive:!1,linguisticRearrangement:0},numberSpacing:{code:6,exclusive:!0,monospacedNumbers:0,proportionalNumbers:1,thirdWidthNumbers:2,quarterWidthNumbers:3},smartSwash:{code:8,exclusive:!1,wordInitialSwashes:0,wordFinalSwashes:2,nonFinalSwashes:8},diacritics:{code:9,exclusive:!0,showDiacritics:0,hideDiacritics:1,decomposeDiacritics:2},verticalPosition:{code:10,exclusive:!0,normalPosition:0,superiors:1,inferiors:2,ordinals:3,scientificInferiors:4},fractions:{code:11,exclusive:!0,noFractions:0,verticalFractions:1,diagonalFractions:2},overlappingCharacters:{code:13,exclusive:!1,preventOverlap:0},typographicExtras:{code:14,exclusive:!1,slashedZero:4},mathematicalExtras:{code:15,exclusive:!1,mathematicalGreek:10},ornamentSets:{code:16,exclusive:!0,noOrnaments:0,dingbats:1,piCharacters:2,fleurons:3,decorativeBorders:4,internationalSymbols:5,mathSymbols:6},characterAlternatives:{code:17,exclusive:!0,noAlternates:0},designComplexity:{code:18,exclusive:!0,designLevel1:0,designLevel2:1,designLevel3:2,designLevel4:3,designLevel5:4},styleOptions:{code:19,exclusive:!0,noStyleOptions:0,displayText:1,engravedText:2,illuminatedCaps:3,titlingCaps:4,tallCaps:5},characterShape:{code:20,exclusive:!0,traditionalCharacters:0,simplifiedCharacters:1,JIS1978Characters:2,JIS1983Characters:3,JIS1990Characters:4,traditionalAltOne:5,traditionalAltTwo:6,traditionalAltThree:7,traditionalAltFour:8,traditionalAltFive:9,expertCharacters:10,JIS2004Characters:11,hojoCharacters:12,NLCCharacters:13,traditionalNamesCharacters:14},numberCase:{code:21,exclusive:!0,lowerCaseNumbers:0,upperCaseNumbers:1},textSpacing:{code:22,exclusive:!0,proportionalText:0,monospacedText:1,halfWidthText:2,thirdWidthText:3,quarterWidthText:4,altProportionalText:5,altHalfWidthText:6},transliteration:{code:23,exclusive:!0,noTransliteration:0},annotation:{code:24,exclusive:!0,noAnnotation:0,boxAnnotation:1,roundedBoxAnnotation:2,circleAnnotation:3,invertedCircleAnnotation:4,parenthesisAnnotation:5,periodAnnotation:6,romanNumeralAnnotation:7,diamondAnnotation:8,invertedBoxAnnotation:9,invertedRoundedBoxAnnotation:10},kanaSpacing:{code:25,exclusive:!0,fullWidthKana:0,proportionalKana:1},ideographicSpacing:{code:26,exclusive:!0,fullWidthIdeographs:0,proportionalIdeographs:1,halfWidthIdeographs:2},unicodeDecomposition:{code:27,exclusive:!1,canonicalComposition:0,compatibilityComposition:2,transcodingComposition:4},rubyKana:{code:28,exclusive:!1,rubyKana:2},CJKSymbolAlternatives:{code:29,exclusive:!0,noCJKSymbolAlternatives:0,CJKSymbolAltOne:1,CJKSymbolAltTwo:2,CJKSymbolAltThree:3,CJKSymbolAltFour:4,CJKSymbolAltFive:5},ideographicAlternatives:{code:30,exclusive:!0,noIdeographicAlternatives:0,ideographicAltOne:1,ideographicAltTwo:2,ideographicAltThree:3,ideographicAltFour:4,ideographicAltFive:5},CJKVerticalRomanPlacement:{code:31,exclusive:!0,CJKVerticalRomanCentered:0,CJKVerticalRomanHBaseline:1},italicCJKRoman:{code:32,exclusive:!1,CJKItalicRoman:2},caseSensitiveLayout:{code:33,exclusive:!1,caseSensitiveLayout:0,caseSensitiveSpacing:2},alternateKana:{code:34,exclusive:!1,alternateHorizKana:0,alternateVertKana:2},stylisticAlternatives:{code:35,exclusive:!1,noStylisticAlternates:0,stylisticAltOne:2,stylisticAltTwo:4,stylisticAltThree:6,stylisticAltFour:8,stylisticAltFive:10,stylisticAltSix:12,stylisticAltSeven:14,stylisticAltEight:16,stylisticAltNine:18,stylisticAltTen:20,stylisticAltEleven:22,stylisticAltTwelve:24,stylisticAltThirteen:26,stylisticAltFourteen:28,stylisticAltFifteen:30,stylisticAltSixteen:32,stylisticAltSeventeen:34,stylisticAltEighteen:36,stylisticAltNineteen:38,stylisticAltTwenty:40},contextualAlternates:{code:36,exclusive:!1,contextualAlternates:0,swashAlternates:2,contextualSwashAlternates:4},lowerCase:{code:37,exclusive:!0,defaultLowerCase:0,lowerCaseSmallCaps:1,lowerCasePetiteCaps:2},upperCase:{code:38,exclusive:!0,defaultUpperCase:0,upperCaseSmallCaps:1,upperCasePetiteCaps:2},languageTag:{code:39,exclusive:!0},CJKRomanSpacing:{code:103,exclusive:!0,halfWidthCJKRoman:0,proportionalCJKRoman:1,defaultCJKRoman:2,fullWidthCJKRoman:3}},$=(e,t)=>[ha[e].code,ha[e][t]],qr={rlig:$("ligatures","requiredLigatures"),clig:$("ligatures","contextualLigatures"),dlig:$("ligatures","rareLigatures"),hlig:$("ligatures","historicalLigatures"),liga:$("ligatures","commonLigatures"),hist:$("ligatures","historicalLigatures"),smcp:$("lowerCase","lowerCaseSmallCaps"),pcap:$("lowerCase","lowerCasePetiteCaps"),frac:$("fractions","diagonalFractions"),dnom:$("fractions","diagonalFractions"),numr:$("fractions","diagonalFractions"),afrc:$("fractions","verticalFractions"),case:$("caseSensitiveLayout","caseSensitiveLayout"),ccmp:$("unicodeDecomposition","canonicalComposition"),cpct:$("CJKVerticalRomanPlacement","CJKVerticalRomanCentered"),valt:$("CJKVerticalRomanPlacement","CJKVerticalRomanCentered"),swsh:$("contextualAlternates","swashAlternates"),cswh:$("contextualAlternates","contextualSwashAlternates"),curs:$("cursiveConnection","cursive"),c2pc:$("upperCase","upperCasePetiteCaps"),c2sc:$("upperCase","upperCaseSmallCaps"),init:$("smartSwash","wordInitialSwashes"),fin2:$("smartSwash","wordFinalSwashes"),medi:$("smartSwash","nonFinalSwashes"),med2:$("smartSwash","nonFinalSwashes"),fin3:$("smartSwash","wordFinalSwashes"),fina:$("smartSwash","wordFinalSwashes"),pkna:$("kanaSpacing","proportionalKana"),half:$("textSpacing","halfWidthText"),halt:$("textSpacing","altHalfWidthText"),hkna:$("alternateKana","alternateHorizKana"),vkna:$("alternateKana","alternateVertKana"),ital:$("italicCJKRoman","CJKItalicRoman"),lnum:$("numberCase","upperCaseNumbers"),onum:$("numberCase","lowerCaseNumbers"),mgrk:$("mathematicalExtras","mathematicalGreek"),calt:$("contextualAlternates","contextualAlternates"),vrt2:$("verticalSubstitution","substituteVerticalForms"),vert:$("verticalSubstitution","substituteVerticalForms"),tnum:$("numberSpacing","monospacedNumbers"),pnum:$("numberSpacing","proportionalNumbers"),sups:$("verticalPosition","superiors"),subs:$("verticalPosition","inferiors"),ordn:$("verticalPosition","ordinals"),pwid:$("textSpacing","proportionalText"),hwid:$("textSpacing","halfWidthText"),qwid:$("textSpacing","quarterWidthText"),twid:$("textSpacing","thirdWidthText"),fwid:$("textSpacing","proportionalText"),palt:$("textSpacing","altProportionalText"),trad:$("characterShape","traditionalCharacters"),smpl:$("characterShape","simplifiedCharacters"),jp78:$("characterShape","JIS1978Characters"),jp83:$("characterShape","JIS1983Characters"),jp90:$("characterShape","JIS1990Characters"),jp04:$("characterShape","JIS2004Characters"),expt:$("characterShape","expertCharacters"),hojo:$("characterShape","hojoCharacters"),nlck:$("characterShape","NLCCharacters"),tnam:$("characterShape","traditionalNamesCharacters"),ruby:$("rubyKana","rubyKana"),titl:$("styleOptions","titlingCaps"),zero:$("typographicExtras","slashedZero"),ss01:$("stylisticAlternatives","stylisticAltOne"),ss02:$("stylisticAlternatives","stylisticAltTwo"),ss03:$("stylisticAlternatives","stylisticAltThree"),ss04:$("stylisticAlternatives","stylisticAltFour"),ss05:$("stylisticAlternatives","stylisticAltFive"),ss06:$("stylisticAlternatives","stylisticAltSix"),ss07:$("stylisticAlternatives","stylisticAltSeven"),ss08:$("stylisticAlternatives","stylisticAltEight"),ss09:$("stylisticAlternatives","stylisticAltNine"),ss10:$("stylisticAlternatives","stylisticAltTen"),ss11:$("stylisticAlternatives","stylisticAltEleven"),ss12:$("stylisticAlternatives","stylisticAltTwelve"),ss13:$("stylisticAlternatives","stylisticAltThirteen"),ss14:$("stylisticAlternatives","stylisticAltFourteen"),ss15:$("stylisticAlternatives","stylisticAltFifteen"),ss16:$("stylisticAlternatives","stylisticAltSixteen"),ss17:$("stylisticAlternatives","stylisticAltSeventeen"),ss18:$("stylisticAlternatives","stylisticAltEighteen"),ss19:$("stylisticAlternatives","stylisticAltNineteen"),ss20:$("stylisticAlternatives","stylisticAltTwenty")};for(let e=1;e<=99;e++)qr[`cv${`00${e}`.slice(-2)}`]=[ha.characterAlternatives.code,e];let pa={};for(let e in qr){let t=qr[e];pa[t[0]]==null&&(pa[t[0]]={}),pa[t[0]][t[1]]=e}function P6(e){let t={};for(let i in e){let a;(a=qr[i])&&(t[a[0]]==null&&(t[a[0]]={}),t[a[0]][a[1]]=e[i])}return t}function O0(e){let[t,i]=e;if(isNaN(t))var a=ha[t]&&ha[t].code;else var a=t;if(isNaN(i))var s=ha[t]&&ha[t][i];else var s=i;return[a,s]}function E6(e){let t={};if(Array.isArray(e))for(let i=0;i<e.length;i++){let a,s=O0(e[i]);(a=pa[s[0]]&&pa[s[0]][s[1]])&&(t[a]=!0)}else if(typeof e=="object")for(let i in e){let a=e[i];for(let s in a){let r,n=O0([i,s]);a[s]&&(r=pa[n[0]]&&pa[n[0]][n[1]])&&(t[r]=!0)}}return Object.keys(t)}class Ts{lookup(t){switch(this.table.version){case 0:return this.table.values.getItem(t);case 2:case 4:{let s=0,r=this.table.binarySearchHeader.nUnits-1;for(;s<=r;){var i=s+r>>1,a=this.table.segments[i];if(a.firstGlyph===65535)return null;if(t<a.firstGlyph)r=i-1;else if(t>a.lastGlyph)s=i+1;else return this.table.version===2?a.value:a.values[t-a.firstGlyph]}return null}case 6:{let s=0,r=this.table.binarySearchHeader.nUnits-1;for(;s<=r;){var i=s+r>>1,a=this.table.segments[i];if(a.glyph===65535)return null;if(t<a.glyph)r=i-1;else if(t>a.glyph)s=i+1;else return a.value}return null}case 8:return this.table.values[t-this.table.firstGlyph];default:throw new Error(`Unknown lookup table format: ${this.table.version}`)}}glyphsForValue(t){let i=[];switch(this.table.version){case 2:case 4:for(let a of this.table.segments)if(this.table.version===2&&a.value===t)i.push(...Ha(a.firstGlyph,a.lastGlyph+1));else for(let s=0;s<a.values.length;s++)a.values[s]===t&&i.push(a.firstGlyph+s);break;case 6:for(let a of this.table.segments)a.value===t&&i.push(a.glyph);break;case 8:for(let a=0;a<this.table.values.length;a++)this.table.values[a]===t&&i.push(this.table.firstGlyph+a);break;default:throw new Error(`Unknown lookup table format: ${this.table.version}`)}return i}constructor(t){this.table=t}}Et([Ot],Ts.prototype,"glyphsForValue",null);const O6=0,M0=0,R0=1,D0=2,M6=16384;class R6{process(t,i,a){let s=O6,r=i?t.length-1:0,n=i?-1:1;for(;n===1&&r<=t.length||n===-1&&r>=-1;){let o=null,l=R0,c=!0;r===t.length||r===-1?l=M0:(o=t[r],o.id===65535?l=D0:(l=this.lookupTable.lookup(o.id),l==null&&(l=R0)));let u=this.stateTable.stateArray.getItem(s)[l],h=this.stateTable.entryTable.getItem(u);l!==M0&&l!==D0&&(a(o,h,r),c=!(h.flags&M6)),s=h.newState,c&&(r+=n)}return t}traverse(t,i=0,a=new Set){if(a.has(i))return;a.add(i);let{nClasses:s,stateArray:r,entryTable:n}=this.stateTable,o=r.getItem(i);for(let l=4;l<s;l++){let c=o[l],f=n.getItem(c);for(let u of this.lookupTable.glyphsForValue(l))t.enter&&t.enter(u,f),f.newState!==0&&this.traverse(t,f.newState,a),t.exit&&t.exit(u,f)}}constructor(t){this.stateTable=t,this.lookupTable=new Ts(t.classTable)}}const D6=32768,z6=8192,L6=15,z0=32768,B6=32768,U6=8192,Z6=2147483648,G6=1073741824,W6=1073741823,L0=4194304,j6=2048,Y6=1024,H6=992,X6=31;class B0{process(t,i={}){for(let s of this.morx.chains){let r=s.defaultFlags;for(let n of s.features){let o;(o=i[n.featureType])&&(o[n.featureSetting]?(r&=n.disableFlags,r|=n.enableFlags):o[n.featureSetting]===!1&&(r|=~n.disableFlags,r&=~n.enableFlags))}for(let n of s.subtables)n.subFeatureFlags&r&&this.processSubtable(n,t)}let a=t.length-1;for(;a>=0;)t[a].id===65535&&t.splice(a,1),a--;return t}processSubtable(t,i){if(this.subtable=t,this.glyphs=i,this.subtable.type===4){this.processNoncontextualSubstitutions(this.subtable,this.glyphs);return}this.ligatureStack=[],this.markedGlyph=null,this.firstGlyph=null,this.lastGlyph=null,this.markedIndex=null;let a=this.getStateMachine(t),s=this.getProcessor(),r=!!(this.subtable.coverage&L0);return a.process(this.glyphs,r,s)}getStateMachine(t){return new R6(t.table.stateTable)}getProcessor(){switch(this.subtable.type){case 0:return this.processIndicRearragement;case 1:return this.processContextualSubstitution;case 2:return this.processLigature;case 4:return this.processNoncontextualSubstitutions;case 5:return this.processGlyphInsertion;default:throw new Error(`Invalid morx subtable type: ${this.subtable.type}`)}}processIndicRearragement(t,i,a){i.flags&D6&&(this.firstGlyph=a),i.flags&z6&&(this.lastGlyph=a),K6(this.glyphs,i.flags&L6,this.firstGlyph,this.lastGlyph)}processContextualSubstitution(t,i,a){let s=this.subtable.table.substitutionTable.items;if(i.markIndex!==65535){let n=s.getItem(i.markIndex),o=new Ts(n);t=this.glyphs[this.markedGlyph];var r=o.lookup(t.id);r&&(this.glyphs[this.markedGlyph]=this.font.getGlyph(r,t.codePoints))}if(i.currentIndex!==65535){let n=s.getItem(i.currentIndex),o=new Ts(n);t=this.glyphs[a];var r=o.lookup(t.id);r&&(this.glyphs[a]=this.font.getGlyph(r,t.codePoints))}i.flags&z0&&(this.markedGlyph=a)}processLigature(t,i,a){if(i.flags&B6&&this.ligatureStack.push(a),i.flags&U6){let s=this.subtable.table.ligatureActions,r=this.subtable.table.components,n=this.subtable.table.ligatureList,o=i.action,l=!1,c=0,f=[],u=[];for(;!l;){let h=this.ligatureStack.pop();f.unshift(...this.glyphs[h].codePoints);let m=s.getItem(o++);l=!!(m&Z6);let b=!!(m&G6),M=(m&W6)<<2>>2;M+=this.glyphs[h].id;let G=r.getItem(M);if(c+=G,l||b){let L=n.getItem(c);this.glyphs[h]=this.font.getGlyph(L,f),u.push(h),c=0,f=[]}else this.glyphs[h]=this.font.getGlyph(65535)}this.ligatureStack.push(...u)}}processNoncontextualSubstitutions(t,i,a){let s=new Ts(t.table.lookupTable);for(a=0;a<i.length;a++){let r=i[a];if(r.id!==65535){let n=s.lookup(r.id);n&&(i[a]=this.font.getGlyph(n,r.codePoints))}}}_insertGlyphs(t,i,a,s){let r=[];for(;a--;){let n=this.subtable.table.insertionActions.getItem(i++);r.push(this.font.getGlyph(n))}s||t++,this.glyphs.splice(t,0,...r)}processGlyphInsertion(t,i,a){if(i.flags&z0&&(this.markedIndex=a),i.markedInsertIndex!==65535){let s=(i.flags&X6)>>>5,r=!!(i.flags&Y6);this._insertGlyphs(this.markedIndex,i.markedInsertIndex,s,r)}if(i.currentInsertIndex!==65535){let s=(i.flags&H6)>>>5,r=!!(i.flags&j6);this._insertGlyphs(a,i.currentInsertIndex,s,r)}}getSupportedFeatures(){let t=[];for(let i of this.morx.chains)for(let a of i.features)t.push([a.featureType,a.featureSetting]);return t}generateInputs(t){return this.inputCache||this.generateInputCache(),this.inputCache[t]||[]}generateInputCache(){this.inputCache={};for(let t of this.morx.chains){let i=t.defaultFlags;for(let a of t.subtables)a.subFeatureFlags&i&&this.generateInputsForSubtable(a)}}generateInputsForSubtable(t){if(t.type!==2)return;if(!!(t.coverage&L0))throw new Error("Reverse subtable, not supported.");this.subtable=t,this.ligatureStack=[];let a=this.getStateMachine(t),s=this.getProcessor(),r=[],n=[];this.glyphs=[],a.traverse({enter:(o,l)=>{let c=this.glyphs;n.push({glyphs:c.slice(),ligatureStack:this.ligatureStack.slice()});let f=this.font.getGlyph(o);r.push(f),c.push(r[r.length-1]),s(c[c.length-1],l,c.length-1);let u=0,h=0;for(let m=0;m<c.length&&u<=1;m++)c[m].id!==65535&&(u++,h=c[m].id);if(u===1){let m=r.map(M=>M.id),b=this.inputCache[h];b?b.push(m):this.inputCache[h]=[m]}},exit:()=>{({glyphs:this.glyphs,ligatureStack:this.ligatureStack}=n.pop()),r.pop()}})}constructor(t){this.processIndicRearragement=this.processIndicRearragement.bind(this),this.processContextualSubstitution=this.processContextualSubstitution.bind(this),this.processLigature=this.processLigature.bind(this),this.processNoncontextualSubstitutions=this.processNoncontextualSubstitutions.bind(this),this.processGlyphInsertion=this.processGlyphInsertion.bind(this),this.font=t,this.morx=t.morx,this.inputCache=null}}Et([Ot],B0.prototype,"getStateMachine",null);function Bt(e,t,i,a=!1,s=!1){let r=e.splice(i[0]-(i[1]-1),i[1]);s&&r.reverse();let n=e.splice(t[0],t[1],...r);return a&&n.reverse(),e.splice(i[0]-(t[1]-1),0,...n),e}function K6(e,t,i,a){switch(t){case 0:return e;case 1:return Bt(e,[i,1],[a,0]);case 2:return Bt(e,[i,0],[a,1]);case 3:return Bt(e,[i,1],[a,1]);case 4:return Bt(e,[i,2],[a,0]);case 5:return Bt(e,[i,2],[a,0],!0,!1);case 6:return Bt(e,[i,0],[a,2]);case 7:return Bt(e,[i,0],[a,2],!1,!0);case 8:return Bt(e,[i,1],[a,2]);case 9:return Bt(e,[i,1],[a,2],!1,!0);case 10:return Bt(e,[i,2],[a,1]);case 11:return Bt(e,[i,2],[a,1],!0,!1);case 12:return Bt(e,[i,2],[a,2]);case 13:return Bt(e,[i,2],[a,2],!0,!1);case 14:return Bt(e,[i,2],[a,2],!1,!0);case 15:return Bt(e,[i,2],[a,2],!0,!0);default:throw new Error(`Unknown verb: ${t}`)}}class q6{substitute(t){t.direction==="rtl"&&t.glyphs.reverse(),this.morxProcessor.process(t.glyphs,P6(t.features))}getAvailableFeatures(t,i){return E6(this.morxProcessor.getSupportedFeatures())}stringsForGlyph(t){let i=this.morxProcessor.generateInputs(t),a=new Set;for(let s of i)this._addStrings(s,0,a,"");return a}_addStrings(t,i,a,s){let r=this.font._cmapProcessor.codePointsForGlyph(t[i]);for(let n of r){let o=s+String.fromCodePoint(n);i<t.length-1?this._addStrings(t,i+1,a,o):a.add(o)}}constructor(t){this.font=t,this.morxProcessor=new B0(t),this.fallbackPosition=!1}}class J6{_addFeatures(t,i){let a=this.stages.length-1,s=this.stages[a];for(let r of t)this.allFeatures[r]==null&&(s.push(r),this.allFeatures[r]=a,i&&(this.globalFeatures[r]=!0))}add(t,i=!0){if(this.stages.length===0&&this.stages.push([]),typeof t=="string"&&(t=[t]),Array.isArray(t))this._addFeatures(t,i);else if(typeof t=="object")this._addFeatures(t.global||[],!0),this._addFeatures(t.local||[],!1);else throw new Error("Unsupported argument to ShapingPlan#add")}addStage(t,i){typeof t=="function"?this.stages.push(t,[]):(this.stages.push([]),this.add(t,i))}setFeatureOverrides(t){if(Array.isArray(t))this.add(t);else if(typeof t=="object"){for(let i in t)if(t[i])this.add(i);else if(this.allFeatures[i]!=null){let a=this.stages[this.allFeatures[i]];a.splice(a.indexOf(i),1),delete this.allFeatures[i],delete this.globalFeatures[i]}}}assignGlobalFeatures(t){for(let i of t)for(let a in this.globalFeatures)i.features[a]=!0}process(t,i,a){for(let s of this.stages)typeof s=="function"?a||s(this.font,i,this):s.length>0&&t.applyFeatures(s,i,a)}constructor(t,i,a){this.font=t,this.script=i,this.direction=a,this.stages=[],this.globalFeatures={},this.allFeatures={}}}const Q6=["rvrn"],$6=["ccmp","locl","rlig","mark","mkmk"],e8=["frac","numr","dnom"],t8=["calt","clig","liga","rclt","curs","kern"],i8={ltr:["ltra","ltrm"],rtl:["rtla","rtlm"]};class qi{static plan(t,i,a){this.planPreprocessing(t),this.planFeatures(t),this.planPostprocessing(t,a),t.assignGlobalFeatures(i),this.assignFeatures(t,i)}static planPreprocessing(t){t.add({global:[...Q6,...i8[t.direction]],local:e8})}static planFeatures(t){}static planPostprocessing(t,i){t.add([...$6,...t8]),t.setFeatureOverrides(i)}static assignFeatures(t,i){for(let a=0;a<i.length;a++){let s=i[a];if(s.codePoints[0]===8260){let r=a,n=a+1;for(;r>0&&Iu(i[r-1].codePoints[0]);)i[r-1].features.numr=!0,i[r-1].features.frac=!0,r--;for(;n<i.length&&Iu(i[n].codePoints[0]);)i[n].features.dnom=!0,i[n].features.frac=!0,n++;s.features.frac=!0,a=n-1}}}}Wt(qi,"zeroMarkWidths","AFTER_GPOS");const a8=new Er(il("APABAAAAAAAAOAAAAf0BAv7tmi1MxDAUx7vtvjhAgcDgkEgEAnmXEBIMCYaEcygEiqBQ4FAkCE4ikUgMiiBJSAgSiUQSDMn9L9eSl6bddddug9t7yS/trevre+3r27pcNxZiG+yCfdCVv/9LeQxOwRm4AJegD27ALbgD9+ABPJF+z+BN/h7yDj5k/VOWX6SdmU5+wLWknggxDxaS8u0qiiX4uiz9XamQ3wzDMAzDMAzDMAzDVI/h959V/v7BMAzDMAzDMLlyNTNiMSdewVxbiA44B4/guz1qW58VYlMI0WsJ0W+N6kXw0spvPtdwhtkwnGM6uLaV4Xyzg3v3PM9DPfQ/sOg4xPWjipy31P8LTqbU304c/cLCUmWJLNB2Uz2U1KTeRKNmKHVMfbJC+/0loTZRH/W5cvEvBJPMbREkWt3FD1NcqXZBSpuE2Ad0PBehPtNrPtIEdYP+hiRt/V1jIiE69X4NT/uVZI3PUHE9bm5M7ePGdZWy951v7Nn6j8v1WWKP3mt6ttnsigx6VN7Vc0VomSSGqW2mGNP1muZPl7LfjNUaKNFtDGVf2fvE9O7VlBS5j333c5p/eeoOqcs1R/hIqDWLJ7TTlksirVT1SI7l8k4Yp+g3jafGcrU1RM6l9th80XOpnlN97bDNY4i4s61B0Si/ipa0uHMl6zqEjlFfCZm/TM8KmzQDjmuTAQ==")),U0=["isol","fina","fin2","fin3","medi","med2","init"],rl={Non_Joining:0,Transparent:6},et="isol",Ji="fina",nl="fin2",s8="fin3",Jr="medi",Qr="med2",$r="init",Me=null,r8=[[[Me,Me,0],[Me,et,2],[Me,et,1],[Me,et,2],[Me,et,1],[Me,et,6]],[[Me,Me,0],[Me,et,2],[Me,et,1],[Me,et,2],[Me,nl,5],[Me,et,6]],[[Me,Me,0],[Me,et,2],[$r,Ji,1],[$r,Ji,3],[$r,Ji,4],[$r,Ji,6]],[[Me,Me,0],[Me,et,2],[Jr,Ji,1],[Jr,Ji,3],[Jr,Ji,4],[Jr,Ji,6]],[[Me,Me,0],[Me,et,2],[Qr,et,1],[Qr,et,2],[Qr,nl,5],[Qr,et,6]],[[Me,Me,0],[Me,et,2],[et,et,1],[et,et,2],[et,nl,5],[et,et,6]],[[Me,Me,0],[Me,et,2],[Me,et,1],[Me,et,2],[Me,s8,5],[Me,et,6]]];class Qi extends qi{static planFeatures(t){t.add(["ccmp","locl"]);for(let i=0;i<U0.length;i++){let a=U0[i];t.addStage(a,!1)}t.addStage("mset")}static assignFeatures(t,i){super.assignFeatures(t,i);let a=-1,s=0,r=[];for(let o=0;o<i.length;o++){let l,c;var n=i[o];let f=n8(n.codePoints[0]);if(f===rl.Transparent){r[o]=Me;continue}[c,l,s]=r8[s][f],c!==Me&&a!==-1&&(r[a]=c),r[o]=l,a=o}for(let o=0;o<i.length;o++){let l;var n=i[o];(l=r[o])&&(n.features[l]=!0)}}}function n8(e){let t=a8.get(e);if(t)return t-1;let i=Mr(e);return i==="Mn"||i==="Me"||i==="Cf"?rl.Transparent:rl.Non_Joining}class o8{reset(t={},i=0){this.options=t,this.flags=t.flags||{},this.markAttachmentType=t.markAttachmentType||0,this.index=i}get cur(){return this.glyphs[this.index]||null}shouldIgnore(t){return this.flags.ignoreMarks&&t.isMark||this.flags.ignoreBaseGlyphs&&t.isBase||this.flags.ignoreLigatures&&t.isLigature||this.markAttachmentType&&t.isMark&&t.markAttachmentType!==this.markAttachmentType}move(t){for(this.index+=t;0<=this.index&&this.index<this.glyphs.length&&this.shouldIgnore(this.glyphs[this.index]);)this.index+=t;return 0>this.index||this.index>=this.glyphs.length?null:this.glyphs[this.index]}next(){return this.move(1)}prev(){return this.move(-1)}peek(t=1){let i=this.index,a=this.increment(t);return this.index=i,a}peekIndex(t=1){let i=this.index;this.increment(t);let a=this.index;return this.index=i,a}increment(t=1){let i=t<0?-1:1;for(t=Math.abs(t);t--;)this.move(i);return this.glyphs[this.index]}constructor(t,i){this.glyphs=t,this.reset(i)}}const l8=["DFLT","dflt","latn"];class en{findScript(t){if(this.table.scriptList==null)return null;Array.isArray(t)||(t=[t]);for(let i of t)for(let a of this.table.scriptList)if(a.tag===i)return a;return null}selectScript(t,i,a){let s=!1,r;if(!this.script||t!==this.scriptTag){if(r=this.findScript(t),r||(r=this.findScript(l8)),!r)return this.scriptTag;this.scriptTag=r.tag,this.script=r.script,this.language=null,this.languageTag=null,s=!0}if((!a||a!==this.direction)&&(this.direction=a||E0(t)),i&&i.length<4&&(i+=" ".repeat(4-i.length)),!i||i!==this.languageTag){this.language=null;for(let n of this.script.langSysRecords)if(n.tag===i){this.language=n.langSys,this.languageTag=n.tag;break}this.language||(this.language=this.script.defaultLangSys,this.languageTag=null),s=!0}if(s&&(this.features={},this.language))for(let n of this.language.featureIndexes){let o=this.table.featureList[n],l=this.substituteFeatureForVariations(n);this.features[o.tag]=l||o.feature}return this.scriptTag}lookupsForFeatures(t=[],i){let a=[];for(let s of t){let r=this.features[s];if(r)for(let n of r.lookupListIndexes)i&&i.indexOf(n)!==-1||a.push({feature:s,index:n,lookup:this.table.lookupList.get(n)})}return a.sort((s,r)=>s.index-r.index),a}substituteFeatureForVariations(t){if(this.variationsIndex===-1)return null;let a=this.table.featureVariations.featureVariationRecords[this.variationsIndex].featureTableSubstitution.substitutions;for(let s of a)if(s.featureIndex===t)return s.alternateFeatureTable;return null}findVariationsIndex(t){let i=this.table.featureVariations;if(!i)return-1;let a=i.featureVariationRecords;for(let s=0;s<a.length;s++){let r=a[s].conditionSet.conditionTable;if(this.variationConditionsMatch(r,t))return s}return-1}variationConditionsMatch(t,i){return t.every(a=>{let s=a.axisIndex<i.length?i[a.axisIndex]:0;return a.filterRangeMinValue<=s&&s<=a.filterRangeMaxValue})}applyFeatures(t,i,a){let s=this.lookupsForFeatures(t);this.applyLookups(s,i,a)}applyLookups(t,i,a){this.glyphs=i,this.positions=a,this.glyphIterator=new o8(i);for(let{feature:s,lookup:r}of t)for(this.currentFeature=s,this.glyphIterator.reset(r.flags);this.glyphIterator.index<i.length;){if(!(s in this.glyphIterator.cur.features)){this.glyphIterator.next();continue}for(let n of r.subTables)if(this.applyLookup(r.lookupType,n))break;this.glyphIterator.next()}}applyLookup(t,i){throw new Error("applyLookup must be implemented by subclasses")}applyLookupList(t){let i=this.glyphIterator.options,a=this.glyphIterator.index;for(let s of t){this.glyphIterator.reset(i,a),this.glyphIterator.increment(s.sequenceIndex);let r=this.table.lookupList.get(s.lookupListIndex);this.glyphIterator.reset(r.flags,this.glyphIterator.index);for(let n of r.subTables)if(this.applyLookup(r.lookupType,n))break}return this.glyphIterator.reset(i,a),!0}coverageIndex(t,i){switch(i==null&&(i=this.glyphIterator.cur.id),t.version){case 1:return t.glyphs.indexOf(i);case 2:for(let a of t.rangeRecords)if(a.start<=i&&i<=a.end)return a.startCoverageIndex+i-a.start;break}return-1}match(t,i,a,s){let r=this.glyphIterator.index,n=this.glyphIterator.increment(t),o=0;for(;o<i.length&&n&&a(i[o],n);)s&&s.push(this.glyphIterator.index),o++,n=this.glyphIterator.next();return this.glyphIterator.index=r,o<i.length?!1:s||!0}sequenceMatches(t,i){return this.match(t,i,(a,s)=>a===s.id)}sequenceMatchIndices(t,i){return this.match(t,i,(a,s)=>this.currentFeature in s.features?a===s.id:!1,[])}coverageSequenceMatches(t,i){return this.match(t,i,(a,s)=>this.coverageIndex(a,s.id)>=0)}getClassID(t,i){switch(i.version){case 1:let a=t-i.startGlyph;if(a>=0&&a<i.classValueArray.length)return i.classValueArray[a];break;case 2:for(let s of i.classRangeRecord)if(s.start<=t&&t<=s.end)return s.class;break}return 0}classSequenceMatches(t,i,a){return this.match(t,i,(s,r)=>s===this.getClassID(r.id,a))}applyContext(t){let i,a;switch(t.version){case 1:if(i=this.coverageIndex(t.coverage),i===-1)return!1;a=t.ruleSets[i];for(let s of a)if(this.sequenceMatches(1,s.input))return this.applyLookupList(s.lookupRecords);break;case 2:if(this.coverageIndex(t.coverage)===-1||(i=this.getClassID(this.glyphIterator.cur.id,t.classDef),i===-1))return!1;a=t.classSet[i];for(let s of a)if(this.classSequenceMatches(1,s.classes,t.classDef))return this.applyLookupList(s.lookupRecords);break;case 3:if(this.coverageSequenceMatches(0,t.coverages))return this.applyLookupList(t.lookupRecords);break}return!1}applyChainingContext(t){let i;switch(t.version){case 1:if(i=this.coverageIndex(t.coverage),i===-1)return!1;let a=t.chainRuleSets[i];for(let r of a)if(this.sequenceMatches(-r.backtrack.length,r.backtrack)&&this.sequenceMatches(1,r.input)&&this.sequenceMatches(1+r.input.length,r.lookahead))return this.applyLookupList(r.lookupRecords);break;case 2:if(this.coverageIndex(t.coverage)===-1)return!1;i=this.getClassID(this.glyphIterator.cur.id,t.inputClassDef);let s=t.chainClassSet[i];if(!s)return!1;for(let r of s)if(this.classSequenceMatches(-r.backtrack.length,r.backtrack,t.backtrackClassDef)&&this.classSequenceMatches(1,r.input,t.inputClassDef)&&this.classSequenceMatches(1+r.input.length,r.lookahead,t.lookaheadClassDef))return this.applyLookupList(r.lookupRecords);break;case 3:if(this.coverageSequenceMatches(-t.backtrackGlyphCount,t.backtrackCoverage)&&this.coverageSequenceMatches(0,t.inputCoverage)&&this.coverageSequenceMatches(t.inputGlyphCount,t.lookaheadCoverage))return this.applyLookupList(t.lookupRecords);break}return!1}constructor(t,i){this.font=t,this.table=i,this.script=null,this.scriptTag=null,this.language=null,this.languageTag=null,this.features={},this.lookups={},this.variationsIndex=t._variationProcessor?this.findVariationsIndex(t._variationProcessor.normalizedCoords):-1,this.selectScript(),this.glyphs=[],this.positions=[],this.ligatureID=1,this.currentFeature=null}}class ri{get id(){return this._id}set id(t){this._id=t,this.substituted=!0;let i=this._font.GDEF;if(i&&i.glyphClassDef){let a=en.prototype.getClassID(t,i.glyphClassDef);this.isBase=a===1,this.isLigature=a===2,this.isMark=a===3,this.markAttachmentType=i.markAttachClassDef?en.prototype.getClassID(t,i.markAttachClassDef):0}else this.isMark=this.codePoints.length>0&&this.codePoints.every(Tu),this.isBase=!this.isMark,this.isLigature=this.codePoints.length>1,this.markAttachmentType=0}copy(){return new ri(this._font,this.id,this.codePoints,this.features)}constructor(t,i,a=[],s){if(this._font=t,this.codePoints=a,this.id=i,this.features={},Array.isArray(s))for(let r=0;r<s.length;r++){let n=s[r];this.features[n]=!0}else typeof s=="object"&&Object.assign(this.features,s);this.ligatureID=null,this.ligatureComponent=null,this.isLigated=!1,this.cursiveAttachment=null,this.markAttachment=null,this.shaperInfo=null,this.substituted=!1,this.isMultiplied=!1}}class Z0 extends qi{static planFeatures(t){t.add(["ljmo","vjmo","tjmo"],!1)}static assignFeatures(t,i){let a=0,s=0;for(;s<i.length;){let r,o=i[s].codePoints[0],l=on(o);switch([r,a]=S8[a][l],r){case Ci:t.font.hasGlyphForCodePoint(o)||(s=Y0(i,s,t.font));break;case ll:s=V8(i,s,t.font);break;case cl:I8(i,s,t.font);break;case fl:s=T8(i,s,t.font);break}s++}}}Wt(Z0,"zeroMarkWidths","NONE");const Ka=44032,G0=55204,c8=G0-Ka+1,tn=4352,an=4449,ga=4519,f8=19,sn=21,Fs=28,u8=tn+f8-1,d8=an+sn-1,h8=ga+Fs-1,W0=9676,p8=e=>4352<=e&&e<=4447||43360<=e&&e<=43388,g8=e=>4448<=e&&e<=4519||55216<=e&&e<=55238,m8=e=>4520<=e&&e<=4607||55243<=e&&e<=55291,y8=e=>12334<=e&&e<=12335,b8=e=>Ka<=e&&e<=G0,w8=e=>e-Ka<c8&&(e-Ka)%Fs===0,v8=e=>tn<=e&&e<=u8,x8=e=>an<=e&&e<=d8,k8=e=>1<=e&&e<=h8,N8=0,A8=1,rn=2,ol=3,nn=4,j0=5,C8=6;function on(e){return p8(e)?A8:g8(e)?rn:m8(e)?ol:w8(e)?nn:b8(e)?j0:y8(e)?C8:N8}const jt=0,Ci=1,ll=2,cl=4,fl=5,S8=[[[jt,0],[jt,1],[jt,0],[jt,0],[Ci,2],[Ci,3],[fl,0]],[[jt,0],[jt,1],[ll,2],[jt,0],[Ci,2],[Ci,3],[fl,0]],[[jt,0],[jt,1],[jt,0],[ll,3],[Ci,2],[Ci,3],[cl,0]],[[jt,0],[jt,1],[jt,0],[jt,0],[Ci,2],[Ci,3],[cl,0]]];function Ps(e,t,i){return new ri(e,e.glyphForCodePoint(t).id,[t],i)}function Y0(e,t,i){let a=e[t],r=a.codePoints[0]-Ka,n=ga+r%Fs;r=r/Fs|0;let o=tn+r/sn|0,l=an+r%sn;if(!i.hasGlyphForCodePoint(o)||!i.hasGlyphForCodePoint(l)||n!==ga&&!i.hasGlyphForCodePoint(n))return t;let c=Ps(i,o,a.features);c.features.ljmo=!0;let f=Ps(i,l,a.features);f.features.vjmo=!0;let u=[c,f];if(n>ga){let h=Ps(i,n,a.features);h.features.tjmo=!0,u.push(h)}return e.splice(t,1,...u),t+u.length-1}function V8(e,t,i){let a=e[t],s=e[t].codePoints[0],r=on(s),n=e[t-1].codePoints[0],o=on(n),l,c,f,u;if(o===nn&&r===ol)l=n,u=a;else{r===rn?(c=e[t-1],f=a):(c=e[t-2],f=e[t-1],u=a);let m=c.codePoints[0],b=f.codePoints[0];v8(m)&&x8(b)&&(l=Ka+((m-tn)*sn+(b-an))*Fs)}let h=u&&u.codePoints[0]||ga;if(l!=null&&(h===ga||k8(h))){let m=l+(h-ga);if(i.hasGlyphForCodePoint(m)){let b=o===rn?3:2;return e.splice(t-b+1,b,Ps(i,m,a.features)),t-b+1}}return c&&(c.features.ljmo=!0),f&&(f.features.vjmo=!0),u&&(u.features.tjmo=!0),o===nn?(Y0(e,t-1,i),t+1):t}function _8(e){switch(on(e)){case nn:case j0:return 1;case rn:return 2;case ol:return 3}}function I8(e,t,i){let a=e[t],s=e[t].codePoints[0];if(i.glyphForCodePoint(s).advanceWidth===0)return;let r=e[t-1].codePoints[0],n=_8(r);return e.splice(t,1),e.splice(t-n,0,a)}function T8(e,t,i){let a=e[t],s=e[t].codePoints[0];if(i.hasGlyphForCodePoint(W0)){let r=Ps(i,W0,a.features),n=i.glyphForCodePoint(s).advanceWidth===0?t:t+1;e.splice(n,0,r),t++}return t}var H0={};H0=JSON.parse('{"stateTable":[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,2,3,4,5,6,7,8,9,0,10,11,11,12,13,14,15,16,17],[0,0,0,18,19,20,21,22,23,0,24,0,0,25,26,0,0,27,0],[0,0,0,28,29,30,31,32,33,0,34,0,0,35,36,0,0,37,0],[0,0,0,38,5,7,7,8,9,0,10,0,0,0,13,0,0,16,0],[0,39,0,0,0,40,41,0,9,0,10,0,0,0,42,0,39,0,0],[0,0,0,0,43,44,44,8,9,0,0,0,0,12,43,0,0,0,0],[0,0,0,0,43,44,44,8,9,0,0,0,0,0,43,0,0,0,0],[0,0,0,45,46,47,48,49,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,50,0,0,51,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,52,0,0,0,0,0,0,0,0],[0,0,0,53,54,55,56,57,58,0,59,0,0,60,61,0,0,62,0],[0,0,0,4,5,7,7,8,9,0,10,0,0,0,13,0,0,16,0],[0,63,64,0,0,40,41,0,9,0,10,0,0,0,42,0,63,0,0],[0,2,3,4,5,6,7,8,9,0,10,11,11,12,13,0,2,16,0],[0,0,0,18,65,20,21,22,23,0,24,0,0,25,26,0,0,27,0],[0,0,0,0,66,67,67,8,9,0,10,0,0,0,68,0,0,0,0],[0,0,0,69,0,70,70,0,71,0,72,0,0,0,0,0,0,0,0],[0,0,0,73,19,74,74,22,23,0,24,0,0,0,26,0,0,27,0],[0,75,0,0,0,76,77,0,23,0,24,0,0,0,78,0,75,0,0],[0,0,0,0,79,80,80,22,23,0,0,0,0,25,79,0,0,0,0],[0,0,0,18,19,20,74,22,23,0,24,0,0,25,26,0,0,27,0],[0,0,0,81,82,83,84,85,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,86,0,0,87,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,88,0,0,0,0,0,0,0,0],[0,0,0,18,19,74,74,22,23,0,24,0,0,0,26,0,0,27,0],[0,89,90,0,0,76,77,0,23,0,24,0,0,0,78,0,89,0,0],[0,0,0,0,91,92,92,22,23,0,24,0,0,0,93,0,0,0,0],[0,0,0,94,29,95,31,32,33,0,34,0,0,0,36,0,0,37,0],[0,96,0,0,0,97,98,0,33,0,34,0,0,0,99,0,96,0,0],[0,0,0,0,100,101,101,32,33,0,0,0,0,35,100,0,0,0,0],[0,0,0,0,100,101,101,32,33,0,0,0,0,0,100,0,0,0,0],[0,0,0,102,103,104,105,106,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,107,0,0,108,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,109,0,0,0,0,0,0,0,0],[0,0,0,28,29,95,31,32,33,0,34,0,0,0,36,0,0,37,0],[0,110,111,0,0,97,98,0,33,0,34,0,0,0,99,0,110,0,0],[0,0,0,0,112,113,113,32,33,0,34,0,0,0,114,0,0,0,0],[0,0,0,0,5,7,7,8,9,0,10,0,0,0,13,0,0,16,0],[0,0,0,115,116,117,118,8,9,0,10,0,0,119,120,0,0,16,0],[0,0,0,0,0,121,121,0,9,0,10,0,0,0,42,0,0,0,0],[0,39,0,122,0,123,123,8,9,0,10,0,0,0,42,0,39,0,0],[0,124,64,0,0,0,0,0,0,0,0,0,0,0,0,0,124,0,0],[0,39,0,0,0,121,125,0,9,0,10,0,0,0,42,0,39,0,0],[0,0,0,0,0,126,126,8,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,46,47,48,49,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,47,47,49,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,127,127,49,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,128,127,127,49,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,129,130,131,132,133,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,50,0,0,0,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,134,0,0,0,0,0,0,0,0],[0,0,0,135,54,56,56,57,58,0,59,0,0,0,61,0,0,62,0],[0,136,0,0,0,137,138,0,58,0,59,0,0,0,139,0,136,0,0],[0,0,0,0,140,141,141,57,58,0,0,0,0,60,140,0,0,0,0],[0,0,0,0,140,141,141,57,58,0,0,0,0,0,140,0,0,0,0],[0,0,0,142,143,144,145,146,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,147,0,0,148,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,149,0,0,0,0,0,0,0,0],[0,0,0,53,54,56,56,57,58,0,59,0,0,0,61,0,0,62,0],[0,150,151,0,0,137,138,0,58,0,59,0,0,0,139,0,150,0,0],[0,0,0,0,152,153,153,57,58,0,59,0,0,0,154,0,0,0,0],[0,0,0,155,116,156,157,8,9,0,10,0,0,158,120,0,0,16,0],[0,0,0,0,0,121,121,0,9,0,10,0,0,0,0,0,0,0,0],[0,75,3,4,5,159,160,8,161,0,162,0,11,12,163,0,75,16,0],[0,0,0,0,0,40,164,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,165,44,44,8,9,0,0,0,0,0,165,0,0,0,0],[0,124,64,0,0,40,164,0,9,0,10,0,0,0,42,0,124,0,0],[0,0,0,0,0,70,70,0,71,0,72,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,71,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,166,0,0,167,0,72,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,168,0,0,0,0,0,0,0,0],[0,0,0,0,19,74,74,22,23,0,24,0,0,0,26,0,0,27,0],[0,0,0,0,79,80,80,22,23,0,0,0,0,0,79,0,0,0,0],[0,0,0,169,170,171,172,22,23,0,24,0,0,173,174,0,0,27,0],[0,0,0,0,0,175,175,0,23,0,24,0,0,0,78,0,0,0,0],[0,75,0,176,0,177,177,22,23,0,24,0,0,0,78,0,75,0,0],[0,178,90,0,0,0,0,0,0,0,0,0,0,0,0,0,178,0,0],[0,75,0,0,0,175,179,0,23,0,24,0,0,0,78,0,75,0,0],[0,0,0,0,0,180,180,22,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,82,83,84,85,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,83,83,85,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,181,181,85,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,182,181,181,85,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,183,184,185,186,187,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,86,0,0,0,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,188,0,0,0,0,0,0,0,0],[0,0,0,189,170,190,191,22,23,0,24,0,0,192,174,0,0,27,0],[0,0,0,0,0,175,175,0,23,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,76,193,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,194,80,80,22,23,0,0,0,0,0,194,0,0,0,0],[0,178,90,0,0,76,193,0,23,0,24,0,0,0,78,0,178,0,0],[0,0,0,0,29,95,31,32,33,0,34,0,0,0,36,0,0,37,0],[0,0,0,0,100,101,101,32,33,0,0,0,0,0,100,0,0,0,0],[0,0,0,195,196,197,198,32,33,0,34,0,0,199,200,0,0,37,0],[0,0,0,0,0,201,201,0,33,0,34,0,0,0,99,0,0,0,0],[0,96,0,202,0,203,203,32,33,0,34,0,0,0,99,0,96,0,0],[0,204,111,0,0,0,0,0,0,0,0,0,0,0,0,0,204,0,0],[0,96,0,0,0,201,205,0,33,0,34,0,0,0,99,0,96,0,0],[0,0,0,0,0,206,206,32,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,103,104,105,106,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,104,104,106,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,207,207,106,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,208,207,207,106,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,209,210,211,212,213,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,107,0,0,0,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,214,0,0,0,0,0,0,0,0],[0,0,0,215,196,216,217,32,33,0,34,0,0,218,200,0,0,37,0],[0,0,0,0,0,201,201,0,33,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,97,219,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,220,101,101,32,33,0,0,0,0,0,220,0,0,0,0],[0,204,111,0,0,97,219,0,33,0,34,0,0,0,99,0,204,0,0],[0,0,0,221,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,223,0,0,0,40,224,0,9,0,10,0,0,0,42,0,223,0,0],[0,0,0,0,225,44,44,8,9,0,0,0,0,119,225,0,0,0,0],[0,0,0,115,116,117,222,8,9,0,10,0,0,119,120,0,0,16,0],[0,0,0,115,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,226,64,0,0,40,224,0,9,0,10,0,0,0,42,0,226,0,0],[0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0],[0,39,0,0,0,121,121,0,9,0,10,0,0,0,42,0,39,0,0],[0,0,0,0,0,44,44,8,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,227,0,228,229,0,9,0,10,0,0,230,0,0,0,0,0],[0,39,0,122,0,121,121,0,9,0,10,0,0,0,42,0,39,0,0],[0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,231,231,49,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,232,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,130,131,132,133,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,131,131,133,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,233,233,133,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,234,233,233,133,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,235,236,237,238,239,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,54,56,56,57,58,0,59,0,0,0,61,0,0,62,0],[0,0,0,240,241,242,243,57,58,0,59,0,0,244,245,0,0,62,0],[0,0,0,0,0,246,246,0,58,0,59,0,0,0,139,0,0,0,0],[0,136,0,247,0,248,248,57,58,0,59,0,0,0,139,0,136,0,0],[0,249,151,0,0,0,0,0,0,0,0,0,0,0,0,0,249,0,0],[0,136,0,0,0,246,250,0,58,0,59,0,0,0,139,0,136,0,0],[0,0,0,0,0,251,251,57,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,143,144,145,146,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,144,144,146,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,252,252,146,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,253,252,252,146,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,254,255,256,257,258,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,147,0,0,0,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,259,0,0,0,0,0,0,0,0],[0,0,0,260,241,261,262,57,58,0,59,0,0,263,245,0,0,62,0],[0,0,0,0,0,246,246,0,58,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,137,264,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,265,141,141,57,58,0,0,0,0,0,265,0,0,0,0],[0,249,151,0,0,137,264,0,58,0,59,0,0,0,139,0,249,0,0],[0,0,0,221,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,9,0,0,0,0,158,225,0,0,0,0],[0,0,0,155,116,156,222,8,9,0,10,0,0,158,120,0,0,16,0],[0,0,0,155,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,0,0,0,43,266,266,8,161,0,24,0,0,12,267,0,0,0,0],[0,75,0,176,43,268,268,269,161,0,24,0,0,0,267,0,75,0,0],[0,0,0,0,0,270,0,0,271,0,162,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,272,0,0,0,0,0,0,0,0],[0,273,274,0,0,40,41,0,9,0,10,0,0,0,42,0,273,0,0],[0,0,0,40,0,123,123,8,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,121,275,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,72,0,0,0,0,0,0,0,0],[0,0,0,0,0,166,0,0,0,0,72,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,276,0,0,0,0,0,0,0,0],[0,0,0,277,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,279,0,0,0,76,280,0,23,0,24,0,0,0,78,0,279,0,0],[0,0,0,0,281,80,80,22,23,0,0,0,0,173,281,0,0,0,0],[0,0,0,169,170,171,278,22,23,0,24,0,0,173,174,0,0,27,0],[0,0,0,169,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,282,90,0,0,76,280,0,23,0,24,0,0,0,78,0,282,0,0],[0,0,0,0,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0],[0,75,0,0,0,175,175,0,23,0,24,0,0,0,78,0,75,0,0],[0,0,0,0,0,80,80,22,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,283,0,284,285,0,23,0,24,0,0,286,0,0,0,0,0],[0,75,0,176,0,175,175,0,23,0,24,0,0,0,78,0,75,0,0],[0,0,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,287,287,85,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,288,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,184,185,186,187,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,185,185,187,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,289,289,187,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,290,289,289,187,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,291,292,293,294,295,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,277,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,0,0,0,281,80,80,22,23,0,0,0,0,192,281,0,0,0,0],[0,0,0,189,170,190,278,22,23,0,24,0,0,192,174,0,0,27,0],[0,0,0,189,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,0,0,76,0,177,177,22,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,175,296,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,297,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,299,0,0,0,97,300,0,33,0,34,0,0,0,99,0,299,0,0],[0,0,0,0,301,101,101,32,33,0,0,0,0,199,301,0,0,0,0],[0,0,0,195,196,197,298,32,33,0,34,0,0,199,200,0,0,37,0],[0,0,0,195,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,302,111,0,0,97,300,0,33,0,34,0,0,0,99,0,302,0,0],[0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0],[0,96,0,0,0,201,201,0,33,0,34,0,0,0,99,0,96,0,0],[0,0,0,0,0,101,101,32,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,303,0,304,305,0,33,0,34,0,0,306,0,0,0,0,0],[0,96,0,202,0,201,201,0,33,0,34,0,0,0,99,0,96,0,0],[0,0,0,0,0,0,0,32,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,307,307,106,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,308,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,210,211,212,213,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,211,211,213,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,309,309,213,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,310,309,309,213,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,311,312,313,314,315,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,297,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,0,0,0,301,101,101,32,33,0,0,0,0,218,301,0,0,0,0],[0,0,0,215,196,216,298,32,33,0,34,0,0,218,200,0,0,37,0],[0,0,0,215,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,0,0,97,0,203,203,32,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,201,316,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,116,222,222,8,9,0,10,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,9,0,0,0,0,0,225,0,0,0,0],[0,0,0,317,318,319,320,8,9,0,10,0,0,321,322,0,0,16,0],[0,223,0,323,0,123,123,8,9,0,10,0,0,0,42,0,223,0,0],[0,223,0,0,0,121,324,0,9,0,10,0,0,0,42,0,223,0,0],[0,0,0,325,318,326,327,8,9,0,10,0,0,328,322,0,0,16,0],[0,0,0,64,0,121,121,0,9,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,9,0,0,0,0,230,0,0,0,0,0],[0,0,0,227,0,228,121,0,9,0,10,0,0,230,0,0,0,0,0],[0,0,0,227,0,121,121,0,9,0,10,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,46,0,0],[0,0,0,0,0,329,329,133,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,330,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,236,237,238,239,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,237,237,239,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,331,331,239,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,332,331,331,239,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,333,40,121,334,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,335,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,337,0,0,0,137,338,0,58,0,59,0,0,0,139,0,337,0,0],[0,0,0,0,339,141,141,57,58,0,0,0,0,244,339,0,0,0,0],[0,0,0,240,241,242,336,57,58,0,59,0,0,244,245,0,0,62,0],[0,0,0,240,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,340,151,0,0,137,338,0,58,0,59,0,0,0,139,0,340,0,0],[0,0,0,0,0,0,0,0,58,0,0,0,0,0,0,0,0,0,0],[0,136,0,0,0,246,246,0,58,0,59,0,0,0,139,0,136,0,0],[0,0,0,0,0,141,141,57,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,341,0,342,343,0,58,0,59,0,0,344,0,0,0,0,0],[0,136,0,247,0,246,246,0,58,0,59,0,0,0,139,0,136,0,0],[0,0,0,0,0,0,0,57,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,345,345,146,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,346,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,255,256,257,258,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,256,256,258,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,347,347,258,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,348,347,347,258,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,349,350,351,352,353,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,335,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,0,0,0,339,141,141,57,58,0,0,0,0,263,339,0,0,0,0],[0,0,0,260,241,261,336,57,58,0,59,0,0,263,245,0,0,62,0],[0,0,0,260,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,0,0,137,0,248,248,57,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,246,354,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,126,126,8,23,0,0,0,0,0,0,0,0,0,0],[0,355,90,0,0,121,125,0,9,0,10,0,0,0,42,0,355,0,0],[0,0,0,0,0,356,356,269,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,357,358,359,360,361,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,162,0,0,0,0,0,0,0,0],[0,0,0,0,0,270,0,0,0,0,162,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,363,0,0,0,0,0,0,0,0],[0,0,0,364,116,365,366,8,161,0,162,0,0,367,120,0,0,16,0],[0,0,0,0,0,368,368,0,161,0,162,0,0,0,0,0,0,0,0],[0,0,0,40,0,121,121,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,170,278,278,22,23,0,24,0,0,0,174,0,0,27,0],[0,0,0,0,281,80,80,22,23,0,0,0,0,0,281,0,0,0,0],[0,0,0,369,370,371,372,22,23,0,24,0,0,373,374,0,0,27,0],[0,279,0,375,0,177,177,22,23,0,24,0,0,0,78,0,279,0,0],[0,279,0,0,0,175,376,0,23,0,24,0,0,0,78,0,279,0,0],[0,0,0,377,370,378,379,22,23,0,24,0,0,380,374,0,0,27,0],[0,0,0,90,0,175,175,0,23,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,23,0,0,0,0,286,0,0,0,0,0],[0,0,0,283,0,284,175,0,23,0,24,0,0,286,0,0,0,0,0],[0,0,0,283,0,175,175,0,23,0,24,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,85,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,0,0],[0,0,0,0,0,381,381,187,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,382,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,292,293,294,295,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,293,293,295,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,0,383,383,295,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,384,383,383,295,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,385,76,175,386,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,76,0,175,175,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,196,298,298,32,33,0,34,0,0,0,200,0,0,37,0],[0,0,0,0,301,101,101,32,33,0,0,0,0,0,301,0,0,0,0],[0,0,0,387,388,389,390,32,33,0,34,0,0,391,392,0,0,37,0],[0,299,0,393,0,203,203,32,33,0,34,0,0,0,99,0,299,0,0],[0,299,0,0,0,201,394,0,33,0,34,0,0,0,99,0,299,0,0],[0,0,0,395,388,396,397,32,33,0,34,0,0,398,392,0,0,37,0],[0,0,0,111,0,201,201,0,33,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,33,0,0,0,0,306,0,0,0,0,0],[0,0,0,303,0,304,201,0,33,0,34,0,0,306,0,0,0,0,0],[0,0,0,303,0,201,201,0,33,0,34,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,106,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0],[0,0,0,0,0,399,399,213,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,400,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,312,313,314,315,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,313,313,315,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,0,401,401,315,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,402,401,401,315,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,403,97,201,404,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,97,0,201,201,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,405,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,407,0,0,0,40,408,0,9,0,10,0,0,0,42,0,407,0,0],[0,0,0,0,409,44,44,8,9,0,0,0,0,321,409,0,0,0,0],[0,0,0,317,318,319,406,8,9,0,10,0,0,321,322,0,0,16,0],[0,0,0,317,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,410,64,0,0,40,408,0,9,0,10,0,0,0,42,0,410,0,0],[0,223,0,0,0,121,121,0,9,0,10,0,0,0,42,0,223,0,0],[0,223,0,323,0,121,121,0,9,0,10,0,0,0,42,0,223,0,0],[0,0,0,405,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,0,0,0,409,44,44,8,9,0,0,0,0,328,409,0,0,0,0],[0,0,0,325,318,326,406,8,9,0,10,0,0,328,322,0,0,16,0],[0,0,0,325,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,0,0,0,0,0,0,133,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,130,0,0],[0,0,0,0,0,411,411,239,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,412,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,40,121,334,0,9,0,10,0,0,0,42,0,0,0,0],[0,0,0,0,413,0,0,0,9,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,241,336,336,57,58,0,59,0,0,0,245,0,0,62,0],[0,0,0,0,339,141,141,57,58,0,0,0,0,0,339,0,0,0,0],[0,0,0,414,415,416,417,57,58,0,59,0,0,418,419,0,0,62,0],[0,337,0,420,0,248,248,57,58,0,59,0,0,0,139,0,337,0,0],[0,337,0,0,0,246,421,0,58,0,59,0,0,0,139,0,337,0,0],[0,0,0,422,415,423,424,57,58,0,59,0,0,425,419,0,0,62,0],[0,0,0,151,0,246,246,0,58,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,58,0,0,0,0,344,0,0,0,0,0],[0,0,0,341,0,342,246,0,58,0,59,0,0,344,0,0,0,0,0],[0,0,0,341,0,246,246,0,58,0,59,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,146,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,143,0,0],[0,0,0,0,0,426,426,258,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,427,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,350,351,352,353,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,351,351,353,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,0,428,428,353,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,429,428,428,353,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,430,137,246,431,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,137,0,246,246,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,432,116,433,434,8,161,0,162,0,0,435,120,0,0,16,0],[0,0,0,0,0,180,180,269,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,358,359,360,361,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,359,359,361,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,436,436,361,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,437,436,436,361,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,438,439,440,441,442,161,0,162,0,0,0,362,0,0,0,0],[0,443,274,0,0,0,0,0,0,0,0,0,0,0,0,0,443,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,444,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,161,0,0,0,0,367,225,0,0,0,0],[0,0,0,364,116,365,445,8,161,0,162,0,0,367,120,0,0,16,0],[0,0,0,364,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,0,0,0,0,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,446,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,448,0,0,0,76,449,0,23,0,24,0,0,0,78,0,448,0,0],[0,0,0,0,450,80,80,22,23,0,0,0,0,373,450,0,0,0,0],[0,0,0,369,370,371,447,22,23,0,24,0,0,373,374,0,0,27,0],[0,0,0,369,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,451,90,0,0,76,449,0,23,0,24,0,0,0,78,0,451,0,0],[0,279,0,0,0,175,175,0,23,0,24,0,0,0,78,0,279,0,0],[0,279,0,375,0,175,175,0,23,0,24,0,0,0,78,0,279,0,0],[0,0,0,446,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,0,0,0,450,80,80,22,23,0,0,0,0,380,450,0,0,0,0],[0,0,0,377,370,378,447,22,23,0,24,0,0,380,374,0,0,27,0],[0,0,0,377,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,0,0,0,0,0,0,187,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,184,0,0],[0,0,0,0,0,452,452,295,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,453,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,76,175,386,0,23,0,24,0,0,0,78,0,0,0,0],[0,0,0,0,454,0,0,0,23,0,0,0,0,0,0,0,0,0,0],[0,0,0,455,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,457,0,0,0,97,458,0,33,0,34,0,0,0,99,0,457,0,0],[0,0,0,0,459,101,101,32,33,0,0,0,0,391,459,0,0,0,0],[0,0,0,387,388,389,456,32,33,0,34,0,0,391,392,0,0,37,0],[0,0,0,387,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,460,111,0,0,97,458,0,33,0,34,0,0,0,99,0,460,0,0],[0,299,0,0,0,201,201,0,33,0,34,0,0,0,99,0,299,0,0],[0,299,0,393,0,201,201,0,33,0,34,0,0,0,99,0,299,0,0],[0,0,0,455,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,0,0,0,459,101,101,32,33,0,0,0,0,398,459,0,0,0,0],[0,0,0,395,388,396,456,32,33,0,34,0,0,398,392,0,0,37,0],[0,0,0,395,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,0,0,0,0,0,0,213,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,210,0,0],[0,0,0,0,0,461,461,315,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,462,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,97,201,404,0,33,0,34,0,0,0,99,0,0,0,0],[0,0,0,0,463,0,0,0,33,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,318,406,406,8,9,0,10,0,0,0,322,0,0,16,0],[0,0,0,0,409,44,44,8,9,0,0,0,0,0,409,0,0,0,0],[0,0,0,464,465,466,467,8,9,0,10,0,0,468,469,0,0,16,0],[0,407,0,470,0,123,123,8,9,0,10,0,0,0,42,0,407,0,0],[0,407,0,0,0,121,471,0,9,0,10,0,0,0,42,0,407,0,0],[0,0,0,472,465,473,474,8,9,0,10,0,0,475,469,0,0,16,0],[0,0,0,0,0,0,0,239,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,236,0,0],[0,0,0,0,0,0,476,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,477,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,479,0,0,0,137,480,0,58,0,59,0,0,0,139,0,479,0,0],[0,0,0,0,481,141,141,57,58,0,0,0,0,418,481,0,0,0,0],[0,0,0,414,415,416,478,57,58,0,59,0,0,418,419,0,0,62,0],[0,0,0,414,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,482,151,0,0,137,480,0,58,0,59,0,0,0,139,0,482,0,0],[0,337,0,0,0,246,246,0,58,0,59,0,0,0,139,0,337,0,0],[0,337,0,420,0,246,246,0,58,0,59,0,0,0,139,0,337,0,0],[0,0,0,477,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,0,0,0,481,141,141,57,58,0,0,0,0,425,481,0,0,0,0],[0,0,0,422,415,423,478,57,58,0,59,0,0,425,419,0,0,62,0],[0,0,0,422,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,0,0,0,0,0,0,258,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0],[0,0,0,0,0,483,483,353,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,484,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,137,246,431,0,58,0,59,0,0,0,139,0,0,0,0],[0,0,0,0,485,0,0,0,58,0,0,0,0,0,0,0,0,0,0],[0,0,0,444,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,161,0,0,0,0,435,225,0,0,0,0],[0,0,0,432,116,433,445,8,161,0,162,0,0,435,120,0,0,16,0],[0,0,0,432,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,0,486,486,361,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,487,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,439,440,441,442,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,440,440,442,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,488,488,442,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,489,488,488,442,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,490,491,492,493,494,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,495,0,496,497,0,161,0,162,0,0,498,0,0,0,0,0],[0,0,0,0,116,445,445,8,161,0,162,0,0,0,120,0,0,16,0],[0,0,0,0,225,44,44,8,161,0,0,0,0,0,225,0,0,0,0],[0,0,0,0,370,447,447,22,23,0,24,0,0,0,374,0,0,27,0],[0,0,0,0,450,80,80,22,23,0,0,0,0,0,450,0,0,0,0],[0,0,0,499,500,501,502,22,23,0,24,0,0,503,504,0,0,27,0],[0,448,0,505,0,177,177,22,23,0,24,0,0,0,78,0,448,0,0],[0,448,0,0,0,175,506,0,23,0,24,0,0,0,78,0,448,0,0],[0,0,0,507,500,508,509,22,23,0,24,0,0,510,504,0,0,27,0],[0,0,0,0,0,0,0,295,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,292,0,0],[0,0,0,0,0,0,511,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,388,456,456,32,33,0,34,0,0,0,392,0,0,37,0],[0,0,0,0,459,101,101,32,33,0,0,0,0,0,459,0,0,0,0],[0,0,0,512,513,514,515,32,33,0,34,0,0,516,517,0,0,37,0],[0,457,0,518,0,203,203,32,33,0,34,0,0,0,99,0,457,0,0],[0,457,0,0,0,201,519,0,33,0,34,0,0,0,99,0,457,0,0],[0,0,0,520,513,521,522,32,33,0,34,0,0,523,517,0,0,37,0],[0,0,0,0,0,0,0,315,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,312,0,0],[0,0,0,0,0,0,524,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,525,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,527,0,0,0,40,528,0,9,0,10,0,0,0,42,0,527,0,0],[0,0,0,0,529,44,44,8,9,0,0,0,0,468,529,0,0,0,0],[0,0,0,464,465,466,526,8,9,0,10,0,0,468,469,0,0,16,0],[0,0,0,464,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,530,64,0,0,40,528,0,9,0,10,0,0,0,42,0,530,0,0],[0,407,0,0,0,121,121,0,9,0,10,0,0,0,42,0,407,0,0],[0,407,0,470,0,121,121,0,9,0,10,0,0,0,42,0,407,0,0],[0,0,0,525,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,0,0,0,529,44,44,8,9,0,0,0,0,475,529,0,0,0,0],[0,0,0,472,465,473,526,8,9,0,10,0,0,475,469,0,0,16,0],[0,0,0,472,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,0,0],[0,0,0,0,415,478,478,57,58,0,59,0,0,0,419,0,0,62,0],[0,0,0,0,481,141,141,57,58,0,0,0,0,0,481,0,0,0,0],[0,0,0,531,532,533,534,57,58,0,59,0,0,535,536,0,0,62,0],[0,479,0,537,0,248,248,57,58,0,59,0,0,0,139,0,479,0,0],[0,479,0,0,0,246,538,0,58,0,59,0,0,0,139,0,479,0,0],[0,0,0,539,532,540,541,57,58,0,59,0,0,542,536,0,0,62,0],[0,0,0,0,0,0,0,353,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,350,0,0],[0,0,0,0,0,0,543,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,361,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,358,0,0],[0,0,0,0,0,544,544,442,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,545,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,491,492,493,494,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,492,492,494,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,546,546,494,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,547,546,546,494,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,548,549,368,550,0,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,274,0,368,368,0,161,0,162,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,161,0,0,0,0,498,0,0,0,0,0],[0,0,0,495,0,496,368,0,161,0,162,0,0,498,0,0,0,0,0],[0,0,0,495,0,368,368,0,161,0,162,0,0,0,0,0,0,0,0],[0,0,0,551,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,553,0,0,0,76,554,0,23,0,24,0,0,0,78,0,553,0,0],[0,0,0,0,555,80,80,22,23,0,0,0,0,503,555,0,0,0,0],[0,0,0,499,500,501,552,22,23,0,24,0,0,503,504,0,0,27,0],[0,0,0,499,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,556,90,0,0,76,554,0,23,0,24,0,0,0,78,0,556,0,0],[0,448,0,0,0,175,175,0,23,0,24,0,0,0,78,0,448,0,0],[0,448,0,505,0,175,175,0,23,0,24,0,0,0,78,0,448,0,0],[0,0,0,551,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,0,0,0,555,80,80,22,23,0,0,0,0,510,555,0,0,0,0],[0,0,0,507,500,508,552,22,23,0,24,0,0,510,504,0,0,27,0],[0,0,0,507,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,76,0,0],[0,0,0,557,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,559,0,0,0,97,560,0,33,0,34,0,0,0,99,0,559,0,0],[0,0,0,0,561,101,101,32,33,0,0,0,0,516,561,0,0,0,0],[0,0,0,512,513,514,558,32,33,0,34,0,0,516,517,0,0,37,0],[0,0,0,512,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,562,111,0,0,97,560,0,33,0,34,0,0,0,99,0,562,0,0],[0,457,0,0,0,201,201,0,33,0,34,0,0,0,99,0,457,0,0],[0,457,0,518,0,201,201,0,33,0,34,0,0,0,99,0,457,0,0],[0,0,0,557,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,0,0,0,561,101,101,32,33,0,0,0,0,523,561,0,0,0,0],[0,0,0,520,513,521,558,32,33,0,34,0,0,523,517,0,0,37,0],[0,0,0,520,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,97,0,0],[0,0,0,0,465,526,526,8,9,0,10,0,0,0,469,0,0,16,0],[0,0,0,0,529,44,44,8,9,0,0,0,0,0,529,0,0,0,0],[0,0,0,563,66,564,565,8,9,0,10,0,0,566,68,0,0,16,0],[0,527,0,567,0,123,123,8,9,0,10,0,0,0,42,0,527,0,0],[0,527,0,0,0,121,568,0,9,0,10,0,0,0,42,0,527,0,0],[0,0,0,569,66,570,571,8,9,0,10,0,0,572,68,0,0,16,0],[0,0,0,573,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,575,0,0,0,137,576,0,58,0,59,0,0,0,139,0,575,0,0],[0,0,0,0,577,141,141,57,58,0,0,0,0,535,577,0,0,0,0],[0,0,0,531,532,533,574,57,58,0,59,0,0,535,536,0,0,62,0],[0,0,0,531,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,578,151,0,0,137,576,0,58,0,59,0,0,0,139,0,578,0,0],[0,479,0,0,0,246,246,0,58,0,59,0,0,0,139,0,479,0,0],[0,479,0,537,0,246,246,0,58,0,59,0,0,0,139,0,479,0,0],[0,0,0,573,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,0,0,0,577,141,141,57,58,0,0,0,0,542,577,0,0,0,0],[0,0,0,539,532,540,574,57,58,0,59,0,0,542,536,0,0,62,0],[0,0,0,539,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,137,0,0],[0,0,0,0,0,0,0,442,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,439,0,0],[0,0,0,0,0,579,579,494,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,580,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,549,368,550,0,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,0,368,368,0,161,0,162,0,0,0,362,0,0,0,0],[0,0,0,0,581,0,0,0,161,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,500,552,552,22,23,0,24,0,0,0,504,0,0,27,0],[0,0,0,0,555,80,80,22,23,0,0,0,0,0,555,0,0,0,0],[0,0,0,582,91,583,584,22,23,0,24,0,0,585,93,0,0,27,0],[0,553,0,586,0,177,177,22,23,0,24,0,0,0,78,0,553,0,0],[0,553,0,0,0,175,587,0,23,0,24,0,0,0,78,0,553,0,0],[0,0,0,588,91,589,590,22,23,0,24,0,0,591,93,0,0,27,0],[0,0,0,0,513,558,558,32,33,0,34,0,0,0,517,0,0,37,0],[0,0,0,0,561,101,101,32,33,0,0,0,0,0,561,0,0,0,0],[0,0,0,592,112,593,594,32,33,0,34,0,0,595,114,0,0,37,0],[0,559,0,596,0,203,203,32,33,0,34,0,0,0,99,0,559,0,0],[0,559,0,0,0,201,597,0,33,0,34,0,0,0,99,0,559,0,0],[0,0,0,598,112,599,600,32,33,0,34,0,0,601,114,0,0,37,0],[0,0,0,602,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,0,0,0,165,44,44,8,9,0,0,0,0,566,165,0,0,0,0],[0,0,0,563,66,564,67,8,9,0,10,0,0,566,68,0,0,16,0],[0,0,0,563,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,527,0,0,0,121,121,0,9,0,10,0,0,0,42,0,527,0,0],[0,527,0,567,0,121,121,0,9,0,10,0,0,0,42,0,527,0,0],[0,0,0,602,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,0,0,0,165,44,44,8,9,0,0,0,0,572,165,0,0,0,0],[0,0,0,569,66,570,67,8,9,0,10,0,0,572,68,0,0,16,0],[0,0,0,569,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,0,0,0,532,574,574,57,58,0,59,0,0,0,536,0,0,62,0],[0,0,0,0,577,141,141,57,58,0,0,0,0,0,577,0,0,0,0],[0,0,0,603,152,604,605,57,58,0,59,0,0,606,154,0,0,62,0],[0,575,0,607,0,248,248,57,58,0,59,0,0,0,139,0,575,0,0],[0,575,0,0,0,246,608,0,58,0,59,0,0,0,139,0,575,0,0],[0,0,0,609,152,610,611,57,58,0,59,0,0,612,154,0,0,62,0],[0,0,0,0,0,0,0,494,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,491,0,0],[0,0,0,0,0,0,613,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,614,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,0,0,0,194,80,80,22,23,0,0,0,0,585,194,0,0,0,0],[0,0,0,582,91,583,92,22,23,0,24,0,0,585,93,0,0,27,0],[0,0,0,582,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,553,0,0,0,175,175,0,23,0,24,0,0,0,78,0,553,0,0],[0,553,0,586,0,175,175,0,23,0,24,0,0,0,78,0,553,0,0],[0,0,0,614,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,0,0,0,194,80,80,22,23,0,0,0,0,591,194,0,0,0,0],[0,0,0,588,91,589,92,22,23,0,24,0,0,591,93,0,0,27,0],[0,0,0,588,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,0,0,615,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,0,0,0,220,101,101,32,33,0,0,0,0,595,220,0,0,0,0],[0,0,0,592,112,593,113,32,33,0,34,0,0,595,114,0,0,37,0],[0,0,0,592,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,559,0,0,0,201,201,0,33,0,34,0,0,0,99,0,559,0,0],[0,559,0,596,0,201,201,0,33,0,34,0,0,0,99,0,559,0,0],[0,0,0,615,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,0,0,0,220,101,101,32,33,0,0,0,0,601,220,0,0,0,0],[0,0,0,598,112,599,113,32,33,0,34,0,0,601,114,0,0,37,0],[0,0,0,598,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,0,0,0,66,67,67,8,9,0,10,0,0,0,68,0,0,16,0],[0,0,0,616,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0],[0,0,0,0,265,141,141,57,58,0,0,0,0,606,265,0,0,0,0],[0,0,0,603,152,604,153,57,58,0,59,0,0,606,154,0,0,62,0],[0,0,0,603,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0],[0,575,0,0,0,246,246,0,58,0,59,0,0,0,139,0,575,0,0],[0,575,0,607,0,246,246,0,58,0,59,0,0,0,139,0,575,0,0],[0,0,0,616,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0],[0,0,0,0,265,141,141,57,58,0,0,0,0,612,265,0,0,0,0],[0,0,0,609,152,610,153,57,58,0,59,0,0,612,154,0,0,62,0],[0,0,0,609,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,549,0,0],[0,0,0,0,91,92,92,22,23,0,24,0,0,0,93,0,0,27,0],[0,0,0,0,112,113,113,32,33,0,34,0,0,0,114,0,0,37,0],[0,0,0,0,152,153,153,57,58,0,59,0,0,0,154,0,0,62,0]],"accepting":[false,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,false,true,false,true,true,false,false,true,true,true,true,true,true,false,false,true,true,true,true,true,true,true,true,true,true,false,true,true,false,true,true,true,false,true,true,true,false,true,false,true,true,false,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,false,true,false,true,true,false,false,true,true,true,true,true,true,true,false,true,true,true,false,true,true,true,false,true,false,true,true,false,false,false,true,true,false,false,true,true,true,true,true,true,false,true,false,true,true,false,false,true,true,true,true,true,true,true,false,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,false,true,false,true,true,false,false,false,true,true,false,false,true,true,true,false,true,true,true,true,true,true,false,true,true,true,false,true,false,true,true,false,false,false,true,true,false,false,true,true,true,false,true,true,true,true,true,false,true,true,true,true,true,false,true,true,false,false,false,false,true,true,false,false,true,true,true,false,true,true,true,false,true,false,true,true,false,false,false,true,true,false,false,true,true,true,false,true,true,true,true,false,true,false,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,false,true,true,false,false,false,false,true,true,false,false,true,true,true,false,true,true,true,true,true,false,true,true,false,false,false,false,true,true,false,false,true,true,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,true,false,true,false,true,true,true,true,true,false,true,true,false,false,false,false,true,true,false,false,true,true,true,false,true,true,false,false,true,false,true,true,false,true,true,false,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,true,false,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,true,false,true,false,true,true,true,true,false,false,false,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,true,false,true,false,true,true,false,false,true,true,false,false,true,true,true,false,true,false,true,true,true,true,false,false,false,true,false,true,true,true,true,false,false,false,true,true,false,true,true,true,true,true,true,false,true,true,false,true,false,true,true,true,true,false,false,false,false,false,false,false,true,true,false,false,true,true,false,true,true,true,true,false,true,true,true,true,true,true,false,true,true,false,true,true,false,true,true,true,true,true,true,false,true,true,false,true,false,true,true,true,true,true,true,false,true,true,true,true,true,true,false,true,true,false,false,false,false,false,true,true,false,true,false,true,true,true,true,true,false,true,true,true,true,true,false,true,true,true,true,true,false,true,true,true,false,true,true,true,true,false,false,false,true,false,true,true,true,true,true,false,true,true,true,false,true,true,true,true,true,false,true,true,true,true,false,true,true,true,true,true,false,true,true,false,true,true,true],"tags":[[],["broken_cluster"],["consonant_syllable"],["vowel_syllable"],["broken_cluster"],["broken_cluster"],[],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["standalone_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["consonant_syllable"],["broken_cluster"],["symbol_cluster"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["standalone_cluster"],["standalone_cluster"],[],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["broken_cluster"],["broken_cluster"],["consonant_syllable","broken_cluster"],["broken_cluster"],[],["broken_cluster"],["symbol_cluster"],[],["symbol_cluster"],["symbol_cluster"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],[],[],["broken_cluster"],["broken_cluster"],[],[],["broken_cluster"],["broken_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["symbol_cluster"],["symbol_cluster"],["symbol_cluster"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],[],[],["consonant_syllable"],["consonant_syllable"],[],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],[],[],["vowel_syllable"],["vowel_syllable"],[],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],[],[],[],["broken_cluster"],["broken_cluster"],[],[],["broken_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],[],["standalone_cluster"],["standalone_cluster"],[],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["broken_cluster"],["symbol_cluster"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],[],[],[],["consonant_syllable"],["consonant_syllable"],[],[],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],[],[],[],["vowel_syllable"],["vowel_syllable"],[],[],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],[],[],[],["broken_cluster"],[],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],[],[],["standalone_cluster"],["standalone_cluster"],[],[],["standalone_cluster"],["standalone_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],[],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],[],[],[],["consonant_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],[],[],[],["vowel_syllable"],[],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],[],[],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],[],[],["standalone_cluster"],[],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],[],[],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],[],[],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],[],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],[],[],[],[],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],[],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],[],[],[],[],["consonant_syllable","broken_cluster"],["consonant_syllable","broken_cluster"],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],[],[],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],["consonant_syllable"],[],["consonant_syllable"],["consonant_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],["vowel_syllable"],[],["vowel_syllable"],["vowel_syllable"],["broken_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],["standalone_cluster"],[],["standalone_cluster"],["standalone_cluster"],[],["consonant_syllable"],["vowel_syllable"],["standalone_cluster"]]}');var ln={};ln=JSON.parse('{"categories":["O","IND","S","GB","B","FM","CGJ","VMAbv","VMPst","VAbv","VPst","CMBlw","VPre","VBlw","H","VMBlw","CMAbv","MBlw","CS","R","SUB","MPst","MPre","FAbv","FPst","FBlw","null","SMAbv","SMBlw","VMPre","ZWNJ","ZWJ","WJ","M","VS","N","HN","MAbv"],"decompositions":{"2507":[2503,2494],"2508":[2503,2519],"2888":[2887,2902],"2891":[2887,2878],"2892":[2887,2903],"3018":[3014,3006],"3019":[3015,3006],"3020":[3014,3031],"3144":[3142,3158],"3264":[3263,3285],"3271":[3270,3285],"3272":[3270,3286],"3274":[3270,3266],"3275":[3270,3266,3285],"3402":[3398,3390],"3403":[3399,3390],"3404":[3398,3415],"3546":[3545,3530],"3548":[3545,3535],"3549":[3545,3535,3530],"3550":[3545,3551],"3635":[3661,3634],"3763":[3789,3762],"3955":[3953,3954],"3957":[3953,3956],"3958":[4018,3968],"3959":[4018,3953,3968],"3960":[4019,3968],"3961":[4019,3953,3968],"3969":[3953,3968],"6971":[6970,6965],"6973":[6972,6965],"6976":[6974,6965],"6977":[6975,6965],"6979":[6978,6965],"69934":[69937,69927],"69935":[69938,69927],"70475":[70471,70462],"70476":[70471,70487],"70843":[70841,70842],"70844":[70841,70832],"70846":[70841,70845],"71098":[71096,71087],"71099":[71097,71087]},"stateTable":[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[2,2,3,4,4,5,0,6,7,8,9,10,11,12,13,14,15,16,0,17,18,11,19,20,21,22,0,0,0,23,0,0,2,0,0,24,0,25],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,28,0,0,0,0,0,27,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,34,35,36,37,38,39,40,0,0,41,35,42,43,44,45,0,0,0,46,0,0,0,0,39,0,0,47],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,0,0,0,0,0,0,14,0,0,0,0,0,0,0,20,21,22,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,21,22,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,8,9,0,0,12,0,14,0,0,0,0,0,0,0,20,21,22,0,0,0,23,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,0,9,0,0,0,0,14,0,0,0,0,0,0,0,20,21,22,0,0,0,23,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,8,9,10,11,12,13,14,0,16,0,0,18,11,19,20,21,22,0,0,0,23,0,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,0,11,12,0,14,0,0,0,0,0,0,0,20,21,22,0,0,0,23,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,0,9,0,0,12,0,14,0,0,0,0,0,0,0,20,21,22,0,0,0,23,0,0,0,0,0,0,0,0],[0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,0,7,0,0,0,0,0,0,14,0,0,0,0,0,0,0,20,21,22,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,8,9,10,11,12,13,14,15,16,0,0,18,11,19,20,21,22,0,0,0,23,0,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,0,11,12,0,14,0,0,0,0,0,11,0,20,21,22,0,0,0,23,0,0,0,0,0,0,0,0],[0,0,0,4,4,5,0,6,7,8,9,10,11,12,13,14,15,16,0,0,18,11,19,20,21,22,0,0,0,23,0,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,48,11,12,13,14,48,16,0,0,18,11,19,20,21,22,0,0,0,23,0,0,0,0,49,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,0,11,12,0,14,0,16,0,0,0,11,0,20,21,22,0,0,0,23,0,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,21,22,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,22,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,0,0,0,0,0,0,14,0,0,0,0,0,0,0,20,21,22,0,0,0,23,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,0,51,0],[0,0,0,0,0,5,0,6,7,8,9,0,11,12,0,14,0,16,0,0,0,11,0,20,21,22,0,0,0,23,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,28,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,0,0,0,0,0,0,38,0,0,0,0,0,0,0,43,44,45,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,44,45,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,0,0,36,0,38,0,0,0,0,0,0,0,43,44,45,0,0,0,46,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,0,33,0,0,0,0,38,0,0,0,0,0,0,0,43,44,45,0,0,0,46,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,34,35,36,37,38,0,40,0,0,41,35,42,43,44,45,0,0,0,46,0,0,0,0,0,0,0,47],[0,0,0,0,0,29,0,30,31,32,33,0,35,36,0,38,0,0,0,0,0,0,0,43,44,45,0,0,0,46,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,0,33,0,0,36,0,38,0,0,0,0,0,0,0,43,44,45,0,0,0,46,0,0,0,0,0,0,0,0],[0,0,0,0,41,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,0,31,0,0,0,0,0,0,38,0,0,0,0,0,0,0,43,44,45,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,34,35,36,37,38,39,40,0,0,41,35,42,43,44,45,0,0,0,46,0,0,0,0,0,0,0,47],[0,0,0,0,0,29,0,30,31,32,33,0,35,36,0,38,0,0,0,0,0,35,0,43,44,45,0,0,0,46,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,52,35,36,37,38,52,40,0,0,41,35,42,43,44,45,0,0,0,46,0,0,0,0,53,0,0,47],[0,0,0,0,0,29,0,30,31,32,33,0,35,36,0,38,0,40,0,0,0,35,0,43,44,45,0,0,0,46,0,0,0,0,0,0,0,47],[0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,44,45,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,44,45,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,0,0,0,0,0,0,38,0,0,0,0,0,0,0,43,44,45,0,0,0,46,0,0,0,0,0,0,0,0],[0,0,0,0,0,29,0,30,31,32,33,0,35,36,0,38,0,40,0,0,0,35,0,43,44,45,0,0,0,46,0,0,0,0,0,0,0,0],[0,0,0,0,0,5,0,6,7,8,9,48,11,12,13,14,0,16,0,0,18,11,19,20,21,22,0,0,0,23,0,0,0,0,0,0,0,25],[0,0,0,0,0,5,0,6,7,8,9,48,11,12,13,14,48,16,0,0,18,11,19,20,21,22,0,0,0,23,0,0,0,0,0,0,0,25],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,54,0,0],[0,0,0,0,0,29,0,30,31,32,33,52,35,36,37,38,0,40,0,0,41,35,42,43,44,45,0,0,0,46,0,0,0,0,0,0,0,47],[0,0,0,0,0,29,0,30,31,32,33,52,35,36,37,38,52,40,0,0,41,35,42,43,44,45,0,0,0,46,0,0,0,0,0,0,0,47],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,0,51,0]],"accepting":[false,true,true,true,true,true,true,true,true,true,true,true,true,false,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true],"tags":[[],["broken_cluster"],["independent_cluster"],["symbol_cluster"],["standard_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],[],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["broken_cluster"],["numeral_cluster"],["broken_cluster"],["independent_cluster"],["symbol_cluster"],["symbol_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["virama_terminated_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["standard_cluster"],["broken_cluster"],["broken_cluster"],["numeral_cluster"],["number_joiner_terminated_cluster"],["standard_cluster"],["standard_cluster"],["numeral_cluster"]]}');const Ee={X:1,C:2,V:4,N:8,H:16,ZWNJ:32,ZWJ:64,M:128,Placeholder:2048,Dotted_Circle:4096,RS:8192,Coeng:16384,Repha:32768,Ra:65536,CM:131072},ye={Start:1,Ra_To_Become_Reph:2,Pre_M:4,Pre_C:8,Base_C:16,After_Main:32,Before_Sub:128,Below_C:256,After_Sub:512,Before_Post:1024,Post_C:2048,After_Post:4096,Final_C:8192,SMVD:16384,End:32768},F8=Ee.C|Ee.Ra|Ee.CM|Ee.V|Ee.Placeholder|Ee.Dotted_Circle,X0=Ee.ZWJ|Ee.ZWNJ,Es=Ee.H|Ee.Coeng,K0={Default:{hasOldSpec:!1,virama:0,basePos:"Last",rephPos:ye.Before_Post,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Devanagari:{hasOldSpec:!0,virama:2381,basePos:"Last",rephPos:ye.Before_Post,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Bengali:{hasOldSpec:!0,virama:2509,basePos:"Last",rephPos:ye.After_Sub,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Gurmukhi:{hasOldSpec:!0,virama:2637,basePos:"Last",rephPos:ye.Before_Sub,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Gujarati:{hasOldSpec:!0,virama:2765,basePos:"Last",rephPos:ye.Before_Post,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Oriya:{hasOldSpec:!0,virama:2893,basePos:"Last",rephPos:ye.After_Main,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Tamil:{hasOldSpec:!0,virama:3021,basePos:"Last",rephPos:ye.After_Post,rephMode:"Implicit",blwfMode:"Pre_And_Post"},Telugu:{hasOldSpec:!0,virama:3149,basePos:"Last",rephPos:ye.After_Post,rephMode:"Explicit",blwfMode:"Post_Only"},Kannada:{hasOldSpec:!0,virama:3277,basePos:"Last",rephPos:ye.After_Post,rephMode:"Implicit",blwfMode:"Post_Only"},Malayalam:{hasOldSpec:!0,virama:3405,basePos:"Last",rephPos:ye.After_Main,rephMode:"Log_Repha",blwfMode:"Pre_And_Post"},Khmer:{hasOldSpec:!1,virama:6098,basePos:"First",rephPos:ye.Ra_To_Become_Reph,rephMode:"Vis_Repha",blwfMode:"Pre_And_Post"}},P8={6078:[6081,6078],6079:[6081,6079],6080:[6081,6080],6084:[6081,6084],6085:[6081,6085]},{decompositions:E8}=zr(ln),q0=new Er(il("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")),O8=new Fu(zr(H0));class wt extends qi{static planFeatures(t){t.addStage(M8),t.addStage(["locl","ccmp"]),t.addStage(D8),t.addStage("nukt"),t.addStage("akhn"),t.addStage("rphf",!1),t.addStage("rkrf"),t.addStage("pref",!1),t.addStage("blwf",!1),t.addStage("abvf",!1),t.addStage("half",!1),t.addStage("pstf",!1),t.addStage("vatu"),t.addStage("cjct"),t.addStage("cfar",!1),t.addStage(z8),t.addStage({local:["init"],global:["pres","abvs","blws","psts","haln","dist","abvm","blwm","calt","clig"]}),t.unicodeScript=S6(t.script),t.indicConfig=K0[t.unicodeScript]||K0.Default,t.isOldSpec=t.indicConfig.hasOldSpec&&t.script[t.script.length-1]!=="2"}static assignFeatures(t,i){for(let a=i.length-1;a>=0;a--){let s=i[a].codePoints[0],r=P8[s]||E8[s];if(r){let n=r.map(o=>{let l=t.font.glyphForCodePoint(o);return new ri(t.font,l.id,[o],i[a].features)});i.splice(a,1,...n)}}}}Wt(wt,"zeroMarkWidths","NONE");function ul(e){return q0.get(e.codePoints[0])>>8}function J0(e){return 1<<(q0.get(e.codePoints[0])&255)}class cn{constructor(t,i,a,s){this.category=t,this.position=i,this.syllableType=a,this.syllable=s}}function M8(e,t){let i=0,a=0;for(let[s,r,n]of O8.match(t.map(ul))){if(s>a){++i;for(let o=a;o<s;o++)t[o].shaperInfo=new cn(Ee.X,ye.End,"non_indic_cluster",i)}++i;for(let o=s;o<=r;o++)t[o].shaperInfo=new cn(1<<ul(t[o]),J0(t[o]),n[0],i);a=r+1}if(a<t.length){++i;for(let s=a;s<t.length;s++)t[s].shaperInfo=new cn(Ee.X,ye.End,"non_indic_cluster",i)}}function ma(e){return e.shaperInfo.category&F8}function yi(e){return e.shaperInfo.category&X0}function Si(e){return e.shaperInfo.category&Es}function Vi(e,t){for(let a of e)a.features={[t]:!0};return e[0]._font._layoutEngine.engine.GSUBProcessor.applyFeatures([t],e),e.length===1}function R8(e,t,i){let a=[i,t,i];return Vi(a.slice(0,2),"blwf")||Vi(a.slice(1,3),"blwf")?ye.Below_C:Vi(a.slice(0,2),"pstf")||Vi(a.slice(1,3),"pstf")||Vi(a.slice(0,2),"pref")||Vi(a.slice(1,3),"pref")?ye.Post_C:ye.Base_C}function D8(e,t,i){let a=i.indicConfig,s=e._layoutEngine.engine.GSUBProcessor.features,r=e.glyphForCodePoint(9676).id,n=e.glyphForCodePoint(a.virama).id;if(n){let o=new ri(e,n,[a.virama]);for(let l=0;l<t.length;l++)t[l].shaperInfo.position===ye.Base_C&&(t[l].shaperInfo.position=R8(e,t[l].copy(),o))}for(let o=0,l=fn(t,0);o<t.length;o=l,l=fn(t,o)){let{category:c,syllableType:f}=t[o].shaperInfo;if(f==="symbol_cluster"||f==="non_indic_cluster")continue;if(f==="broken_cluster"&&r){let v=new ri(e,r,[9676]);v.shaperInfo=new cn(1<<ul(v),J0(v),t[o].shaperInfo.syllableType,t[o].shaperInfo.syllable);let P=o;for(;P<l&&t[P].shaperInfo.category===Ee.Repha;)P++;t.splice(P++,0,v),l++}let u=l,h=o,m=!1;if(a.rephPos!==ye.Ra_To_Become_Reph&&s.rphf&&o+3<=l&&(a.rephMode==="Implicit"&&!yi(t[o+2])||a.rephMode==="Explicit"&&t[o+2].shaperInfo.category===Ee.ZWJ)){let v=[t[o].copy(),t[o+1].copy(),t[o+2].copy()];if(Vi(v.slice(0,2),"rphf")||a.rephMode==="Explicit"&&Vi(v,"rphf")){for(h+=2;h<l&&yi(t[h]);)h++;u=o,m=!0}}else if(a.rephMode==="Log_Repha"&&t[o].shaperInfo.category===Ee.Repha){for(h++;h<l&&yi(t[h]);)h++;u=o,m=!0}switch(a.basePos){case"Last":{let v=l,P=!1;do{let y=t[--v].shaperInfo;if(ma(t[v])){if(y.position!==ye.Below_C&&(y.position!==ye.Post_C||P)){u=v;break}y.position===ye.Below_C&&(P=!0),u=v}else if(o<v&&y.category===Ee.ZWJ&&t[v-1].shaperInfo.category===Ee.H)break}while(v>h);break}case"First":u=o;for(let v=u+1;v<l;v++)ma(t[v])&&(t[v].shaperInfo.position=ye.Below_C)}m&&u===o&&h-u<=2&&(m=!1);for(let v=o;v<u;v++){let P=t[v].shaperInfo;P.position=Math.min(ye.Pre_C,P.position)}u<l&&(t[u].shaperInfo.position=ye.Base_C);for(let v=u+1;v<l;v++)if(t[v].shaperInfo.category===Ee.M){for(let P=v+1;P<l;P++)if(ma(t[P])){t[P].shaperInfo.position=ye.Final_C;break}break}if(m&&(t[o].shaperInfo.position=ye.Ra_To_Become_Reph),i.isOldSpec){let v=i.unicodeScript!=="Malayalam";for(let P=u+1;P<l;P++)if(t[P].shaperInfo.category===Ee.H){let y;for(y=l-1;y>P&&!(ma(t[y])||v&&t[y].shaperInfo.category===Ee.H);y--);if(t[y].shaperInfo.category!==Ee.H&&y>P){let K=t[P];t.splice(P,0,...t.splice(P+1,y-P)),t[y]=K}break}}let b=ye.Start;for(let v=o;v<l;v++){let P=t[v].shaperInfo;if(P.category&(X0|Ee.N|Ee.RS|Ee.CM|Es&P.category)){if(P.position=b,P.category===Ee.H&&P.position===ye.Pre_M){for(let y=v;y>o;y--)if(t[y-1].shaperInfo.position!==ye.Pre_M){P.position=t[y-1].shaperInfo.position;break}}}else P.position!==ye.SMVD&&(b=P.position)}let M=u;for(let v=u+1;v<l;v++)if(ma(t[v])){for(let P=M+1;P<v;P++)t[P].shaperInfo.position<ye.SMVD&&(t[P].shaperInfo.position=t[v].shaperInfo.position);M=v}else t[v].shaperInfo.category===Ee.M&&(M=v);let G=t.slice(o,l);G.sort((v,P)=>v.shaperInfo.position-P.shaperInfo.position),t.splice(o,G.length,...G);for(let v=o;v<l;v++)if(t[v].shaperInfo.position===ye.Base_C){u=v;break}for(let v=o;v<l&&t[v].shaperInfo.position===ye.Ra_To_Become_Reph;v++)t[v].features.rphf=!0;let L=!i.isOldSpec&&a.blwfMode==="Pre_And_Post";for(let v=o;v<u;v++)t[v].features.half=!0,L&&(t[v].features.blwf=!0);for(let v=u+1;v<l;v++)t[v].features.abvf=!0,t[v].features.pstf=!0,t[v].features.blwf=!0;if(i.isOldSpec&&i.unicodeScript==="Devanagari")for(let v=o;v+1<u;v++)t[v].shaperInfo.category===Ee.Ra&&t[v+1].shaperInfo.category===Ee.H&&(v+1===u||t[v+2].shaperInfo.category===Ee.ZWJ)&&(t[v].features.blwf=!0,t[v+1].features.blwf=!0);let O=2;if(s.pref&&u+O<l)for(let v=u+1;v+O-1<l;v++){let P=[t[v].copy(),t[v+1].copy()];if(Vi(P,"pref")){for(let y=0;y<O;y++)t[v++].features.pref=!0;if(s.cfar)for(;v<l;v++)t[v].features.cfar=!0;break}}for(let v=o+1;v<l;v++)if(yi(t[v])){let P=t[v].shaperInfo.category===Ee.ZWNJ,y=v;do y--,P&&delete t[y].features.half;while(y>o&&!ma(t[y]))}}}function z8(e,t,i){let a=i.indicConfig,s=e._layoutEngine.engine.GSUBProcessor.features;for(let r=0,n=fn(t,0);r<t.length;r=n,n=fn(t,r)){let o=!!s.pref,l=r;for(;l<n;l++)if(t[l].shaperInfo.position>=ye.Base_C){if(o&&l+1<n){for(let c=l+1;c<n;c++)if(t[c].features.pref){if(!(t[c].substituted&&t[c].isLigated&&!t[c].isMultiplied)){for(l=c;l<n&&Si(t[l]);)l++;t[l].shaperInfo.position=ye.BASE_C,o=!1}break}}if(i.unicodeScript==="Malayalam")for(let c=l+1;c<n;c++){for(;c<n&&yi(t[c]);)c++;if(c===n||!Si(t[c]))break;for(c++;c<n&&yi(t[c]);)c++;c<n&&ma(t[c])&&t[c].shaperInfo.position===ye.Below_C&&(l=c,t[l].shaperInfo.position=ye.Base_C)}r<l&&t[l].shaperInfo.position>ye.Base_C&&l--;break}if(l===n&&r<l&&t[l-1].shaperInfo.category===Ee.ZWJ&&l--,l<n)for(;r<l&&t[l].shaperInfo.category&(Ee.N|Es);)l--;if(r+1<n&&r<l){let c=l===n?l-2:l-1;if(i.unicodeScript!=="Malayalam"&&i.unicodeScript!=="Tamil"){for(;c>r&&!(t[c].shaperInfo.category&(Ee.M|Es));)c--;Si(t[c])&&t[c].shaperInfo.position!==ye.Pre_M?c+1<n&&yi(t[c+1])&&c++:c=r}if(r<c&&t[c].shaperInfo.position!==ye.Pre_M){for(let f=c;f>r;f--)if(t[f-1].shaperInfo.position===ye.Pre_M){let u=f-1;u<l&&l<=c&&l--;let h=t[u];t.splice(u,0,...t.splice(u+1,c-u)),t[c]=h,c--}}}if(r+1<n&&t[r].shaperInfo.position===ye.Ra_To_Become_Reph&&t[r].shaperInfo.category===Ee.Repha!==(t[r].isLigated&&!t[r].isMultiplied)){let c,f=a.rephPos,u=!1;if(f!==ye.After_Post){for(c=r+1;c<l&&!Si(t[c]);)c++;if(c<l&&Si(t[c])&&(c+1<l&&yi(t[c+1])&&c++,u=!0),!u&&f===ye.After_Main){for(c=l;c+1<n&&t[c+1].shaperInfo.position<=ye.After_Main;)c++;u=c<n}if(!u&&f===ye.After_Sub){for(c=l;c+1<n&&!(t[c+1].shaperInfo.position&(ye.Post_C|ye.After_Post|ye.SMVD));)c++;u=c<n}}if(!u){for(c=r+1;c<l&&!Si(t[c]);)c++;c<l&&Si(t[c])&&(c+1<l&&yi(t[c+1])&&c++,u=!0)}if(!u){for(c=n-1;c>r&&t[c].shaperInfo.position===ye.SMVD;)c--;if(Si(t[c]))for(let m=l+1;m<c;m++)t[m].shaperInfo.category===Ee.M&&c--}let h=t[r];t.splice(r,0,...t.splice(r+1,c-r)),t[c]=h,r<l&&l<=c&&l--}if(o&&l+1<n){for(let c=l+1;c<n;c++)if(t[c].features.pref){if(t[c].isLigated&&!t[c].isMultiplied){let f=l;if(i.unicodeScript!=="Malayalam"&&i.unicodeScript!=="Tamil"){for(;f>r&&!(t[f-1].shaperInfo.category&(Ee.M|Es));)f--;if(f>r&&t[f-1].shaperInfo.category===Ee.M){let m=c;for(let b=l+1;b<m;b++)if(t[b].shaperInfo.category===Ee.M){f--;break}}}f>r&&Si(t[f-1])&&f<n&&yi(t[f])&&f++;let u=c,h=t[u];t.splice(f+1,0,...t.splice(f,u-f)),t[f]=h,f<=l&&l<u&&l++}break}}t[r].shaperInfo.position===ye.Pre_M&&(!r||!/Cf|Mn/.test(Mr(t[r-1].codePoints[0])))&&(t[r].features.init=!0)}}function fn(e,t){if(t>=e.length)return t;let i=e[t].shaperInfo.syllable;for(;++t<e.length&&e[t].shaperInfo.syllable===i;);return t}const{categories:L8,decompositions:Q0}=zr(ln),B8=new Er(il("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")),U8=new Fu(zr(ln));class Te extends qi{static planFeatures(t){t.addStage(G8),t.addStage(["locl","ccmp","nukt","akhn"]),t.addStage(ed),t.addStage(["rphf"],!1),t.addStage(W8),t.addStage(ed),t.addStage(["pref"]),t.addStage(j8),t.addStage(["rkrf","abvf","blwf","half","pstf","vatu","cjct"]),t.addStage(Y8),t.addStage(["abvs","blws","pres","psts","dist","abvm","blwm"])}static assignFeatures(t,i){for(let a=i.length-1;a>=0;a--){let s=i[a].codePoints[0];if(Q0[s]){let r=Q0[s].map(n=>{let o=t.font.glyphForCodePoint(n);return new ri(t.font,o.id,[n],i[a].features)});i.splice(a,1,...r)}}}}Wt(Te,"zeroMarkWidths","BEFORE_GPOS");function $0(e){return B8.get(e.codePoints[0])}class Z8{constructor(t,i,a){this.category=t,this.syllableType=i,this.syllable=a}}function G8(e,t){let i=0;for(let[a,s,r]of U8.match(t.map($0))){++i;for(let o=a;o<=s;o++)t[o].shaperInfo=new Z8(L8[$0(t[o])],r[0],i);let n=t[a].shaperInfo.category==="R"?1:Math.min(3,s-a);for(let o=a;o<a+n;o++)t[o].features.rphf=!0}}function ed(e,t){for(let i of t)i.substituted=!1}function W8(e,t){for(let i of t)i.substituted&&i.features.rphf&&(i.shaperInfo.category="R")}function j8(e,t){for(let i of t)i.substituted&&(i.shaperInfo.category="VPre")}function Y8(e,t){let i=e.glyphForCodePoint(9676).id;for(let a=0,s=td(t,0);a<t.length;a=s,s=td(t,a)){let r,n,o=t[a].shaperInfo,l=o.syllableType;if(!(l!=="virama_terminated_cluster"&&l!=="standard_cluster"&&l!=="broken_cluster")){if(l==="broken_cluster"&&i){let c=new ri(e,i,[9676]);for(c.shaperInfo=o,r=a;r<s&&t[r].shaperInfo.category==="R";r++);t.splice(++r,0,c),s++}if(o.category==="R"&&s-a>1){for(r=a+1;r<s;r++)if(o=t[r].shaperInfo,id(o)||un(t[r])){un(t[r])&&r--,t.splice(a,0,...t.splice(a+1,r-a),t[r]);break}}for(r=a,n=s;r<s;r++)o=t[r].shaperInfo,id(o)||un(t[r])?n=un(t[r])?r+1:r:(o.category==="VPre"||o.category==="VMPre")&&n<r&&t.splice(n,1,t[r],...t.splice(n,r-n))}}}function td(e,t){if(t>=e.length)return t;let i=e[t].shaperInfo.syllable;for(;++t<e.length&&e[t].shaperInfo.syllable===i;);return t}function un(e){return e.shaperInfo.category==="H"&&!e.isLigated}function id(e){return e.category==="B"||e.category==="GB"}const H8={arab:Qi,mong:Qi,syrc:Qi,"nko ":Qi,phag:Qi,mand:Qi,mani:Qi,phlp:Qi,hang:Z0,bng2:wt,beng:wt,dev2:wt,deva:wt,gjr2:wt,gujr:wt,guru:wt,gur2:wt,knda:wt,knd2:wt,mlm2:wt,mlym:wt,ory2:wt,orya:wt,taml:wt,tml2:wt,telu:wt,tel2:wt,khmr:wt,bali:Te,batk:Te,brah:Te,bugi:Te,buhd:Te,cakm:Te,cham:Te,dupl:Te,egyp:Te,gran:Te,hano:Te,java:Te,kthi:Te,kali:Te,khar:Te,khoj:Te,sind:Te,lepc:Te,limb:Te,mahj:Te,mtei:Te,modi:Te,hmng:Te,rjng:Te,saur:Te,shrd:Te,sidd:Te,sinh:wt,sund:Te,sylo:Te,tglg:Te,tagb:Te,tale:Te,lana:Te,tavt:Te,takr:Te,tibt:Te,tfng:Te,tirh:Te,latn:qi,DFLT:qi};function X8(e){Array.isArray(e)||(e=[e]);for(let t of e){let i=H8[t];if(i)return i}return qi}class K8 extends en{applyLookup(t,i){switch(t){case 1:{let s=this.coverageIndex(i.coverage);if(s===-1)return!1;let r=this.glyphIterator.cur;switch(i.version){case 1:r.id=r.id+i.deltaGlyphID&65535;break;case 2:r.id=i.substitute.get(s);break}return!0}case 2:{let s=this.coverageIndex(i.coverage);if(s!==-1){let r=i.sequences.get(s);if(r.length===0)return this.glyphs.splice(this.glyphIterator.index,1),!0;this.glyphIterator.cur.id=r[0],this.glyphIterator.cur.ligatureComponent=0;let n=this.glyphIterator.cur.features,o=this.glyphIterator.cur,l=r.slice(1).map((c,f)=>{let u=new ri(this.font,c,void 0,n);return u.shaperInfo=o.shaperInfo,u.isLigated=o.isLigated,u.ligatureComponent=f+1,u.substituted=!0,u.isMultiplied=!0,u});return this.glyphs.splice(this.glyphIterator.index+1,0,...l),!0}return!1}case 3:{let s=this.coverageIndex(i.coverage);if(s!==-1){let r=0;return this.glyphIterator.cur.id=i.alternateSet.get(s)[r],!0}return!1}case 4:{let s=this.coverageIndex(i.coverage);if(s===-1)return!1;for(let r of i.ligatureSets.get(s)){let n=this.sequenceMatchIndices(1,r.components);if(!n)continue;let o=this.glyphIterator.cur,l=o.codePoints.slice();for(let M of n)l.push(...this.glyphs[M].codePoints);let c=new ri(this.font,r.glyph,l,o.features);c.shaperInfo=o.shaperInfo,c.isLigated=!0,c.substituted=!0;let f=o.isMark;for(let M=0;M<n.length&&f;M++)f=this.glyphs[n[M]].isMark;c.ligatureID=f?null:this.ligatureID++;let u=o.ligatureID,h=o.codePoints.length,m=h,b=this.glyphIterator.index+1;for(let M of n){if(f)b=M;else for(;b<M;){var a=m-h+Math.min(this.glyphs[b].ligatureComponent||1,h);this.glyphs[b].ligatureID=c.ligatureID,this.glyphs[b].ligatureComponent=a,b++}u=this.glyphs[b].ligatureID,h=this.glyphs[b].codePoints.length,m+=h,b++}if(u&&!f)for(let M=b;M<this.glyphs.length&&this.glyphs[M].ligatureID===u;M++){var a=m-h+Math.min(this.glyphs[M].ligatureComponent||1,h);this.glyphs[M].ligatureComponent=a}for(let M=n.length-1;M>=0;M--)this.glyphs.splice(n[M],1);return this.glyphs[this.glyphIterator.index]=c,!0}return!1}case 5:return this.applyContext(i);case 6:return this.applyChainingContext(i);case 7:return this.applyLookup(i.lookupType,i.extension);default:throw new Error(`GSUB lookupType ${t} is not supported`)}}}class q8 extends en{applyPositionValue(t,i){let a=this.positions[this.glyphIterator.peekIndex(t)];i.xAdvance!=null&&(a.xAdvance+=i.xAdvance),i.yAdvance!=null&&(a.yAdvance+=i.yAdvance),i.xPlacement!=null&&(a.xOffset+=i.xPlacement),i.yPlacement!=null&&(a.yOffset+=i.yPlacement);let s=this.font._variationProcessor,r=this.font.GDEF&&this.font.GDEF.itemVariationStore;s&&r&&(i.xPlaDevice&&(a.xOffset+=s.getDelta(r,i.xPlaDevice.a,i.xPlaDevice.b)),i.yPlaDevice&&(a.yOffset+=s.getDelta(r,i.yPlaDevice.a,i.yPlaDevice.b)),i.xAdvDevice&&(a.xAdvance+=s.getDelta(r,i.xAdvDevice.a,i.xAdvDevice.b)),i.yAdvDevice&&(a.yAdvance+=s.getDelta(r,i.yAdvDevice.a,i.yAdvDevice.b)))}applyLookup(t,i){switch(t){case 1:{let s=this.coverageIndex(i.coverage);if(s===-1)return!1;switch(i.version){case 1:this.applyPositionValue(0,i.value);break;case 2:this.applyPositionValue(0,i.values.get(s));break}return!0}case 2:{let s=this.glyphIterator.peek();if(!s)return!1;let r=this.coverageIndex(i.coverage);if(r===-1)return!1;switch(i.version){case 1:let n=i.pairSets.get(r);for(let c of n)if(c.secondGlyph===s.id)return this.applyPositionValue(0,c.value1),this.applyPositionValue(1,c.value2),!0;return!1;case 2:let o=this.getClassID(this.glyphIterator.cur.id,i.classDef1),l=this.getClassID(s.id,i.classDef2);if(o===-1||l===-1)return!1;var a=i.classRecords.get(o).get(l);return this.applyPositionValue(0,a.value1),this.applyPositionValue(1,a.value2),!0}}case 3:{let s=this.glyphIterator.peekIndex(),r=this.glyphs[s];if(!r)return!1;let n=i.entryExitRecords[this.coverageIndex(i.coverage)];if(!n||!n.exitAnchor)return!1;let o=i.entryExitRecords[this.coverageIndex(i.coverage,r.id)];if(!o||!o.entryAnchor)return!1;let l=this.getAnchor(o.entryAnchor),c=this.getAnchor(n.exitAnchor),f=this.positions[this.glyphIterator.index],u=this.positions[s],h;switch(this.direction){case"ltr":f.xAdvance=c.x+f.xOffset,h=l.x+u.xOffset,u.xAdvance-=h,u.xOffset-=h;break;case"rtl":h=c.x+f.xOffset,f.xAdvance-=h,f.xOffset-=h,u.xAdvance=l.x+u.xOffset;break}return this.glyphIterator.flags.rightToLeft?(this.glyphIterator.cur.cursiveAttachment=s,f.yOffset=l.y-c.y):(r.cursiveAttachment=this.glyphIterator.index,f.yOffset=c.y-l.y),!0}case 4:{let s=this.coverageIndex(i.markCoverage);if(s===-1)return!1;let r=this.glyphIterator.index;for(;--r>=0&&(this.glyphs[r].isMark||this.glyphs[r].ligatureComponent>0););if(r<0)return!1;let n=this.coverageIndex(i.baseCoverage,this.glyphs[r].id);if(n===-1)return!1;let o=i.markArray[s],l=i.baseArray[n][o.class];return this.applyAnchor(o,l,r),!0}case 5:{let s=this.coverageIndex(i.markCoverage);if(s===-1)return!1;let r=this.glyphIterator.index;for(;--r>=0&&this.glyphs[r].isMark;);if(r<0)return!1;let n=this.coverageIndex(i.ligatureCoverage,this.glyphs[r].id);if(n===-1)return!1;let o=i.ligatureArray[n],l=this.glyphIterator.cur,c=this.glyphs[r],f=c.ligatureID&&c.ligatureID===l.ligatureID&&l.ligatureComponent>0?Math.min(l.ligatureComponent,c.codePoints.length)-1:c.codePoints.length-1,u=i.markArray[s],h=o[f][u.class];return this.applyAnchor(u,h,r),!0}case 6:{let s=this.coverageIndex(i.mark1Coverage);if(s===-1)return!1;let r=this.glyphIterator.peekIndex(-1),n=this.glyphs[r];if(!n||!n.isMark)return!1;let o=this.glyphIterator.cur,l=!1;if(o.ligatureID===n.ligatureID?o.ligatureID?o.ligatureComponent===n.ligatureComponent&&(l=!0):l=!0:(o.ligatureID&&!o.ligatureComponent||n.ligatureID&&!n.ligatureComponent)&&(l=!0),!l)return!1;let c=this.coverageIndex(i.mark2Coverage,n.id);if(c===-1)return!1;let f=i.mark1Array[s],u=i.mark2Array[c][f.class];return this.applyAnchor(f,u,r),!0}case 7:return this.applyContext(i);case 8:return this.applyChainingContext(i);case 9:return this.applyLookup(i.lookupType,i.extension);default:throw new Error(`Unsupported GPOS table: ${t}`)}}applyAnchor(t,i,a){let s=this.getAnchor(i),r=this.getAnchor(t.markAnchor);this.positions[a];let n=this.positions[this.glyphIterator.index];n.xOffset=s.x-r.x,n.yOffset=s.y-r.y,this.glyphIterator.cur.markAttachment=a}getAnchor(t){let i=t.xCoordinate,a=t.yCoordinate,s=this.font._variationProcessor,r=this.font.GDEF&&this.font.GDEF.itemVariationStore;return s&&r&&(t.xDeviceTable&&(i+=s.getDelta(r,t.xDeviceTable.a,t.xDeviceTable.b)),t.yDeviceTable&&(a+=s.getDelta(r,t.yDeviceTable.a,t.yDeviceTable.b))),{x:i,y:a}}applyFeatures(t,i,a){super.applyFeatures(t,i,a);for(var s=0;s<this.glyphs.length;s++)this.fixCursiveAttachment(s);this.fixMarkAttachment()}fixCursiveAttachment(t){let i=this.glyphs[t];if(i.cursiveAttachment!=null){let a=i.cursiveAttachment;i.cursiveAttachment=null,this.fixCursiveAttachment(a),this.positions[t].yOffset+=this.positions[a].yOffset}}fixMarkAttachment(){for(let t=0;t<this.glyphs.length;t++){let i=this.glyphs[t];if(i.markAttachment!=null){let a=i.markAttachment;if(this.positions[t].xOffset+=this.positions[a].xOffset,this.positions[t].yOffset+=this.positions[a].yOffset,this.direction==="ltr")for(let s=a;s<t;s++)this.positions[t].xOffset-=this.positions[s].xAdvance,this.positions[t].yOffset-=this.positions[s].yAdvance;else for(let s=a+1;s<t+1;s++)this.positions[t].xOffset+=this.positions[s].xAdvance,this.positions[t].yOffset+=this.positions[s].yAdvance}}}}class J8{setup(t){this.glyphInfos=t.glyphs.map(a=>new ri(this.font,a.id,[...a.codePoints]));let i=null;this.GPOSProcessor&&(i=this.GPOSProcessor.selectScript(t.script,t.language,t.direction)),this.GSUBProcessor&&(i=this.GSUBProcessor.selectScript(t.script,t.language,t.direction)),this.shaper=X8(i),this.plan=new J6(this.font,i,t.direction),this.shaper.plan(this.plan,this.glyphInfos,t.features);for(let a in this.plan.allFeatures)t.features[a]=!0}substitute(t){this.GSUBProcessor&&(this.plan.process(this.GSUBProcessor,this.glyphInfos),t.glyphs=this.glyphInfos.map(i=>this.font.getGlyph(i.id,i.codePoints)))}position(t){return this.shaper.zeroMarkWidths==="BEFORE_GPOS"&&this.zeroMarkAdvances(t.positions),this.GPOSProcessor&&this.plan.process(this.GPOSProcessor,this.glyphInfos,t.positions),this.shaper.zeroMarkWidths==="AFTER_GPOS"&&this.zeroMarkAdvances(t.positions),t.direction==="rtl"&&(t.glyphs.reverse(),t.positions.reverse()),this.GPOSProcessor&&this.GPOSProcessor.features}zeroMarkAdvances(t){for(let i=0;i<this.glyphInfos.length;i++)this.glyphInfos[i].isMark&&(t[i].xAdvance=0,t[i].yAdvance=0)}cleanup(){this.glyphInfos=null,this.plan=null,this.shaper=null}getAvailableFeatures(t,i){let a=[];return this.GSUBProcessor&&(this.GSUBProcessor.selectScript(t,i),a.push(...Object.keys(this.GSUBProcessor.features))),this.GPOSProcessor&&(this.GPOSProcessor.selectScript(t,i),a.push(...Object.keys(this.GPOSProcessor.features))),a}constructor(t){this.font=t,this.glyphInfos=null,this.plan=null,this.GSUBProcessor=null,this.GPOSProcessor=null,this.fallbackPosition=!0,t.GSUB&&(this.GSUBProcessor=new K8(t,t.GSUB)),t.GPOS&&(this.GPOSProcessor=new q8(t,t.GPOS))}}class Q8{layout(t,i,a,s,r){if(typeof i=="string"&&(r=s,s=a,a=i,i=[]),typeof t=="string"){a==null&&(a=V6(t));var n=this.font.glyphsForString(t)}else{if(a==null){let c=[];for(let f of t)c.push(...f.codePoints);a=_6(c)}var n=t}let o=new T6(n,i,a,s,r);return n.length===0?(o.positions=[],o):(this.engine&&this.engine.setup&&this.engine.setup(o),this.substitute(o),this.position(o),this.hideDefaultIgnorables(o.glyphs,o.positions),this.engine&&this.engine.cleanup&&this.engine.cleanup(),o)}substitute(t){this.engine&&this.engine.substitute&&this.engine.substitute(t)}position(t){t.positions=t.glyphs.map(a=>new F6(a.advanceWidth));let i=null;this.engine&&this.engine.position&&(i=this.engine.position(t)),!i&&(!this.engine||this.engine.fallbackPosition)&&(this.unicodeLayoutEngine||(this.unicodeLayoutEngine=new C6(this.font)),this.unicodeLayoutEngine.positionGlyphs(t.glyphs,t.positions)),(!i||!i.kern)&&t.features.kern!==!1&&this.font.kern&&(this.kernProcessor||(this.kernProcessor=new A6(this.font)),this.kernProcessor.process(t.glyphs,t.positions),t.features.kern=!0)}hideDefaultIgnorables(t,i){let a=this.font.glyphForCodePoint(32);for(let s=0;s<t.length;s++)this.isDefaultIgnorable(t[s].codePoints[0])&&(t[s]=a,i[s].xAdvance=0,i[s].yAdvance=0)}isDefaultIgnorable(t){let i=t>>16;if(i===0)switch(t>>8){case 0:return t===173;case 3:return t===847;case 6:return t===1564;case 23:return 6068<=t&&t<=6069;case 24:return 6155<=t&&t<=6158;case 32:return 8203<=t&&t<=8207||8234<=t&&t<=8238||8288<=t&&t<=8303;case 254:return 65024<=t&&t<=65039||t===65279;case 255:return 65520<=t&&t<=65528;default:return!1}else switch(i){case 1:return 113824<=t&&t<=113827||119155<=t&&t<=119162;case 14:return 917504<=t&&t<=921599;default:return!1}}getAvailableFeatures(t,i){let a=[];return this.engine&&a.push(...this.engine.getAvailableFeatures(t,i)),this.font.kern&&a.indexOf("kern")===-1&&a.push("kern"),a}stringsForGlyph(t){let i=new Set,a=this.font._cmapProcessor.codePointsForGlyph(t);for(let s of a)i.add(String.fromCodePoint(s));if(this.engine&&this.engine.stringsForGlyph)for(let s of this.engine.stringsForGlyph(t))i.add(s);return Array.from(i)}constructor(t){this.font=t,this.unicodeLayoutEngine=null,this.kernProcessor=null,this.font.morx?this.engine=new q6(this.font):(this.font.GSUB||this.font.GPOS)&&(this.engine=new J8(this.font))}}const $8={moveTo:"M",lineTo:"L",quadraticCurveTo:"Q",bezierCurveTo:"C",closePath:"Z"};class qa{toFunction(){return t=>{this.commands.forEach(i=>t[i.command].apply(t,i.args))}}toSVG(){return this.commands.map(i=>{let a=i.args.map(s=>Math.round(s*100)/100);return`${$8[i.command]}${a.join(" ")}`}).join("")}get cbox(){if(!this._cbox){let t=new Ki;for(let i of this.commands)for(let a=0;a<i.args.length;a+=2)t.addPoint(i.args[a],i.args[a+1]);this._cbox=Object.freeze(t)}return this._cbox}get bbox(){if(this._bbox)return this._bbox;let t=new Ki,i=0,a=0,s=O=>Math.pow(1-O,3)*m[L]+3*Math.pow(1-O,2)*O*b[L]+3*(1-O)*Math.pow(O,2)*M[L]+Math.pow(O,3)*G[L];for(let O of this.commands)switch(O.command){case"moveTo":case"lineTo":let[v,P]=O.args;t.addPoint(v,P),i=v,a=P;break;case"quadraticCurveTo":case"bezierCurveTo":if(O.command==="quadraticCurveTo")var[r,n,u,h]=O.args,o=i+2/3*(r-i),l=a+2/3*(n-a),c=u+2/3*(r-u),f=h+2/3*(n-h);else var[o,l,c,f,u,h]=O.args;t.addPoint(u,h);for(var m=[i,a],b=[o,l],M=[c,f],G=[u,h],L=0;L<=1;L++){let y=6*m[L]-12*b[L]+6*M[L],K=-3*m[L]+9*b[L]-9*M[L]+3*G[L];if(O=3*b[L]-3*m[L],K===0){if(y===0)continue;let re=-O/y;0<re&&re<1&&(L===0?t.addPoint(s(re),t.maxY):L===1&&t.addPoint(t.maxX,s(re)));continue}let R=Math.pow(y,2)-4*O*K;if(R<0)continue;let j=(-y+Math.sqrt(R))/(2*K);0<j&&j<1&&(L===0?t.addPoint(s(j),t.maxY):L===1&&t.addPoint(t.maxX,s(j)));let ie=(-y-Math.sqrt(R))/(2*K);0<ie&&ie<1&&(L===0?t.addPoint(s(ie),t.maxY):L===1&&t.addPoint(t.maxX,s(ie)))}i=u,a=h;break}return this._bbox=Object.freeze(t)}mapPoints(t){let i=new qa;for(let a of this.commands){let s=[];for(let r=0;r<a.args.length;r+=2){let[n,o]=t(a.args[r],a.args[r+1]);s.push(n,o)}i[a.command](...s)}return i}transform(t,i,a,s,r,n){return this.mapPoints((o,l)=>{const c=t*o+a*l+r,f=i*o+s*l+n;return[c,f]})}translate(t,i){return this.transform(1,0,0,1,t,i)}rotate(t){let i=Math.cos(t),a=Math.sin(t);return this.transform(i,a,-a,i,0,0)}scale(t,i=t){return this.transform(t,0,0,i,0,0)}constructor(){this.commands=[],this._bbox=null,this._cbox=null}}for(let e of["moveTo","lineTo","quadraticCurveTo","bezierCurveTo","closePath"])qa.prototype[e]=function(...t){return this._bbox=this._cbox=null,this.commands.push({command:e,args:t}),this};var Os=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];class bi{_getPath(){return new qa}_getCBox(){return this.path.cbox}_getBBox(){return this.path.bbox}_getTableMetrics(t){if(this.id<t.metrics.length)return t.metrics.get(this.id);let i=t.metrics.get(t.metrics.length-1);return{advance:i?i.advance:0,bearing:t.bearings.get(this.id-t.metrics.length)||0}}_getMetrics(t){if(this._metrics)return this._metrics;let{advance:i,bearing:a}=this._getTableMetrics(this._font.hmtx);if(this._font.vmtx)var{advance:s,bearing:r}=this._getTableMetrics(this._font.vmtx);else{let n;if((typeof t>"u"||t===null)&&({cbox:t}=this),(n=this._font["OS/2"])&&n.version>0)var s=Math.abs(n.typoAscender-n.typoDescender),r=n.typoAscender-t.maxY;else{let{hhea:o}=this._font;var s=Math.abs(o.ascent-o.descent),r=o.ascent-t.maxY}}return this._font._variationProcessor&&this._font.HVAR&&(i+=this._font._variationProcessor.getAdvanceAdjustment(this.id,this._font.HVAR)),this._metrics={advanceWidth:i,advanceHeight:s,leftBearing:a,topBearing:r}}get cbox(){return this._getCBox()}get bbox(){return this._getBBox()}get path(){return this._getPath()}getScaledPath(t){let i=1/this._font.unitsPerEm*t;return this.path.scale(i)}get advanceWidth(){return this._getMetrics().advanceWidth}get advanceHeight(){return this._getMetrics().advanceHeight}get ligatureCaretPositions(){}_getName(){let{post:t}=this._font;if(!t)return null;switch(t.version){case 1:return Os[this.id];case 2:let i=t.glyphNameIndex[this.id];return i<Os.length?Os[i]:t.names[i-Os.length];case 2.5:return Os[this.id+t.offsets[this.id]];case 4:return String.fromCharCode(t.map[this.id])}}get name(){return this._getName()}render(t,i){t.save();let a=1/this._font.head.unitsPerEm*i;t.scale(a,a),this.path.toFunction()(t),t.fill(),t.restore()}constructor(t,i,a){this.id=t,this.codePoints=i,this._font=a,this.isMark=this.codePoints.length>0&&this.codePoints.every(Tu),this.isLigature=this.codePoints.length>1}}Et([Ot],bi.prototype,"cbox",null),Et([Ot],bi.prototype,"bbox",null),Et([Ot],bi.prototype,"path",null),Et([Ot],bi.prototype,"advanceWidth",null),Et([Ot],bi.prototype,"advanceHeight",null),Et([Ot],bi.prototype,"name",null);let ad=new E({numberOfContours:H,xMin:H,yMin:H,xMax:H,yMax:H});const e9=1,t9=2,i9=4,a9=8,s9=16,r9=32,n9=1,o9=8,sd=32,l9=64,c9=128,f9=256;class ni{copy(){return new ni(this.onCurve,this.endContour,this.x,this.y)}constructor(t,i,a=0,s=0){this.onCurve=t,this.endContour=i,this.x=a,this.y=s}}class u9{constructor(t,i,a){this.glyphID=t,this.dx=i,this.dy=a,this.pos=0,this.scaleX=this.scaleY=1,this.scale01=this.scale10=0}}class dn extends bi{_getCBox(t){if(this._font._variationProcessor&&!t)return this.path.cbox;let i=this._font._getTableStream("glyf");i.pos+=this._font.loca.offsets[this.id];let a=ad.decode(i),s=new Ki(a.xMin,a.yMin,a.xMax,a.yMax);return Object.freeze(s)}_parseGlyphCoord(t,i,a,s){if(a){var r=t.readUInt8();s||(r=-r),r+=i}else if(s)var r=i;else var r=i+t.readInt16BE();return r}_decode(){let t=this._font.loca.offsets[this.id],i=this._font.loca.offsets[this.id+1];if(t===i)return null;let a=this._font._getTableStream("glyf");a.pos+=t;let s=a.pos,r=ad.decode(a);return r.numberOfContours>0?this._decodeSimple(r,a):r.numberOfContours<0&&this._decodeComposite(r,a,s),r}_decodeSimple(t,i){t.points=[];let a=new A(d,t.numberOfContours).decode(i);t.instructions=new A(ee,d).decode(i);let s=[],r=a[a.length-1]+1;for(;s.length<r;){var n=i.readUInt8();if(s.push(n),n&a9){let f=i.readUInt8();for(let u=0;u<f;u++)s.push(n)}}for(var o=0;o<s.length;o++){var n=s[o];let u=new ni(!!(n&e9),a.indexOf(o)>=0,0,0);t.points.push(u)}let l=0;for(var o=0;o<s.length;o++){var n=s[o];t.points[o].x=l=this._parseGlyphCoord(i,l,n&t9,n&s9)}let c=0;for(var o=0;o<s.length;o++){var n=s[o];t.points[o].y=c=this._parseGlyphCoord(i,c,n&i9,n&r9)}if(this._font._variationProcessor){let f=t.points.slice();f.push(...this._getPhantomPoints(t)),this._font._variationProcessor.transformPoints(this.id,f),t.phantomPoints=f.slice(-4)}}_decodeComposite(t,i,a=0){t.components=[];let s=!1,r=sd;for(;r&sd;){r=i.readUInt16BE();let c=i.pos-a,f=i.readUInt16BE();if(s||(s=(r&f9)!==0),r&n9)var n=i.readInt16BE(),o=i.readInt16BE();else var n=i.readInt8(),o=i.readInt8();var l=new u9(f,n,o);l.pos=c,r&o9?l.scaleX=l.scaleY=(i.readUInt8()<<24|i.readUInt8()<<16)/1073741824:r&l9?(l.scaleX=(i.readUInt8()<<24|i.readUInt8()<<16)/1073741824,l.scaleY=(i.readUInt8()<<24|i.readUInt8()<<16)/1073741824):r&c9&&(l.scaleX=(i.readUInt8()<<24|i.readUInt8()<<16)/1073741824,l.scale01=(i.readUInt8()<<24|i.readUInt8()<<16)/1073741824,l.scale10=(i.readUInt8()<<24|i.readUInt8()<<16)/1073741824,l.scaleY=(i.readUInt8()<<24|i.readUInt8()<<16)/1073741824),t.components.push(l)}if(this._font._variationProcessor){let c=[];for(let f=0;f<t.components.length;f++){var l=t.components[f];c.push(new ni(!0,!0,l.dx,l.dy))}c.push(...this._getPhantomPoints(t)),this._font._variationProcessor.transformPoints(this.id,c),t.phantomPoints=c.splice(-4,4);for(let f=0;f<c.length;f++){let u=c[f];t.components[f].dx=u.x,t.components[f].dy=u.y}}return s}_getPhantomPoints(t){let i=this._getCBox(!0);this._metrics==null&&(this._metrics=bi.prototype._getMetrics.call(this,i));let{advanceWidth:a,advanceHeight:s,leftBearing:r,topBearing:n}=this._metrics;return[new ni(!1,!0,t.xMin-r,0),new ni(!1,!0,t.xMin-r+a,0),new ni(!1,!0,0,t.yMax+n),new ni(!1,!0,0,t.yMax+n+s)]}_getContours(){let t=this._decode();if(!t)return[];let i=[];if(t.numberOfContours<0)for(let n of t.components){let o=this._font.getGlyph(n.glyphID)._getContours();for(let l=0;l<o.length;l++){let c=o[l];for(let f=0;f<c.length;f++){let u=c[f],h=u.x*n.scaleX+u.y*n.scale01+n.dx,m=u.y*n.scaleY+u.x*n.scale10+n.dy;i.push(new ni(u.onCurve,u.endContour,h,m))}}}else i=t.points||[];t.phantomPoints&&!this._font.directory.tables.HVAR&&(this._metrics.advanceWidth=t.phantomPoints[1].x-t.phantomPoints[0].x,this._metrics.advanceHeight=t.phantomPoints[3].y-t.phantomPoints[2].y,this._metrics.leftBearing=t.xMin-t.phantomPoints[0].x,this._metrics.topBearing=t.phantomPoints[2].y-t.yMax);let a=[],s=[];for(let n=0;n<i.length;n++){var r=i[n];s.push(r),r.endContour&&(a.push(s),s=[])}return a}_getMetrics(){if(this._metrics)return this._metrics;let t=this._getCBox(!0);return super._getMetrics(t),this._font._variationProcessor&&!this._font.HVAR&&this.path,this._metrics}_getPath(){let t=this._getContours(),i=new qa;for(let s=0;s<t.length;s++){let r=t[s],n=r[0],o=r[r.length-1],l=0;if(n.onCurve){var a=null;l=1}else{o.onCurve?n=o:n=new ni(!1,!1,(n.x+o.x)/2,(n.y+o.y)/2);var a=n}i.moveTo(n.x,n.y);for(let c=l;c<r.length;c++){let f=r[c],u=c===0?n:r[c-1];if(u.onCurve&&f.onCurve)i.lineTo(f.x,f.y);else if(u.onCurve&&!f.onCurve)var a=f;else if(!u.onCurve&&!f.onCurve){let m=(u.x+f.x)/2,b=(u.y+f.y)/2;i.quadraticCurveTo(u.x,u.y,m,b);var a=f}else if(!u.onCurve&&f.onCurve){i.quadraticCurveTo(a.x,a.y,f.x,f.y);var a=null}else throw new Error("Unknown TTF path state")}a&&i.quadraticCurveTo(a.x,a.y,n.x,n.y),i.closePath()}return i}constructor(...t){super(...t),Wt(this,"type","TTF")}}class d9 extends bi{_getName(){return this._font.CFF2?super._getName():this._font["CFF "].getGlyphName(this.id)}bias(t){return t.length<1240?107:t.length<33900?1131:32768}_getPath(){let t=this._font.CFF2||this._font["CFF "],{stream:i}=t,a=t.topDict.CharStrings[this.id],s=a.offset+a.length;i.pos=a.offset;let r=new qa,n=[],o=[],l=null,c=0,f=0,u=0,h,m,b=!1;this._usedGsubrs=h={},this._usedSubrs=m={};let M=t.globalSubrIndex||[],G=this.bias(M),L=t.privateDictForGlyph(this.id)||{},O=L.Subrs||[],v=this.bias(O),P=t.topDict.vstore&&t.topDict.vstore.itemVariationStore,y=L.vsindex,K=this._font._variationProcessor;function R(){l==null&&(l=n.shift()+L.nominalWidthX)}function j(){return n.length%2!==0&&R(),c+=n.length>>1,n.length=0}function ie(le,we){b&&r.closePath(),r.moveTo(le,we),b=!0}let re=function(){for(;i.pos<s;){let Fe=i.readUInt8();if(Fe<32){let ze,Oe,Ye,Ce,X,J,q,Ne,ke,Le,Ke,Ue,De,Vt,Q,B;switch(Fe){case 1:case 3:case 18:case 23:j();break;case 4:n.length>1&&R(),u+=n.shift(),ie(f,u);break;case 5:for(;n.length>=2;)f+=n.shift(),u+=n.shift(),r.lineTo(f,u);break;case 6:case 7:for(Ye=Fe===6;n.length>=1;)Ye?f+=n.shift():u+=n.shift(),r.lineTo(f,u),Ye=!Ye;break;case 8:for(;n.length>0;)Ce=f+n.shift(),X=u+n.shift(),J=Ce+n.shift(),q=X+n.shift(),f=J+n.shift(),u=q+n.shift(),r.bezierCurveTo(Ce,X,J,q,f,u);break;case 10:if(ze=n.pop()+v,Oe=O[ze],Oe){m[ze]=!0;let z=i.pos,D=s;i.pos=Oe.offset,s=Oe.offset+Oe.length,re(),i.pos=z,s=D}break;case 11:if(t.version>=2)break;return;case 14:if(t.version>=2)break;n.length>0&&R(),b&&(r.closePath(),b=!1);break;case 15:if(t.version<2)throw new Error("vsindex operator not supported in CFF v1");y=n.pop();break;case 16:{if(t.version<2)throw new Error("blend operator not supported in CFF v1");if(!K)throw new Error("blend operator in non-variation font");let z=K.getBlendVector(P,y),D=n.pop(),ne=D*z.length,he=n.length-ne,ce=he-D;for(let de=0;de<D;de++){let Ae=n[ce+de];for(let fe=0;fe<z.length;fe++)Ae+=z[fe]*n[he++];n[ce+de]=Ae}for(;ne--;)n.pop();break}case 19:case 20:j(),i.pos+=c+7>>3;break;case 21:n.length>2&&R(),f+=n.shift(),u+=n.shift(),ie(f,u);break;case 22:n.length>1&&R(),f+=n.shift(),ie(f,u);break;case 24:for(;n.length>=8;)Ce=f+n.shift(),X=u+n.shift(),J=Ce+n.shift(),q=X+n.shift(),f=J+n.shift(),u=q+n.shift(),r.bezierCurveTo(Ce,X,J,q,f,u);f+=n.shift(),u+=n.shift(),r.lineTo(f,u);break;case 25:for(;n.length>=8;)f+=n.shift(),u+=n.shift(),r.lineTo(f,u);Ce=f+n.shift(),X=u+n.shift(),J=Ce+n.shift(),q=X+n.shift(),f=J+n.shift(),u=q+n.shift(),r.bezierCurveTo(Ce,X,J,q,f,u);break;case 26:for(n.length%2&&(f+=n.shift());n.length>=4;)Ce=f,X=u+n.shift(),J=Ce+n.shift(),q=X+n.shift(),f=J,u=q+n.shift(),r.bezierCurveTo(Ce,X,J,q,f,u);break;case 27:for(n.length%2&&(u+=n.shift());n.length>=4;)Ce=f+n.shift(),X=u,J=Ce+n.shift(),q=X+n.shift(),f=J+n.shift(),u=q,r.bezierCurveTo(Ce,X,J,q,f,u);break;case 28:n.push(i.readInt16BE());break;case 29:if(ze=n.pop()+G,Oe=M[ze],Oe){h[ze]=!0;let z=i.pos,D=s;i.pos=Oe.offset,s=Oe.offset+Oe.length,re(),i.pos=z,s=D}break;case 30:case 31:for(Ye=Fe===31;n.length>=4;)Ye?(Ce=f+n.shift(),X=u,J=Ce+n.shift(),q=X+n.shift(),u=q+n.shift(),f=J+(n.length===1?n.shift():0)):(Ce=f,X=u+n.shift(),J=Ce+n.shift(),q=X+n.shift(),f=J+n.shift(),u=q+(n.length===1?n.shift():0)),r.bezierCurveTo(Ce,X,J,q,f,u),Ye=!Ye;break;case 12:switch(Fe=i.readUInt8(),Fe){case 3:let z=n.pop(),D=n.pop();n.push(z&&D?1:0);break;case 4:z=n.pop(),D=n.pop(),n.push(z||D?1:0);break;case 5:z=n.pop(),n.push(z?0:1);break;case 9:z=n.pop(),n.push(Math.abs(z));break;case 10:z=n.pop(),D=n.pop(),n.push(z+D);break;case 11:z=n.pop(),D=n.pop(),n.push(z-D);break;case 12:z=n.pop(),D=n.pop(),n.push(z/D);break;case 14:z=n.pop(),n.push(-z);break;case 15:z=n.pop(),D=n.pop(),n.push(z===D?1:0);break;case 18:n.pop();break;case 20:let ne=n.pop(),he=n.pop();o[he]=ne;break;case 21:he=n.pop(),n.push(o[he]||0);break;case 22:let ce=n.pop(),de=n.pop(),Ae=n.pop(),fe=n.pop();n.push(Ae<=fe?ce:de);break;case 23:n.push(Math.random());break;case 24:z=n.pop(),D=n.pop(),n.push(z*D);break;case 26:z=n.pop(),n.push(Math.sqrt(z));break;case 27:z=n.pop(),n.push(z,z);break;case 28:z=n.pop(),D=n.pop(),n.push(D,z);break;case 29:he=n.pop(),he<0?he=0:he>n.length-1&&(he=n.length-1),n.push(n[he]);break;case 30:let te=n.pop(),_e=n.pop();if(_e>=0)for(;_e>0;){var le=n[te-1];for(let tt=te-2;tt>=0;tt--)n[tt+1]=n[tt];n[0]=le,_e--}else for(;_e<0;){var le=n[0];for(let vt=0;vt<=te;vt++)n[vt]=n[vt+1];n[te-1]=le,_e++}break;case 34:Ce=f+n.shift(),X=u,J=Ce+n.shift(),q=X+n.shift(),Ne=J+n.shift(),ke=q,Le=Ne+n.shift(),Ke=ke,Ue=Le+n.shift(),De=Ke,Vt=Ue+n.shift(),Q=De,f=Vt,u=Q,r.bezierCurveTo(Ce,X,J,q,Ne,ke),r.bezierCurveTo(Le,Ke,Ue,De,Vt,Q);break;case 35:B=[];for(let tt=0;tt<=5;tt++)f+=n.shift(),u+=n.shift(),B.push(f,u);r.bezierCurveTo(...B.slice(0,6)),r.bezierCurveTo(...B.slice(6)),n.shift();break;case 36:Ce=f+n.shift(),X=u+n.shift(),J=Ce+n.shift(),q=X+n.shift(),Ne=J+n.shift(),ke=q,Le=Ne+n.shift(),Ke=ke,Ue=Le+n.shift(),De=Ke+n.shift(),Vt=Ue+n.shift(),Q=De,f=Vt,u=Q,r.bezierCurveTo(Ce,X,J,q,Ne,ke),r.bezierCurveTo(Le,Ke,Ue,De,Vt,Q);break;case 37:let ft=f,Ft=u;B=[];for(let tt=0;tt<=4;tt++)f+=n.shift(),u+=n.shift(),B.push(f,u);Math.abs(f-ft)>Math.abs(u-Ft)?(f+=n.shift(),u=Ft):(f=ft,u+=n.shift()),B.push(f,u),r.bezierCurveTo(...B.slice(0,6)),r.bezierCurveTo(...B.slice(6));break;default:throw new Error(`Unknown op: 12 ${Fe}`)}break;default:throw new Error(`Unknown op: ${Fe}`)}}else if(Fe<247)n.push(Fe-139);else if(Fe<251){var we=i.readUInt8();n.push((Fe-247)*256+we+108)}else if(Fe<255){var we=i.readUInt8();n.push(-(Fe-251)*256-we-108)}else n.push(i.readInt32BE()/65536)}};return re(),b&&r.closePath(),r}constructor(...t){super(...t),Wt(this,"type","CFF")}}let h9=new E({originX:d,originY:d,type:new We(4),data:new ui(e=>e.parent.buflen-e._currentOffset)});class p9 extends dn{getImageForSize(t){for(let n=0;n<this._font.sbix.imageTables.length;n++){var i=this._font.sbix.imageTables[n];if(i.ppem>=t)break}let a=i.imageOffsets,s=a[this.id],r=a[this.id+1];return s===r?null:(this._font.stream.pos=s,h9.decode(this._font.stream,{buflen:r-s}))}render(t,i){let a=this.getImageForSize(i);if(a!=null){let s=i/this._font.unitsPerEm;t.image(a.data,{height:i,x:a.originX,y:(this.bbox.minY-a.originY)*s})}this._font.sbix.flags.renderOutlines&&super.render(t,i)}constructor(...t){super(...t),Wt(this,"type","SBIX")}}class rd{constructor(t,i){this.glyph=t,this.color=i}}class g9 extends bi{_getBBox(){let t=new Ki;for(let i=0;i<this.layers.length;i++){let s=this.layers[i].glyph.bbox;t.addPoint(s.minX,s.minY),t.addPoint(s.maxX,s.maxY)}return t}get layers(){let t=this._font.CPAL,i=this._font.COLR,a=0,s=i.baseGlyphRecord.length-1;for(;a<=s;){let f=a+s>>1;var r=i.baseGlyphRecord[f];if(this.id<r.gid)s=f-1;else if(this.id>r.gid)a=f+1;else{var n=r;break}}if(n==null){var o=this._font._getBaseGlyph(this.id),l={red:0,green:0,blue:0,alpha:255};return[new rd(o,l)]}let c=[];for(let f=n.firstLayerIndex;f<n.firstLayerIndex+n.numLayers;f++){var r=i.layerRecords[f],l=t.colorRecords[r.paletteIndex],o=this._font._getBaseGlyph(r.gid);c.push(new rd(o,l))}return c}render(t,i){for(let{glyph:a,color:s}of this.layers)t.fillColor([s.red,s.green,s.blue],s.alpha/255*100),a.render(t,i)}constructor(...t){super(...t),Wt(this,"type","COLR")}}const m9=32768,y9=4095,b9=32768,nd=16384,w9=8192,od=4095,ld=128,cd=127,v9=128,x9=64,k9=63;class N9{normalizeCoords(t){let i=[];for(var a=0;a<this.font.fvar.axis.length;a++){let s=this.font.fvar.axis[a];t[a]<s.defaultValue?i.push((t[a]-s.defaultValue+Number.EPSILON)/(s.defaultValue-s.minValue+Number.EPSILON)):i.push((t[a]-s.defaultValue+Number.EPSILON)/(s.maxValue-s.defaultValue+Number.EPSILON))}if(this.font.avar)for(var a=0;a<this.font.avar.segment.length;a++){let r=this.font.avar.segment[a];for(let n=0;n<r.correspondence.length;n++){let o=r.correspondence[n];if(n>=1&&i[a]<o.fromCoord){let l=r.correspondence[n-1];i[a]=((i[a]-l.fromCoord)*(o.toCoord-l.toCoord)+Number.EPSILON)/(o.fromCoord-l.fromCoord+Number.EPSILON)+l.toCoord;break}}}return i}transformPoints(t,i){if(!this.font.fvar||!this.font.gvar)return;let{gvar:a}=this.font;if(t>=a.glyphCount)return;let s=a.offsets[t];if(s===a.offsets[t+1])return;let{stream:r}=this.font;if(r.pos=s,r.pos>=r.length)return;let n=r.readUInt16BE(),o=s+r.readUInt16BE();if(n&m9){var l=r.pos;r.pos=o;var c=this.decodePoints();o=r.pos,r.pos=l}let f=i.map(G=>G.copy());n&=y9;for(let G=0;G<n;G++){let L=r.readUInt16BE(),O=r.readUInt16BE();if(O&b9){var u=[];for(let j=0;j<a.axisCount;j++)u.push(r.readInt16BE()/16384)}else{if((O&od)>=a.globalCoordCount)throw new Error("Invalid gvar table");var u=a.globalCoords[O&od]}if(O&nd){var h=[];for(let j=0;j<a.axisCount;j++)h.push(r.readInt16BE()/16384);var m=[];for(let j=0;j<a.axisCount;j++)m.push(r.readInt16BE()/16384)}let v=this.tupleFactor(O,u,h,m);if(v===0){o+=L;continue}var l=r.pos;if(r.pos=o,O&w9)var b=this.decodePoints();else var b=c;let y=b.length===0?i.length:b.length,K=this.decodeDeltas(y),R=this.decodeDeltas(y);if(b.length===0)for(let j=0;j<i.length;j++){var M=i[j];M.x+=Math.round(K[j]*v),M.y+=Math.round(R[j]*v)}else{let j=f.map(re=>re.copy()),ie=i.map(()=>!1);for(let re=0;re<b.length;re++){let le=b[re];if(le<i.length){let we=j[le];ie[le]=!0,we.x+=K[re]*v,we.y+=R[re]*v}}this.interpolateMissingDeltas(j,f,ie);for(let re=0;re<i.length;re++){let le=j[re].x-f[re].x,we=j[re].y-f[re].y;i[re].x=Math.round(i[re].x+le),i[re].y=Math.round(i[re].y+we)}}o+=L,r.pos=l}}decodePoints(){let t=this.font.stream,i=t.readUInt8();i&ld&&(i=(i&cd)<<8|t.readUInt8());let a=new Uint16Array(i),s=0,r=0;for(;s<i;){let n=t.readUInt8(),o=(n&cd)+1,l=n&ld?t.readUInt16:t.readUInt8;for(let c=0;c<o&&s<i;c++)r+=l.call(t),a[s++]=r}return a}decodeDeltas(t){let i=this.font.stream,a=0,s=new Int16Array(t);for(;a<t;){let r=i.readUInt8(),n=(r&k9)+1;if(r&v9)a+=n;else{let o=r&x9?i.readInt16BE:i.readInt8;for(let l=0;l<n&&a<t;l++)s[a++]=o.call(i)}}return s}tupleFactor(t,i,a,s){let r=this.normalizedCoords,{gvar:n}=this.font,o=1;for(let l=0;l<n.axisCount;l++)if(i[l]!==0){if(r[l]===0)return 0;if(t&nd){if(r[l]<a[l]||r[l]>s[l])return 0;r[l]<i[l]?o=o*(r[l]-a[l]+Number.EPSILON)/(i[l]-a[l]+Number.EPSILON):o=o*(s[l]-r[l]+Number.EPSILON)/(s[l]-i[l]+Number.EPSILON)}else{if(r[l]<Math.min(0,i[l])||r[l]>Math.max(0,i[l]))return 0;o=(o*r[l]+Number.EPSILON)/(i[l]+Number.EPSILON)}}return o}interpolateMissingDeltas(t,i,a){if(t.length===0)return;let s=0;for(;s<t.length;){let r=s,n=s,o=t[n];for(;!o.endContour;)o=t[++n];for(;s<=n&&!a[s];)s++;if(s>n)continue;let l=s,c=s;for(s++;s<=n;)a[s]&&(this.deltaInterpolate(c+1,s-1,c,s,i,t),c=s),s++;c===l?this.deltaShift(r,n,c,i,t):(this.deltaInterpolate(c+1,n,c,l,i,t),l>0&&this.deltaInterpolate(r,l-1,c,l,i,t)),s=n+1}}deltaInterpolate(t,i,a,s,r,n){if(t>i)return;let o=["x","y"];for(let c=0;c<o.length;c++){let f=o[c];if(r[a][f]>r[s][f]){var l=a;a=s,s=l}let u=r[a][f],h=r[s][f],m=n[a][f],b=n[s][f];if(u!==h||m===b){let M=u===h?0:(b-m)/(h-u);for(let G=t;G<=i;G++){let L=r[G][f];L<=u?L+=m-u:L>=h?L+=b-h:L=m+(L-u)*M,n[G][f]=L}}}}deltaShift(t,i,a,s,r){let n=r[a].x-s[a].x,o=r[a].y-s[a].y;if(!(n===0&&o===0))for(let l=t;l<=i;l++)l!==a&&(r[l].x+=n,r[l].y+=o)}getAdvanceAdjustment(t,i){let a,s;if(i.advanceWidthMapping){let r=t;r>=i.advanceWidthMapping.mapCount&&(r=i.advanceWidthMapping.mapCount-1),i.advanceWidthMapping.entryFormat,{outerIndex:a,innerIndex:s}=i.advanceWidthMapping.mapData[r]}else a=0,s=t;return this.getDelta(i.itemVariationStore,a,s)}getDelta(t,i,a){if(i>=t.itemVariationData.length)return 0;let s=t.itemVariationData[i];if(a>=s.deltaSets.length)return 0;let r=s.deltaSets[a],n=this.getBlendVector(t,i),o=0;for(let l=0;l<s.regionIndexCount;l++)o+=r.deltas[l]*n[l];return o}getBlendVector(t,i){let a=t.itemVariationData[i];if(this.blendVectors.has(a))return this.blendVectors.get(a);let s=this.normalizedCoords,r=[];for(let n=0;n<a.regionIndexCount;n++){let o=1,l=a.regionIndexes[n],c=t.variationRegionList.variationRegions[l];for(let f=0;f<c.length;f++){let u=c[f],h;u.startCoord>u.peakCoord||u.peakCoord>u.endCoord||u.startCoord<0&&u.endCoord>0&&u.peakCoord!==0||u.peakCoord===0?h=1:s[f]<u.startCoord||s[f]>u.endCoord?h=0:s[f]===u.peakCoord?h=1:s[f]<u.peakCoord?h=(s[f]-u.startCoord+Number.EPSILON)/(u.peakCoord-u.startCoord+Number.EPSILON):h=(u.endCoord-s[f]+Number.EPSILON)/(u.endCoord-u.peakCoord+Number.EPSILON),o*=h}r[n]=o}return this.blendVectors.set(a,r),r}constructor(t,i){this.font=t,this.normalizedCoords=this.normalizeCoords(i),this.blendVectors=new Map}}Promise.resolve();class fd{includeGlyph(t){return typeof t=="object"&&(t=t.id),this.mapping[t]==null&&(this.glyphs.push(t),this.mapping[t]=this.glyphs.length-1),this.mapping[t]}constructor(t){this.font=t,this.glyphs=[],this.mapping={},this.includeGlyph(0)}}const A9=1,C9=2,S9=4,V9=8,_9=16,I9=32;class ud{static size(t){return t>=0&&t<=255?1:2}static encode(t,i){i>=0&&i<=255?t.writeUInt8(i):t.writeInt16BE(i)}}let dd=new E({numberOfContours:H,xMin:H,yMin:H,xMax:H,yMax:H,endPtsOfContours:new A(d,"numberOfContours"),instructions:new A(ee,d),flags:new A(ee,0),xPoints:new A(ud,0),yPoints:new A(ud,0)});class T9{encodeSimple(t,i=[]){let a=[],s=[],r=[],n=[],o=0,l=0,c=0,f=0,u=0;for(let L=0;L<t.commands.length;L++){let O=t.commands[L];for(let v=0;v<O.args.length;v+=2){let P=O.args[v],y=O.args[v+1],K=0;if(O.command==="quadraticCurveTo"&&v===2){let R=t.commands[L+1];if(R&&R.command==="quadraticCurveTo"){let j=(l+R.args[0])/2,ie=(c+R.args[1])/2;if(P===j&&y===ie)continue}}O.command==="quadraticCurveTo"&&v===0||(K|=A9),K=this._encodePoint(P,l,s,K,C9,_9),K=this._encodePoint(y,c,r,K,S9,I9),K===f&&o<255?(n[n.length-1]|=V9,o++):(o>0&&(n.push(o),o=0),n.push(K),f=K),l=P,c=y,u++}O.command==="closePath"&&a.push(u-1)}t.commands.length>1&&t.commands[t.commands.length-1].command!=="closePath"&&a.push(u-1);let h=t.bbox,m={numberOfContours:a.length,xMin:h.minX,yMin:h.minY,xMax:h.maxX,yMax:h.maxY,endPtsOfContours:a,instructions:i,flags:n,xPoints:s,yPoints:r},b=dd.size(m),M=4-b%4,G=new Tr(b+M);return dd.encode(G,m),M!==0&&G.fill(0,M),G.buffer}_encodePoint(t,i,a,s,r,n){let o=t-i;return t===i?s|=n:(-255<=o&&o<=255&&(s|=r,o<0?o=-o:s|=n),a.push(o)),s}}class F9 extends fd{_addGlyph(t){let i=this.font.getGlyph(t),a=i._decode(),s=this.font.loca.offsets[t],r=this.font.loca.offsets[t+1],n=this.font._getTableStream("glyf");n.pos+=s;let o=n.readBuffer(r-s);if(a&&a.numberOfContours<0){o=new Uint8Array(o);let l=new DataView(o.buffer);for(let c of a.components)t=this.includeGlyph(c.glyphID),l.setUint16(c.pos,t)}else a&&this.font._variationProcessor&&(o=this.glyphEncoder.encodeSimple(i.path,a.instructions));return this.glyf.push(o),this.loca.offsets.push(this.offset),this.hmtx.metrics.push({advance:i.advanceWidth,bearing:i._getMetrics().leftBearing}),this.offset+=o.length,this.glyf.length-1}encode(){this.glyf=[],this.offset=0,this.loca={offsets:[],version:this.font.loca.version},this.hmtx={metrics:[],bearings:[]};let t=0;for(;t<this.glyphs.length;)this._addGlyph(this.glyphs[t++]);let i=Do(this.font.maxp);i.numGlyphs=this.glyf.length,this.loca.offsets.push(this.offset);let a=Do(this.font.head);a.indexToLocFormat=this.loca.version;let s=Do(this.font.hhea);return s.numberOfMetrics=this.hmtx.metrics.length,F0.toBuffer({tables:{head:a,hhea:s,loca:this.loca,maxp:i,"cvt ":this.font["cvt "],prep:this.font.prep,glyf:this.glyf,hmtx:this.hmtx,fpgm:this.font.fpgm}})}constructor(t){super(t),this.glyphEncoder=new T9}}class P9 extends fd{subsetCharstrings(){this.charstrings=[];let t={};for(let i of this.glyphs){this.charstrings.push(this.cff.getCharString(i));let a=this.font.getGlyph(i);a.path;for(let s in a._usedGsubrs)t[s]=!0}this.gsubrs=this.subsetSubrs(this.cff.globalSubrIndex,t)}subsetSubrs(t,i){let a=[];for(let s=0;s<t.length;s++){let r=t[s];i[s]?(this.cff.stream.pos=r.offset,a.push(this.cff.stream.readBuffer(r.length))):a.push(new Uint8Array([11]))}return a}subsetFontdict(t){t.FDArray=[],t.FDSelect={version:0,fds:[]};let i={},a=[],s={};for(let r of this.glyphs){let n=this.cff.fdForGlyph(r);if(n==null)continue;i[n]||(t.FDArray.push(Object.assign({},this.cff.topDict.FDArray[n])),a.push({}),s[n]=t.FDArray.length-1),i[n]=!0,t.FDSelect.fds.push(s[n]);let o=this.font.getGlyph(r);o.path;for(let l in o._usedSubrs)a[s[n]][l]=!0}for(let r=0;r<t.FDArray.length;r++){let n=t.FDArray[r];delete n.FontName,n.Private&&n.Private.Subrs&&(n.Private=Object.assign({},n.Private),n.Private.Subrs=this.subsetSubrs(n.Private.Subrs,a[r]))}}createCIDFontdict(t){let i={};for(let s of this.glyphs){let r=this.font.getGlyph(s);r.path;for(let n in r._usedSubrs)i[n]=!0}let a=Object.assign({},this.cff.topDict.Private);return this.cff.topDict.Private&&this.cff.topDict.Private.Subrs&&(a.Subrs=this.subsetSubrs(this.cff.topDict.Private.Subrs,i)),t.FDArray=[{Private:a}],t.FDSelect={version:3,nRanges:1,ranges:[{first:0,fd:0}],sentinel:this.charstrings.length}}addString(t){return t?(this.strings||(this.strings=[]),this.strings.push(t),Zr.length+this.strings.length-1):null}encode(){this.subsetCharstrings();let t={version:this.charstrings.length>255?2:1,ranges:[{first:1,nLeft:this.charstrings.length-2}]},i=Object.assign({},this.cff.topDict);i.Private=null,i.charset=t,i.Encoding=null,i.CharStrings=this.charstrings;for(let s of["version","Notice","Copyright","FullName","FamilyName","Weight","PostScript","BaseFontName","FontName"])i[s]=this.addString(this.cff.string(i[s]));i.ROS=[this.addString("Adobe"),this.addString("Identity"),0],i.CIDCount=this.charstrings.length,this.cff.isCIDFont?this.subsetFontdict(i):this.createCIDFontdict(i);let a={version:1,hdrSize:this.cff.hdrSize,offSize:4,header:this.cff.header,nameIndex:[this.cff.postscriptName],topDictIndex:[i],stringIndex:this.strings,globalSubrIndex:this.gsubrs};return g0.toBuffer(a)}constructor(t){if(super(t),this.cff=this.font["CFF "],!this.cff)throw new Error("Not a CFF Font")}}class Rt{static probe(t){let i=Kr.decode(t.slice(0,4));return i==="true"||i==="OTTO"||i==="\0\0\0"}setDefaultLanguage(t=null){this.defaultLanguage=t}_getTable(t){if(!(t.tag in this._tables))try{this._tables[t.tag]=this._decodeTable(t)}catch{}return this._tables[t.tag]}_getTableStream(t){let i=this.directory.tables[t];return i?(this.stream.pos=i.offset,this.stream):null}_decodeDirectory(){return this.directory=F0.decode(this.stream,{_startOffset:0})}_decodeTable(t){let i=this.stream.pos,a=this._getTableStream(t.tag),s=Hr[t.tag].decode(a,this,t.length);return this.stream.pos=i,s}getName(t,i=this.defaultLanguage||Lr){let a=this.name&&this.name.records[t];return a&&(a[i]||a[this.defaultLanguage]||a[Lr]||a.en||a[Object.keys(a)[0]])||null}get postscriptName(){return this.getName("postscriptName")}get fullName(){return this.getName("fullName")}get familyName(){return this.getName("fontFamily")}get subfamilyName(){return this.getName("fontSubfamily")}get copyright(){return this.getName("copyright")}get version(){return this.getName("version")}get ascent(){return this.hhea.ascent}get descent(){return this.hhea.descent}get lineGap(){return this.hhea.lineGap}get underlinePosition(){return this.post.underlinePosition}get underlineThickness(){return this.post.underlineThickness}get italicAngle(){return this.post.italicAngle}get capHeight(){let t=this["OS/2"];return t?t.capHeight:this.ascent}get xHeight(){let t=this["OS/2"];return t?t.xHeight:0}get numGlyphs(){return this.maxp.numGlyphs}get unitsPerEm(){return this.head.unitsPerEm}get bbox(){return Object.freeze(new Ki(this.head.xMin,this.head.yMin,this.head.xMax,this.head.yMax))}get _cmapProcessor(){return new al(this.cmap)}get characterSet(){return this._cmapProcessor.getCharacterSet()}hasGlyphForCodePoint(t){return!!this._cmapProcessor.lookup(t)}glyphForCodePoint(t){return this.getGlyph(this._cmapProcessor.lookup(t),[t])}glyphsForString(t){let i=[],a=t.length,s=0,r=-1,n=-1;for(;s<=a;){let o=0,l=0;if(s<a){if(o=t.charCodeAt(s++),55296<=o&&o<=56319&&s<a){let c=t.charCodeAt(s);56320<=c&&c<=57343&&(s++,o=((o&1023)<<10)+(c&1023)+65536)}l=65024<=o&&o<=65039||917760<=o&&o<=917999?1:0}else s++;n===0&&l===1?i.push(this.getGlyph(this._cmapProcessor.lookup(r,o),[r,o])):n===0&&l===0&&i.push(this.glyphForCodePoint(r)),r=o,n=l}return i}get _layoutEngine(){return new Q8(this)}layout(t,i,a,s,r){return this._layoutEngine.layout(t,i,a,s,r)}stringsForGlyph(t){return this._layoutEngine.stringsForGlyph(t)}get availableFeatures(){return this._layoutEngine.getAvailableFeatures()}getAvailableFeatures(t,i){return this._layoutEngine.getAvailableFeatures(t,i)}_getBaseGlyph(t,i=[]){return this._glyphs[t]||(this.directory.tables.glyf?this._glyphs[t]=new dn(t,i,this):(this.directory.tables["CFF "]||this.directory.tables.CFF2)&&(this._glyphs[t]=new d9(t,i,this))),this._glyphs[t]||null}getGlyph(t,i=[]){return this._glyphs[t]||(this.directory.tables.sbix?this._glyphs[t]=new p9(t,i,this):this.directory.tables.COLR&&this.directory.tables.CPAL?this._glyphs[t]=new g9(t,i,this):this._getBaseGlyph(t,i)),this._glyphs[t]||null}createSubset(){return this.directory.tables["CFF "]?new P9(this):new F9(this)}get variationAxes(){let t={};if(!this.fvar)return t;for(let i of this.fvar.axis)t[i.axisTag.trim()]={name:i.name.en,min:i.minValue,default:i.defaultValue,max:i.maxValue};return t}get namedVariations(){let t={};if(!this.fvar)return t;for(let i of this.fvar.instance){let a={};for(let s=0;s<this.fvar.axis.length;s++){let r=this.fvar.axis[s];a[r.axisTag.trim()]=i.coord[s]}t[i.name.en]=a}return t}getVariation(t){if(!(this.directory.tables.fvar&&(this.directory.tables.gvar&&this.directory.tables.glyf||this.directory.tables.CFF2)))throw new Error("Variations require a font with the fvar, gvar and glyf, or CFF2 tables.");if(typeof t=="string"&&(t=this.namedVariations[t]),typeof t!="object")throw new Error("Variation settings must be either a variation name or settings object.");let i=this.fvar.axis.map((r,n)=>{let o=r.axisTag.trim();return o in t?Math.max(r.minValue,Math.min(r.maxValue,t[o])):r.defaultValue}),a=new Pt(this.stream.buffer);a.pos=this._directoryPos;let s=new Rt(a,i);return s._tables=this._tables,s}get _variationProcessor(){if(!this.fvar)return null;let t=this.variationCoords;return!t&&!this.CFF2?null:(t||(t=this.fvar.axis.map(i=>i.defaultValue)),new N9(this,t))}getFont(t){return this.getVariation(t)}constructor(t,i=null){Wt(this,"type","TTF"),this.defaultLanguage=null,this.stream=t,this.variationCoords=i,this._directoryPos=this.stream.pos,this._tables={},this._glyphs={},this._decodeDirectory();for(let a in this.directory.tables){let s=this.directory.tables[a];Hr[a]&&s.length>0&&Object.defineProperty(this,a,{get:this._getTable.bind(this,s)})}}}Et([Ot],Rt.prototype,"bbox",null),Et([Ot],Rt.prototype,"_cmapProcessor",null),Et([Ot],Rt.prototype,"characterSet",null),Et([Ot],Rt.prototype,"_layoutEngine",null),Et([Ot],Rt.prototype,"variationAxes",null),Et([Ot],Rt.prototype,"namedVariations",null),Et([Ot],Rt.prototype,"_variationProcessor",null);let E9=new E({tag:new We(4),offset:new S(V,"void",{type:"global"}),compLength:V,length:V,origChecksum:V}),hd=new E({tag:new We(4),flavor:V,length:V,numTables:d,reserved:new st(d),totalSfntSize:V,majorVersion:d,minorVersion:d,metaOffset:V,metaLength:V,metaOrigLength:V,privOffset:V,privLength:V,tables:new A(E9,"numTables")});hd.process=function(){let e={};for(let t of this.tables)e[t.tag]=t;this.tables=e};var O9=hd;class M9 extends Rt{static probe(t){return Kr.decode(t.slice(0,4))==="wOFF"}_decodeDirectory(){this.directory=O9.decode(this.stream,{_startOffset:0})}_getTableStream(t){let i=this.directory.tables[t];if(i)if(this.stream.pos=i.offset,i.compLength<i.length){this.stream.pos+=2;let a=new Uint8Array(i.length),s=EA(this.stream.readBuffer(i.compLength-2),a);return new Pt(s)}else return this.stream;return null}constructor(...t){super(...t),Wt(this,"type","WOFF")}}class R9 extends dn{_decode(){return this._font._transformedGlyphs[this.id]}_getCBox(){return this.path.bbox}constructor(...t){super(...t),Wt(this,"type","WOFF2")}}const pd={decode(e){let t=0,i=[0,1,2,3,4];for(let a=0;a<i.length;a++){let s=e.readUInt8();if(t&3758096384)throw new Error("Overflow");if(t=t<<7|s&127,!(s&128))return t}throw new Error("Bad base 128 number")}};let D9=["cmap","head","hhea","hmtx","maxp","name","OS/2","post","cvt ","fpgm","glyf","loca","prep","CFF ","VORG","EBDT","EBLC","gasp","hdmx","kern","LTSH","PCLT","VDMX","vhea","vmtx","BASE","GDEF","GPOS","GSUB","EBSC","JSTF","MATH","CBDT","CBLC","COLR","CPAL","SVG ","sbix","acnt","avar","bdat","bloc","bsln","cvar","fdsc","feat","fmtx","fvar","gvar","hsty","just","lcar","mort","morx","opbd","prop","trak","Zapf","Silf","Glat","Gloc","Feat","Sill"],z9=new E({flags:ee,customTag:new Fr(new We(4),e=>(e.flags&63)===63),tag:e=>e.customTag||D9[e.flags&63],length:pd,transformVersion:e=>e.flags>>>6&3,transformed:e=>e.tag==="glyf"||e.tag==="loca"?e.transformVersion===0:e.transformVersion!==0,transformLength:new Fr(pd,e=>e.transformed)}),gd=new E({tag:new We(4),flavor:V,length:V,numTables:d,reserved:new st(d),totalSfntSize:V,totalCompressedSize:V,majorVersion:d,minorVersion:d,metaOffset:V,metaLength:V,metaOrigLength:V,privOffset:V,privLength:V,tables:new A(z9,"numTables")});gd.process=function(){let e={};for(let t=0;t<this.tables.length;t++){let i=this.tables[t];e[i.tag]=i}return this.tables=e};var L9=gd;class B9 extends Rt{static probe(t){return Kr.decode(t.slice(0,4))==="wOF2"}_decodeDirectory(){this.directory=L9.decode(this.stream),this._dataPos=this.stream.pos}_decompress(){if(!this._decompressed){this.stream.pos=this._dataPos;let t=this.stream.readBuffer(this.directory.totalCompressedSize),i=0;for(let s in this.directory.tables){let r=this.directory.tables[s];r.offset=i,i+=r.transformLength!=null?r.transformLength:r.length}let a=dC(t,i);if(!a)throw new Error("Error decoding compressed data in WOFF2");this.stream=new Pt(a),this._decompressed=!0}}_decodeTable(t){return this._decompress(),super._decodeTable(t)}_getBaseGlyph(t,i=[]){if(!this._glyphs[t])return this.directory.tables.glyf&&this.directory.tables.glyf.transformed?(this._transformedGlyphs||this._transformGlyfTable(),this._glyphs[t]=new R9(t,i,this)):super._getBaseGlyph(t,i)}_transformGlyfTable(){this._decompress(),this.stream.pos=this.directory.tables.glyf.offset;let t=U9.decode(this.stream),i=[];for(let s=0;s<t.numGlyphs;s++){let r={},n=t.nContours.readInt16BE();if(r.numberOfContours=n,n>0){let o=[],l=0;for(let c=0;c<n;c++){let f=dl(t.nPoints);l+=f,o.push(l)}r.points=j9(t.flags,t.glyphs,l);for(let c=0;c<n;c++)r.points[o[c]-1].endContour=!0;var a=dl(t.glyphs)}else if(n<0&&dn.prototype._decodeComposite.call({_font:this},r,t.composites))var a=dl(t.glyphs);i.push(r)}this._transformedGlyphs=i}constructor(...t){super(...t),Wt(this,"type","WOFF2")}}class ya{decode(t,i){return new Pt(this._buf.decode(t,i))}constructor(t){this.length=t,this._buf=new ui(t)}}let U9=new E({version:V,numGlyphs:d,indexFormat:d,nContourStreamSize:V,nPointsStreamSize:V,flagStreamSize:V,glyphStreamSize:V,compositeStreamSize:V,bboxStreamSize:V,instructionStreamSize:V,nContours:new ya("nContourStreamSize"),nPoints:new ya("nPointsStreamSize"),flags:new ya("flagStreamSize"),glyphs:new ya("glyphStreamSize"),composites:new ya("compositeStreamSize"),bboxes:new ya("bboxStreamSize"),instructions:new ya("instructionStreamSize")});const Z9=253,G9=254,W9=255,md=253;function dl(e){let t=e.readUInt8();return t===Z9?e.readUInt16BE():t===W9?e.readUInt8()+md:t===G9?e.readUInt8()+md*2:t}function wi(e,t){return e&1?t:-t}function j9(e,t,i){let a,s=a=0,r=[];for(let l=0;l<i;l++){let c=0,f=0,u=e.readUInt8(),h=!(u>>7);if(u&=127,u<10)c=0,f=wi(u,((u&14)<<7)+t.readUInt8());else if(u<20)c=wi(u,((u-10&14)<<7)+t.readUInt8()),f=0;else if(u<84){var n=u-20,o=t.readUInt8();c=wi(u,1+(n&48)+(o>>4)),f=wi(u>>1,1+((n&12)<<2)+(o&15))}else if(u<120){var n=u-84;c=wi(u,1+(n/12<<8)+t.readUInt8()),f=wi(u>>1,1+(n%12>>2<<8)+t.readUInt8())}else if(u<124){var o=t.readUInt8();let b=t.readUInt8();c=wi(u,(o<<4)+(b>>4)),f=wi(u>>1,((b&15)<<8)+t.readUInt8())}else c=wi(u,t.readUInt16BE()),f=wi(u>>1,t.readUInt16BE());s+=c,a+=f,r.push(new ni(h,!1,s,a))}return r}let Y9=new Ie(V,{65536:{numFonts:V,offsets:new A(V,"numFonts")},131072:{numFonts:V,offsets:new A(V,"numFonts"),dsigTag:V,dsigLength:V,dsigOffset:V}});class H9{static probe(t){return Kr.decode(t.slice(0,4))==="ttcf"}getFont(t){for(let i of this.header.offsets){let a=new Pt(this.stream.buffer);a.pos=i;let s=new Rt(a);if(s.postscriptName===t||s.postscriptName instanceof Uint8Array&&t instanceof Uint8Array&&s.postscriptName.every((r,n)=>t[n]===r))return s}return null}get fonts(){let t=[];for(let i of this.header.offsets){let a=new Pt(this.stream.buffer);a.pos=i,t.push(new Rt(a))}return t}constructor(t){if(Wt(this,"type","TTC"),this.stream=t,t.readString(4)!=="ttcf")throw new Error("Not a TrueType collection");this.header=Y9.decode(t)}}let X9=new We(ee);new E({len:V,buf:new ui("len")});let K9=new E({id:d,nameOffset:H,attr:ee,dataOffset:Zi,handle:V}),q9=new E({name:new We(4),maxTypeIndex:d,refList:new S(d,new A(K9,e=>e.maxTypeIndex+1),{type:"parent"})}),J9=new E({length:d,types:new A(q9,e=>e.length+1)}),Q9=new E({reserved:new st(ee,24),typeList:new S(d,J9),nameListOffset:new S(d,"void")}),yd=new E({dataOffset:V,map:new S(V,Q9),dataLength:V,mapLength:V});class $9{static probe(t){let i=new Pt(t);try{var a=yd.decode(i)}catch{return!1}for(let s of a.map.typeList.types)if(s.name==="sfnt")return!0;return!1}getFont(t){if(!this.sfnt)return null;for(let i of this.sfnt.refList){let a=this.header.dataOffset+i.dataOffset+4,s=new Pt(this.stream.buffer.slice(a)),r=new Rt(s);if(r.postscriptName===t||r.postscriptName instanceof Uint8Array&&t instanceof Uint8Array&&r.postscriptName.every((n,o)=>t[o]===n))return r}return null}get fonts(){let t=[];for(let i of this.sfnt.refList){let a=this.header.dataOffset+i.dataOffset+4,s=new Pt(this.stream.buffer.slice(a));t.push(new Rt(s))}return t}constructor(t){Wt(this,"type","DFont"),this.stream=t,this.header=yd.decode(this.stream);for(let i of this.header.map.typeList.types){for(let a of i.refList)a.nameOffset>=0?(this.stream.pos=a.nameOffset+this.header.map.nameListOffset,a.name=X9.decode(this.stream)):a.name=null;i.name==="sfnt"&&(this.sfnt=i)}}}Ga(Rt),Ga(M9),Ga(B9),Ga(H9),Ga($9);var St={DEFAULTS:{width:800,height:400,pixelRatio:2,fontFamily:"Roboto",fontSize:48,color:"#000000",textAlign:"center"},LIMITS:{minWidth:1,maxWidth:4096,minHeight:1,maxHeight:4096,minFontSize:1,maxFontSize:512,minDuration:.1,maxDuration:120,maxTextLength:1e4},ANIMATION_TYPES:["typewriter","fadeIn","slideIn","shift","ascend","movingLetters"]},ba=/^#[A-Fa-f0-9]{6}$/,eV=w({src:N().url(),family:N(),weight:yt([N(),k()]).optional(),style:N().optional(),originalFamily:N().optional()}),tV=w({width:k().min(0).default(0),color:N().regex(ba).default("#000000"),opacity:k().min(0).max(1).default(1),radius:k().min(0).default(0)}),iV=yt([k().min(0),w({top:k().min(0).default(0),right:k().min(0).default(0),bottom:k().min(0).default(0),left:k().min(0).default(0)})]),aV=fN.extend({family:N().default(St.DEFAULTS.fontFamily),size:k().int().min(St.LIMITS.minFontSize).max(St.LIMITS.maxFontSize).default(St.DEFAULTS.fontSize),weight:yt([N(),k()]).default("400"),color:N().regex(ba).default(St.DEFAULTS.color),opacity:k().min(0).max(1).default(1),background:N().regex(ba).optional()}),sV=w({type:W(["linear","radial"]).default("linear"),angle:k().min(0).max(360).default(0),stops:Ge(w({offset:k().min(0).max(1),color:N().regex(ba)})).min(2)}),rV=uN.extend({letterSpacing:k().default(0),lineHeight:k().min(0).max(10).default(1.2),textTransform:W(["none","uppercase","lowercase","capitalize"]).default("none"),textDecoration:W(["none","underline","line-through"]).default("none"),gradient:sV.optional()}),nV=cN.extend({width:k().min(0).default(0),color:N().regex(ba).default("#000000"),opacity:k().min(0).max(1).default(1)}),oV=lN.extend({offsetX:k().default(0),offsetY:k().default(0),blur:k().min(0).default(0),color:N().regex(ba).default("#000000"),opacity:k().min(0).max(1).default(.5)}),lV=sN.extend({color:N().regex(ba).optional(),opacity:k().min(0).max(1).default(1)}),cV=iN.extend({horizontal:W(["left","center","right"]).default(St.DEFAULTS.textAlign),vertical:W(["top","middle","bottom"]).default("middle")}),fV=aN.extend({preset:W(St.ANIMATION_TYPES),speed:k().min(.1).max(10).default(1),duration:k().min(St.LIMITS.minDuration).max(St.LIMITS.maxDuration).optional(),style:W(["character","word"]).optional(),direction:W(["left","right","up","down"]).optional()}).superRefine((e,t)=>{const i=["typewriter","shift","fadeIn","slideIn"];e.style&&!i.includes(e.preset)&&t.addIssue({code:Da.custom,message:`style is not allowed for preset "${e.preset}"`,path:["style"]});const a={ascend:["up","down"],shift:["left","right","up","down"],slideIn:["left","right","up","down"],movingLetters:["left","right","up","down"]};if(e.direction){const s=a[e.preset];s?s.includes(e.direction)||t.addIssue({code:Da.custom,message:`direction "${e.direction}" is not valid for preset "${e.preset}"`,path:["direction"]}):t.addIssue({code:Da.custom,message:`direction is not allowed for preset "${e.preset}"`,path:["direction"]})}}),uV=dN.extend({type:be("rich-text"),text:N().max(St.LIMITS.maxTextLength).default(""),width:k().int().min(St.LIMITS.minWidth).max(St.LIMITS.maxWidth).default(St.DEFAULTS.width).optional(),height:k().int().min(St.LIMITS.minHeight).max(St.LIMITS.maxHeight).default(St.DEFAULTS.height).optional(),font:aV.optional(),style:rV.optional(),stroke:nV.optional(),shadow:oV.optional(),background:lV.optional(),border:tV.optional(),padding:iV.optional(),align:cV.optional(),animation:fV.optional(),customFonts:Ge(eV).optional()}).strict(),hn=null;function bd(){return typeof process<"u"&&process.versions!=null&&process.versions.node!=null}function dV(e){if(e.buffer instanceof ArrayBuffer)return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);const t=new ArrayBuffer(e.byteLength),i=new Uint8Array(t);for(let a=0;a<e.byteLength;a++)i[a]=e[a];return t}var wd="https://shotstack-ingest-api-dev-sources.s3.ap-southeast-2.amazonaws.com/euo5r93oyr/zzz01k9h-yycyx-2x2y6-qx9bj-7n567b/source.wasm";async function vd(e){try{const t=await fetch(e);if(t.ok){const i=await t.arrayBuffer(),a=new Uint8Array(i);if(a.length>=4&&a[0]===0&&a[1]===97&&a[2]===115&&a[3]===109)return i;console.error(`❌ Invalid WASM magic number from URL: ${e}`)}else console.error(`❌ Failed to fetch WASM from URL: ${e}, status: ${t.status}`);return}catch(t){console.error(`❌ Error fetching WASM from ${e}:`,t);return}}async function hV(){try{const{readFile:e}=await Promise.resolve().then(()=>An),t=await Promise.resolve().then(()=>An),i=[];try{const{createRequire:s}=await Promise.resolve().then(()=>An),n=s((typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:ki&&ki.tagName.toUpperCase()==="SCRIPT"&&ki.src||new URL("internal.umd.js",document.baseURI).href)||`file://${process.cwd()}/`).resolve("harfbuzzjs/package.json"),o=t.dirname(n);i.push(t.join(o,"hb.wasm"))}catch{}let a;try{if(typeof(typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:ki&&ki.tagName.toUpperCase()==="SCRIPT"&&ki.src||new URL("internal.umd.js",document.baseURI).href)=="string"){const{fileURLToPath:s}=await Promise.resolve().then(()=>An);a=t.dirname(s(typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:ki&&ki.tagName.toUpperCase()==="SCRIPT"&&ki.src||new URL("internal.umd.js",document.baseURI).href))}}catch{}a||(a=process.cwd()),i.push(t.join(a,"dist/hb.wasm"),t.join(a,"assets/wasm/hb.wasm"),t.join(a,"node_modules/harfbuzzjs/hb.wasm"),t.join(a,"node_modules/@shotstack/shotstack-canvas/assets/wasm/hb.wasm")),i.push("/var/task/node_modules/harfbuzzjs/hb.wasm","/var/task/node_modules/@shotstack/shotstack-canvas/assets/wasm/hb.wasm");for(const s of i)try{const r=await e(s);return dV(r)}catch{continue}return await vd(wd)}catch(e){return console.error("Error in loadWasmNode:",e),await vd(wd)}}async function pV(e){try{if(e){const t=e.endsWith(".wasm")?e:e.endsWith("/")?`${e}hb.wasm`:`${e}/hb.wasm`,i=await fetch(t);if(i.ok){const a=await i.arrayBuffer(),s=new Uint8Array(a);if(s.length>=4&&s[0]===0&&s[1]===97&&s[2]===115&&s[3]===109)return a}}return}catch(t){console.error("Error in loadWasmWeb:",t);return}}function gV(e){const t=window.fetch;window.fetch=function(s,r){return(typeof s=="string"?s:s instanceof URL?s.href:s.url).includes("hb.wasm")?Promise.resolve(new Response(e.slice(0),{status:200,statusText:"OK",headers:{"Content-Type":"application/wasm","Content-Length":e.byteLength.toString()}})):t.apply(this,[s,r])};const i=WebAssembly.instantiate;WebAssembly.instantiate=async function(s,r){if(s instanceof WebAssembly.Module)return i.call(WebAssembly,s,r);const n=await WebAssembly.compile(e),o=await i.call(WebAssembly,n,r);return{module:n,instance:o}};const a=WebAssembly.instantiateStreaming;a&&(WebAssembly.instantiateStreaming=async function(s,r){try{const n=await s;if((n.url||"").includes("hb.wasm")){const l=await WebAssembly.compile(e),c=await WebAssembly.instantiate(l,r);return{module:l,instance:c}}return a.call(WebAssembly,n,r)}catch{const o=await WebAssembly.compile(e),l=await WebAssembly.instantiate(o,r);return{module:o,instance:l}}})}async function mV(e){if(hn)return hn;try{let t;if(bd()?t=await hV():t=await pV(e),!t)throw new Error("Failed to load WASM binary from any source");bd()||(gV(t),window.Module={wasmBinary:t,locateFile:l=>l});const i=await Promise.resolve().then(()=>R_),s=await(i.default||i)({wasmBinary:t}),r=await Promise.resolve().then(()=>L_),o=(r.default||r)(s);if(!o||typeof o.createBuffer!="function"||typeof o.createFont!="function")throw new Error("Failed to initialize HarfBuzz: unexpected export shape from 'harfbuzzjs'.");return hn=o,hn}catch(t){throw console.error("Failed to initialize HarfBuzz:",t),new Error(`Failed to initialize HarfBuzz: ${t instanceof Error?t.message:String(t)}`)}}function pn(e){if(e==null)return"400";if(typeof e=="number")return String(e);const t=String(e).toLowerCase().trim(),i={thin:"100",hairline:"100",extralight:"200",ultralight:"200",light:"300",normal:"400",regular:"400",medium:"500",semibold:"600",demibold:"600",bold:"700",extrabold:"800",ultrabold:"800",black:"900",heavy:"900"};if(i[t])return i[t];const a=parseInt(String(e),10);return!isNaN(a)&&a>=100&&a<=900?String(a):(console.warn(`Invalid font weight "${e}", defaulting to 400`),"400")}var Ms=class it{constructor(t){Mt(this,"hb"),Mt(this,"faces",new Map),Mt(this,"fonts",new Map),Mt(this,"blobs",new Map),Mt(this,"fontkitFonts",new Map),Mt(this,"fontkitBaseFonts",new Map),Mt(this,"colorEmojiFonts",new Set),Mt(this,"colorEmojiFontBytes",new Map),Mt(this,"wasmBaseURL"),Mt(this,"initPromise"),Mt(this,"emojiFallbackDesc"),this.wasmBaseURL=t}static setFallbackLoader(t){it.fallbackLoader=t}static async getSharedInstance(t){if(it.sharedInitPromise){const i=await it.sharedInitPromise;return it.refCount++,i}if(it.sharedInstance)return it.refCount++,it.sharedInstance;it.sharedInitPromise=(async()=>{const i=new it(t);return await i.init(),it.sharedInstance=i,it.refCount=1,i})();try{return await it.sharedInitPromise}finally{it.sharedInitPromise=null}}static getRefCount(){return it.refCount}static hasSharedInstance(){return it.sharedInstance!==null}release(){if(this!==it.sharedInstance){this.destroy();return}it.refCount--,it.refCount<=0&&(this.destroy(),it.sharedInstance=null,it.refCount=0)}static resetSharedInstance(){it.sharedInstance&&(it.sharedInstance.destroy(),it.sharedInstance=null),it.refCount=0,it.sharedInitPromise=null}setEmojiFallback(t){this.emojiFallbackDesc=t}isColorEmojiFont(t){return this.colorEmojiFonts.has(t)}getColorEmojiFontBytes(t){return this.colorEmojiFontBytes.get(t)}getColorEmojiFontFamilies(){return Array.from(this.colorEmojiFonts)}detectColorEmojiFont(t){try{if(t.directory&&t.directory.tables){const i=t.directory.tables;if(i.CBDT||i.CBLC||i.sbix||i.COLR&&i.CPAL||i.SVG)return!0}if(t.availableTables){const i=t.availableTables;if(i.includes("CBDT")||i.includes("CBLC")||i.includes("sbix")||i.includes("COLR")&&i.includes("CPAL")||i.includes("SVG"))return!0}if(t._tables){const i=Object.keys(t._tables);if(i.includes("CBDT")||i.includes("CBLC")||i.includes("sbix")||i.includes("COLR")&&i.includes("CPAL")||i.includes("SVG"))return!0}return!1}catch{return!1}}async init(){if(this.initPromise){await this.initPromise;return}if(!this.hb){this.initPromise=this._doInit();try{await this.initPromise}catch(t){throw new Error(`Failed to initialize FontRegistry: ${t instanceof Error?t.message:String(t)}`)}}}async _doInit(){try{this.hb=await mV("https://shotstack-ingest-api-dev-sources.s3.ap-southeast-2.amazonaws.com/euo5r93oyr/zzz01k9h-yycyx-2x2y6-qx9bj-7n567b/source.wasm")}catch(t){throw this.initPromise=void 0,t}}async getHB(){if(!this.hb)try{await this.init()}catch(t){throw new Error(`Failed to get HarfBuzz instance: ${t instanceof Error?t.message:String(t)}`)}return this.hb}key(t){const i=pn(t.weight);return`${t.family}__${i}`}async registerFromBytes(t,i){try{this.hb||await this.init();const a=this.key(i);if(this.fonts.has(a))return;const s=this.hb.createBlob(t),r=this.hb.createFace(s,0),n=this.hb.createFont(r),o=r.upem||1e3;n.setScale(o,o);const l=pn(i.weight),c=parseInt(l,10);if(c!==400&&typeof n.setVariations=="function")try{n.setVariations(`wght=${c}`)}catch{}this.blobs.set(a,s),this.faces.set(a,r),this.fonts.set(a,n);try{const f=typeof Buffer<"u"?Buffer.from(t):new Uint8Array(t),u=ju(f),h=i.family;this.fontkitBaseFonts.has(h)||this.fontkitBaseFonts.set(h,u);const m=this.detectColorEmojiFont(u);if(m&&(this.colorEmojiFonts.add(i.family),this.colorEmojiFontBytes.has(i.family)||this.colorEmojiFontBytes.set(i.family,t.slice(0)),console.log(`🎨 Registered color emoji font: ${i.family}`)),u.variationAxes&&Object.keys(u.variationAxes).length>0){const b=u.getVariation({wght:c});this.fontkitFonts.set(a,b),m||console.log(`✅ Registered variable font: ${i.family} weight=${c}`)}else this.fontkitFonts.set(a,u),m||console.log(`✅ Registered static font: ${i.family}`)}catch(f){console.warn(`⚠️ Fontkit failed for ${i.family}:`,f)}}catch(a){throw new Error(`Failed to register font "${i.family}": ${a instanceof Error?a.message:String(a)}`)}}async tryFallbackInstall(t){const i=it.fallbackLoader;if(!i)return!1;try{const a=pn(t.weight),s=await i({family:t.family,weight:a});return s?(await this.registerFromBytes(s,{family:t.family,weight:a}),!0):!1}catch{return!1}}async getFont(t){try{this.hb||await this.init();const i=this.key(t);let a=this.fonts.get(i);if(a||(a=await this.tryFallbackInstall(t)?this.fonts.get(i):void 0),a||(a=await this.tryDeriveFromExistingFont(t)),!a)throw new Error(`Font not registered for ${i}`);return a}catch(i){throw i instanceof Error&&i.message.includes("Font not registered")?i:new Error(`Failed to get font "${t.family}": ${i instanceof Error?i.message:String(i)}`)}}async tryDeriveFromExistingFont(t){const i=t.family,a=pn(t.weight),s=parseInt(a,10);let r;for(const[h,m]of this.blobs)if(h.startsWith(`${i}__`)){r=m;break}const n=this.fontkitBaseFonts.get(i);if(!r||!n)return;if(!(n.variationAxes&&n.variationAxes.wght!==void 0)){console.warn(`Font ${i} is not a variable font, cannot derive weight ${a}`);return}const l=this.key(t),c=this.hb.createFace(r,0),f=this.hb.createFont(c),u=c.upem||1e3;if(f.setScale(u,u),typeof f.setVariations=="function")try{f.setVariations(`wght=${s}`)}catch{}this.faces.set(l,c),this.fonts.set(l,f);try{const h=n.getVariation({wght:s});this.fontkitFonts.set(l,h),console.log(`✅ Derived variable font: ${i} weight=${s} from existing registration`)}catch{this.fontkitFonts.set(l,n),console.warn(`⚠️ Could not apply weight variation, using base font for ${i}`)}return f}async getFace(t){try{this.hb||await this.init();const i=this.key(t);let a=this.faces.get(i);return a||(a=await this.tryFallbackInstall(t)?this.faces.get(i):void 0),a||(await this.tryDeriveFromExistingFont(t),a=this.faces.get(i)),a}catch(i){throw new Error(`Failed to get face for "${t.family}": ${i instanceof Error?i.message:String(i)}`)}}async getUnitsPerEm(t){try{return(await this.getFace(t))?.upem||1e3}catch(i){throw new Error(`Failed to get units per em for "${t.family}": ${i instanceof Error?i.message:String(i)}`)}}async glyphPath(t,i){const a=this.key(t);try{const s=this.fontkitFonts.get(a);if(s){const o=s.getGlyph(i);if(o&&o.path){const l=o.path.toSVG();return l&&l!==""?l:"M 0 0"}}const n=(await this.getFont(t)).glyphToPath(i);return n&&n!==""?n:"M 0 0"}catch(s){throw new Error(`Failed to get glyph path for glyph ${i} in font "${t.family}": ${s instanceof Error?s.message:String(s)}`)}}destroy(){try{for(const[,t]of this.fonts)try{t.destroy()}catch(i){console.error(`Error destroying font: ${i instanceof Error?i.message:String(i)}`)}for(const[,t]of this.faces)try{t.destroy()}catch(i){console.error(`Error destroying face: ${i instanceof Error?i.message:String(i)}`)}for(const[,t]of this.blobs)try{t.destroy()}catch(i){console.error(`Error destroying blob: ${i instanceof Error?i.message:String(i)}`)}this.fonts.clear(),this.faces.clear(),this.blobs.clear(),this.fontkitFonts.clear(),this.fontkitBaseFonts.clear(),this.colorEmojiFonts.clear(),this.colorEmojiFontBytes.clear(),this.hb=void 0,this.initPromise=void 0}catch(t){console.error(`Error during FontRegistry cleanup: ${t instanceof Error?t.message:String(t)}`)}}};Mt(Ms,"sharedInstance",null),Mt(Ms,"refCount",0),Mt(Ms,"sharedInitPromise",null),Mt(Ms,"fallbackLoader");var xd=Ms;function yV(e){const t=e.codePointAt(0);return t?t>=127744&&t<=129535||t>=9728&&t<=9983||t>=9984&&t<=10175||t>=65024&&t<=65039||t>=128512&&t<=128591||t>=128640&&t<=128767||t>=129280&&t<=129535||t>=129648&&t<=129791:!1}var bV=class{constructor(e){this.fonts=e}transformText(e,t){switch(t){case"uppercase":return e.toUpperCase();case"lowercase":return e.toLowerCase();case"capitalize":return e.replace(/\b\w/g,i=>i.toUpperCase());default:return e}}async shapeFull(e,t){try{const i=await this.fonts.getHB(),a=i.createBuffer();try{a.addText(e),a.guessSegmentProperties();const s=await this.fonts.getFont(t),n=(await this.fonts.getFace(t))?.upem||1e3;return s.setScale(n,n),i.shape(s,a),a.json()}finally{try{a.destroy()}catch(s){console.error(`Error destroying HarfBuzz buffer: ${s instanceof Error?s.message:String(s)}`)}}}catch(i){throw new Error(`Failed to shape text with font "${t.family}": ${i instanceof Error?i.message:String(i)}`)}}async layout(e){try{const{textTransform:t,desc:i,fontSize:a,letterSpacing:s,width:r,emojiFallback:n}=e,o=this.transformText(e.text,t);if(!o||o.length===0)return[];let l;try{if(!n)l=await this.shapeFull(o,i);else{const O=Array.from(o),v=[];let P={text:"",startIndex:0,isEmoji:!1};for(let y=0;y<O.length;y++){const K=O[y],R=yV(K);y===0?P={text:K,startIndex:0,isEmoji:R}:P.isEmoji===R?P.text+=K:(v.push(P),P={text:K,startIndex:P.startIndex+P.text.length,isEmoji:R})}P.text&&v.push(P),l=[];for(const y of v){const K=y.isEmoji?n:i,R=await this.shapeFull(y.text,K);for(const j of R)j.cl+=y.startIndex,j.fontDesc=K;l.push(...R)}}}catch(O){throw new Error(`Text shaping failed: ${O instanceof Error?O.message:String(O)}`)}let c;try{c=(await this.fonts.getFace(i))?.upem||1e3}catch(O){throw new Error(`Failed to get font metrics: ${O instanceof Error?O.message:String(O)}`)}const f=a/c,u=l.map(O=>{const v=O.cl;let P;if(v>=0&&v<o.length){const y=o.codePointAt(v);y!==void 0&&(P=String.fromCodePoint(y))}return{id:O.g,xAdvance:O.ax*f+s,xOffset:O.dx*f,yOffset:-O.dy*f,cluster:O.cl,char:P,fontDesc:O.fontDesc}}),h=[];let m=[],b=0;const M=new Set;for(let O=0;O<o.length;O++)o[O]===" "&&M.add(O);let G=-1;for(let O=0;O<u.length;O++){const v=u[O],P=v.xAdvance;if(v.char===`
|
|
295
|
+
`){h.push({glyphs:m,width:b,y:0}),m=[],b=0,G=O;continue}if(b+P>r&&m.length>0){if(G>-1){const y=G-(O-m.length)+1,K=m.splice(y),R=m.reduce((j,ie)=>j+ie.xAdvance,0);h.push({glyphs:m,width:R,y:0}),m=K,b=K.reduce((j,ie)=>j+ie.xAdvance,0)}else h.push({glyphs:m,width:b,y:0}),m=[],b=0;G=-1}m.push(v),b+=P,M.has(v.cluster)&&(G=O)}m.length>0&&h.push({glyphs:m,width:b,y:0});const L=e.lineHeight*a;for(let O=0;O<h.length;O++)h[O].y=(O+1)*L;return h}catch(t){throw t instanceof Error?t:new Error(`Layout failed: ${String(t)}`)}}};function wV(e,t){return e.type==="linear"?{kind:"linear",angle:e.angle,stops:e.stops,opacity:t}:{kind:"radial",stops:e.stops,opacity:t}}function vV(e,t){const i=Math.max(1,Math.round(t.fontSize*.05));let a=t.baselineY+Math.round(t.fontSize*.1);return e==="line-through"&&(a=t.baselineY-Math.round(t.fontSize*.3)),{x1:t.xStart,x2:t.xStart+t.lineWidth,y:a,width:i}}function xV(e){return e==null?{top:0,right:0,bottom:0,left:0}:typeof e=="number"?{top:e,right:e,bottom:e,left:e}:e}async function kV(e){const t=[],i=xV(e.padding),a=e.border?.width??0;if(t.push({op:"BeginFrame",width:e.canvas.width,height:e.canvas.height,pixelRatio:e.canvas.pixelRatio,clear:!0,bg:void 0}),e.lines.length===0)return t;const s=Math.max(1,await e.getUnitsPerEm()),r=e.font.size/s,n=e.lines.length,o=e.font.size*e.style.lineHeight;let l;switch(e.align.vertical){case"top":l=e.font.size;break;case"bottom":l=e.textRect.height-(n-1)*o;break;case"middle":default:const O=e.font.size*.35;l=(e.textRect.height-(n-1)*o)/2+O;break}l+=a+i.top;const c=e.style.gradient?wV(e.style.gradient,1):{kind:"solid",color:e.font.color,opacity:e.font.opacity},f=e.style.gradient?e.style.gradient.stops[e.style.gradient.stops.length-1]?.color??e.font.color:e.font.color,u=[],h=[];let m=1/0,b=1/0,M=-1/0,G=-1/0;for(const L of e.lines){let O;switch(e.align.horizontal){case"left":O=0;break;case"right":O=e.textRect.width-L.width;break;case"center":default:O=(e.textRect.width-L.width)/2;break}O+=a+i.left;let v=O;const P=e.lines.indexOf(L),y=l+P*o;if(e.font.background){const K=e.font.size*.15,R=e.font.size*.12,j=e.font.size*.92+R*2,ie=y-e.font.size*.78-R;h.push({op:"Rectangle",x:O-K,y:ie,width:L.width+K*2,height:j,fill:{kind:"solid",color:e.font.background,opacity:1}})}for(const K of L.glyphs){const R=v+K.xOffset,j=y+K.yOffset,ie=K.fontDesc?.family;if((K.isColorEmoji||ie&&e.isColorEmojiFont&&e.isColorEmojiFont(ie))&&K.char){u.push({op:"DrawColorEmoji",char:K.char,x:R,y:j,fontSize:e.font.size,fontFamily:ie||"NotoColorEmoji"}),v+=K.xAdvance;continue}const le=await e.glyphPathProvider(K.id,K.fontDesc);if(!le||le==="M 0 0"){v+=K.xAdvance;continue}const we=AV(le),Fe=R+r*we.x,ze=R+r*(we.x+we.w),Oe=j-r*(we.y+we.h),Ye=j-r*we.y;Fe<m&&(m=Fe),Oe<b&&(b=Oe),ze>M&&(M=ze),Ye>G&&(G=Ye),e.shadow&&e.shadow.blur>0&&u.push({isShadow:!0,op:"FillPath",path:le,x:R+e.shadow.offsetX,y:j+e.shadow.offsetY,scale:r,fill:{kind:"solid",color:e.shadow.color,opacity:e.shadow.opacity}}),e.stroke&&e.stroke.width>0&&u.push({op:"StrokePath",path:le,x:R,y:j,scale:r,width:e.stroke.width,color:e.stroke.color,opacity:e.stroke.opacity}),u.push({op:"FillPath",path:le,x:R,y:j,scale:r,fill:c}),v+=K.xAdvance}if(e.style.textDecoration!=="none"){const K=vV(e.style.textDecoration,{baselineY:y,fontSize:e.font.size,lineWidth:L.width,xStart:O});u.push({op:"DecorationLine",from:{x:K.x1,y:K.y},to:{x:K.x2,y:K.y},width:K.width,color:f,opacity:e.font.opacity})}}if(m!==1/0){const L={x:m,y:b,w:Math.max(1,M-m),h:Math.max(1,G-b)};for(const O of u)O.op==="FillPath"&&!O.isShadow&&(O.gradientBBox=L)}if(e.background||e.border){const L=e.contentRect?.width??e.canvas.width,O=e.contentRect?.height??e.canvas.height,v=e.border?.width??0,P=e.border?.radius??0,y=v/2,K=e.canvas.width/2,R=e.canvas.height/2,j=K-L/2,ie=R-O/2,re=Math.min(L-v,O-v)/2,le=Math.min(P,re),we=Math.max(0,le-y);e.background?.color&&t.push({op:"Rectangle",x:j+v,y:ie+v,width:L-v*2,height:O-v*2,fill:{kind:"solid",color:e.background.color,opacity:e.background.opacity},borderRadius:we}),e.border&&e.border.width>0&&t.push({op:"RectangleStroke",x:j+y,y:ie+y,width:L-v,height:O-v,stroke:{width:e.border.width,color:e.border.color,opacity:e.border.opacity},borderRadius:le})}return t.push(...h),t.push(...u),t}function NV(e){return e.match(/[MLCQZ]|-?\d*\.?\d+(?:e[-+]?\d+)?/gi)??[]}function AV(e){const t=NV(e);let i=0,a=1/0,s=1/0,r=-1/0,n=-1/0;const o=(l,c)=>{l<a&&(a=l),c<s&&(s=c),l>r&&(r=l),c>n&&(n=c)};for(;i<t.length;)switch(t[i++]){case"M":case"L":{const c=parseFloat(t[i++]),f=parseFloat(t[i++]);o(c,f);break}case"C":{const c=parseFloat(t[i++]),f=parseFloat(t[i++]),u=parseFloat(t[i++]),h=parseFloat(t[i++]),m=parseFloat(t[i++]),b=parseFloat(t[i++]);o(c,f),o(u,h),o(m,b);break}case"Q":{const c=parseFloat(t[i++]),f=parseFloat(t[i++]),u=parseFloat(t[i++]),h=parseFloat(t[i++]);o(c,f),o(u,h);break}}return a===1/0?{x:0,y:0,w:0,h:0}:{x:a,y:s,w:r-a,h:n-s}}var hl=.999;function CV(e,t,i){if(!i.anim||!i.anim.preset)return e;const{preset:a}=i.anim,s=t.reduce((l,c)=>l+c.glyphs.length,0);let r=Math.max(.3,s/(30*i.anim.speed));i.clipDuration&&!i.anim.duration&&(r=Math.min(r,i.clipDuration*.9));const n=i.anim.duration??r,o=Math.max(0,Math.min(1,i.t/n));switch(a){case"typewriter":return VV(e,t,o,i.anim.style,i.fontSize,i.t);case"fadeIn":return TV(e,t,o,i.anim.style,i.fontSize,n);case"slideIn":return FV(e,t,o,i.anim.direction??"left",i.fontSize,i.anim.style,n);case"shift":return IV(e,t,o,i.anim.direction??"left",i.fontSize,i.anim.style,n);case"ascend":return _V(e,t,o,i.anim.direction??"up",i.fontSize,n);case"movingLetters":return PV(e,i.t,i.anim.direction??"up",i.fontSize);default:return e}}var gn=e=>e.op==="FillPath"&&e.isShadow===!0,mn=e=>e.op==="FillPath"&&!e.isShadow;function SV(e){for(const t of e)if(t.op==="FillPath"){const i=t.fill;if(i?.kind==="solid")return i.color;if((i?.kind==="linear"||i?.kind==="radial")&&Array.isArray(i.stops)&&i.stops.length)return i.stops[i.stops.length-1].color||"#000000"}return"#000000"}function VV(e,t,i,a,s,r,n){if(a==="word"){const l=Rs(t),c=l.length,f=Math.floor(i*c);if(f===0)return e.filter(b=>b.op==="BeginFrame"||b.op==="Rectangle"||b.op==="RectangleStroke");let u=0;for(let b=0;b<Math.min(f,l.length);b++)u+=l[b].glyphCount;const h=kd(e,u),m=i>=hl?h:h.filter(b=>b.op!=="DecorationLine");return i<1&&u>0?Nd(m,u,s):m}else{const l=t.reduce((h,m)=>h+m.glyphs.length,0),c=Math.floor(i*l);if(c===0)return e.filter(h=>h.op==="BeginFrame"||h.op==="Rectangle"||h.op==="RectangleStroke");const f=kd(e,c),u=i>=hl?f:f.filter(h=>h.op!=="DecorationLine");return i<1&&c>0?Nd(u,c,s):u}}function _V(e,t,i,a,s,r){const n=Rs(t),o=n.length;if(o===0)return e;const l=[];let c=0;for(const f of e)if((f.op==="BeginFrame"||f.op==="Rectangle"||f.op==="RectangleStroke")&&l.push(f),f.op==="FillPath"||f.op==="StrokePath")break;for(const f of e)if(f.op==="FillPath"||f.op==="StrokePath"){let u=-1,h=0;for(let m=0;m<n.length;m++){const b=n[m].glyphCount;if(c>=h&&c<h+b){u=m;break}h+=b}if(u>=0){const m=u/Math.max(1,o)*(r/r),b=Math.min(1,m+.3);if(i>=b)l.push(f);else if(i>m){const M=(i-m)/Math.max(1e-6,b-m),G=yn(Math.min(1,M)),L=a==="up"?s*.4:-s*.4,O={...f,y:f.y+L*(1-G)};f.op==="FillPath"?O.fill.kind==="solid"?O.fill={...O.fill,opacity:O.fill.opacity*G}:O.fill={...O.fill,opacity:(O.fill.opacity??1)*G}:O.opacity=O.opacity*G,l.push(O)}}mn(f)&&c++}else f.op==="DecorationLine"&&i>=hl&&l.push(f);return l}function IV(e,t,i,a,s,r,n){const o=r==="word",c={left:{x:s*.6,y:0},right:{x:-s*.6,y:0},up:{x:0,y:s*.6},down:{x:0,y:-s*.6}}[a],f=o?Rs(t):[],u=t.reduce((v,P)=>v+P.glyphs.length,0),h=o?f.length:u;if(h===0)return e;const m=[];for(const v of e)if((v.op==="BeginFrame"||v.op==="Rectangle"||v.op==="RectangleStroke")&&m.push(v),v.op==="FillPath"||v.op==="StrokePath")break;const b=.3,G=n*.7/Math.max(1,h-1),L=v=>{const P=v*G,y=P/n,K=Math.min(1,(P+b)/n);return{startF:y,endF:K}};let O=0;for(const v of e){if(v.op!=="FillPath"&&v.op!=="StrokePath"){v.op==="DecorationLine"&&i>.8&&m.push(v);continue}let P;if(!o)P=O;else{let R=-1,j=0;for(let ie=0;ie<f.length;ie++){const re=f[ie].glyphCount;if(O>=j&&O<j+re){R=ie;break}j+=re}P=Math.max(0,R)}const{startF:y,endF:K}=L(P);if(i<=y){const R={...v,x:v.x+c.x,y:v.y+c.y};v.op==="FillPath"?R.fill.kind==="solid"?R.fill={...R.fill,opacity:0}:R.fill={...R.fill,opacity:0}:R.opacity=0,m.push(R)}else if(i>=K)m.push(v);else{const R=(i-y)/Math.max(1e-6,K-y),j=yn(Math.min(1,R)),ie=c.x*(1-j),re=c.y*(1-j),le={...v,x:v.x+ie,y:v.y+re};if(v.op==="FillPath"){const we=le.fill.kind==="solid"?le.fill.opacity:le.fill.opacity??1;le.fill.kind==="solid"?le.fill={...le.fill,opacity:we*j}:le.fill={...le.fill,opacity:we*j}}else le.opacity=le.opacity*j;m.push(le)}mn(v)&&O++}return m}function TV(e,t,i,a,s,r){const n=a==="word";if(!n&&!(a==="character")){const L=pl(i),O=.95+.05*L;return OV(e,L,O)}const l=n?Rs(t):[],c=t.reduce((L,O)=>L+O.glyphs.length,0),f=n?l.length:c;if(f===0)return e;const u=[];for(const L of e)if(L.op==="BeginFrame"){u.push(L);break}const h=.3,b=r*.7/Math.max(1,f-1),M=L=>{const O=L*b,v=O/r,P=Math.min(1,(O+h)/r);return{startF:v,endF:P}};let G=0;for(const L of e){if(L.op!=="FillPath"&&L.op!=="StrokePath"){L.op==="DecorationLine"&&i>.8&&u.push(L);continue}let O;if(!n)O=G;else{let y=-1,K=0;for(let R=0;R<l.length;R++){const j=l[R].glyphCount;if(G>=K&&G<K+j){y=R;break}K+=j}O=Math.max(0,y)}const{startF:v,endF:P}=M(O);if(i<=v){const y={...L};L.op==="FillPath"?y.fill.kind==="solid"?y.fill={...y.fill,opacity:0}:y.fill={...y.fill,opacity:0}:y.opacity=0,u.push(y)}else if(i>=P)u.push(L);else{const y=(i-v)/Math.max(1e-6,P-v),K=pl(Math.min(1,y)),R={...L};if(L.op==="FillPath"){const j=R.fill.kind==="solid"?R.fill.opacity:R.fill.opacity??1;R.fill.kind==="solid"?R.fill={...R.fill,opacity:j*K}:R.fill={...R.fill,opacity:j*K}}else R.opacity=R.opacity*K;u.push(R)}mn(L)&&G++}return u}function FV(e,t,i,a,s,r,n){const o=r==="word";if(!o&&!(r==="character")){const P=yn(i),y=DV(1-P,a,s*2),K=pl(i);return MV(e,y.dx,y.dy,K)}const f={left:{x:s*2,y:0},right:{x:-s*2,y:0},up:{x:0,y:s*2},down:{x:0,y:-s*2}}[a],u=o?Rs(t):[],h=t.reduce((P,y)=>P+y.glyphs.length,0),m=o?u.length:h;if(m===0)return e;const b=[];for(const P of e)if(P.op==="BeginFrame"){b.push(P);break}const M=.3,L=n*.7/Math.max(1,m-1),O=P=>{const y=P*L,K=y/n,R=Math.min(1,(y+M)/n);return{startF:K,endF:R}};let v=0;for(const P of e){if(P.op!=="FillPath"&&P.op!=="StrokePath"){P.op==="DecorationLine"&&i>.8&&b.push(P);continue}let y;if(!o)y=v;else{let j=-1,ie=0;for(let re=0;re<u.length;re++){const le=u[re].glyphCount;if(v>=ie&&v<ie+le){j=re;break}ie+=le}y=Math.max(0,j)}const{startF:K,endF:R}=O(y);if(i<=K){const j={...P,x:P.x+f.x,y:P.y+f.y};P.op==="FillPath"?j.fill.kind==="solid"?j.fill={...j.fill,opacity:0}:j.fill={...j.fill,opacity:0}:j.opacity=0,b.push(j)}else if(i>=R)b.push(P);else{const j=(i-K)/Math.max(1e-6,R-K),ie=yn(Math.min(1,j)),re=f.x*(1-ie),le=f.y*(1-ie),we={...P,x:P.x+re,y:P.y+le};if(P.op==="FillPath"){const Fe=we.fill.kind==="solid"?we.fill.opacity:we.fill.opacity??1;we.fill.kind==="solid"?we.fill={...we.fill,opacity:Fe*ie}:we.fill={...we.fill,opacity:Fe*ie}}else we.opacity=we.opacity*ie;b.push(we)}mn(P)&&v++}return b}function PV(e,t,i,a){const s=a*.3;return RV(e,i,s,t)}function Rs(e){const t=[];let i=0;for(let a=0;a<e.length;a++){const s=e[a],r=EV(s);for(const n of r)n.length>0&&t.push({startGlyph:i,glyphCount:n.length,lineIndex:a}),i+=n.length}return t}function EV(e){const t=[];let i=[];for(const a of e.glyphs)a.char===" "||a.char===" "||a.char===`
|
|
296
|
+
`?i.length&&(t.push([...i]),i=[]):i.push(a);return i.length&&t.push(i),t}function kd(e,t){const i=[];let a=0,s=!1;for(const r of e){if(r.op==="BeginFrame"||r.op==="Rectangle"||r.op==="RectangleStroke"){i.push(r);continue}if(r.op==="FillPath"&&!gn(r)){a<t&&(i.push(r),s=!0),a++;continue}if(r.op==="StrokePath"){a<t&&i.push(r);continue}if(r.op==="FillPath"&&gn(r)){a<t&&i.push(r);continue}if(r.op==="DecorationLine"&&s){i.push(r);continue}}return i}function Nd(e,t,i,a){if(t===0)return e;let s=null,r=0;for(const n of e)if(n.op==="FillPath"&&!gn(n)&&(r++,r===t)){s=n;break}if(s&&s.op==="FillPath"){const n=SV(e),o=s.x+i*.5,l=s.y,c=Math.max(3,i/15),f={op:"DecorationLine",from:{x:o,y:l-i*.75},to:{x:o,y:l+i*.15},width:c,color:n,opacity:1};return[...e,f]}return e}function OV(e,t,i){let a=0,s=0,r=0;return e.forEach(n=>{n.op==="FillPath"&&(a+=n.x,s+=n.y,r++)}),r>0&&(a/=r,s/=r),e.map(n=>{if(n.op==="FillPath"){const o={...n};if(o.fill.kind==="solid"?o.fill={...o.fill,opacity:o.fill.opacity*t}:o.fill={...o.fill,opacity:(o.fill.opacity??1)*t},i!==1&&r>0){const l=n.x-a,c=n.y-s;o.x=a+l*i,o.y=s+c*i}return o}if(n.op==="StrokePath"){const o={...n,opacity:n.opacity*t};if(i!==1&&r>0){const l=n.x-a,c=n.y-s;o.x=a+l*i,o.y=s+c*i}return o}return n.op==="DecorationLine"?{...n,opacity:n.opacity*t}:n})}function MV(e,t,i,a=1){return e.map(s=>{if(s.op==="FillPath"){const r={...s,x:s.x+t,y:s.y+i};return a<1&&(r.fill.kind==="solid"?r.fill={...r.fill,opacity:r.fill.opacity*a}:r.fill={...r.fill,opacity:(r.fill.opacity??1)*a}),r}return s.op==="StrokePath"?{...s,x:s.x+t,y:s.y+i,opacity:s.opacity*a}:s.op==="DecorationLine"?{...s,from:{x:s.from.x+t,y:s.from.y+i},to:{x:s.to.x+t,y:s.to.y+i},opacity:s.opacity*a}:s})}function RV(e,t,i,a){let s=0;const n=Math.min(1,a/.5);return e.map(o=>{if(o.op==="FillPath"||o.op==="StrokePath"){const l=Math.sin(s/5*Math.PI+a*Math.PI*2),c=t==="left"||t==="right"?l*i*(t==="left"?-1:1):0,f=t==="up"||t==="down"?l*i*(t==="up"?-1:1):0;if(o.op==="FillPath"){gn(o)||s++;const u={...o,x:o.x+c,y:o.y+f};return u.fill.kind==="solid"?u.fill={...u.fill,opacity:u.fill.opacity*n}:u.fill={...u.fill,opacity:(u.fill.opacity??1)*n},u}return{...o,x:o.x+c,y:o.y+f,opacity:o.opacity*n}}return o})}function DV(e,t,i){const a=e*i;switch(t){case"left":return{dx:-a,dy:0};case"right":return{dx:a,dy:0};case"up":return{dx:0,dy:-a};case"down":return{dx:0,dy:a}}}function pl(e){return e*(2-e)}function yn(e){return 1-Math.pow(1-e,3)}function wa(e,t=1){const i=/^#?([a-f0-9]{6})$/i.exec(e);if(!i)throw new Error(`Invalid color ${e}`);const a=parseInt(i[1],16),s=a>>16&255,r=a>>8&255,n=a&255;return{r:s,g:r,b:n,a:t}}function zV(e){const t=e.getContext("2d");if(!t)throw new Error("2D context unavailable");return{async render(i){const a=LV(i),s=new Map;for(const r of i){if(r.op==="BeginFrame"){r.pixelRatio;const n=r.width,o=r.height;if("width"in e&&"height"in e&&(e.width=Math.floor(n),e.height=Math.floor(o)),"style"in e&&(e.style.width=`${n}px`,e.style.height=`${o}px`),t.setTransform(1,0,0,1,0,0),r.clear&&t.clearRect(0,0,n,o),r.bg&&r.bg.color){const{color:l,opacity:c,radius:f}=r.bg;if(l){const u=wa(l,c);f&&f>0?(t.fillStyle=`rgba(${u.r},${u.g},${u.b},${u.a})`,Ad(t,0,0,n,o,f),t.fill()):(t.fillStyle=`rgba(${u.r},${u.g},${u.b},${u.a})`,t.fillRect(0,0,n,o))}}continue}if(r.op==="FillPath"){const n=r,o=new Path2D(n.path);t.save(),t.translate(n.x,n.y);const l=n.scale??1;t.scale(l,-l);const c=n.gradientBBox??a,f={x:(c.x-n.x)/l,y:-(c.y-n.y)/l,w:c.w/l,h:c.h/l},u=JSON.stringify({fill:n.fill,bbox:f});let h=s.get(u);h||(h=Ds(t,n.fill,f),s.set(u,h)),t.fillStyle=h,t.fill(o),t.restore();continue}if(r.op==="StrokePath"){const n=r,o=new Path2D(n.path);t.save(),t.translate(n.x,n.y);const l=n.scale??1;t.scale(l,-l);const c=1/Math.abs(l),f=wa(n.color,n.opacity);t.strokeStyle=`rgba(${f.r},${f.g},${f.b},${f.a})`,t.lineWidth=n.width*c,t.lineJoin="round",t.lineCap="round",t.stroke(o),t.restore();continue}if(r.op==="DecorationLine"){t.save();const n=wa(r.color,r.opacity);t.strokeStyle=`rgba(${n.r},${n.g},${n.b},${n.a})`,t.lineWidth=r.width,t.beginPath(),t.moveTo(r.from.x,r.from.y),t.lineTo(r.to.x,r.to.y),t.stroke(),t.restore();continue}if(r.op==="Rectangle"){t.save();const n=Ds(t,r.fill,{x:r.x,y:r.y,w:r.width,h:r.height});t.fillStyle=n,r.borderRadius&&r.borderRadius>0?Ad(t,r.x,r.y,r.width,r.height,r.borderRadius):t.fillRect(r.x,r.y,r.width,r.height),t.restore();continue}if(r.op==="RectangleStroke"){t.save();const n=wa(r.stroke.color,r.stroke.opacity);if(t.strokeStyle=`rgba(${n.r},${n.g},${n.b},${n.a})`,t.lineWidth=r.stroke.width,r.borderRadius&&r.borderRadius>0){const o=new Path2D,l=r.x,c=r.y,f=r.width,u=r.height,h=Math.min(f,u)/2,m=Math.min(r.borderRadius,h);o.moveTo(l+m,c),o.arcTo(l+f,c,l+f,c+u,m),o.arcTo(l+f,c+u,l,c+u,m),o.arcTo(l,c+u,l,c,m),o.arcTo(l,c,l+f,c,m),o.closePath(),t.stroke(o)}else t.strokeRect(r.x,r.y,r.width,r.height);t.restore();continue}if(r.op==="DrawColorEmoji"){t.save(),t.font=`${r.fontSize}px "${r.fontFamily}"`,t.textBaseline="alphabetic",t.fillText(r.char,r.x,r.y),t.restore();continue}if(r.op==="Ellipse"){t.save();const n=r.gradientBBox??{x:r.cx-r.rx,y:r.cy-r.ry,w:r.rx*2,h:r.ry*2},o=Ds(t,r.fill,n);t.fillStyle=o,t.beginPath();const l=(r.rotation??0)*Math.PI/180;t.ellipse(r.cx,r.cy,r.rx,r.ry,l,0,Math.PI*2),t.fill(),t.restore();continue}if(r.op==="EllipseStroke"){t.save(),gl(t,r.stroke),t.beginPath();const n=(r.rotation??0)*Math.PI/180;t.ellipse(r.cx,r.cy,r.rx,r.ry,n,0,Math.PI*2),t.stroke(),t.restore();continue}if(r.op==="Polygon"){t.save();const n=r.gradientBBox??UV(r.points),o=Ds(t,r.fill,n);t.fillStyle=o,t.beginPath(),Sd(t,r.points,r.closed??!0),t.fill(),t.restore();continue}if(r.op==="PolygonStroke"){t.save(),gl(t,r.stroke),t.beginPath(),Sd(t,r.points,r.closed??!0),t.stroke(),t.restore();continue}if(r.op==="ShapePath"){t.save(),t.translate(r.x,r.y);const n=r.gradientBBox??Cd(r.path),o=Ds(t,r.fill,n);t.fillStyle=o;const l=new Path2D(r.path);t.fill(l),t.restore();continue}if(r.op==="ShapePathStroke"){t.save(),t.translate(r.x,r.y),gl(t,r.stroke);const n=new Path2D(r.path);t.stroke(n),t.restore();continue}}}}}function Ad(e,t,i,a,s,r){const n=Math.min(a,s)/2,o=Math.min(r,n),l=new Path2D;l.moveTo(t+o,i),l.arcTo(t+a,i,t+a,i+s,o),l.arcTo(t+a,i+s,t,i+s,o),l.arcTo(t,i+s,t,i,o),l.arcTo(t,i,t+a,i,o),l.closePath(),e.save(),e.fill(l),e.restore()}function Ds(e,t,i){if(t.kind==="solid"){const o=wa(t.color,t.opacity);return`rgba(${o.r},${o.g},${o.b},${o.a})`}const a=i.x+i.w/2,s=i.y+i.h/2,r=Math.max(i.w,i.h)/2,n=o=>{const l=t.kind==="linear"||t.kind==="radial"?t.opacity:1,c=t.kind==="linear"||t.kind==="radial"?t.stops:[];for(const f of c){const u=wa(f.color,l);o.addColorStop(f.offset,`rgba(${u.r},${u.g},${u.b},${u.a})`)}return o};if(t.kind==="linear"){const o=t.angle*Math.PI/180,l=a+Math.cos(o+Math.PI)*r,c=s+Math.sin(o+Math.PI)*r,f=a+Math.cos(o)*r,u=s+Math.sin(o)*r;return n(e.createLinearGradient(l,c,f,u))}else return n(e.createRadialGradient(a,s,0,a,s,r))}function LV(e){let t=1/0,i=1/0,a=-1/0,s=-1/0;for(const r of e){if(r.op!=="FillPath")continue;const n=r;if(n.isShadow)continue;const o=Cd(n.path),l=n.scale??1,c=n.x+l*o.x,f=n.x+l*(o.x+o.w),u=n.y-l*(o.y+o.h),h=n.y-l*o.y;c<t&&(t=c),u<i&&(i=u),f>a&&(a=f),h>s&&(s=h)}return t===1/0?{x:0,y:0,w:1,h:1}:{x:t,y:i,w:Math.max(1,a-t),h:Math.max(1,s-i)}}function Cd(e){const t=BV(e);let i=0,a=1/0,s=1/0,r=-1/0,n=-1/0;const o=(l,c)=>{l<a&&(a=l),c<s&&(s=c),l>r&&(r=l),c>n&&(n=c)};for(;i<t.length;)switch(t[i++]){case"M":case"L":{const c=parseFloat(t[i++]),f=parseFloat(t[i++]);o(c,f);break}case"C":{const c=parseFloat(t[i++]),f=parseFloat(t[i++]),u=parseFloat(t[i++]),h=parseFloat(t[i++]),m=parseFloat(t[i++]),b=parseFloat(t[i++]);o(c,f),o(u,h),o(m,b);break}case"Q":{const c=parseFloat(t[i++]),f=parseFloat(t[i++]),u=parseFloat(t[i++]),h=parseFloat(t[i++]);o(c,f),o(u,h);break}}return a===1/0?{x:0,y:0,w:0,h:0}:{x:a,y:s,w:r-a,h:n-s}}function BV(e){return e.match(/[MLCQZ]|-?\d*\.?\d+(?:e[-+]?\d+)?/gi)??[]}function gl(e,t){const i=wa(t.color,t.opacity);e.strokeStyle=`rgba(${i.r},${i.g},${i.b},${i.a})`,e.lineWidth=t.width,e.lineCap=t.lineCap??"butt",e.lineJoin=t.lineJoin??"miter",t.dashArray&&t.dashArray.length>0&&e.setLineDash(t.dashArray)}function UV(e){if(e.length===0)return{x:0,y:0,w:0,h:0};let t=e[0].x,i=e[0].y,a=e[0].x,s=e[0].y;for(let r=1;r<e.length;r++){const n=e[r];n.x<t&&(t=n.x),n.y<i&&(i=n.y),n.x>a&&(a=n.x),n.y>s&&(s=n.y)}return{x:t,y:i,w:a-t,h:s-i}}function Sd(e,t,i){if(t.length!==0){e.moveTo(t[0].x,t[0].y);for(let a=1;a<t.length;a++)e.lineTo(t[a].x,t[a].y);i&&e.closePath()}}async function zs(e){try{const t=await fetch(e);if(!t.ok)throw new Error(`Failed to fetch ${e}: ${t.status} ${t.statusText}`);try{return await t.arrayBuffer()}catch(i){throw new Error(`Failed to read response body as ArrayBuffer from ${e}: ${i instanceof Error?i.message:String(i)}`)}}catch(t){throw t instanceof Error?t.message.includes("Failed to fetch")||t.message.includes("Failed to read")?t:new Error(`Failed to fetch ${e}: ${t.message}`):new Error(`Failed to fetch ${e}: ${String(t)}`)}}var va=null,Ls=!1,Vd="https://unpkg.com/@resvg/resvg-wasm@2.6.2/index_bg.wasm";async function ml(e){try{const t=await fetch(e);if(t.ok){const i=await t.arrayBuffer(),a=new Uint8Array(i);if(a.length>=4&&a[0]===0&&a[1]===97&&a[2]===115&&a[3]===109)return i;console.error(`Invalid WASM magic number from URL: ${e}`)}else console.error(`Failed to fetch resvg WASM from URL: ${e}, status: ${t.status}`);return}catch(t){console.error(`Error fetching resvg WASM from ${e}:`,t);return}}async function _d(e){try{if(e){const t=e.endsWith(".wasm")?e:e.endsWith("/")?`${e}resvg.wasm`:`${e}/resvg.wasm`,i=await ml(t);if(i)return i}return}catch(t){console.error("Error in loadResvgWasmWeb:",t);return}}async function ZV(e){if(va&&Ls)return va;if(va=await Promise.resolve().then(()=>Gd),!Ls){let i=await _d(e);if(i||(i=await ml(Vd)),!i)throw new Error("Failed to load resvg WASM from any source");const a=await WebAssembly.compile(i);await va.initWasm(a),Ls=!0}return va}async function GV(e){if(Ls)return;va=await Promise.resolve().then(()=>Gd);let i;if(e instanceof ArrayBuffer?i=e:(i=await _d(e),i||(i=await ml(Vd))),!i)throw new Error("Failed to load resvg WASM from any source");const a=await WebAssembly.compile(i);await va.initWasm(a),Ls=!0}async function WV(e,t={}){const{Resvg:i}=await ZV(),a={};t.background&&(a.background=t.background),t.fitTo?a.fitTo=t.fitTo:t.width?a.fitTo={mode:"width",value:t.width}:t.height&&(a.fitTo={mode:"height",value:t.height});const r=new i(e,a).render();return{png:r.asPng(),width:r.width,height:r.height}}function jV(e,t,i){if(!e.shape)throw new Error("Shape is required for shape mode");const a=e.width??t,s=e.height??i,r=HV(e.shape),n=s_(r),o=a/2,l=s/2,c=n.x+n.w/2,f=n.y+n.h/2;let u=o-c,h=l-f;e.transform&&(u+=e.transform.x??0,h+=e.transform.y??0);const m=[];if(e.shadow){const M=e.shadow.offsetX??4,G=e.shadow.offsetY??4,L=e.shadow.color??"#000000",O=e.shadow.opacity??.5;m.push(`<path d="${r}" transform="translate(${u+M}, ${h+G})" fill="${L}" fill-opacity="${O}"/>`)}const b=[`d="${r}"`,`transform="translate(${u}, ${h})"`];if(e.fill){const M=`fill-${Date.now()}`,G=YV(e.fill,M);G.defs&&m.unshift(G.defs),b.push(`fill="${G.fill}"`),e.fill.opacity!==void 0&&e.fill.opacity!==1&&b.push(`fill-opacity="${e.fill.opacity}"`)}else b.push('fill="none"');return e.stroke&&e.stroke.width&&e.stroke.width>0&&(b.push(`stroke="${e.stroke.color??"#000000"}"`),b.push(`stroke-width="${e.stroke.width}"`),e.stroke.opacity!==void 0&&e.stroke.opacity!==1&&b.push(`stroke-opacity="${e.stroke.opacity}"`),e.stroke.dashArray&&e.stroke.dashArray.length>0&&b.push(`stroke-dasharray="${e.stroke.dashArray.join(" ")}"`),e.stroke.lineCap&&b.push(`stroke-linecap="${e.stroke.lineCap}"`),e.stroke.lineJoin&&b.push(`stroke-linejoin="${e.stroke.lineJoin}"`)),e.opacity!==void 0&&e.opacity!==1&&b.push(`opacity="${e.opacity}"`),m.push(`<path ${b.join(" ")}/>`),`<svg xmlns="http://www.w3.org/2000/svg" width="${a}" height="${s}" viewBox="0 0 ${a} ${s}">${m.join("")}</svg>`}function YV(e,t,i){if(e.type==="solid")return{fill:e.color};if(e.type==="linear"){const s=(e.angle??0)*Math.PI/180,r=50-Math.cos(s)*50,n=50-Math.sin(s)*50,o=50+Math.cos(s)*50,l=50+Math.sin(s)*50,c=e.stops.map(u=>`<stop offset="${u.offset*100}%" stop-color="${u.color}"/>`).join(""),f=`<defs><linearGradient id="${t}" x1="${r}%" y1="${n}%" x2="${o}%" y2="${l}%">${c}</linearGradient></defs>`;return{fill:`url(#${t})`,defs:f}}if(e.type==="radial"){const a=e.stops.map(r=>`<stop offset="${r.offset*100}%" stop-color="${r.color}"/>`).join(""),s=`<defs><radialGradient id="${t}" cx="50%" cy="50%" r="50%">${a}</radialGradient></defs>`;return{fill:`url(#${t})`,defs:s}}return{fill:"#000000"}}function HV(e){const t=e.type;switch(t){case"rectangle":{const i=e;return XV(i.width,i.height,i.cornerRadius??0)}case"circle":return Id(e.radius);case"ellipse":{const i=e;return qV(i.radiusX,i.radiusY)}case"line":{const i=e;return JV(i.length,i.thickness??2)}case"polygon":{const i=e;return QV(i.sides,i.radius)}case"star":{const i=e;return $V(i.points,i.outerRadius,i.innerRadius)}case"arrow":{const i=e;return e_(i.length,i.headWidth??30,i.headLength??25,i.shaftWidth??10)}case"heart":return t_(e.size);case"cross":{const i=e;return i_(i.width,i.height,i.thickness)}case"ring":{const i=e;return a_(i.outerRadius,i.innerRadius)}case"path":return e.d;default:throw new Error(`Unknown shape type: ${t}`)}}var bn=.5522847498307936;function XV(e,t,i){const a=-e/2,s=-t/2,r=Math.min(i,e/2,t/2);return r===0?`M ${a} ${s} L ${a+e} ${s} L ${a+e} ${s+t} L ${a} ${s+t} Z`:[`M ${a+r} ${s}`,`L ${a+e-r} ${s}`,`Q ${a+e} ${s} ${a+e} ${s+r}`,`L ${a+e} ${s+t-r}`,`Q ${a+e} ${s+t} ${a+e-r} ${s+t}`,`L ${a+r} ${s+t}`,`Q ${a} ${s+t} ${a} ${s+t-r}`,`L ${a} ${s+r}`,`Q ${a} ${s} ${a+r} ${s}`,"Z"].join(" ")}function Id(e){const t=e*bn;return[`M ${e} 0`,`C ${e} ${t} ${t} ${e} 0 ${e}`,`C ${-t} ${e} ${-e} ${t} ${-e} 0`,`C ${-e} ${-t} ${-t} ${-e} 0 ${-e}`,`C ${t} ${-e} ${e} ${-t} ${e} 0`,"Z"].join(" ")}function KV(e){const t=e*bn;return[`M ${e} 0`,`C ${e} ${-t} ${t} ${-e} 0 ${-e}`,`C ${-t} ${-e} ${-e} ${-t} ${-e} 0`,`C ${-e} ${t} ${-t} ${e} 0 ${e}`,`C ${t} ${e} ${e} ${t} ${e} 0`,"Z"].join(" ")}function qV(e,t){const i=e*bn,a=t*bn;return[`M ${e} 0`,`C ${e} ${a} ${i} ${t} 0 ${t}`,`C ${-i} ${t} ${-e} ${a} ${-e} 0`,`C ${-e} ${-a} ${-i} ${-t} 0 ${-t}`,`C ${i} ${-t} ${e} ${-a} ${e} 0`,"Z"].join(" ")}function JV(e,t){const i=e/2,a=t/2;return`M ${-i} ${-a} L ${i} ${-a} L ${i} ${a} L ${-i} ${a} Z`}function QV(e,t){const i=2*Math.PI/e,a=-Math.PI/2,s=[];for(let r=0;r<e;r++){const n=a+r*i,o=Math.cos(n)*t,l=Math.sin(n)*t;s.push(r===0?`M ${o} ${l}`:`L ${o} ${l}`)}return s.push("Z"),s.join(" ")}function $V(e,t,i){const a=Math.PI/e,s=-Math.PI/2,r=[];for(let n=0;n<e*2;n++){const o=s+n*a,l=n%2===0?t:i,c=Math.cos(o)*l,f=Math.sin(o)*l;r.push(n===0?`M ${c} ${f}`:`L ${c} ${f}`)}return r.push("Z"),r.join(" ")}function e_(e,t,i,a){const s=a/2,r=t/2,n=e-i,o=-e/2;return[`M ${o} ${-s}`,`L ${o+n} ${-s}`,`L ${o+n} ${-r}`,`L ${o+e} 0`,`L ${o+n} ${r}`,`L ${o+n} ${s}`,`L ${o} ${s}`,"Z"].join(" ")}function t_(e){const t=e/32;return["M 0 6","C -0.5 -3 -12 -3 -12 6","C -12 12 0 18 0 24","C 0 18 12 12 12 6","C 12 -3 0.5 -3 0 6","Z"].map(a=>a.replace(/-?\d+(\.\d+)?/g,s=>String(parseFloat(s)*t))).join(" ")}function i_(e,t,i){const a=e/2,s=t/2,r=i/2;return[`M ${-r} ${-s}`,`L ${r} ${-s}`,`L ${r} ${-r}`,`L ${a} ${-r}`,`L ${a} ${r}`,`L ${r} ${r}`,`L ${r} ${s}`,`L ${-r} ${s}`,`L ${-r} ${r}`,`L ${-a} ${r}`,`L ${-a} ${-r}`,`L ${-r} ${-r}`,"Z"].join(" ")}function a_(e,t){const i=Id(e),a=KV(t);return`${i} ${a}`}function s_(e){const t=/-?(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?/g,i=[];let a;for(;(a=t.exec(e))!==null;){const m=parseFloat(a[0]);!isNaN(m)&&isFinite(m)&&i.push(m)}if(i.length<2)return{x:0,y:0,w:0,h:0};let s=1/0,r=1/0,n=-1/0,o=-1/0,l=0,c=0;const f=e.match(/[MmLlHhVvCcSsQqTtAaZz]/g)||[];let u=0,h=0;for(;u<f.length;){switch(f[u]){case"M":case"L":case"T":h+1<i.length&&(l=i[h++],c=i[h++],s=Math.min(s,l),n=Math.max(n,l),r=Math.min(r,c),o=Math.max(o,c));break;case"m":case"l":case"t":h+1<i.length&&(l+=i[h++],c+=i[h++],s=Math.min(s,l),n=Math.max(n,l),r=Math.min(r,c),o=Math.max(o,c));break;case"H":h<i.length&&(l=i[h++],s=Math.min(s,l),n=Math.max(n,l));break;case"h":h<i.length&&(l+=i[h++],s=Math.min(s,l),n=Math.max(n,l));break;case"V":h<i.length&&(c=i[h++],r=Math.min(r,c),o=Math.max(o,c));break;case"v":h<i.length&&(c+=i[h++],r=Math.min(r,c),o=Math.max(o,c));break;case"C":if(h+5<i.length)for(let b=0;b<3;b++){const M=i[h++],G=i[h++];s=Math.min(s,M),n=Math.max(n,M),r=Math.min(r,G),o=Math.max(o,G),b===2&&(l=M,c=G)}break;case"c":if(h+5<i.length)for(let b=0;b<3;b++){const M=l+i[h++],G=c+i[h++];s=Math.min(s,M),n=Math.max(n,M),r=Math.min(r,G),o=Math.max(o,G),b===2&&(l=M,c=G)}break;case"S":case"Q":if(h+3<i.length)for(let b=0;b<2;b++){const M=i[h++],G=i[h++];s=Math.min(s,M),n=Math.max(n,M),r=Math.min(r,G),o=Math.max(o,G),b===1&&(l=M,c=G)}break;case"s":case"q":if(h+3<i.length)for(let b=0;b<2;b++){const M=l+i[h++],G=c+i[h++];s=Math.min(s,M),n=Math.max(n,M),r=Math.min(r,G),o=Math.max(o,G),b===1&&(l=M,c=G)}break;case"A":h+6<i.length&&(h+=5,l=i[h++],c=i[h++],s=Math.min(s,l),n=Math.max(n,l),r=Math.min(r,c),o=Math.max(o,c));break;case"a":h+6<i.length&&(h+=5,l+=i[h++],c+=i[h++],s=Math.min(s,l),n=Math.max(n,l),r=Math.min(r,c),o=Math.max(o,c));break}u++}return s===1/0?{x:0,y:0,w:0,h:0}:{x:s,y:r,w:n-s,h:o-r}}async function r_(e,t={}){const i=t.defaultWidth??1920,a=t.defaultHeight??1080;let s,r,n;if(e.src){s=e.src;const o=n_(s);r=o.width||i,n=o.height||a}else if(e.shape)r=e.width??i,n=e.height??a,s=jV(e,r,n);else throw new Error("Either 'src' or 'shape' must be provided");return WV(s,{width:r,height:n,background:t.background})}function n_(e){const t=e.match(/width\s*=\s*["']?(\d+(?:\.\d+)?)/i),i=e.match(/height\s*=\s*["']?(\d+(?:\.\d+)?)/i);let a=t?parseFloat(t[1]):0,s=i?parseFloat(i[1]):0;if(!a||!s){const r=e.match(/viewBox\s*=\s*["']([^"']+)["']/i);if(r){const n=r[1].trim().split(/[\s,]+/).map(parseFloat);n.length===4&&(a=a||n[2],s=s||n[3])}}return{width:a,height:s}}var Td="https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu4mxP.ttf";async function o_(e={}){const t=e.width??St.DEFAULTS.width,i=e.height??St.DEFAULTS.height,a=e.pixelRatio??St.DEFAULTS.pixelRatio,s="https://shotstack-ingest-api-dev-sources.s3.ap-southeast-2.amazonaws.com/euo5r93oyr/zzz01k9h-yycyx-2x2y6-qx9bj-7n567b/source.wasm";xd.setFallbackLoader(async l=>{const c=(l.family??"Roboto").toLowerCase(),f=`${l.weight??"400"}`;if(c==="roboto"&&f==="400")return zs(Td)});let r;try{r=await xd.getSharedInstance(s)}catch(l){throw new Error(`Failed to initialize font registry: ${l instanceof Error?l.message:String(l)}`)}const n=new bV(r);async function o(l){try{if(l.customFonts)for(const h of l.customFonts)try{const m=await zs(h.src);await r.registerFromBytes(m,{family:h.family,weight:h.weight??"400"})}catch(m){throw new Error(`Failed to load custom font "${h.family}" from ${h.src}: ${m instanceof Error?m.message:String(m)}`)}const c=l.font??{family:"Roboto",weight:"400",size:48,color:"#000000",opacity:1},f={family:c.family,weight:`${c.weight}`};return await(async()=>{try{await r.getFace(f)}catch{if((c.family||"Roboto").toLowerCase()==="roboto"&&`${c.weight}`=="400"){const m=await zs(Td);await r.registerFromBytes(m,{family:"Roboto",weight:"400"})}else throw new Error(`Font not registered for ${f.family}__${f.weight}`)}})(),c}catch(c){throw c instanceof Error?c:new Error(`Failed to ensure fonts: ${String(c)}`)}}return{validate(l){const c=uV.safeParse(l);if(!c.success){const f=c.error.issues.map(u=>u.message).join(". ");throw new Error(`Validation failed: ${f}`)}return{value:c.data}},async registerFontFromUrl(l,c){try{const f=await zs(l);await r.registerFromBytes(f,c)}catch(f){throw new Error(`Failed to register font "${c.family}" from URL ${l}: ${f instanceof Error?f.message:String(f)}`)}},async registerFontFromFile(l,c){try{let f;if(typeof l=="string")try{f=await zs(l)}catch(u){throw new Error(`Failed to fetch font from ${l}: ${u instanceof Error?u.message:String(u)}`)}else try{f=await l.arrayBuffer()}catch(u){throw new Error(`Failed to read Blob as ArrayBuffer: ${u instanceof Error?u.message:String(u)}`)}await r.registerFromBytes(f,c)}catch(f){throw f instanceof Error?f:new Error(`Failed to register font "${c.family}" from ${typeof l=="string"?l:"Blob"}: ${String(f)}`)}},async renderFrame(l,c,f){try{const u=await o(l),h={family:u.family,weight:`${u.weight}`};let m;try{let R;const j=r.getColorEmojiFontFamilies();if(j.length>0)R={family:j[0],weight:"400"};else{const re={family:"NotoEmoji",weight:"400"};try{await r.getFace(re),R=re}catch{}}const ie=l.padding?typeof l.padding=="number"?{top:l.padding,right:l.padding,bottom:l.padding,left:l.padding}:l.padding:{top:0,right:0,bottom:0,left:0};m=await n.layout({text:l.text,width:(l.width??t)-ie.left-ie.right,letterSpacing:l.style?.letterSpacing??0,fontSize:u.size,lineHeight:l.style?.lineHeight??1.2,desc:h,textTransform:l.style?.textTransform??"none",emojiFallback:R})}catch(R){throw new Error(`Failed to layout text: ${R instanceof Error?R.message:String(R)}`)}const b=l.padding?typeof l.padding=="number"?{top:l.padding,right:l.padding,bottom:l.padding,left:l.padding}:l.padding:{top:0,right:0,bottom:0,left:0},M=l.border?.width??0,G=(l.width??t)+M*2,L=(l.height??i)+M*2,O=a,v={x:0,y:0,width:(l.width??t)-b.left-b.right,height:(l.height??i)-b.top-b.bottom},P=G,y=L;let K;try{K=await kV({canvas:{width:G,height:L,pixelRatio:O},textRect:v,lines:m,contentRect:{width:P,height:y},font:{family:u.family,size:u.size,weight:`${u.weight}`,color:u.color,opacity:u.opacity,background:u.background},style:{lineHeight:l.style?.lineHeight??1.2,textDecoration:l.style?.textDecoration??"none",gradient:l.style?.gradient},stroke:l.stroke,shadow:l.shadow,align:{horizontal:l.align?.horizontal??"center",vertical:l.align?.vertical??"middle"},background:l.background,border:l.border,padding:l.padding,glyphPathProvider:(R,j)=>r.glyphPath(j||h,R),getUnitsPerEm:R=>r.getUnitsPerEm(R||h),isColorEmojiFont:R=>r.isColorEmojiFont(R)})}catch(R){throw new Error(`Failed to build draw operations: ${R instanceof Error?R.message:String(R)}`)}try{return CV(K,m,{t:c,fontSize:u.size,clipDuration:f,anim:l.animation?{preset:l.animation.preset,speed:l.animation.speed,duration:l.animation.duration,style:l.animation.style,direction:l.animation.direction}:void 0})}catch(R){throw new Error(`Failed to apply animation: ${R instanceof Error?R.message:String(R)}`)}}catch(u){throw u instanceof Error?u:new Error(`Failed to render frame at time ${c}s: ${String(u)}`)}},createRenderer(l){try{return zV(l)}catch(c){throw new Error(`Failed to create renderer: ${c instanceof Error?c.message:String(c)}`)}},destroy(){try{r.release()}catch(l){console.error(`Error during cleanup: ${l instanceof Error?l.message:String(l)}`)}}}}const Fd=e=>{const i=(e.split("/").pop()||"").replace(/\.(ttf|otf|woff|woff2)$/i,""),a=i.replace(/-(Bold|Light|Regular|Italic|Medium|SemiBold|Black|Thin|ExtraLight|ExtraBold|Heavy)$/i,"");return{full:i,base:a}};class Ja extends Qt{static PREVIEW_FPS=60;textEngine=null;renderer=null;canvas=null;texture=null;sprite=null;lastRenderedTime=-1;cachedFrames=new Map;isRendering=!1;validatedAsset=null;fontSupportsBold=!1;loadComplete=!1;constructor(t,i){const a=i.fit?i:{...i,fit:"cover"};super(t,a,Qe.RichText)}buildCanvasPayload(t,i){const a=this.clipConfiguration.width||this.edit.size.width,s=this.clipConfiguration.height||this.edit.size.height,r=t.font?.family,{baseFontFamily:n,fontWeight:o}=i??(r?Ni(r):{baseFontFamily:r,fontWeight:400}),l=t.font?.weight;let c=o;typeof l=="string"?c=parseInt(l,10)||o:typeof l=="number"&&(c=l);const f=this.edit.getTimelineFonts(),u=r?f.find(m=>{const{full:b,base:M}=Fd(m.src),G=r.toLowerCase();return b.toLowerCase()===G||M.toLowerCase()===G}):void 0,h=u?[{src:u.src,family:n||r,weight:c.toString()}]:void 0;return{...t,width:a,height:s,font:t.font?{...t.font,family:n,weight:c}:void 0,stroke:t.font?.stroke,...h&&{customFonts:h}}}async registerFont(t,i,a){if(!this.textEngine)return!1;try{const s={family:t,weight:i.toString()};return a.type==="url"?await this.textEngine.registerFontFromUrl(a.path,s):await this.textEngine.registerFontFromFile(a.path,s),!0}catch{return!1}}async checkFontCapabilities(t){try{const a=await(await fetch(t)).arrayBuffer(),r=Dn.parse(a).tables.fvar;if(r?.axes){const n=r.axes.find(o=>o.tag==="wght");this.fontSupportsBold=!!n}else this.fontSupportsBold=!1}catch(i){console.warn("Failed to check font capabilities:",i),this.fontSupportsBold=!1}}supportsBold(){return this.fontSupportsBold}resolveFont(t){const{baseFontFamily:i,fontWeight:a}=Ni(t),n=(this.edit.getEdit()?.timeline?.fonts||[]).find(l=>{const{full:c,base:f}=Fd(l.src),u=t.toLowerCase();return c.toLowerCase()===u||f.toLowerCase()===u});if(n)return{url:n.src,baseFontFamily:i,fontWeight:a};const o=zn(t);return o?{url:o,baseFontFamily:i,fontWeight:a}:null}reconfigureAfterRestore(){super.reconfigureAfterRestore(),this.reconfigure(this.clipConfiguration.asset)}async reconfigure(t){const i=await this.ensureFontRegistered(t);i&&(await this.checkFontCapabilities(i),this.edit.events.emit(Na.FontCapabilitiesChanged,{supportsBold:this.fontSupportsBold}));for(const a of this.cachedFrames.values())a.destroy();if(this.cachedFrames.clear(),this.lastRenderedTime=-1,this.textEngine){const a=this.buildCanvasPayload(t),{value:s}=this.textEngine.validate(a);this.validatedAsset=s}this.textEngine&&this.renderer&&this.renderFrameSafe(this.getCurrentTime()/1e3)}async ensureFontRegistered(t){if(!this.textEngine)return null;const i=t.font?.family;if(!i)return null;const a=this.resolveFont(i);if(!a)return null;const s=t.font?.weight;let{fontWeight:r}=a;return typeof s=="string"?r=parseInt(s,10)||a.fontWeight:typeof s=="number"&&(r=s),await this.registerFont(a.baseFontFamily,r,{type:"url",path:a.url}),a.url}async load(){await super.load();const t=this.clipConfiguration.asset;try{if(!qw.safeParse(t).success){this.createFallbackText(t);return}const a=t.font?.family,s=a?Ni(a):void 0,r=this.buildCanvasPayload(t,s);this.textEngine=await o_({width:r.width,height:r.height,fps:Ja.PREVIEW_FPS});const{value:n}=this.textEngine.validate(r);if(this.validatedAsset=n,this.canvas=document.createElement("canvas"),this.canvas.width=r.width,this.canvas.height=r.height,this.renderer=this.textEngine.createRenderer(this.canvas),a){const o=this.resolveFont(a);if(o){const l=t.font?.weight;let{fontWeight:c}=o;typeof l=="string"?c=parseInt(l,10)||o.fontWeight:typeof l=="number"&&(c=l),await this.registerFont(o.baseFontFamily,c,{type:"url",path:o.url}),await this.checkFontCapabilities(o.url)}}await this.renderFrame(0),this.configureKeyframes(),this.loadComplete=!0}catch{this.cleanupResources(),this.createFallbackText(t)}}cleanupResources(){if(this.textEngine){try{this.textEngine.destroy()}catch(t){console.warn("Error destroying text engine:",t)}this.textEngine=null}this.renderer=null,this.canvas=null,this.validatedAsset=null}async renderFrame(t){if(!this.textEngine||!this.renderer||!this.canvas||!this.validatedAsset)return;const i=Math.floor(t*Ja.PREVIEW_FPS);if(this.cachedFrames.has(i)){const a=this.cachedFrames.get(i);this.sprite&&this.sprite.texture!==a&&(this.sprite.texture=a),this.lastRenderedTime=t;return}try{const a=await this.textEngine.renderFrame(this.validatedAsset,t),s=this.canvas.getContext("2d");s&&s.clearRect(0,0,this.canvas.width,this.canvas.height),await this.renderer.render(a);const r=se.Texture.from(this.canvas);this.sprite?(this.texture&&!this.cachedFrames.has(i)&&this.texture.destroy(),this.sprite.texture=r):(this.sprite=new se.Sprite(r),this.contentContainer.addChild(this.sprite)),this.texture=r,this.cachedFrames.size<150&&this.cachedFrames.set(i,r),this.lastRenderedTime=t}catch(a){console.error("Failed to render rich text frame:",a)}}createFallbackText(t){const i=this.edit.getEdit(),a=this.clipConfiguration.width||i?.output?.size?.width||this.edit.size.width,s=this.clipConfiguration.height||i?.output?.size?.height||this.edit.size.height,r=new se.TextStyle({fontFamily:t.font?.family||"Arial",fontSize:t.font?.size||48,fill:t.font?.color||"#ffffff",align:t.align?.horizontal||"center",wordWrap:!0,wordWrapWidth:a}),n=new se.Text(t.text,r);switch(t.align?.horizontal){case"left":n.anchor.set(0,.5),n.x=0;break;case"right":n.anchor.set(1,.5),n.x=a;break;default:n.anchor.set(.5,.5),n.x=a/2}switch(t.align?.vertical){case"top":n.anchor.set(n.anchor.x,0),n.y=0;break;case"bottom":n.anchor.set(n.anchor.x,1),n.y=s;break;default:n.anchor.set(n.anchor.x,.5),n.y=s/2}this.contentContainer.addChild(n)}renderFrameSafe(t){if(this.isRendering){const i=Math.floor(t*Ja.PREVIEW_FPS),a=this.cachedFrames.get(i);a&&this.sprite&&this.sprite.texture!==a&&(this.sprite.texture=a);return}this.isRendering=!0,this.renderFrame(t).catch(i=>console.error("Failed to render rich text frame:",i)).finally(()=>{this.isRendering=!1})}update(t,i){if(super.update(t,i),i===101&&(this.isRendering=!1,this.lastRenderedTime=-1),!!this.isActive()&&this.loadComplete&&this.textEngine&&this.renderer&&!this.isRendering){const a=this.getCurrentTime()/1e3,s=1/60;Math.abs(a-this.lastRenderedTime)>s&&this.renderFrameSafe(a)}}dispose(){super.dispose(),this.loadComplete=!1;for(const t of this.cachedFrames.values())t.destroy();this.cachedFrames.clear(),this.texture&&!this.cachedFrames.has(Math.floor(this.lastRenderedTime*Ja.PREVIEW_FPS))&&this.texture.destroy(),this.texture=null,this.sprite&&(this.sprite.destroy(),this.sprite=null),this.canvas&&(this.canvas=null),this.textEngine&&(this.textEngine.destroy(),this.textEngine=null),this.renderer=null,this.validatedAsset=null}getSize(){const t=this.edit.getEdit();return{width:this.clipConfiguration.width||t?.output?.size?.width||this.edit.size.width,height:this.clipConfiguration.height||t?.output?.size?.height||this.edit.size.height}}getFitScale(){return 1}getContainerScale(){const t=this.getScale();return{x:t,y:t}}supportsEdgeResize(){return!0}onDimensionsChanged(){if(!this.textEngine||!this.renderer||!this.canvas)return;const t=this.clipConfiguration.asset,{width:i,height:a}=this.getSize();this.canvas.width=i,this.canvas.height=a;for(const n of this.cachedFrames.values())n.destroy();this.cachedFrames.clear(),this.lastRenderedTime=-1;const s=this.buildCanvasPayload(t),{value:r}=this.textEngine.validate(s);this.validatedAsset=r,this.renderFrameSafe(this.getCurrentTime()/1e3)}updateTextContent(t){const i=this.clipConfiguration.asset;if(i.text=t,this.textEngine){const a=this.buildCanvasPayload(i),{value:s}=this.textEngine.validate(a);this.validatedAsset=s}for(const a of this.cachedFrames.values())a.destroy();this.cachedFrames.clear(),this.lastRenderedTime=-1,this.textEngine&&this.renderer&&this.renderFrameSafe(this.getCurrentTime()/1e3)}getCurrentTime(){return this.edit.playbackTime-this.getStart()}getCacheSize(){return this.cachedFrames.size}}class l_ extends Qt{shape;shapeBackground;constructor(t,i){super(t,i,Qe.Shape),this.shape=null,this.shapeBackground=null}async load(){await super.load();const t=this.clipConfiguration.asset,i=new se.Graphics,a=t.width??this.edit.size.width,s=t.height??this.edit.size.height;i.fillStyle={color:"transparent"},i.rect(0,0,a,s),i.fill();const r=new se.Graphics;switch(t.shape){case"rectangle":{const n=t.rectangle,o=a/2-n.width/2,l=s/2-n.height/2;r.rect(o,l,n.width,n.height);break}case"circle":{const n=t.circle,o=a/2,l=s/2;r.circle(o,l,n.radius);break}case"line":{const n=t.line,o=a/2-n.length/2,l=s/2-n.thickness/2;r.rect(o,l,n.length,n.thickness);break}default:console.warn("Unsupported shape asset type.");break}if(r.fillStyle={color:t.fill?.color??"#ffffff",alpha:t.fill?.opacity??1},r.fill(),t.stroke){const n=new cs({thickness:t.stroke.width,color:t.stroke.color});r.filters=[n]}this.shapeBackground=i,this.shape=r,this.contentContainer.addChild(i),i.addChild(r),this.configureKeyframes()}update(t,i){super.update(t,i)}draw(){super.draw()}dispose(){super.dispose(),this.shape?.destroy(),this.shape=null,this.shapeBackground?.destroy(),this.shapeBackground=null}getSize(){const t=this.clipConfiguration.asset;return{width:t.width??this.edit.size.width,height:t.height??this.edit.size.height}}getFitScale(){return 1}}const c_="https://unpkg.com/@resvg/resvg-wasm@2.6.2/index_bg.wasm";class _i extends Qt{static resvgInitialized=!1;static resvgInitPromise=null;texture=null;sprite=null;renderedWidth=0;renderedHeight=0;constructor(t,i){super(t,i,Qe.Svg)}static async initializeResvg(){if(!_i.resvgInitialized){if(_i.resvgInitPromise){await _i.resvgInitPromise;return}_i.resvgInitPromise=(async()=>{const i=await(await fetch(c_)).arrayBuffer();await GV(i),_i.resvgInitialized=!0})(),await _i.resvgInitPromise}}async load(){await super.load();const t=this.clipConfiguration.asset;try{const i=V1.safeParse(t);if(!i.success){console.error("SVG asset validation failed:",i.error),this.createFallbackGraphic();return}await _i.initializeResvg();const a=this.clipConfiguration.width||this.edit.size.width,s=this.clipConfiguration.height||this.edit.size.height,r=await r_(t,{defaultWidth:a,defaultHeight:s});this.renderedWidth=r.width,this.renderedHeight=r.height;const n=new Blob([r.png],{type:"image/png"}),o=URL.createObjectURL(n);try{this.texture=await se.Assets.load({src:o,loadParser:"loadTextures"}),this.sprite=new se.Sprite(this.texture),this.contentContainer.addChild(this.sprite),this.clipConfiguration.width&&this.clipConfiguration.height&&this.applyFixedDimensions()}finally{URL.revokeObjectURL(o)}this.configureKeyframes()}catch(i){console.error("Failed to render SVG asset:",i),this.createFallbackGraphic()}}createFallbackGraphic(){const t=this.clipConfiguration.width||this.edit.size.width,i=this.clipConfiguration.height||this.edit.size.height,a=new se.Graphics;a.fillStyle={color:"#cccccc",alpha:.5},a.rect(0,0,t,i),a.fill(),a.strokeStyle={color:"#999999",width:2},a.moveTo(0,0),a.lineTo(t,i),a.moveTo(t,0),a.lineTo(0,i),a.stroke(),this.renderedWidth=t,this.renderedHeight=i,this.contentContainer.addChild(a),this.configureKeyframes()}update(t,i){super.update(t,i)}dispose(){super.dispose(),this.sprite&&(this.sprite.destroy(),this.sprite=null),this.texture&&(this.texture.destroy(!0),this.texture=null)}getSize(){return this.clipConfiguration.width&&this.clipConfiguration.height?{width:this.clipConfiguration.width,height:this.clipConfiguration.height}:{width:this.renderedWidth||this.edit.size.width,height:this.renderedHeight||this.edit.size.height}}getContentSize(){return{width:this.renderedWidth||this.edit.size.width,height:this.renderedHeight||this.edit.size.height}}getFitScale(){return 1}supportsEdgeResize(){return!0}}class Bs{static DEFAULT_BLINK_INTERVAL_MS=500;static DEFAULT_CURSOR_WIDTH_PX=2;static DEFAULT_CURSOR_COLOR=16777215;cursor=null;parent;textElement;clipConfig;textPosition=0;pixelX=0;pixelY=0;currentLine=0;isBlinking=!1;blinkInterval=null;blinkIntervalMs=500;width=2;color=16777215;isVisible=!0;constructor(t,i,a,s){this.parent=t,this.textElement=i,this.clipConfig=a,this.width=s?.width??Bs.DEFAULT_CURSOR_WIDTH_PX,this.color=s?.color??Bs.DEFAULT_CURSOR_COLOR,this.blinkIntervalMs=s?.blinkInterval??Bs.DEFAULT_BLINK_INTERVAL_MS,this.textPosition=0,this.isBlinking=!1,this.isVisible=!0,this.blinkInterval=null,this.createCursor()}updatePosition(t){if(!this.cursor||!this.textElement){console.warn("TextCursor: Cannot update position, cursor not initialized");return}this.textPosition=this.validateTextPosition(t),this.calculateAndApplyPixelPosition()}setPosition(t,i){if(!this.cursor){console.warn("TextCursor: Cannot set position, cursor not initialized");return}this.pixelX=t,this.pixelY=i,this.updateGraphicsPosition()}show(){this.setVisible(!0)}hide(){this.setVisible(!1)}setVisible(t){this.isVisible=t,this.cursor&&!this.isBlinking&&(this.cursor.visible=t)}startBlinking(){if(!this.cursor){console.warn("TextCursor: Cannot start blinking, cursor not initialized");return}this.isBlinking||this.startBlinkingAnimation()}stopBlinking(){this.stopBlinkingAnimation()}setBlinkInterval(t){this.blinkIntervalMs=t,this.isBlinking&&(this.stopBlinking(),this.startBlinking())}dispose(){if(this.stopBlinkingAnimation(),this.cursor&&this.parent)try{this.parent.removeChild(this.cursor)}catch(t){console.warn("TextCursor: Error removing cursor from parent:",t)}if(this.cursor)try{this.cursor.destroy()}catch(t){console.warn("TextCursor: Error destroying cursor graphics:",t)}finally{this.cursor=null}this.textPosition=0,this.pixelX=0,this.pixelY=0,this.currentLine=0,this.isVisible=!0}createCursor(){if(!this.textElement)return;this.cursor=new se.Graphics,this.cursor.fillStyle={color:this.color};const t=this.textElement.style.fontSize;this.cursor.rect(0,0,this.width,t),this.cursor.fill(),this.parent.addChild(this.cursor),this.cursor.visible=this.isVisible}validateTextPosition(t){return this.textElement?Math.max(0,Math.min(t,this.textElement.text.length)):0}calculateAndApplyPixelPosition(){this.calculatePixelPositionFromText(),this.updateGraphicsPosition()}calculatePixelPositionFromText(){if(!this.textElement)return;const{text:t}=this.textElement,i=this.textElement.style,a=t.substring(0,this.textPosition),s=a.match(/\n/g);this.currentLine=s?s.length:0;const r=t.split(`
|
|
297
|
+
`),n=this.currentLine<r.length?r[this.currentLine]:"",o=a.lastIndexOf(`
|
|
298
|
+
`),l=o===-1?this.textPosition:this.textPosition-o-1,c=n.substring(0,l);let f;c.length>0&&c.endsWith(" ")?f=this.measureText(`${c}x`,i)-this.measureText("x",i):f=this.measureText(c,i);const u=i.lineHeight;this.pixelY=this.currentLine*u;const m=this.clipConfig.asset.alignment?.horizontal??"center";let b=f;if(m!=="left"){const M=this.measureText(n,i),G=this.textElement.width;let L=0;m==="center"?L=(G-M)/2:m==="right"&&(L=G-M),b=L+f}this.pixelX=b}updateGraphicsPosition(){this.cursor&&this.cursor.position.set(this.pixelX,this.pixelY)}startBlinkingAnimation(){!this.cursor||this.isBlinking||(this.isBlinking=!0,this.blinkInterval=window.setInterval(()=>{this.cursor&&this.isBlinking&&(this.cursor.visible=!this.cursor.visible)},this.blinkIntervalMs))}stopBlinkingAnimation(){this.blinkInterval!==null&&(window.clearInterval(this.blinkInterval),this.blinkInterval=null),this.isBlinking=!1,this.cursor&&(this.cursor.visible=this.isVisible)}measureText(t,i){const a=new se.Text(t,i),{width:s}=a;return a.destroy(),s}isInitialized(){return this.cursor!==null}getState(){return{isInitialized:this.isInitialized(),isBlinking:this.isBlinking,isVisible:this.isVisible,textPosition:this.textPosition,pixelPosition:{x:this.pixelX,y:this.pixelY},currentLine:this.currentLine}}}class wn{static DEFAULT_FOCUS_DELAY_MS=50;hiddenInput=null;isFocused=!1;focusRetryCount=0;maxFocusRetries=3;focusDelay=wn.DEFAULT_FOCUS_DELAY_MS;eventHandlers={};abortController=null;textChangeCallback=null;lastSyncedText="";isComposing=!1;setupInput(t,i){this.focusDelay=i?.focusDelay??wn.DEFAULT_FOCUS_DELAY_MS,this.createHiddenTextarea(),this.hiddenInput&&(this.hiddenInput.value=t,this.lastSyncedText=t),this.setupEventListeners(),i?.autoFocus!==!1&&this.focusInput()}updateInputValue(t){this.hiddenInput&&(this.hiddenInput.value=t,this.lastSyncedText=t)}focusInput(){this.hiddenInput&&setTimeout(()=>{this.hiddenInput&&!this.isFocused&&(this.hiddenInput.focus(),setTimeout(()=>{!this.isFocused&&this.focusRetryCount<this.maxFocusRetries&&(this.focusRetryCount+=1,this.focusInput())},10))},this.focusDelay)}blurInput(){this.hiddenInput&&this.hiddenInput.blur()}setSelectionRange(t,i){if(!this.hiddenInput)return;const a=this.hiddenInput.value.length,s=Math.max(0,Math.min(t,a)),r=Math.max(s,Math.min(i,a));this.hiddenInput.setSelectionRange(s,r)}getCursorPosition(){return this.hiddenInput?.selectionStart||0}getValue(){return this.hiddenInput?.value||""}setTextInputHandler(t){this.textChangeCallback=t}setEventHandlers(t){this.eventHandlers={...this.eventHandlers,...t}}isFocusedInput(){return this.isFocused}dispose(){this.removeAllEventListeners(),this.hiddenInput&&this.hiddenInput.parentNode&&this.hiddenInput.parentNode.removeChild(this.hiddenInput),this.hiddenInput=null,this.isFocused=!1,this.focusRetryCount=0,this.textChangeCallback=null,this.eventHandlers={}}createHiddenTextarea(){this.hiddenInput=document.createElement("textarea");const t={position:"absolute",opacity:"0.01",pointerEvents:"none",zIndex:"999",left:"0px",top:"0px",width:"1px",height:"1px",border:"none",outline:"none",resize:"none",backgroundColor:"transparent"};Object.assign(this.hiddenInput.style,t),this.hiddenInput.tabIndex=0,document.body.appendChild(this.hiddenInput)}setupEventListeners(){if(!this.hiddenInput)return;this.abortController=new AbortController;const{signal:t}=this.abortController;this.hiddenInput.addEventListener("input",this.handleTextInput,{signal:t}),this.hiddenInput.addEventListener("keydown",this.handleKeyDown,{signal:t}),this.hiddenInput.addEventListener("compositionstart",this.handleCompositionStart,{signal:t}),this.hiddenInput.addEventListener("compositionend",this.handleCompositionEnd,{signal:t}),this.hiddenInput.addEventListener("focus",this.handleFocus,{signal:t}),this.hiddenInput.addEventListener("blur",this.handleBlur,{signal:t}),this.hiddenInput.addEventListener("paste",this.handlePaste,{signal:t})}removeAllEventListeners(){this.abortController?.abort(),this.abortController=null}handleTextInput=t=>{if(!this.hiddenInput||this.isComposing)return;const i=this.hiddenInput.value,a=this.hiddenInput.selectionStart||0;this.lastSyncedText=i,this.textChangeCallback?.(i,a)};handleKeyDown=t=>{if(document.activeElement!==this.hiddenInput)return;let i=!1;if((t.ctrlKey||t.metaKey)&&(i=this.handleKeyboardShortcuts(t),i)){t.preventDefault();return}if(t.key==="Tab"){const a=t.shiftKey?"backward":"forward";this.eventHandlers.onTabNavigation?.(a),t.preventDefault();return}switch(t.key){case"Escape":this.eventHandlers.onEscape?.(t),i=!0;break;case"Enter":i=!1;break;case"ArrowLeft":case"ArrowRight":case"ArrowUp":case"ArrowDown":setTimeout(()=>{if(this.hiddenInput){const a=this.hiddenInput.value,s=this.hiddenInput.selectionStart||0;this.textChangeCallback?.(a,s)}},0),i=!1;break;case"Backspace":case"Delete":i=!1;break;default:i=this.eventHandlers.onCustomKey?.(t.key,t)||!1;break}i&&t.preventDefault()};handleKeyboardShortcuts(t){const{key:i}=t;switch(i.toLowerCase()){case"a":return this.selectAll(),!0;case"c":case"v":return!1;case"z":return this.eventHandlers.onCustomKey?.("undo",t),!0;case"y":return this.eventHandlers.onCustomKey?.("redo",t),!0;default:return!1}}handleCompositionStart=t=>{this.isComposing=!0};handleCompositionEnd=t=>{if(this.isComposing=!1,this.hiddenInput){const i=this.hiddenInput.value,a=this.hiddenInput.selectionStart||0;this.textChangeCallback?.(i,a)}};handleFocus=t=>{this.isFocused=!0,this.focusRetryCount=0,this.eventHandlers.onFocus?.(t)};handleBlur=t=>{this.isFocused=!1,this.eventHandlers.onBlur?.(t)};handlePaste=t=>{setTimeout(()=>{this.handleTextInput(t)},0)};selectAll(){this.hiddenInput&&this.hiddenInput.select()}}class vi{static DOUBLE_CLICK_THRESHOLD_MS=300;static EDITING_BG_PADDING_PX=5;static EDITING_BG_ALPHA=.2;static CLICK_HANDLER_DELAY_MS=100;parent;targetText;clipConfig;isEditing=!1;lastClickTime=0;editingContainer=null;editableText=null;textCursor=null;textInputHandler=null;outsideClickHandler=null;constructor(t,i,a){this.parent=t,this.targetText=i,this.clipConfig=a,this.parent.getContainer().eventMode="static",this.parent.getContainer().on("click",this.checkForDoubleClick)}dispose(){this.parent.getContainer().off("click",this.checkForDoubleClick),this.stopEditing(),this.outsideClickHandler&&(window.removeEventListener("click",this.outsideClickHandler),this.outsideClickHandler=null)}startEditing(){if(this.isEditing||!this.targetText)return;const t=structuredClone(this.clipConfig);this.targetText.visible=!1,this.createEditingEnvironment(),this.setupOutsideClickHandler(t),this.isEditing=!0}stopEditing(t=!1,i){if(!this.isEditing)return;let a="";this.editableText&&(a=this.editableText.text),this.editingContainer&&(this.parent.getContainer().removeChild(this.editingContainer),this.editingContainer.destroy(),this.editingContainer=null),this.editableText=null,this.textCursor&&(this.textCursor.dispose(),this.textCursor=null),this.textInputHandler&&(this.textInputHandler.dispose(),this.textInputHandler=null),this.targetText.visible=!0,t&&i&&a!==""&&this.parent.updateTextContent(a,i),this.isEditing=!1}checkForDoubleClick=t=>{const i=Date.now();i-this.lastClickTime<vi.DOUBLE_CLICK_THRESHOLD_MS&&this.startEditing(),this.lastClickTime=i};setupOutsideClickHandler(t){this.outsideClickHandler=i=>{const s=this.parent.getContainer().getBounds(),r=i.clientX,n=i.clientY;(r<s.x||r>s.x+s.width||n<s.y||n>s.y+s.height)&&(this.stopEditing(!0,t),this.outsideClickHandler&&(window.removeEventListener("click",this.outsideClickHandler),this.outsideClickHandler=null))},setTimeout(()=>{this.outsideClickHandler&&window.addEventListener("click",this.outsideClickHandler)},vi.CLICK_HANDLER_DELAY_MS)}createEditingEnvironment(){this.setupEditingContainer(),this.editingContainer&&this.editableText&&(this.textCursor=new Bs(this.editingContainer,this.editableText,this.clipConfig),this.textCursor.updatePosition(this.targetText.text.length),this.textCursor.startBlinking()),this.setupTextInputHandler(),this.updateTextAlignment()}setupEditingContainer(){this.editingContainer=new se.Container,this.parent.getContainer().addChild(this.editingContainer);const t=new se.Graphics;t.fillStyle={color:0,alpha:vi.EDITING_BG_ALPHA},t.rect(-5,-5,this.targetText.width+2*vi.EDITING_BG_PADDING_PX,this.targetText.height+2*vi.EDITING_BG_PADDING_PX),t.fill(),this.editingContainer.addChild(t),this.editableText=new se.Text(this.targetText.text,this.targetText.style),this.editableText.eventMode="static",this.editableText.cursor="text",this.editingContainer.addChild(this.editableText)}setupTextInputHandler(){this.textInputHandler=new wn,this.textInputHandler.setTextInputHandler((t,i)=>{this.editableText&&(this.editableText.text=t,this.updateTextAlignment()),this.textCursor?.updatePosition(i)}),this.textInputHandler.setEventHandlers({onEscape:t=>this.stopEditing(!1),onTabNavigation:t=>this.stopEditing(!0)}),this.textInputHandler.setupInput(this.targetText.text,{autoFocus:!0})}updateTextAlignment(){if(!this.editableText||!this.editingContainer)return;const t=this.getContainerDimensions(),i=this.getAlignmentSettings(),a=this.calculateHorizontalPosition({width:this.editableText.width},t,i.horizontal),s=this.calculateVerticalPosition({height:this.editableText.height},t,i.vertical);if(this.editingContainer.position.set(a,s),this.editingContainer.children.length>0){const r=this.editingContainer.getChildAt(0);r instanceof se.Graphics&&(r.clear(),r.fillStyle={color:0,alpha:vi.EDITING_BG_ALPHA},r.rect(-5,-5,this.editableText.width+2*vi.EDITING_BG_PADDING_PX,this.editableText.height+2*vi.EDITING_BG_PADDING_PX),r.fill())}}calculateHorizontalPosition(t,i,a="center"){switch(a){case"center":return i.width/2-t.width/2;case"right":return i.width-t.width;case"left":default:return 0}}calculateVerticalPosition(t,i,a="center"){switch(a){case"center":return i.height/2-t.height/2;case"bottom":return i.height-t.height;case"top":default:return 0}}getContainerDimensions(){const t=this.clipConfig.asset;return{width:t.width??this.parent.getSize().width,height:t.height??this.parent.getSize().height}}getAlignmentSettings(){const t=this.clipConfig.asset;return{horizontal:t.alignment?.horizontal??"center",vertical:t.alignment?.vertical??"center"}}}class Qa extends Qt{static loadedFonts=new Set;background=null;text=null;textEditor=null;constructor(t,i){super(t,i,Qe.Text)}async load(){await super.load();const t=this.clipConfiguration.asset,i=t.font?.family??"Open Sans";if(await this.loadFont(i),this.background=new se.Graphics,this.drawBackground(),this.text=new se.Text({text:t.text??"",style:this.createTextStyle(t)}),this.positionText(t),t.stroke?.width&&t.stroke.width>0&&t.stroke.color){const a=new cs({thickness:t.stroke.width,color:t.stroke.color});this.text.filters=[a]}this.contentContainer.addChild(this.background),this.contentContainer.addChild(this.text),this.configureKeyframes(),this.textEditor=new vi(this,this.text,this.clipConfiguration)}update(t,i){super.update(t,i)}reconfigureAfterRestore(){super.reconfigureAfterRestore(),this.reconfigure()}async reconfigure(){const t=this.clipConfiguration.asset,i=t.font?.family??"Open Sans";if(await this.loadFont(i),this.drawBackground(),this.text){if(this.text.text=t.text??"",this.text.style=this.createTextStyle(t),t.stroke?.width&&t.stroke.width>0&&t.stroke.color){const a=new cs({thickness:t.stroke.width,color:t.stroke.color});this.text.filters=[a]}else this.text.filters=[];this.positionText(t)}}dispose(){super.dispose(),this.background?.destroy(),this.background=null,this.text?.destroy(),this.text=null,this.textEditor?.dispose(),this.textEditor=null}getSize(){const t=this.clipConfiguration.asset;return{width:this.clipConfiguration.width??t.width??this.edit.size.width,height:this.clipConfiguration.height??t.height??this.edit.size.height}}getFitScale(){return 1}getContainerScale(){const t=this.getScale();return{x:t,y:t}}supportsEdgeResize(){return!0}onDimensionsChanged(){if(this.drawBackground(),this.text){const t=this.clipConfiguration.asset;this.text.style.wordWrapWidth=this.getSize().width,this.positionText(t)}}applyFixedDimensions(){}createTextStyle(t){const i=t.font?.family??"Open Sans",{baseFontFamily:a,fontWeight:s}=Ni(i),{width:r}=this.getSize();return new se.TextStyle({fontFamily:a,fontSize:t.font?.size??32,fill:t.font?.color??"#ffffff",fontWeight:s.toString(),wordWrap:!0,wordWrapWidth:r,lineHeight:(t.font?.lineHeight??1)*(t.font?.size??32),align:t.alignment?.horizontal??"center"})}positionText(t){if(!this.text)return;const i=t.alignment?.horizontal??"center",a=t.alignment?.vertical??"center",{width:s,height:r}=this.getSize();let n=s/2-this.text.width/2,o=r/2-this.text.height/2;i==="left"?n=0:i==="right"&&(n=s-this.text.width),a==="top"?o=0:a==="bottom"&&(o=r-this.text.height),this.text.position.set(n,o)}drawBackground(){const t=this.clipConfiguration.asset;if(!this.background||!t.background||!t.background.color)return;const{width:i,height:a}=this.getSize();this.background.clear(),this.background.fillStyle={color:t.background.color,alpha:t.background.opacity??1},this.background.rect(0,0,i,a),this.background.fill()}updateTextContent(t,i){this.edit.updateTextContent(this,t,i)}async loadFont(t){const{baseFontFamily:i,fontWeight:a}=Ni(t),s=`${i}-${a}`;if(Qa.loadedFonts.has(s))return;const r=zn(t);if(r){const n=new FontFace(i,`url(${r})`,{weight:a.toString()});await n.load(),document.fonts.add(n),Qa.loadedFonts.add(s)}}static resetFontCache(){Qa.loadedFonts.clear()}}class f_ extends Qt{texture;sprite;isPlaying;volumeKeyframeBuilder;syncTimer;activeSyncTimer;skipVideoUpdate;constructor(t,i){super(t,i,Qe.Video),this.texture=null,this.sprite=null,this.isPlaying=!1;const a=this.clipConfiguration.asset;this.volumeKeyframeBuilder=new os(a.volume??1,this.getLength()),this.syncTimer=0,this.activeSyncTimer=0,this.skipVideoUpdate=!1}async load(){await super.load(),await this.loadVideo(),this.configureKeyframes()}update(t,i){if(super.update(t,i),this.skipVideoUpdate)return;const{trim:a=0}=this.clipConfiguration.asset;if(this.syncTimer+=i,!this.texture)return;const s=this.getPlaybackTime(),r=this.edit.isPlaying&&this.isActive();r&&(this.isPlaying||(this.isPlaying=!0,this.activeSyncTimer=0,this.texture.source.resource.currentTime=s+a,this.texture.source.resource.play().catch(console.error)),this.texture.source.resource.volume!==this.getVolume()&&(this.texture.source.resource.volume=this.getVolume()),this.activeSyncTimer+=i,this.activeSyncTimer>1e3&&(this.activeSyncTimer=0,Math.abs(this.texture.source.resource.currentTime-a-s)>.3&&(this.texture.source.resource.currentTime=s+a,this.edit.recordSyncCorrection()))),!r&&this.isPlaying&&(this.isPlaying=!1,this.texture.source.resource.pause());const n=this.syncTimer>100;!this.edit.isPlaying&&this.isActive()&&n&&(this.syncTimer=0,this.texture.source.resource.currentTime=s+a)}draw(){super.draw()}dispose(){super.dispose(),this.disposeVideo()}getSize(){return this.clipConfiguration.width&&this.clipConfiguration.height?{width:this.clipConfiguration.width,height:this.clipConfiguration.height}:{width:this.sprite?.width??0,height:this.sprite?.height??0}}supportsEdgeResize(){return!0}async reloadAsset(){this.skipVideoUpdate=!0,this.disposeVideo(),await this.loadVideo(),this.isPlaying=!1,this.syncTimer=0,this.activeSyncTimer=0,this.skipVideoUpdate=!1}async loadVideo(){const t=this.clipConfiguration.asset,{src:i}=t;if(i.endsWith(".mov"))throw new Error(`Video source '${i}' is not supported. .mov files cannot be played in the browser. Please convert to .webm or .mp4 first.`);const a=`${i}${i.includes("?")?"&":"?"}x-cors=1`,s={src:a,data:{autoPlay:!1,muted:!1}},r=await this.edit.assetLoader.loadVideoUnique(a,s);if(!r||!(r.source instanceof se.VideoSource))throw new Error(`Invalid video source '${i}'.`);r.source.alphaMode="no-premultiply-alpha",this.texture=this.createCroppedTexture(r);const n=this.texture.source.resource;n instanceof HTMLVideoElement&&n.readyState<2&&await new Promise(o=>{const l=()=>{n.removeEventListener("loadeddata",l),o()};n.addEventListener("loadeddata",l),n.readyState>=2&&o()}),this.sprite=new se.Sprite(this.texture),this.contentContainer.addChild(this.sprite)}disposeVideo(){this.texture?.source?.resource&&(this.texture.source.resource.pause(),this.texture.source.resource.src="",this.texture.source.resource.load()),this.sprite&&(this.contentContainer.removeChild(this.sprite),this.sprite.destroy(),this.sprite=null),this.texture&&(this.texture.destroy(!0),this.texture=null)}getVolume(){return this.volumeKeyframeBuilder.getValue(this.getPlaybackTime())}getCurrentDrift(){if(!this.texture?.source?.resource)return 0;const{trim:t=0}=this.clipConfiguration.asset,i=this.texture.source.resource.currentTime,a=this.getPlaybackTime();return Math.abs(i-t-a)}createCroppedTexture(t){const i=this.clipConfiguration.asset;if(!i.crop)return t;const a=t.width,s=t.height;if(a<=0||s<=0)return t;const r=Math.floor((i.crop?.left??0)*a),n=Math.floor((i.crop?.right??0)*a),o=Math.floor((i.crop?.top??0)*s),l=Math.floor((i.crop?.bottom??0)*s),c=r,f=o,u=a-r-n,h=s-o-l,m=new se.Rectangle(c,f,u,h);return new se.Texture({source:t.source,frame:m})}}const Pd=16711935,Ed=2,yl=6,Od=4;class u_{graphics;canvasWidth;canvasHeight;constructor(t,i,a){this.canvasWidth=i,this.canvasHeight=a,this.graphics=new se.Graphics,this.graphics.zIndex=999999,t.addChild(this.graphics)}clear(){this.graphics.clear()}drawCanvasGuide(t,i){this.graphics.strokeStyle={width:Ed,color:Pd},t==="x"?(this.graphics.moveTo(i,0),this.graphics.lineTo(i,this.canvasHeight)):(this.graphics.moveTo(0,i),this.graphics.lineTo(this.canvasWidth,i)),this.graphics.stroke()}drawClipGuide(t,i,a,s){t==="x"?this.drawDashedLine(i,a,i,s):this.drawDashedLine(a,i,s,i)}drawDashedLine(t,i,a,s){const r=a-t,n=s-i,o=Math.sqrt(r*r+n*n),l=Math.floor(o/(yl+Od)),c=r/o,f=n/o;this.graphics.strokeStyle={width:Ed,color:Pd};for(let u=0;u<l;u+=1){const h=u*(yl+Od),m=h+yl,b=t+c*h,M=i+f*h,G=t+c*Math.min(m,o),L=i+f*Math.min(m,o);this.graphics.moveTo(b,M),this.graphics.lineTo(G,L)}this.graphics.stroke()}dispose(){this.graphics.destroy()}}const d_=/^alias:\/\/([a-zA-Z0-9_-]+)$/;function bl(e,t){for(let i=0;i<e.timeline.tracks.length;i+=1){const a=e.timeline.tracks[i];for(let s=0;s<a.clips.length;s+=1)t(a.clips[s],i,s)}}function vn(e){if(typeof e!="string")return null;const t=e.match(d_);return t?t[1]:null}function h_(e){const t={};return bl(e,(i,a,s)=>{i.alias&&(t[i.alias]&&console.warn(`Duplicate alias "${i.alias}" at track ${a}, clip ${s} - overwriting previous`),t[i.alias]=i)}),t}function p_(e){const t=new Map;return bl(e,(i,a,s)=>{const r=i.alias??`t${a}c${s}`,n=new Set,o=vn(i.start);o&&n.add(o);const l=vn(i.length);l&&n.add(l),n.size>0&&t.set(r,n)}),t}function g_(e){const t=new Set,i=new Set;function a(s,r){t.add(s),i.add(s);const n=e.get(s);if(n)for(const o of n){if(i.has(o))return[...r,o];if(!t.has(o)){const l=a(o,[...r,o]);if(l)return l}}return i.delete(s),null}for(const s of e.keys())if(!t.has(s)){const r=a(s,[s]);if(r)return r}return null}function m_(e,t){const i=[],a=new Set,s=new Set([...e.keys(),...Object.keys(t)]);function r(n){if(a.has(n))return;a.add(n);const o=e.get(n);if(o)for(const l of o)r(l);i.push(n)}for(const n of s)r(n);return i}function y_(e){const t=p_(e);if(t.size===0)return;const i=g_(t);if(i)throw new Error(`Circular alias reference detected: ${i.join(" -> ")}`);const a=h_(e),s=new Map;bl(e,(n,o,l)=>{const c=n.alias??`t${o}c${l}`;s.set(c,n)});const r=m_(t,a);for(const n of r){const o=s.get(n);if(o){const l=vn(o.start);if(l){const f=a[l];if(!f)throw new Error(`Alias "${l}" not found. Available: ${Object.keys(a).join(", ")||"none"}`);if(typeof f.start!="number")throw new Error(`Cannot resolve alias "${l}": target has unresolved start`);o.start=f.start}const c=vn(o.length);if(c){const f=a[c];if(!f)throw new Error(`Alias "${c}" not found. Available: ${Object.keys(a).join(", ")||"none"}`);if(typeof f.length!="number")throw new Error(`Cannot resolve alias "${c}": target has unresolved length`);o.length=f.length}}}}class b_{constructor(t,i){this.trackIdx=t,this.clip=i}name="addClip";addedPlayer;async execute(t){if(t)try{const i=t.createPlayerFromAssetType(this.clip);i.layer=this.trackIdx+1,await t.addPlayer(this.trackIdx,i);const r=t.getClips().filter(n=>n.layer===i.layer).findIndex(n=>n===i);t.updateDuration(),t.emitEvent(ue.ClipAdded,{trackIndex:this.trackIdx,clipIndex:r}),this.addedPlayer=i}catch(i){const a=this.clip.asset.type??"unknown";t.emitEvent(ue.ClipLoadFailed,{trackIndex:this.trackIdx,clipIndex:-1,error:i instanceof Error?i.message:String(i),assetType:a})}}async undo(t){if(!t||!this.addedPlayer)return;const s=t.getClips().filter(r=>r.layer===this.addedPlayer.layer).findIndex(r=>r===this.addedPlayer);t.queueDisposeClip(this.addedPlayer),t.updateDuration(),t.emitEvent(ue.ClipDeleted,{trackIndex:this.trackIdx,clipIndex:s})}}class w_{constructor(t){this.trackIdx=t}name="addTrack";execute(t){if(!t)return;const i=t.getTracks(),a=t.getClips();i.splice(this.trackIdx,0,[]),a.forEach(s=>{if(s.layer>this.trackIdx){const r=1e5-s.layer*100,n=t.getContainer().getChildByLabel(`shotstack-track-${r}`,!1);n&&n.removeChild(s.getContainer()),s.layer+=1;const o=1e5-s.layer*100;let l=t.getContainer().getChildByLabel(`shotstack-track-${o}`,!1);l||(l=new se.Container({label:`shotstack-track-${o}`,zIndex:o}),t.getContainer().addChild(l)),l.addChild(s.getContainer())}}),t.getContainer().sortDirty=!0,t.updateDuration(),t.emitEvent(ue.TrackAdded,{trackIndex:this.trackIdx,totalTracks:i.length})}undo(t){if(!t)return;const i=t.getTracks(),a=t.getClips();i.splice(this.trackIdx,1),a.forEach(s=>{if(s.layer>this.trackIdx){const r=1e5-s.layer*100,n=t.getContainer().getChildByLabel(`shotstack-track-${r}`,!1);n&&n.removeChild(s.getContainer()),s.layer-=1;const o=1e5-s.layer*100;let l=t.getContainer().getChildByLabel(`shotstack-track-${o}`,!1);l||(l=new se.Container({label:`shotstack-track-${o}`,zIndex:o}),t.getContainer().addChild(l)),l.addChild(s.getContainer())}}),t.getContainer().sortDirty=!0,t.updateDuration()}}class v_{name="ClearSelection";previousSelection=null;execute(t){const i=t.getSelectedClip();if(i){const a=t.findClipIndices(i);a&&(this.previousSelection={player:i,trackIndex:a.trackIndex,clipIndex:a.clipIndex})}t.setSelectedClip(null),t.emitEvent(ue.SelectionCleared)}undo(t){if(this.previousSelection){const i=t.getClipAt(this.previousSelection.trackIndex,this.previousSelection.clipIndex);i&&(t.setSelectedClip(i),t.emitEvent(ue.ClipSelected,{clip:i.clipConfiguration,trackIndex:this.previousSelection.trackIndex,clipIndex:this.previousSelection.clipIndex}))}}}class Md{constructor(t){this.trackIdx=t}name="deleteTrack";deletedClips=[];execute(t){if(!t)return;const i=t.getClips(),a=t.getTracks();this.deletedClips=i.filter(n=>n.layer===this.trackIdx+1).map(n=>({config:structuredClone(n.clipConfiguration),bindings:new Map(n.getMergeFieldBindings())})),i.forEach((n,o)=>{n.layer===this.trackIdx+1&&(i[o].shouldDispose=!0)}),t.disposeClips(),a.splice(this.trackIdx,1);const s=t.getClips(),r=t.getContainer();s.forEach((n,o)=>{if(n.layer>this.trackIdx+1){r.getChildByLabel(`shotstack-track-${1e5-n.layer*100}`,!1)?.removeChild(n.getContainer()),s[o].layer-=1;const c=1e5-s[o].layer*100;let f=r.getChildByLabel(`shotstack-track-${c}`,!1);f||(f=new se.Container({label:`shotstack-track-${c}`,zIndex:c}),r.addChild(f)),f.addChild(s[o].getContainer())}}),t.updateDuration(),t.emitEvent(ue.TrackRemoved,{trackIndex:this.trackIdx})}async undo(t){if(!t)return;const i=t.getTracks(),a=t.getClips();i.splice(this.trackIdx,0,[]),a.forEach((s,r)=>{s.layer>=this.trackIdx+1&&(a[r].layer+=1)});for(const{config:s,bindings:r}of this.deletedClips){const n=t.createPlayerFromAssetType(s);n.layer=this.trackIdx+1,r.size>0&&n.setInitialBindings(r),await t.addPlayer(this.trackIdx,n)}t.updateDuration()}}class xn{constructor(t,i){this.trackIdx=t,this.clipIdx=i}name="deleteClip";deletedClip;deleteTrackCommand;trackWasDeleted=!1;execute(t){if(!t)return;const i=t.getClips(),a=t.getTracks(),s=i.filter(r=>r.layer===this.trackIdx+1);if(this.deletedClip=s[this.clipIdx],t.clearClipError(this.trackIdx,this.clipIdx),this.deletedClip){t.queueDisposeClip(this.deletedClip),t.disposeClips(),t.updateDuration(),t.propagateTimingChanges(this.trackIdx,this.clipIdx-1);const r=a[this.trackIdx];r&&r.length===0&&(this.deleteTrackCommand=new Md(this.trackIdx),this.deleteTrackCommand.execute(t),this.trackWasDeleted=!0),t.emitEvent(ue.ClipDeleted,{trackIndex:this.trackIdx,clipIndex:this.clipIdx}),t.getSelectedClip()===this.deletedClip&&(t.setSelectedClip(null),t.emitEvent(ue.SelectionCleared))}}async undo(t){!t||!this.deletedClip||(this.trackWasDeleted&&this.deleteTrackCommand&&(await this.deleteTrackCommand.undo(t),this.trackWasDeleted=!1),t.undeleteClip(this.trackIdx,this.deletedClip),t.propagateTimingChanges(this.trackIdx,this.clipIdx),t.emitEvent(ue.ClipRestored,{trackIndex:this.trackIdx,clipIndex:this.clipIdx}))}}class x_{constructor(t,i){this.trackIndex=t,this.clipIndex=i}name="SelectClip";previousSelection=null;execute(t){const i=t.getSelectedClip();if(i){const s=t.findClipIndices(i);s&&(this.previousSelection=s)}const a=t.getClipAt(this.trackIndex,this.clipIndex);a&&(t.setSelectedClip(a),t.emitEvent(ue.ClipSelected,{clip:a.clipConfiguration,trackIndex:this.trackIndex,clipIndex:this.clipIndex}))}undo(t){if(t.setSelectedClip(null),this.previousSelection){const i=t.getClipAt(this.previousSelection.trackIndex,this.previousSelection.clipIndex);i&&(t.setSelectedClip(i),t.emitEvent(ue.ClipSelected,{clip:i.clipConfiguration,trackIndex:this.previousSelection.trackIndex,clipIndex:this.previousSelection.clipIndex}))}else t.emitEvent(ue.SelectionCleared)}}class Rd{constructor(t,i,a,s){this.clip=t,this.initialClipConfig=i,this.finalClipConfig=a,this.storedInitialConfig=i?structuredClone(i):null,this.storedFinalConfig=a?structuredClone(a):structuredClone(this.clip.clipConfiguration),this.trackIndex=s?.trackIndex??-1,this.clipIndex=s?.clipIndex??-1}name="setUpdatedClip";storedInitialConfig;storedFinalConfig;storedInitialBindings=new Map;trackIndex;clipIndex;storedInitialTiming=null;async execute(t){if(!t)return;this.storedInitialBindings=new Map(this.clip.getMergeFieldBindings()),this.storedFinalConfig&&t.restoreClipConfiguration(this.clip,this.storedFinalConfig);const i=this.storedFinalConfig.start!==this.storedInitialConfig?.start,a=this.storedFinalConfig.length!==this.storedInitialConfig?.length;(i||a)&&(this.storedInitialTiming={start:this.clip.getStart(),length:this.clip.getLength()},this.clip.setTimingIntent({start:this.storedFinalConfig.start,length:this.storedFinalConfig.length}),this.clip.setResolvedTiming({start:this.storedFinalConfig.start,length:this.storedFinalConfig.length})),t.setUpdatedClip(this.clip);for(const[u,{resolvedValue:h}]of this.storedInitialBindings)Aa(this.clip.clipConfiguration,u)!==h&&this.clip.removeMergeFieldBinding(u);const s=this.trackIndex>=0?this.trackIndex:this.clip.layer-1,n=t.getClips().filter(u=>u.layer===this.clip.layer),o=this.clipIndex>=0?this.clipIndex:n.indexOf(this.clip),l=this.storedInitialConfig?.asset,c=this.storedFinalConfig?.asset;l?.src!==c?.src&&this.clip.getTimingIntent().length==="auto"&&await t.resolveClipAutoLength(this.clip);const f=this.storedInitialConfig??this.initialClipConfig??this.clip.clipConfiguration;t.emitEvent(ue.ClipUpdated,{previous:{clip:f,trackIndex:s,clipIndex:o},current:{clip:this.storedFinalConfig,trackIndex:s,clipIndex:o}})}async undo(t){if(!t||!this.storedInitialConfig)return;t.restoreClipConfiguration(this.clip,this.storedInitialConfig),this.storedInitialTiming&&(this.clip.setTimingIntent({start:this.storedInitialTiming.start,length:this.storedInitialTiming.length}),this.clip.setResolvedTiming({start:this.storedInitialTiming.start,length:this.storedInitialTiming.length})),t.setUpdatedClip(this.clip),this.clip.setInitialBindings(this.storedInitialBindings);const i=this.trackIndex>=0?this.trackIndex:this.clip.layer-1,s=t.getClips().filter(l=>l.layer===this.clip.layer),r=this.clipIndex>=0?this.clipIndex:s.indexOf(this.clip),n=this.storedFinalConfig?.asset,o=this.storedInitialConfig?.asset;n?.src!==o?.src&&this.clip.getTimingIntent().length==="auto"&&await t.resolveClipAutoLength(this.clip),t.emitEvent(ue.ClipUpdated,{previous:{clip:this.storedFinalConfig,trackIndex:i,clipIndex:r},current:{clip:this.storedInitialConfig,trackIndex:i,clipIndex:r}})}}class k_{constructor(t,i,a){this.trackIndex=t,this.clipIndex=i,this.splitTime=a}name="SplitClip";originalClipConfig=null;rightClipPlayer=null;splitSuccessful=!1;originalBindings=new Map;execute(t){const i=t.getClipAt(this.trackIndex,this.clipIndex);if(!i||!i.clipConfiguration)throw new Error("Cannot split clip: invalid player or clip configuration");const a=i.clipConfiguration,s=a.start,r=a.length,n=.1,o=this.splitTime-s;if(o<=n||o>=r-n)throw new Error("Cannot split clip: split point too close to clip boundaries");this.originalClipConfig={...a},this.originalBindings=new Map(i.getMergeFieldBindings());const l={...a,length:o},c={...a,start:s+o,length:r-o};if(a.asset&&(l.asset={...a.asset},c.asset={...a.asset}),a.asset&&(a.asset.type==="video"||a.asset.type==="audio")){const m=a.asset.trim||0;l.asset&&(l.asset.type==="video"||l.asset.type==="audio")&&(l.asset.trim=m),c.asset&&(c.asset.type==="video"||c.asset.type==="audio")&&(c.asset.trim=m+o)}if(Object.assign(i.clipConfiguration,l),i.reconfigureAfterRestore(),i.draw(),this.rightClipPlayer=t.createPlayerFromAssetType(c),!this.rightClipPlayer)throw Object.assign(i.clipConfiguration,this.originalClipConfig),i.reconfigureAfterRestore(),new Error("Failed to create right clip player");this.rightClipPlayer.layer=this.trackIndex+1,this.originalBindings.size>0&&this.rightClipPlayer.setInitialBindings(this.originalBindings);const f=t.getTrack(this.trackIndex);if(!f)throw new Error("Invalid track index");f.splice(this.clipIndex+1,0,this.rightClipPlayer);const u=t.getClips(),h=u.indexOf(i);h!==-1&&u.splice(h+1,0,this.rightClipPlayer),t.addPlayerToContainer(this.trackIndex,this.rightClipPlayer),this.rightClipPlayer.reconfigureAfterRestore(),this.rightClipPlayer.load().then(()=>{this.splitSuccessful=!0,this.rightClipPlayer&&this.rightClipPlayer.draw(),t.updateDuration(),t.emitEvent(ue.ClipSplit,{trackIndex:this.trackIndex,originalClipIndex:this.clipIndex,newClipIndex:this.clipIndex+1})}).catch(m=>{console.error("Failed to load split clip:",m)})}undo(t){if(!this.originalClipConfig)return;const i=t.getClipAt(this.trackIndex,this.clipIndex);if(i){if(Object.assign(i.clipConfiguration,this.originalClipConfig),i.reconfigureAfterRestore(),this.rightClipPlayer){const a=t.getTrack(this.trackIndex);if(a){const n=a.indexOf(this.rightClipPlayer);n!==-1&&a.splice(n,1)}const s=t.getClips(),r=s.indexOf(this.rightClipPlayer);r!==-1&&s.splice(r,1),t.queueDisposeClip(this.rightClipPlayer),this.rightClipPlayer=null}t.updateDuration(),t.emitEvent(ue.ClipDeleted,{trackIndex:this.trackIndex,clipIndex:this.clipIndex+1})}}}class Dd{constructor(t,i,a){this.trackIndex=t,this.clipIndex=i,this.targetAssetType=a}name="TransformClipAsset";originalPlayer=null;originalConfig=null;originalAssetType=null;originalBindings=new Map;newPlayer=null;loadCompleted=!1;execute(t){const i=t.getClipAt(this.trackIndex,this.clipIndex);if(!i?.clipConfiguration)throw new Error("Cannot transform clip: invalid player");this.originalPlayer=i,this.originalConfig={...i.clipConfiguration},this.originalAssetType=this.originalConfig.asset?.type??null,this.originalBindings=new Map(i.getMergeFieldBindings()),this.loadCompleted=!1;const a=this.originalConfig.asset;if(!a.src)throw new Error("Cannot transform clip: asset has no src property");const s={type:this.targetAssetType,src:a.src},r={...this.originalConfig,asset:s};if(this.newPlayer=t.createPlayerFromAssetType(r),!this.newPlayer)throw new Error("Failed to create transformed player");this.newPlayer.layer=this.trackIndex+1,this.originalBindings.size>0&&this.newPlayer.setInitialBindings(this.originalBindings);const n=t.getTrack(this.trackIndex);if(!n)throw new Error("Invalid track index");n[this.clipIndex]=this.newPlayer;const o=t.getClips(),l=o.indexOf(this.originalPlayer);l!==-1&&(o[l]=this.newPlayer),t.addPlayerToContainer(this.trackIndex,this.newPlayer),this.newPlayer.reconfigureAfterRestore(),this.newPlayer.load().then(()=>{this.loadCompleted=!0,this.newPlayer&&this.newPlayer.draw(),t.emitEvent(ue.ClipUpdated,{previous:{trackIndex:this.trackIndex,clipIndex:this.clipIndex,clip:this.originalConfig},current:{trackIndex:this.trackIndex,clipIndex:this.clipIndex,clip:r}}),this.originalPlayer&&t.queueDisposeClip(this.originalPlayer)}).catch(c=>{console.error("Failed to load transformed clip:",c)})}undo(t){if(!this.originalPlayer||!this.originalConfig)return;const i=t.getTrack(this.trackIndex);i&&this.newPlayer&&(i[this.clipIndex]=this.originalPlayer);const a=t.getClips();if(this.newPlayer){const s=a.indexOf(this.newPlayer);s!==-1&&(a[s]=this.originalPlayer)}t.addPlayerToContainer(this.trackIndex,this.originalPlayer),this.originalPlayer.reconfigureAfterRestore(),this.originalPlayer.draw(),this.newPlayer&&t.queueDisposeClip(this.newPlayer),t.emitEvent(ue.ClipUpdated,{previous:{trackIndex:this.trackIndex,clipIndex:this.clipIndex,clip:this.newPlayer?.clipConfiguration},current:{trackIndex:this.trackIndex,clipIndex:this.clipIndex,clip:this.originalConfig}}),this.newPlayer=null}getOriginalAssetType(){return this.originalAssetType}isLoadCompleted(){return this.loadCompleted}}class N_{constructor(t,i,a){this.trackIndex=t,this.clipIndex=i,this.params=a}name="UpdateClipTiming";player=null;originalIntent=null;previousConfig=null;execute(t){if(!t)return;const i=t.getTrack(this.trackIndex);if(!i||this.clipIndex<0||this.clipIndex>=i.length){console.warn(`Invalid track/clip index: ${this.trackIndex}/${this.clipIndex}`);return}this.player=i[this.clipIndex],this.originalIntent=this.player.getTimingIntent(),this.previousConfig=JSON.parse(JSON.stringify(this.player.clipConfiguration));const a={start:this.originalIntent.start,length:this.originalIntent.length};this.params.start!==void 0&&(a.start=this.params.start==="auto"?"auto":this.params.start/1e3),this.params.length!==void 0&&(this.params.length==="auto"||this.params.length==="end"?a.length=this.params.length:a.length=this.params.length/1e3),this.player.setTimingIntent(a),this.updateClipConfiguration(this.player,a);const s=a.start==="auto"?$s(this.trackIndex,this.clipIndex,t.getTracks()):a.start;if(a.length==="auto")this.player.setResolvedTiming({start:s,length:this.player.getLength()}),t.resolveClipAutoLength(this.player).then(()=>{this.player?.reconfigureAfterRestore(),this.player?.draw(),t.updateDuration(),t.propagateTimingChanges(this.trackIndex,this.clipIndex)}),this.player.reconfigureAfterRestore(),this.player.draw();else if(a.length==="end"){t.trackEndLengthClip(this.player);const r=er(t.getTracks()),n=Math.max(r-s,.1);this.player.setResolvedTiming({start:s,length:n}),this.player.reconfigureAfterRestore(),this.player.draw()}else t.untrackEndLengthClip(this.player),this.player.setResolvedTiming({start:s,length:a.length}),this.player.reconfigureAfterRestore(),this.player.draw();t.updateDuration(),t.emitEvent(ue.ClipUpdated,{previous:{trackIndex:this.trackIndex,clipIndex:this.clipIndex,clip:this.previousConfig},current:{trackIndex:this.trackIndex,clipIndex:this.clipIndex,clip:this.player.clipConfiguration}}),t.propagateTimingChanges(this.trackIndex,this.clipIndex)}undo(t){!t||!this.player||!this.originalIntent||(this.player.setTimingIntent(this.originalIntent),this.previousConfig&&t.restoreClipConfiguration(this.player,this.previousConfig),this.originalIntent.length==="auto"?t.resolveClipAutoLength(this.player):this.originalIntent.length==="end"?t.trackEndLengthClip(this.player):t.untrackEndLengthClip(this.player),this.player.reconfigureAfterRestore(),this.player.draw(),t.updateDuration(),t.emitEvent(ue.ClipUpdated,{previous:{trackIndex:this.trackIndex,clipIndex:this.clipIndex,clip:this.player.clipConfiguration},current:{trackIndex:this.trackIndex,clipIndex:this.clipIndex,clip:this.previousConfig}}),t.propagateTimingChanges(this.trackIndex,this.clipIndex))}updateClipConfiguration(t,i){const a=t.clipConfiguration;i.start!=="auto"&&(a.start=i.start),i.length!=="auto"&&i.length!=="end"&&(a.length=i.length)}}class A_{constructor(t,i,a){this.clip=t,this.newText=i,this.initialConfig=a;const{asset:s}=this.clip.clipConfiguration;this.previousText=s&&"text"in s?s.text??"":""}name="updateTextContent";previousText;execute(t){if(t&&this.clip.clipConfiguration.asset&&"text"in this.clip.clipConfiguration.asset){this.clip.clipConfiguration.asset.text=this.newText;const i=this.clip.text;i&&(i.text=this.newText,this.clip.positionText(this.clip.clipConfiguration.asset)),t.setUpdatedClip(this.clip);const a=this.clip.layer-1,n=t.getClips().filter(o=>o.layer===this.clip.layer).indexOf(this.clip);t.emitEvent(ue.ClipUpdated,{previous:{clip:this.initialConfig,trackIndex:a,clipIndex:n},current:{clip:this.clip.clipConfiguration,trackIndex:a,clipIndex:n}})}}undo(t){if(t&&this.clip.clipConfiguration.asset&&"text"in this.clip.clipConfiguration.asset){this.clip.clipConfiguration.asset.text=this.previousText;const i=this.clip.text;i&&(i.text=this.previousText,this.clip.positionText(this.clip.clipConfiguration.asset)),t.setUpdatedClip(this.clip);const a=this.clip.layer-1,n=t.getClips().filter(o=>o.layer===this.clip.layer).indexOf(this.clip);t.emitEvent(ue.ClipUpdated,{previous:{clip:this.clip.clipConfiguration,trackIndex:a,clipIndex:n},current:{clip:this.initialConfig,trackIndex:a,clipIndex:n}})}}}class zd{events;constructor(){this.events={}}on(t,i){return this.events[t]||(this.events[t]=new Set),this.events[t].add(i),()=>this.off(t,i)}once(t,i){const a=s=>{this.off(t,a),i(s)};return this.on(t,a)}off(t,i){this.events[t]&&(this.events[t].delete(i),!(this.events[t].size>0)&&delete this.events[t])}clear(t){delete this.events[t]}emit(t,...i){if(!this.events[t])return;const a=i[0];for(const s of this.events[t])s(a)}}class C_{constructor(t,i,a){this.getCanvas=t,this.getTracks=i,this.events=a,this.onClipChangedBound=()=>this.rebuildLumaMasksIfNeeded()}activeLumaMasks=[];pendingMaskCleanup=[];onClipChangedBound;initialize(){this.finalizeLumaMasking(),this.setupEventListeners()}update(){this.updateLumaMasks(),this.processPendingMaskCleanup()}getActiveMaskCount(){return this.activeLumaMasks.length}dispose(){this.removeEventListeners();for(const t of this.activeLumaMasks)t.tempContainer.destroy({children:!0}),t.maskSprite.destroy({texture:!0});this.activeLumaMasks=[];for(const t of this.pendingMaskCleanup)try{t.maskSprite.parent?.removeChild(t.maskSprite),t.maskSprite.destroy({texture:!0})}catch{}this.pendingMaskCleanup=[]}cleanupForPlayer(t){const i=this.activeLumaMasks.findIndex(s=>s.lumaPlayer===t);if(i===-1)return;const a=this.activeLumaMasks[i];a.contentClip&&(a.contentClip.getContentContainer().mask=null),a.maskSprite.parent?.removeChild(a.maskSprite),a.tempContainer.destroy({children:!0}),this.activeLumaMasks.splice(i,1),this.pendingMaskCleanup.push({maskSprite:a.maskSprite,frameCount:0})}finalizeLumaMasking(){if(!this.getCanvas())return;const i=this.getTracks();for(const a of i){const s=a.find(o=>o.playerType===Qe.Luma),r=s?.getSprite(),n=a.filter(o=>o.playerType!==Qe.Luma);s&&r?.texture&&n.length>0&&(this.setupLumaMask(s,r.texture,n[0]),s.getContainer().parent?.removeChild(s.getContainer()))}}setupLumaMask(t,i,a){const s=this.getCanvas();if(!s)return;const{renderer:r}=s.application,{width:n,height:o}=a.getSize(),l=new se.Container,c=new se.Sprite(i);c.width=n,c.height=o;const f=new se.ColorMatrixFilter;f.negative(!1),c.filters=[f],l.addChild(c);const u=r.generateTexture({target:l,resolution:.5}),h=new se.Sprite(u);a.getContainer().addChild(h),a.getContentContainer().setMask({mask:h}),this.activeLumaMasks.push({lumaPlayer:t,maskSprite:h,tempContainer:l,contentClip:a,lastVideoTime:-1})}updateLumaMasks(){const t=this.getCanvas();if(!t)return;const{renderer:i}=t.application,a=1/30;for(const s of this.activeLumaMasks)if(s.lumaPlayer.isVideoSource()){const r=s.lumaPlayer.getVideoCurrentTime();if(Math.abs(r-s.lastVideoTime)>=a){s.lastVideoTime=r;const o=s.maskSprite.texture;s.maskSprite.texture=i.generateTexture({target:s.tempContainer,resolution:.5}),o.destroy(!0)}}}setupEventListeners(){this.events.on(ue.ClipAdded,this.onClipChangedBound),this.events.on(ue.ClipSplit,this.onClipChangedBound),this.events.on(ue.ClipUpdated,this.onClipChangedBound),this.events.on(ue.ClipRestored,this.onClipChangedBound),this.events.on(ue.ClipDeleted,this.onClipChangedBound)}removeEventListeners(){this.events.off(ue.ClipAdded,this.onClipChangedBound),this.events.off(ue.ClipSplit,this.onClipChangedBound),this.events.off(ue.ClipUpdated,this.onClipChangedBound),this.events.off(ue.ClipRestored,this.onClipChangedBound),this.events.off(ue.ClipDeleted,this.onClipChangedBound)}processPendingMaskCleanup(){for(let t=this.pendingMaskCleanup.length-1;t>=0;t-=1){const i=this.pendingMaskCleanup[t];if(i.frameCount+=1,i.frameCount>=3){try{i.maskSprite.parent?.removeChild(i.maskSprite),i.maskSprite.destroy({texture:!0})}catch{}this.pendingMaskCleanup.splice(t,1)}}}async rebuildLumaMasksIfNeeded(){if(!this.getCanvas())return;const i=this.getTracks();for(let a=0;a<i.length;a+=1){const s=i[a],r=s.find(l=>l.playerType===Qe.Luma),n=s.filter(l=>l.playerType!==Qe.Luma);r&&r.getContainer().parent?.removeChild(r.getContainer());const o=r&&this.activeLumaMasks.find(l=>l.lumaPlayer===r);if(r&&!o&&n.length>0){r.getSprite()||await r.load();const l=r.getSprite();l?.texture&&(this.setupLumaMask(r,l.texture,n[0]),r.getContainer().parent?.removeChild(r.getContainer()))}}}}function S_(e){return{find:e.name,replace:e.defaultValue}}function V_(e){const t=typeof e.replace=="string"?e.replace:JSON.stringify(e.replace);return{name:e.find,defaultValue:t}}const __=/\{\{\s*([A-Z_0-9]+)\s*\}\}/gi,wl=/\{\{\s*[A-Z_0-9]+\s*\}\}/i;class I_{fields=new Map;events;constructor(t){this.events=t}register(t,i){const a=!this.fields.has(t.name);this.fields.set(t.name,t),i?.silent||(this.events.emit(a?ue.MergeFieldRegistered:ue.MergeFieldUpdated,{field:t}),this.events.emit(ue.MergeFieldChanged,{fields:this.getAll()}))}remove(t,i){const a=this.fields.delete(t);return a&&!i?.silent&&(this.events.emit(ue.MergeFieldRemoved,{name:t}),this.events.emit(ue.MergeFieldChanged,{fields:this.getAll()})),a}get(t){return this.fields.get(t)}getAll(){return Array.from(this.fields.values())}clear(){this.fields.clear()}resolve(t){return!t||this.fields.size===0?t:t.replace(__,(i,a)=>this.fields.get(a)?.defaultValue??i)}hasUnresolved(t){if(!t)return!1;const i=this.resolve(t);return wl.test(i)}extractFieldName(t){if(!t)return null;const i=wl.exec(t);if(!i)return null;const a=i[0].match(/\{\{\s*([A-Z_0-9]+)\s*\}\}/i);return a?a[1]:null}isMergeFieldTemplate(t){return wl.test(t)}createTemplate(t){return`{{ ${t} }}`}toSerializedArray(){return this.getAll().map(S_)}loadFromSerialized(t){this.fields.clear();for(const i of t)this.fields.set(i.find,V_(i))}generateUniqueName(t){const i=new Set(this.fields.keys());let a=1;for(;i.has(`${t}_${a}`);)a+=1;return`${t}_${a}`}}function T_(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function vl(e,t){if(typeof e=="string"){let i=e;for(const{find:a,replace:s}of t){const r=typeof s=="string"?s:JSON.stringify(s);i=i.replace(new RegExp(`\\{\\{\\s*${T_(a)}\\s*\\}\\}`,"gi"),r)}return i}if(Array.isArray(e))return e.map(i=>vl(i,t));if(e!==null&&typeof e=="object"){const i=e;for(const a of Object.keys(i))i[a]=vl(i[a],t)}return e}function F_(e,t){return t?.length?vl(structuredClone(e),t):e}class P_ extends zd{registry;constructor(){super(),this.registry={}}}class kn{static VIDEO_EXTENSIONS=[".mp4",".m4v",".webm",".ogg",".ogv"];static VIDEO_MIME={".mp4":"video/mp4",".m4v":"video/mp4",".webm":"video/webm",".ogg":"video/ogg",".ogv":"video/ogg"};loadTracker=new P_;refCounts=new Map;incrementRef(t){this.refCounts.set(t,(this.refCounts.get(t)??0)+1)}decrementRef(t){const i=this.refCounts.get(t)??0;return i<=1?(this.refCounts.delete(t),!0):(this.refCounts.set(t,i-1),!1)}constructor(){se.Assets.setPreferences({crossOrigin:"anonymous"})}async load(t,i){this.updateAssetLoadMetadata(t,"pending",0),this.incrementRef(t);try{if(await this.shouldUseSafariVideoLoader(i))return await this.loadVideoForSafari(t,i);const s=await se.Assets.load(i,r=>{this.updateAssetLoadMetadata(t,"loading",r)});return this.updateAssetLoadMetadata(t,"success",1),s}catch(a){return console.warn(`[AssetLoader] Failed to load asset "${t}":`,a),this.updateAssetLoadMetadata(t,"failed",1),this.decrementRef(t),null}}async loadVideoUnique(t,i){this.updateAssetLoadMetadata(t,"pending",0);try{const a=this.extractUrl(i);if(!a)throw new Error("No URL provided for video loading");const s=typeof i=="object"?i.data??{}:{},r=await new Promise((n,o)=>{const l=document.createElement("video");l.crossOrigin="anonymous",l.playsInline=!0,l.muted=s.muted??!1,l.preload="auto",l.addEventListener("loadedmetadata",()=>{try{const c=new se.VideoSource({resource:l,autoPlay:s.autoPlay??!1,...s});n(new se.Texture({source:c}))}catch(c){o(c)}},{once:!0}),l.addEventListener("error",()=>o(new Error("Video loading failed")),{once:!0}),this.updateAssetLoadMetadata(t,"loading",.5),l.src=a});return this.updateAssetLoadMetadata(t,"success",1),r}catch{return this.updateAssetLoadMetadata(t,"failed",1),null}}getProgress(){const t=Object.keys(this.loadTracker.registry);return t.length===0?0:t.reduce((a,s)=>a+this.loadTracker.registry[s].progress,0)/t.length}extractUrl(t){if(typeof t=="string")return t;const i=Array.isArray(t.src)?t.src[0]:t.src;return typeof i=="string"?i:i?.src}hasVideoExtension(t){const i=new URL(t,window.location.origin).pathname.toLowerCase();return kn.VIDEO_EXTENSIONS.some(a=>i.endsWith(a))}async getContentType(t){try{return(await fetch(t,{method:"HEAD"})).headers.get("content-type")}catch{return null}}canPlayVideo(t){const i=new URL(t,window.location.origin).pathname.toLowerCase(),a=i.slice(i.lastIndexOf(".")),s=kn.VIDEO_MIME[a];return s?document.createElement("video").canPlayType(s)!=="":!1}async isPlayableVideo(t){if(this.hasVideoExtension(t))return this.canPlayVideo(t);const i=await this.getContentType(t);return i?.startsWith("video/")?document.createElement("video").canPlayType(i)!=="":!1}async shouldUseSafariVideoLoader(t){const i=/^((?!chrome|android).)*safari/i.test(navigator.userAgent),a=this.extractUrl(t);return i&&a!==void 0&&await this.isPlayableVideo(a)}async loadVideoForSafari(t,i){const a=this.extractUrl(i),s=typeof i=="object"?i.data??{}:{},r=await new Promise((n,o)=>{const l=document.createElement("video");l.crossOrigin="anonymous",l.playsInline=!0,l.muted=!0,l.preload="metadata",l.addEventListener("loadedmetadata",()=>{try{const c=new se.VideoSource({resource:l,autoPlay:s.autoPlay??!1,...s});n(new se.Texture({source:c}))}catch(c){o(c)}},{once:!0}),l.addEventListener("error",()=>o(new Error("Video loading failed")),{once:!0}),this.updateAssetLoadMetadata(t,"loading",.5),l.src=a});return this.updateAssetLoadMetadata(t,"success",1),r}updateAssetLoadMetadata(t,i,a){this.loadTracker.registry[t]?(this.loadTracker.registry[t].progress=a,this.loadTracker.registry[t].status=i):this.loadTracker.registry[t]={progress:a,status:i};const s={...this.loadTracker.registry};this.loadTracker.emit("onAssetLoadInfoUpdated",{registry:s})}}class Nn{static Name="FontLoadParser";id;name;extension;validFontExtensions;woff2Decompressor;constructor(){this.id=Nn.Name,this.name=Nn.Name,this.extension={type:[se.ExtensionType.LoadParser],priority:se.LoaderParserPriority.High,ref:null},this.validFontExtensions=["ttf","otf","woff","woff2"],this.woff2Decompressor=null}test(t){const i=t.split("?")[0]?.split(".").pop()?.toLowerCase()??"";return this.validFontExtensions.includes(i)}async load(t,i,a){const s=t.split("?")[0]?.split(".").pop()?.toLowerCase()??"",r=await fetch(t).then(h=>h.arrayBuffer());if(s!=="woff2"){const h=Dn.parse(new Uint8Array(r).buffer),m=h.names.fontFamily.en||h.names.fontFamily[Object.keys(h.names.fontFamily)[0]],b=new FontFace(m,`url(${t})`);return await b.load(),document.fonts.add(b),b}if(await this.loadWoff2Decompressor(),!this.woff2Decompressor)throw new Error("Cannot initialize Woff2 decompressor.");const n=this.woff2Decompressor.decompress(r),o=Dn.parse(new Uint8Array(n).buffer),l=o.names.fontFamily.en||o.names.fontFamily[Object.keys(o.names.fontFamily)[0]],c=new Blob([n],{type:"font/ttf"}),f=URL.createObjectURL(c),u=new FontFace(l,`url(${f})`);return await u.load(),document.fonts.add(u),u}async loadWoff2Decompressor(){if(this.woff2Decompressor)return;const i=`${await fetch("https://unpkg.com/wawoff2@2.0.1/build/decompress_binding.js").then(a=>a.text())}; return Module`;this.woff2Decompressor=new Function(i)(),await new Promise(a=>{this.woff2Decompressor.onRuntimeInitialized=a})}unload(t){t&&document.fonts.delete(t)}}class $a{data;constructor(t){this.data=structuredClone(t)}getTimeline(){return this.data.timeline}getBackground(){return this.data.timeline.background}getTracks(){return this.data.timeline.tracks}getTrack(t){return this.data.timeline.tracks[t]??null}getTrackCount(){return this.data.timeline.tracks.length}getSoundtrack(){return this.data.timeline.soundtrack}getClip(t,i){const a=this.data.timeline.tracks[t];return a?a.clips[i]??null:null}getClipsInTrack(t){return this.data.timeline.tracks[t]?.clips??[]}getClipCount(){return this.data.timeline.tracks.reduce((t,i)=>t+i.clips.length,0)}getClipCountInTrack(t){return this.data.timeline.tracks[t]?.clips.length??0}getOutput(){return this.data.output}getSize(){const{size:t}=this.data.output;if(!t?.width||!t?.height)throw new Error("Output size is not defined");return{width:t.width,height:t.height}}getFormat(){return this.data.output.format}getFps(){return this.data.output.fps}getMergeFields(){return this.data.merge}addTrack(t,i){const a=i??{clips:[]};return this.data.timeline.tracks.splice(t,0,a),a}removeTrack(t){if(t<0||t>=this.data.timeline.tracks.length)return null;const[i]=this.data.timeline.tracks.splice(t,1);return i??null}addClip(t,i,a){const s=this.data.timeline.tracks[t];if(!s)throw new Error(`Track ${t} does not exist`);const r=a??s.clips.length;return s.clips.splice(r,0,i),i}removeClip(t,i){const a=this.data.timeline.tracks[t];if(!a||i<0||i>=a.clips.length)return null;const[s]=a.clips.splice(i,1);return s??null}updateClip(t,i,a){const s=this.getClip(t,i);if(!s)throw new Error(`Clip at track ${t}, index ${i} does not exist`);Object.assign(s,a)}replaceClip(t,i,a){const s=this.data.timeline.tracks[t];if(!s||i<0||i>=s.clips.length)return null;const r=s.clips[i];return s.clips[i]=a,r}setBackground(t){this.data.timeline.background=t}setSoundtrack(t){this.data.timeline.soundtrack=t}getFonts(){return this.data.timeline.fonts??[]}addFont(t){this.data.timeline.fonts||(this.data.timeline.fonts=[]),this.data.timeline.fonts.some(i=>i.src===t)||this.data.timeline.fonts.push({src:t})}removeFont(t){this.data.timeline.fonts&&(this.data.timeline.fonts=this.data.timeline.fonts.filter(i=>i.src!==t))}setFonts(t){this.data.timeline.fonts=t}setSize(t){this.data.output.size={width:t.width,height:t.height}}setFormat(t){this.data.output.format=t}setFps(t){this.data.output.fps=t}setMergeFields(t){this.data.merge=t}toJSON(){const t=structuredClone(this.data);return t.merge?.length===0&&delete t.merge,t}static fromJSON(t){return new $a(t)}clone(){return new $a(this.data)}}class es extends Ml{static ZIndexPadding=100;assetLoader;events;document;edit;tracks;clipsToDispose;clips;commandHistory=[];commandIndex=-1;playbackTime;size;backgroundColor;totalDuration;isPlaying;selectedClip;copiedClip=null;updatedClip;viewportMask;background;isExporting=!1;cachedTimelineEnd=0;endLengthClips=new Set;isBatchingEvents=!1;isLoadingEdit=!1;syncCorrectionCount=0;toolbarButtons=[];mergeFieldService;canvas=null;alignmentGuides=null;lumaMaskController;clipErrors=new Map;constructor(t){super(),this.document=new $a(t),this.size=this.document.getSize(),this.backgroundColor=this.document.getBackground()??"#000000",this.assetLoader=new kn,this.edit=null,this.tracks=[],this.clipsToDispose=[],this.clips=[],this.events=new zd,this.mergeFieldService=new I_(this.events),this.lumaMaskController=new C_(()=>this.canvas,()=>this.tracks,this.events),this.playbackTime=0,this.totalDuration=0,this.isPlaying=!1,this.selectedClip=null,this.updatedClip=null,this.background=null,this.setupIntentListeners()}async load(){this.getContainer().sortableChildren=!0;const t=new se.Graphics;this.background=t,t.fillStyle={color:this.backgroundColor},t.rect(0,0,this.size.width,this.size.height),t.fill(),this.getContainer().addChild(t),this.viewportMask=new se.Graphics,this.viewportMask.rect(0,0,this.size.width,this.size.height),this.viewportMask.fill(16777215),this.getContainer().addChild(this.viewportMask),this.getContainer().setMask({mask:this.viewportMask}),this.alignmentGuides=new u_(this.getContainer(),this.size.width,this.size.height),await this.initializeFromDocument()}async initializeFromDocument(t="load"){const i=this.document.toJSON(),a=i.merge??[];this.mergeFieldService.loadFromSerialized(a);const s=this.detectMergeFieldBindings(i,a),r=a.length>0?F_(i,a):i,n=Wc.parse(r);y_(n),this.edit=n,await Promise.all((this.edit.timeline.fonts??[]).map(async o=>{const l=o.src,c={src:l,parser:Nn.Name};return this.assetLoader.load(l,c)})),this.isLoadingEdit=!0;for(const[o,l]of this.edit.timeline.tracks.entries())for(const[c,f]of l.clips.entries())try{const u=this.createPlayerFromAssetType(f);u.layer=o+1;const h=s.get(`${o}-${c}`);h&&h.size>0&&u.setInitialBindings(h),await this.addPlayer(o,u)}catch(u){const h=f.asset.type??"unknown",m=u instanceof Error?u.message:String(u);this.clipErrors.set(`${o}-${c}`,{error:m,assetType:h}),this.events.emit(ue.ClipLoadFailed,{trackIndex:o,clipIndex:c,error:m,assetType:h})}this.isLoadingEdit=!1,this.lumaMaskController.initialize(),await this.resolveAllTiming(),this.updateTotalDuration(),this.edit.timeline.soundtrack&&await this.loadSoundtrack(this.edit.timeline.soundtrack),this.events.emit(ue.TimelineUpdated,{current:this.getResolvedEdit()}),this.emitEditChanged(t)}update(t,i){for(const a of this.clips)a.shouldDispose&&this.queueDisposeClip(a),a.update(t,i);this.disposeClips(),this.lumaMaskController.update(),this.isPlaying&&(this.playbackTime=Math.max(0,Math.min(this.playbackTime+i,this.totalDuration)),this.playbackTime===this.totalDuration&&this.pause())}draw(){for(const t of this.clips)t.draw()}dispose(){if(this.clearClips(),this.lumaMaskController.dispose(),this.viewportMask){try{this.getContainer().setMask(null)}catch{}this.viewportMask.destroy(),this.viewportMask=void 0}Qa.resetFontCache()}updateViewportMask(){this.viewportMask&&(this.viewportMask.clear(),this.viewportMask.rect(0,0,this.size.width,this.size.height),this.viewportMask.fill(16777215))}play(){this.isPlaying=!0,this.events.emit(ue.PlaybackPlay)}pause(){this.isPlaying=!1,this.events.emit(ue.PlaybackPause)}seek(t){this.playbackTime=Math.max(0,Math.min(t,this.totalDuration)),this.pause(),this.update(0,101),this.draw()}stop(){this.seek(0)}async loadEdit(t){if(this.edit&&!this.hasStructuralChanges(t)){this.document=new $a(t),this.isBatchingEvents=!0,this.applyGranularChanges(t),this.isBatchingEvents=!1,this.emitEditChanged("loadEdit:granular");return}this.document=new $a(t);const i=this.document.getSize();(i.width!==this.size.width||i.height!==this.size.height)&&(this.size=i,this.updateViewportMask(),this.canvas?.zoomToFit()),this.backgroundColor=this.document.getBackground()??"#000000",this.background&&(this.background.clear(),this.background.fillStyle={color:this.backgroundColor},this.background.rect(0,0,this.size.width,this.size.height),this.background.fill()),this.clearClips(),await this.initializeFromDocument("loadEdit")}async loadSoundtrack(t){const i={asset:{type:"audio",src:t.src,effect:t.effect,volume:t.volume??1},fit:"crop",start:0,length:this.totalDuration/1e3},a=new Rl(this,i);a.layer=this.tracks.length+1,await this.addPlayer(this.tracks.length,a)}getEdit(){const t=this.document.toJSON(),i=this.mergeFieldService.toSerializedArray();return i.length>0&&(t.merge=i),t}validateEdit(t){const i=Wc.safeParse(t);return i.success?{valid:!0,errors:[]}:{valid:!1,errors:i.error.issues.map(a=>({path:a.path.join("."),message:a.message}))}}getResolvedEdit(){const t=this.tracks.map(i=>({clips:i.filter(a=>a&&!this.clipsToDispose.includes(a)).map(a=>({...a.clipConfiguration,start:a.getStart(),length:a.getLength()}))}));return{timeline:{background:this.backgroundColor,tracks:t,fonts:this.edit?.timeline.fonts||[]},output:this.edit?.output||{size:this.size,format:"mp4"}}}getOriginalEdit(){return this.edit}getDocument(){return this.document}addClip(t,i){const a=new b_(t,i);return this.executeCommand(a)}getClip(t,i){const a=this.tracks[t];return!a||i<0||i>=a.length?null:a[i].clipConfiguration}getClipError(t,i){return this.clipErrors.get(`${t}-${i}`)??null}clearClipErrorAndShift(t,i){this.clipErrors.delete(`${t}-${i}`);const a=[];for(const[s,r]of this.clipErrors){const[n,o]=s.split("-").map(Number);n===t&&o>i&&a.push({oldKey:s,newKey:`${n}-${o-1}`,value:r})}for(const{oldKey:s,newKey:r,value:n}of a)this.clipErrors.delete(s),this.clipErrors.set(r,n)}getPlayerClip(t,i){const a=this.tracks[t];return!a||i<0||i>=a.length?null:a[i]}getOriginalAsset(t,i){const a=this.getPlayerClip(t,i);if(a)return a.getExportableClip()?.asset}deleteClip(t,i){const a=this.tracks[t];if(!a)return;const s=a[i];if(!s)return;if(s.playerType!==Qe.Luma){const o=a.findIndex(l=>l.playerType===Qe.Luma);if(o!==-1){const l=o<i?i-1:i,c=new xn(t,o);this.executeCommand(c);const f=new xn(t,l);this.executeCommand(f);return}}const n=new xn(t,i);this.executeCommand(n)}splitClip(t,i,a){const s=new k_(t,i,a);this.executeCommand(s)}async addTrack(t,i){this.document&&!this.isLoadingEdit&&this.document.addTrack(t);const a=new w_(t);await this.executeCommand(a);for(const s of i?.clips??[])await this.addClip(t,s)}getTrack(t){const i=this.clips.filter(a=>a.layer===t+1);return i.length===0?null:{clips:i.map(a=>a.clipConfiguration)}}deleteTrack(t){const i=new Md(t);this.executeCommand(i)}getTotalDuration(){return this.totalDuration}getMemoryStats(){const t={};for(const r of this.clips){const n=r.clipConfiguration.asset?.type||"unknown";t[n]=(t[n]||0)+1}let i=0,a=0,s=0;for(const r of this.clips)r.playerType===Qe.RichText&&(i+=1,a+=r.getCacheSize()),r.playerType===Qe.Text&&(s+=1);return{clipCounts:t,totalClips:this.clips.length,richTextCacheStats:{clips:i,totalFrames:a},textPlayerCount:s,lumaMaskCount:this.lumaMaskController.getActiveMaskCount(),commandHistorySize:this.commandHistory.length,trackCount:this.tracks.length}}getComprehensiveMemoryStats(){const t=[],i={videos:{count:0,totalMB:0,dimensions:[]},images:{count:0,totalMB:0,dimensions:[]},text:{count:0,totalMB:0},richText:{count:0,totalMB:0},luma:{count:0,totalMB:0},animated:{count:0,frames:0,totalMB:0}};for(const n of this.clips){const{asset:o}=n.clipConfiguration,l=o?.type||"unknown",c=["video","image","text","rich-text","luma","audio","html","shape","caption"].includes(l)?l:"unknown",f=n.getSize(),u=this.estimateTextureMB(f.width,f.height),h=this.getAssetLabel(n);t.push({id:n.clipConfiguration.asset?.type||"unknown",type:c,label:h,width:f.width,height:f.height,estimatedMB:u}),c==="video"?(i.videos.count+=1,i.videos.totalMB+=u,i.videos.dimensions.push({width:f.width,height:f.height})):c==="image"?(i.images.count+=1,i.images.totalMB+=u,i.images.dimensions.push({width:f.width,height:f.height})):c==="text"?(i.text.count+=1,i.text.totalMB+=u):c==="rich-text"?(i.richText.count+=1,i.richText.totalMB+=u):c==="luma"&&(i.luma.count+=1,i.luma.totalMB+=u)}for(const n of this.clips)if(n.playerType===Qe.RichText){const o=n.getCacheSize();o>0&&(i.animated.count+=1,i.animated.frames+=o,i.animated.totalMB+=o*this.estimateTextureMB(this.size.width,this.size.height))}const a=n=>{if(n.length===0)return"";if(n.length===1)return`${n[0].width}×${n[0].height}`;const o=Math.round(n.reduce((c,f)=>c+f.width,0)/n.length),l=Math.round(n.reduce((c,f)=>c+f.height,0)/n.length);return`avg ${o}×${l}`},s=i.videos.count+i.images.count+i.text.count+i.richText.count+i.luma.count+i.animated.count,r=i.videos.totalMB+i.images.totalMB+i.text.totalMB+i.richText.totalMB+i.luma.totalMB+i.animated.totalMB;return{textureStats:{videos:{count:i.videos.count,totalMB:i.videos.totalMB,avgDimensions:a(i.videos.dimensions)},images:{count:i.images.count,totalMB:i.images.totalMB,avgDimensions:a(i.images.dimensions)},text:{count:i.text.count,totalMB:i.text.totalMB},richText:{count:i.richText.count,totalMB:i.richText.totalMB},luma:{count:i.luma.count,totalMB:i.luma.totalMB},animated:{count:i.animated.count,frames:i.animated.frames,totalMB:i.animated.totalMB},totalTextures:s,totalMB:r},assetDetails:t,systemStats:{clipCount:this.clips.length,trackCount:this.tracks.length,commandCount:this.commandHistory.length}}}estimateTextureMB(t,i){return t*i*4/(1024*1024)}getAssetLabel(t){const i=t.clipConfiguration.asset;if(!i)return"unknown";const a=i.src;if("src"in i&&typeof a=="string")return(a.split("/").pop()||a).split("?")[0];const s=i.text;return"text"in i&&typeof s=="string"?s.length>20?`${s.substring(0,17)}...`:s:i.type?.toString()||"unknown"}getPlaybackHealth(){let t=0,i=0,a=0;for(const s of this.clips)if(s.isActive()){if(t+=1,s.playerType===Qe.Video){const r=s.getCurrentDrift();i=Math.max(i,r)}if(s.playerType===Qe.Audio){const r=s.getCurrentDrift();a=Math.max(a,r)}}return{activePlayerCount:t,totalPlayerCount:this.clips.length,videoMaxDrift:i,audioMaxDrift:a,syncCorrections:this.syncCorrectionCount}}recordSyncCorrection(){this.syncCorrectionCount+=1}undo(){if(this.commandIndex>=0){const t=this.commandHistory[this.commandIndex];if(t.undo){const i=this.createCommandContext();t.undo(i),this.commandIndex-=1,this.events.emit(ue.EditUndo,{command:t.name}),this.emitEditChanged(`undo:${t.name}`)}}}redo(){if(this.commandIndex<this.commandHistory.length-1){this.commandIndex+=1;const t=this.commandHistory[this.commandIndex],i=this.createCommandContext();t.execute(i),this.events.emit(ue.EditRedo,{command:t.name}),this.emitEditChanged(`redo:${t.name}`)}}setUpdatedClip(t,i=null,a=null){const s=t.layer-1,r=this.tracks[s],n=r?r.indexOf(t):-1,o=new Rd(t,i,a,{trackIndex:s,clipIndex:n});this.executeCommand(o)}updateClip(t,i,a){const s=this.getPlayerClip(t,i);if(!s){console.warn(`Clip not found at track ${t}, index ${i}`);return}const r=structuredClone(s.clipConfiguration),n=structuredClone(s.clipConfiguration),o=Bn(n,a),l=new Rd(s,r,o,{trackIndex:t,clipIndex:i});this.executeCommand(l)}updateClipTiming(t,i,a){if(!this.getPlayerClip(t,i)){console.warn(`Clip not found at track ${t}, index ${i}`);return}const r=new N_(t,i,a);this.executeCommand(r)}updateTextContent(t,i,a){const s=new A_(t,i,a);this.executeCommand(s)}executeEditCommand(t){return this.executeCommand(t)}executeCommand(t){const i=this.createCommandContext(),a=t.execute(i);return this.commandHistory=this.commandHistory.slice(0,this.commandIndex+1),this.commandHistory.push(t),this.commandIndex+=1,a instanceof Promise?a.then(()=>this.emitEditChanged(t.name)):(this.emitEditChanged(t.name),a)}emitEditChanged(t){this.isBatchingEvents||this.events.emit(ue.EditChanged,{source:t,timestamp:Date.now()})}detectMergeFieldBindings(t,i){const a=new Map;if(!i.length)return a;const s=new Map;for(const{find:r,replace:n}of i){const o=typeof n=="string"?n:JSON.stringify(n);s.set(r.toUpperCase(),o)}for(const[r,n]of t.timeline.tracks.entries())for(const[o,l]of n.clips.entries()){const c=this.detectBindingsInObject(l,"",s);c.size>0&&a.set(`${r}-${o}`,c)}return a}detectBindingsInObject(t,i,a){const s=new Map;if(typeof t=="string"){if(/\{\{\s*([A-Z_0-9]+)\s*\}\}/gi.test(t)){const o=t.replace(/\{\{\s*([A-Z_0-9]+)\s*\}\}/gi,(l,c)=>a.get(c.toUpperCase())??l);s.set(i,{placeholder:t,resolvedValue:o})}return s}if(Array.isArray(t)){for(let r=0;r<t.length;r+=1){const n=i?`${i}[${r}]`:`[${r}]`,o=this.detectBindingsInObject(t[r],n,a);for(const[l,c]of o)s.set(l,c)}return s}if(t!==null&&typeof t=="object")for(const[r,n]of Object.entries(t)){const o=i?`${i}.${r}`:r,l=this.detectBindingsInObject(n,o,a);for(const[c,f]of l)s.set(c,f)}return s}hasStructuralChanges(t){if(!this.edit)return!0;const i=this.edit.timeline.tracks,a=t.timeline.tracks;if(i.length!==a.length)return!0;for(let s=0;s<i.length;s+=1){if(i[s].clips.length!==a[s].clips.length)return!0;for(let r=0;r<i[s].clips.length;r+=1){const n=i[s].clips[r]?.asset?.type,o=a[s].clips[r]?.asset?.type;if(n!==o)return!0}}return JSON.stringify(this.edit.merge??[])!==JSON.stringify(t.merge??[])||JSON.stringify(this.edit.timeline.fonts??[])!==JSON.stringify(t.timeline.fonts??[])}applyGranularChanges(t){const i=this.edit?.output,a=t.output;if(a?.size&&(i?.size?.width!==a.size.width||i?.size?.height!==a.size.height)){const o=a.size.width??this.size.width,l=a.size.height??this.size.height;this.setOutputSize(o,l)}a?.fps!==void 0&&i?.fps!==a.fps&&this.setOutputFps(a.fps),a?.format!==void 0&&i?.format!==a.format&&this.setOutputFormat(a.format),a?.destinations&&JSON.stringify(i?.destinations)!==JSON.stringify(a.destinations)&&this.setOutputDestinations(a.destinations);const s=t.timeline?.background;s&&this.backgroundColor!==s&&this.setTimelineBackground(s);const r=this.edit.timeline.tracks,n=t.timeline.tracks;for(let o=0;o<n.length;o+=1){const l=r[o].clips,c=n[o].clips;for(let f=0;f<c.length;f+=1){const u=l[f],h=c[f];JSON.stringify(u)!==JSON.stringify(h)&&this.updateClip(o,f,h)}}}createCommandContext(){return{getClips:()=>this.clips,getTracks:()=>this.tracks,getTrack:t=>t>=0&&t<this.tracks.length?this.tracks[t]:null,getContainer:()=>this.getContainer(),addPlayer:(t,i)=>this.addPlayer(t,i),addPlayerToContainer:(t,i)=>{this.addPlayerToContainer(t,i)},createPlayerFromAssetType:t=>this.createPlayerFromAssetType(t),queueDisposeClip:t=>this.queueDisposeClip(t),disposeClips:()=>this.disposeClips(),clearClipError:(t,i)=>this.clearClipErrorAndShift(t,i),undeleteClip:(t,i)=>{this.clips.push(i);let a=0;if(t>=0&&t<this.tracks.length){const s=this.tracks[t];a=s.length;for(let r=0;r<s.length;r+=1)if(s[r].getStart()>i.getStart()){a=r;break}s.splice(a,0,i)}if(this.document){const s=i.getExportableClip();this.document.addClip(t,s,a)}this.addPlayerToContainer(t,i),i.load().catch(s=>{const r=i.clipConfiguration?.asset?.type??"unknown",n=s instanceof Error?s.message:String(s);this.clipErrors.set(`${t}-${a}`,{error:n,assetType:r}),this.events.emit(ue.ClipLoadFailed,{trackIndex:t,clipIndex:a,error:n,assetType:r})}),this.updateTotalDuration()},setUpdatedClip:t=>{this.updatedClip=t},restoreClipConfiguration:(t,i)=>{const a=structuredClone(i),s=t.clipConfiguration;for(const r of Object.keys(s))delete s[r];if(Object.assign(s,a),t.reconfigureAfterRestore(),t.draw(),this.document){const r=this.findClipIndices(t);if(r){const n=t.getExportableClip();this.document.replaceClip(r.trackIndex,r.clipIndex,n)}}},updateDuration:()=>this.updateTotalDuration(),emitEvent:(t,...i)=>this.events.emit(t,...i),findClipIndices:t=>this.findClipIndices(t),getClipAt:(t,i)=>this.getClipAt(t,i),getSelectedClip:()=>this.selectedClip,setSelectedClip:t=>{this.selectedClip=t},movePlayerToTrackContainer:(t,i,a)=>this.movePlayerToTrackContainer(t,i,a),getEditState:()=>this.getResolvedEdit(),propagateTimingChanges:(t,i)=>this.propagateTimingChanges(t,i),resolveClipAutoLength:t=>this.resolveClipAutoLength(t),untrackEndLengthClip:t=>this.endLengthClips.delete(t),trackEndLengthClip:t=>this.endLengthClips.add(t),getMergeFields:()=>this.mergeFieldService}}queueDisposeClip(t){this.clipsToDispose.push(t)}disposeClips(){if(this.clipsToDispose.length!==0){for(const t of this.clipsToDispose)t.playerType===Qe.Luma&&this.lumaMaskController.cleanupForPlayer(t);for(const t of this.clipsToDispose)this.disposeClip(t);this.clips=this.clips.filter(t=>!this.clipsToDispose.includes(t));for(const t of this.clipsToDispose){const i=t.layer-1;if(i>=0&&i<this.tracks.length){const a=this.tracks[i].indexOf(t);a!==-1&&(this.tracks[i].splice(a,1),this.document&&this.document.removeClip(i,a))}}this.clipsToDispose=[],this.updateTotalDuration(),this.cleanupUnusedFonts()}}cleanupUnusedFonts(){if(!this.document)return;const t=this.document.getFonts();if(t.length===0)return;const i=new Set;for(const a of this.clips){const{asset:s}=a.clipConfiguration;s&&s.type==="rich-text"&&s.font?.family&&i.add(s.font.family)}for(const a of t)if(a.src.includes("fonts.gstatic.com")){const r=this.extractFilenameFromUrl(a.src);r&&!i.has(r)&&this.document.removeFont(a.src)}}extractFilenameFromUrl(t){try{const{pathname:i}=new URL(t),a=i.split("/").pop();return a?a.replace(/\.[^.]+$/,""):null}catch{return null}}disposeClip(t){try{if(this.getContainer().children.includes(t.getContainer())){const i=this.getContainer().getChildIndex(t.getContainer());this.getContainer().removeChildAt(i)}else for(const i of this.getContainer().children)if(i instanceof se.Container&&i.label?.toString().startsWith("shotstack-track-")&&i.children.includes(t.getContainer())){i.removeChild(t.getContainer());break}}catch(i){console.warn(`Attempting to unmount an unmounted clip: ${i}`)}this.unloadClipAssets(t),this.endLengthClips.delete(t),this.cachedTimelineEnd=0,t.dispose()}unloadClipAssets(t){const{asset:i}=t.clipConfiguration;i&&"src"in i&&typeof i.src=="string"&&this.assetLoader.decrementRef(i.src)&&se.Assets.cache.has(i.src)&&se.Assets.unload(i.src)}clearClips(){for(const t of this.clips)this.disposeClip(t);this.clips=[],this.tracks=[],this.clipsToDispose=[],this.clipErrors.clear(),this.updateTotalDuration()}updateTotalDuration(){let t=0;for(const a of this.tracks)for(const s of a)t=Math.max(t,s.getEnd());const i=this.totalDuration;this.totalDuration=t*1e3,i!==this.totalDuration&&this.events.emit(ue.DurationChanged,{duration:this.totalDuration})}async resolveAllTiming(){for(let i=0;i<this.tracks.length;i+=1)for(let a=0;a<this.tracks[i].length;a+=1){const s=this.tracks[i][a],r=s.getTimingIntent();let n;r.start==="auto"?n=$s(i,a,this.tracks):n=r.start;let o;r.length==="auto"?o=await El(s.clipConfiguration.asset):r.length==="end"?o=0:o=r.length,s.setResolvedTiming({start:n,length:o})}const t=er(this.tracks);this.cachedTimelineEnd=t;for(const i of[...this.endLengthClips]){const a=i.getResolvedTiming();i.setResolvedTiming({start:a.start,length:Ln(a.start,t)})}for(const i of this.endLengthClips)i.reconfigureAfterRestore()}propagateTimingChanges(t,i){const a=this.tracks[t];if(!a)return;for(let r=Math.max(0,i);r<a.length;r+=1){const n=a[r];if(n.getTimingIntent().start==="auto"){const o=$s(t,r,this.tracks);n.setResolvedTiming({start:o,length:n.getLength()}),n.reconfigureAfterRestore()}}const s=er(this.tracks);if(s!==this.cachedTimelineEnd){this.cachedTimelineEnd=s;for(const r of[...this.endLengthClips]){const n=Ln(r.getStart(),s),o=r.getLength();Math.abs(n-o)>.001&&(r.setResolvedTiming({start:r.getStart(),length:n}),r.clipConfiguration.length=n,r.reconfigureAfterRestore())}}this.updateTotalDuration(),this.events.emit(ue.TimelineUpdated,{current:this.getResolvedEdit()})}async resolveClipAutoLength(t){const i=t.getTimingIntent();if(i.length!=="auto")return;const a=this.findClipIndices(t);let s=t.getStart();i.start==="auto"&&a&&(s=$s(a.trackIndex,a.clipIndex,this.tracks));const r=await El(t.clipConfiguration.asset);t.setResolvedTiming({start:s,length:r}),t.clipConfiguration.length=r,t.reconfigureAfterRestore(),a&&this.propagateTimingChanges(a.trackIndex,a.clipIndex)}addPlayerToContainer(t,i){const a=1e5-(t+1)*es.ZIndexPadding,s=`shotstack-track-${a}`;let r=this.getContainer().getChildByLabel(s,!1);r||(r=new se.Container({label:s,zIndex:a}),this.getContainer().addChild(r)),r.addChild(i.getContainer())}movePlayerToTrackContainer(t,i,a){if(i===a)return;const s=1e5-(i+1)*es.ZIndexPadding,r=1e5-(a+1)*es.ZIndexPadding,n=`shotstack-track-${s}`,o=`shotstack-track-${r}`,l=this.getContainer().getChildByLabel(n,!1);let c=this.getContainer().getChildByLabel(o,!1);c||(c=new se.Container({label:o,zIndex:r}),this.getContainer().addChild(c)),l&&l.removeChild(t.getContainer()),c.addChild(t.getContainer()),this.getContainer().sortDirty=!0}createPlayerFromAssetType(t){if(!t.asset?.type)throw new Error("Invalid clip configuration: missing asset type");let i;switch(t.asset.type){case"text":{i=new Qa(this,t);break}case"rich-text":{i=new Ja(this,t);break}case"shape":{i=new l_(this,t);break}case"html":{i=new Mh(this,t);break}case"image":{i=new Rh(this,t);break}case"video":{i=new f_(this,t);break}case"audio":{i=new Rl(this,t);break}case"luma":{i=new Dh(this,t);break}case"caption":{i=new rr(this,t);break}case"svg":{i=new _i(this,t);break}default:throw new Error(`Unsupported clip type: ${t.asset.type}`)}return i}async addPlayer(t,i){for(;this.tracks.length<=t;)this.tracks.push([]);if(this.tracks[t].push(i),this.clips.push(i),this.document&&!this.isLoadingEdit){for(;this.document.getTrackCount()<=t;)this.document.addTrack(this.document.getTrackCount());const n=this.tracks[t].length-1,o=i.getExportableClip();this.document.addClip(t,o,n)}i.getTimingIntent().length==="end"&&this.endLengthClips.add(i);const a=1e5-(t+1)*es.ZIndexPadding,s=`shotstack-track-${a}`;let r=this.getContainer().getChildByLabel(s,!1);r||(r=new se.Container({label:s,zIndex:a}),this.getContainer().addChild(r)),r.addChild(i.getContainer()),await i.load(),this.updateTotalDuration()}selectClip(t,i){const a=new x_(t,i);this.executeCommand(a)}clearSelection(){const t=new v_;this.executeCommand(t)}isClipSelected(t,i){if(!this.selectedClip)return!1;const a=this.selectedClip.layer-1,s=this.tracks[a].indexOf(this.selectedClip);return t===a&&i===s}getSelectedClipInfo(){if(!this.selectedClip)return null;const t=this.selectedClip.layer-1,i=this.tracks[t].indexOf(this.selectedClip);return{trackIndex:t,clipIndex:i,player:this.selectedClip}}copyClip(t,i){const a=this.getClipAt(t,i);a&&(this.copiedClip={trackIndex:t,clipConfiguration:structuredClone(a.clipConfiguration)},this.events.emit(ue.ClipCopied,{trackIndex:t,clipIndex:i}))}pasteClip(){if(!this.copiedClip)return;const t=structuredClone(this.copiedClip.clipConfiguration);t.start=ah(this.playbackTime),this.addClip(this.copiedClip.trackIndex,t)}hasCopiedClip(){return this.copiedClip!==null}findClipIndices(t){for(let i=0;i<this.tracks.length;i+=1){const a=this.tracks[i].indexOf(t);if(a!==-1)return{trackIndex:i,clipIndex:a}}return null}getClipAt(t,i){return t>=0&&t<this.tracks.length&&i>=0&&i<this.tracks[t].length?this.tracks[t][i]:null}selectPlayer(t){const i=this.findClipIndices(t);i&&this.selectClip(i.trackIndex,i.clipIndex)}isPlayerSelected(t){return this.isExporting?!1:this.selectedClip===t}getActivePlayersExcept(t){const i=[];for(const a of this.tracks)for(const s of a)s!==t&&s.isActive()&&i.push(s);return i}showAlignmentGuide(t,i,a,s){this.alignmentGuides&&(t==="canvas"?this.alignmentGuides.drawCanvasGuide(i,a):s&&this.alignmentGuides.drawClipGuide(i,a,s.start,s.end))}clearAlignmentGuides(){this.alignmentGuides?.clear()}moveSelectedClip(t,i){const a=this.getSelectedClipInfo();if(!a)return;const{player:s}=a,r=structuredClone(s.clipConfiguration);s.moveBy(t,i),this.setUpdatedClip(s,r,structuredClone(s.clipConfiguration))}setExportMode(t){this.isExporting=t}isInExportMode(){return this.isExporting}setCanvas(t){this.canvas=t}getCanvasZoom(){return this.canvas?.getZoom()??1}setOutputSize(t,i){const a=J1.safeParse({width:t,height:i});if(!a.success)throw new Error(`Invalid size: ${a.error.issues[0]?.message}`);const s={width:t,height:i};this.size=s,this.edit&&(this.edit.output={...this.edit.output,size:s}),this.document?.setSize(s),this.updateViewportMask(),this.canvas?.zoomToFit(),this.background&&(this.background.clear(),this.background.fillStyle={color:this.backgroundColor},this.background.rect(0,0,t,i),this.background.fill()),this.events.emit(ue.OutputResized,s),this.emitEditChanged("output:size")}setOutputFps(t){const i=$1.safeParse(t);if(!i.success)throw new Error(`Invalid fps: ${i.error.issues[0]?.message}`);this.edit&&(this.edit.output={...this.edit.output,fps:i.data}),this.document?.setFps(i.data),this.events.emit(ue.OutputFpsChanged,{fps:t}),this.emitEditChanged("output:fps")}getOutputFps(){return this.edit?.output?.fps??30}setOutputFormat(t){const i=Q1.safeParse(t);if(!i.success)throw new Error(`Invalid format: ${i.error.issues[0]?.message}`);this.edit&&(this.edit.output={...this.edit.output,format:i.data}),this.document?.setFormat(i.data),this.events.emit(ue.OutputFormatChanged,{format:i.data}),this.emitEditChanged("output:format")}getOutputFormat(){return this.edit?.output?.format??"mp4"}setOutputDestinations(t){const i=q1.array().safeParse(t);if(!i.success)throw new Error(`Invalid destinations: ${i.error.message}`);this.edit&&(this.edit.output={...this.edit.output,destinations:i.data}),this.events.emit(ue.OutputDestinationsChanged,{destinations:i.data}),this.emitEditChanged("output:destinations")}getOutputDestinations(){return this.edit?.output?.destinations??[]}getTimelineFonts(){return this.edit?.timeline?.fonts??[]}pruneUnusedFonts(){this.cleanupUnusedFonts()}setTimelineBackground(t){const i=e4.safeParse(t);if(!i.success)throw new Error(`Invalid color: ${i.error.issues[0]?.message}`);this.backgroundColor=i.data,this.edit&&(this.edit.timeline={...this.edit.timeline,background:i.data}),this.document?.setBackground(i.data),this.background&&(this.background.clear(),this.background.fillStyle={color:this.backgroundColor},this.background.rect(0,0,this.size.width,this.size.height),this.background.fill()),this.events.emit(ue.TimelineBackgroundChanged,{color:i.data}),this.emitEditChanged("timeline:background")}getTimelineBackground(){return this.backgroundColor}registerToolbarButton(t){console.warn('[Shotstack] edit.registerToolbarButton() is deprecated. Use ui.registerButton() instead for typed events: ui.registerButton({ id: "text", ... }); ui.on("button:text", handler);');const i=this.toolbarButtons.findIndex(a=>a.id===t.id);i>=0?this.toolbarButtons[i]=t:this.toolbarButtons.push(t),this.events.emit(Na.ToolbarButtonsChanged,{buttons:this.toolbarButtons})}unregisterToolbarButton(t){console.warn("[Shotstack] edit.unregisterToolbarButton() is deprecated. Use ui.unregisterButton() instead.");const i=this.toolbarButtons.findIndex(a=>a.id===t);i>=0&&(this.toolbarButtons.splice(i,1),this.events.emit(Na.ToolbarButtonsChanged,{buttons:this.toolbarButtons}))}getToolbarButtons(){return[...this.toolbarButtons]}getTemplateClip(t,i){const a=this.getPlayerClip(t,i);return a?a.getExportableClip():null}getTemplateClipText(t,i){const a=this.getTemplateClip(t,i);return a?a.asset?.text??null:null}lumaAttachments=new Map;originalAssetTypes=new Map;async attachLumaToClip(t,i,a){const s=this.getClipAt(t,i);if(!s||s.playerType===Qe.Luma)return;this.lumaAttachments.has(s)&&await this.detachLumaFromClip(t,i);const r=s.clipConfiguration,n={asset:{type:"luma",src:a},start:r.start,length:r.length,fit:"crop"};await this.addClip(t,n);const o=this.tracks[t],l=o.find(c=>c.playerType===Qe.Luma&&c.clipConfiguration.start===r.start);if(l){this.lumaAttachments.set(s,l);const c=o.indexOf(l);this.events.emit(ue.LumaAttached,{trackIndex:t,clipIndex:i,lumaSrc:a,lumaClipIndex:c})}}async detachLumaFromClip(t,i){const a=this.getClipAt(t,i);if(!a)return;const s=this.lumaAttachments.get(a);if(!s)return;const r=this.findClipIndices(s);if(r){this.lumaAttachments.delete(a);const n=new xn(r.trackIndex,r.clipIndex);this.executeCommand(n),this.events.emit(ue.LumaDetached,{trackIndex:t,clipIndex:i})}}getClipLuma(t,i){const a=this.getClipAt(t,i);if(!a)return null;const s=this.lumaAttachments.get(a);if(!s)return null;const r=this.findClipIndices(s);if(!r)return null;const n=s.clipConfiguration.asset?.src;return n?{src:n,clipIndex:r.clipIndex}:null}hasLumaMask(t,i){const a=this.getClipAt(t,i);return a?this.lumaAttachments.has(a):!1}registerLumaAttachment(t,i,a,s){const r=this.getClipAt(t,i),n=this.getClipAt(a,s);r&&n&&this.lumaAttachments.set(r,n)}syncAttachedLuma(t,i){const a=this.getClipAt(t,i);if(!a)return;const s=this.lumaAttachments.get(a);if(!s)return;const r=a.clipConfiguration;s.clipConfiguration.start=r.start,s.clipConfiguration.length=r.length,s.setResolvedTiming({start:a.getStart(),length:a.getLength()}),s.reconfigureAfterRestore(),s.draw();const n=this.findClipIndices(s);n&&this.document.updateClip(n.trackIndex,n.clipIndex,{start:r.start,length:r.length})}getAttachedLumaPlayer(t){return this.lumaAttachments.get(t)??null}rebuildLumaAttachments(){this.lumaAttachments.clear();for(const t of this.tracks){const i=t.find(s=>s.playerType===Qe.Luma),a=t.filter(s=>s.playerType!==Qe.Luma);if(i&&a.length>0){const s=a.find(r=>r.clipConfiguration.start===i.clipConfiguration.start&&r.clipConfiguration.length===i.clipConfiguration.length);s?this.lumaAttachments.set(s,i):a.length===1&&this.lumaAttachments.set(a[0],i)}}}transformToLuma(t,i){const a=this.getClipAt(t,i);if(!a?.clipConfiguration?.asset)return;const s=a.clipConfiguration.asset,r=s.type,{src:n}=s;n&&(r==="image"||r==="video")&&this.originalAssetTypes.set(n,r);const o=new Dd(t,i,"luma");this.executeCommand(o)}transformFromLuma(t,i){const a=this.getClipAt(t,i);if(!a?.clipConfiguration?.asset)return;const{src:s}=a.clipConfiguration.asset;if(!s)return;let r=this.originalAssetTypes.get(s);r||(r=this.inferAssetTypeFromUrl(s));const n=new Dd(t,i,r);this.executeCommand(n)}inferAssetTypeFromUrl(t){const i=t.toLowerCase().split("?")[0];return[".mp4",".webm",".mov",".m4v",".avi",".mkv",".ogv",".ogg"].some(s=>i.endsWith(s))?"video":"image"}setupIntentListeners(){this.events.on(Na.CanvasClipClicked,t=>{this.selectPlayer(t.player)}),this.events.on(Na.CanvasBackgroundClicked,()=>{this.clearSelection()})}getTracks(){return this.tracks}getTrackCount(){return this.document.getTrackCount()}getClipCountInTrack(t){return this.document.getClipCountInTrack(t)}}class E_ extends es{get mergeFields(){return this.mergeFieldService}applyMergeField(t,i,a,s,r,n){const o=this.getPlayerClip(t,i);if(!o)return;const l=Aa(o.clipConfiguration,a),c=n??(typeof l=="string"?l:""),f=this.getTemplateClip(t,i),u=f?Aa(f,a):null,h=typeof u=="string"?this.mergeFieldService.extractFieldName(u):null,m=new Ol(o,a,s,h,c,r,t,i);this.executeCommand(m)}removeMergeField(t,i,a,s){const r=this.getPlayerClip(t,i);if(!r)return;const n=this.getTemplateClip(t,i),o=n?Aa(n,a):null,l=typeof o=="string"?this.mergeFieldService.extractFieldName(o):null;if(!l)return;const c=new Ol(r,a,null,l,s,s,t,i);this.executeCommand(c)}getMergeFieldForProperty(t,i,a){const s=this.getTemplateClip(t,i);if(!s)return null;const r=Aa(s,a);return typeof r=="string"?this.mergeFieldService.extractFieldName(r):null}updateMergeFieldValueLive(t,i){const a=this.mergeFieldService.get(t);if(!a)return;this.mergeFieldService.register({...a,defaultValue:i},{silent:!0});const s=this.getTracks();for(let r=0;r<s.length;r+=1)for(let n=0;n<s[r].length;n+=1){const o=s[r][n],l=this.getTemplateClip(r,n);l&&(this.updateMergeFieldInObject(o.clipConfiguration,l,t,i),this.updateMergeFieldBindings(o,t,i))}}redrawMergeFieldClips(t){const i=this.getTracks();for(const a of i)for(const s of a){const r=this.findClipIndices(s);if(r){const n=this.getTemplateClip(r.trackIndex,r.clipIndex);if(n){const o=this.getMergeFieldUsage(n,t);o.used&&(o.isSrcField&&s.reloadAsset(),s.reconfigureAfterRestore(),s.draw())}}}}isSrcMergeField(t){const i=this.getTracks();for(const a of i)for(const s of a){const r=this.findClipIndices(s);if(r){const n=this.getTemplateClip(r.trackIndex,r.clipIndex);if(n){const o=this.getMergeFieldUsage(n,t);if(o.used&&o.isSrcField)return!0}}}return!1}deleteMergeFieldGlobally(t){const i=this.mergeFieldService.get(t);if(!i)return;const a=this.mergeFieldService.createTemplate(t),s=i.defaultValue,r=this.getTracks();for(let n=0;n<r.length;n+=1)for(let o=0;o<r[n].length;o+=1){const l=this.getTemplateClip(n,o);l&&this.restoreMergeFieldInClip(n,o,l,a,s)}this.mergeFieldService.remove(t)}async convertTextToRichText(t,i){const a=this.getClipAt(t,i);if(!a?.clipConfiguration?.asset||a.clipConfiguration.asset.type!=="text")return;const r=this.createCommandContext();await lh(t,i,r),this.emitEditChanged("ConvertTextToRichText"),this.selectClip(t,i)}async convertAllTextToRichText(){const t=this.getTrackCount();let i=0;for(let a=0;a<t;a+=1){const s=this.getClipCountInTrack(a);for(let r=s-1;r>=0;r-=1){const o=this.getClipAt(a,r)?.clipConfiguration?.asset;o?.type==="text"&&o.text&&o.text.trim()!==""&&(await this.convertTextToRichText(a,r),i+=1)}}return i}updateMergeFieldBindings(t,i,a){if(t){for(const[s,r]of t.getMergeFieldBindings())if(this.mergeFieldService.extractFieldName(r.placeholder)===i){const o=this.mergeFieldService.resolve(r.placeholder);t.setMergeFieldBinding(s,{placeholder:r.placeholder,resolvedValue:o})}}}updateMergeFieldInObject(t,i,a,s){if(!(!t||!i||typeof t!="object"||typeof i!="object"))for(const r of Object.keys(i)){const n=i[r],o=t;typeof n=="string"?this.mergeFieldService.extractFieldName(n)===a&&(o[r]=n.replace(new RegExp(`\\{\\{\\s*${a}\\s*\\}\\}`,"gi"),s)):n&&typeof n=="object"&&this.updateMergeFieldInObject(o[r],n,a,s)}}getMergeFieldUsage(t,i,a=""){if(!t||typeof t!="object")return{used:!1,isSrcField:!1};for(const[s,r]of Object.entries(t)){const n=a?`${a}.${s}`:s;if(typeof r=="string"){if(this.mergeFieldService.extractFieldName(r)===i)return{used:!0,isSrcField:n==="asset.src"||n.endsWith(".src")}}else if(typeof r=="object"&&r!==null){const o=this.getMergeFieldUsage(r,i,n);if(o.used)return o}}return{used:!1,isSrcField:!1}}restoreMergeFieldInClip(t,i,a,s,r,n=""){if(!(!a||typeof a!="object"))for(const o of Object.keys(a)){const l=a[o],c=n?`${n}.${o}`:o;if(typeof l=="string"){const f=this.mergeFieldService.extractFieldName(l),u=this.mergeFieldService.extractFieldName(s);if(f&&u&&f===u){const h=l.replace(new RegExp(`\\{\\{\\s*${f}\\s*\\}\\}`,"gi"),r);this.removeMergeField(t,i,c,h)}}else typeof l=="object"&&l!==null&&this.restoreMergeFieldInClip(t,i,l,s,r,c)}}}const An=Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"}));var O_=Yc({"node_modules/harfbuzzjs/hb.js"(e,t){var i=(()=>{var a=typeof document<"u"?document.currentScript?.src:void 0;return async function(s={}){var r,n=s,o=typeof window=="object",l=typeof WorkerGlobalScope<"u",c=typeof process=="object"&&process.versions?.node&&process.type!="renderer",f=(C,oe)=>{throw oe};typeof __filename<"u"?a=__filename:l&&(a=self.location.href);var u="";function h(C){return n.locateFile?n.locateFile(C,u):u+C}var m,b;if(c){var M=s4("fs");u=__dirname+"/",b=C=>{C=P(C)?new URL(C):C;var oe=M.readFileSync(C);return oe},m=async(C,oe=!0)=>{C=P(C)?new URL(C):C;var Re=M.readFileSync(C,oe?void 0:"utf8");return Re},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),f=(C,oe)=>{throw process.exitCode=C,oe}}else if(o||l){try{u=new URL(".",a).href}catch{}l&&(b=C=>{var oe=new XMLHttpRequest;return oe.open("GET",C,!1),oe.responseType="arraybuffer",oe.send(null),new Uint8Array(oe.response)}),m=async C=>{if(P(C))return new Promise((Re,He)=>{var qe=new XMLHttpRequest;qe.open("GET",C,!0),qe.responseType="arraybuffer",qe.onload=()=>{if(qe.status==200||qe.status==0&&qe.response){Re(qe.response);return}He(qe.status)},qe.onerror=He,qe.send(null)});var oe=await fetch(C,{credentials:"same-origin"});if(oe.ok)return oe.arrayBuffer();throw new Error(oe.status+" : "+oe.url)}}console.log.bind(console);var G=console.error.bind(console),L,O=!1,v,P=C=>C.startsWith("file://"),y,K,R,j,ie=!1;function re(){var C=R.buffer;n.HEAP8=new Int8Array(C),n.HEAPU8=j=new Uint8Array(C),n.HEAP32=new Int32Array(C),n.HEAPU32=new Uint32Array(C),n.HEAPF32=new Float32Array(C),new BigInt64Array(C),new BigUint64Array(C)}function le(){if(n.preRun)for(typeof n.preRun=="function"&&(n.preRun=[n.preRun]);n.preRun.length;)ne(n.preRun.shift());Q(D)}function we(){ie=!0,li.__wasm_call_ctors()}function Fe(){if(n.postRun)for(typeof n.postRun=="function"&&(n.postRun=[n.postRun]);n.postRun.length;)z(n.postRun.shift());Q(B)}var ze=0,Oe=null;function Ye(C){ze++,n.monitorRunDependencies?.(ze)}function Ce(C){if(ze--,n.monitorRunDependencies?.(ze),ze==0&&Oe){var oe=Oe;Oe=null,oe()}}function X(C){n.onAbort?.(C),C="Aborted("+C+")",G(C),O=!0,C+=". Build with -sASSERTIONS for more info.";var oe=new WebAssembly.RuntimeError(C);throw K?.(oe),oe}var J;function q(){return h("hb.wasm")}function Ne(C){if(C==J&&L)return new Uint8Array(L);if(b)return b(C);throw"both async and sync fetching of the wasm failed"}async function ke(C){if(!L)try{var oe=await m(C);return new Uint8Array(oe)}catch{}return Ne(C)}async function Le(C,oe){try{var Re=await ke(C),He=await WebAssembly.instantiate(Re,oe);return He}catch(qe){G(`failed to asynchronously prepare wasm: ${qe}`),X(qe)}}async function Ke(C,oe,Re){if(!C&&!P(oe)&&!c)try{var He=fetch(oe,{credentials:"same-origin"}),qe=await WebAssembly.instantiateStreaming(He,Re);return qe}catch(It){G(`wasm streaming compile failed: ${It}`),G("falling back to ArrayBuffer instantiation")}return Le(oe,Re)}function Ue(){return{env:as,wasi_snapshot_preview1:as}}async function De(){function C(It,rs){return li=It.exports,n.wasmExports=li,R=li.memory,n.wasmMemory=R,re(),Fi=li.__indirect_function_table,Pn(li),Ce(),li}Ye();function oe(It){return C(It.instance)}var Re=Ue();if(n.instantiateWasm)return new Promise((It,rs)=>{n.instantiateWasm(Re,(En,Sl)=>{It(C(En))})});J??(J=q());var He=await Ke(L,J,Re),qe=oe(He);return qe}class Vt{constructor(oe){Mt(this,"name","ExitStatus"),this.message=`Program terminated with exit(${oe})`,this.status=oe}}var Q=C=>{for(;C.length>0;)C.shift()(n)},B=[],z=C=>B.push(C),D=[],ne=C=>D.push(C),he=!0,ce=()=>X(""),de=0,Ae=()=>{he=!1,de=0},fe={},te=C=>{if(C instanceof Vt||C=="unwind")return v;f(1,C)},_e=()=>he||de>0,ft=C=>{v=C,_e()||(n.onExit?.(C),O=!0),f(C,new Vt(C))},Ft=(C,oe)=>{v=C,ft(C)},tt=Ft,vt=()=>{if(!_e())try{tt(v)}catch(C){te(C)}},xt=C=>{if(!O)try{C(),vt()}catch(oe){te(oe)}},Dt=()=>performance.now(),Ht=(C,oe)=>{if(fe[C]&&(clearTimeout(fe[C].id),delete fe[C]),!oe)return 0;var Re=setTimeout(()=>{delete fe[C],xt(()=>Ys(C,Dt()))},oe);return fe[C]={id:Re,timeout_ms:oe},0},Pe=()=>2147483648,Cl=(C,oe)=>Math.ceil(C/oe)*oe,ts=C=>{var oe=R.buffer.byteLength,Re=(C-oe+65535)/65536|0;try{return R.grow(Re),re(),1}catch{}},_t=C=>{var oe=j.length;C>>>=0;var Re=Pe();if(C>Re)return!1;for(var He=1;He<=4;He*=2){var qe=oe*(1+.2/He);qe=Math.min(qe,C+100663296);var It=Math.min(Re,Cl(Math.max(C,qe),65536)),rs=ts(It);if(rs)return!0}return!1},js=C=>{const oe=C.length;return[oe%128|128,oe>>7,...C]},ii={i:127,p:127,j:126,f:125,d:124,e:111},oi=C=>js(Array.from(C,oe=>{var Re=ii[oe];return Re})),Kt=(C,oe)=>{var Re=Uint8Array.of(0,97,115,109,1,0,0,0,1,...js([1,96,...oi(oe.slice(1)),...oi(oe[0]==="v"?"":oe[0])]),2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0),He=new WebAssembly.Module(Re),qe=new WebAssembly.Instance(He,{e:{f:C}}),It=qe.exports.f;return It},Fi,xa=C=>Fi.get(C),$i=(C,oe)=>{if(qt)for(var Re=C;Re<C+oe;Re++){var He=xa(Re);He&&qt.set(He,Re)}},qt,_n=C=>(qt||(qt=new WeakMap,$i(0,Fi.length)),qt.get(C)||0),is=[],In=()=>is.length?is.pop():Fi.grow(1),ea=(C,oe)=>Fi.set(C,oe),Tn=(C,oe)=>{var Re=_n(C);if(Re)return Re;var He=In();try{ea(He,C)}catch(It){if(!(It instanceof TypeError))throw It;var qe=Kt(C,oe);ea(He,qe)}return qt.set(C,He),He},Fn=C=>{qt.delete(xa(C)),ea(C,null),is.push(C)};n.noExitRuntime&&(he=n.noExitRuntime),n.print&&n.print,n.printErr&&(G=n.printErr),n.wasmBinary&&(L=n.wasmBinary),n.arguments&&n.arguments,n.thisProgram&&n.thisProgram,n.wasmMemory=R,n.wasmExports=li,n.addFunction=Tn,n.removeFunction=Fn;var Ys;function Pn(C){n._hb_blob_create=C.hb_blob_create,n._hb_blob_destroy=C.hb_blob_destroy,n._hb_blob_get_length=C.hb_blob_get_length,n._hb_blob_get_data=C.hb_blob_get_data,n._hb_buffer_serialize_glyphs=C.hb_buffer_serialize_glyphs,n._hb_buffer_create=C.hb_buffer_create,n._hb_buffer_destroy=C.hb_buffer_destroy,n._hb_buffer_get_content_type=C.hb_buffer_get_content_type,n._hb_buffer_set_direction=C.hb_buffer_set_direction,n._hb_buffer_set_script=C.hb_buffer_set_script,n._hb_buffer_set_language=C.hb_buffer_set_language,n._hb_buffer_set_flags=C.hb_buffer_set_flags,n._hb_buffer_set_cluster_level=C.hb_buffer_set_cluster_level,n._hb_buffer_get_length=C.hb_buffer_get_length,n._hb_buffer_get_glyph_infos=C.hb_buffer_get_glyph_infos,n._hb_buffer_get_glyph_positions=C.hb_buffer_get_glyph_positions,n._hb_glyph_info_get_glyph_flags=C.hb_glyph_info_get_glyph_flags,n._hb_buffer_guess_segment_properties=C.hb_buffer_guess_segment_properties,n._hb_buffer_add_utf8=C.hb_buffer_add_utf8,n._hb_buffer_add_utf16=C.hb_buffer_add_utf16,n._hb_buffer_set_message_func=C.hb_buffer_set_message_func,n._hb_language_from_string=C.hb_language_from_string,n._hb_script_from_string=C.hb_script_from_string,n._hb_version=C.hb_version,n._hb_version_string=C.hb_version_string,n._hb_feature_from_string=C.hb_feature_from_string,n._malloc=C.malloc,n._free=C.free,n._hb_draw_funcs_set_move_to_func=C.hb_draw_funcs_set_move_to_func,n._hb_draw_funcs_set_line_to_func=C.hb_draw_funcs_set_line_to_func,n._hb_draw_funcs_set_quadratic_to_func=C.hb_draw_funcs_set_quadratic_to_func,n._hb_draw_funcs_set_cubic_to_func=C.hb_draw_funcs_set_cubic_to_func,n._hb_draw_funcs_set_close_path_func=C.hb_draw_funcs_set_close_path_func,n._hb_draw_funcs_create=C.hb_draw_funcs_create,n._hb_draw_funcs_destroy=C.hb_draw_funcs_destroy,n._hb_face_create=C.hb_face_create,n._hb_face_destroy=C.hb_face_destroy,n._hb_face_reference_table=C.hb_face_reference_table,n._hb_face_get_upem=C.hb_face_get_upem,n._hb_face_collect_unicodes=C.hb_face_collect_unicodes,n._hb_font_draw_glyph=C.hb_font_draw_glyph,n._hb_font_glyph_to_string=C.hb_font_glyph_to_string,n._hb_font_create=C.hb_font_create,n._hb_font_set_variations=C.hb_font_set_variations,n._hb_font_destroy=C.hb_font_destroy,n._hb_font_set_scale=C.hb_font_set_scale,n._hb_set_create=C.hb_set_create,n._hb_set_destroy=C.hb_set_destroy,n._hb_ot_var_get_axis_infos=C.hb_ot_var_get_axis_infos,n._hb_set_get_population=C.hb_set_get_population,n._hb_set_next_many=C.hb_set_next_many,n._hb_shape=C.hb_shape,Ys=C._emscripten_timeout}var as={_abort_js:ce,_emscripten_runtime_keepalive_clear:Ae,_setitimer_js:Ht,emscripten_resize_heap:_t,proc_exit:ft},li=await De();function ss(){if(ze>0){Oe=ss;return}if(le(),ze>0){Oe=ss;return}function C(){n.calledRun=!0,!O&&(we(),y?.(n),n.onRuntimeInitialized?.(),Fe())}n.setStatus?(n.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>n.setStatus(""),1),C()},1)):C()}function Hs(){if(n.preInit)for(typeof n.preInit=="function"&&(n.preInit=[n.preInit]);n.preInit.length>0;)n.preInit.shift()()}return Hs(),ss(),ie?r=n:r=new Promise((C,oe)=>{y=C,K=oe}),r}})();typeof e=="object"&&typeof t=="object"?(t.exports=i,t.exports.default=i):typeof define=="function"&&define.amd&&define([],()=>i)}});const M_=O_(),R_=Object.freeze(Object.defineProperty({__proto__:null,default:M_},Symbol.toStringTag,{value:"Module"}));var D_=Yc({"node_modules/harfbuzzjs/hbjs.js"(e,t){function i(a){var s=a.wasmExports,r=new TextDecoder("utf8");let n=a.addFunction,o=a.removeFunction;var l=n(function(X){s.free(X)},"vi"),c=2,f=-1,u=2,h=0,m=1,b=2;function M(X){return(X.charCodeAt(0)&255)<<24|(X.charCodeAt(1)&255)<<16|(X.charCodeAt(2)&255)<<8|(X.charCodeAt(3)&255)<<0}var G=M("JSON"),L=4;function O(X){return[String.fromCharCode(X>>24&255),String.fromCharCode(X>>16&255),String.fromCharCode(X>>8&255),String.fromCharCode(X>>0&255)].join("")}function v(X){return X=="BOT"?1:X=="EOT"?2:X=="PRESERVE_DEFAULT_IGNORABLES"?4:X=="REMOVE_DEFAULT_IGNORABLES"?8:X=="DO_NOT_INSERT_DOTTED_CIRCLE"?16:X=="PRODUCE_UNSAFE_TO_CONCAT"?64:0}function P(X){var J=s.malloc(X.byteLength);a.HEAPU8.set(new Uint8Array(X),J);var q=s.hb_blob_create(J,X.byteLength,c,J,l);return{ptr:q,destroy:function(){s.hb_blob_destroy(q)}}}function y(X){const J=s.hb_set_get_population(X),q=s.malloc(J<<2),Ne=q>>2,ke=a.HEAPU32.subarray(Ne,Ne+J);return a.HEAPU32.set(ke,Ne),s.hb_set_next_many(X,f,q,J),ke}function K(X,J){var q=s.hb_face_create(X.ptr,J);const Ne=s.hb_face_get_upem(q);return{ptr:q,upem:Ne,reference_table:function(ke){var Le=s.hb_face_reference_table(q,M(ke)),Ke=s.hb_blob_get_length(Le);if(Ke){var Ue=s.hb_blob_get_data(Le,null),De=a.HEAPU8.subarray(Ue,Ue+Ke);return De}},getAxisInfos:function(){var ke=s.malloc(2048),Le=s.malloc(4);a.HEAPU32[Le/4]=64,s.hb_ot_var_get_axis_infos(q,0,Le,ke);var Ke={};return Array.from({length:a.HEAPU32[Le/4]}).forEach(function(Ue,De){Ke[O(a.HEAPU32[ke/4+De*8+1])]={min:a.HEAPF32[ke/4+De*8+4],default:a.HEAPF32[ke/4+De*8+5],max:a.HEAPF32[ke/4+De*8+6]}}),s.free(Le),s.free(ke),Ke},collectUnicodes:function(){var ke=s.hb_set_create();s.hb_face_collect_unicodes(q,ke);var Le=y(ke);return s.hb_set_destroy(ke),Le},destroy:function(){s.hb_face_destroy(q)}}}var R="",j=256,ie=s.malloc(j);function re(X){var J=s.hb_font_create(X.ptr),q=null,Ne=null,ke=null,Le=null,Ke=null,Ue=null;function De(Q){if(!q){var B=function(ce,de,Ae,fe,te,_e){R+=`M${fe},${te}`},z=function(ce,de,Ae,fe,te,_e){R+=`L${fe},${te}`},D=function(ce,de,Ae,fe,te,_e,ft,Ft,tt,vt){R+=`C${fe},${te} ${_e},${ft} ${Ft},${tt}`},ne=function(ce,de,Ae,fe,te,_e,ft,Ft){R+=`Q${fe},${te} ${_e},${ft}`},he=function(ce,de,Ae,fe){R+="Z"};Ne=n(B,"viiiffi"),ke=n(z,"viiiffi"),Le=n(D,"viiiffffffi"),Ke=n(ne,"viiiffffi"),Ue=n(he,"viiii"),q=s.hb_draw_funcs_create(),s.hb_draw_funcs_set_move_to_func(q,Ne,0,0),s.hb_draw_funcs_set_line_to_func(q,ke,0,0),s.hb_draw_funcs_set_cubic_to_func(q,Le,0,0),s.hb_draw_funcs_set_quadratic_to_func(q,Ke,0,0),s.hb_draw_funcs_set_close_path_func(q,Ue,0,0)}return R="",s.hb_font_draw_glyph(J,Q,q,0),R}function Vt(Q){s.hb_font_glyph_to_string(J,Q,ie,j);var B=a.HEAPU8.subarray(ie,ie+j);return r.decode(B.slice(0,B.indexOf(0)))}return{ptr:J,glyphName:Vt,glyphToPath:De,glyphToJson:function(Q){var B=De(Q);return B.replace(/([MLQCZ])/g,"|$1 ").split("|").filter(function(z){return z.length}).map(function(z){var D=z.split(/[ ,]/g);return{type:D[0],values:D.slice(1).filter(function(ne){return ne.length}).map(function(ne){return+ne})}})},setScale:function(Q,B){s.hb_font_set_scale(J,Q,B)},setVariations:function(Q){var B=Object.entries(Q),z=s.malloc(8*B.length);B.forEach(function(D,ne){a.HEAPU32[z/4+ne*2+0]=M(D[0]),a.HEAPF32[z/4+ne*2+1]=D[1]}),s.hb_font_set_variations(J,z,B.length),s.free(z)},destroy:function(){s.hb_font_destroy(J),q&&(s.hb_draw_funcs_destroy(q),q=null,o(Ne),o(ke),o(Le),o(Ke),o(Ue))}}}function le(X){var J=s.malloc(X.length+1);for(let q=0;q<X.length;++q){const Ne=X.charCodeAt(q);if(Ne>127)throw new Error("Expected ASCII text");a.HEAPU8[J+q]=Ne}return a.HEAPU8[J+X.length]=0,{ptr:J,length:X.length,free:function(){s.free(J)}}}function we(X){const J=s.malloc(X.length*2),q=new Uint16Array(a.wasmMemory.buffer,J,X.length);for(let Ne=0;Ne<q.length;++Ne)q[Ne]=X.charCodeAt(Ne);return{ptr:J,length:q.length,free:function(){s.free(J)}}}function Fe(){var X=s.hb_buffer_create();return{ptr:X,addText:function(J){const q=we(J);s.hb_buffer_add_utf16(X,q.ptr,q.length,0,q.length),q.free()},guessSegmentProperties:function(){return s.hb_buffer_guess_segment_properties(X)},setDirection:function(J){s.hb_buffer_set_direction(X,{ltr:4,rtl:5,ttb:6,btt:7}[J]||0)},setFlags:function(J){var q=0;J.forEach(function(Ne){q|=v(Ne)}),s.hb_buffer_set_flags(X,q)},setLanguage:function(J){var q=le(J);s.hb_buffer_set_language(X,s.hb_language_from_string(q.ptr,-1)),q.free()},setScript:function(J){var q=le(J);s.hb_buffer_set_script(X,s.hb_script_from_string(q.ptr,-1)),q.free()},setClusterLevel:function(J){s.hb_buffer_set_cluster_level(X,J)},json:function(){for(var J=s.hb_buffer_get_length(X),q=[],Ne=s.hb_buffer_get_glyph_infos(X,0),ke=Ne/4,Le=s.hb_buffer_get_glyph_positions(X,0)/4,Ke=a.HEAPU32.subarray(ke,ke+5*J),Ue=a.HEAP32.subarray(Le,Le+5*J),De=0;De<J;++De)q.push({g:Ke[De*5+0],cl:Ke[De*5+2],ax:Ue[De*5+0],ay:Ue[De*5+1],dx:Ue[De*5+2],dy:Ue[De*5+3],flags:s.hb_glyph_info_get_glyph_flags(Ne+De*20)});return q},destroy:function(){s.hb_buffer_destroy(X)}}}function ze(X,J,q){var Ne=0,ke=0;q&&(q=q.split(","),Ne=s.malloc(16*q.length),q.forEach(function(Le,Ke){var Ue=le(Le);s.hb_feature_from_string(Ue.ptr,-1,Ne+ke*16)&&ke++,Ue.free()})),s.hb_shape(X.ptr,J.ptr,Ne,ke),Ne&&s.free(Ne)}function Oe(X,J,q,Ne,ke){var Le=[],Ke=h,Ue=!1,De=1024*1024,Vt=s.malloc(De),Q=function(z,D,ne,he){var ce=r.decode(a.HEAPU8.subarray(ne,a.HEAPU8.indexOf(0,ne)));return ce.startsWith("start table GSUB")?Ke=m:ce.startsWith("start table GPOS")&&(Ke=b),Ke!=ke&&(Ue=!1),ke!=h&&Ke==ke&&ce.startsWith("end lookup "+Ne)&&(Ue=!0),Ue?0:(s.hb_buffer_serialize_glyphs(z,0,s.hb_buffer_get_length(z),Vt,De,0,D,G,L),Le.push({m:ce,t:JSON.parse(r.decode(a.HEAPU8.subarray(Vt,a.HEAPU8.indexOf(0,Vt)))),glyphs:s.hb_buffer_get_content_type(z)==u}),1)},B=n(Q,"iiiii");return s.hb_buffer_set_message_func(J.ptr,B,0,0),ze(X,J,q),s.free(Vt),o(B),Le}function Ye(){var X=s.malloc(12);s.hb_version(X,X+4,X+8);var J={major:a.HEAPU32[X/4],minor:a.HEAPU32[(X+4)/4],micro:a.HEAPU32[(X+8)/4]};return s.free(X),J}function Ce(){var X=s.hb_version_string(),J=r.decode(a.HEAPU8.subarray(X,a.HEAPU8.indexOf(0,X)));return J}return{createBlob:P,createFace:K,createFont:re,createBuffer:Fe,shape:ze,shapeWithTrace:Oe,version:Ye,version_string:Ce}}try{t.exports=i}catch{}}});const z_=D_(),L_=Object.freeze(Object.defineProperty({__proto__:null,default:z_},Symbol.toStringTag,{value:"Module"}));var me,Ii=new Array(128).fill(void 0);Ii.push(void 0,null,!0,!1);var Us=Ii.length;function Yt(e){Us===Ii.length&&Ii.push(Ii.length+1);const t=Us;return Us=Ii[t],Ii[t]=e,t}function Ut(e){return Ii[e]}function B_(e){e<132||(Ii[e]=Us,Us=e)}function Ti(e){const t=Ut(e);return B_(e),t}var Zs=0,Gs=null;function Cn(){return(Gs===null||Gs.byteLength===0)&&(Gs=new Uint8Array(me.memory.buffer)),Gs}var Sn=typeof TextEncoder<"u"?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},U_=typeof Sn.encodeInto=="function"?function(e,t){return Sn.encodeInto(e,t)}:function(e,t){const i=Sn.encode(e);return t.set(i),{read:e.length,written:i.length}};function xl(e,t,i){if(i===void 0){const o=Sn.encode(e),l=t(o.length,1)>>>0;return Cn().subarray(l,l+o.length).set(o),Zs=o.length,l}let a=e.length,s=t(a,1)>>>0;const r=Cn();let n=0;for(;n<a;n++){const o=e.charCodeAt(n);if(o>127)break;r[s+n]=o}if(n!==a){n!==0&&(e=e.slice(n)),s=i(s,a,a=n+e.length*3,1)>>>0;const o=Cn().subarray(s+n,s+a),l=U_(e,o);n+=l.written,s=i(s,a,n,1)>>>0}return Zs=n,s}function kl(e){return e==null}var Ws=null;function Tt(){return(Ws===null||Ws.byteLength===0)&&(Ws=new Int32Array(me.memory.buffer)),Ws}var Ld=typeof TextDecoder<"u"?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};typeof TextDecoder<"u"&&Ld.decode();function Vn(e,t){return e=e>>>0,Ld.decode(Cn().subarray(e,e+t))}function Z_(e,t){if(!(e instanceof t))throw new Error(`expected instance of ${t.name}`);return e.ptr}function G_(e,t){try{return e.apply(this,t)}catch(i){me.__wbindgen_exn_store(Yt(i))}}var Bd=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>me.__wbg_bbox_free(e>>>0)),Nl=class Xd{static __wrap(t){t=t>>>0;const i=Object.create(Xd.prototype);return i.__wbg_ptr=t,Bd.register(i,i.__wbg_ptr,i),i}__destroy_into_raw(){const t=this.__wbg_ptr;return this.__wbg_ptr=0,Bd.unregister(this),t}free(){const t=this.__destroy_into_raw();me.__wbg_bbox_free(t)}get x(){return me.__wbg_get_bbox_x(this.__wbg_ptr)}set x(t){me.__wbg_set_bbox_x(this.__wbg_ptr,t)}get y(){return me.__wbg_get_bbox_y(this.__wbg_ptr)}set y(t){me.__wbg_set_bbox_y(this.__wbg_ptr,t)}get width(){return me.__wbg_get_bbox_width(this.__wbg_ptr)}set width(t){me.__wbg_set_bbox_width(this.__wbg_ptr,t)}get height(){return me.__wbg_get_bbox_height(this.__wbg_ptr)}set height(t){me.__wbg_set_bbox_height(this.__wbg_ptr,t)}},Ud=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>me.__wbg_renderedimage_free(e>>>0)),W_=class Kd{static __wrap(t){t=t>>>0;const i=Object.create(Kd.prototype);return i.__wbg_ptr=t,Ud.register(i,i.__wbg_ptr,i),i}__destroy_into_raw(){const t=this.__wbg_ptr;return this.__wbg_ptr=0,Ud.unregister(this),t}free(){const t=this.__destroy_into_raw();me.__wbg_renderedimage_free(t)}get width(){return me.renderedimage_width(this.__wbg_ptr)>>>0}get height(){return me.renderedimage_height(this.__wbg_ptr)>>>0}asPng(){try{const s=me.__wbindgen_add_to_stack_pointer(-16);me.renderedimage_asPng(s,this.__wbg_ptr);var t=Tt()[s/4+0],i=Tt()[s/4+1],a=Tt()[s/4+2];if(a)throw Ti(i);return Ti(t)}finally{me.__wbindgen_add_to_stack_pointer(16)}}get pixels(){const t=me.renderedimage_pixels(this.__wbg_ptr);return Ti(t)}},j_=typeof FinalizationRegistry>"u"?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>me.__wbg_resvg_free(e>>>0)),Y_=class{__destroy_into_raw(){const e=this.__wbg_ptr;return this.__wbg_ptr=0,j_.unregister(this),e}free(){const e=this.__destroy_into_raw();me.__wbg_resvg_free(e)}constructor(e,t,i){try{const l=me.__wbindgen_add_to_stack_pointer(-16);var a=kl(t)?0:xl(t,me.__wbindgen_malloc,me.__wbindgen_realloc),s=Zs;me.resvg_new(l,Yt(e),a,s,kl(i)?0:Yt(i));var r=Tt()[l/4+0],n=Tt()[l/4+1],o=Tt()[l/4+2];if(o)throw Ti(n);return this.__wbg_ptr=r>>>0,this}finally{me.__wbindgen_add_to_stack_pointer(16)}}get width(){return me.resvg_width(this.__wbg_ptr)}get height(){return me.resvg_height(this.__wbg_ptr)}render(){try{const a=me.__wbindgen_add_to_stack_pointer(-16);me.resvg_render(a,this.__wbg_ptr);var e=Tt()[a/4+0],t=Tt()[a/4+1],i=Tt()[a/4+2];if(i)throw Ti(t);return W_.__wrap(e)}finally{me.__wbindgen_add_to_stack_pointer(16)}}toString(){let e,t;try{const s=me.__wbindgen_add_to_stack_pointer(-16);me.resvg_toString(s,this.__wbg_ptr);var i=Tt()[s/4+0],a=Tt()[s/4+1];return e=i,t=a,Vn(i,a)}finally{me.__wbindgen_add_to_stack_pointer(16),me.__wbindgen_free(e,t,1)}}innerBBox(){const e=me.resvg_innerBBox(this.__wbg_ptr);return e===0?void 0:Nl.__wrap(e)}getBBox(){const e=me.resvg_getBBox(this.__wbg_ptr);return e===0?void 0:Nl.__wrap(e)}cropByBBox(e){Z_(e,Nl),me.resvg_cropByBBox(this.__wbg_ptr,e.__wbg_ptr)}imagesToResolve(){try{const a=me.__wbindgen_add_to_stack_pointer(-16);me.resvg_imagesToResolve(a,this.__wbg_ptr);var e=Tt()[a/4+0],t=Tt()[a/4+1],i=Tt()[a/4+2];if(i)throw Ti(t);return Ti(e)}finally{me.__wbindgen_add_to_stack_pointer(16)}}resolveImage(e,t){try{const s=me.__wbindgen_add_to_stack_pointer(-16),r=xl(e,me.__wbindgen_malloc,me.__wbindgen_realloc),n=Zs;me.resvg_resolveImage(s,this.__wbg_ptr,r,n,Yt(t));var i=Tt()[s/4+0],a=Tt()[s/4+1];if(a)throw Ti(i)}finally{me.__wbindgen_add_to_stack_pointer(16)}}};async function H_(e,t){if(typeof Response=="function"&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming=="function")try{return await WebAssembly.instantiateStreaming(e,t)}catch(a){if(e.headers.get("Content-Type")!="application/wasm")console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",a);else throw a}const i=await e.arrayBuffer();return await WebAssembly.instantiate(i,t)}else{const i=await WebAssembly.instantiate(e,t);return i instanceof WebAssembly.Instance?{instance:i,module:e}:i}}function X_(){const e={};return e.wbg={},e.wbg.__wbg_new_28c511d9baebfa89=function(t,i){const a=new Error(Vn(t,i));return Yt(a)},e.wbg.__wbindgen_memory=function(){const t=me.memory;return Yt(t)},e.wbg.__wbg_buffer_12d079cc21e14bdb=function(t){const i=Ut(t).buffer;return Yt(i)},e.wbg.__wbg_newwithbyteoffsetandlength_aa4a17c33a06e5cb=function(t,i,a){const s=new Uint8Array(Ut(t),i>>>0,a>>>0);return Yt(s)},e.wbg.__wbindgen_object_drop_ref=function(t){Ti(t)},e.wbg.__wbg_new_63b92bc8671ed464=function(t){const i=new Uint8Array(Ut(t));return Yt(i)},e.wbg.__wbg_values_839f3396d5aac002=function(t){const i=Ut(t).values();return Yt(i)},e.wbg.__wbg_next_196c84450b364254=function(){return G_(function(t){const i=Ut(t).next();return Yt(i)},arguments)},e.wbg.__wbg_done_298b57d23c0fc80c=function(t){return Ut(t).done},e.wbg.__wbg_value_d93c65011f51a456=function(t){const i=Ut(t).value;return Yt(i)},e.wbg.__wbg_instanceof_Uint8Array_2b3bbecd033d19f6=function(t){let i;try{i=Ut(t)instanceof Uint8Array}catch{i=!1}return i},e.wbg.__wbindgen_string_get=function(t,i){const a=Ut(i),s=typeof a=="string"?a:void 0;var r=kl(s)?0:xl(s,me.__wbindgen_malloc,me.__wbindgen_realloc),n=Zs;Tt()[t/4+1]=n,Tt()[t/4+0]=r},e.wbg.__wbg_new_16b304a2cfa7ff4a=function(){const t=new Array;return Yt(t)},e.wbg.__wbindgen_string_new=function(t,i){const a=Vn(t,i);return Yt(a)},e.wbg.__wbg_push_a5b05aedc7234f9f=function(t,i){return Ut(t).push(Ut(i))},e.wbg.__wbg_length_c20a40f15020d68a=function(t){return Ut(t).length},e.wbg.__wbg_set_a47bac70306a19a7=function(t,i,a){Ut(t).set(Ut(i),a>>>0)},e.wbg.__wbindgen_throw=function(t,i){throw new Error(Vn(t,i))},e}function K_(e,t){return me=e.exports,Zd.__wbindgen_wasm_module=t,Ws=null,Gs=null,me}async function Zd(e){if(me!==void 0)return me;typeof e>"u"&&(e=new URL("index_bg.wasm",void 0));const t=X_();(typeof e=="string"||typeof Request=="function"&&e instanceof Request||typeof URL=="function"&&e instanceof URL)&&(e=fetch(e));const{instance:i,module:a}=await H_(await e,t);return K_(i,a)}var q_=Zd,Al=!1,J_=async e=>{if(Al)throw new Error("Already initialized. The `initWasm()` function can be used only once.");await q_(await e),Al=!0},Q_=class extends Y_{constructor(e,t){if(!Al)throw new Error("Wasm has not been initialized. Call `initWasm()` function.");const i=t?.font;if(i&&$_(i)){const a={...t,font:{...i,fontBuffers:void 0}};super(e,JSON.stringify(a),i.fontBuffers)}else super(e,JSON.stringify(t))}};function $_(e){return Object.prototype.hasOwnProperty.call(e,"fontBuffers")}const Gd=Object.freeze(Object.defineProperty({__proto__:null,Resvg:Q_,initWasm:J_},Symbol.toStringTag,{value:"Module"}));xi.ShotstackEdit=E_,Object.defineProperty(xi,Symbol.toStringTag,{value:"Module"})});
|