{"version":3,"file":"static/js/main.33993e60.js","mappings":"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,EAeAqN,EAvBAmgF,EAAS9oF,KAAKkhC,MACd7lC,EAAS,IAAIf,MAAM,IACnByU,EAAU,IAAIzU,MAAM,IACpBgT,EAAU,IAAIhT,MAAM,IACpBwE,EAAW,IAAIxE,MAAM,IAMrB6D,EAAU,IAAI7D,MAAM,OACpByC,EAAW,IAAIzC,MAAM,OACrBL,EAAkB,IAAIK,MAAM,IAC5BC,EAAK,IAAID,MAAM,IACf2C,EAAU,GACVy9B,EAAU,EACVh9B,EAAU,EAEVxD,EAAM,IAAII,MAAM,IAChB0C,EAAM,IAAI1C,MAAM,IAChBuE,EAAM,IAAIvE,MAAM,IAChB40E,EAAM,IAAI50E,MAAM,KAChBy4B,EAAgB,IAAIz4B,MAAM,MAG1BkT,EAAS,CACX,EACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAGE5O,EAA2B,CAC7B,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAEE85E,EAA0B,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,IAC7Dx7E,EAA2B,CAC7B,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,KAEEpB,EAA0B,CAC5B,EACA,EACA,EACA,EACA,EACA,GACA,EACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,EACA,GACA,IACA,GACA,GACA,IACA,IACA,IACA,EACA,GACA,GACA,IACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,IACA,IACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAGEgpD,EAA6B,CAC/B,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAEEqiB,EAA4B,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,IAC/Dz5D,EAA6B,CAC/B,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,KAEE6jD,EAA4B,CAC9B,EACA,EACA,EACA,EACA,GACA,EACA,EACA,GACA,GACA,EACA,GACA,GACA,GACA,EACA,GACA,IACA,GACA,GACA,GACA,IACA,EACA,GACA,GACA,IACA,IACA,IACA,IACA,EACA,GACA,GACA,GACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,GACA,IACA,GACA,IACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,cAuKO6+B,EAAkBh1F,EAASoB,GAAA,QAC9Bib,EAAY,EACZlc,EAAe,EACfD,EAAK,IAAIhB,MACJqO,EAAI,EAAGA,GAAK,GAAIA,IAAK,KACvB,IAAImgF,EAAI,EAAGA,GAAK1tF,EAAQuN,GAAImgF,IAC/BxtF,EAAGkB,EAAUjB,IAAiB,GAC9BD,EAAGkB,EAAUjB,IAAe,GAAKkc,EACjCnc,EAAGkB,EAAUjB,IAAe,GAAKoN,EACjCpN,IACAkc,IAEFA,GAAa,SAERnc,CAAA,UA2DA6zE,EAAU/zE,GAAA,QACboB,EAAQpB,EAAG,GACXqc,EAASrc,EAAG,GAAK,EACdqc,GAAU,GACXjb,EAAS,GAAKib,IAChBijB,GAAW,GAAKh9B,GAElB+Z,MACA/Z,EACc,IACG,KAAXg9B,GACFu0B,EAAU,KACVA,EAAU,IAEVA,EAAUv0B,GAEZh9B,EAAU,EACVg9B,EAAU,YAKPu0B,EAAU7zD,GAEjB6B,EAAQY,KAAKzC,EAAA,UAGNozE,EAAUpzE,GACjB6zD,EAAW7zD,GAAS,EAAK,KACzB6zD,EAAkB,IAAR7zD,EAAA,UAyOHqS,EAAUrS,EAAKoB,EAAOib,EAAIlc,EAAMD,GAAA,QAGnCqN,EA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0zI,GAAK,GACP0B,GAAK,CACH,EACA,EACA,EACA,EACA,GACA,GACA,GACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,OACA,OACA,OACA,QACA,QACA,QACA,QACA,UAEFnD,GAAK,GACLsE,GAAK,GACLS,GAAK,EACLC,GAAK,CACH,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EAC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,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,EACA,IACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,GACA,GACA,IACA,EACA,IACA,IACA,GACA,GACA,GACA,GACA,IACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,IACA,GACA,GACA,EACA,IACA,IACA,GACA,GACA,GACA,GACA,GACA,IACA,GACA,IACA,IACA,GACA,GACA,GACA,IACA,IACA,GACA,IACA,GACA,IACA,IACA,GACA,KAEFc,GAAK,CACH,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MAEF5xI,GAAK,EACL1B,GAAK,CACH,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAEFuB,GAAK,CACH,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KAEFN,GAAK,KACLP,GAAK,CACH,CAAC,IAAK,IAAK,IAAK,GAChB,CAAC,IAAK,IAAK,IAAK,IAAK,GACrB,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,GAC1B,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAE1DhB,GAAK,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,GAAI,IACxD0B,GAAK,EAAE,EAAG,GAAI,EAAG,GAAI,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,GAAI,GAAI,EAAG,GAAI,EAAG,GAAI,GAAI,GACnEK,GAAK,CACH,CACE,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAA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IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,OAGvD,CACE,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,OAGvD,CACE,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,OAGvD,CACE,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,MAErD,CACE,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACnD,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK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,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,MACA,IACA,MACA,MACA,IACA,MACA,MACA,IACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,KACA,MACA,MACA,IACA,MACA,MACA,MACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,MACA,MACA,MACA,MACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,MACA,MACA,MACA,MACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,KACA,IACA,IACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,IACA,IACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,KACA,IACA,IACA,IACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA,IACA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","sources":["../node_modules/html2canvas/node_modules/tslib/tslib.es6.js","../node_modules/html2canvas/node_modules/src/Util.ts","../node_modules/src/css/layout/bounds.ts","../node_modules/html2canvas/node_modules/css-line-break/node_modules/src/Util.ts","../node_modules/html2canvas/node_modules/css-line-break/node_modules/utrie/node_modules/src/index.ts","../node_modules/html2canvas/node_modules/css-line-break/node_modules/src/Trie.ts","../node_modules/html2canvas/node_modules/src/linebreak-trie.ts","../node_modules/html2canvas/node_modules/src/LineBreak.ts","../node_modules/src/css/syntax/tokenizer.ts","../node_modules/src/css/syntax/parser.ts","../node_modules/src/css/types/length.ts","../node_modules/src/css/types/length-percentage.ts","../node_modules/src/css/types/angle.ts","../node_modules/src/css/types/color.ts","../node_modules/src/css/property-descriptors/background-clip.ts","../node_modules/src/css/property-descriptors/background-color.ts","../node_modules/src/css/types/functions/gradient.ts","../node_modules/src/css/types/functions/-prefix-linear-gradient.ts","../node_modules/src/css/types/functions/radial-gradient.ts","../node_modules/src/css/types/functions/-prefix-radial-gradient.ts","../node_modules/src/css/types/image.ts","../node_modules/src/css/property-descriptors/background-size.ts","../node_modules/src/css/types/functions/linear-gradient.ts","../node_modules/src/css/types/functions/-webkit-gradient.ts","../node_modules/src/css/property-descriptors/background-image.ts","../node_modules/src/css/property-descriptors/background-origin.ts","../node_modules/src/css/property-descriptors/background-position.ts","../node_modules/src/css/property-descriptors/background-repeat.ts","../node_modules/src/css/property-descriptors/line-break.ts","../node_modules/src/css/property-descriptors/border-color.ts","../node_modules/src/css/property-descriptors/border-radius.ts","../node_modules/src/css/property-descriptors/border-style.ts","../node_modules/src/css/property-descriptors/border-width.ts","../node_modules/src/css/property-descriptors/color.ts","../node_modules/src/css/property-descriptors/direction.ts","../node_modules/src/css/property-descriptors/display.ts","../node_modules/src/css/property-descriptors/float.ts","../node_modules/src/css/property-descriptors/letter-spacing.ts","../node_modules/src/css/property-descriptors/word-break.ts","../node_modules/src/css/property-descriptors/line-height.ts","../node_modules/src/css/property-descriptors/list-style-image.ts","../node_modules/src/css/property-descriptors/list-style-position.ts","../node_modules/src/css/property-descriptors/list-style-type.ts","../node_modules/src/css/property-descriptors/margin.ts","../node_modules/src/css/property-descriptors/overflow.ts","../node_modules/src/css/property-descriptors/overflow-wrap.ts","../node_modules/src/css/property-descriptors/padding.ts","../node_modules/src/css/property-descriptors/text-align.ts","../node_modules/src/css/property-descriptors/position.ts","../node_modules/src/css/property-descriptors/text-shadow.ts","../node_modules/src/css/property-descriptors/text-transform.ts","../node_modules/src/css/property-descriptors/transform.ts","../node_modules/src/css/property-descriptors/transform-origin.ts","../node_modules/src/css/property-descriptors/visibility.ts","../node_modules/html2canvas/node_modules/text-segmentation/node_modules/src/Util.ts","../node_modules/src/css/property-descriptors/z-index.ts","../node_modules/src/css/types/time.ts","../node_modules/src/css/property-descriptors/opacity.ts","../node_modules/src/css/property-descriptors/text-decoration-color.ts","../node_modules/src/css/property-descriptors/text-decoration-line.ts","../node_modules/src/css/property-descriptors/font-family.ts","../node_modules/src/css/property-descriptors/font-size.ts","../node_modules/src/css/property-descriptors/font-weight.ts","../node_modules/src/css/property-descriptors/font-variant.ts","../node_modules/src/css/property-descriptors/font-style.ts","../node_modules/src/core/bitwise.ts","../node_modules/src/css/property-descriptors/content.ts","../node_modules/src/css/property-descriptors/counter-increment.ts","../node_modules/src/css/property-descriptors/counter-reset.ts","../node_modules/src/css/property-descriptors/duration.ts","../node_modules/src/css/property-descriptors/quotes.ts","../node_modules/src/css/property-descriptors/box-shadow.ts","../node_modules/src/css/property-descriptors/paint-order.ts","../node_modules/src/css/property-descriptors/webkit-text-stroke-color.ts","../node_modules/src/css/property-descriptors/webkit-text-stroke-width.ts","../node_modules/src/css/index.ts","../node_modules/src/core/debugger.ts","../node_modules/src/dom/element-container.ts","../node_modules/html2canvas/node_modules/src/grapheme-break-trie.ts","../node_modules/html2canvas/node_modules/text-segmentation/node_modules/utrie/node_modules/src/index.ts","../node_modules/html2canvas/node_modules/text-segmentation/node_modules/src/Trie.ts","../node_modules/html2canvas/node_modules/src/GraphemeBreak.ts","../node_modules/src/dom/document-cloner.ts","../node_modules/src/core/features.ts","../node_modules/src/css/layout/text.ts","../node_modules/src/dom/text-container.ts","../node_modules/src/dom/replaced-elements/image-element-container.ts","../node_modules/src/dom/replaced-elements/canvas-element-container.ts","../node_modules/src/dom/replaced-elements/svg-element-container.ts","../node_modules/src/dom/elements/li-element-container.ts","../node_modules/src/dom/elements/ol-element-container.ts","../node_modules/src/dom/replaced-elements/input-element-container.ts","../node_modules/src/dom/elements/select-element-container.ts","../node_modules/src/dom/elements/textarea-element-container.ts","../node_modules/src/dom/replaced-elements/iframe-element-container.ts","../node_modules/src/dom/node-parser.ts","../node_modules/src/css/types/functions/counter.ts","../node_modules/src/render/bound-curves.ts","../node_modules/src/core/cache-storage.ts","../node_modules/src/render/vector.ts","../node_modules/src/render/bezier-curve.ts","../node_modules/src/render/effects.ts","../node_modules/src/render/path.ts","../node_modules/src/render/stacking-context.ts","../node_modules/src/render/border.ts","../node_modules/src/render/box-sizing.ts","../node_modules/src/render/background.ts","../node_modules/src/core/util.ts","../node_modules/src/render/font-metrics.ts","../node_modules/src/render/renderer.ts","../node_modules/src/render/canvas/canvas-renderer.ts","../node_modules/src/render/canvas/foreignobject-renderer.ts","../node_modules/src/core/logger.ts","../node_modules/src/core/context.ts","../node_modules/src/index.ts","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/client.js","../node_modules/react-dom/index.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","../node_modules/@babel/runtime/helpers/esm/createSuper.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/get.js","../node_modules/@babel/runtime/helpers/esm/superPropBase.js","../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inherits.js","../node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../webpack/bootstrap","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/global","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","../node_modules/@babel/runtime/helpers/esm/construct.js","../node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js","../node_modules/@babel/runtime/helpers/esm/isNativeFunction.js","../node_modules/@remix-run/router/history.ts","../node_modules/@remix-run/router/utils.ts","../node_modules/@babel/runtime/helpers/esm/toArray.js","../node_modules/@remix-run/router/router.ts","../node_modules/react-router/lib/context.ts","../node_modules/react-router/lib/hooks.tsx","../node_modules/react-router/lib/components.tsx","../node_modules/react-router-dom/dom.ts","../node_modules/react-router-dom/index.tsx","component/Home.js","../node_modules/@firebase/util/src/crypt.ts","../node_modules/@firebase/util/src/defaults.ts","../node_modules/@firebase/util/src/global.ts","../node_modules/@firebase/util/src/deferred.ts","../node_modules/@firebase/util/src/emulator.ts","../node_modules/@firebase/util/src/environment.ts","../node_modules/@firebase/util/src/errors.ts","../node_modules/@firebase/util/src/obj.ts","../node_modules/@firebase/util/src/compat.ts","../node_modules/@firebase/component/src/component.ts","../node_modules/@firebase/component/src/constants.ts","../node_modules/@firebase/component/src/provider.ts","../node_modules/@firebase/component/src/component_container.ts","../node_modules/@firebase/logger/src/logger.ts","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/idb/build/wrap-idb-value.js","../node_modules/idb/build/index.js","../node_modules/@firebase/app/src/platformLoggerService.ts","../node_modules/@firebase/app/src/logger.ts","../node_modules/@firebase/app/src/constants.ts","../node_modules/@firebase/app/src/internal.ts","../node_modules/@firebase/app/src/errors.ts","../node_modules/@firebase/app/src/firebaseApp.ts","../node_modules/@firebase/app/src/api.ts","../node_modules/@firebase/app/src/indexeddb.ts","../node_modules/@firebase/app/src/heartbeatService.ts","../node_modules/@firebase/app/src/registerCoreComponents.ts","../node_modules/@firebase/app/src/index.ts","../node_modules/firebase/app/index.ts","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/base.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/disposable/disposable.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/array/array.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/event.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/browserfeature.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/string/internal.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/useragent/util.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/reflect/reflect.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/useragent/useragent.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/useragent/browser.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/useragent/engine.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/browserevent.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/eventtype.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/listenable.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/listenablekey.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/listener.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/listenermap.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/object/object.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/events.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/eventtarget.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/json/json.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/async/freelist.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/async/workqueue.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/async/run.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/string/string.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/net/xhrio.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/async/throwexception.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/timer/timer.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/async/throttle.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/events/eventhandler.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/webchanneldebug.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/requeststats.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/net/errorcode.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/net/eventtype.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/net/xmlhttpfactory.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/net/xmlhttp.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/channelrequest.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/environment.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/webchannelbase.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/uri/uri.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/disposable/dispose.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/wirev8.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/forwardchannelrequestpool.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/structs/structs.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/uri/utils.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/wire.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/json/nativejsonprocessor.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/netutils.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/net/fetchxmlhttpfactory.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/functions/functions.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/json/hybrid.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/net/httpstatus.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/net/rpc/httpcors.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchannel/webchannelbasetransport.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/crypt/md5.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/crypt/hash.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/math/integer.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchanneltransport.js","../node_modules/@firebase/webchannel-wrapper/dist/temp/src/index.js","../node_modules/@firebase/webchannel-wrapper/node_modules/google-closure-library/closure/goog/labs/net/webchanneltransportfactory.js","../node_modules/@firebase/firestore/src/auth/user.ts","../node_modules/@firebase/firestore/src/core/version.ts","../node_modules/@firebase/firestore/src/util/log.ts","../node_modules/@firebase/firestore/src/platform/browser/format_json.ts","../node_modules/@firebase/firestore/src/util/assert.ts","../node_modules/@firebase/firestore/src/util/error.ts","../node_modules/@firebase/firestore/src/util/promise.ts","../node_modules/@firebase/firestore/src/api/credentials.ts","../node_modules/@firebase/firestore/src/platform/browser/random_bytes.ts","../node_modules/@firebase/firestore/src/util/misc.ts","../node_modules/@firebase/firestore/src/lite-api/timestamp.ts","../node_modules/@firebase/firestore/src/core/snapshot_version.ts","../node_modules/@firebase/firestore/src/model/path.ts","../node_modules/@firebase/firestore/src/model/document_key.ts","../node_modules/@firebase/firestore/src/model/field_index.ts","../node_modules/@firebase/firestore/src/local/persistence_transaction.ts","../node_modules/@firebase/firestore/src/local/local_store.ts","../node_modules/@firebase/firestore/src/local/persistence_promise.ts","../node_modules/@firebase/firestore/src/local/simple_db.ts","../node_modules/@firebase/firestore/src/core/listen_sequence.ts","../node_modules/@firebase/firestore/src/util/types.ts","../node_modules/@firebase/firestore/src/local/indexeddb_sentinels.ts","../node_modules/@firebase/firestore/src/local/indexeddb_schema_legacy.ts","../node_modules/@firebase/firestore/src/util/obj.ts","../node_modules/@firebase/firestore/src/util/sorted_map.ts","../node_modules/@firebase/firestore/src/util/sorted_set.ts","../node_modules/@firebase/firestore/src/model/field_mask.ts","../node_modules/@firebase/firestore/src/util/base64_decode_error.ts","../node_modules/@firebase/firestore/src/util/byte_string.ts","../node_modules/@firebase/firestore/src/platform/browser/base64.ts","../node_modules/@firebase/firestore/src/model/normalize.ts","../node_modules/@firebase/firestore/src/model/server_timestamps.ts","../node_modules/@firebase/firestore/src/core/database_info.ts","../node_modules/@firebase/firestore/src/model/values.ts","../node_modules/@firebase/firestore/src/model/object_value.ts","../node_modules/@firebase/firestore/src/model/document.ts","../node_modules/@firebase/firestore/src/core/bound.ts","../node_modules/@firebase/firestore/src/core/order_by.ts","../node_modules/@firebase/firestore/src/core/filter.ts","../node_modules/@firebase/firestore/src/core/target.ts","../node_modules/@firebase/firestore/src/core/query.ts","../node_modules/@firebase/firestore/src/util/obj_map.ts","../node_modules/@firebase/firestore/src/model/collections.ts","../node_modules/@firebase/firestore/src/remote/number_serializer.ts","../node_modules/@firebase/firestore/src/model/transform_operation.ts","../node_modules/@firebase/firestore/src/model/mutation.ts","../node_modules/@firebase/firestore/src/remote/rpc_error.ts","../node_modules/@firebase/firestore/src/model/mutation_batch.ts","../node_modules/@firebase/firestore/src/model/overlay.ts","../node_modules/@firebase/firestore/src/remote/existence_filter.ts","../node_modules/@firebase/firestore/src/util/testing_hooks_spi.ts","../node_modules/@firebase/firestore/src/platform/browser/text_serializer.ts","../node_modules/@firebase/firestore/src/remote/bloom_filter.ts","../node_modules/@firebase/firestore/src/remote/remote_event.ts","../node_modules/@firebase/firestore/src/remote/watch_change.ts","../node_modules/@firebase/firestore/src/remote/serializer.ts","../node_modules/@firebase/firestore/src/local/target_data.ts","../node_modules/@firebase/firestore/src/local/local_serializer.ts","../node_modules/@firebase/firestore/src/index/firestore_index_value_writer.ts","../node_modules/@firebase/firestore/src/local/memory_index_manager.ts","../node_modules/@firebase/firestore/src/local/indexeddb_index_manager.ts","../node_modules/@firebase/firestore/src/local/lru_garbage_collector.ts","../node_modules/@firebase/firestore/src/core/target_id_generator.ts","../node_modules/@firebase/firestore/src/local/remote_document_change_buffer.ts","../node_modules/@firebase/firestore/src/local/overlayed_document.ts","../node_modules/@firebase/firestore/src/local/local_documents_view.ts","../node_modules/@firebase/firestore/src/local/memory_bundle_cache.ts","../node_modules/@firebase/firestore/src/local/memory_document_overlay_cache.ts","../node_modules/@firebase/firestore/src/local/reference_set.ts","../node_modules/@firebase/firestore/src/local/memory_mutation_queue.ts","../node_modules/@firebase/firestore/src/local/memory_remote_document_cache.ts","../node_modules/@firebase/firestore/src/local/memory_target_cache.ts","../node_modules/@firebase/firestore/src/local/memory_persistence.ts","../node_modules/@firebase/firestore/src/local/local_view_changes.ts","../node_modules/@firebase/firestore/src/local/query_context.ts","../node_modules/@firebase/firestore/src/local/query_engine.ts","../node_modules/@firebase/firestore/src/local/local_store_impl.ts","../node_modules/@firebase/firestore/src/local/shared_client_state.ts","../node_modules/@firebase/firestore/src/remote/connectivity_monitor_noop.ts","../node_modules/@firebase/firestore/src/platform/browser/connectivity_monitor.ts","../node_modules/@firebase/firestore/src/util/debug_uid.ts","../node_modules/@firebase/firestore/src/remote/rest_connection.ts","../node_modules/@firebase/firestore/src/remote/stream_bridge.ts","../node_modules/@firebase/firestore/src/platform/browser/webchannel_connection.ts","../node_modules/@firebase/firestore/src/platform/browser/dom.ts","../node_modules/@firebase/firestore/src/platform/browser/serializer.ts","../node_modules/@firebase/firestore/src/remote/backoff.ts","../node_modules/@firebase/firestore/src/remote/persistent_stream.ts","../node_modules/@firebase/firestore/src/remote/datastore.ts","../node_modules/@firebase/firestore/src/remote/online_state_tracker.ts","../node_modules/@firebase/firestore/src/remote/remote_store.ts","../node_modules/@firebase/firestore/src/util/async_queue.ts","../node_modules/@firebase/firestore/src/model/document_set.ts","../node_modules/@firebase/firestore/src/core/view_snapshot.ts","../node_modules/@firebase/firestore/src/core/event_manager.ts","../node_modules/@firebase/firestore/src/core/view.ts","../node_modules/@firebase/firestore/src/core/sync_engine_impl.ts","../node_modules/@firebase/firestore/src/core/component_provider.ts","../node_modules/@firebase/firestore/src/platform/browser/connection.ts","../node_modules/@firebase/firestore/src/util/async_observer.ts","../node_modules/@firebase/firestore/src/core/firestore_client.ts","../node_modules/@firebase/firestore/src/api/long_polling_options.ts","../node_modules/@firebase/firestore/src/lite-api/components.ts","../node_modules/@firebase/firestore/src/util/input_validation.ts","../node_modules/@firebase/firestore/src/lite-api/settings.ts","../node_modules/@firebase/firestore/src/local/lru_garbage_collector_impl.ts","../node_modules/@firebase/firestore/src/lite-api/database.ts","../node_modules/@firebase/firestore/src/lite-api/reference.ts","../node_modules/@firebase/firestore/src/util/async_queue_impl.ts","../node_modules/@firebase/firestore/src/api/database.ts","../node_modules/@firebase/firestore/src/lite-api/bytes.ts","../node_modules/@firebase/firestore/src/lite-api/field_path.ts","../node_modules/@firebase/firestore/src/lite-api/field_value.ts","../node_modules/@firebase/firestore/src/lite-api/geo_point.ts","../node_modules/@firebase/firestore/src/lite-api/user_data_reader.ts","../node_modules/@firebase/firestore/src/lite-api/snapshot.ts","../node_modules/@firebase/firestore/src/lite-api/user_data_writer.ts","../node_modules/@firebase/firestore/src/lite-api/reference_impl.ts","../node_modules/@firebase/firestore/src/api/snapshot.ts","../node_modules/@firebase/firestore/src/api/reference_impl.ts","../node_modules/@firebase/firestore/src/api/persistent_cache_index_manager.ts","../node_modules/@firebase/firestore/src/register.ts","../node_modules/@firebase/firestore/src/index.ts","../node_modules/@firebase/functions/src/constants.ts","../node_modules/@firebase/functions/src/context.ts","../node_modules/@firebase/functions/src/service.ts","../node_modules/@firebase/functions/src/api.ts","../node_modules/@firebase/functions/src/config.ts","../node_modules/@firebase/functions/src/index.ts","../node_modules/@firebase/storage/src/implementation/constants.ts","../node_modules/@firebase/storage/src/implementation/error.ts","../node_modules/@firebase/storage/src/implementation/location.ts","../node_modules/@firebase/storage/src/implementation/connection.ts","../node_modules/@firebase/storage/src/implementation/failrequest.ts","../node_modules/@firebase/storage/src/implementation/type.ts","../node_modules/@firebase/storage/src/implementation/url.ts","../node_modules/@firebase/storage/src/implementation/utils.ts","../node_modules/@firebase/storage/src/implementation/request.ts","../node_modules/@firebase/storage/src/implementation/backoff.ts","../node_modules/@firebase/storage/src/implementation/fs.ts","../node_modules/@firebase/storage/src/platform/browser/base64.ts","../node_modules/@firebase/storage/src/implementation/string.ts","../node_modules/@firebase/storage/src/implementation/blob.ts","../node_modules/@firebase/storage/src/implementation/json.ts","../node_modules/@firebase/storage/src/implementation/path.ts","../node_modules/@firebase/storage/src/implementation/metadata.ts","../node_modules/@firebase/storage/src/implementation/requestinfo.ts","../node_modules/@firebase/storage/src/implementation/requests.ts","../node_modules/@firebase/storage/src/platform/browser/connection.ts","../node_modules/@firebase/storage/src/task.ts","../node_modules/@firebase/storage/src/reference.ts","../node_modules/@firebase/storage/src/service.ts","../node_modules/@firebase/storage/src/constants.ts","../node_modules/@firebase/storage/src/api.ts","../node_modules/@firebase/storage/src/index.ts","firebase.js","component/components/Agreebox.js","component/Purchase.js","../node_modules/fflate/esm/browser.js","../node_modules/jspdf/src/libs/globalObject.js","../node_modules/jspdf/src/libs/console.js","../node_modules/jspdf/src/libs/FileSaver.js","../node_modules/jspdf/src/libs/AtobBtoa.js","../node_modules/jspdf/src/libs/rgbcolor.js","../node_modules/jspdf/src/libs/md5.js","../node_modules/jspdf/src/libs/rc4.js","../node_modules/jspdf/src/libs/pdfsecurity.js","../node_modules/jspdf/src/libs/pdfname.js","../node_modules/jspdf/src/jspdf.js","../node_modules/jspdf/src/modules/acroform.js","../node_modules/jspdf/src/libs/fontFace.js","../node_modules/jspdf/src/modules/addimage.js","../node_modules/jspdf/src/modules/annotations.js","../node_modules/jspdf/src/modules/arabic.js","../node_modules/jspdf/src/modules/autoprint.js","../node_modules/jspdf/src/modules/canvas.js","../node_modules/jspdf/src/modules/cell.js","../node_modules/jspdf/src/modules/javascript.js","../node_modules/jspdf/src/modules/fileloading.js","../node_modules/jspdf/src/modules/context2d.js","../node_modules/jspdf/src/modules/filters.js","../node_modules/jspdf/src/modules/html.js","../node_modules/jspdf/src/modules/outline.js","../node_modules/jspdf/src/modules/jpeg_support.js","../node_modules/jspdf/src/libs/png.js","../node_modules/jspdf/src/modules/split_text_to_size.js","../node_modules/jspdf/src/libs/omggif.js","../node_modules/jspdf/src/libs/JPEGEncoder.js","../node_modules/jspdf/src/libs/BMPDecoder.js","../node_modules/jspdf/src/libs/WebPDecoder.js","../node_modules/jspdf/src/modules/png_support.js","../node_modules/jspdf/src/modules/gif_support.js","../node_modules/jspdf/src/modules/bmp_support.js","../node_modules/jspdf/src/modules/webp_support.js","../node_modules/jspdf/src/modules/rgba_support.js","../node_modules/jspdf/src/modules/setlanguage.js","../node_modules/jspdf/src/modules/standard_fonts_metrics.js","../node_modules/jspdf/src/modules/ttfsupport.js","../node_modules/jspdf/src/modules/svg.js","../node_modules/jspdf/src/modules/total_pages.js","../node_modules/jspdf/src/modules/viewerpreferences.js","../node_modules/jspdf/src/modules/xmp_metadata.js","../node_modules/jspdf/src/modules/utf8.js","../node_modules/jspdf/src/modules/vfs.js","../node_modules/jspdf/src/libs/bidiEngine.js","../node_modules/jspdf/src/libs/ttffont.js","../node_modules/uuid/dist/esm-browser/rng.js","../node_modules/uuid/dist/esm-browser/native.js","../node_modules/uuid/dist/esm-browser/stringify.js","../node_modules/uuid/dist/esm-browser/v4.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","component/components/RadioContext.js","component/components/RadioGroup.js","component/components/Radio.js","../node_modules/@emailjs/browser/es/store/store.js","../node_modules/@emailjs/browser/es/utils/validateParams.js","../node_modules/@emailjs/browser/es/models/EmailJSResponseStatus.js","../node_modules/@emailjs/browser/es/api/sendPost.js","../node_modules/@emailjs/browser/es/index.js","../node_modules/@emailjs/browser/es/methods/send/send.js","component/PurchaseForm.js","component/ChannelService.js","asset/home_btn.svg","component/Auth.js","component/components/CheckboxContext.js","component/components/CheckboxGroup.js","component/components/Checkbox.js","component/AuthForm.js","component/BizTransport.js","component/BizTransportForm.js","component/ItemBrand.js","component/ItemBrandForm.js","App.js","component/components/ScrollToTop.js","index.js"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","export const toCodePoints = (str: string): number[] => {\n const codePoints = [];\n let i = 0;\n const length = str.length;\n while (i < length) {\n const value = str.charCodeAt(i++);\n if (value >= 0xd800 && value <= 0xdbff && i < length) {\n const extra = str.charCodeAt(i++);\n if ((extra & 0xfc00) === 0xdc00) {\n codePoints.push(((value & 0x3ff) << 10) + (extra & 0x3ff) + 0x10000);\n } else {\n codePoints.push(value);\n i--;\n }\n } else {\n codePoints.push(value);\n }\n }\n return codePoints;\n};\n\nexport const fromCodePoint = (...codePoints: number[]): string => {\n if (String.fromCodePoint) {\n return String.fromCodePoint(...codePoints);\n }\n\n const length = codePoints.length;\n if (!length) {\n return '';\n }\n\n const codeUnits = [];\n\n let index = -1;\n let result = '';\n while (++index < length) {\n let codePoint = codePoints[index];\n if (codePoint <= 0xffff) {\n codeUnits.push(codePoint);\n } else {\n codePoint -= 0x10000;\n codeUnits.push((codePoint >> 10) + 0xd800, (codePoint % 0x400) + 0xdc00);\n }\n if (index + 1 === length || codeUnits.length > 0x4000) {\n result += String.fromCharCode(...codeUnits);\n codeUnits.length = 0;\n }\n }\n return result;\n};\n\nconst chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const decode = (base64: string): ArrayBuffer | number[] => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const buffer =\n typeof ArrayBuffer !== 'undefined' &&\n typeof Uint8Array !== 'undefined' &&\n typeof Uint8Array.prototype.slice !== 'undefined'\n ? new ArrayBuffer(bufferLength)\n : new Array(bufferLength);\n const bytes = Array.isArray(buffer) ? buffer : new Uint8Array(buffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return buffer;\n};\n\nexport const polyUint16Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 2) {\n bytes.push((buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n\nexport const polyUint32Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 4) {\n bytes.push((buffer[i + 3] << 24) | (buffer[i + 2] << 16) | (buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n","import {Context} from '../../core/context';\n\nexport class Bounds {\n constructor(readonly left: number, readonly top: number, readonly width: number, readonly height: number) {}\n\n add(x: number, y: number, w: number, h: number): Bounds {\n return new Bounds(this.left + x, this.top + y, this.width + w, this.height + h);\n }\n\n static fromClientRect(context: Context, clientRect: ClientRect): Bounds {\n return new Bounds(\n clientRect.left + context.windowBounds.left,\n clientRect.top + context.windowBounds.top,\n clientRect.width,\n clientRect.height\n );\n }\n\n static fromDOMRectList(context: Context, domRectList: DOMRectList): Bounds {\n const domRect = Array.from(domRectList).find((rect) => rect.width !== 0);\n return domRect\n ? new Bounds(\n domRect.left + context.windowBounds.left,\n domRect.top + context.windowBounds.top,\n domRect.width,\n domRect.height\n )\n : Bounds.EMPTY;\n }\n\n static EMPTY = new Bounds(0, 0, 0, 0);\n}\n\nexport const parseBounds = (context: Context, node: Element): Bounds => {\n return Bounds.fromClientRect(context, node.getBoundingClientRect());\n};\n\nexport const parseDocumentSize = (document: Document): Bounds => {\n const body = document.body;\n const documentElement = document.documentElement;\n\n if (!body || !documentElement) {\n throw new Error(`Unable to get document size`);\n }\n const width = Math.max(\n Math.max(body.scrollWidth, documentElement.scrollWidth),\n Math.max(body.offsetWidth, documentElement.offsetWidth),\n Math.max(body.clientWidth, documentElement.clientWidth)\n );\n\n const height = Math.max(\n Math.max(body.scrollHeight, documentElement.scrollHeight),\n Math.max(body.offsetHeight, documentElement.offsetHeight),\n Math.max(body.clientHeight, documentElement.clientHeight)\n );\n\n return new Bounds(0, 0, width, height);\n};\n","const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const decode = (base64: string): ArrayBuffer | number[] => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const buffer =\n typeof ArrayBuffer !== 'undefined' &&\n typeof Uint8Array !== 'undefined' &&\n typeof Uint8Array.prototype.slice !== 'undefined'\n ? new ArrayBuffer(bufferLength)\n : new Array(bufferLength);\n const bytes = Array.isArray(buffer) ? buffer : new Uint8Array(buffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return buffer;\n};\n\nexport const polyUint16Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 2) {\n bytes.push((buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n\nexport const polyUint32Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 4) {\n bytes.push((buffer[i + 3] << 24) | (buffer[i + 2] << 16) | (buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n","const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const encode = (arraybuffer: ArrayBuffer): string => {\n let bytes = new Uint8Array(arraybuffer),\n i,\n len = bytes.length,\n base64 = '';\n\n for (i = 0; i < len; i += 3) {\n base64 += chars[bytes[i] >> 2];\n base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];\n base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];\n base64 += chars[bytes[i + 2] & 63];\n }\n\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + '=';\n } else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + '==';\n }\n\n return base64;\n};\n\nexport const decode = (base64: string): ArrayBuffer => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const arraybuffer = new ArrayBuffer(bufferLength),\n bytes = new Uint8Array(arraybuffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return arraybuffer;\n};\n","import {decode, polyUint16Array, polyUint32Array} from './Util';\n\nexport type int = number;\n\n/** Shift size for getting the index-2 table offset. */\nexport const UTRIE2_SHIFT_2 = 5;\n\n/** Shift size for getting the index-1 table offset. */\nexport const UTRIE2_SHIFT_1 = 6 + 5;\n\n/**\n * Shift size for shifting left the index array values.\n * Increases possible data size with 16-bit index values at the cost\n * of compactability.\n * This requires data blocks to be aligned by UTRIE2_DATA_GRANULARITY.\n */\nexport const UTRIE2_INDEX_SHIFT = 2;\n\n/**\n * Difference between the two shift sizes,\n * for getting an index-1 offset from an index-2 offset. 6=11-5\n */\nexport const UTRIE2_SHIFT_1_2 = UTRIE2_SHIFT_1 - UTRIE2_SHIFT_2;\n\n/**\n * The part of the index-2 table for U+D800..U+DBFF stores values for\n * lead surrogate code _units_ not code _points_.\n * Values for lead surrogate code _points_ are indexed with this portion of the table.\n * Length=32=0x20=0x400>>UTRIE2_SHIFT_2. (There are 1024=0x400 lead surrogates.)\n */\nexport const UTRIE2_LSCP_INDEX_2_OFFSET = 0x10000 >> UTRIE2_SHIFT_2;\n\n/** Number of entries in a data block. 32=0x20 */\nexport const UTRIE2_DATA_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_2;\n/** Mask for getting the lower bits for the in-data-block offset. */\nexport const UTRIE2_DATA_MASK = UTRIE2_DATA_BLOCK_LENGTH - 1;\n\nexport const UTRIE2_LSCP_INDEX_2_LENGTH = 0x400 >> UTRIE2_SHIFT_2;\n/** Count the lengths of both BMP pieces. 2080=0x820 */\nexport const UTRIE2_INDEX_2_BMP_LENGTH = UTRIE2_LSCP_INDEX_2_OFFSET + UTRIE2_LSCP_INDEX_2_LENGTH;\n/**\n * The 2-byte UTF-8 version of the index-2 table follows at offset 2080=0x820.\n * Length 32=0x20 for lead bytes C0..DF, regardless of UTRIE2_SHIFT_2.\n */\nexport const UTRIE2_UTF8_2B_INDEX_2_OFFSET = UTRIE2_INDEX_2_BMP_LENGTH;\nexport const UTRIE2_UTF8_2B_INDEX_2_LENGTH = 0x800 >> 6; /* U+0800 is the first code point after 2-byte UTF-8 */\n/**\n * The index-1 table, only used for supplementary code points, at offset 2112=0x840.\n * Variable length, for code points up to highStart, where the last single-value range starts.\n * Maximum length 512=0x200=0x100000>>UTRIE2_SHIFT_1.\n * (For 0x100000 supplementary code points U+10000..U+10ffff.)\n *\n * The part of the index-2 table for supplementary code points starts\n * after this index-1 table.\n *\n * Both the index-1 table and the following part of the index-2 table\n * are omitted completely if there is only BMP data.\n */\nexport const UTRIE2_INDEX_1_OFFSET = UTRIE2_UTF8_2B_INDEX_2_OFFSET + UTRIE2_UTF8_2B_INDEX_2_LENGTH;\n\n/**\n * Number of index-1 entries for the BMP. 32=0x20\n * This part of the index-1 table is omitted from the serialized form.\n */\nexport const UTRIE2_OMITTED_BMP_INDEX_1_LENGTH = 0x10000 >> UTRIE2_SHIFT_1;\n\n/** Number of entries in an index-2 block. 64=0x40 */\nexport const UTRIE2_INDEX_2_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_1_2;\n/** Mask for getting the lower bits for the in-index-2-block offset. */\nexport const UTRIE2_INDEX_2_MASK = UTRIE2_INDEX_2_BLOCK_LENGTH - 1;\n\nconst slice16 = (view: number[] | Uint16Array, start: number, end?: number) => {\n if (view.slice) {\n return view.slice(start, end);\n }\n\n return new Uint16Array(Array.prototype.slice.call(view, start, end));\n};\n\nconst slice32 = (view: number[] | Uint32Array, start: number, end?: number) => {\n if (view.slice) {\n return view.slice(start, end);\n }\n\n return new Uint32Array(Array.prototype.slice.call(view, start, end));\n};\n\nexport const createTrieFromBase64 = (base64: string, _byteLength: number): Trie => {\n const buffer = decode(base64);\n const view32 = Array.isArray(buffer) ? polyUint32Array(buffer) : new Uint32Array(buffer);\n const view16 = Array.isArray(buffer) ? polyUint16Array(buffer) : new Uint16Array(buffer);\n const headerLength = 24;\n\n const index = slice16(view16, headerLength / 2, view32[4] / 2);\n const data =\n view32[5] === 2\n ? slice16(view16, (headerLength + view32[4]) / 2)\n : slice32(view32, Math.ceil((headerLength + view32[4]) / 4));\n\n return new Trie(view32[0], view32[1], view32[2], view32[3], index, data);\n};\n\nexport class Trie {\n initialValue: int;\n errorValue: int;\n highStart: int;\n highValueIndex: int;\n index: Uint16Array | number[];\n data: Uint32Array | Uint16Array | number[];\n\n constructor(\n initialValue: int,\n errorValue: int,\n highStart: int,\n highValueIndex: int,\n index: Uint16Array | number[],\n data: Uint32Array | Uint16Array | number[]\n ) {\n this.initialValue = initialValue;\n this.errorValue = errorValue;\n this.highStart = highStart;\n this.highValueIndex = highValueIndex;\n this.index = index;\n this.data = data;\n }\n\n /**\n * Get the value for a code point as stored in the Trie.\n *\n * @param codePoint the code point\n * @return the value\n */\n get(codePoint: number): number {\n let ix;\n if (codePoint >= 0) {\n if (codePoint < 0x0d800 || (codePoint > 0x0dbff && codePoint <= 0x0ffff)) {\n // Ordinary BMP code point, excluding leading surrogates.\n // BMP uses a single level lookup. BMP index starts at offset 0 in the Trie2 index.\n // 16 bit data is stored in the index array itself.\n ix = this.index[codePoint >> UTRIE2_SHIFT_2];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n\n if (codePoint <= 0xffff) {\n // Lead Surrogate Code Point. A Separate index section is stored for\n // lead surrogate code units and code points.\n // The main index has the code unit data.\n // For this function, we need the code point data.\n // Note: this expression could be refactored for slightly improved efficiency, but\n // surrogate code points will be so rare in practice that it's not worth it.\n ix = this.index[UTRIE2_LSCP_INDEX_2_OFFSET + ((codePoint - 0xd800) >> UTRIE2_SHIFT_2)];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n\n if (codePoint < this.highStart) {\n // Supplemental code point, use two-level lookup.\n ix = UTRIE2_INDEX_1_OFFSET - UTRIE2_OMITTED_BMP_INDEX_1_LENGTH + (codePoint >> UTRIE2_SHIFT_1);\n ix = this.index[ix];\n ix += (codePoint >> UTRIE2_SHIFT_2) & UTRIE2_INDEX_2_MASK;\n ix = this.index[ix];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n if (codePoint <= 0x10ffff) {\n return this.data[this.highValueIndex];\n }\n }\n\n // Fall through. The code point is outside of the legal range of 0..0x10ffff.\n return this.errorValue;\n }\n}\n","export const base64 =\n 'KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA==';\nexport const byteLength = 39664;\n","'use strict';\n\nimport {createTrieFromBase64} from 'utrie';\nimport {base64, byteLength} from './linebreak-trie';\nimport {fromCodePoint, toCodePoints} from './Util';\n\nexport const LETTER_NUMBER_MODIFIER = 50;\n\n// Non-tailorable Line Breaking Classes\nconst BK = 1; // Cause a line break (after)\nconst CR = 2; // Cause a line break (after), except between CR and LF\nconst LF = 3; // Cause a line break (after)\nconst CM = 4; // Prohibit a line break between the character and the preceding character\nconst NL = 5; // Cause a line break (after)\nconst SG = 6; // Do not occur in well-formed text\nconst WJ = 7; // Prohibit line breaks before and after\nconst ZW = 8; // Provide a break opportunity\nconst GL = 9; // Prohibit line breaks before and after\nconst SP = 10; // Enable indirect line breaks\nconst ZWJ = 11; // Prohibit line breaks within joiner sequences\n// Break Opportunities\nconst B2 = 12; // Provide a line break opportunity before and after the character\nconst BA = 13; // Generally provide a line break opportunity after the character\nconst BB = 14; // Generally provide a line break opportunity before the character\nconst HY = 15; // Provide a line break opportunity after the character, except in numeric context\nconst CB = 16; // Provide a line break opportunity contingent on additional information\n// Characters Prohibiting Certain Breaks\nconst CL = 17; // Prohibit line breaks before\nconst CP = 18; // Prohibit line breaks before\nconst EX = 19; // Prohibit line breaks before\nconst IN = 20; // Allow only indirect line breaks between pairs\nconst NS = 21; // Allow only indirect line breaks before\nconst OP = 22; // Prohibit line breaks after\nconst QU = 23; // Act like they are both opening and closing\n// Numeric Context\nconst IS = 24; // Prevent breaks after any and before numeric\nconst NU = 25; // Form numeric expressions for line breaking purposes\nconst PO = 26; // Do not break following a numeric expression\nconst PR = 27; // Do not break in front of a numeric expression\nconst SY = 28; // Prevent a break before; and allow a break after\n// Other Characters\nconst AI = 29; // Act like AL when the resolvedEAW is N; otherwise; act as ID\nconst AL = 30; // Are alphabetic characters or symbols that are used with alphabetic characters\nconst CJ = 31; // Treat as NS or ID for strict or normal breaking.\nconst EB = 32; // Do not break from following Emoji Modifier\nconst EM = 33; // Do not break from preceding Emoji Base\nconst H2 = 34; // Form Korean syllable blocks\nconst H3 = 35; // Form Korean syllable blocks\nconst HL = 36; // Do not break around a following hyphen; otherwise act as Alphabetic\nconst ID = 37; // Break before or after; except in some numeric context\nconst JL = 38; // Form Korean syllable blocks\nconst JV = 39; // Form Korean syllable blocks\nconst JT = 40; // Form Korean syllable blocks\nconst RI = 41; // Keep pairs together. For pairs; break before and after other classes\nconst SA = 42; // Provide a line break opportunity contingent on additional, language-specific context analysis\nconst XX = 43; // Have as yet unknown line breaking behavior or unassigned code positions\n\nconst ea_OP = [0x2329, 0xff08];\n\nexport const classes: {[key: string]: number} = {\n BK,\n CR,\n LF,\n CM,\n NL,\n SG,\n WJ,\n ZW,\n GL,\n SP,\n ZWJ,\n B2,\n BA,\n BB,\n HY,\n CB,\n CL,\n CP,\n EX,\n IN,\n NS,\n OP,\n QU,\n IS,\n NU,\n PO,\n PR,\n SY,\n AI,\n AL,\n CJ,\n EB,\n EM,\n H2,\n H3,\n HL,\n ID,\n JL,\n JV,\n JT,\n RI,\n SA,\n XX,\n};\n\nexport const BREAK_MANDATORY = '!';\nexport const BREAK_NOT_ALLOWED = '×';\nexport const BREAK_ALLOWED = '÷';\nexport const UnicodeTrie = createTrieFromBase64(base64, byteLength);\n\nconst ALPHABETICS = [AL, HL];\nconst HARD_LINE_BREAKS = [BK, CR, LF, NL];\nconst SPACE = [SP, ZW];\nconst PREFIX_POSTFIX = [PR, PO];\nconst LINE_BREAKS = HARD_LINE_BREAKS.concat(SPACE);\nconst KOREAN_SYLLABLE_BLOCK = [JL, JV, JT, H2, H3];\nconst HYPHEN = [HY, BA];\n\nexport const codePointsToCharacterClasses = (\n codePoints: number[],\n lineBreak: string = 'strict'\n): [number[], number[], boolean[]] => {\n const types: number[] = [];\n const indices: number[] = [];\n const categories: boolean[] = [];\n codePoints.forEach((codePoint, index) => {\n let classType = UnicodeTrie.get(codePoint);\n if (classType > LETTER_NUMBER_MODIFIER) {\n categories.push(true);\n classType -= LETTER_NUMBER_MODIFIER;\n } else {\n categories.push(false);\n }\n\n if (['normal', 'auto', 'loose'].indexOf(lineBreak) !== -1) {\n // U+2010, – U+2013, 〜 U+301C, ゠ U+30A0\n if ([0x2010, 0x2013, 0x301c, 0x30a0].indexOf(codePoint) !== -1) {\n indices.push(index);\n return types.push(CB);\n }\n }\n\n if (classType === CM || classType === ZWJ) {\n // LB10 Treat any remaining combining mark or ZWJ as AL.\n if (index === 0) {\n indices.push(index);\n return types.push(AL);\n }\n\n // LB9 Do not break a combining character sequence; treat it as if it has the line breaking class of\n // the base character in all of the following rules. Treat ZWJ as if it were CM.\n const prev = types[index - 1];\n if (LINE_BREAKS.indexOf(prev) === -1) {\n indices.push(indices[index - 1]);\n return types.push(prev);\n }\n indices.push(index);\n return types.push(AL);\n }\n\n indices.push(index);\n\n if (classType === CJ) {\n return types.push(lineBreak === 'strict' ? NS : ID);\n }\n\n if (classType === SA) {\n return types.push(AL);\n }\n\n if (classType === AI) {\n return types.push(AL);\n }\n\n // For supplementary characters, a useful default is to treat characters in the range 10000..1FFFD as AL\n // and characters in the ranges 20000..2FFFD and 30000..3FFFD as ID, until the implementation can be revised\n // to take into account the actual line breaking properties for these characters.\n if (classType === XX) {\n if ((codePoint >= 0x20000 && codePoint <= 0x2fffd) || (codePoint >= 0x30000 && codePoint <= 0x3fffd)) {\n return types.push(ID);\n } else {\n return types.push(AL);\n }\n }\n\n types.push(classType);\n });\n\n return [indices, types, categories];\n};\n\nconst isAdjacentWithSpaceIgnored = (\n a: number[] | number,\n b: number,\n currentIndex: number,\n classTypes: number[]\n): boolean => {\n const current = classTypes[currentIndex];\n if (Array.isArray(a) ? a.indexOf(current) !== -1 : a === current) {\n let i = currentIndex;\n while (i <= classTypes.length) {\n i++;\n let next = classTypes[i];\n\n if (next === b) {\n return true;\n }\n\n if (next !== SP) {\n break;\n }\n }\n }\n\n if (current === SP) {\n let i = currentIndex;\n\n while (i > 0) {\n i--;\n const prev = classTypes[i];\n\n if (Array.isArray(a) ? a.indexOf(prev) !== -1 : a === prev) {\n let n = currentIndex;\n while (n <= classTypes.length) {\n n++;\n let next = classTypes[n];\n\n if (next === b) {\n return true;\n }\n\n if (next !== SP) {\n break;\n }\n }\n }\n\n if (prev !== SP) {\n break;\n }\n }\n }\n return false;\n};\n\nconst previousNonSpaceClassType = (currentIndex: number, classTypes: number[]): number => {\n let i = currentIndex;\n while (i >= 0) {\n let type = classTypes[i];\n if (type === SP) {\n i--;\n } else {\n return type;\n }\n }\n return 0;\n};\n\nexport type BREAK_OPPORTUNITIES = typeof BREAK_NOT_ALLOWED | typeof BREAK_ALLOWED | typeof BREAK_MANDATORY;\n\nconst _lineBreakAtIndex = (\n codePoints: number[],\n classTypes: number[],\n indicies: number[],\n index: number,\n forbiddenBreaks?: boolean[]\n): BREAK_OPPORTUNITIES => {\n if (indicies[index] === 0) {\n return BREAK_NOT_ALLOWED;\n }\n\n let currentIndex = index - 1;\n if (Array.isArray(forbiddenBreaks) && forbiddenBreaks[currentIndex] === true) {\n return BREAK_NOT_ALLOWED;\n }\n\n let beforeIndex = currentIndex - 1;\n let afterIndex = currentIndex + 1;\n let current = classTypes[currentIndex];\n\n // LB4 Always break after hard line breaks.\n // LB5 Treat CR followed by LF, as well as CR, LF, and NL as hard line breaks.\n let before = beforeIndex >= 0 ? classTypes[beforeIndex] : 0;\n let next = classTypes[afterIndex];\n\n if (current === CR && next === LF) {\n return BREAK_NOT_ALLOWED;\n }\n\n if (HARD_LINE_BREAKS.indexOf(current) !== -1) {\n return BREAK_MANDATORY;\n }\n\n // LB6 Do not break before hard line breaks.\n if (HARD_LINE_BREAKS.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB7 Do not break before spaces or zero width space.\n if (SPACE.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB8 Break before any character following a zero-width space, even if one or more spaces intervene.\n if (previousNonSpaceClassType(currentIndex, classTypes) === ZW) {\n return BREAK_ALLOWED;\n }\n\n // LB8a Do not break after a zero width joiner.\n if (UnicodeTrie.get(codePoints[currentIndex]) === ZWJ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // zwj emojis\n if ((current === EB || current === EM) && UnicodeTrie.get(codePoints[afterIndex]) === ZWJ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB11 Do not break before or after Word joiner and related characters.\n if (current === WJ || next === WJ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB12 Do not break after NBSP and related characters.\n if (current === GL) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB12a Do not break before NBSP and related characters, except after spaces and hyphens.\n if ([SP, BA, HY].indexOf(current) === -1 && next === GL) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB13 Do not break before ‘]’ or ‘!’ or ‘;’ or ‘/’, even after spaces.\n if ([CL, CP, EX, IS, SY].indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB14 Do not break after ‘[’, even after spaces.\n if (previousNonSpaceClassType(currentIndex, classTypes) === OP) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB15 Do not break within ‘”[’, even with intervening spaces.\n if (isAdjacentWithSpaceIgnored(QU, OP, currentIndex, classTypes)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB16 Do not break between closing punctuation and a nonstarter (lb=NS), even with intervening spaces.\n if (isAdjacentWithSpaceIgnored([CL, CP], NS, currentIndex, classTypes)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB17 Do not break within ‘——’, even with intervening spaces.\n if (isAdjacentWithSpaceIgnored(B2, B2, currentIndex, classTypes)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB18 Break after spaces.\n if (current === SP) {\n return BREAK_ALLOWED;\n }\n\n // LB19 Do not break before or after quotation marks, such as ‘ ” ’.\n if (current === QU || next === QU) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB20 Break before and after unresolved CB.\n if (next === CB || current === CB) {\n return BREAK_ALLOWED;\n }\n\n // LB21 Do not break before hyphen-minus, other hyphens, fixed-width spaces, small kana, and other non-starters, or after acute accents.\n if ([BA, HY, NS].indexOf(next) !== -1 || current === BB) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB21a Don't break after Hebrew + Hyphen.\n if (before === HL && HYPHEN.indexOf(current) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB21b Don’t break between Solidus and Hebrew letters.\n if (current === SY && next === HL) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB22 Do not break before ellipsis.\n if (next === IN) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB23 Do not break between digits and letters.\n if ((ALPHABETICS.indexOf(next) !== -1 && current === NU) || (ALPHABETICS.indexOf(current) !== -1 && next === NU)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB23a Do not break between numeric prefixes and ideographs, or between ideographs and numeric postfixes.\n if (\n (current === PR && [ID, EB, EM].indexOf(next) !== -1) ||\n ([ID, EB, EM].indexOf(current) !== -1 && next === PO)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB24 Do not break between numeric prefix/postfix and letters, or between letters and prefix/postfix.\n if (\n (ALPHABETICS.indexOf(current) !== -1 && PREFIX_POSTFIX.indexOf(next) !== -1) ||\n (PREFIX_POSTFIX.indexOf(current) !== -1 && ALPHABETICS.indexOf(next) !== -1)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB25 Do not break between the following pairs of classes relevant to numbers:\n if (\n // (PR | PO) × ( OP | HY )? NU\n ([PR, PO].indexOf(current) !== -1 &&\n (next === NU || ([OP, HY].indexOf(next) !== -1 && classTypes[afterIndex + 1] === NU))) ||\n // ( OP | HY ) × NU\n ([OP, HY].indexOf(current) !== -1 && next === NU) ||\n // NU ×\t(NU | SY | IS)\n (current === NU && [NU, SY, IS].indexOf(next) !== -1)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // NU (NU | SY | IS)* × (NU | SY | IS | CL | CP)\n if ([NU, SY, IS, CL, CP].indexOf(next) !== -1) {\n let prevIndex = currentIndex;\n while (prevIndex >= 0) {\n let type = classTypes[prevIndex];\n if (type === NU) {\n return BREAK_NOT_ALLOWED;\n } else if ([SY, IS].indexOf(type) !== -1) {\n prevIndex--;\n } else {\n break;\n }\n }\n }\n\n // NU (NU | SY | IS)* (CL | CP)? × (PO | PR))\n if ([PR, PO].indexOf(next) !== -1) {\n let prevIndex = [CL, CP].indexOf(current) !== -1 ? beforeIndex : currentIndex;\n while (prevIndex >= 0) {\n let type = classTypes[prevIndex];\n if (type === NU) {\n return BREAK_NOT_ALLOWED;\n } else if ([SY, IS].indexOf(type) !== -1) {\n prevIndex--;\n } else {\n break;\n }\n }\n }\n\n // LB26 Do not break a Korean syllable.\n if (\n (JL === current && [JL, JV, H2, H3].indexOf(next) !== -1) ||\n ([JV, H2].indexOf(current) !== -1 && [JV, JT].indexOf(next) !== -1) ||\n ([JT, H3].indexOf(current) !== -1 && next === JT)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB27 Treat a Korean Syllable Block the same as ID.\n if (\n (KOREAN_SYLLABLE_BLOCK.indexOf(current) !== -1 && [IN, PO].indexOf(next) !== -1) ||\n (KOREAN_SYLLABLE_BLOCK.indexOf(next) !== -1 && current === PR)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB28 Do not break between alphabetics (“at”).\n if (ALPHABETICS.indexOf(current) !== -1 && ALPHABETICS.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB29 Do not break between numeric punctuation and alphabetics (“e.g.”).\n if (current === IS && ALPHABETICS.indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB30 Do not break between letters, numbers, or ordinary symbols and opening or closing parentheses.\n if (\n (ALPHABETICS.concat(NU).indexOf(current) !== -1 &&\n next === OP &&\n ea_OP.indexOf(codePoints[afterIndex]) === -1) ||\n (ALPHABETICS.concat(NU).indexOf(next) !== -1 && current === CP)\n ) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB30a Break between two regional indicator symbols if and only if there are an even number of regional\n // indicators preceding the position of the break.\n if (current === RI && next === RI) {\n let i = indicies[currentIndex];\n let count = 1;\n while (i > 0) {\n i--;\n if (classTypes[i] === RI) {\n count++;\n } else {\n break;\n }\n }\n if (count % 2 !== 0) {\n return BREAK_NOT_ALLOWED;\n }\n }\n\n // LB30b Do not break between an emoji base and an emoji modifier.\n if (current === EB && next === EM) {\n return BREAK_NOT_ALLOWED;\n }\n\n return BREAK_ALLOWED;\n};\n\nexport const lineBreakAtIndex = (codePoints: number[], index: number): BREAK_OPPORTUNITIES => {\n // LB2 Never break at the start of text.\n if (index === 0) {\n return BREAK_NOT_ALLOWED;\n }\n\n // LB3 Always break at the end of text.\n if (index >= codePoints.length) {\n return BREAK_MANDATORY;\n }\n\n const [indices, classTypes] = codePointsToCharacterClasses(codePoints);\n\n return _lineBreakAtIndex(codePoints, classTypes, indices, index);\n};\n\nexport type LINE_BREAK = 'auto' | 'normal' | 'strict';\nexport type WORD_BREAK = 'normal' | 'break-all' | 'break-word' | 'keep-all';\n\ninterface IOptions {\n lineBreak?: LINE_BREAK;\n wordBreak?: WORD_BREAK;\n}\n\nconst cssFormattedClasses = (codePoints: number[], options?: IOptions): [number[], number[], boolean[] | undefined] => {\n if (!options) {\n options = {lineBreak: 'normal', wordBreak: 'normal'};\n }\n let [indicies, classTypes, isLetterNumber] = codePointsToCharacterClasses(codePoints, options.lineBreak);\n\n if (options.wordBreak === 'break-all' || options.wordBreak === 'break-word') {\n classTypes = classTypes.map((type) => ([NU, AL, SA].indexOf(type) !== -1 ? ID : type));\n }\n\n const forbiddenBreakpoints =\n options.wordBreak === 'keep-all'\n ? isLetterNumber.map((letterNumber, i) => {\n return letterNumber && codePoints[i] >= 0x4e00 && codePoints[i] <= 0x9fff;\n })\n : undefined;\n\n return [indicies, classTypes, forbiddenBreakpoints];\n};\n\nexport const inlineBreakOpportunities = (str: string, options?: IOptions): string => {\n const codePoints = toCodePoints(str);\n let output = BREAK_NOT_ALLOWED;\n const [indicies, classTypes, forbiddenBreakpoints] = cssFormattedClasses(codePoints, options);\n\n codePoints.forEach((codePoint, i) => {\n output +=\n fromCodePoint(codePoint) +\n (i >= codePoints.length - 1\n ? BREAK_MANDATORY\n : _lineBreakAtIndex(codePoints, classTypes, indicies, i + 1, forbiddenBreakpoints));\n });\n\n return output;\n};\n\nclass Break {\n private readonly codePoints: number[];\n readonly required: boolean;\n readonly start: number;\n readonly end: number;\n\n constructor(codePoints: number[], lineBreak: string, start: number, end: number) {\n this.codePoints = codePoints;\n this.required = lineBreak === BREAK_MANDATORY;\n this.start = start;\n this.end = end;\n }\n\n slice(): string {\n return fromCodePoint(...this.codePoints.slice(this.start, this.end));\n }\n}\n\nexport type LineBreak =\n | {\n done: true;\n value: null;\n }\n | {\n done: false;\n value: Break;\n };\n\ninterface ILineBreakIterator {\n next: () => LineBreak;\n}\n\nexport const LineBreaker = (str: string, options?: IOptions): ILineBreakIterator => {\n const codePoints = toCodePoints(str);\n const [indicies, classTypes, forbiddenBreakpoints] = cssFormattedClasses(codePoints, options);\n const length = codePoints.length;\n let lastEnd = 0;\n let nextIndex = 0;\n\n return {\n next: () => {\n if (nextIndex >= length) {\n return {done: true, value: null};\n }\n let lineBreak = BREAK_NOT_ALLOWED;\n while (\n nextIndex < length &&\n (lineBreak = _lineBreakAtIndex(codePoints, classTypes, indicies, ++nextIndex, forbiddenBreakpoints)) ===\n BREAK_NOT_ALLOWED\n ) {}\n\n if (lineBreak !== BREAK_NOT_ALLOWED || nextIndex === length) {\n const value = new Break(codePoints, lineBreak, lastEnd, nextIndex);\n lastEnd = nextIndex;\n return {value, done: false};\n }\n\n return {done: true, value: null};\n },\n };\n};\n","// https://www.w3.org/TR/css-syntax-3\n\nimport {fromCodePoint, toCodePoints} from 'css-line-break';\n\nexport const enum TokenType {\n STRING_TOKEN,\n BAD_STRING_TOKEN,\n LEFT_PARENTHESIS_TOKEN,\n RIGHT_PARENTHESIS_TOKEN,\n COMMA_TOKEN,\n HASH_TOKEN,\n DELIM_TOKEN,\n AT_KEYWORD_TOKEN,\n PREFIX_MATCH_TOKEN,\n DASH_MATCH_TOKEN,\n INCLUDE_MATCH_TOKEN,\n LEFT_CURLY_BRACKET_TOKEN,\n RIGHT_CURLY_BRACKET_TOKEN,\n SUFFIX_MATCH_TOKEN,\n SUBSTRING_MATCH_TOKEN,\n DIMENSION_TOKEN,\n PERCENTAGE_TOKEN,\n NUMBER_TOKEN,\n FUNCTION,\n FUNCTION_TOKEN,\n IDENT_TOKEN,\n COLUMN_TOKEN,\n URL_TOKEN,\n BAD_URL_TOKEN,\n CDC_TOKEN,\n CDO_TOKEN,\n COLON_TOKEN,\n SEMICOLON_TOKEN,\n LEFT_SQUARE_BRACKET_TOKEN,\n RIGHT_SQUARE_BRACKET_TOKEN,\n UNICODE_RANGE_TOKEN,\n WHITESPACE_TOKEN,\n EOF_TOKEN\n}\n\ninterface IToken {\n type: TokenType;\n}\n\nexport interface Token extends IToken {\n type:\n | TokenType.BAD_URL_TOKEN\n | TokenType.BAD_STRING_TOKEN\n | TokenType.LEFT_PARENTHESIS_TOKEN\n | TokenType.RIGHT_PARENTHESIS_TOKEN\n | TokenType.COMMA_TOKEN\n | TokenType.SUBSTRING_MATCH_TOKEN\n | TokenType.PREFIX_MATCH_TOKEN\n | TokenType.SUFFIX_MATCH_TOKEN\n | TokenType.COLON_TOKEN\n | TokenType.SEMICOLON_TOKEN\n | TokenType.LEFT_SQUARE_BRACKET_TOKEN\n | TokenType.RIGHT_SQUARE_BRACKET_TOKEN\n | TokenType.LEFT_CURLY_BRACKET_TOKEN\n | TokenType.RIGHT_CURLY_BRACKET_TOKEN\n | TokenType.DASH_MATCH_TOKEN\n | TokenType.INCLUDE_MATCH_TOKEN\n | TokenType.COLUMN_TOKEN\n | TokenType.WHITESPACE_TOKEN\n | TokenType.CDC_TOKEN\n | TokenType.CDO_TOKEN\n | TokenType.EOF_TOKEN;\n}\n\nexport interface StringValueToken extends IToken {\n type:\n | TokenType.STRING_TOKEN\n | TokenType.DELIM_TOKEN\n | TokenType.FUNCTION_TOKEN\n | TokenType.IDENT_TOKEN\n | TokenType.URL_TOKEN\n | TokenType.AT_KEYWORD_TOKEN;\n value: string;\n}\n\nexport interface HashToken extends IToken {\n type: TokenType.HASH_TOKEN;\n flags: number;\n value: string;\n}\n\nexport interface NumberValueToken extends IToken {\n type: TokenType.PERCENTAGE_TOKEN | TokenType.NUMBER_TOKEN;\n flags: number;\n number: number;\n}\n\nexport interface DimensionToken extends IToken {\n type: TokenType.DIMENSION_TOKEN;\n flags: number;\n unit: string;\n number: number;\n}\n\nexport interface UnicodeRangeToken extends IToken {\n type: TokenType.UNICODE_RANGE_TOKEN;\n start: number;\n end: number;\n}\n\nexport type CSSToken = Token | StringValueToken | NumberValueToken | DimensionToken | UnicodeRangeToken | HashToken;\n\nexport const FLAG_UNRESTRICTED = 1 << 0;\nexport const FLAG_ID = 1 << 1;\nexport const FLAG_INTEGER = 1 << 2;\nexport const FLAG_NUMBER = 1 << 3;\n\nconst LINE_FEED = 0x000a;\nconst SOLIDUS = 0x002f;\nconst REVERSE_SOLIDUS = 0x005c;\nconst CHARACTER_TABULATION = 0x0009;\nconst SPACE = 0x0020;\nconst QUOTATION_MARK = 0x0022;\nconst EQUALS_SIGN = 0x003d;\nconst NUMBER_SIGN = 0x0023;\nconst DOLLAR_SIGN = 0x0024;\nconst PERCENTAGE_SIGN = 0x0025;\nconst APOSTROPHE = 0x0027;\nconst LEFT_PARENTHESIS = 0x0028;\nconst RIGHT_PARENTHESIS = 0x0029;\nconst LOW_LINE = 0x005f;\nconst HYPHEN_MINUS = 0x002d;\nconst EXCLAMATION_MARK = 0x0021;\nconst LESS_THAN_SIGN = 0x003c;\nconst GREATER_THAN_SIGN = 0x003e;\nconst COMMERCIAL_AT = 0x0040;\nconst LEFT_SQUARE_BRACKET = 0x005b;\nconst RIGHT_SQUARE_BRACKET = 0x005d;\nconst CIRCUMFLEX_ACCENT = 0x003d;\nconst LEFT_CURLY_BRACKET = 0x007b;\nconst QUESTION_MARK = 0x003f;\nconst RIGHT_CURLY_BRACKET = 0x007d;\nconst VERTICAL_LINE = 0x007c;\nconst TILDE = 0x007e;\nconst CONTROL = 0x0080;\nconst REPLACEMENT_CHARACTER = 0xfffd;\nconst ASTERISK = 0x002a;\nconst PLUS_SIGN = 0x002b;\nconst COMMA = 0x002c;\nconst COLON = 0x003a;\nconst SEMICOLON = 0x003b;\nconst FULL_STOP = 0x002e;\nconst NULL = 0x0000;\nconst BACKSPACE = 0x0008;\nconst LINE_TABULATION = 0x000b;\nconst SHIFT_OUT = 0x000e;\nconst INFORMATION_SEPARATOR_ONE = 0x001f;\nconst DELETE = 0x007f;\nconst EOF = -1;\nconst ZERO = 0x0030;\nconst a = 0x0061;\nconst e = 0x0065;\nconst f = 0x0066;\nconst u = 0x0075;\nconst z = 0x007a;\nconst A = 0x0041;\nconst E = 0x0045;\nconst F = 0x0046;\nconst U = 0x0055;\nconst Z = 0x005a;\n\nconst isDigit = (codePoint: number) => codePoint >= ZERO && codePoint <= 0x0039;\nconst isSurrogateCodePoint = (codePoint: number) => codePoint >= 0xd800 && codePoint <= 0xdfff;\nconst isHex = (codePoint: number) =>\n isDigit(codePoint) || (codePoint >= A && codePoint <= F) || (codePoint >= a && codePoint <= f);\nconst isLowerCaseLetter = (codePoint: number) => codePoint >= a && codePoint <= z;\nconst isUpperCaseLetter = (codePoint: number) => codePoint >= A && codePoint <= Z;\nconst isLetter = (codePoint: number) => isLowerCaseLetter(codePoint) || isUpperCaseLetter(codePoint);\nconst isNonASCIICodePoint = (codePoint: number) => codePoint >= CONTROL;\nconst isWhiteSpace = (codePoint: number): boolean =>\n codePoint === LINE_FEED || codePoint === CHARACTER_TABULATION || codePoint === SPACE;\nconst isNameStartCodePoint = (codePoint: number): boolean =>\n isLetter(codePoint) || isNonASCIICodePoint(codePoint) || codePoint === LOW_LINE;\nconst isNameCodePoint = (codePoint: number): boolean =>\n isNameStartCodePoint(codePoint) || isDigit(codePoint) || codePoint === HYPHEN_MINUS;\nconst isNonPrintableCodePoint = (codePoint: number): boolean => {\n return (\n (codePoint >= NULL && codePoint <= BACKSPACE) ||\n codePoint === LINE_TABULATION ||\n (codePoint >= SHIFT_OUT && codePoint <= INFORMATION_SEPARATOR_ONE) ||\n codePoint === DELETE\n );\n};\nconst isValidEscape = (c1: number, c2: number): boolean => {\n if (c1 !== REVERSE_SOLIDUS) {\n return false;\n }\n\n return c2 !== LINE_FEED;\n};\nconst isIdentifierStart = (c1: number, c2: number, c3: number): boolean => {\n if (c1 === HYPHEN_MINUS) {\n return isNameStartCodePoint(c2) || isValidEscape(c2, c3);\n } else if (isNameStartCodePoint(c1)) {\n return true;\n } else if (c1 === REVERSE_SOLIDUS && isValidEscape(c1, c2)) {\n return true;\n }\n return false;\n};\n\nconst isNumberStart = (c1: number, c2: number, c3: number): boolean => {\n if (c1 === PLUS_SIGN || c1 === HYPHEN_MINUS) {\n if (isDigit(c2)) {\n return true;\n }\n\n return c2 === FULL_STOP && isDigit(c3);\n }\n\n if (c1 === FULL_STOP) {\n return isDigit(c2);\n }\n\n return isDigit(c1);\n};\n\nconst stringToNumber = (codePoints: number[]): number => {\n let c = 0;\n let sign = 1;\n if (codePoints[c] === PLUS_SIGN || codePoints[c] === HYPHEN_MINUS) {\n if (codePoints[c] === HYPHEN_MINUS) {\n sign = -1;\n }\n c++;\n }\n\n const integers = [];\n\n while (isDigit(codePoints[c])) {\n integers.push(codePoints[c++]);\n }\n\n const int = integers.length ? parseInt(fromCodePoint(...integers), 10) : 0;\n\n if (codePoints[c] === FULL_STOP) {\n c++;\n }\n\n const fraction = [];\n while (isDigit(codePoints[c])) {\n fraction.push(codePoints[c++]);\n }\n\n const fracd = fraction.length;\n const frac = fracd ? parseInt(fromCodePoint(...fraction), 10) : 0;\n\n if (codePoints[c] === E || codePoints[c] === e) {\n c++;\n }\n\n let expsign = 1;\n\n if (codePoints[c] === PLUS_SIGN || codePoints[c] === HYPHEN_MINUS) {\n if (codePoints[c] === HYPHEN_MINUS) {\n expsign = -1;\n }\n c++;\n }\n\n const exponent = [];\n\n while (isDigit(codePoints[c])) {\n exponent.push(codePoints[c++]);\n }\n\n const exp = exponent.length ? parseInt(fromCodePoint(...exponent), 10) : 0;\n\n return sign * (int + frac * Math.pow(10, -fracd)) * Math.pow(10, expsign * exp);\n};\n\nconst LEFT_PARENTHESIS_TOKEN: Token = {\n type: TokenType.LEFT_PARENTHESIS_TOKEN\n};\nconst RIGHT_PARENTHESIS_TOKEN: Token = {\n type: TokenType.RIGHT_PARENTHESIS_TOKEN\n};\nconst COMMA_TOKEN: Token = {type: TokenType.COMMA_TOKEN};\nconst SUFFIX_MATCH_TOKEN: Token = {type: TokenType.SUFFIX_MATCH_TOKEN};\nconst PREFIX_MATCH_TOKEN: Token = {type: TokenType.PREFIX_MATCH_TOKEN};\nconst COLUMN_TOKEN: Token = {type: TokenType.COLUMN_TOKEN};\nconst DASH_MATCH_TOKEN: Token = {type: TokenType.DASH_MATCH_TOKEN};\nconst INCLUDE_MATCH_TOKEN: Token = {type: TokenType.INCLUDE_MATCH_TOKEN};\nconst LEFT_CURLY_BRACKET_TOKEN: Token = {\n type: TokenType.LEFT_CURLY_BRACKET_TOKEN\n};\nconst RIGHT_CURLY_BRACKET_TOKEN: Token = {\n type: TokenType.RIGHT_CURLY_BRACKET_TOKEN\n};\nconst SUBSTRING_MATCH_TOKEN: Token = {type: TokenType.SUBSTRING_MATCH_TOKEN};\nconst BAD_URL_TOKEN: Token = {type: TokenType.BAD_URL_TOKEN};\nconst BAD_STRING_TOKEN: Token = {type: TokenType.BAD_STRING_TOKEN};\nconst CDO_TOKEN: Token = {type: TokenType.CDO_TOKEN};\nconst CDC_TOKEN: Token = {type: TokenType.CDC_TOKEN};\nconst COLON_TOKEN: Token = {type: TokenType.COLON_TOKEN};\nconst SEMICOLON_TOKEN: Token = {type: TokenType.SEMICOLON_TOKEN};\nconst LEFT_SQUARE_BRACKET_TOKEN: Token = {\n type: TokenType.LEFT_SQUARE_BRACKET_TOKEN\n};\nconst RIGHT_SQUARE_BRACKET_TOKEN: Token = {\n type: TokenType.RIGHT_SQUARE_BRACKET_TOKEN\n};\nconst WHITESPACE_TOKEN: Token = {type: TokenType.WHITESPACE_TOKEN};\nexport const EOF_TOKEN: Token = {type: TokenType.EOF_TOKEN};\n\nexport class Tokenizer {\n private _value: number[];\n\n constructor() {\n this._value = [];\n }\n\n write(chunk: string): void {\n this._value = this._value.concat(toCodePoints(chunk));\n }\n\n read(): CSSToken[] {\n const tokens = [];\n let token = this.consumeToken();\n while (token !== EOF_TOKEN) {\n tokens.push(token);\n token = this.consumeToken();\n }\n return tokens;\n }\n\n private consumeToken(): CSSToken {\n const codePoint = this.consumeCodePoint();\n\n switch (codePoint) {\n case QUOTATION_MARK:\n return this.consumeStringToken(QUOTATION_MARK);\n case NUMBER_SIGN:\n const c1 = this.peekCodePoint(0);\n const c2 = this.peekCodePoint(1);\n const c3 = this.peekCodePoint(2);\n if (isNameCodePoint(c1) || isValidEscape(c2, c3)) {\n const flags = isIdentifierStart(c1, c2, c3) ? FLAG_ID : FLAG_UNRESTRICTED;\n const value = this.consumeName();\n\n return {type: TokenType.HASH_TOKEN, value, flags};\n }\n break;\n case DOLLAR_SIGN:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return SUFFIX_MATCH_TOKEN;\n }\n break;\n case APOSTROPHE:\n return this.consumeStringToken(APOSTROPHE);\n case LEFT_PARENTHESIS:\n return LEFT_PARENTHESIS_TOKEN;\n case RIGHT_PARENTHESIS:\n return RIGHT_PARENTHESIS_TOKEN;\n case ASTERISK:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return SUBSTRING_MATCH_TOKEN;\n }\n break;\n case PLUS_SIGN:\n if (isNumberStart(codePoint, this.peekCodePoint(0), this.peekCodePoint(1))) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n break;\n case COMMA:\n return COMMA_TOKEN;\n case HYPHEN_MINUS:\n const e1 = codePoint;\n const e2 = this.peekCodePoint(0);\n const e3 = this.peekCodePoint(1);\n\n if (isNumberStart(e1, e2, e3)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n\n if (isIdentifierStart(e1, e2, e3)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n }\n\n if (e2 === HYPHEN_MINUS && e3 === GREATER_THAN_SIGN) {\n this.consumeCodePoint();\n this.consumeCodePoint();\n return CDC_TOKEN;\n }\n break;\n\n case FULL_STOP:\n if (isNumberStart(codePoint, this.peekCodePoint(0), this.peekCodePoint(1))) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n break;\n case SOLIDUS:\n if (this.peekCodePoint(0) === ASTERISK) {\n this.consumeCodePoint();\n while (true) {\n let c = this.consumeCodePoint();\n if (c === ASTERISK) {\n c = this.consumeCodePoint();\n if (c === SOLIDUS) {\n return this.consumeToken();\n }\n }\n if (c === EOF) {\n return this.consumeToken();\n }\n }\n }\n break;\n case COLON:\n return COLON_TOKEN;\n case SEMICOLON:\n return SEMICOLON_TOKEN;\n case LESS_THAN_SIGN:\n if (\n this.peekCodePoint(0) === EXCLAMATION_MARK &&\n this.peekCodePoint(1) === HYPHEN_MINUS &&\n this.peekCodePoint(2) === HYPHEN_MINUS\n ) {\n this.consumeCodePoint();\n this.consumeCodePoint();\n return CDO_TOKEN;\n }\n break;\n case COMMERCIAL_AT:\n const a1 = this.peekCodePoint(0);\n const a2 = this.peekCodePoint(1);\n const a3 = this.peekCodePoint(2);\n if (isIdentifierStart(a1, a2, a3)) {\n const value = this.consumeName();\n return {type: TokenType.AT_KEYWORD_TOKEN, value};\n }\n break;\n case LEFT_SQUARE_BRACKET:\n return LEFT_SQUARE_BRACKET_TOKEN;\n case REVERSE_SOLIDUS:\n if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n }\n break;\n case RIGHT_SQUARE_BRACKET:\n return RIGHT_SQUARE_BRACKET_TOKEN;\n case CIRCUMFLEX_ACCENT:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return PREFIX_MATCH_TOKEN;\n }\n break;\n case LEFT_CURLY_BRACKET:\n return LEFT_CURLY_BRACKET_TOKEN;\n case RIGHT_CURLY_BRACKET:\n return RIGHT_CURLY_BRACKET_TOKEN;\n case u:\n case U:\n const u1 = this.peekCodePoint(0);\n const u2 = this.peekCodePoint(1);\n if (u1 === PLUS_SIGN && (isHex(u2) || u2 === QUESTION_MARK)) {\n this.consumeCodePoint();\n this.consumeUnicodeRangeToken();\n }\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n case VERTICAL_LINE:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return DASH_MATCH_TOKEN;\n }\n if (this.peekCodePoint(0) === VERTICAL_LINE) {\n this.consumeCodePoint();\n return COLUMN_TOKEN;\n }\n break;\n case TILDE:\n if (this.peekCodePoint(0) === EQUALS_SIGN) {\n this.consumeCodePoint();\n return INCLUDE_MATCH_TOKEN;\n }\n break;\n case EOF:\n return EOF_TOKEN;\n }\n\n if (isWhiteSpace(codePoint)) {\n this.consumeWhiteSpace();\n return WHITESPACE_TOKEN;\n }\n\n if (isDigit(codePoint)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeNumericToken();\n }\n\n if (isNameStartCodePoint(codePoint)) {\n this.reconsumeCodePoint(codePoint);\n return this.consumeIdentLikeToken();\n }\n\n return {type: TokenType.DELIM_TOKEN, value: fromCodePoint(codePoint)};\n }\n\n private consumeCodePoint(): number {\n const value = this._value.shift();\n\n return typeof value === 'undefined' ? -1 : value;\n }\n\n private reconsumeCodePoint(codePoint: number) {\n this._value.unshift(codePoint);\n }\n\n private peekCodePoint(delta: number): number {\n if (delta >= this._value.length) {\n return -1;\n }\n\n return this._value[delta];\n }\n\n private consumeUnicodeRangeToken(): UnicodeRangeToken {\n const digits = [];\n let codePoint = this.consumeCodePoint();\n while (isHex(codePoint) && digits.length < 6) {\n digits.push(codePoint);\n codePoint = this.consumeCodePoint();\n }\n let questionMarks = false;\n while (codePoint === QUESTION_MARK && digits.length < 6) {\n digits.push(codePoint);\n codePoint = this.consumeCodePoint();\n questionMarks = true;\n }\n\n if (questionMarks) {\n const start = parseInt(\n fromCodePoint(...digits.map((digit) => (digit === QUESTION_MARK ? ZERO : digit))),\n 16\n );\n const end = parseInt(fromCodePoint(...digits.map((digit) => (digit === QUESTION_MARK ? F : digit))), 16);\n return {type: TokenType.UNICODE_RANGE_TOKEN, start, end};\n }\n\n const start = parseInt(fromCodePoint(...digits), 16);\n if (this.peekCodePoint(0) === HYPHEN_MINUS && isHex(this.peekCodePoint(1))) {\n this.consumeCodePoint();\n codePoint = this.consumeCodePoint();\n const endDigits = [];\n while (isHex(codePoint) && endDigits.length < 6) {\n endDigits.push(codePoint);\n codePoint = this.consumeCodePoint();\n }\n const end = parseInt(fromCodePoint(...endDigits), 16);\n\n return {type: TokenType.UNICODE_RANGE_TOKEN, start, end};\n } else {\n return {type: TokenType.UNICODE_RANGE_TOKEN, start, end: start};\n }\n }\n\n private consumeIdentLikeToken(): StringValueToken | Token {\n const value = this.consumeName();\n if (value.toLowerCase() === 'url' && this.peekCodePoint(0) === LEFT_PARENTHESIS) {\n this.consumeCodePoint();\n return this.consumeUrlToken();\n } else if (this.peekCodePoint(0) === LEFT_PARENTHESIS) {\n this.consumeCodePoint();\n return {type: TokenType.FUNCTION_TOKEN, value};\n }\n\n return {type: TokenType.IDENT_TOKEN, value};\n }\n\n private consumeUrlToken(): StringValueToken | Token {\n const value = [];\n this.consumeWhiteSpace();\n\n if (this.peekCodePoint(0) === EOF) {\n return {type: TokenType.URL_TOKEN, value: ''};\n }\n\n const next = this.peekCodePoint(0);\n if (next === APOSTROPHE || next === QUOTATION_MARK) {\n const stringToken = this.consumeStringToken(this.consumeCodePoint());\n if (stringToken.type === TokenType.STRING_TOKEN) {\n this.consumeWhiteSpace();\n\n if (this.peekCodePoint(0) === EOF || this.peekCodePoint(0) === RIGHT_PARENTHESIS) {\n this.consumeCodePoint();\n return {type: TokenType.URL_TOKEN, value: stringToken.value};\n }\n }\n\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n }\n\n while (true) {\n const codePoint = this.consumeCodePoint();\n if (codePoint === EOF || codePoint === RIGHT_PARENTHESIS) {\n return {type: TokenType.URL_TOKEN, value: fromCodePoint(...value)};\n } else if (isWhiteSpace(codePoint)) {\n this.consumeWhiteSpace();\n if (this.peekCodePoint(0) === EOF || this.peekCodePoint(0) === RIGHT_PARENTHESIS) {\n this.consumeCodePoint();\n return {type: TokenType.URL_TOKEN, value: fromCodePoint(...value)};\n }\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n } else if (\n codePoint === QUOTATION_MARK ||\n codePoint === APOSTROPHE ||\n codePoint === LEFT_PARENTHESIS ||\n isNonPrintableCodePoint(codePoint)\n ) {\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n } else if (codePoint === REVERSE_SOLIDUS) {\n if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n value.push(this.consumeEscapedCodePoint());\n } else {\n this.consumeBadUrlRemnants();\n return BAD_URL_TOKEN;\n }\n } else {\n value.push(codePoint);\n }\n }\n }\n\n private consumeWhiteSpace(): void {\n while (isWhiteSpace(this.peekCodePoint(0))) {\n this.consumeCodePoint();\n }\n }\n\n private consumeBadUrlRemnants(): void {\n while (true) {\n const codePoint = this.consumeCodePoint();\n if (codePoint === RIGHT_PARENTHESIS || codePoint === EOF) {\n return;\n }\n\n if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n this.consumeEscapedCodePoint();\n }\n }\n }\n\n private consumeStringSlice(count: number): string {\n const SLICE_STACK_SIZE = 50000;\n let value = '';\n while (count > 0) {\n const amount = Math.min(SLICE_STACK_SIZE, count);\n value += fromCodePoint(...this._value.splice(0, amount));\n count -= amount;\n }\n this._value.shift();\n\n return value;\n }\n\n private consumeStringToken(endingCodePoint: number): StringValueToken | Token {\n let value = '';\n let i = 0;\n\n do {\n const codePoint = this._value[i];\n if (codePoint === EOF || codePoint === undefined || codePoint === endingCodePoint) {\n value += this.consumeStringSlice(i);\n return {type: TokenType.STRING_TOKEN, value};\n }\n\n if (codePoint === LINE_FEED) {\n this._value.splice(0, i);\n return BAD_STRING_TOKEN;\n }\n\n if (codePoint === REVERSE_SOLIDUS) {\n const next = this._value[i + 1];\n if (next !== EOF && next !== undefined) {\n if (next === LINE_FEED) {\n value += this.consumeStringSlice(i);\n i = -1;\n this._value.shift();\n } else if (isValidEscape(codePoint, next)) {\n value += this.consumeStringSlice(i);\n value += fromCodePoint(this.consumeEscapedCodePoint());\n i = -1;\n }\n }\n }\n\n i++;\n } while (true);\n }\n\n private consumeNumber() {\n const repr = [];\n let type = FLAG_INTEGER;\n let c1 = this.peekCodePoint(0);\n if (c1 === PLUS_SIGN || c1 === HYPHEN_MINUS) {\n repr.push(this.consumeCodePoint());\n }\n\n while (isDigit(this.peekCodePoint(0))) {\n repr.push(this.consumeCodePoint());\n }\n c1 = this.peekCodePoint(0);\n let c2 = this.peekCodePoint(1);\n if (c1 === FULL_STOP && isDigit(c2)) {\n repr.push(this.consumeCodePoint(), this.consumeCodePoint());\n type = FLAG_NUMBER;\n while (isDigit(this.peekCodePoint(0))) {\n repr.push(this.consumeCodePoint());\n }\n }\n\n c1 = this.peekCodePoint(0);\n c2 = this.peekCodePoint(1);\n const c3 = this.peekCodePoint(2);\n if ((c1 === E || c1 === e) && (((c2 === PLUS_SIGN || c2 === HYPHEN_MINUS) && isDigit(c3)) || isDigit(c2))) {\n repr.push(this.consumeCodePoint(), this.consumeCodePoint());\n type = FLAG_NUMBER;\n while (isDigit(this.peekCodePoint(0))) {\n repr.push(this.consumeCodePoint());\n }\n }\n\n return [stringToNumber(repr), type];\n }\n\n private consumeNumericToken(): NumberValueToken | DimensionToken {\n const [number, flags] = this.consumeNumber();\n const c1 = this.peekCodePoint(0);\n const c2 = this.peekCodePoint(1);\n const c3 = this.peekCodePoint(2);\n\n if (isIdentifierStart(c1, c2, c3)) {\n const unit = this.consumeName();\n return {type: TokenType.DIMENSION_TOKEN, number, flags, unit};\n }\n\n if (c1 === PERCENTAGE_SIGN) {\n this.consumeCodePoint();\n return {type: TokenType.PERCENTAGE_TOKEN, number, flags};\n }\n\n return {type: TokenType.NUMBER_TOKEN, number, flags};\n }\n\n private consumeEscapedCodePoint(): number {\n const codePoint = this.consumeCodePoint();\n\n if (isHex(codePoint)) {\n let hex = fromCodePoint(codePoint);\n while (isHex(this.peekCodePoint(0)) && hex.length < 6) {\n hex += fromCodePoint(this.consumeCodePoint());\n }\n\n if (isWhiteSpace(this.peekCodePoint(0))) {\n this.consumeCodePoint();\n }\n\n const hexCodePoint = parseInt(hex, 16);\n\n if (hexCodePoint === 0 || isSurrogateCodePoint(hexCodePoint) || hexCodePoint > 0x10ffff) {\n return REPLACEMENT_CHARACTER;\n }\n\n return hexCodePoint;\n }\n\n if (codePoint === EOF) {\n return REPLACEMENT_CHARACTER;\n }\n\n return codePoint;\n }\n\n private consumeName(): string {\n let result = '';\n while (true) {\n const codePoint = this.consumeCodePoint();\n if (isNameCodePoint(codePoint)) {\n result += fromCodePoint(codePoint);\n } else if (isValidEscape(codePoint, this.peekCodePoint(0))) {\n result += fromCodePoint(this.consumeEscapedCodePoint());\n } else {\n this.reconsumeCodePoint(codePoint);\n return result;\n }\n }\n }\n}\n","import {\n CSSToken,\n DimensionToken,\n EOF_TOKEN,\n NumberValueToken,\n StringValueToken,\n Tokenizer,\n TokenType\n} from './tokenizer';\n\nexport type CSSBlockType =\n | TokenType.LEFT_PARENTHESIS_TOKEN\n | TokenType.LEFT_SQUARE_BRACKET_TOKEN\n | TokenType.LEFT_CURLY_BRACKET_TOKEN;\n\nexport interface CSSBlock {\n type: CSSBlockType;\n values: CSSValue[];\n}\n\nexport interface CSSFunction {\n type: TokenType.FUNCTION;\n name: string;\n values: CSSValue[];\n}\n\nexport type CSSValue = CSSFunction | CSSToken | CSSBlock;\n\nexport class Parser {\n private _tokens: CSSToken[];\n\n constructor(tokens: CSSToken[]) {\n this._tokens = tokens;\n }\n\n static create(value: string): Parser {\n const tokenizer = new Tokenizer();\n tokenizer.write(value);\n return new Parser(tokenizer.read());\n }\n\n static parseValue(value: string): CSSValue {\n return Parser.create(value).parseComponentValue();\n }\n\n static parseValues(value: string): CSSValue[] {\n return Parser.create(value).parseComponentValues();\n }\n\n parseComponentValue(): CSSValue {\n let token = this.consumeToken();\n while (token.type === TokenType.WHITESPACE_TOKEN) {\n token = this.consumeToken();\n }\n\n if (token.type === TokenType.EOF_TOKEN) {\n throw new SyntaxError(`Error parsing CSS component value, unexpected EOF`);\n }\n\n this.reconsumeToken(token);\n const value = this.consumeComponentValue();\n\n do {\n token = this.consumeToken();\n } while (token.type === TokenType.WHITESPACE_TOKEN);\n\n if (token.type === TokenType.EOF_TOKEN) {\n return value;\n }\n\n throw new SyntaxError(`Error parsing CSS component value, multiple values found when expecting only one`);\n }\n\n parseComponentValues(): CSSValue[] {\n const values = [];\n while (true) {\n const value = this.consumeComponentValue();\n if (value.type === TokenType.EOF_TOKEN) {\n return values;\n }\n values.push(value);\n values.push();\n }\n }\n\n private consumeComponentValue(): CSSValue {\n const token = this.consumeToken();\n\n switch (token.type) {\n case TokenType.LEFT_CURLY_BRACKET_TOKEN:\n case TokenType.LEFT_SQUARE_BRACKET_TOKEN:\n case TokenType.LEFT_PARENTHESIS_TOKEN:\n return this.consumeSimpleBlock(token.type);\n case TokenType.FUNCTION_TOKEN:\n return this.consumeFunction(token);\n }\n\n return token;\n }\n\n private consumeSimpleBlock(type: CSSBlockType): CSSBlock {\n const block: CSSBlock = {type, values: []};\n\n let token = this.consumeToken();\n while (true) {\n if (token.type === TokenType.EOF_TOKEN || isEndingTokenFor(token, type)) {\n return block;\n }\n\n this.reconsumeToken(token);\n block.values.push(this.consumeComponentValue());\n token = this.consumeToken();\n }\n }\n\n private consumeFunction(functionToken: StringValueToken): CSSFunction {\n const cssFunction: CSSFunction = {\n name: functionToken.value,\n values: [],\n type: TokenType.FUNCTION\n };\n\n while (true) {\n const token = this.consumeToken();\n if (token.type === TokenType.EOF_TOKEN || token.type === TokenType.RIGHT_PARENTHESIS_TOKEN) {\n return cssFunction;\n }\n\n this.reconsumeToken(token);\n cssFunction.values.push(this.consumeComponentValue());\n }\n }\n\n private consumeToken(): CSSToken {\n const token = this._tokens.shift();\n return typeof token === 'undefined' ? EOF_TOKEN : token;\n }\n\n private reconsumeToken(token: CSSToken): void {\n this._tokens.unshift(token);\n }\n}\n\nexport const isDimensionToken = (token: CSSValue): token is DimensionToken => token.type === TokenType.DIMENSION_TOKEN;\nexport const isNumberToken = (token: CSSValue): token is NumberValueToken => token.type === TokenType.NUMBER_TOKEN;\nexport const isIdentToken = (token: CSSValue): token is StringValueToken => token.type === TokenType.IDENT_TOKEN;\nexport const isStringToken = (token: CSSValue): token is StringValueToken => token.type === TokenType.STRING_TOKEN;\nexport const isIdentWithValue = (token: CSSValue, value: string): boolean =>\n isIdentToken(token) && token.value === value;\n\nexport const nonWhiteSpace = (token: CSSValue): boolean => token.type !== TokenType.WHITESPACE_TOKEN;\nexport const nonFunctionArgSeparator = (token: CSSValue): boolean =>\n token.type !== TokenType.WHITESPACE_TOKEN && token.type !== TokenType.COMMA_TOKEN;\n\nexport const parseFunctionArgs = (tokens: CSSValue[]): CSSValue[][] => {\n const args: CSSValue[][] = [];\n let arg: CSSValue[] = [];\n tokens.forEach((token) => {\n if (token.type === TokenType.COMMA_TOKEN) {\n if (arg.length === 0) {\n throw new Error(`Error parsing function args, zero tokens for arg`);\n }\n args.push(arg);\n arg = [];\n return;\n }\n\n if (token.type !== TokenType.WHITESPACE_TOKEN) {\n arg.push(token);\n }\n });\n if (arg.length) {\n args.push(arg);\n }\n\n return args;\n};\n\nconst isEndingTokenFor = (token: CSSToken, type: CSSBlockType): boolean => {\n if (type === TokenType.LEFT_CURLY_BRACKET_TOKEN && token.type === TokenType.RIGHT_CURLY_BRACKET_TOKEN) {\n return true;\n }\n if (type === TokenType.LEFT_SQUARE_BRACKET_TOKEN && token.type === TokenType.RIGHT_SQUARE_BRACKET_TOKEN) {\n return true;\n }\n\n return type === TokenType.LEFT_PARENTHESIS_TOKEN && token.type === TokenType.RIGHT_PARENTHESIS_TOKEN;\n};\n","import {CSSValue} from '../syntax/parser';\nimport {DimensionToken, NumberValueToken, TokenType} from '../syntax/tokenizer';\n\nexport type Length = DimensionToken | NumberValueToken;\n\nexport const isLength = (token: CSSValue): token is Length =>\n token.type === TokenType.NUMBER_TOKEN || token.type === TokenType.DIMENSION_TOKEN;\n","import {DimensionToken, FLAG_INTEGER, NumberValueToken, TokenType} from '../syntax/tokenizer';\nimport {CSSValue, isDimensionToken} from '../syntax/parser';\nimport {isLength} from './length';\nexport type LengthPercentage = DimensionToken | NumberValueToken;\nexport type LengthPercentageTuple = [LengthPercentage] | [LengthPercentage, LengthPercentage];\n\nexport const isLengthPercentage = (token: CSSValue): token is LengthPercentage =>\n token.type === TokenType.PERCENTAGE_TOKEN || isLength(token);\nexport const parseLengthPercentageTuple = (tokens: LengthPercentage[]): LengthPercentageTuple =>\n tokens.length > 1 ? [tokens[0], tokens[1]] : [tokens[0]];\nexport const ZERO_LENGTH: NumberValueToken = {\n type: TokenType.NUMBER_TOKEN,\n number: 0,\n flags: FLAG_INTEGER\n};\n\nexport const FIFTY_PERCENT: NumberValueToken = {\n type: TokenType.PERCENTAGE_TOKEN,\n number: 50,\n flags: FLAG_INTEGER\n};\n\nexport const HUNDRED_PERCENT: NumberValueToken = {\n type: TokenType.PERCENTAGE_TOKEN,\n number: 100,\n flags: FLAG_INTEGER\n};\n\nexport const getAbsoluteValueForTuple = (\n tuple: LengthPercentageTuple,\n width: number,\n height: number\n): [number, number] => {\n const [x, y] = tuple;\n return [getAbsoluteValue(x, width), getAbsoluteValue(typeof y !== 'undefined' ? y : x, height)];\n};\nexport const getAbsoluteValue = (token: LengthPercentage, parent: number): number => {\n if (token.type === TokenType.PERCENTAGE_TOKEN) {\n return (token.number / 100) * parent;\n }\n\n if (isDimensionToken(token)) {\n switch (token.unit) {\n case 'rem':\n case 'em':\n return 16 * token.number; // TODO use correct font-size\n case 'px':\n default:\n return token.number;\n }\n }\n\n return token.number;\n};\n","import {CSSValue, isIdentToken} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {ITypeDescriptor} from '../ITypeDescriptor';\nimport {HUNDRED_PERCENT, ZERO_LENGTH} from './length-percentage';\nimport {GradientCorner} from './image';\nimport {Context} from '../../core/context';\n\nconst DEG = 'deg';\nconst GRAD = 'grad';\nconst RAD = 'rad';\nconst TURN = 'turn';\n\nexport const angle: ITypeDescriptor = {\n name: 'angle',\n parse: (_context: Context, value: CSSValue): number => {\n if (value.type === TokenType.DIMENSION_TOKEN) {\n switch (value.unit) {\n case DEG:\n return (Math.PI * value.number) / 180;\n case GRAD:\n return (Math.PI / 200) * value.number;\n case RAD:\n return value.number;\n case TURN:\n return Math.PI * 2 * value.number;\n }\n }\n\n throw new Error(`Unsupported angle type`);\n }\n};\n\nexport const isAngle = (value: CSSValue): boolean => {\n if (value.type === TokenType.DIMENSION_TOKEN) {\n if (value.unit === DEG || value.unit === GRAD || value.unit === RAD || value.unit === TURN) {\n return true;\n }\n }\n return false;\n};\n\nexport const parseNamedSide = (tokens: CSSValue[]): number | GradientCorner => {\n const sideOrCorner = tokens\n .filter(isIdentToken)\n .map((ident) => ident.value)\n .join(' ');\n\n switch (sideOrCorner) {\n case 'to bottom right':\n case 'to right bottom':\n case 'left top':\n case 'top left':\n return [ZERO_LENGTH, ZERO_LENGTH];\n case 'to top':\n case 'bottom':\n return deg(0);\n case 'to bottom left':\n case 'to left bottom':\n case 'right top':\n case 'top right':\n return [ZERO_LENGTH, HUNDRED_PERCENT];\n case 'to right':\n case 'left':\n return deg(90);\n case 'to top left':\n case 'to left top':\n case 'right bottom':\n case 'bottom right':\n return [HUNDRED_PERCENT, HUNDRED_PERCENT];\n case 'to bottom':\n case 'top':\n return deg(180);\n case 'to top right':\n case 'to right top':\n case 'left bottom':\n case 'bottom left':\n return [HUNDRED_PERCENT, ZERO_LENGTH];\n case 'to left':\n case 'right':\n return deg(270);\n }\n\n return 0;\n};\n\nexport const deg = (deg: number): number => (Math.PI * deg) / 180;\n","import {CSSValue, nonFunctionArgSeparator, Parser} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {ITypeDescriptor} from '../ITypeDescriptor';\nimport {angle, deg} from './angle';\nimport {getAbsoluteValue, isLengthPercentage} from './length-percentage';\nimport {Context} from '../../core/context';\nexport type Color = number;\n\nexport const color: ITypeDescriptor = {\n name: 'color',\n parse: (context: Context, value: CSSValue): Color => {\n if (value.type === TokenType.FUNCTION) {\n const colorFunction = SUPPORTED_COLOR_FUNCTIONS[value.name];\n if (typeof colorFunction === 'undefined') {\n throw new Error(`Attempting to parse an unsupported color function \"${value.name}\"`);\n }\n return colorFunction(context, value.values);\n }\n\n if (value.type === TokenType.HASH_TOKEN) {\n if (value.value.length === 3) {\n const r = value.value.substring(0, 1);\n const g = value.value.substring(1, 2);\n const b = value.value.substring(2, 3);\n return pack(parseInt(r + r, 16), parseInt(g + g, 16), parseInt(b + b, 16), 1);\n }\n\n if (value.value.length === 4) {\n const r = value.value.substring(0, 1);\n const g = value.value.substring(1, 2);\n const b = value.value.substring(2, 3);\n const a = value.value.substring(3, 4);\n return pack(parseInt(r + r, 16), parseInt(g + g, 16), parseInt(b + b, 16), parseInt(a + a, 16) / 255);\n }\n\n if (value.value.length === 6) {\n const r = value.value.substring(0, 2);\n const g = value.value.substring(2, 4);\n const b = value.value.substring(4, 6);\n return pack(parseInt(r, 16), parseInt(g, 16), parseInt(b, 16), 1);\n }\n\n if (value.value.length === 8) {\n const r = value.value.substring(0, 2);\n const g = value.value.substring(2, 4);\n const b = value.value.substring(4, 6);\n const a = value.value.substring(6, 8);\n return pack(parseInt(r, 16), parseInt(g, 16), parseInt(b, 16), parseInt(a, 16) / 255);\n }\n }\n\n if (value.type === TokenType.IDENT_TOKEN) {\n const namedColor = COLORS[value.value.toUpperCase()];\n if (typeof namedColor !== 'undefined') {\n return namedColor;\n }\n }\n\n return COLORS.TRANSPARENT;\n }\n};\n\nexport const isTransparent = (color: Color): boolean => (0xff & color) === 0;\n\nexport const asString = (color: Color): string => {\n const alpha = 0xff & color;\n const blue = 0xff & (color >> 8);\n const green = 0xff & (color >> 16);\n const red = 0xff & (color >> 24);\n return alpha < 255 ? `rgba(${red},${green},${blue},${alpha / 255})` : `rgb(${red},${green},${blue})`;\n};\n\nexport const pack = (r: number, g: number, b: number, a: number): Color =>\n ((r << 24) | (g << 16) | (b << 8) | (Math.round(a * 255) << 0)) >>> 0;\n\nconst getTokenColorValue = (token: CSSValue, i: number): number => {\n if (token.type === TokenType.NUMBER_TOKEN) {\n return token.number;\n }\n\n if (token.type === TokenType.PERCENTAGE_TOKEN) {\n const max = i === 3 ? 1 : 255;\n return i === 3 ? (token.number / 100) * max : Math.round((token.number / 100) * max);\n }\n\n return 0;\n};\n\nconst rgb = (_context: Context, args: CSSValue[]): number => {\n const tokens = args.filter(nonFunctionArgSeparator);\n\n if (tokens.length === 3) {\n const [r, g, b] = tokens.map(getTokenColorValue);\n return pack(r, g, b, 1);\n }\n\n if (tokens.length === 4) {\n const [r, g, b, a] = tokens.map(getTokenColorValue);\n return pack(r, g, b, a);\n }\n\n return 0;\n};\n\nfunction hue2rgb(t1: number, t2: number, hue: number): number {\n if (hue < 0) {\n hue += 1;\n }\n if (hue >= 1) {\n hue -= 1;\n }\n\n if (hue < 1 / 6) {\n return (t2 - t1) * hue * 6 + t1;\n } else if (hue < 1 / 2) {\n return t2;\n } else if (hue < 2 / 3) {\n return (t2 - t1) * 6 * (2 / 3 - hue) + t1;\n } else {\n return t1;\n }\n}\n\nconst hsl = (context: Context, args: CSSValue[]): number => {\n const tokens = args.filter(nonFunctionArgSeparator);\n const [hue, saturation, lightness, alpha] = tokens;\n\n const h = (hue.type === TokenType.NUMBER_TOKEN ? deg(hue.number) : angle.parse(context, hue)) / (Math.PI * 2);\n const s = isLengthPercentage(saturation) ? saturation.number / 100 : 0;\n const l = isLengthPercentage(lightness) ? lightness.number / 100 : 0;\n const a = typeof alpha !== 'undefined' && isLengthPercentage(alpha) ? getAbsoluteValue(alpha, 1) : 1;\n\n if (s === 0) {\n return pack(l * 255, l * 255, l * 255, 1);\n }\n\n const t2 = l <= 0.5 ? l * (s + 1) : l + s - l * s;\n\n const t1 = l * 2 - t2;\n const r = hue2rgb(t1, t2, h + 1 / 3);\n const g = hue2rgb(t1, t2, h);\n const b = hue2rgb(t1, t2, h - 1 / 3);\n return pack(r * 255, g * 255, b * 255, a);\n};\n\nconst SUPPORTED_COLOR_FUNCTIONS: {\n [key: string]: (context: Context, args: CSSValue[]) => number;\n} = {\n hsl: hsl,\n hsla: hsl,\n rgb: rgb,\n rgba: rgb\n};\n\nexport const parseColor = (context: Context, value: string): Color =>\n color.parse(context, Parser.create(value).parseComponentValue());\n\nexport const COLORS: {[key: string]: Color} = {\n ALICEBLUE: 0xf0f8ffff,\n ANTIQUEWHITE: 0xfaebd7ff,\n AQUA: 0x00ffffff,\n AQUAMARINE: 0x7fffd4ff,\n AZURE: 0xf0ffffff,\n BEIGE: 0xf5f5dcff,\n BISQUE: 0xffe4c4ff,\n BLACK: 0x000000ff,\n BLANCHEDALMOND: 0xffebcdff,\n BLUE: 0x0000ffff,\n BLUEVIOLET: 0x8a2be2ff,\n BROWN: 0xa52a2aff,\n BURLYWOOD: 0xdeb887ff,\n CADETBLUE: 0x5f9ea0ff,\n CHARTREUSE: 0x7fff00ff,\n CHOCOLATE: 0xd2691eff,\n CORAL: 0xff7f50ff,\n CORNFLOWERBLUE: 0x6495edff,\n CORNSILK: 0xfff8dcff,\n CRIMSON: 0xdc143cff,\n CYAN: 0x00ffffff,\n DARKBLUE: 0x00008bff,\n DARKCYAN: 0x008b8bff,\n DARKGOLDENROD: 0xb886bbff,\n DARKGRAY: 0xa9a9a9ff,\n DARKGREEN: 0x006400ff,\n DARKGREY: 0xa9a9a9ff,\n DARKKHAKI: 0xbdb76bff,\n DARKMAGENTA: 0x8b008bff,\n DARKOLIVEGREEN: 0x556b2fff,\n DARKORANGE: 0xff8c00ff,\n DARKORCHID: 0x9932ccff,\n DARKRED: 0x8b0000ff,\n DARKSALMON: 0xe9967aff,\n DARKSEAGREEN: 0x8fbc8fff,\n DARKSLATEBLUE: 0x483d8bff,\n DARKSLATEGRAY: 0x2f4f4fff,\n DARKSLATEGREY: 0x2f4f4fff,\n DARKTURQUOISE: 0x00ced1ff,\n DARKVIOLET: 0x9400d3ff,\n DEEPPINK: 0xff1493ff,\n DEEPSKYBLUE: 0x00bfffff,\n DIMGRAY: 0x696969ff,\n DIMGREY: 0x696969ff,\n DODGERBLUE: 0x1e90ffff,\n FIREBRICK: 0xb22222ff,\n FLORALWHITE: 0xfffaf0ff,\n FORESTGREEN: 0x228b22ff,\n FUCHSIA: 0xff00ffff,\n GAINSBORO: 0xdcdcdcff,\n GHOSTWHITE: 0xf8f8ffff,\n GOLD: 0xffd700ff,\n GOLDENROD: 0xdaa520ff,\n GRAY: 0x808080ff,\n GREEN: 0x008000ff,\n GREENYELLOW: 0xadff2fff,\n GREY: 0x808080ff,\n HONEYDEW: 0xf0fff0ff,\n HOTPINK: 0xff69b4ff,\n INDIANRED: 0xcd5c5cff,\n INDIGO: 0x4b0082ff,\n IVORY: 0xfffff0ff,\n KHAKI: 0xf0e68cff,\n LAVENDER: 0xe6e6faff,\n LAVENDERBLUSH: 0xfff0f5ff,\n LAWNGREEN: 0x7cfc00ff,\n LEMONCHIFFON: 0xfffacdff,\n LIGHTBLUE: 0xadd8e6ff,\n LIGHTCORAL: 0xf08080ff,\n LIGHTCYAN: 0xe0ffffff,\n LIGHTGOLDENRODYELLOW: 0xfafad2ff,\n LIGHTGRAY: 0xd3d3d3ff,\n LIGHTGREEN: 0x90ee90ff,\n LIGHTGREY: 0xd3d3d3ff,\n LIGHTPINK: 0xffb6c1ff,\n LIGHTSALMON: 0xffa07aff,\n LIGHTSEAGREEN: 0x20b2aaff,\n LIGHTSKYBLUE: 0x87cefaff,\n LIGHTSLATEGRAY: 0x778899ff,\n LIGHTSLATEGREY: 0x778899ff,\n LIGHTSTEELBLUE: 0xb0c4deff,\n LIGHTYELLOW: 0xffffe0ff,\n LIME: 0x00ff00ff,\n LIMEGREEN: 0x32cd32ff,\n LINEN: 0xfaf0e6ff,\n MAGENTA: 0xff00ffff,\n MAROON: 0x800000ff,\n MEDIUMAQUAMARINE: 0x66cdaaff,\n MEDIUMBLUE: 0x0000cdff,\n MEDIUMORCHID: 0xba55d3ff,\n MEDIUMPURPLE: 0x9370dbff,\n MEDIUMSEAGREEN: 0x3cb371ff,\n MEDIUMSLATEBLUE: 0x7b68eeff,\n MEDIUMSPRINGGREEN: 0x00fa9aff,\n MEDIUMTURQUOISE: 0x48d1ccff,\n MEDIUMVIOLETRED: 0xc71585ff,\n MIDNIGHTBLUE: 0x191970ff,\n MINTCREAM: 0xf5fffaff,\n MISTYROSE: 0xffe4e1ff,\n MOCCASIN: 0xffe4b5ff,\n NAVAJOWHITE: 0xffdeadff,\n NAVY: 0x000080ff,\n OLDLACE: 0xfdf5e6ff,\n OLIVE: 0x808000ff,\n OLIVEDRAB: 0x6b8e23ff,\n ORANGE: 0xffa500ff,\n ORANGERED: 0xff4500ff,\n ORCHID: 0xda70d6ff,\n PALEGOLDENROD: 0xeee8aaff,\n PALEGREEN: 0x98fb98ff,\n PALETURQUOISE: 0xafeeeeff,\n PALEVIOLETRED: 0xdb7093ff,\n PAPAYAWHIP: 0xffefd5ff,\n PEACHPUFF: 0xffdab9ff,\n PERU: 0xcd853fff,\n PINK: 0xffc0cbff,\n PLUM: 0xdda0ddff,\n POWDERBLUE: 0xb0e0e6ff,\n PURPLE: 0x800080ff,\n REBECCAPURPLE: 0x663399ff,\n RED: 0xff0000ff,\n ROSYBROWN: 0xbc8f8fff,\n ROYALBLUE: 0x4169e1ff,\n SADDLEBROWN: 0x8b4513ff,\n SALMON: 0xfa8072ff,\n SANDYBROWN: 0xf4a460ff,\n SEAGREEN: 0x2e8b57ff,\n SEASHELL: 0xfff5eeff,\n SIENNA: 0xa0522dff,\n SILVER: 0xc0c0c0ff,\n SKYBLUE: 0x87ceebff,\n SLATEBLUE: 0x6a5acdff,\n SLATEGRAY: 0x708090ff,\n SLATEGREY: 0x708090ff,\n SNOW: 0xfffafaff,\n SPRINGGREEN: 0x00ff7fff,\n STEELBLUE: 0x4682b4ff,\n TAN: 0xd2b48cff,\n TEAL: 0x008080ff,\n THISTLE: 0xd8bfd8ff,\n TOMATO: 0xff6347ff,\n TRANSPARENT: 0x00000000,\n TURQUOISE: 0x40e0d0ff,\n VIOLET: 0xee82eeff,\n WHEAT: 0xf5deb3ff,\n WHITE: 0xffffffff,\n WHITESMOKE: 0xf5f5f5ff,\n YELLOW: 0xffff00ff,\n YELLOWGREEN: 0x9acd32ff\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const enum BACKGROUND_CLIP {\n BORDER_BOX = 0,\n PADDING_BOX = 1,\n CONTENT_BOX = 2\n}\n\nexport type BackgroundClip = BACKGROUND_CLIP[];\n\nexport const backgroundClip: IPropertyListDescriptor = {\n name: 'background-clip',\n initialValue: 'border-box',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundClip => {\n return tokens.map((token) => {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'padding-box':\n return BACKGROUND_CLIP.PADDING_BOX;\n case 'content-box':\n return BACKGROUND_CLIP.CONTENT_BOX;\n }\n }\n return BACKGROUND_CLIP.BORDER_BOX;\n });\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nexport const backgroundColor: IPropertyTypeValueDescriptor = {\n name: `background-color`,\n initialValue: 'transparent',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n};\n","import {CSSValue} from '../../syntax/parser';\nimport {\n CSSRadialExtent,\n CSSRadialGradientImage,\n CSSRadialShape,\n GradientColorStop,\n GradientCorner,\n UnprocessedGradientColorStop\n} from '../image';\nimport {color as colorType} from '../color';\nimport {getAbsoluteValue, HUNDRED_PERCENT, isLengthPercentage, ZERO_LENGTH} from '../length-percentage';\nimport {Context} from '../../../core/context';\n\nexport const parseColorStop = (context: Context, args: CSSValue[]): UnprocessedGradientColorStop => {\n const color = colorType.parse(context, args[0]);\n const stop = args[1];\n return stop && isLengthPercentage(stop) ? {color, stop} : {color, stop: null};\n};\n\nexport const processColorStops = (stops: UnprocessedGradientColorStop[], lineLength: number): GradientColorStop[] => {\n const first = stops[0];\n const last = stops[stops.length - 1];\n if (first.stop === null) {\n first.stop = ZERO_LENGTH;\n }\n\n if (last.stop === null) {\n last.stop = HUNDRED_PERCENT;\n }\n\n const processStops: (number | null)[] = [];\n let previous = 0;\n for (let i = 0; i < stops.length; i++) {\n const stop = stops[i].stop;\n if (stop !== null) {\n const absoluteValue = getAbsoluteValue(stop, lineLength);\n if (absoluteValue > previous) {\n processStops.push(absoluteValue);\n } else {\n processStops.push(previous);\n }\n previous = absoluteValue;\n } else {\n processStops.push(null);\n }\n }\n\n let gapBegin = null;\n for (let i = 0; i < processStops.length; i++) {\n const stop = processStops[i];\n if (stop === null) {\n if (gapBegin === null) {\n gapBegin = i;\n }\n } else if (gapBegin !== null) {\n const gapLength = i - gapBegin;\n const beforeGap = processStops[gapBegin - 1] as number;\n const gapValue = (stop - beforeGap) / (gapLength + 1);\n for (let g = 1; g <= gapLength; g++) {\n processStops[gapBegin + g - 1] = gapValue * g;\n }\n gapBegin = null;\n }\n }\n\n return stops.map(({color}, i) => {\n return {color, stop: Math.max(Math.min(1, (processStops[i] as number) / lineLength), 0)};\n });\n};\n\nconst getAngleFromCorner = (corner: GradientCorner, width: number, height: number): number => {\n const centerX = width / 2;\n const centerY = height / 2;\n const x = getAbsoluteValue(corner[0], width) - centerX;\n const y = centerY - getAbsoluteValue(corner[1], height);\n\n return (Math.atan2(y, x) + Math.PI * 2) % (Math.PI * 2);\n};\n\nexport const calculateGradientDirection = (\n angle: number | GradientCorner,\n width: number,\n height: number\n): [number, number, number, number, number] => {\n const radian = typeof angle === 'number' ? angle : getAngleFromCorner(angle, width, height);\n\n const lineLength = Math.abs(width * Math.sin(radian)) + Math.abs(height * Math.cos(radian));\n\n const halfWidth = width / 2;\n const halfHeight = height / 2;\n const halfLineLength = lineLength / 2;\n\n const yDiff = Math.sin(radian - Math.PI / 2) * halfLineLength;\n const xDiff = Math.cos(radian - Math.PI / 2) * halfLineLength;\n\n return [lineLength, halfWidth - xDiff, halfWidth + xDiff, halfHeight - yDiff, halfHeight + yDiff];\n};\n\nconst distance = (a: number, b: number): number => Math.sqrt(a * a + b * b);\n\nconst findCorner = (width: number, height: number, x: number, y: number, closest: boolean): [number, number] => {\n const corners = [\n [0, 0],\n [0, height],\n [width, 0],\n [width, height]\n ];\n\n return corners.reduce(\n (stat, corner) => {\n const [cx, cy] = corner;\n const d = distance(x - cx, y - cy);\n if (closest ? d < stat.optimumDistance : d > stat.optimumDistance) {\n return {\n optimumCorner: corner,\n optimumDistance: d\n };\n }\n\n return stat;\n },\n {\n optimumDistance: closest ? Infinity : -Infinity,\n optimumCorner: null\n }\n ).optimumCorner as [number, number];\n};\n\nexport const calculateRadius = (\n gradient: CSSRadialGradientImage,\n x: number,\n y: number,\n width: number,\n height: number\n): [number, number] => {\n let rx = 0;\n let ry = 0;\n\n switch (gradient.size) {\n case CSSRadialExtent.CLOSEST_SIDE:\n // The ending shape is sized so that that it exactly meets the side of the gradient box closest to the gradient’s center.\n // If the shape is an ellipse, it exactly meets the closest side in each dimension.\n if (gradient.shape === CSSRadialShape.CIRCLE) {\n rx = ry = Math.min(Math.abs(x), Math.abs(x - width), Math.abs(y), Math.abs(y - height));\n } else if (gradient.shape === CSSRadialShape.ELLIPSE) {\n rx = Math.min(Math.abs(x), Math.abs(x - width));\n ry = Math.min(Math.abs(y), Math.abs(y - height));\n }\n break;\n\n case CSSRadialExtent.CLOSEST_CORNER:\n // The ending shape is sized so that that it passes through the corner of the gradient box closest to the gradient’s center.\n // If the shape is an ellipse, the ending shape is given the same aspect-ratio it would have if closest-side were specified.\n if (gradient.shape === CSSRadialShape.CIRCLE) {\n rx = ry = Math.min(\n distance(x, y),\n distance(x, y - height),\n distance(x - width, y),\n distance(x - width, y - height)\n );\n } else if (gradient.shape === CSSRadialShape.ELLIPSE) {\n // Compute the ratio ry/rx (which is to be the same as for \"closest-side\")\n const c = Math.min(Math.abs(y), Math.abs(y - height)) / Math.min(Math.abs(x), Math.abs(x - width));\n const [cx, cy] = findCorner(width, height, x, y, true);\n rx = distance(cx - x, (cy - y) / c);\n ry = c * rx;\n }\n break;\n\n case CSSRadialExtent.FARTHEST_SIDE:\n // Same as closest-side, except the ending shape is sized based on the farthest side(s)\n if (gradient.shape === CSSRadialShape.CIRCLE) {\n rx = ry = Math.max(Math.abs(x), Math.abs(x - width), Math.abs(y), Math.abs(y - height));\n } else if (gradient.shape === CSSRadialShape.ELLIPSE) {\n rx = Math.max(Math.abs(x), Math.abs(x - width));\n ry = Math.max(Math.abs(y), Math.abs(y - height));\n }\n break;\n\n case CSSRadialExtent.FARTHEST_CORNER:\n // Same as closest-corner, except the ending shape is sized based on the farthest corner.\n // If the shape is an ellipse, the ending shape is given the same aspect ratio it would have if farthest-side were specified.\n if (gradient.shape === CSSRadialShape.CIRCLE) {\n rx = ry = Math.max(\n distance(x, y),\n distance(x, y - height),\n distance(x - width, y),\n distance(x - width, y - height)\n );\n } else if (gradient.shape === CSSRadialShape.ELLIPSE) {\n // Compute the ratio ry/rx (which is to be the same as for \"farthest-side\")\n const c = Math.max(Math.abs(y), Math.abs(y - height)) / Math.max(Math.abs(x), Math.abs(x - width));\n const [cx, cy] = findCorner(width, height, x, y, false);\n rx = distance(cx - x, (cy - y) / c);\n ry = c * rx;\n }\n break;\n }\n\n if (Array.isArray(gradient.size)) {\n rx = getAbsoluteValue(gradient.size[0], width);\n ry = gradient.size.length === 2 ? getAbsoluteValue(gradient.size[1], height) : rx;\n }\n\n return [rx, ry];\n};\n","import {CSSValue, parseFunctionArgs} from '../../syntax/parser';\nimport {CSSImageType, CSSLinearGradientImage, GradientCorner, UnprocessedGradientColorStop} from '../image';\nimport {TokenType} from '../../syntax/tokenizer';\nimport {isAngle, angle as angleType, parseNamedSide, deg} from '../angle';\nimport {parseColorStop} from './gradient';\nimport {Context} from '../../../core/context';\n\nexport const prefixLinearGradient = (context: Context, tokens: CSSValue[]): CSSLinearGradientImage => {\n let angle: number | GradientCorner = deg(180);\n const stops: UnprocessedGradientColorStop[] = [];\n\n parseFunctionArgs(tokens).forEach((arg, i) => {\n if (i === 0) {\n const firstToken = arg[0];\n if (\n firstToken.type === TokenType.IDENT_TOKEN &&\n ['top', 'left', 'right', 'bottom'].indexOf(firstToken.value) !== -1\n ) {\n angle = parseNamedSide(arg);\n return;\n } else if (isAngle(firstToken)) {\n angle = (angleType.parse(context, firstToken) + deg(270)) % deg(360);\n return;\n }\n }\n const colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n });\n\n return {\n angle,\n stops,\n type: CSSImageType.LINEAR_GRADIENT\n };\n};\n","import {CSSValue, isIdentToken, parseFunctionArgs} from '../../syntax/parser';\nimport {\n CSSImageType,\n CSSRadialExtent,\n CSSRadialGradientImage,\n CSSRadialShape,\n CSSRadialSize,\n UnprocessedGradientColorStop\n} from '../image';\nimport {parseColorStop} from './gradient';\nimport {FIFTY_PERCENT, HUNDRED_PERCENT, isLengthPercentage, LengthPercentage, ZERO_LENGTH} from '../length-percentage';\nimport {isLength} from '../length';\nimport {Context} from '../../../core/context';\nexport const CLOSEST_SIDE = 'closest-side';\nexport const FARTHEST_SIDE = 'farthest-side';\nexport const CLOSEST_CORNER = 'closest-corner';\nexport const FARTHEST_CORNER = 'farthest-corner';\nexport const CIRCLE = 'circle';\nexport const ELLIPSE = 'ellipse';\nexport const COVER = 'cover';\nexport const CONTAIN = 'contain';\n\nexport const radialGradient = (context: Context, tokens: CSSValue[]): CSSRadialGradientImage => {\n let shape: CSSRadialShape = CSSRadialShape.CIRCLE;\n let size: CSSRadialSize = CSSRadialExtent.FARTHEST_CORNER;\n const stops: UnprocessedGradientColorStop[] = [];\n const position: LengthPercentage[] = [];\n parseFunctionArgs(tokens).forEach((arg, i) => {\n let isColorStop = true;\n if (i === 0) {\n let isAtPosition = false;\n isColorStop = arg.reduce((acc, token) => {\n if (isAtPosition) {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'center':\n position.push(FIFTY_PERCENT);\n return acc;\n case 'top':\n case 'left':\n position.push(ZERO_LENGTH);\n return acc;\n case 'right':\n case 'bottom':\n position.push(HUNDRED_PERCENT);\n return acc;\n }\n } else if (isLengthPercentage(token) || isLength(token)) {\n position.push(token);\n }\n } else if (isIdentToken(token)) {\n switch (token.value) {\n case CIRCLE:\n shape = CSSRadialShape.CIRCLE;\n return false;\n case ELLIPSE:\n shape = CSSRadialShape.ELLIPSE;\n return false;\n case 'at':\n isAtPosition = true;\n return false;\n case CLOSEST_SIDE:\n size = CSSRadialExtent.CLOSEST_SIDE;\n return false;\n case COVER:\n case FARTHEST_SIDE:\n size = CSSRadialExtent.FARTHEST_SIDE;\n return false;\n case CONTAIN:\n case CLOSEST_CORNER:\n size = CSSRadialExtent.CLOSEST_CORNER;\n return false;\n case FARTHEST_CORNER:\n size = CSSRadialExtent.FARTHEST_CORNER;\n return false;\n }\n } else if (isLength(token) || isLengthPercentage(token)) {\n if (!Array.isArray(size)) {\n size = [];\n }\n size.push(token);\n return false;\n }\n return acc;\n }, isColorStop);\n }\n\n if (isColorStop) {\n const colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n }\n });\n\n return {size, shape, stops, position, type: CSSImageType.RADIAL_GRADIENT};\n};\n","import {CSSValue, isIdentToken, parseFunctionArgs} from '../../syntax/parser';\nimport {\n CSSImageType,\n CSSRadialExtent,\n CSSRadialGradientImage,\n CSSRadialShape,\n CSSRadialSize,\n UnprocessedGradientColorStop\n} from '../image';\nimport {parseColorStop} from './gradient';\nimport {FIFTY_PERCENT, HUNDRED_PERCENT, isLengthPercentage, LengthPercentage, ZERO_LENGTH} from '../length-percentage';\nimport {isLength} from '../length';\nimport {\n CIRCLE,\n CLOSEST_CORNER,\n CLOSEST_SIDE,\n CONTAIN,\n COVER,\n ELLIPSE,\n FARTHEST_CORNER,\n FARTHEST_SIDE\n} from './radial-gradient';\nimport {Context} from '../../../core/context';\n\nexport const prefixRadialGradient = (context: Context, tokens: CSSValue[]): CSSRadialGradientImage => {\n let shape: CSSRadialShape = CSSRadialShape.CIRCLE;\n let size: CSSRadialSize = CSSRadialExtent.FARTHEST_CORNER;\n const stops: UnprocessedGradientColorStop[] = [];\n const position: LengthPercentage[] = [];\n\n parseFunctionArgs(tokens).forEach((arg, i) => {\n let isColorStop = true;\n if (i === 0) {\n isColorStop = arg.reduce((acc, token) => {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'center':\n position.push(FIFTY_PERCENT);\n return false;\n case 'top':\n case 'left':\n position.push(ZERO_LENGTH);\n return false;\n case 'right':\n case 'bottom':\n position.push(HUNDRED_PERCENT);\n return false;\n }\n } else if (isLengthPercentage(token) || isLength(token)) {\n position.push(token);\n return false;\n }\n\n return acc;\n }, isColorStop);\n } else if (i === 1) {\n isColorStop = arg.reduce((acc, token) => {\n if (isIdentToken(token)) {\n switch (token.value) {\n case CIRCLE:\n shape = CSSRadialShape.CIRCLE;\n return false;\n case ELLIPSE:\n shape = CSSRadialShape.ELLIPSE;\n return false;\n case CONTAIN:\n case CLOSEST_SIDE:\n size = CSSRadialExtent.CLOSEST_SIDE;\n return false;\n case FARTHEST_SIDE:\n size = CSSRadialExtent.FARTHEST_SIDE;\n return false;\n case CLOSEST_CORNER:\n size = CSSRadialExtent.CLOSEST_CORNER;\n return false;\n case COVER:\n case FARTHEST_CORNER:\n size = CSSRadialExtent.FARTHEST_CORNER;\n return false;\n }\n } else if (isLength(token) || isLengthPercentage(token)) {\n if (!Array.isArray(size)) {\n size = [];\n }\n size.push(token);\n return false;\n }\n\n return acc;\n }, isColorStop);\n }\n\n if (isColorStop) {\n const colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n }\n });\n\n return {size, shape, stops, position, type: CSSImageType.RADIAL_GRADIENT};\n};\n","import {CSSValue} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Color} from './color';\nimport {linearGradient} from './functions/linear-gradient';\nimport {prefixLinearGradient} from './functions/-prefix-linear-gradient';\nimport {ITypeDescriptor} from '../ITypeDescriptor';\nimport {LengthPercentage} from './length-percentage';\nimport {webkitGradient} from './functions/-webkit-gradient';\nimport {radialGradient} from './functions/radial-gradient';\nimport {prefixRadialGradient} from './functions/-prefix-radial-gradient';\nimport {Context} from '../../core/context';\n\nexport const enum CSSImageType {\n URL,\n LINEAR_GRADIENT,\n RADIAL_GRADIENT\n}\n\nexport const isLinearGradient = (background: ICSSImage): background is CSSLinearGradientImage => {\n return background.type === CSSImageType.LINEAR_GRADIENT;\n};\n\nexport const isRadialGradient = (background: ICSSImage): background is CSSRadialGradientImage => {\n return background.type === CSSImageType.RADIAL_GRADIENT;\n};\n\nexport interface UnprocessedGradientColorStop {\n color: Color;\n stop: LengthPercentage | null;\n}\n\nexport interface GradientColorStop {\n color: Color;\n stop: number;\n}\n\nexport interface ICSSImage {\n type: CSSImageType;\n}\n\nexport interface CSSURLImage extends ICSSImage {\n url: string;\n type: CSSImageType.URL;\n}\n\n// interface ICSSGeneratedImage extends ICSSImage {}\n\nexport type GradientCorner = [LengthPercentage, LengthPercentage];\n\ninterface ICSSGradientImage extends ICSSImage {\n stops: UnprocessedGradientColorStop[];\n}\n\nexport interface CSSLinearGradientImage extends ICSSGradientImage {\n angle: number | GradientCorner;\n type: CSSImageType.LINEAR_GRADIENT;\n}\n\nexport const enum CSSRadialShape {\n CIRCLE,\n ELLIPSE\n}\n\nexport const enum CSSRadialExtent {\n CLOSEST_SIDE,\n FARTHEST_SIDE,\n CLOSEST_CORNER,\n FARTHEST_CORNER\n}\n\nexport type CSSRadialSize = CSSRadialExtent | LengthPercentage[];\n\nexport interface CSSRadialGradientImage extends ICSSGradientImage {\n type: CSSImageType.RADIAL_GRADIENT;\n shape: CSSRadialShape;\n size: CSSRadialSize;\n position: LengthPercentage[];\n}\n\nexport const image: ITypeDescriptor = {\n name: 'image',\n parse: (context: Context, value: CSSValue): ICSSImage => {\n if (value.type === TokenType.URL_TOKEN) {\n const image: CSSURLImage = {url: value.value, type: CSSImageType.URL};\n context.cache.addImage(value.value);\n return image;\n }\n\n if (value.type === TokenType.FUNCTION) {\n const imageFunction = SUPPORTED_IMAGE_FUNCTIONS[value.name];\n if (typeof imageFunction === 'undefined') {\n throw new Error(`Attempting to parse an unsupported image function \"${value.name}\"`);\n }\n return imageFunction(context, value.values);\n }\n\n throw new Error(`Unsupported image type ${value.type}`);\n }\n};\n\nexport function isSupportedImage(value: CSSValue): boolean {\n return (\n !(value.type === TokenType.IDENT_TOKEN && value.value === 'none') &&\n (value.type !== TokenType.FUNCTION || !!SUPPORTED_IMAGE_FUNCTIONS[value.name])\n );\n}\n\nconst SUPPORTED_IMAGE_FUNCTIONS: Record ICSSImage> = {\n 'linear-gradient': linearGradient,\n '-moz-linear-gradient': prefixLinearGradient,\n '-ms-linear-gradient': prefixLinearGradient,\n '-o-linear-gradient': prefixLinearGradient,\n '-webkit-linear-gradient': prefixLinearGradient,\n 'radial-gradient': radialGradient,\n '-moz-radial-gradient': prefixRadialGradient,\n '-ms-radial-gradient': prefixRadialGradient,\n '-o-radial-gradient': prefixRadialGradient,\n '-webkit-radial-gradient': prefixRadialGradient,\n '-webkit-gradient': webkitGradient\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken, parseFunctionArgs} from '../syntax/parser';\nimport {isLengthPercentage, LengthPercentage} from '../types/length-percentage';\nimport {StringValueToken} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\nexport enum BACKGROUND_SIZE {\n AUTO = 'auto',\n CONTAIN = 'contain',\n COVER = 'cover'\n}\n\nexport type BackgroundSizeInfo = LengthPercentage | StringValueToken;\nexport type BackgroundSize = BackgroundSizeInfo[][];\n\nexport const backgroundSize: IPropertyListDescriptor = {\n name: 'background-size',\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundSize => {\n return parseFunctionArgs(tokens).map((values) => values.filter(isBackgroundSizeInfoToken));\n }\n};\n\nconst isBackgroundSizeInfoToken = (value: CSSValue): value is BackgroundSizeInfo =>\n isIdentToken(value) || isLengthPercentage(value);\n","import {CSSValue, parseFunctionArgs} from '../../syntax/parser';\nimport {TokenType} from '../../syntax/tokenizer';\nimport {isAngle, angle as angleType, parseNamedSide, deg} from '../angle';\nimport {CSSImageType, CSSLinearGradientImage, GradientCorner, UnprocessedGradientColorStop} from '../image';\nimport {parseColorStop} from './gradient';\nimport {Context} from '../../../core/context';\n\nexport const linearGradient = (context: Context, tokens: CSSValue[]): CSSLinearGradientImage => {\n let angle: number | GradientCorner = deg(180);\n const stops: UnprocessedGradientColorStop[] = [];\n\n parseFunctionArgs(tokens).forEach((arg, i) => {\n if (i === 0) {\n const firstToken = arg[0];\n if (firstToken.type === TokenType.IDENT_TOKEN && firstToken.value === 'to') {\n angle = parseNamedSide(arg);\n return;\n } else if (isAngle(firstToken)) {\n angle = angleType.parse(context, firstToken);\n return;\n }\n }\n const colorStop = parseColorStop(context, arg);\n stops.push(colorStop);\n });\n\n return {angle, stops, type: CSSImageType.LINEAR_GRADIENT};\n};\n","import {CSSValue, isIdentToken, isNumberToken, nonFunctionArgSeparator, parseFunctionArgs} from '../../syntax/parser';\nimport {\n CSSImageType,\n CSSLinearGradientImage,\n CSSRadialExtent,\n CSSRadialGradientImage,\n CSSRadialShape,\n CSSRadialSize,\n UnprocessedGradientColorStop\n} from '../image';\nimport {deg} from '../angle';\nimport {TokenType} from '../../syntax/tokenizer';\nimport {color as colorType} from '../color';\nimport {HUNDRED_PERCENT, LengthPercentage, ZERO_LENGTH} from '../length-percentage';\nimport {Context} from '../../../core/context';\n\nexport const webkitGradient = (\n context: Context,\n tokens: CSSValue[]\n): CSSLinearGradientImage | CSSRadialGradientImage => {\n const angle = deg(180);\n const stops: UnprocessedGradientColorStop[] = [];\n let type = CSSImageType.LINEAR_GRADIENT;\n const shape: CSSRadialShape = CSSRadialShape.CIRCLE;\n const size: CSSRadialSize = CSSRadialExtent.FARTHEST_CORNER;\n const position: LengthPercentage[] = [];\n parseFunctionArgs(tokens).forEach((arg, i) => {\n const firstToken = arg[0];\n if (i === 0) {\n if (isIdentToken(firstToken) && firstToken.value === 'linear') {\n type = CSSImageType.LINEAR_GRADIENT;\n return;\n } else if (isIdentToken(firstToken) && firstToken.value === 'radial') {\n type = CSSImageType.RADIAL_GRADIENT;\n return;\n }\n }\n\n if (firstToken.type === TokenType.FUNCTION) {\n if (firstToken.name === 'from') {\n const color = colorType.parse(context, firstToken.values[0]);\n stops.push({stop: ZERO_LENGTH, color});\n } else if (firstToken.name === 'to') {\n const color = colorType.parse(context, firstToken.values[0]);\n stops.push({stop: HUNDRED_PERCENT, color});\n } else if (firstToken.name === 'color-stop') {\n const values = firstToken.values.filter(nonFunctionArgSeparator);\n if (values.length === 2) {\n const color = colorType.parse(context, values[1]);\n const stop = values[0];\n if (isNumberToken(stop)) {\n stops.push({\n stop: {type: TokenType.PERCENTAGE_TOKEN, number: stop.number * 100, flags: stop.flags},\n color\n });\n }\n }\n }\n }\n });\n\n return type === CSSImageType.LINEAR_GRADIENT\n ? {\n angle: (angle + deg(180)) % deg(360),\n stops,\n type\n }\n : {size, shape, stops, position, type};\n};\n","import {TokenType} from '../syntax/tokenizer';\nimport {ICSSImage, image, isSupportedImage} from '../types/image';\nimport {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, nonFunctionArgSeparator} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport const backgroundImage: IPropertyListDescriptor = {\n name: 'background-image',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return [];\n }\n\n const first = tokens[0];\n\n if (first.type === TokenType.IDENT_TOKEN && first.value === 'none') {\n return [];\n }\n\n return tokens\n .filter((value) => nonFunctionArgSeparator(value) && isSupportedImage(value))\n .map((value) => image.parse(context, value));\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport const enum BACKGROUND_ORIGIN {\n BORDER_BOX = 0,\n PADDING_BOX = 1,\n CONTENT_BOX = 2\n}\n\nexport type BackgroundOrigin = BACKGROUND_ORIGIN[];\n\nexport const backgroundOrigin: IPropertyListDescriptor = {\n name: 'background-origin',\n initialValue: 'border-box',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundOrigin => {\n return tokens.map((token) => {\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'padding-box':\n return BACKGROUND_ORIGIN.PADDING_BOX;\n case 'content-box':\n return BACKGROUND_ORIGIN.CONTENT_BOX;\n }\n }\n return BACKGROUND_ORIGIN.BORDER_BOX;\n });\n }\n};\n","import {PropertyDescriptorParsingType, IPropertyListDescriptor} from '../IPropertyDescriptor';\nimport {CSSValue, parseFunctionArgs} from '../syntax/parser';\nimport {isLengthPercentage, LengthPercentageTuple, parseLengthPercentageTuple} from '../types/length-percentage';\nimport {Context} from '../../core/context';\nexport type BackgroundPosition = BackgroundImagePosition[];\n\nexport type BackgroundImagePosition = LengthPercentageTuple;\n\nexport const backgroundPosition: IPropertyListDescriptor = {\n name: 'background-position',\n initialValue: '0% 0%',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundPosition => {\n return parseFunctionArgs(tokens)\n .map((values: CSSValue[]) => values.filter(isLengthPercentage))\n .map(parseLengthPercentageTuple);\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken, parseFunctionArgs} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport type BackgroundRepeat = BACKGROUND_REPEAT[];\n\nexport const enum BACKGROUND_REPEAT {\n REPEAT = 0,\n NO_REPEAT = 1,\n REPEAT_X = 2,\n REPEAT_Y = 3\n}\n\nexport const backgroundRepeat: IPropertyListDescriptor = {\n name: 'background-repeat',\n initialValue: 'repeat',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BackgroundRepeat => {\n return parseFunctionArgs(tokens)\n .map((values) =>\n values\n .filter(isIdentToken)\n .map((token) => token.value)\n .join(' ')\n )\n .map(parseBackgroundRepeat);\n }\n};\n\nconst parseBackgroundRepeat = (value: string): BACKGROUND_REPEAT => {\n switch (value) {\n case 'no-repeat':\n return BACKGROUND_REPEAT.NO_REPEAT;\n case 'repeat-x':\n case 'repeat no-repeat':\n return BACKGROUND_REPEAT.REPEAT_X;\n case 'repeat-y':\n case 'no-repeat repeat':\n return BACKGROUND_REPEAT.REPEAT_Y;\n case 'repeat':\n default:\n return BACKGROUND_REPEAT.REPEAT;\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport enum LINE_BREAK {\n NORMAL = 'normal',\n STRICT = 'strict'\n}\n\nexport const lineBreak: IPropertyIdentValueDescriptor = {\n name: 'line-break',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, lineBreak: string): LINE_BREAK => {\n switch (lineBreak) {\n case 'strict':\n return LINE_BREAK.STRICT;\n case 'normal':\n default:\n return LINE_BREAK.NORMAL;\n }\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nconst borderColorForSide = (side: string): IPropertyTypeValueDescriptor => ({\n name: `border-${side}-color`,\n initialValue: 'transparent',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n});\n\nexport const borderTopColor: IPropertyTypeValueDescriptor = borderColorForSide('top');\nexport const borderRightColor: IPropertyTypeValueDescriptor = borderColorForSide('right');\nexport const borderBottomColor: IPropertyTypeValueDescriptor = borderColorForSide('bottom');\nexport const borderLeftColor: IPropertyTypeValueDescriptor = borderColorForSide('left');\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {isLengthPercentage, LengthPercentageTuple, parseLengthPercentageTuple} from '../types/length-percentage';\nimport {Context} from '../../core/context';\nexport type BorderRadius = LengthPercentageTuple;\n\nconst borderRadiusForSide = (side: string): IPropertyListDescriptor => ({\n name: `border-radius-${side}`,\n initialValue: '0 0',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): BorderRadius =>\n parseLengthPercentageTuple(tokens.filter(isLengthPercentage))\n});\n\nexport const borderTopLeftRadius: IPropertyListDescriptor = borderRadiusForSide('top-left');\nexport const borderTopRightRadius: IPropertyListDescriptor = borderRadiusForSide('top-right');\nexport const borderBottomRightRadius: IPropertyListDescriptor = borderRadiusForSide('bottom-right');\nexport const borderBottomLeftRadius: IPropertyListDescriptor = borderRadiusForSide('bottom-left');\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum BORDER_STYLE {\n NONE = 0,\n SOLID = 1,\n DASHED = 2,\n DOTTED = 3,\n DOUBLE = 4\n}\n\nconst borderStyleForSide = (side: string): IPropertyIdentValueDescriptor => ({\n name: `border-${side}-style`,\n initialValue: 'solid',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, style: string): BORDER_STYLE => {\n switch (style) {\n case 'none':\n return BORDER_STYLE.NONE;\n case 'dashed':\n return BORDER_STYLE.DASHED;\n case 'dotted':\n return BORDER_STYLE.DOTTED;\n case 'double':\n return BORDER_STYLE.DOUBLE;\n }\n return BORDER_STYLE.SOLID;\n }\n});\n\nexport const borderTopStyle: IPropertyIdentValueDescriptor = borderStyleForSide('top');\nexport const borderRightStyle: IPropertyIdentValueDescriptor = borderStyleForSide('right');\nexport const borderBottomStyle: IPropertyIdentValueDescriptor = borderStyleForSide('bottom');\nexport const borderLeftStyle: IPropertyIdentValueDescriptor = borderStyleForSide('left');\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isDimensionToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nconst borderWidthForSide = (side: string): IPropertyValueDescriptor => ({\n name: `border-${side}-width`,\n initialValue: '0',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (_context: Context, token: CSSValue): number => {\n if (isDimensionToken(token)) {\n return token.number;\n }\n return 0;\n }\n});\n\nexport const borderTopWidth: IPropertyValueDescriptor = borderWidthForSide('top');\nexport const borderRightWidth: IPropertyValueDescriptor = borderWidthForSide('right');\nexport const borderBottomWidth: IPropertyValueDescriptor = borderWidthForSide('bottom');\nexport const borderLeftWidth: IPropertyValueDescriptor = borderWidthForSide('left');\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nexport const color: IPropertyTypeValueDescriptor = {\n name: `color`,\n initialValue: 'transparent',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\n\nexport const enum DIRECTION {\n LTR = 0,\n RTL = 1\n}\n\nexport const direction: IPropertyIdentValueDescriptor = {\n name: 'direction',\n initialValue: 'ltr',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, direction: string) => {\n switch (direction) {\n case 'rtl':\n return DIRECTION.RTL;\n case 'ltr':\n default:\n return DIRECTION.LTR;\n }\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const enum DISPLAY {\n NONE = 0,\n BLOCK = 1 << 1,\n INLINE = 1 << 2,\n RUN_IN = 1 << 3,\n FLOW = 1 << 4,\n FLOW_ROOT = 1 << 5,\n TABLE = 1 << 6,\n FLEX = 1 << 7,\n GRID = 1 << 8,\n RUBY = 1 << 9,\n SUBGRID = 1 << 10,\n LIST_ITEM = 1 << 11,\n TABLE_ROW_GROUP = 1 << 12,\n TABLE_HEADER_GROUP = 1 << 13,\n TABLE_FOOTER_GROUP = 1 << 14,\n TABLE_ROW = 1 << 15,\n TABLE_CELL = 1 << 16,\n TABLE_COLUMN_GROUP = 1 << 17,\n TABLE_COLUMN = 1 << 18,\n TABLE_CAPTION = 1 << 19,\n RUBY_BASE = 1 << 20,\n RUBY_TEXT = 1 << 21,\n RUBY_BASE_CONTAINER = 1 << 22,\n RUBY_TEXT_CONTAINER = 1 << 23,\n CONTENTS = 1 << 24,\n INLINE_BLOCK = 1 << 25,\n INLINE_LIST_ITEM = 1 << 26,\n INLINE_TABLE = 1 << 27,\n INLINE_FLEX = 1 << 28,\n INLINE_GRID = 1 << 29\n}\n\nexport type Display = number;\n\nexport const display: IPropertyListDescriptor = {\n name: 'display',\n initialValue: 'inline-block',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): Display => {\n return tokens.filter(isIdentToken).reduce((bit, token) => {\n return bit | parseDisplayValue(token.value);\n }, DISPLAY.NONE);\n }\n};\n\nconst parseDisplayValue = (display: string): Display => {\n switch (display) {\n case 'block':\n case '-webkit-box':\n return DISPLAY.BLOCK;\n case 'inline':\n return DISPLAY.INLINE;\n case 'run-in':\n return DISPLAY.RUN_IN;\n case 'flow':\n return DISPLAY.FLOW;\n case 'flow-root':\n return DISPLAY.FLOW_ROOT;\n case 'table':\n return DISPLAY.TABLE;\n case 'flex':\n case '-webkit-flex':\n return DISPLAY.FLEX;\n case 'grid':\n case '-ms-grid':\n return DISPLAY.GRID;\n case 'ruby':\n return DISPLAY.RUBY;\n case 'subgrid':\n return DISPLAY.SUBGRID;\n case 'list-item':\n return DISPLAY.LIST_ITEM;\n case 'table-row-group':\n return DISPLAY.TABLE_ROW_GROUP;\n case 'table-header-group':\n return DISPLAY.TABLE_HEADER_GROUP;\n case 'table-footer-group':\n return DISPLAY.TABLE_FOOTER_GROUP;\n case 'table-row':\n return DISPLAY.TABLE_ROW;\n case 'table-cell':\n return DISPLAY.TABLE_CELL;\n case 'table-column-group':\n return DISPLAY.TABLE_COLUMN_GROUP;\n case 'table-column':\n return DISPLAY.TABLE_COLUMN;\n case 'table-caption':\n return DISPLAY.TABLE_CAPTION;\n case 'ruby-base':\n return DISPLAY.RUBY_BASE;\n case 'ruby-text':\n return DISPLAY.RUBY_TEXT;\n case 'ruby-base-container':\n return DISPLAY.RUBY_BASE_CONTAINER;\n case 'ruby-text-container':\n return DISPLAY.RUBY_TEXT_CONTAINER;\n case 'contents':\n return DISPLAY.CONTENTS;\n case 'inline-block':\n return DISPLAY.INLINE_BLOCK;\n case 'inline-list-item':\n return DISPLAY.INLINE_LIST_ITEM;\n case 'inline-table':\n return DISPLAY.INLINE_TABLE;\n case 'inline-flex':\n return DISPLAY.INLINE_FLEX;\n case 'inline-grid':\n return DISPLAY.INLINE_GRID;\n }\n\n return DISPLAY.NONE;\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum FLOAT {\n NONE = 0,\n LEFT = 1,\n RIGHT = 2,\n INLINE_START = 3,\n INLINE_END = 4\n}\n\nexport const float: IPropertyIdentValueDescriptor = {\n name: 'float',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, float: string) => {\n switch (float) {\n case 'left':\n return FLOAT.LEFT;\n case 'right':\n return FLOAT.RIGHT;\n case 'inline-start':\n return FLOAT.INLINE_START;\n case 'inline-end':\n return FLOAT.INLINE_END;\n }\n return FLOAT.NONE;\n }\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\nexport const letterSpacing: IPropertyValueDescriptor = {\n name: 'letter-spacing',\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.VALUE,\n parse: (_context: Context, token: CSSValue) => {\n if (token.type === TokenType.IDENT_TOKEN && token.value === 'normal') {\n return 0;\n }\n\n if (token.type === TokenType.NUMBER_TOKEN) {\n return token.number;\n }\n\n if (token.type === TokenType.DIMENSION_TOKEN) {\n return token.number;\n }\n\n return 0;\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport enum WORD_BREAK {\n NORMAL = 'normal',\n BREAK_ALL = 'break-all',\n KEEP_ALL = 'keep-all'\n}\n\nexport const wordBreak: IPropertyIdentValueDescriptor = {\n name: 'word-break',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, wordBreak: string): WORD_BREAK => {\n switch (wordBreak) {\n case 'break-all':\n return WORD_BREAK.BREAK_ALL;\n case 'keep-all':\n return WORD_BREAK.KEEP_ALL;\n case 'normal':\n default:\n return WORD_BREAK.NORMAL;\n }\n }\n};\n","import {IPropertyTokenValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {getAbsoluteValue, isLengthPercentage} from '../types/length-percentage';\nexport const lineHeight: IPropertyTokenValueDescriptor = {\n name: 'line-height',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.TOKEN_VALUE\n};\n\nexport const computeLineHeight = (token: CSSValue, fontSize: number): number => {\n if (isIdentToken(token) && token.value === 'normal') {\n return 1.2 * fontSize;\n } else if (token.type === TokenType.NUMBER_TOKEN) {\n return fontSize * token.number;\n } else if (isLengthPercentage(token)) {\n return getAbsoluteValue(token, fontSize);\n }\n\n return fontSize;\n};\n","import {TokenType} from '../syntax/tokenizer';\nimport {ICSSImage, image} from '../types/image';\nimport {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport const listStyleImage: IPropertyValueDescriptor = {\n name: 'list-style-image',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (context: Context, token: CSSValue) => {\n if (token.type === TokenType.IDENT_TOKEN && token.value === 'none') {\n return null;\n }\n\n return image.parse(context, token);\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum LIST_STYLE_POSITION {\n INSIDE = 0,\n OUTSIDE = 1\n}\n\nexport const listStylePosition: IPropertyIdentValueDescriptor = {\n name: 'list-style-position',\n initialValue: 'outside',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, position: string) => {\n switch (position) {\n case 'inside':\n return LIST_STYLE_POSITION.INSIDE;\n case 'outside':\n default:\n return LIST_STYLE_POSITION.OUTSIDE;\n }\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum LIST_STYLE_TYPE {\n NONE = -1,\n DISC = 0,\n CIRCLE = 1,\n SQUARE = 2,\n DECIMAL = 3,\n CJK_DECIMAL = 4,\n DECIMAL_LEADING_ZERO = 5,\n LOWER_ROMAN = 6,\n UPPER_ROMAN = 7,\n LOWER_GREEK = 8,\n LOWER_ALPHA = 9,\n UPPER_ALPHA = 10,\n ARABIC_INDIC = 11,\n ARMENIAN = 12,\n BENGALI = 13,\n CAMBODIAN = 14,\n CJK_EARTHLY_BRANCH = 15,\n CJK_HEAVENLY_STEM = 16,\n CJK_IDEOGRAPHIC = 17,\n DEVANAGARI = 18,\n ETHIOPIC_NUMERIC = 19,\n GEORGIAN = 20,\n GUJARATI = 21,\n GURMUKHI = 22,\n HEBREW = 22,\n HIRAGANA = 23,\n HIRAGANA_IROHA = 24,\n JAPANESE_FORMAL = 25,\n JAPANESE_INFORMAL = 26,\n KANNADA = 27,\n KATAKANA = 28,\n KATAKANA_IROHA = 29,\n KHMER = 30,\n KOREAN_HANGUL_FORMAL = 31,\n KOREAN_HANJA_FORMAL = 32,\n KOREAN_HANJA_INFORMAL = 33,\n LAO = 34,\n LOWER_ARMENIAN = 35,\n MALAYALAM = 36,\n MONGOLIAN = 37,\n MYANMAR = 38,\n ORIYA = 39,\n PERSIAN = 40,\n SIMP_CHINESE_FORMAL = 41,\n SIMP_CHINESE_INFORMAL = 42,\n TAMIL = 43,\n TELUGU = 44,\n THAI = 45,\n TIBETAN = 46,\n TRAD_CHINESE_FORMAL = 47,\n TRAD_CHINESE_INFORMAL = 48,\n UPPER_ARMENIAN = 49,\n DISCLOSURE_OPEN = 50,\n DISCLOSURE_CLOSED = 51\n}\n\nexport const listStyleType: IPropertyIdentValueDescriptor = {\n name: 'list-style-type',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, type: string) => {\n switch (type) {\n case 'disc':\n return LIST_STYLE_TYPE.DISC;\n case 'circle':\n return LIST_STYLE_TYPE.CIRCLE;\n case 'square':\n return LIST_STYLE_TYPE.SQUARE;\n case 'decimal':\n return LIST_STYLE_TYPE.DECIMAL;\n case 'cjk-decimal':\n return LIST_STYLE_TYPE.CJK_DECIMAL;\n case 'decimal-leading-zero':\n return LIST_STYLE_TYPE.DECIMAL_LEADING_ZERO;\n case 'lower-roman':\n return LIST_STYLE_TYPE.LOWER_ROMAN;\n case 'upper-roman':\n return LIST_STYLE_TYPE.UPPER_ROMAN;\n case 'lower-greek':\n return LIST_STYLE_TYPE.LOWER_GREEK;\n case 'lower-alpha':\n return LIST_STYLE_TYPE.LOWER_ALPHA;\n case 'upper-alpha':\n return LIST_STYLE_TYPE.UPPER_ALPHA;\n case 'arabic-indic':\n return LIST_STYLE_TYPE.ARABIC_INDIC;\n case 'armenian':\n return LIST_STYLE_TYPE.ARMENIAN;\n case 'bengali':\n return LIST_STYLE_TYPE.BENGALI;\n case 'cambodian':\n return LIST_STYLE_TYPE.CAMBODIAN;\n case 'cjk-earthly-branch':\n return LIST_STYLE_TYPE.CJK_EARTHLY_BRANCH;\n case 'cjk-heavenly-stem':\n return LIST_STYLE_TYPE.CJK_HEAVENLY_STEM;\n case 'cjk-ideographic':\n return LIST_STYLE_TYPE.CJK_IDEOGRAPHIC;\n case 'devanagari':\n return LIST_STYLE_TYPE.DEVANAGARI;\n case 'ethiopic-numeric':\n return LIST_STYLE_TYPE.ETHIOPIC_NUMERIC;\n case 'georgian':\n return LIST_STYLE_TYPE.GEORGIAN;\n case 'gujarati':\n return LIST_STYLE_TYPE.GUJARATI;\n case 'gurmukhi':\n return LIST_STYLE_TYPE.GURMUKHI;\n case 'hebrew':\n return LIST_STYLE_TYPE.HEBREW;\n case 'hiragana':\n return LIST_STYLE_TYPE.HIRAGANA;\n case 'hiragana-iroha':\n return LIST_STYLE_TYPE.HIRAGANA_IROHA;\n case 'japanese-formal':\n return LIST_STYLE_TYPE.JAPANESE_FORMAL;\n case 'japanese-informal':\n return LIST_STYLE_TYPE.JAPANESE_INFORMAL;\n case 'kannada':\n return LIST_STYLE_TYPE.KANNADA;\n case 'katakana':\n return LIST_STYLE_TYPE.KATAKANA;\n case 'katakana-iroha':\n return LIST_STYLE_TYPE.KATAKANA_IROHA;\n case 'khmer':\n return LIST_STYLE_TYPE.KHMER;\n case 'korean-hangul-formal':\n return LIST_STYLE_TYPE.KOREAN_HANGUL_FORMAL;\n case 'korean-hanja-formal':\n return LIST_STYLE_TYPE.KOREAN_HANJA_FORMAL;\n case 'korean-hanja-informal':\n return LIST_STYLE_TYPE.KOREAN_HANJA_INFORMAL;\n case 'lao':\n return LIST_STYLE_TYPE.LAO;\n case 'lower-armenian':\n return LIST_STYLE_TYPE.LOWER_ARMENIAN;\n case 'malayalam':\n return LIST_STYLE_TYPE.MALAYALAM;\n case 'mongolian':\n return LIST_STYLE_TYPE.MONGOLIAN;\n case 'myanmar':\n return LIST_STYLE_TYPE.MYANMAR;\n case 'oriya':\n return LIST_STYLE_TYPE.ORIYA;\n case 'persian':\n return LIST_STYLE_TYPE.PERSIAN;\n case 'simp-chinese-formal':\n return LIST_STYLE_TYPE.SIMP_CHINESE_FORMAL;\n case 'simp-chinese-informal':\n return LIST_STYLE_TYPE.SIMP_CHINESE_INFORMAL;\n case 'tamil':\n return LIST_STYLE_TYPE.TAMIL;\n case 'telugu':\n return LIST_STYLE_TYPE.TELUGU;\n case 'thai':\n return LIST_STYLE_TYPE.THAI;\n case 'tibetan':\n return LIST_STYLE_TYPE.TIBETAN;\n case 'trad-chinese-formal':\n return LIST_STYLE_TYPE.TRAD_CHINESE_FORMAL;\n case 'trad-chinese-informal':\n return LIST_STYLE_TYPE.TRAD_CHINESE_INFORMAL;\n case 'upper-armenian':\n return LIST_STYLE_TYPE.UPPER_ARMENIAN;\n case 'disclosure-open':\n return LIST_STYLE_TYPE.DISCLOSURE_OPEN;\n case 'disclosure-closed':\n return LIST_STYLE_TYPE.DISCLOSURE_CLOSED;\n case 'none':\n default:\n return LIST_STYLE_TYPE.NONE;\n }\n }\n};\n","import {IPropertyTokenValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nconst marginForSide = (side: string): IPropertyTokenValueDescriptor => ({\n name: `margin-${side}`,\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.TOKEN_VALUE\n});\n\nexport const marginTop: IPropertyTokenValueDescriptor = marginForSide('top');\nexport const marginRight: IPropertyTokenValueDescriptor = marginForSide('right');\nexport const marginBottom: IPropertyTokenValueDescriptor = marginForSide('bottom');\nexport const marginLeft: IPropertyTokenValueDescriptor = marginForSide('left');\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const enum OVERFLOW {\n VISIBLE = 0,\n HIDDEN = 1,\n SCROLL = 2,\n CLIP = 3,\n AUTO = 4\n}\n\nexport const overflow: IPropertyListDescriptor = {\n name: 'overflow',\n initialValue: 'visible',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): OVERFLOW[] => {\n return tokens.filter(isIdentToken).map((overflow) => {\n switch (overflow.value) {\n case 'hidden':\n return OVERFLOW.HIDDEN;\n case 'scroll':\n return OVERFLOW.SCROLL;\n case 'clip':\n return OVERFLOW.CLIP;\n case 'auto':\n return OVERFLOW.AUTO;\n case 'visible':\n default:\n return OVERFLOW.VISIBLE;\n }\n });\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum OVERFLOW_WRAP {\n NORMAL = 'normal',\n BREAK_WORD = 'break-word'\n}\n\nexport const overflowWrap: IPropertyIdentValueDescriptor = {\n name: 'overflow-wrap',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, overflow: string) => {\n switch (overflow) {\n case 'break-word':\n return OVERFLOW_WRAP.BREAK_WORD;\n case 'normal':\n default:\n return OVERFLOW_WRAP.NORMAL;\n }\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nconst paddingForSide = (side: string): IPropertyTypeValueDescriptor => ({\n name: `padding-${side}`,\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'length-percentage'\n});\n\nexport const paddingTop: IPropertyTypeValueDescriptor = paddingForSide('top');\nexport const paddingRight: IPropertyTypeValueDescriptor = paddingForSide('right');\nexport const paddingBottom: IPropertyTypeValueDescriptor = paddingForSide('bottom');\nexport const paddingLeft: IPropertyTypeValueDescriptor = paddingForSide('left');\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum TEXT_ALIGN {\n LEFT = 0,\n CENTER = 1,\n RIGHT = 2\n}\n\nexport const textAlign: IPropertyIdentValueDescriptor = {\n name: 'text-align',\n initialValue: 'left',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, textAlign: string) => {\n switch (textAlign) {\n case 'right':\n return TEXT_ALIGN.RIGHT;\n case 'center':\n case 'justify':\n return TEXT_ALIGN.CENTER;\n case 'left':\n default:\n return TEXT_ALIGN.LEFT;\n }\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum POSITION {\n STATIC = 0,\n RELATIVE = 1,\n ABSOLUTE = 2,\n FIXED = 3,\n STICKY = 4\n}\n\nexport const position: IPropertyIdentValueDescriptor = {\n name: 'position',\n initialValue: 'static',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, position: string) => {\n switch (position) {\n case 'relative':\n return POSITION.RELATIVE;\n case 'absolute':\n return POSITION.ABSOLUTE;\n case 'fixed':\n return POSITION.FIXED;\n case 'sticky':\n return POSITION.STICKY;\n }\n\n return POSITION.STATIC;\n }\n};\n","import {PropertyDescriptorParsingType, IPropertyListDescriptor} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentWithValue, parseFunctionArgs} from '../syntax/parser';\nimport {ZERO_LENGTH} from '../types/length-percentage';\nimport {color, Color, COLORS} from '../types/color';\nimport {isLength, Length} from '../types/length';\nimport {Context} from '../../core/context';\n\nexport type TextShadow = TextShadowItem[];\ninterface TextShadowItem {\n color: Color;\n offsetX: Length;\n offsetY: Length;\n blur: Length;\n}\n\nexport const textShadow: IPropertyListDescriptor = {\n name: 'text-shadow',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (context: Context, tokens: CSSValue[]): TextShadow => {\n if (tokens.length === 1 && isIdentWithValue(tokens[0], 'none')) {\n return [];\n }\n\n return parseFunctionArgs(tokens).map((values: CSSValue[]) => {\n const shadow: TextShadowItem = {\n color: COLORS.TRANSPARENT,\n offsetX: ZERO_LENGTH,\n offsetY: ZERO_LENGTH,\n blur: ZERO_LENGTH\n };\n let c = 0;\n for (let i = 0; i < values.length; i++) {\n const token = values[i];\n if (isLength(token)) {\n if (c === 0) {\n shadow.offsetX = token;\n } else if (c === 1) {\n shadow.offsetY = token;\n } else {\n shadow.blur = token;\n }\n c++;\n } else {\n shadow.color = color.parse(context, token);\n }\n }\n return shadow;\n });\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum TEXT_TRANSFORM {\n NONE = 0,\n LOWERCASE = 1,\n UPPERCASE = 2,\n CAPITALIZE = 3\n}\n\nexport const textTransform: IPropertyIdentValueDescriptor = {\n name: 'text-transform',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, textTransform: string) => {\n switch (textTransform) {\n case 'uppercase':\n return TEXT_TRANSFORM.UPPERCASE;\n case 'lowercase':\n return TEXT_TRANSFORM.LOWERCASE;\n case 'capitalize':\n return TEXT_TRANSFORM.CAPITALIZE;\n }\n\n return TEXT_TRANSFORM.NONE;\n }\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {NumberValueToken, TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\nexport type Matrix = [number, number, number, number, number, number];\nexport type Transform = Matrix | null;\n\nexport const transform: IPropertyValueDescriptor = {\n name: 'transform',\n initialValue: 'none',\n prefix: true,\n type: PropertyDescriptorParsingType.VALUE,\n parse: (_context: Context, token: CSSValue) => {\n if (token.type === TokenType.IDENT_TOKEN && token.value === 'none') {\n return null;\n }\n\n if (token.type === TokenType.FUNCTION) {\n const transformFunction = SUPPORTED_TRANSFORM_FUNCTIONS[token.name];\n if (typeof transformFunction === 'undefined') {\n throw new Error(`Attempting to parse an unsupported transform function \"${token.name}\"`);\n }\n return transformFunction(token.values);\n }\n\n return null;\n }\n};\n\nconst matrix = (args: CSSValue[]): Transform => {\n const values = args.filter((arg) => arg.type === TokenType.NUMBER_TOKEN).map((arg: NumberValueToken) => arg.number);\n\n return values.length === 6 ? (values as Matrix) : null;\n};\n\n// doesn't support 3D transforms at the moment\nconst matrix3d = (args: CSSValue[]): Transform => {\n const values = args.filter((arg) => arg.type === TokenType.NUMBER_TOKEN).map((arg: NumberValueToken) => arg.number);\n\n const [a1, b1, {}, {}, a2, b2, {}, {}, {}, {}, {}, {}, a4, b4, {}, {}] = values;\n\n return values.length === 16 ? [a1, b1, a2, b2, a4, b4] : null;\n};\n\nconst SUPPORTED_TRANSFORM_FUNCTIONS: {\n [key: string]: (args: CSSValue[]) => Transform;\n} = {\n matrix: matrix,\n matrix3d: matrix3d\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {isLengthPercentage, LengthPercentage} from '../types/length-percentage';\nimport {FLAG_INTEGER, TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\nexport type TransformOrigin = [LengthPercentage, LengthPercentage];\n\nconst DEFAULT_VALUE: LengthPercentage = {\n type: TokenType.PERCENTAGE_TOKEN,\n number: 50,\n flags: FLAG_INTEGER\n};\nconst DEFAULT: TransformOrigin = [DEFAULT_VALUE, DEFAULT_VALUE];\n\nexport const transformOrigin: IPropertyListDescriptor = {\n name: 'transform-origin',\n initialValue: '50% 50%',\n prefix: true,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n const origins: LengthPercentage[] = tokens.filter(isLengthPercentage);\n\n if (origins.length !== 2) {\n return DEFAULT;\n }\n\n return [origins[0], origins[1]];\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum VISIBILITY {\n VISIBLE = 0,\n HIDDEN = 1,\n COLLAPSE = 2\n}\n\nexport const visibility: IPropertyIdentValueDescriptor = {\n name: 'visible',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, visibility: string) => {\n switch (visibility) {\n case 'hidden':\n return VISIBILITY.HIDDEN;\n case 'collapse':\n return VISIBILITY.COLLAPSE;\n case 'visible':\n default:\n return VISIBILITY.VISIBLE;\n }\n }\n};\n","const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const decode = (base64: string): ArrayBuffer | number[] => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const buffer =\n typeof ArrayBuffer !== 'undefined' &&\n typeof Uint8Array !== 'undefined' &&\n typeof Uint8Array.prototype.slice !== 'undefined'\n ? new ArrayBuffer(bufferLength)\n : new Array(bufferLength);\n const bytes = Array.isArray(buffer) ? buffer : new Uint8Array(buffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return buffer;\n};\n\nexport const polyUint16Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 2) {\n bytes.push((buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n\nexport const polyUint32Array = (buffer: number[]): number[] => {\n const length = buffer.length;\n const bytes = [];\n for (let i = 0; i < length; i += 4) {\n bytes.push((buffer[i + 3] << 24) | (buffer[i + 2] << 16) | (buffer[i + 1] << 8) | buffer[i]);\n }\n return bytes;\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isNumberToken} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\ninterface zIndex {\n order: number;\n auto: boolean;\n}\n\nexport const zIndex: IPropertyValueDescriptor = {\n name: 'z-index',\n initialValue: 'auto',\n prefix: false,\n type: PropertyDescriptorParsingType.VALUE,\n parse: (_context: Context, token: CSSValue): zIndex => {\n if (token.type === TokenType.IDENT_TOKEN) {\n return {auto: true, order: 0};\n }\n\n if (isNumberToken(token)) {\n return {auto: false, order: token.number};\n }\n\n throw new Error(`Invalid z-index number parsed`);\n }\n};\n","import {CSSValue} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {ITypeDescriptor} from '../ITypeDescriptor';\nimport {Context} from '../../core/context';\n\nexport const time: ITypeDescriptor = {\n name: 'time',\n parse: (_context: Context, value: CSSValue): number => {\n if (value.type === TokenType.DIMENSION_TOKEN) {\n switch (value.unit.toLowerCase()) {\n case 's':\n return 1000 * value.number;\n case 'ms':\n return value.number;\n }\n }\n\n throw new Error(`Unsupported time type`);\n }\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isNumberToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const opacity: IPropertyValueDescriptor = {\n name: 'opacity',\n initialValue: '1',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (_context: Context, token: CSSValue): number => {\n if (isNumberToken(token)) {\n return token.number;\n }\n return 1;\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nexport const textDecorationColor: IPropertyTypeValueDescriptor = {\n name: `text-decoration-color`,\n initialValue: 'transparent',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport const enum TEXT_DECORATION_LINE {\n NONE = 0,\n UNDERLINE = 1,\n OVERLINE = 2,\n LINE_THROUGH = 3,\n BLINK = 4\n}\n\nexport type TextDecorationLine = TEXT_DECORATION_LINE[];\n\nexport const textDecorationLine: IPropertyListDescriptor = {\n name: 'text-decoration-line',\n initialValue: 'none',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): TextDecorationLine => {\n return tokens\n .filter(isIdentToken)\n .map((token) => {\n switch (token.value) {\n case 'underline':\n return TEXT_DECORATION_LINE.UNDERLINE;\n case 'overline':\n return TEXT_DECORATION_LINE.OVERLINE;\n case 'line-through':\n return TEXT_DECORATION_LINE.LINE_THROUGH;\n case 'none':\n return TEXT_DECORATION_LINE.BLINK;\n }\n return TEXT_DECORATION_LINE.NONE;\n })\n .filter((line) => line !== TEXT_DECORATION_LINE.NONE);\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\nexport type FONT_FAMILY = string;\n\nexport type FontFamily = FONT_FAMILY[];\n\nexport const fontFamily: IPropertyListDescriptor = {\n name: `font-family`,\n initialValue: '',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n const accumulator: string[] = [];\n const results: string[] = [];\n tokens.forEach((token) => {\n switch (token.type) {\n case TokenType.IDENT_TOKEN:\n case TokenType.STRING_TOKEN:\n accumulator.push(token.value);\n break;\n case TokenType.NUMBER_TOKEN:\n accumulator.push(token.number.toString());\n break;\n case TokenType.COMMA_TOKEN:\n results.push(accumulator.join(' '));\n accumulator.length = 0;\n break;\n }\n });\n if (accumulator.length) {\n results.push(accumulator.join(' '));\n }\n return results.map((result) => (result.indexOf(' ') === -1 ? result : `'${result}'`));\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\n\nexport const fontSize: IPropertyTypeValueDescriptor = {\n name: `font-size`,\n initialValue: '0',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'length'\n};\n","import {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken, isNumberToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const fontWeight: IPropertyValueDescriptor = {\n name: 'font-weight',\n initialValue: 'normal',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (_context: Context, token: CSSValue): number => {\n if (isNumberToken(token)) {\n return token.number;\n }\n\n if (isIdentToken(token)) {\n switch (token.value) {\n case 'bold':\n return 700;\n case 'normal':\n default:\n return 400;\n }\n }\n\n return 400;\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const fontVariant: IPropertyListDescriptor = {\n name: 'font-variant',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (_context: Context, tokens: CSSValue[]): string[] => {\n return tokens.filter(isIdentToken).map((token) => token.value);\n }\n};\n","import {IPropertyIdentValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const enum FONT_STYLE {\n NORMAL = 'normal',\n ITALIC = 'italic',\n OBLIQUE = 'oblique'\n}\n\nexport const fontStyle: IPropertyIdentValueDescriptor = {\n name: 'font-style',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.IDENT_VALUE,\n parse: (_context: Context, overflow: string) => {\n switch (overflow) {\n case 'oblique':\n return FONT_STYLE.OBLIQUE;\n case 'italic':\n return FONT_STYLE.ITALIC;\n case 'normal':\n default:\n return FONT_STYLE.NORMAL;\n }\n }\n};\n","export const contains = (bit: number, value: number): boolean => (bit & value) !== 0;\n","import {TokenType} from '../syntax/tokenizer';\nimport {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport type Content = CSSValue[];\n\nexport const content: IPropertyListDescriptor = {\n name: 'content',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (_context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return [];\n }\n\n const first = tokens[0];\n\n if (first.type === TokenType.IDENT_TOKEN && first.value === 'none') {\n return [];\n }\n\n return tokens;\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isNumberToken, nonWhiteSpace} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\nexport interface COUNTER_INCREMENT {\n counter: string;\n increment: number;\n}\n\nexport type CounterIncrement = COUNTER_INCREMENT[] | null;\n\nexport const counterIncrement: IPropertyListDescriptor = {\n name: 'counter-increment',\n initialValue: 'none',\n prefix: true,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return null;\n }\n\n const first = tokens[0];\n\n if (first.type === TokenType.IDENT_TOKEN && first.value === 'none') {\n return null;\n }\n\n const increments = [];\n const filtered = tokens.filter(nonWhiteSpace);\n\n for (let i = 0; i < filtered.length; i++) {\n const counter = filtered[i];\n const next = filtered[i + 1];\n if (counter.type === TokenType.IDENT_TOKEN) {\n const increment = next && isNumberToken(next) ? next.number : 1;\n increments.push({counter: counter.value, increment});\n }\n }\n\n return increments;\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken, isNumberToken, nonWhiteSpace} from '../syntax/parser';\nimport {Context} from '../../core/context';\n\nexport interface COUNTER_RESET {\n counter: string;\n reset: number;\n}\n\nexport type CounterReset = COUNTER_RESET[];\n\nexport const counterReset: IPropertyListDescriptor = {\n name: 'counter-reset',\n initialValue: 'none',\n prefix: true,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return [];\n }\n\n const resets = [];\n const filtered = tokens.filter(nonWhiteSpace);\n\n for (let i = 0; i < filtered.length; i++) {\n const counter = filtered[i];\n const next = filtered[i + 1];\n if (isIdentToken(counter) && counter.value !== 'none') {\n const reset = next && isNumberToken(next) ? next.number : 0;\n resets.push({counter: counter.value, reset});\n }\n }\n\n return resets;\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nimport {CSSValue, isDimensionToken} from '../syntax/parser';\nimport {time} from '../types/time';\n\nexport const duration: IPropertyListDescriptor = {\n name: 'duration',\n initialValue: '0s',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (context: Context, tokens: CSSValue[]) => {\n return tokens.filter(isDimensionToken).map((token) => time.parse(context, token));\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isStringToken} from '../syntax/parser';\nimport {TokenType} from '../syntax/tokenizer';\nimport {Context} from '../../core/context';\n\nexport interface QUOTE {\n open: string;\n close: string;\n}\n\nexport type Quotes = QUOTE[] | null;\n\nexport const quotes: IPropertyListDescriptor = {\n name: 'quotes',\n initialValue: 'none',\n prefix: true,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]) => {\n if (tokens.length === 0) {\n return null;\n }\n\n const first = tokens[0];\n\n if (first.type === TokenType.IDENT_TOKEN && first.value === 'none') {\n return null;\n }\n\n const quotes = [];\n const filtered = tokens.filter(isStringToken);\n\n if (filtered.length % 2 !== 0) {\n return null;\n }\n\n for (let i = 0; i < filtered.length; i += 2) {\n const open = filtered[i].value;\n const close = filtered[i + 1].value;\n quotes.push({open, close});\n }\n\n return quotes;\n }\n};\n\nexport const getQuote = (quotes: Quotes, depth: number, open: boolean): string => {\n if (!quotes) {\n return '';\n }\n\n const quote = quotes[Math.min(depth, quotes.length - 1)];\n if (!quote) {\n return '';\n }\n\n return open ? quote.open : quote.close;\n};\n","import {PropertyDescriptorParsingType, IPropertyListDescriptor} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentWithValue, parseFunctionArgs} from '../syntax/parser';\nimport {ZERO_LENGTH} from '../types/length-percentage';\nimport {color, Color} from '../types/color';\nimport {isLength, Length} from '../types/length';\nimport {Context} from '../../core/context';\n\nexport type BoxShadow = BoxShadowItem[];\ninterface BoxShadowItem {\n inset: boolean;\n color: Color;\n offsetX: Length;\n offsetY: Length;\n blur: Length;\n spread: Length;\n}\n\nexport const boxShadow: IPropertyListDescriptor = {\n name: 'box-shadow',\n initialValue: 'none',\n type: PropertyDescriptorParsingType.LIST,\n prefix: false,\n parse: (context: Context, tokens: CSSValue[]): BoxShadow => {\n if (tokens.length === 1 && isIdentWithValue(tokens[0], 'none')) {\n return [];\n }\n\n return parseFunctionArgs(tokens).map((values: CSSValue[]) => {\n const shadow: BoxShadowItem = {\n color: 0x000000ff,\n offsetX: ZERO_LENGTH,\n offsetY: ZERO_LENGTH,\n blur: ZERO_LENGTH,\n spread: ZERO_LENGTH,\n inset: false\n };\n let c = 0;\n for (let i = 0; i < values.length; i++) {\n const token = values[i];\n if (isIdentWithValue(token, 'inset')) {\n shadow.inset = true;\n } else if (isLength(token)) {\n if (c === 0) {\n shadow.offsetX = token;\n } else if (c === 1) {\n shadow.offsetY = token;\n } else if (c === 2) {\n shadow.blur = token;\n } else {\n shadow.spread = token;\n }\n c++;\n } else {\n shadow.color = color.parse(context, token);\n }\n }\n return shadow;\n });\n }\n};\n","import {IPropertyListDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {CSSValue, isIdentToken} from '../syntax/parser';\nimport {Context} from '../../core/context';\nexport const enum PAINT_ORDER_LAYER {\n FILL,\n STROKE,\n MARKERS\n}\n\nexport type PaintOrder = PAINT_ORDER_LAYER[];\n\nexport const paintOrder: IPropertyListDescriptor = {\n name: 'paint-order',\n initialValue: 'normal',\n prefix: false,\n type: PropertyDescriptorParsingType.LIST,\n parse: (_context: Context, tokens: CSSValue[]): PaintOrder => {\n const DEFAULT_VALUE = [PAINT_ORDER_LAYER.FILL, PAINT_ORDER_LAYER.STROKE, PAINT_ORDER_LAYER.MARKERS];\n const layers: PaintOrder = [];\n\n tokens.filter(isIdentToken).forEach((token) => {\n switch (token.value) {\n case 'stroke':\n layers.push(PAINT_ORDER_LAYER.STROKE);\n break;\n case 'fill':\n layers.push(PAINT_ORDER_LAYER.FILL);\n break;\n case 'markers':\n layers.push(PAINT_ORDER_LAYER.MARKERS);\n break;\n }\n });\n DEFAULT_VALUE.forEach((value) => {\n if (layers.indexOf(value) === -1) {\n layers.push(value);\n }\n });\n\n return layers;\n }\n};\n","import {IPropertyTypeValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nexport const webkitTextStrokeColor: IPropertyTypeValueDescriptor = {\n name: `-webkit-text-stroke-color`,\n initialValue: 'currentcolor',\n prefix: false,\n type: PropertyDescriptorParsingType.TYPE_VALUE,\n format: 'color'\n};\n","import {CSSValue, isDimensionToken} from '../syntax/parser';\nimport {IPropertyValueDescriptor, PropertyDescriptorParsingType} from '../IPropertyDescriptor';\nimport {Context} from '../../core/context';\nexport const webkitTextStrokeWidth: IPropertyValueDescriptor = {\n name: `-webkit-text-stroke-width`,\n initialValue: '0',\n type: PropertyDescriptorParsingType.VALUE,\n prefix: false,\n parse: (_context: Context, token: CSSValue): number => {\n if (isDimensionToken(token)) {\n return token.number;\n }\n return 0;\n }\n};\n","import {CSSPropertyDescriptor, PropertyDescriptorParsingType} from './IPropertyDescriptor';\nimport {backgroundClip} from './property-descriptors/background-clip';\nimport {backgroundColor} from './property-descriptors/background-color';\nimport {backgroundImage} from './property-descriptors/background-image';\nimport {backgroundOrigin} from './property-descriptors/background-origin';\nimport {backgroundPosition} from './property-descriptors/background-position';\nimport {backgroundRepeat} from './property-descriptors/background-repeat';\nimport {backgroundSize} from './property-descriptors/background-size';\nimport {\n borderBottomColor,\n borderLeftColor,\n borderRightColor,\n borderTopColor\n} from './property-descriptors/border-color';\nimport {\n borderBottomLeftRadius,\n borderBottomRightRadius,\n borderTopLeftRadius,\n borderTopRightRadius\n} from './property-descriptors/border-radius';\nimport {\n borderBottomStyle,\n borderLeftStyle,\n borderRightStyle,\n borderTopStyle\n} from './property-descriptors/border-style';\nimport {\n borderBottomWidth,\n borderLeftWidth,\n borderRightWidth,\n borderTopWidth\n} from './property-descriptors/border-width';\nimport {color} from './property-descriptors/color';\nimport {direction} from './property-descriptors/direction';\nimport {display, DISPLAY} from './property-descriptors/display';\nimport {float, FLOAT} from './property-descriptors/float';\nimport {letterSpacing} from './property-descriptors/letter-spacing';\nimport {lineBreak} from './property-descriptors/line-break';\nimport {lineHeight} from './property-descriptors/line-height';\nimport {listStyleImage} from './property-descriptors/list-style-image';\nimport {listStylePosition} from './property-descriptors/list-style-position';\nimport {listStyleType} from './property-descriptors/list-style-type';\nimport {marginBottom, marginLeft, marginRight, marginTop} from './property-descriptors/margin';\nimport {overflow, OVERFLOW} from './property-descriptors/overflow';\nimport {overflowWrap} from './property-descriptors/overflow-wrap';\nimport {paddingBottom, paddingLeft, paddingRight, paddingTop} from './property-descriptors/padding';\nimport {textAlign} from './property-descriptors/text-align';\nimport {position, POSITION} from './property-descriptors/position';\nimport {textShadow} from './property-descriptors/text-shadow';\nimport {textTransform} from './property-descriptors/text-transform';\nimport {transform} from './property-descriptors/transform';\nimport {transformOrigin} from './property-descriptors/transform-origin';\nimport {visibility, VISIBILITY} from './property-descriptors/visibility';\nimport {wordBreak} from './property-descriptors/word-break';\nimport {zIndex} from './property-descriptors/z-index';\nimport {CSSValue, isIdentToken, Parser} from './syntax/parser';\nimport {Tokenizer} from './syntax/tokenizer';\nimport {Color, color as colorType, isTransparent} from './types/color';\nimport {angle} from './types/angle';\nimport {image} from './types/image';\nimport {time} from './types/time';\nimport {opacity} from './property-descriptors/opacity';\nimport {textDecorationColor} from './property-descriptors/text-decoration-color';\nimport {textDecorationLine} from './property-descriptors/text-decoration-line';\nimport {isLengthPercentage, LengthPercentage, ZERO_LENGTH} from './types/length-percentage';\nimport {fontFamily} from './property-descriptors/font-family';\nimport {fontSize} from './property-descriptors/font-size';\nimport {isLength} from './types/length';\nimport {fontWeight} from './property-descriptors/font-weight';\nimport {fontVariant} from './property-descriptors/font-variant';\nimport {fontStyle} from './property-descriptors/font-style';\nimport {contains} from '../core/bitwise';\nimport {content} from './property-descriptors/content';\nimport {counterIncrement} from './property-descriptors/counter-increment';\nimport {counterReset} from './property-descriptors/counter-reset';\nimport {duration} from './property-descriptors/duration';\nimport {quotes} from './property-descriptors/quotes';\nimport {boxShadow} from './property-descriptors/box-shadow';\nimport {paintOrder} from './property-descriptors/paint-order';\nimport {webkitTextStrokeColor} from './property-descriptors/webkit-text-stroke-color';\nimport {webkitTextStrokeWidth} from './property-descriptors/webkit-text-stroke-width';\nimport {Context} from '../core/context';\n\nexport class CSSParsedDeclaration {\n animationDuration: ReturnType;\n backgroundClip: ReturnType;\n backgroundColor: Color;\n backgroundImage: ReturnType;\n backgroundOrigin: ReturnType;\n backgroundPosition: ReturnType;\n backgroundRepeat: ReturnType;\n backgroundSize: ReturnType;\n borderTopColor: Color;\n borderRightColor: Color;\n borderBottomColor: Color;\n borderLeftColor: Color;\n borderTopLeftRadius: ReturnType;\n borderTopRightRadius: ReturnType;\n borderBottomRightRadius: ReturnType;\n borderBottomLeftRadius: ReturnType;\n borderTopStyle: ReturnType;\n borderRightStyle: ReturnType;\n borderBottomStyle: ReturnType;\n borderLeftStyle: ReturnType;\n borderTopWidth: ReturnType;\n borderRightWidth: ReturnType;\n borderBottomWidth: ReturnType;\n borderLeftWidth: ReturnType;\n boxShadow: ReturnType;\n color: Color;\n direction: ReturnType;\n display: ReturnType;\n float: ReturnType;\n fontFamily: ReturnType;\n fontSize: LengthPercentage;\n fontStyle: ReturnType;\n fontVariant: ReturnType;\n fontWeight: ReturnType;\n letterSpacing: ReturnType;\n lineBreak: ReturnType;\n lineHeight: CSSValue;\n listStyleImage: ReturnType;\n listStylePosition: ReturnType;\n listStyleType: ReturnType;\n marginTop: CSSValue;\n marginRight: CSSValue;\n marginBottom: CSSValue;\n marginLeft: CSSValue;\n opacity: ReturnType;\n overflowX: OVERFLOW;\n overflowY: OVERFLOW;\n overflowWrap: ReturnType;\n paddingTop: LengthPercentage;\n paddingRight: LengthPercentage;\n paddingBottom: LengthPercentage;\n paddingLeft: LengthPercentage;\n paintOrder: ReturnType;\n position: ReturnType;\n textAlign: ReturnType;\n textDecorationColor: Color;\n textDecorationLine: ReturnType;\n textShadow: ReturnType;\n textTransform: ReturnType;\n transform: ReturnType;\n transformOrigin: ReturnType;\n visibility: ReturnType;\n webkitTextStrokeColor: Color;\n webkitTextStrokeWidth: ReturnType;\n wordBreak: ReturnType;\n zIndex: ReturnType;\n\n constructor(context: Context, declaration: CSSStyleDeclaration) {\n this.animationDuration = parse(context, duration, declaration.animationDuration);\n this.backgroundClip = parse(context, backgroundClip, declaration.backgroundClip);\n this.backgroundColor = parse(context, backgroundColor, declaration.backgroundColor);\n this.backgroundImage = parse(context, backgroundImage, declaration.backgroundImage);\n this.backgroundOrigin = parse(context, backgroundOrigin, declaration.backgroundOrigin);\n this.backgroundPosition = parse(context, backgroundPosition, declaration.backgroundPosition);\n this.backgroundRepeat = parse(context, backgroundRepeat, declaration.backgroundRepeat);\n this.backgroundSize = parse(context, backgroundSize, declaration.backgroundSize);\n this.borderTopColor = parse(context, borderTopColor, declaration.borderTopColor);\n this.borderRightColor = parse(context, borderRightColor, declaration.borderRightColor);\n this.borderBottomColor = parse(context, borderBottomColor, declaration.borderBottomColor);\n this.borderLeftColor = parse(context, borderLeftColor, declaration.borderLeftColor);\n this.borderTopLeftRadius = parse(context, borderTopLeftRadius, declaration.borderTopLeftRadius);\n this.borderTopRightRadius = parse(context, borderTopRightRadius, declaration.borderTopRightRadius);\n this.borderBottomRightRadius = parse(context, borderBottomRightRadius, declaration.borderBottomRightRadius);\n this.borderBottomLeftRadius = parse(context, borderBottomLeftRadius, declaration.borderBottomLeftRadius);\n this.borderTopStyle = parse(context, borderTopStyle, declaration.borderTopStyle);\n this.borderRightStyle = parse(context, borderRightStyle, declaration.borderRightStyle);\n this.borderBottomStyle = parse(context, borderBottomStyle, declaration.borderBottomStyle);\n this.borderLeftStyle = parse(context, borderLeftStyle, declaration.borderLeftStyle);\n this.borderTopWidth = parse(context, borderTopWidth, declaration.borderTopWidth);\n this.borderRightWidth = parse(context, borderRightWidth, declaration.borderRightWidth);\n this.borderBottomWidth = parse(context, borderBottomWidth, declaration.borderBottomWidth);\n this.borderLeftWidth = parse(context, borderLeftWidth, declaration.borderLeftWidth);\n this.boxShadow = parse(context, boxShadow, declaration.boxShadow);\n this.color = parse(context, color, declaration.color);\n this.direction = parse(context, direction, declaration.direction);\n this.display = parse(context, display, declaration.display);\n this.float = parse(context, float, declaration.cssFloat);\n this.fontFamily = parse(context, fontFamily, declaration.fontFamily);\n this.fontSize = parse(context, fontSize, declaration.fontSize);\n this.fontStyle = parse(context, fontStyle, declaration.fontStyle);\n this.fontVariant = parse(context, fontVariant, declaration.fontVariant);\n this.fontWeight = parse(context, fontWeight, declaration.fontWeight);\n this.letterSpacing = parse(context, letterSpacing, declaration.letterSpacing);\n this.lineBreak = parse(context, lineBreak, declaration.lineBreak);\n this.lineHeight = parse(context, lineHeight, declaration.lineHeight);\n this.listStyleImage = parse(context, listStyleImage, declaration.listStyleImage);\n this.listStylePosition = parse(context, listStylePosition, declaration.listStylePosition);\n this.listStyleType = parse(context, listStyleType, declaration.listStyleType);\n this.marginTop = parse(context, marginTop, declaration.marginTop);\n this.marginRight = parse(context, marginRight, declaration.marginRight);\n this.marginBottom = parse(context, marginBottom, declaration.marginBottom);\n this.marginLeft = parse(context, marginLeft, declaration.marginLeft);\n this.opacity = parse(context, opacity, declaration.opacity);\n const overflowTuple = parse(context, overflow, declaration.overflow);\n this.overflowX = overflowTuple[0];\n this.overflowY = overflowTuple[overflowTuple.length > 1 ? 1 : 0];\n this.overflowWrap = parse(context, overflowWrap, declaration.overflowWrap);\n this.paddingTop = parse(context, paddingTop, declaration.paddingTop);\n this.paddingRight = parse(context, paddingRight, declaration.paddingRight);\n this.paddingBottom = parse(context, paddingBottom, declaration.paddingBottom);\n this.paddingLeft = parse(context, paddingLeft, declaration.paddingLeft);\n this.paintOrder = parse(context, paintOrder, declaration.paintOrder);\n this.position = parse(context, position, declaration.position);\n this.textAlign = parse(context, textAlign, declaration.textAlign);\n this.textDecorationColor = parse(\n context,\n textDecorationColor,\n declaration.textDecorationColor ?? declaration.color\n );\n this.textDecorationLine = parse(\n context,\n textDecorationLine,\n declaration.textDecorationLine ?? declaration.textDecoration\n );\n this.textShadow = parse(context, textShadow, declaration.textShadow);\n this.textTransform = parse(context, textTransform, declaration.textTransform);\n this.transform = parse(context, transform, declaration.transform);\n this.transformOrigin = parse(context, transformOrigin, declaration.transformOrigin);\n this.visibility = parse(context, visibility, declaration.visibility);\n this.webkitTextStrokeColor = parse(context, webkitTextStrokeColor, declaration.webkitTextStrokeColor);\n this.webkitTextStrokeWidth = parse(context, webkitTextStrokeWidth, declaration.webkitTextStrokeWidth);\n this.wordBreak = parse(context, wordBreak, declaration.wordBreak);\n this.zIndex = parse(context, zIndex, declaration.zIndex);\n }\n\n isVisible(): boolean {\n return this.display > 0 && this.opacity > 0 && this.visibility === VISIBILITY.VISIBLE;\n }\n\n isTransparent(): boolean {\n return isTransparent(this.backgroundColor);\n }\n\n isTransformed(): boolean {\n return this.transform !== null;\n }\n\n isPositioned(): boolean {\n return this.position !== POSITION.STATIC;\n }\n\n isPositionedWithZIndex(): boolean {\n return this.isPositioned() && !this.zIndex.auto;\n }\n\n isFloating(): boolean {\n return this.float !== FLOAT.NONE;\n }\n\n isInlineLevel(): boolean {\n return (\n contains(this.display, DISPLAY.INLINE) ||\n contains(this.display, DISPLAY.INLINE_BLOCK) ||\n contains(this.display, DISPLAY.INLINE_FLEX) ||\n contains(this.display, DISPLAY.INLINE_GRID) ||\n contains(this.display, DISPLAY.INLINE_LIST_ITEM) ||\n contains(this.display, DISPLAY.INLINE_TABLE)\n );\n }\n}\n\nexport class CSSParsedPseudoDeclaration {\n content: ReturnType;\n quotes: ReturnType;\n\n constructor(context: Context, declaration: CSSStyleDeclaration) {\n this.content = parse(context, content, declaration.content);\n this.quotes = parse(context, quotes, declaration.quotes);\n }\n}\n\nexport class CSSParsedCounterDeclaration {\n counterIncrement: ReturnType;\n counterReset: ReturnType;\n\n constructor(context: Context, declaration: CSSStyleDeclaration) {\n this.counterIncrement = parse(context, counterIncrement, declaration.counterIncrement);\n this.counterReset = parse(context, counterReset, declaration.counterReset);\n }\n}\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst parse = (context: Context, descriptor: CSSPropertyDescriptor, style?: string | null) => {\n const tokenizer = new Tokenizer();\n const value = style !== null && typeof style !== 'undefined' ? style.toString() : descriptor.initialValue;\n tokenizer.write(value);\n const parser = new Parser(tokenizer.read());\n switch (descriptor.type) {\n case PropertyDescriptorParsingType.IDENT_VALUE:\n const token = parser.parseComponentValue();\n return descriptor.parse(context, isIdentToken(token) ? token.value : descriptor.initialValue);\n case PropertyDescriptorParsingType.VALUE:\n return descriptor.parse(context, parser.parseComponentValue());\n case PropertyDescriptorParsingType.LIST:\n return descriptor.parse(context, parser.parseComponentValues());\n case PropertyDescriptorParsingType.TOKEN_VALUE:\n return parser.parseComponentValue();\n case PropertyDescriptorParsingType.TYPE_VALUE:\n switch (descriptor.format) {\n case 'angle':\n return angle.parse(context, parser.parseComponentValue());\n case 'color':\n return colorType.parse(context, parser.parseComponentValue());\n case 'image':\n return image.parse(context, parser.parseComponentValue());\n case 'length':\n const length = parser.parseComponentValue();\n return isLength(length) ? length : ZERO_LENGTH;\n case 'length-percentage':\n const value = parser.parseComponentValue();\n return isLengthPercentage(value) ? value : ZERO_LENGTH;\n case 'time':\n return time.parse(context, parser.parseComponentValue());\n }\n break;\n }\n};\n","const elementDebuggerAttribute = 'data-html2canvas-debug';\nexport const enum DebuggerType {\n NONE,\n ALL,\n CLONE,\n PARSE,\n RENDER\n}\n\nconst getElementDebugType = (element: Element): DebuggerType => {\n const attribute = element.getAttribute(elementDebuggerAttribute);\n switch (attribute) {\n case 'all':\n return DebuggerType.ALL;\n case 'clone':\n return DebuggerType.CLONE;\n case 'parse':\n return DebuggerType.PARSE;\n case 'render':\n return DebuggerType.RENDER;\n default:\n return DebuggerType.NONE;\n }\n};\n\nexport const isDebugging = (element: Element, type: Omit): boolean => {\n const elementType = getElementDebugType(element);\n return elementType === DebuggerType.ALL || type === elementType;\n};\n","import {CSSParsedDeclaration} from '../css/index';\nimport {TextContainer} from './text-container';\nimport {Bounds, parseBounds} from '../css/layout/bounds';\nimport {isHTMLElementNode} from './node-parser';\nimport {Context} from '../core/context';\nimport {DebuggerType, isDebugging} from '../core/debugger';\n\nexport const enum FLAGS {\n CREATES_STACKING_CONTEXT = 1 << 1,\n CREATES_REAL_STACKING_CONTEXT = 1 << 2,\n IS_LIST_OWNER = 1 << 3,\n DEBUG_RENDER = 1 << 4\n}\n\nexport class ElementContainer {\n readonly styles: CSSParsedDeclaration;\n readonly textNodes: TextContainer[] = [];\n readonly elements: ElementContainer[] = [];\n bounds: Bounds;\n flags = 0;\n\n constructor(protected readonly context: Context, element: Element) {\n if (isDebugging(element, DebuggerType.PARSE)) {\n debugger;\n }\n\n this.styles = new CSSParsedDeclaration(context, window.getComputedStyle(element, null));\n\n if (isHTMLElementNode(element)) {\n if (this.styles.animationDuration.some((duration) => duration > 0)) {\n element.style.animationDuration = '0s';\n }\n\n if (this.styles.transform !== null) {\n // getBoundingClientRect takes transforms into account\n element.style.transform = 'none';\n }\n }\n\n this.bounds = parseBounds(this.context, element);\n\n if (isDebugging(element, DebuggerType.RENDER)) {\n this.flags |= FLAGS.DEBUG_RENDER;\n }\n }\n}\n","export const base64 =\n 'AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=';\nexport const byteLength = 19616;\n","const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\n\nexport const encode = (arraybuffer: ArrayBuffer): string => {\n let bytes = new Uint8Array(arraybuffer),\n i,\n len = bytes.length,\n base64 = '';\n\n for (i = 0; i < len; i += 3) {\n base64 += chars[bytes[i] >> 2];\n base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];\n base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];\n base64 += chars[bytes[i + 2] & 63];\n }\n\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + '=';\n } else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + '==';\n }\n\n return base64;\n};\n\nexport const decode = (base64: string): ArrayBuffer => {\n let bufferLength = base64.length * 0.75,\n len = base64.length,\n i,\n p = 0,\n encoded1,\n encoded2,\n encoded3,\n encoded4;\n\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n\n const arraybuffer = new ArrayBuffer(bufferLength),\n bytes = new Uint8Array(arraybuffer);\n\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n\n return arraybuffer;\n};\n","import {decode, polyUint16Array, polyUint32Array} from './Util';\n\nexport type int = number;\n\n/** Shift size for getting the index-2 table offset. */\nexport const UTRIE2_SHIFT_2 = 5;\n\n/** Shift size for getting the index-1 table offset. */\nexport const UTRIE2_SHIFT_1 = 6 + 5;\n\n/**\n * Shift size for shifting left the index array values.\n * Increases possible data size with 16-bit index values at the cost\n * of compactability.\n * This requires data blocks to be aligned by UTRIE2_DATA_GRANULARITY.\n */\nexport const UTRIE2_INDEX_SHIFT = 2;\n\n/**\n * Difference between the two shift sizes,\n * for getting an index-1 offset from an index-2 offset. 6=11-5\n */\nexport const UTRIE2_SHIFT_1_2 = UTRIE2_SHIFT_1 - UTRIE2_SHIFT_2;\n\n/**\n * The part of the index-2 table for U+D800..U+DBFF stores values for\n * lead surrogate code _units_ not code _points_.\n * Values for lead surrogate code _points_ are indexed with this portion of the table.\n * Length=32=0x20=0x400>>UTRIE2_SHIFT_2. (There are 1024=0x400 lead surrogates.)\n */\nexport const UTRIE2_LSCP_INDEX_2_OFFSET = 0x10000 >> UTRIE2_SHIFT_2;\n\n/** Number of entries in a data block. 32=0x20 */\nexport const UTRIE2_DATA_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_2;\n/** Mask for getting the lower bits for the in-data-block offset. */\nexport const UTRIE2_DATA_MASK = UTRIE2_DATA_BLOCK_LENGTH - 1;\n\nexport const UTRIE2_LSCP_INDEX_2_LENGTH = 0x400 >> UTRIE2_SHIFT_2;\n/** Count the lengths of both BMP pieces. 2080=0x820 */\nexport const UTRIE2_INDEX_2_BMP_LENGTH = UTRIE2_LSCP_INDEX_2_OFFSET + UTRIE2_LSCP_INDEX_2_LENGTH;\n/**\n * The 2-byte UTF-8 version of the index-2 table follows at offset 2080=0x820.\n * Length 32=0x20 for lead bytes C0..DF, regardless of UTRIE2_SHIFT_2.\n */\nexport const UTRIE2_UTF8_2B_INDEX_2_OFFSET = UTRIE2_INDEX_2_BMP_LENGTH;\nexport const UTRIE2_UTF8_2B_INDEX_2_LENGTH = 0x800 >> 6; /* U+0800 is the first code point after 2-byte UTF-8 */\n/**\n * The index-1 table, only used for supplementary code points, at offset 2112=0x840.\n * Variable length, for code points up to highStart, where the last single-value range starts.\n * Maximum length 512=0x200=0x100000>>UTRIE2_SHIFT_1.\n * (For 0x100000 supplementary code points U+10000..U+10ffff.)\n *\n * The part of the index-2 table for supplementary code points starts\n * after this index-1 table.\n *\n * Both the index-1 table and the following part of the index-2 table\n * are omitted completely if there is only BMP data.\n */\nexport const UTRIE2_INDEX_1_OFFSET = UTRIE2_UTF8_2B_INDEX_2_OFFSET + UTRIE2_UTF8_2B_INDEX_2_LENGTH;\n\n/**\n * Number of index-1 entries for the BMP. 32=0x20\n * This part of the index-1 table is omitted from the serialized form.\n */\nexport const UTRIE2_OMITTED_BMP_INDEX_1_LENGTH = 0x10000 >> UTRIE2_SHIFT_1;\n\n/** Number of entries in an index-2 block. 64=0x40 */\nexport const UTRIE2_INDEX_2_BLOCK_LENGTH = 1 << UTRIE2_SHIFT_1_2;\n/** Mask for getting the lower bits for the in-index-2-block offset. */\nexport const UTRIE2_INDEX_2_MASK = UTRIE2_INDEX_2_BLOCK_LENGTH - 1;\n\nconst slice16 = (view: number[] | Uint16Array, start: number, end?: number) => {\n if (view.slice) {\n return view.slice(start, end);\n }\n\n return new Uint16Array(Array.prototype.slice.call(view, start, end));\n};\n\nconst slice32 = (view: number[] | Uint32Array, start: number, end?: number) => {\n if (view.slice) {\n return view.slice(start, end);\n }\n\n return new Uint32Array(Array.prototype.slice.call(view, start, end));\n};\n\nexport const createTrieFromBase64 = (base64: string, _byteLength: number): Trie => {\n const buffer = decode(base64);\n const view32 = Array.isArray(buffer) ? polyUint32Array(buffer) : new Uint32Array(buffer);\n const view16 = Array.isArray(buffer) ? polyUint16Array(buffer) : new Uint16Array(buffer);\n const headerLength = 24;\n\n const index = slice16(view16, headerLength / 2, view32[4] / 2);\n const data =\n view32[5] === 2\n ? slice16(view16, (headerLength + view32[4]) / 2)\n : slice32(view32, Math.ceil((headerLength + view32[4]) / 4));\n\n return new Trie(view32[0], view32[1], view32[2], view32[3], index, data);\n};\n\nexport class Trie {\n initialValue: int;\n errorValue: int;\n highStart: int;\n highValueIndex: int;\n index: Uint16Array | number[];\n data: Uint32Array | Uint16Array | number[];\n\n constructor(\n initialValue: int,\n errorValue: int,\n highStart: int,\n highValueIndex: int,\n index: Uint16Array | number[],\n data: Uint32Array | Uint16Array | number[]\n ) {\n this.initialValue = initialValue;\n this.errorValue = errorValue;\n this.highStart = highStart;\n this.highValueIndex = highValueIndex;\n this.index = index;\n this.data = data;\n }\n\n /**\n * Get the value for a code point as stored in the Trie.\n *\n * @param codePoint the code point\n * @return the value\n */\n get(codePoint: number): number {\n let ix;\n if (codePoint >= 0) {\n if (codePoint < 0x0d800 || (codePoint > 0x0dbff && codePoint <= 0x0ffff)) {\n // Ordinary BMP code point, excluding leading surrogates.\n // BMP uses a single level lookup. BMP index starts at offset 0 in the Trie2 index.\n // 16 bit data is stored in the index array itself.\n ix = this.index[codePoint >> UTRIE2_SHIFT_2];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n\n if (codePoint <= 0xffff) {\n // Lead Surrogate Code Point. A Separate index section is stored for\n // lead surrogate code units and code points.\n // The main index has the code unit data.\n // For this function, we need the code point data.\n // Note: this expression could be refactored for slightly improved efficiency, but\n // surrogate code points will be so rare in practice that it's not worth it.\n ix = this.index[UTRIE2_LSCP_INDEX_2_OFFSET + ((codePoint - 0xd800) >> UTRIE2_SHIFT_2)];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n\n if (codePoint < this.highStart) {\n // Supplemental code point, use two-level lookup.\n ix = UTRIE2_INDEX_1_OFFSET - UTRIE2_OMITTED_BMP_INDEX_1_LENGTH + (codePoint >> UTRIE2_SHIFT_1);\n ix = this.index[ix];\n ix += (codePoint >> UTRIE2_SHIFT_2) & UTRIE2_INDEX_2_MASK;\n ix = this.index[ix];\n ix = (ix << UTRIE2_INDEX_SHIFT) + (codePoint & UTRIE2_DATA_MASK);\n return this.data[ix];\n }\n if (codePoint <= 0x10ffff) {\n return this.data[this.highValueIndex];\n }\n }\n\n // Fall through. The code point is outside of the legal range of 0..0x10ffff.\n return this.errorValue;\n }\n}\n","import {base64, byteLength} from './grapheme-break-trie';\nimport {createTrieFromBase64} from 'utrie';\n\nconst Other = 0;\nconst Prepend = 1;\nconst CR = 2;\nconst LF = 3;\nconst Control = 4;\nconst Extend = 5;\nconst Regional_Indicator = 6;\nconst SpacingMark = 7;\nconst L = 8;\nconst V = 9;\nconst T = 10;\nconst LV = 11;\nconst LVT = 12;\nconst ZWJ = 13;\nconst Extended_Pictographic = 14;\nconst RI = 15;\n\nexport const classes: {[key: string]: number} = {\n Other,\n Prepend,\n CR,\n LF,\n Control,\n Extend,\n Regional_Indicator,\n SpacingMark,\n L,\n V,\n T,\n LV,\n LVT,\n ZWJ,\n Extended_Pictographic,\n RI,\n};\n\nexport const toCodePoints = (str: string): number[] => {\n const codePoints = [];\n let i = 0;\n const length = str.length;\n while (i < length) {\n const value = str.charCodeAt(i++);\n if (value >= 0xd800 && value <= 0xdbff && i < length) {\n const extra = str.charCodeAt(i++);\n if ((extra & 0xfc00) === 0xdc00) {\n codePoints.push(((value & 0x3ff) << 10) + (extra & 0x3ff) + 0x10000);\n } else {\n codePoints.push(value);\n i--;\n }\n } else {\n codePoints.push(value);\n }\n }\n return codePoints;\n};\n\nexport const fromCodePoint = (...codePoints: number[]): string => {\n if (String.fromCodePoint) {\n return String.fromCodePoint(...codePoints);\n }\n\n const length = codePoints.length;\n if (!length) {\n return '';\n }\n\n const codeUnits = [];\n\n let index = -1;\n let result = '';\n while (++index < length) {\n let codePoint = codePoints[index];\n if (codePoint <= 0xffff) {\n codeUnits.push(codePoint);\n } else {\n codePoint -= 0x10000;\n codeUnits.push((codePoint >> 10) + 0xd800, (codePoint % 0x400) + 0xdc00);\n }\n if (index + 1 === length || codeUnits.length > 0x4000) {\n result += String.fromCharCode(...codeUnits);\n codeUnits.length = 0;\n }\n }\n return result;\n};\n\nexport const UnicodeTrie = createTrieFromBase64(base64, byteLength);\n\nexport const BREAK_NOT_ALLOWED = '×';\nexport const BREAK_ALLOWED = '÷';\n\nexport type BREAK_OPPORTUNITIES = typeof BREAK_NOT_ALLOWED | typeof BREAK_ALLOWED;\n\nexport const codePointToClass = (codePoint: number): number => UnicodeTrie.get(codePoint);\n\nconst _graphemeBreakAtIndex = (_codePoints: number[], classTypes: number[], index: number): BREAK_OPPORTUNITIES => {\n let prevIndex = index - 2;\n let prev = classTypes[prevIndex];\n const current = classTypes[index - 1];\n const next = classTypes[index];\n // GB3 Do not break between a CR and LF\n if (current === CR && next === LF) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB4 Otherwise, break before and after controls.\n if (current === CR || current === LF || current === Control) {\n return BREAK_ALLOWED;\n }\n\n // GB5\n if (next === CR || next === LF || next === Control) {\n return BREAK_ALLOWED;\n }\n\n // Do not break Hangul syllable sequences.\n // GB6\n if (current === L && [L, V, LV, LVT].indexOf(next) !== -1) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB7\n if ((current === LV || current === V) && (next === V || next === T)) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB8\n if ((current === LVT || current === T) && next === T) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB9 Do not break before extending characters or ZWJ.\n if (next === ZWJ || next === Extend) {\n return BREAK_NOT_ALLOWED;\n }\n // Do not break before SpacingMarks, or after Prepend characters.\n // GB9a\n if (next === SpacingMark) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB9a\n if (current === Prepend) {\n return BREAK_NOT_ALLOWED;\n }\n\n // GB11 Do not break within emoji modifier sequences or emoji zwj sequences.\n if (current === ZWJ && next === Extended_Pictographic) {\n while (prev === Extend) {\n prev = classTypes[--prevIndex];\n }\n if (prev === Extended_Pictographic) {\n return BREAK_NOT_ALLOWED;\n }\n }\n\n // GB12 Do not break within emoji flag sequences.\n // That is, do not break between regional indicator (RI) symbols\n // if there is an odd number of RI characters before the break point.\n if (current === RI && next === RI) {\n let countRI = 0;\n while (prev === RI) {\n countRI++;\n prev = classTypes[--prevIndex];\n }\n if (countRI % 2 === 0) {\n return BREAK_NOT_ALLOWED;\n }\n }\n\n return BREAK_ALLOWED;\n};\n\nexport const graphemeBreakAtIndex = (codePoints: number[], index: number): BREAK_OPPORTUNITIES => {\n // GB1 Break at the start and end of text, unless the text is empty.\n if (index === 0) {\n return BREAK_ALLOWED;\n }\n\n // GB2\n if (index >= codePoints.length) {\n return BREAK_ALLOWED;\n }\n\n const classTypes = codePoints.map(codePointToClass);\n return _graphemeBreakAtIndex(codePoints, classTypes, index);\n};\n\nexport const GraphemeBreaker = (str: string) => {\n const codePoints = toCodePoints(str);\n const length = codePoints.length;\n let index = 0;\n let lastEnd = 0;\n const classTypes = codePoints.map(codePointToClass);\n\n return {\n next: () => {\n if (index >= length) {\n return {done: true, value: null};\n }\n\n let graphemeBreak = BREAK_NOT_ALLOWED;\n while (\n index < length &&\n (graphemeBreak = _graphemeBreakAtIndex(codePoints, classTypes, ++index)) === BREAK_NOT_ALLOWED\n ) {}\n\n if (graphemeBreak !== BREAK_NOT_ALLOWED || index === length) {\n const value = fromCodePoint.apply(null, codePoints.slice(lastEnd, index));\n lastEnd = index;\n return {value, done: false};\n }\n\n return {done: true, value: null};\n while (index < length) {}\n\n return {done: true, value: null};\n },\n };\n};\n\nexport const splitGraphemes = (str: string): string[] => {\n const breaker = GraphemeBreaker(str);\n\n const graphemes = [];\n let bk;\n\n while (!(bk = breaker.next()).done) {\n if (bk.value) {\n graphemes.push(bk.value.slice());\n }\n }\n\n return graphemes;\n};\n","import {Bounds} from '../css/layout/bounds';\nimport {\n isBodyElement,\n isCanvasElement,\n isCustomElement,\n isElementNode,\n isHTMLElementNode,\n isIFrameElement,\n isImageElement,\n isScriptElement,\n isSelectElement,\n isSlotElement,\n isStyleElement,\n isSVGElementNode,\n isTextareaElement,\n isTextNode,\n isVideoElement\n} from './node-parser';\nimport {isIdentToken, nonFunctionArgSeparator} from '../css/syntax/parser';\nimport {TokenType} from '../css/syntax/tokenizer';\nimport {CounterState, createCounterText} from '../css/types/functions/counter';\nimport {LIST_STYLE_TYPE, listStyleType} from '../css/property-descriptors/list-style-type';\nimport {CSSParsedCounterDeclaration, CSSParsedPseudoDeclaration} from '../css/index';\nimport {getQuote} from '../css/property-descriptors/quotes';\nimport {Context} from '../core/context';\nimport {DebuggerType, isDebugging} from '../core/debugger';\n\nexport interface CloneOptions {\n ignoreElements?: (element: Element) => boolean;\n onclone?: (document: Document, element: HTMLElement) => void;\n allowTaint?: boolean;\n}\n\nexport interface WindowOptions {\n scrollX: number;\n scrollY: number;\n windowWidth: number;\n windowHeight: number;\n}\n\nexport type CloneConfigurations = CloneOptions & {\n inlineImages: boolean;\n copyStyles: boolean;\n};\n\nconst IGNORE_ATTRIBUTE = 'data-html2canvas-ignore';\n\nexport class DocumentCloner {\n private readonly scrolledElements: [Element, number, number][];\n private readonly referenceElement: HTMLElement;\n clonedReferenceElement?: HTMLElement;\n private readonly documentElement: HTMLElement;\n private readonly counters: CounterState;\n private quoteDepth: number;\n\n constructor(\n private readonly context: Context,\n element: HTMLElement,\n private readonly options: CloneConfigurations\n ) {\n this.scrolledElements = [];\n this.referenceElement = element;\n this.counters = new CounterState();\n this.quoteDepth = 0;\n if (!element.ownerDocument) {\n throw new Error('Cloned element does not have an owner document');\n }\n\n this.documentElement = this.cloneNode(element.ownerDocument.documentElement, false) as HTMLElement;\n }\n\n toIFrame(ownerDocument: Document, windowSize: Bounds): Promise {\n const iframe: HTMLIFrameElement = createIFrameContainer(ownerDocument, windowSize);\n\n if (!iframe.contentWindow) {\n return Promise.reject(`Unable to find iframe window`);\n }\n\n const scrollX = (ownerDocument.defaultView as Window).pageXOffset;\n const scrollY = (ownerDocument.defaultView as Window).pageYOffset;\n\n const cloneWindow = iframe.contentWindow;\n const documentClone: Document = cloneWindow.document;\n\n /* Chrome doesn't detect relative background-images assigned in inline \";\r\n var nW = globalObject.open();\r\n\r\n if (nW !== null) {\r\n nW.document.write(htmlForNewWindow);\r\n }\r\n return nW;\r\n } else {\r\n throw new Error(\r\n \"The option pdfobjectnewwindow just works in a browser-environment.\"\r\n );\r\n }\r\n case \"pdfjsnewwindow\":\r\n if (\r\n Object.prototype.toString.call(globalObject) === \"[object Window]\"\r\n ) {\r\n var pdfJsUrl = options.pdfJsUrl || \"examples/PDF.js/web/viewer.html\";\r\n var htmlForPDFjsNewWindow =\r\n \"\" +\r\n \"\" +\r\n '' +\r\n \"\";\r\n var dataURLNewWindow = globalObject.open();\r\n if (dataURLNewWindow !== null) {\r\n dataURLNewWindow.document.write(htmlForDataURLNewWindow);\r\n dataURLNewWindow.document.title = options.filename;\r\n }\r\n if (dataURLNewWindow || typeof safari === \"undefined\")\r\n return dataURLNewWindow;\r\n } else {\r\n throw new Error(\r\n \"The option dataurlnewwindow just works in a browser-environment.\"\r\n );\r\n }\r\n break;\r\n case \"datauri\":\r\n case \"dataurl\":\r\n return (globalObject.document.location.href = this.output(\r\n \"datauristring\",\r\n options\r\n ));\r\n default:\r\n return null;\r\n }\r\n }));\r\n\r\n /**\r\n * Used to see if a supplied hotfix was requested when the pdf instance was created.\r\n * @param {string} hotfixName - The name of the hotfix to check.\r\n * @returns {boolean}\r\n */\r\n var hasHotfix = function(hotfixName) {\r\n return (\r\n Array.isArray(hotfixes) === true && hotfixes.indexOf(hotfixName) > -1\r\n );\r\n };\r\n\r\n switch (unit) {\r\n case \"pt\":\r\n scaleFactor = 1;\r\n break;\r\n case \"mm\":\r\n scaleFactor = 72 / 25.4;\r\n break;\r\n case \"cm\":\r\n scaleFactor = 72 / 2.54;\r\n break;\r\n case \"in\":\r\n scaleFactor = 72;\r\n break;\r\n case \"px\":\r\n if (hasHotfix(\"px_scaling\") == true) {\r\n scaleFactor = 72 / 96;\r\n } else {\r\n scaleFactor = 96 / 72;\r\n }\r\n break;\r\n case \"pc\":\r\n scaleFactor = 12;\r\n break;\r\n case \"em\":\r\n scaleFactor = 12;\r\n break;\r\n case \"ex\":\r\n scaleFactor = 6;\r\n break;\r\n default:\r\n if (typeof unit === \"number\") {\r\n scaleFactor = unit;\r\n } else {\r\n throw new Error(\"Invalid unit: \" + unit);\r\n }\r\n }\r\n\r\n var encryption = null;\r\n setCreationDate();\r\n setFileId();\r\n\r\n var getEncryptor = function(objectId) {\r\n if (encryptionOptions !== null) {\r\n return encryption.encryptor(objectId, 0);\r\n }\r\n return function(data) {\r\n return data;\r\n };\r\n };\r\n\r\n //---------------------------------------\r\n // Public API\r\n\r\n var getPageInfo = (API.__private__.getPageInfo = API.getPageInfo = function(\r\n pageNumberOneBased\r\n ) {\r\n if (isNaN(pageNumberOneBased) || pageNumberOneBased % 1 !== 0) {\r\n throw new Error(\"Invalid argument passed to jsPDF.getPageInfo\");\r\n }\r\n var objId = pagesContext[pageNumberOneBased].objId;\r\n return {\r\n objId: objId,\r\n pageNumber: pageNumberOneBased,\r\n pageContext: pagesContext[pageNumberOneBased]\r\n };\r\n });\r\n\r\n var getPageInfoByObjId = (API.__private__.getPageInfoByObjId = function(\r\n objId\r\n ) {\r\n if (isNaN(objId) || objId % 1 !== 0) {\r\n throw new Error(\"Invalid argument passed to jsPDF.getPageInfoByObjId\");\r\n }\r\n for (var pageNumber in pagesContext) {\r\n if (pagesContext[pageNumber].objId === objId) {\r\n break;\r\n }\r\n }\r\n return getPageInfo(pageNumber);\r\n });\r\n\r\n var getCurrentPageInfo = (API.__private__.getCurrentPageInfo = API.getCurrentPageInfo = function() {\r\n return {\r\n objId: pagesContext[currentPage].objId,\r\n pageNumber: currentPage,\r\n pageContext: pagesContext[currentPage]\r\n };\r\n });\r\n\r\n /**\r\n * Adds (and transfers the focus to) new page to the PDF document.\r\n * @param format {String/Array} The format of the new page. Can be:
  • a0 - a10
  • b0 - b10
  • c0 - c10
  • dl
  • letter
  • government-letter
  • legal
  • junior-legal
  • ledger
  • tabloid
  • credit-card

\r\n * Default is \"a4\". If you want to use your own format just pass instead of one of the above predefined formats the size as an number-array, e.g. [595.28, 841.89]\r\n * @param orientation {string} Orientation of the new page. Possible values are \"portrait\" or \"landscape\" (or shortcuts \"p\" (Default), \"l\").\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n *\r\n * @memberof jsPDF#\r\n * @name addPage\r\n */\r\n API.addPage = function() {\r\n _addPage.apply(this, arguments);\r\n return this;\r\n };\r\n /**\r\n * Adds (and transfers the focus to) new page to the PDF document.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n *\r\n * @memberof jsPDF#\r\n * @name setPage\r\n * @param {number} page Switch the active page to the page number specified (indexed starting at 1).\r\n * @example\r\n * doc = jsPDF()\r\n * doc.addPage()\r\n * doc.addPage()\r\n * doc.text('I am on page 3', 10, 10)\r\n * doc.setPage(1)\r\n * doc.text('I am on page 1', 10, 10)\r\n */\r\n API.setPage = function() {\r\n _setPage.apply(this, arguments);\r\n setOutputDestination.call(this, pages[currentPage]);\r\n return this;\r\n };\r\n\r\n /**\r\n * @name insertPage\r\n * @memberof jsPDF#\r\n *\r\n * @function\r\n * @instance\r\n * @param {Object} beforePage\r\n * @returns {jsPDF}\r\n */\r\n API.insertPage = function(beforePage) {\r\n this.addPage();\r\n this.movePage(currentPage, beforePage);\r\n return this;\r\n };\r\n\r\n /**\r\n * @name movePage\r\n * @memberof jsPDF#\r\n * @function\r\n * @instance\r\n * @param {number} targetPage\r\n * @param {number} beforePage\r\n * @returns {jsPDF}\r\n */\r\n API.movePage = function(targetPage, beforePage) {\r\n var tmpPages, tmpPagesContext;\r\n if (targetPage > beforePage) {\r\n tmpPages = pages[targetPage];\r\n tmpPagesContext = pagesContext[targetPage];\r\n for (var i = targetPage; i > beforePage; i--) {\r\n pages[i] = pages[i - 1];\r\n pagesContext[i] = pagesContext[i - 1];\r\n }\r\n pages[beforePage] = tmpPages;\r\n pagesContext[beforePage] = tmpPagesContext;\r\n this.setPage(beforePage);\r\n } else if (targetPage < beforePage) {\r\n tmpPages = pages[targetPage];\r\n tmpPagesContext = pagesContext[targetPage];\r\n for (var j = targetPage; j < beforePage; j++) {\r\n pages[j] = pages[j + 1];\r\n pagesContext[j] = pagesContext[j + 1];\r\n }\r\n pages[beforePage] = tmpPages;\r\n pagesContext[beforePage] = tmpPagesContext;\r\n this.setPage(beforePage);\r\n }\r\n return this;\r\n };\r\n\r\n /**\r\n * Deletes a page from the PDF.\r\n * @name deletePage\r\n * @memberof jsPDF#\r\n * @function\r\n * @param {number} targetPage\r\n * @instance\r\n * @returns {jsPDF}\r\n */\r\n API.deletePage = function() {\r\n _deletePage.apply(this, arguments);\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds text to page. Supports adding multiline text when 'text' argument is an Array of Strings.\r\n *\r\n * @function\r\n * @instance\r\n * @param {String|Array} text String or array of strings to be added to the page. Each line is shifted one line down per font, spacing settings declared before this call.\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page.\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page.\r\n * @param {Object} [options] - Collection of settings signaling how the text must be encoded.\r\n * @param {string} [options.align=left] - The alignment of the text, possible values: left, center, right, justify.\r\n * @param {string} [options.baseline=alphabetic] - Sets text baseline used when drawing the text, possible values: alphabetic, ideographic, bottom, top, middle, hanging\r\n * @param {number|Matrix} [options.angle=0] - Rotate the text clockwise or counterclockwise. Expects the angle in degree.\r\n * @param {number} [options.rotationDirection=1] - Direction of the rotation. 0 = clockwise, 1 = counterclockwise.\r\n * @param {number} [options.charSpace=0] - The space between each letter.\r\n * @param {number} [options.horizontalScale=1] - Horizontal scale of the text as a factor of the regular size.\r\n * @param {number} [options.lineHeightFactor=1.15] - The lineheight of each line.\r\n * @param {Object} [options.flags] - Flags for to8bitStream.\r\n * @param {boolean} [options.flags.noBOM=true] - Don't add BOM to Unicode-text.\r\n * @param {boolean} [options.flags.autoencode=true] - Autoencode the Text.\r\n * @param {number} [options.maxWidth=0] - Split the text by given width, 0 = no split.\r\n * @param {string} [options.renderingMode=fill] - Set how the text should be rendered, possible values: fill, stroke, fillThenStroke, invisible, fillAndAddForClipping, strokeAndAddPathForClipping, fillThenStrokeAndAddToPathForClipping, addToPathForClipping.\r\n * @param {boolean} [options.isInputVisual] - Option for the BidiEngine\r\n * @param {boolean} [options.isOutputVisual] - Option for the BidiEngine\r\n * @param {boolean} [options.isInputRtl] - Option for the BidiEngine\r\n * @param {boolean} [options.isOutputRtl] - Option for the BidiEngine\r\n * @param {boolean} [options.isSymmetricSwapping] - Option for the BidiEngine\r\n * @param {number|Matrix} transform If transform is a number the text will be rotated by this value around the anchor set by x and y.\r\n *\r\n * If it is a Matrix, this matrix gets directly applied to the text, which allows shearing\r\n * effects etc.; the x and y offsets are then applied AFTER the coordinate system has been established by this\r\n * matrix. This means passing a rotation matrix that is equivalent to some rotation angle will in general yield a\r\n * DIFFERENT result. A matrix is only allowed in \"advanced\" API mode.\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name text\r\n */\r\n API.__private__.text = API.text = function(text, x, y, options, transform) {\r\n /*\r\n * Inserts something like this into PDF\r\n * BT\r\n * /F1 16 Tf % Font name + size\r\n * 16 TL % How many units down for next line in multiline text\r\n * 0 g % color\r\n * 28.35 813.54 Td % position\r\n * (line one) Tj\r\n * T* (line two) Tj\r\n * T* (line three) Tj\r\n * ET\r\n */\r\n options = options || {};\r\n var scope = options.scope || this;\r\n var payload, da, angle, align, charSpace, maxWidth, flags, horizontalScale;\r\n\r\n // Pre-August-2012 the order of arguments was function(x, y, text, flags)\r\n // in effort to make all calls have similar signature like\r\n // function(data, coordinates... , miscellaneous)\r\n // this method had its args flipped.\r\n // code below allows backward compatibility with old arg order.\r\n if (\r\n typeof text === \"number\" &&\r\n typeof x === \"number\" &&\r\n (typeof y === \"string\" || Array.isArray(y))\r\n ) {\r\n var tmp = y;\r\n y = x;\r\n x = text;\r\n text = tmp;\r\n }\r\n\r\n var transformationMatrix;\r\n\r\n if (arguments[3] instanceof Matrix === false) {\r\n flags = arguments[3];\r\n angle = arguments[4];\r\n align = arguments[5];\r\n\r\n if (typeof flags !== \"object\" || flags === null) {\r\n if (typeof angle === \"string\") {\r\n align = angle;\r\n angle = null;\r\n }\r\n if (typeof flags === \"string\") {\r\n align = flags;\r\n flags = null;\r\n }\r\n if (typeof flags === \"number\") {\r\n angle = flags;\r\n flags = null;\r\n }\r\n options = {\r\n flags: flags,\r\n angle: angle,\r\n align: align\r\n };\r\n }\r\n } else {\r\n advancedApiModeTrap(\r\n \"The transform parameter of text() with a Matrix value\"\r\n );\r\n transformationMatrix = transform;\r\n }\r\n\r\n if (isNaN(x) || isNaN(y) || typeof text === \"undefined\" || text === null) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.text\");\r\n }\r\n\r\n if (text.length === 0) {\r\n return scope;\r\n }\r\n\r\n var xtra = \"\";\r\n var isHex = false;\r\n var lineHeight =\r\n typeof options.lineHeightFactor === \"number\"\r\n ? options.lineHeightFactor\r\n : lineHeightFactor;\r\n var scaleFactor = scope.internal.scaleFactor;\r\n\r\n function ESC(s) {\r\n s = s.split(\"\\t\").join(Array(options.TabLen || 9).join(\" \"));\r\n return pdfEscape(s, flags);\r\n }\r\n\r\n function transformTextToSpecialArray(text) {\r\n //we don't want to destroy original text array, so cloning it\r\n var sa = text.concat();\r\n var da = [];\r\n var len = sa.length;\r\n var curDa;\r\n //we do array.join('text that must not be PDFescaped\")\r\n //thus, pdfEscape each component separately\r\n while (len--) {\r\n curDa = sa.shift();\r\n if (typeof curDa === \"string\") {\r\n da.push(curDa);\r\n } else {\r\n if (\r\n Array.isArray(text) &&\r\n (curDa.length === 1 ||\r\n (curDa[1] === undefined && curDa[2] === undefined))\r\n ) {\r\n da.push(curDa[0]);\r\n } else {\r\n da.push([curDa[0], curDa[1], curDa[2]]);\r\n }\r\n }\r\n }\r\n return da;\r\n }\r\n\r\n function processTextByFunction(text, processingFunction) {\r\n var result;\r\n if (typeof text === \"string\") {\r\n result = processingFunction(text)[0];\r\n } else if (Array.isArray(text)) {\r\n //we don't want to destroy original text array, so cloning it\r\n var sa = text.concat();\r\n var da = [];\r\n var len = sa.length;\r\n var curDa;\r\n var tmpResult;\r\n //we do array.join('text that must not be PDFescaped\")\r\n //thus, pdfEscape each component separately\r\n while (len--) {\r\n curDa = sa.shift();\r\n if (typeof curDa === \"string\") {\r\n da.push(processingFunction(curDa)[0]);\r\n } else if (Array.isArray(curDa) && typeof curDa[0] === \"string\") {\r\n tmpResult = processingFunction(curDa[0], curDa[1], curDa[2]);\r\n da.push([tmpResult[0], tmpResult[1], tmpResult[2]]);\r\n }\r\n }\r\n result = da;\r\n }\r\n return result;\r\n }\r\n\r\n //Check if text is of type String\r\n var textIsOfTypeString = false;\r\n var tmpTextIsOfTypeString = true;\r\n\r\n if (typeof text === \"string\") {\r\n textIsOfTypeString = true;\r\n } else if (Array.isArray(text)) {\r\n //we don't want to destroy original text array, so cloning it\r\n var sa = text.concat();\r\n da = [];\r\n var len = sa.length;\r\n var curDa;\r\n //we do array.join('text that must not be PDFescaped\")\r\n //thus, pdfEscape each component separately\r\n while (len--) {\r\n curDa = sa.shift();\r\n if (\r\n typeof curDa !== \"string\" ||\r\n (Array.isArray(curDa) && typeof curDa[0] !== \"string\")\r\n ) {\r\n tmpTextIsOfTypeString = false;\r\n }\r\n }\r\n textIsOfTypeString = tmpTextIsOfTypeString;\r\n }\r\n if (textIsOfTypeString === false) {\r\n throw new Error(\r\n 'Type of text must be string or Array. \"' +\r\n text +\r\n '\" is not recognized.'\r\n );\r\n }\r\n\r\n //If there are any newlines in text, we assume\r\n //the user wanted to print multiple lines, so break the\r\n //text up into an array. If the text is already an array,\r\n //we assume the user knows what they are doing.\r\n //Convert text into an array anyway to simplify\r\n //later code.\r\n\r\n if (typeof text === \"string\") {\r\n if (text.match(/[\\r?\\n]/)) {\r\n text = text.split(/\\r\\n|\\r|\\n/g);\r\n } else {\r\n text = [text];\r\n }\r\n }\r\n\r\n //baseline\r\n var height = activeFontSize / scope.internal.scaleFactor;\r\n var descent = height * (lineHeight - 1);\r\n\r\n switch (options.baseline) {\r\n case \"bottom\":\r\n y -= descent;\r\n break;\r\n case \"top\":\r\n y += height - descent;\r\n break;\r\n case \"hanging\":\r\n y += height - 2 * descent;\r\n break;\r\n case \"middle\":\r\n y += height / 2 - descent;\r\n break;\r\n case \"ideographic\":\r\n case \"alphabetic\":\r\n default:\r\n // do nothing, everything is fine\r\n break;\r\n }\r\n\r\n //multiline\r\n maxWidth = options.maxWidth || 0;\r\n\r\n if (maxWidth > 0) {\r\n if (typeof text === \"string\") {\r\n text = scope.splitTextToSize(text, maxWidth);\r\n } else if (Object.prototype.toString.call(text) === \"[object Array]\") {\r\n text = text.reduce(function(acc, textLine) {\r\n return acc.concat(scope.splitTextToSize(textLine, maxWidth));\r\n }, []);\r\n }\r\n }\r\n\r\n //creating Payload-Object to make text byRef\r\n payload = {\r\n text: text,\r\n x: x,\r\n y: y,\r\n options: options,\r\n mutex: {\r\n pdfEscape: pdfEscape,\r\n activeFontKey: activeFontKey,\r\n fonts: fonts,\r\n activeFontSize: activeFontSize\r\n }\r\n };\r\n events.publish(\"preProcessText\", payload);\r\n\r\n text = payload.text;\r\n options = payload.options;\r\n\r\n //angle\r\n angle = options.angle;\r\n\r\n if (\r\n transformationMatrix instanceof Matrix === false &&\r\n angle &&\r\n typeof angle === \"number\"\r\n ) {\r\n angle *= Math.PI / 180;\r\n\r\n if (options.rotationDirection === 0) {\r\n angle = -angle;\r\n }\r\n\r\n if (apiMode === ApiMode.ADVANCED) {\r\n angle = -angle;\r\n }\r\n\r\n var c = Math.cos(angle);\r\n var s = Math.sin(angle);\r\n transformationMatrix = new Matrix(c, s, -s, c, 0, 0);\r\n } else if (angle && angle instanceof Matrix) {\r\n transformationMatrix = angle;\r\n }\r\n\r\n if (apiMode === ApiMode.ADVANCED && !transformationMatrix) {\r\n transformationMatrix = identityMatrix;\r\n }\r\n\r\n //charSpace\r\n\r\n charSpace = options.charSpace || activeCharSpace;\r\n\r\n if (typeof charSpace !== \"undefined\") {\r\n xtra += hpf(scale(charSpace)) + \" Tc\\n\";\r\n this.setCharSpace(this.getCharSpace() || 0);\r\n }\r\n\r\n horizontalScale = options.horizontalScale;\r\n if (typeof horizontalScale !== \"undefined\") {\r\n xtra += hpf(horizontalScale * 100) + \" Tz\\n\";\r\n }\r\n\r\n //lang\r\n\r\n var lang = options.lang;\r\n\r\n if (lang) {\r\n // xtra += \"/Lang (\" + lang +\")\\n\";\r\n }\r\n\r\n //renderingMode\r\n var renderingMode = -1;\r\n var parmRenderingMode =\r\n typeof options.renderingMode !== \"undefined\"\r\n ? options.renderingMode\r\n : options.stroke;\r\n var pageContext = scope.internal.getCurrentPageInfo().pageContext;\r\n\r\n switch (parmRenderingMode) {\r\n case 0:\r\n case false:\r\n case \"fill\":\r\n renderingMode = 0;\r\n break;\r\n case 1:\r\n case true:\r\n case \"stroke\":\r\n renderingMode = 1;\r\n break;\r\n case 2:\r\n case \"fillThenStroke\":\r\n renderingMode = 2;\r\n break;\r\n case 3:\r\n case \"invisible\":\r\n renderingMode = 3;\r\n break;\r\n case 4:\r\n case \"fillAndAddForClipping\":\r\n renderingMode = 4;\r\n break;\r\n case 5:\r\n case \"strokeAndAddPathForClipping\":\r\n renderingMode = 5;\r\n break;\r\n case 6:\r\n case \"fillThenStrokeAndAddToPathForClipping\":\r\n renderingMode = 6;\r\n break;\r\n case 7:\r\n case \"addToPathForClipping\":\r\n renderingMode = 7;\r\n break;\r\n }\r\n\r\n var usedRenderingMode =\r\n typeof pageContext.usedRenderingMode !== \"undefined\"\r\n ? pageContext.usedRenderingMode\r\n : -1;\r\n\r\n //if the coder wrote it explicitly to use a specific\r\n //renderingMode, then use it\r\n if (renderingMode !== -1) {\r\n xtra += renderingMode + \" Tr\\n\";\r\n //otherwise check if we used the rendering Mode already\r\n //if so then set the rendering Mode...\r\n } else if (usedRenderingMode !== -1) {\r\n xtra += \"0 Tr\\n\";\r\n }\r\n\r\n if (renderingMode !== -1) {\r\n pageContext.usedRenderingMode = renderingMode;\r\n }\r\n\r\n //align\r\n align = options.align || \"left\";\r\n var leading = activeFontSize * lineHeight;\r\n var pageWidth = scope.internal.pageSize.getWidth();\r\n var activeFont = fonts[activeFontKey];\r\n charSpace = options.charSpace || activeCharSpace;\r\n maxWidth = options.maxWidth || 0;\r\n\r\n var lineWidths;\r\n flags = Object.assign({ autoencode: true, noBOM: true }, options.flags);\r\n\r\n var wordSpacingPerLine = [];\r\n\r\n if (Object.prototype.toString.call(text) === \"[object Array]\") {\r\n da = transformTextToSpecialArray(text);\r\n var newY;\r\n if (align !== \"left\") {\r\n lineWidths = da.map(function(v) {\r\n return (\r\n (scope.getStringUnitWidth(v, {\r\n font: activeFont,\r\n charSpace: charSpace,\r\n fontSize: activeFontSize,\r\n doKerning: false\r\n }) *\r\n activeFontSize) /\r\n scaleFactor\r\n );\r\n });\r\n }\r\n //The first line uses the \"main\" Td setting,\r\n //and the subsequent lines are offset by the\r\n //previous line's x coordinate.\r\n var prevWidth = 0;\r\n var newX;\r\n if (align === \"right\") {\r\n //The passed in x coordinate defines the\r\n //rightmost point of the text.\r\n x -= lineWidths[0];\r\n text = [];\r\n len = da.length;\r\n for (var i = 0; i < len; i++) {\r\n if (i === 0) {\r\n newX = getHorizontalCoordinate(x);\r\n newY = getVerticalCoordinate(y);\r\n } else {\r\n newX = scale(prevWidth - lineWidths[i]);\r\n newY = -leading;\r\n }\r\n text.push([da[i], newX, newY]);\r\n prevWidth = lineWidths[i];\r\n }\r\n } else if (align === \"center\") {\r\n //The passed in x coordinate defines\r\n //the center point.\r\n x -= lineWidths[0] / 2;\r\n text = [];\r\n len = da.length;\r\n for (var j = 0; j < len; j++) {\r\n if (j === 0) {\r\n newX = getHorizontalCoordinate(x);\r\n newY = getVerticalCoordinate(y);\r\n } else {\r\n newX = scale((prevWidth - lineWidths[j]) / 2);\r\n newY = -leading;\r\n }\r\n text.push([da[j], newX, newY]);\r\n prevWidth = lineWidths[j];\r\n }\r\n } else if (align === \"left\") {\r\n text = [];\r\n len = da.length;\r\n for (var h = 0; h < len; h++) {\r\n text.push(da[h]);\r\n }\r\n } else if (align === \"justify\") {\r\n text = [];\r\n len = da.length;\r\n maxWidth = maxWidth !== 0 ? maxWidth : pageWidth;\r\n\r\n for (var l = 0; l < len; l++) {\r\n newY = l === 0 ? getVerticalCoordinate(y) : -leading;\r\n newX = l === 0 ? getHorizontalCoordinate(x) : 0;\r\n if (l < len - 1) {\r\n wordSpacingPerLine.push(\r\n hpf(\r\n scale(\r\n (maxWidth - lineWidths[l]) / (da[l].split(\" \").length - 1)\r\n )\r\n )\r\n );\r\n } else {\r\n wordSpacingPerLine.push(0);\r\n }\r\n text.push([da[l], newX, newY]);\r\n }\r\n } else {\r\n throw new Error(\r\n 'Unrecognized alignment option, use \"left\", \"center\", \"right\" or \"justify\".'\r\n );\r\n }\r\n }\r\n\r\n //R2L\r\n var doReversing = typeof options.R2L === \"boolean\" ? options.R2L : R2L;\r\n if (doReversing === true) {\r\n text = processTextByFunction(text, function(text, posX, posY) {\r\n return [\r\n text\r\n .split(\"\")\r\n .reverse()\r\n .join(\"\"),\r\n posX,\r\n posY\r\n ];\r\n });\r\n }\r\n\r\n //creating Payload-Object to make text byRef\r\n payload = {\r\n text: text,\r\n x: x,\r\n y: y,\r\n options: options,\r\n mutex: {\r\n pdfEscape: pdfEscape,\r\n activeFontKey: activeFontKey,\r\n fonts: fonts,\r\n activeFontSize: activeFontSize\r\n }\r\n };\r\n events.publish(\"postProcessText\", payload);\r\n\r\n text = payload.text;\r\n isHex = payload.mutex.isHex || false;\r\n\r\n //Escaping\r\n var activeFontEncoding = fonts[activeFontKey].encoding;\r\n\r\n if (\r\n activeFontEncoding === \"WinAnsiEncoding\" ||\r\n activeFontEncoding === \"StandardEncoding\"\r\n ) {\r\n text = processTextByFunction(text, function(text, posX, posY) {\r\n return [ESC(text), posX, posY];\r\n });\r\n }\r\n\r\n da = transformTextToSpecialArray(text);\r\n\r\n text = [];\r\n var STRING = 0;\r\n var ARRAY = 1;\r\n var variant = Array.isArray(da[0]) ? ARRAY : STRING;\r\n var posX;\r\n var posY;\r\n var content;\r\n var wordSpacing = \"\";\r\n\r\n var generatePosition = function(\r\n parmPosX,\r\n parmPosY,\r\n parmTransformationMatrix\r\n ) {\r\n var position = \"\";\r\n if (parmTransformationMatrix instanceof Matrix) {\r\n // It is kind of more intuitive to apply a plain rotation around the text anchor set by x and y\r\n // but when the user supplies an arbitrary transformation matrix, the x and y offsets should be applied\r\n // in the coordinate system established by this matrix\r\n if (typeof options.angle === \"number\") {\r\n parmTransformationMatrix = matrixMult(\r\n parmTransformationMatrix,\r\n new Matrix(1, 0, 0, 1, parmPosX, parmPosY)\r\n );\r\n } else {\r\n parmTransformationMatrix = matrixMult(\r\n new Matrix(1, 0, 0, 1, parmPosX, parmPosY),\r\n parmTransformationMatrix\r\n );\r\n }\r\n\r\n if (apiMode === ApiMode.ADVANCED) {\r\n parmTransformationMatrix = matrixMult(\r\n new Matrix(1, 0, 0, -1, 0, 0),\r\n parmTransformationMatrix\r\n );\r\n }\r\n\r\n position = parmTransformationMatrix.join(\" \") + \" Tm\\n\";\r\n } else {\r\n position = hpf(parmPosX) + \" \" + hpf(parmPosY) + \" Td\\n\";\r\n }\r\n return position;\r\n };\r\n\r\n for (var lineIndex = 0; lineIndex < da.length; lineIndex++) {\r\n wordSpacing = \"\";\r\n\r\n switch (variant) {\r\n case ARRAY:\r\n content =\r\n (isHex ? \"<\" : \"(\") + da[lineIndex][0] + (isHex ? \">\" : \")\");\r\n posX = parseFloat(da[lineIndex][1]);\r\n posY = parseFloat(da[lineIndex][2]);\r\n break;\r\n case STRING:\r\n content = (isHex ? \"<\" : \"(\") + da[lineIndex] + (isHex ? \">\" : \")\");\r\n posX = getHorizontalCoordinate(x);\r\n posY = getVerticalCoordinate(y);\r\n break;\r\n }\r\n\r\n if (\r\n typeof wordSpacingPerLine !== \"undefined\" &&\r\n typeof wordSpacingPerLine[lineIndex] !== \"undefined\"\r\n ) {\r\n wordSpacing = wordSpacingPerLine[lineIndex] + \" Tw\\n\";\r\n }\r\n\r\n if (lineIndex === 0) {\r\n text.push(\r\n wordSpacing +\r\n generatePosition(posX, posY, transformationMatrix) +\r\n content\r\n );\r\n } else if (variant === STRING) {\r\n text.push(wordSpacing + content);\r\n } else if (variant === ARRAY) {\r\n text.push(\r\n wordSpacing +\r\n generatePosition(posX, posY, transformationMatrix) +\r\n content\r\n );\r\n }\r\n }\r\n\r\n text = variant === STRING ? text.join(\" Tj\\nT* \") : text.join(\" Tj\\n\");\r\n text += \" Tj\\n\";\r\n\r\n var result = \"BT\\n/\";\r\n result += activeFontKey + \" \" + activeFontSize + \" Tf\\n\"; // font face, style, size\r\n result += hpf(activeFontSize * lineHeight) + \" TL\\n\"; // line spacing\r\n result += textColor + \"\\n\";\r\n result += xtra;\r\n result += text;\r\n result += \"ET\";\r\n\r\n out(result);\r\n usedFonts[activeFontKey] = true;\r\n return scope;\r\n };\r\n\r\n // PDF supports these path painting and clip path operators:\r\n //\r\n // S - stroke\r\n // s - close/stroke\r\n // f (F) - fill non-zero\r\n // f* - fill evenodd\r\n // B - fill stroke nonzero\r\n // B* - fill stroke evenodd\r\n // b - close fill stroke nonzero\r\n // b* - close fill stroke evenodd\r\n // n - nothing (consume path)\r\n // W - clip nonzero\r\n // W* - clip evenodd\r\n //\r\n // In order to keep the API small, we omit the close-and-fill/stroke operators and provide a separate close()\r\n // method.\r\n /**\r\n *\r\n * @name clip\r\n * @function\r\n * @instance\r\n * @param {string} rule Only possible value is 'evenodd'\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @description All .clip() after calling drawing ops with a style argument of null.\r\n */\r\n var clip = (API.__private__.clip = API.clip = function(rule) {\r\n // Call .clip() after calling drawing ops with a style argument of null\r\n // W is the PDF clipping op\r\n if (\"evenodd\" === rule) {\r\n out(\"W*\");\r\n } else {\r\n out(\"W\");\r\n }\r\n return this;\r\n });\r\n\r\n /**\r\n * @name clipEvenOdd\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @description Modify the current clip path by intersecting it with the current path using the even-odd rule. Note\r\n * that this will NOT consume the current path. In order to only use this path for clipping call\r\n * {@link API.discardPath} afterwards.\r\n */\r\n API.clipEvenOdd = function() {\r\n return clip(\"evenodd\");\r\n };\r\n\r\n /**\r\n * Consumes the current path without any effect. Mainly used in combination with {@link clip} or\r\n * {@link clipEvenOdd}. The PDF \"n\" operator.\r\n * @name discardPath\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.__private__.discardPath = API.discardPath = function() {\r\n out(\"n\");\r\n return this;\r\n };\r\n\r\n var isValidStyle = (API.__private__.isValidStyle = function(style) {\r\n var validStyleVariants = [\r\n undefined,\r\n null,\r\n \"S\",\r\n \"D\",\r\n \"F\",\r\n \"DF\",\r\n \"FD\",\r\n \"f\",\r\n \"f*\",\r\n \"B\",\r\n \"B*\",\r\n \"n\"\r\n ];\r\n var result = false;\r\n if (validStyleVariants.indexOf(style) !== -1) {\r\n result = true;\r\n }\r\n return result;\r\n });\r\n\r\n API.__private__.setDefaultPathOperation = API.setDefaultPathOperation = function(\r\n operator\r\n ) {\r\n if (isValidStyle(operator)) {\r\n defaultPathOperation = operator;\r\n }\r\n return this;\r\n };\r\n\r\n var getStyle = (API.__private__.getStyle = API.getStyle = function(style) {\r\n // see path-painting operators in PDF spec\r\n var op = defaultPathOperation; // stroke\r\n\r\n switch (style) {\r\n case \"D\":\r\n case \"S\":\r\n op = \"S\"; // stroke\r\n break;\r\n case \"F\":\r\n op = \"f\"; // fill\r\n break;\r\n case \"FD\":\r\n case \"DF\":\r\n op = \"B\";\r\n break;\r\n case \"f\":\r\n case \"f*\":\r\n case \"B\":\r\n case \"B*\":\r\n /*\r\n Allow direct use of these PDF path-painting operators:\r\n - f fill using nonzero winding number rule\r\n - f* fill using even-odd rule\r\n - B fill then stroke with fill using non-zero winding number rule\r\n - B* fill then stroke with fill using even-odd rule\r\n */\r\n op = style;\r\n break;\r\n }\r\n return op;\r\n });\r\n\r\n /**\r\n * Close the current path. The PDF \"h\" operator.\r\n * @name close\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n var close = (API.close = function() {\r\n out(\"h\");\r\n return this;\r\n });\r\n\r\n /**\r\n * Stroke the path. The PDF \"S\" operator.\r\n * @name stroke\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.stroke = function() {\r\n out(\"S\");\r\n return this;\r\n };\r\n\r\n /**\r\n * Fill the current path using the nonzero winding number rule. If a pattern is provided, the path will be filled\r\n * with this pattern, otherwise with the current fill color. Equivalent to the PDF \"f\" operator.\r\n * @name fill\r\n * @function\r\n * @instance\r\n * @param {PatternData=} pattern If provided the path will be filled with this pattern\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.fill = function(pattern) {\r\n fillWithOptionalPattern(\"f\", pattern);\r\n return this;\r\n };\r\n\r\n /**\r\n * Fill the current path using the even-odd rule. The PDF f* operator.\r\n * @see API.fill\r\n * @name fillEvenOdd\r\n * @function\r\n * @instance\r\n * @param {PatternData=} pattern If provided the path will be filled with this pattern\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.fillEvenOdd = function(pattern) {\r\n fillWithOptionalPattern(\"f*\", pattern);\r\n return this;\r\n };\r\n\r\n /**\r\n * Fill using the nonzero winding number rule and then stroke the current Path. The PDF \"B\" operator.\r\n * @see API.fill\r\n * @name fillStroke\r\n * @function\r\n * @instance\r\n * @param {PatternData=} pattern If provided the path will be stroked with this pattern\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.fillStroke = function(pattern) {\r\n fillWithOptionalPattern(\"B\", pattern);\r\n return this;\r\n };\r\n\r\n /**\r\n * Fill using the even-odd rule and then stroke the current Path. The PDF \"B\" operator.\r\n * @see API.fill\r\n * @name fillStrokeEvenOdd\r\n * @function\r\n * @instance\r\n * @param {PatternData=} pattern If provided the path will be fill-stroked with this pattern\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.fillStrokeEvenOdd = function(pattern) {\r\n fillWithOptionalPattern(\"B*\", pattern);\r\n return this;\r\n };\r\n\r\n var fillWithOptionalPattern = function(style, pattern) {\r\n if (typeof pattern === \"object\") {\r\n fillWithPattern(pattern, style);\r\n } else {\r\n out(style);\r\n }\r\n };\r\n\r\n var putStyle = function(style) {\r\n if (\r\n style === null ||\r\n (apiMode === ApiMode.ADVANCED && style === undefined)\r\n ) {\r\n return;\r\n }\r\n\r\n style = getStyle(style);\r\n\r\n // stroking / filling / both the path\r\n out(style);\r\n };\r\n\r\n function cloneTilingPattern(patternKey, boundingBox, xStep, yStep, matrix) {\r\n var clone = new TilingPattern(\r\n boundingBox || this.boundingBox,\r\n xStep || this.xStep,\r\n yStep || this.yStep,\r\n this.gState,\r\n matrix || this.matrix\r\n );\r\n clone.stream = this.stream;\r\n var key = patternKey + \"$$\" + this.cloneIndex++ + \"$$\";\r\n addPattern(key, clone);\r\n return clone;\r\n }\r\n\r\n var fillWithPattern = function(patternData, style) {\r\n var patternId = patternMap[patternData.key];\r\n var pattern = patterns[patternId];\r\n\r\n if (pattern instanceof ShadingPattern) {\r\n out(\"q\");\r\n\r\n out(clipRuleFromStyle(style));\r\n\r\n if (pattern.gState) {\r\n API.setGState(pattern.gState);\r\n }\r\n out(patternData.matrix.toString() + \" cm\");\r\n out(\"/\" + patternId + \" sh\");\r\n out(\"Q\");\r\n } else if (pattern instanceof TilingPattern) {\r\n // pdf draws patterns starting at the bottom left corner and they are not affected by the global transformation,\r\n // so we must flip them\r\n var matrix = new Matrix(1, 0, 0, -1, 0, getPageHeight());\r\n\r\n if (patternData.matrix) {\r\n matrix = matrix.multiply(patternData.matrix || identityMatrix);\r\n // we cannot apply a matrix to the pattern on use so we must abuse the pattern matrix and create new instances\r\n // for each use\r\n patternId = cloneTilingPattern.call(\r\n pattern,\r\n patternData.key,\r\n patternData.boundingBox,\r\n patternData.xStep,\r\n patternData.yStep,\r\n matrix\r\n ).id;\r\n }\r\n\r\n out(\"q\");\r\n out(\"/Pattern cs\");\r\n out(\"/\" + patternId + \" scn\");\r\n\r\n if (pattern.gState) {\r\n API.setGState(pattern.gState);\r\n }\r\n\r\n out(style);\r\n out(\"Q\");\r\n }\r\n };\r\n\r\n var clipRuleFromStyle = function(style) {\r\n switch (style) {\r\n case \"f\":\r\n case \"F\":\r\n return \"W n\";\r\n case \"f*\":\r\n return \"W* n\";\r\n case \"B\":\r\n return \"W S\";\r\n case \"B*\":\r\n return \"W* S\";\r\n\r\n // these two are for compatibility reasons (in the past, calling any primitive method with a shading pattern\r\n // and \"n\"/\"S\" as style would still fill/fill and stroke the path)\r\n case \"S\":\r\n return \"W S\";\r\n case \"n\":\r\n return \"W n\";\r\n }\r\n };\r\n\r\n /**\r\n * Begin a new subpath by moving the current point to coordinates (x, y). The PDF \"m\" operator.\r\n * @param {number} x\r\n * @param {number} y\r\n * @name moveTo\r\n * @function\r\n * @instance\r\n * @memberof jsPDF#\r\n * @returns {jsPDF}\r\n */\r\n var moveTo = (API.moveTo = function(x, y) {\r\n out(hpf(scale(x)) + \" \" + hpf(transformScaleY(y)) + \" m\");\r\n return this;\r\n });\r\n\r\n /**\r\n * Append a straight line segment from the current point to the point (x, y). The PDF \"l\" operator.\r\n * @param {number} x\r\n * @param {number} y\r\n * @memberof jsPDF#\r\n * @name lineTo\r\n * @function\r\n * @instance\r\n * @memberof jsPDF#\r\n * @returns {jsPDF}\r\n */\r\n var lineTo = (API.lineTo = function(x, y) {\r\n out(hpf(scale(x)) + \" \" + hpf(transformScaleY(y)) + \" l\");\r\n return this;\r\n });\r\n\r\n /**\r\n * Append a cubic Bézier curve to the current path. The curve shall extend from the current point to the point\r\n * (x3, y3), using (x1, y1) and (x2, y2) as Bézier control points. The new current point shall be (x3, x3).\r\n * @param {number} x1\r\n * @param {number} y1\r\n * @param {number} x2\r\n * @param {number} y2\r\n * @param {number} x3\r\n * @param {number} y3\r\n * @memberof jsPDF#\r\n * @name curveTo\r\n * @function\r\n * @instance\r\n * @memberof jsPDF#\r\n * @returns {jsPDF}\r\n */\r\n var curveTo = (API.curveTo = function(x1, y1, x2, y2, x3, y3) {\r\n out(\r\n [\r\n hpf(scale(x1)),\r\n hpf(transformScaleY(y1)),\r\n hpf(scale(x2)),\r\n hpf(transformScaleY(y2)),\r\n hpf(scale(x3)),\r\n hpf(transformScaleY(y3)),\r\n \"c\"\r\n ].join(\" \")\r\n );\r\n return this;\r\n });\r\n\r\n /**\r\n * Draw a line on the current page.\r\n *\r\n * @name line\r\n * @function\r\n * @instance\r\n * @param {number} x1\r\n * @param {number} y1\r\n * @param {number} x2\r\n * @param {number} y2\r\n * @param {string} style A string specifying the painting style or null. Valid styles include: 'S' [default] - stroke, 'F' - fill, and 'DF' (or 'FD') - fill then stroke. A null value postpones setting the style so that a shape may be composed using multiple method calls. The last drawing method call used to define the shape should not have a null style argument. default: 'S'\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n */\r\n API.__private__.line = API.line = function(x1, y1, x2, y2, style) {\r\n if (\r\n isNaN(x1) ||\r\n isNaN(y1) ||\r\n isNaN(x2) ||\r\n isNaN(y2) ||\r\n !isValidStyle(style)\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.line\");\r\n }\r\n if (apiMode === ApiMode.COMPAT) {\r\n return this.lines([[x2 - x1, y2 - y1]], x1, y1, [1, 1], style || \"S\");\r\n } else {\r\n return this.lines([[x2 - x1, y2 - y1]], x1, y1, [1, 1]).stroke();\r\n }\r\n };\r\n\r\n /**\r\n * @typedef {Object} PatternData\r\n * {Matrix|undefined} matrix\r\n * {Number|undefined} xStep\r\n * {Number|undefined} yStep\r\n * {Array.|undefined} boundingBox\r\n */\r\n\r\n /**\r\n * Adds series of curves (straight lines or cubic bezier curves) to canvas, starting at `x`, `y` coordinates.\r\n * All data points in `lines` are relative to last line origin.\r\n * `x`, `y` become x1,y1 for first line / curve in the set.\r\n * For lines you only need to specify [x2, y2] - (ending point) vector against x1, y1 starting point.\r\n * For bezier curves you need to specify [x2,y2,x3,y3,x4,y4] - vectors to control points 1, 2, ending point. All vectors are against the start of the curve - x1,y1.\r\n *\r\n * @example .lines([[2,2],[-2,2],[1,1,2,2,3,3],[2,1]], 212,110, [1,1], 'F', false) // line, line, bezier curve, line\r\n * @param {Array} lines Array of *vector* shifts as pairs (lines) or sextets (cubic bezier curves).\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} scale (Defaults to [1.0,1.0]) x,y Scaling factor for all vectors. Elements can be any floating number Sub-one makes drawing smaller. Over-one grows the drawing. Negative flips the direction.\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @param {Boolean=} closed If true, the path is closed with a straight line from the end of the last curve to the starting point.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name lines\r\n */\r\n API.__private__.lines = API.lines = function(\r\n lines,\r\n x,\r\n y,\r\n scale,\r\n style,\r\n closed\r\n ) {\r\n var scalex, scaley, i, l, leg, x2, y2, x3, y3, x4, y4, tmp;\r\n\r\n // Pre-August-2012 the order of arguments was function(x, y, lines, scale, style)\r\n // in effort to make all calls have similar signature like\r\n // function(content, coordinateX, coordinateY , miscellaneous)\r\n // this method had its args flipped.\r\n // code below allows backward compatibility with old arg order.\r\n if (typeof lines === \"number\") {\r\n tmp = y;\r\n y = x;\r\n x = lines;\r\n lines = tmp;\r\n }\r\n\r\n scale = scale || [1, 1];\r\n closed = closed || false;\r\n\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n !Array.isArray(lines) ||\r\n !Array.isArray(scale) ||\r\n !isValidStyle(style) ||\r\n typeof closed !== \"boolean\"\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.lines\");\r\n }\r\n\r\n // starting point\r\n moveTo(x, y);\r\n\r\n scalex = scale[0];\r\n scaley = scale[1];\r\n l = lines.length;\r\n //, x2, y2 // bezier only. In page default measurement \"units\", *after* scaling\r\n //, x3, y3 // bezier only. In page default measurement \"units\", *after* scaling\r\n // ending point for all, lines and bezier. . In page default measurement \"units\", *after* scaling\r\n x4 = x; // last / ending point = starting point for first item.\r\n y4 = y; // last / ending point = starting point for first item.\r\n\r\n for (i = 0; i < l; i++) {\r\n leg = lines[i];\r\n if (leg.length === 2) {\r\n // simple line\r\n x4 = leg[0] * scalex + x4; // here last x4 was prior ending point\r\n y4 = leg[1] * scaley + y4; // here last y4 was prior ending point\r\n lineTo(x4, y4);\r\n } else {\r\n // bezier curve\r\n x2 = leg[0] * scalex + x4; // here last x4 is prior ending point\r\n y2 = leg[1] * scaley + y4; // here last y4 is prior ending point\r\n x3 = leg[2] * scalex + x4; // here last x4 is prior ending point\r\n y3 = leg[3] * scaley + y4; // here last y4 is prior ending point\r\n x4 = leg[4] * scalex + x4; // here last x4 was prior ending point\r\n y4 = leg[5] * scaley + y4; // here last y4 was prior ending point\r\n curveTo(x2, y2, x3, y3, x4, y4);\r\n }\r\n }\r\n\r\n if (closed) {\r\n close();\r\n }\r\n\r\n putStyle(style);\r\n return this;\r\n };\r\n\r\n /**\r\n * Similar to {@link API.lines} but all coordinates are interpreted as absolute coordinates instead of relative.\r\n * @param {Array} lines An array of {op: operator, c: coordinates} object, where op is one of \"m\" (move to), \"l\" (line to)\r\n * \"c\" (cubic bezier curve) and \"h\" (close (sub)path)). c is an array of coordinates. \"m\" and \"l\" expect two, \"c\"\r\n * six and \"h\" an empty array (or undefined).\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name path\r\n */\r\n API.path = function(lines) {\r\n for (var i = 0; i < lines.length; i++) {\r\n var leg = lines[i];\r\n var coords = leg.c;\r\n switch (leg.op) {\r\n case \"m\":\r\n moveTo(coords[0], coords[1]);\r\n break;\r\n case \"l\":\r\n lineTo(coords[0], coords[1]);\r\n break;\r\n case \"c\":\r\n curveTo.apply(this, coords);\r\n break;\r\n case \"h\":\r\n close();\r\n break;\r\n }\r\n }\r\n\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds a rectangle to PDF.\r\n *\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} w Width (in units declared at inception of PDF document)\r\n * @param {number} h Height (in units declared at inception of PDF document)\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name rect\r\n */\r\n API.__private__.rect = API.rect = function(x, y, w, h, style) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h) || !isValidStyle(style)) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.rect\");\r\n }\r\n if (apiMode === ApiMode.COMPAT) {\r\n h = -h;\r\n }\r\n\r\n out(\r\n [\r\n hpf(scale(x)),\r\n hpf(transformScaleY(y)),\r\n hpf(scale(w)),\r\n hpf(scale(h)),\r\n \"re\"\r\n ].join(\" \")\r\n );\r\n\r\n putStyle(style);\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds a triangle to PDF.\r\n *\r\n * @param {number} x1 Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y1 Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} x2 Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y2 Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} x3 Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y3 Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name triangle\r\n */\r\n API.__private__.triangle = API.triangle = function(\r\n x1,\r\n y1,\r\n x2,\r\n y2,\r\n x3,\r\n y3,\r\n style\r\n ) {\r\n if (\r\n isNaN(x1) ||\r\n isNaN(y1) ||\r\n isNaN(x2) ||\r\n isNaN(y2) ||\r\n isNaN(x3) ||\r\n isNaN(y3) ||\r\n !isValidStyle(style)\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.triangle\");\r\n }\r\n this.lines(\r\n [\r\n [x2 - x1, y2 - y1], // vector to point 2\r\n [x3 - x2, y3 - y2], // vector to point 3\r\n [x1 - x3, y1 - y3] // closing vector back to point 1\r\n ],\r\n x1,\r\n y1, // start of path\r\n [1, 1],\r\n style,\r\n true\r\n );\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds a rectangle with rounded corners to PDF.\r\n *\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} w Width (in units declared at inception of PDF document)\r\n * @param {number} h Height (in units declared at inception of PDF document)\r\n * @param {number} rx Radius along x axis (in units declared at inception of PDF document)\r\n * @param {number} ry Radius along y axis (in units declared at inception of PDF document)\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name roundedRect\r\n */\r\n API.__private__.roundedRect = API.roundedRect = function(\r\n x,\r\n y,\r\n w,\r\n h,\r\n rx,\r\n ry,\r\n style\r\n ) {\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n isNaN(w) ||\r\n isNaN(h) ||\r\n isNaN(rx) ||\r\n isNaN(ry) ||\r\n !isValidStyle(style)\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.roundedRect\");\r\n }\r\n var MyArc = (4 / 3) * (Math.SQRT2 - 1);\r\n\r\n rx = Math.min(rx, w * 0.5);\r\n ry = Math.min(ry, h * 0.5);\r\n\r\n this.lines(\r\n [\r\n [w - 2 * rx, 0],\r\n [rx * MyArc, 0, rx, ry - ry * MyArc, rx, ry],\r\n [0, h - 2 * ry],\r\n [0, ry * MyArc, -(rx * MyArc), ry, -rx, ry],\r\n [-w + 2 * rx, 0],\r\n [-(rx * MyArc), 0, -rx, -(ry * MyArc), -rx, -ry],\r\n [0, -h + 2 * ry],\r\n [0, -(ry * MyArc), rx * MyArc, -ry, rx, -ry]\r\n ],\r\n x + rx,\r\n y, // start of path\r\n [1, 1],\r\n style,\r\n true\r\n );\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds an ellipse to PDF.\r\n *\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} rx Radius along x axis (in units declared at inception of PDF document)\r\n * @param {number} ry Radius along y axis (in units declared at inception of PDF document)\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name ellipse\r\n */\r\n API.__private__.ellipse = API.ellipse = function(x, y, rx, ry, style) {\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n isNaN(rx) ||\r\n isNaN(ry) ||\r\n !isValidStyle(style)\r\n ) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.ellipse\");\r\n }\r\n var lx = (4 / 3) * (Math.SQRT2 - 1) * rx,\r\n ly = (4 / 3) * (Math.SQRT2 - 1) * ry;\r\n\r\n moveTo(x + rx, y);\r\n curveTo(x + rx, y - ly, x + lx, y - ry, x, y - ry);\r\n curveTo(x - lx, y - ry, x - rx, y - ly, x - rx, y);\r\n curveTo(x - rx, y + ly, x - lx, y + ry, x, y + ry);\r\n curveTo(x + lx, y + ry, x + rx, y + ly, x + rx, y);\r\n\r\n putStyle(style);\r\n return this;\r\n };\r\n\r\n /**\r\n * Adds an circle to PDF.\r\n *\r\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\r\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\r\n * @param {number} r Radius (in units declared at inception of PDF document)\r\n * @param {string=} style A string specifying the painting style or null. Valid styles include:\r\n * 'S' [default] - stroke,\r\n * 'F' - fill,\r\n * and 'DF' (or 'FD') - fill then stroke.\r\n * In \"compat\" API mode, a null value postpones setting the style so that a shape may be composed using multiple\r\n * method calls. The last drawing method call used to define the shape should not have a null style argument.\r\n *\r\n * In \"advanced\" API mode this parameter is deprecated.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name circle\r\n */\r\n API.__private__.circle = API.circle = function(x, y, r, style) {\r\n if (isNaN(x) || isNaN(y) || isNaN(r) || !isValidStyle(style)) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.circle\");\r\n }\r\n return this.ellipse(x, y, r, r, style);\r\n };\r\n\r\n /**\r\n * Sets text font face, variant for upcoming text elements.\r\n * See output of jsPDF.getFontList() for possible font names, styles.\r\n *\r\n * @param {string} fontName Font name or family. Example: \"times\".\r\n * @param {string} fontStyle Font style or variant. Example: \"italic\".\r\n * @param {number | string} fontWeight Weight of the Font. Example: \"normal\" | 400\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setFont\r\n */\r\n API.setFont = function(fontName, fontStyle, fontWeight) {\r\n if (fontWeight) {\r\n fontStyle = combineFontStyleAndFontWeight(fontStyle, fontWeight);\r\n }\r\n activeFontKey = getFont(fontName, fontStyle, {\r\n disableWarning: false\r\n });\r\n return this;\r\n };\r\n\r\n /**\r\n * Gets text font face, variant for upcoming text elements.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {Object}\r\n * @memberof jsPDF#\r\n * @name getFont\r\n */\r\n var getFontEntry = (API.__private__.getFont = API.getFont = function() {\r\n return fonts[getFont.apply(API, arguments)];\r\n });\r\n\r\n /**\r\n * Returns an object - a tree of fontName to fontStyle relationships available to\r\n * active PDF document.\r\n *\r\n * @public\r\n * @function\r\n * @instance\r\n * @returns {Object} Like {'times':['normal', 'italic', ... ], 'arial':['normal', 'bold', ... ], ... }\r\n * @memberof jsPDF#\r\n * @name getFontList\r\n */\r\n API.__private__.getFontList = API.getFontList = function() {\r\n var list = {},\r\n fontName,\r\n fontStyle;\r\n\r\n for (fontName in fontmap) {\r\n if (fontmap.hasOwnProperty(fontName)) {\r\n list[fontName] = [];\r\n for (fontStyle in fontmap[fontName]) {\r\n if (fontmap[fontName].hasOwnProperty(fontStyle)) {\r\n list[fontName].push(fontStyle);\r\n }\r\n }\r\n }\r\n }\r\n return list;\r\n };\r\n\r\n /**\r\n * Add a custom font to the current instance.\r\n *\r\n * @param {string} postScriptName PDF specification full name for the font.\r\n * @param {string} id PDF-document-instance-specific label assinged to the font.\r\n * @param {string} fontStyle Style of the Font.\r\n * @param {number | string} fontWeight Weight of the Font.\r\n * @param {Object} encoding Encoding_name-to-Font_metrics_object mapping.\r\n * @function\r\n * @instance\r\n * @memberof jsPDF#\r\n * @name addFont\r\n * @returns {string} fontId\r\n */\r\n API.addFont = function(\r\n postScriptName,\r\n fontName,\r\n fontStyle,\r\n fontWeight,\r\n encoding\r\n ) {\r\n var encodingOptions = [\r\n \"StandardEncoding\",\r\n \"MacRomanEncoding\",\r\n \"Identity-H\",\r\n \"WinAnsiEncoding\"\r\n ];\r\n if (arguments[3] && encodingOptions.indexOf(arguments[3]) !== -1) {\r\n //IE 11 fix\r\n encoding = arguments[3];\r\n } else if (arguments[3] && encodingOptions.indexOf(arguments[3]) == -1) {\r\n fontStyle = combineFontStyleAndFontWeight(fontStyle, fontWeight);\r\n }\r\n encoding = encoding || \"Identity-H\";\r\n return addFont.call(this, postScriptName, fontName, fontStyle, encoding);\r\n };\r\n\r\n var lineWidth = options.lineWidth || 0.200025; // 2mm\r\n /**\r\n * Gets the line width, default: 0.200025.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {number} lineWidth\r\n * @memberof jsPDF#\r\n * @name getLineWidth\r\n */\r\n var getLineWidth = (API.__private__.getLineWidth = API.getLineWidth = function() {\r\n return lineWidth;\r\n });\r\n\r\n /**\r\n * Sets line width for upcoming lines.\r\n *\r\n * @param {number} width Line width (in units declared at inception of PDF document).\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineWidth\r\n */\r\n var setLineWidth = (API.__private__.setLineWidth = API.setLineWidth = function(\r\n width\r\n ) {\r\n lineWidth = width;\r\n out(hpf(scale(width)) + \" w\");\r\n return this;\r\n });\r\n\r\n /**\r\n * Sets the dash pattern for upcoming lines.\r\n *\r\n * To reset the settings simply call the method without any parameters.\r\n * @param {Array} dashArray An array containing 0-2 numbers. The first number sets the length of the\r\n * dashes, the second number the length of the gaps. If the second number is missing, the gaps are considered\r\n * to be as long as the dashes. An empty array means solid, unbroken lines.\r\n * @param {number} dashPhase The phase lines start with.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineDashPattern\r\n */\r\n API.__private__.setLineDash = jsPDF.API.setLineDash = jsPDF.API.setLineDashPattern = function(\r\n dashArray,\r\n dashPhase\r\n ) {\r\n dashArray = dashArray || [];\r\n dashPhase = dashPhase || 0;\r\n\r\n if (isNaN(dashPhase) || !Array.isArray(dashArray)) {\r\n throw new Error(\"Invalid arguments passed to jsPDF.setLineDash\");\r\n }\r\n\r\n dashArray = dashArray\r\n .map(function(x) {\r\n return hpf(scale(x));\r\n })\r\n .join(\" \");\r\n dashPhase = hpf(scale(dashPhase));\r\n\r\n out(\"[\" + dashArray + \"] \" + dashPhase + \" d\");\r\n return this;\r\n };\r\n\r\n var lineHeightFactor;\r\n\r\n var getLineHeight = (API.__private__.getLineHeight = API.getLineHeight = function() {\r\n return activeFontSize * lineHeightFactor;\r\n });\r\n\r\n API.__private__.getLineHeight = API.getLineHeight = function() {\r\n return activeFontSize * lineHeightFactor;\r\n };\r\n\r\n /**\r\n * Sets the LineHeightFactor of proportion.\r\n *\r\n * @param {number} value LineHeightFactor value. Default: 1.15.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineHeightFactor\r\n */\r\n var setLineHeightFactor = (API.__private__.setLineHeightFactor = API.setLineHeightFactor = function(\r\n value\r\n ) {\r\n value = value || 1.15;\r\n if (typeof value === \"number\") {\r\n lineHeightFactor = value;\r\n }\r\n return this;\r\n });\r\n\r\n /**\r\n * Gets the LineHeightFactor, default: 1.15.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {number} lineHeightFactor\r\n * @memberof jsPDF#\r\n * @name getLineHeightFactor\r\n */\r\n var getLineHeightFactor = (API.__private__.getLineHeightFactor = API.getLineHeightFactor = function() {\r\n return lineHeightFactor;\r\n });\r\n\r\n setLineHeightFactor(options.lineHeight);\r\n\r\n var getHorizontalCoordinate = (API.__private__.getHorizontalCoordinate = function(\r\n value\r\n ) {\r\n return scale(value);\r\n });\r\n\r\n var getVerticalCoordinate = (API.__private__.getVerticalCoordinate = function(\r\n value\r\n ) {\r\n if (apiMode === ApiMode.ADVANCED) {\r\n return value;\r\n } else {\r\n var pageHeight =\r\n pagesContext[currentPage].mediaBox.topRightY -\r\n pagesContext[currentPage].mediaBox.bottomLeftY;\r\n return pageHeight - scale(value);\r\n }\r\n });\r\n\r\n var getHorizontalCoordinateString = (API.__private__.getHorizontalCoordinateString = API.getHorizontalCoordinateString = function(\r\n value\r\n ) {\r\n return hpf(getHorizontalCoordinate(value));\r\n });\r\n\r\n var getVerticalCoordinateString = (API.__private__.getVerticalCoordinateString = API.getVerticalCoordinateString = function(\r\n value\r\n ) {\r\n return hpf(getVerticalCoordinate(value));\r\n });\r\n\r\n var strokeColor = options.strokeColor || \"0 G\";\r\n\r\n /**\r\n * Gets the stroke color for upcoming elements.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {string} colorAsHex\r\n * @memberof jsPDF#\r\n * @name getDrawColor\r\n */\r\n API.__private__.getStrokeColor = API.getDrawColor = function() {\r\n return decodeColorString(strokeColor);\r\n };\r\n\r\n /**\r\n * Sets the stroke color for upcoming elements.\r\n *\r\n * Depending on the number of arguments given, Gray, RGB, or CMYK\r\n * color space is implied.\r\n *\r\n * When only ch1 is given, \"Gray\" color space is implied and it\r\n * must be a value in the range from 0.00 (solid black) to to 1.00 (white)\r\n * if values are communicated as String types, or in range from 0 (black)\r\n * to 255 (white) if communicated as Number type.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When only ch1,ch2,ch3 are given, \"RGB\" color space is implied and each\r\n * value must be in the range from 0.00 (minimum intensity) to to 1.00\r\n * (max intensity) if values are communicated as String types, or\r\n * from 0 (min intensity) to to 255 (max intensity) if values are communicated\r\n * as Number types.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When ch1,ch2,ch3,ch4 are given, \"CMYK\" color space is implied and each\r\n * value must be a in the range from 0.00 (0% concentration) to to\r\n * 1.00 (100% concentration)\r\n *\r\n * Because JavaScript treats fixed point numbers badly (rounds to\r\n * floating point nearest to binary representation) it is highly advised to\r\n * communicate the fractional numbers as String types, not JavaScript Number type.\r\n *\r\n * @param {Number|String} ch1 Color channel value or {string} ch1 color value in hexadecimal, example: '#FFFFFF'.\r\n * @param {Number} ch2 Color channel value.\r\n * @param {Number} ch3 Color channel value.\r\n * @param {Number} ch4 Color channel value.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setDrawColor\r\n */\r\n API.__private__.setStrokeColor = API.setDrawColor = function(\r\n ch1,\r\n ch2,\r\n ch3,\r\n ch4\r\n ) {\r\n var options = {\r\n ch1: ch1,\r\n ch2: ch2,\r\n ch3: ch3,\r\n ch4: ch4,\r\n pdfColorType: \"draw\",\r\n precision: 2\r\n };\r\n\r\n strokeColor = encodeColorString(options);\r\n out(strokeColor);\r\n return this;\r\n };\r\n\r\n var fillColor = options.fillColor || \"0 g\";\r\n\r\n /**\r\n * Gets the fill color for upcoming elements.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {string} colorAsHex\r\n * @memberof jsPDF#\r\n * @name getFillColor\r\n */\r\n API.__private__.getFillColor = API.getFillColor = function() {\r\n return decodeColorString(fillColor);\r\n };\r\n\r\n /**\r\n * Sets the fill color for upcoming elements.\r\n *\r\n * Depending on the number of arguments given, Gray, RGB, or CMYK\r\n * color space is implied.\r\n *\r\n * When only ch1 is given, \"Gray\" color space is implied and it\r\n * must be a value in the range from 0.00 (solid black) to to 1.00 (white)\r\n * if values are communicated as String types, or in range from 0 (black)\r\n * to 255 (white) if communicated as Number type.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When only ch1,ch2,ch3 are given, \"RGB\" color space is implied and each\r\n * value must be in the range from 0.00 (minimum intensity) to to 1.00\r\n * (max intensity) if values are communicated as String types, or\r\n * from 0 (min intensity) to to 255 (max intensity) if values are communicated\r\n * as Number types.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When ch1,ch2,ch3,ch4 are given, \"CMYK\" color space is implied and each\r\n * value must be a in the range from 0.00 (0% concentration) to to\r\n * 1.00 (100% concentration)\r\n *\r\n * Because JavaScript treats fixed point numbers badly (rounds to\r\n * floating point nearest to binary representation) it is highly advised to\r\n * communicate the fractional numbers as String types, not JavaScript Number type.\r\n *\r\n * @param {Number|String} ch1 Color channel value or {string} ch1 color value in hexadecimal, example: '#FFFFFF'.\r\n * @param {Number} ch2 Color channel value.\r\n * @param {Number} ch3 Color channel value.\r\n * @param {Number} ch4 Color channel value.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setFillColor\r\n */\r\n API.__private__.setFillColor = API.setFillColor = function(\r\n ch1,\r\n ch2,\r\n ch3,\r\n ch4\r\n ) {\r\n var options = {\r\n ch1: ch1,\r\n ch2: ch2,\r\n ch3: ch3,\r\n ch4: ch4,\r\n pdfColorType: \"fill\",\r\n precision: 2\r\n };\r\n\r\n fillColor = encodeColorString(options);\r\n out(fillColor);\r\n return this;\r\n };\r\n\r\n var textColor = options.textColor || \"0 g\";\r\n /**\r\n * Gets the text color for upcoming elements.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {string} colorAsHex\r\n * @memberof jsPDF#\r\n * @name getTextColor\r\n */\r\n var getTextColor = (API.__private__.getTextColor = API.getTextColor = function() {\r\n return decodeColorString(textColor);\r\n });\r\n /**\r\n * Sets the text color for upcoming elements.\r\n *\r\n * Depending on the number of arguments given, Gray, RGB, or CMYK\r\n * color space is implied.\r\n *\r\n * When only ch1 is given, \"Gray\" color space is implied and it\r\n * must be a value in the range from 0.00 (solid black) to to 1.00 (white)\r\n * if values are communicated as String types, or in range from 0 (black)\r\n * to 255 (white) if communicated as Number type.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When only ch1,ch2,ch3 are given, \"RGB\" color space is implied and each\r\n * value must be in the range from 0.00 (minimum intensity) to to 1.00\r\n * (max intensity) if values are communicated as String types, or\r\n * from 0 (min intensity) to to 255 (max intensity) if values are communicated\r\n * as Number types.\r\n * The RGB-like 0-255 range is provided for backward compatibility.\r\n *\r\n * When ch1,ch2,ch3,ch4 are given, \"CMYK\" color space is implied and each\r\n * value must be a in the range from 0.00 (0% concentration) to to\r\n * 1.00 (100% concentration)\r\n *\r\n * Because JavaScript treats fixed point numbers badly (rounds to\r\n * floating point nearest to binary representation) it is highly advised to\r\n * communicate the fractional numbers as String types, not JavaScript Number type.\r\n *\r\n * @param {Number|String} ch1 Color channel value or {string} ch1 color value in hexadecimal, example: '#FFFFFF'.\r\n * @param {Number} ch2 Color channel value.\r\n * @param {Number} ch3 Color channel value.\r\n * @param {Number} ch4 Color channel value.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setTextColor\r\n */\r\n API.__private__.setTextColor = API.setTextColor = function(\r\n ch1,\r\n ch2,\r\n ch3,\r\n ch4\r\n ) {\r\n var options = {\r\n ch1: ch1,\r\n ch2: ch2,\r\n ch3: ch3,\r\n ch4: ch4,\r\n pdfColorType: \"text\",\r\n precision: 3\r\n };\r\n textColor = encodeColorString(options);\r\n\r\n return this;\r\n };\r\n\r\n var activeCharSpace = options.charSpace;\r\n\r\n /**\r\n * Get global value of CharSpace.\r\n *\r\n * @function\r\n * @instance\r\n * @returns {number} charSpace\r\n * @memberof jsPDF#\r\n * @name getCharSpace\r\n */\r\n var getCharSpace = (API.__private__.getCharSpace = API.getCharSpace = function() {\r\n return parseFloat(activeCharSpace || 0);\r\n });\r\n\r\n /**\r\n * Set global value of CharSpace.\r\n *\r\n * @param {number} charSpace\r\n * @function\r\n * @instance\r\n * @returns {jsPDF} jsPDF-instance\r\n * @memberof jsPDF#\r\n * @name setCharSpace\r\n */\r\n API.__private__.setCharSpace = API.setCharSpace = function(charSpace) {\r\n if (isNaN(charSpace)) {\r\n throw new Error(\"Invalid argument passed to jsPDF.setCharSpace\");\r\n }\r\n activeCharSpace = charSpace;\r\n return this;\r\n };\r\n\r\n var lineCapID = 0;\r\n /**\r\n * Is an Object providing a mapping from human-readable to\r\n * integer flag values designating the varieties of line cap\r\n * and join styles.\r\n *\r\n * @memberof jsPDF#\r\n * @name CapJoinStyles\r\n */\r\n API.CapJoinStyles = {\r\n 0: 0,\r\n butt: 0,\r\n but: 0,\r\n miter: 0,\r\n 1: 1,\r\n round: 1,\r\n rounded: 1,\r\n circle: 1,\r\n 2: 2,\r\n projecting: 2,\r\n project: 2,\r\n square: 2,\r\n bevel: 2\r\n };\r\n\r\n /**\r\n * Sets the line cap styles.\r\n * See {jsPDF.CapJoinStyles} for variants.\r\n *\r\n * @param {String|Number} style A string or number identifying the type of line cap.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineCap\r\n */\r\n API.__private__.setLineCap = API.setLineCap = function(style) {\r\n var id = API.CapJoinStyles[style];\r\n if (id === undefined) {\r\n throw new Error(\r\n \"Line cap style of '\" +\r\n style +\r\n \"' is not recognized. See or extend .CapJoinStyles property for valid styles\"\r\n );\r\n }\r\n lineCapID = id;\r\n out(id + \" J\");\r\n\r\n return this;\r\n };\r\n\r\n var lineJoinID = 0;\r\n /**\r\n * Sets the line join styles.\r\n * See {jsPDF.CapJoinStyles} for variants.\r\n *\r\n * @param {String|Number} style A string or number identifying the type of line join.\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineJoin\r\n */\r\n API.__private__.setLineJoin = API.setLineJoin = function(style) {\r\n var id = API.CapJoinStyles[style];\r\n if (id === undefined) {\r\n throw new Error(\r\n \"Line join style of '\" +\r\n style +\r\n \"' is not recognized. See or extend .CapJoinStyles property for valid styles\"\r\n );\r\n }\r\n lineJoinID = id;\r\n out(id + \" j\");\r\n\r\n return this;\r\n };\r\n\r\n var miterLimit;\r\n /**\r\n * Sets the miterLimit property, which effects the maximum miter length.\r\n *\r\n * @param {number} length The length of the miter\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setLineMiterLimit\r\n */\r\n API.__private__.setLineMiterLimit = API.__private__.setMiterLimit = API.setLineMiterLimit = API.setMiterLimit = function(\r\n length\r\n ) {\r\n length = length || 0;\r\n if (isNaN(length)) {\r\n throw new Error(\"Invalid argument passed to jsPDF.setLineMiterLimit\");\r\n }\r\n out(hpf(scale(length)) + \" M\");\r\n\r\n return this;\r\n };\r\n\r\n /**\r\n * An object representing a pdf graphics state.\r\n * @class GState\r\n */\r\n\r\n /**\r\n *\r\n * @param parameters A parameter object that contains all properties this graphics state wants to set.\r\n * Supported are: opacity, stroke-opacity\r\n * @constructor\r\n */\r\n API.GState = GState;\r\n\r\n /**\r\n * Sets a either previously added {@link GState} (via {@link addGState}) or a new {@link GState}.\r\n * @param {String|GState} gState If type is string, a previously added GState is used, if type is GState\r\n * it will be added before use.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setGState\r\n */\r\n API.setGState = function(gState) {\r\n if (typeof gState === \"string\") {\r\n gState = gStates[gStatesMap[gState]];\r\n } else {\r\n gState = addGState(null, gState);\r\n }\r\n\r\n if (!gState.equals(activeGState)) {\r\n out(\"/\" + gState.id + \" gs\");\r\n activeGState = gState;\r\n }\r\n };\r\n\r\n /**\r\n * Adds a new Graphics State. Duplicates are automatically eliminated.\r\n * @param {String} key Might also be null, if no later reference to this gState is needed\r\n * @param {Object} gState The gState object\r\n */\r\n var addGState = function(key, gState) {\r\n // only add it if it is not already present (the keys provided by the user must be unique!)\r\n if (key && gStatesMap[key]) return;\r\n var duplicate = false;\r\n for (var s in gStates) {\r\n if (gStates.hasOwnProperty(s)) {\r\n if (gStates[s].equals(gState)) {\r\n duplicate = true;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n if (duplicate) {\r\n gState = gStates[s];\r\n } else {\r\n var gStateKey = \"GS\" + (Object.keys(gStates).length + 1).toString(10);\r\n gStates[gStateKey] = gState;\r\n gState.id = gStateKey;\r\n }\r\n\r\n // several user keys may point to the same GState object\r\n key && (gStatesMap[key] = gState.id);\r\n\r\n events.publish(\"addGState\", gState);\r\n\r\n return gState;\r\n };\r\n\r\n /**\r\n * Adds a new {@link GState} for later use. See {@link setGState}.\r\n * @param {String} key\r\n * @param {GState} gState\r\n * @function\r\n * @instance\r\n * @returns {jsPDF}\r\n *\r\n * @memberof jsPDF#\r\n * @name addGState\r\n */\r\n API.addGState = function(key, gState) {\r\n addGState(key, gState);\r\n return this;\r\n };\r\n\r\n /**\r\n * Saves the current graphics state (\"pushes it on the stack\"). It can be restored by {@link restoreGraphicsState}\r\n * later. Here, the general pdf graphics state is meant, also including the current transformation matrix,\r\n * fill and stroke colors etc.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name saveGraphicsState\r\n */\r\n API.saveGraphicsState = function() {\r\n out(\"q\");\r\n // as we cannot set font key and size independently we must keep track of both\r\n fontStateStack.push({\r\n key: activeFontKey,\r\n size: activeFontSize,\r\n color: textColor\r\n });\r\n return this;\r\n };\r\n\r\n /**\r\n * Restores a previously saved graphics state saved by {@link saveGraphicsState} (\"pops the stack\").\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name restoreGraphicsState\r\n */\r\n API.restoreGraphicsState = function() {\r\n out(\"Q\");\r\n\r\n // restore previous font state\r\n var fontState = fontStateStack.pop();\r\n activeFontKey = fontState.key;\r\n activeFontSize = fontState.size;\r\n textColor = fontState.color;\r\n\r\n activeGState = null;\r\n\r\n return this;\r\n };\r\n\r\n /**\r\n * Appends this matrix to the left of all previously applied matrices.\r\n *\r\n * @param {Matrix} matrix\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name setCurrentTransformationMatrix\r\n */\r\n API.setCurrentTransformationMatrix = function(matrix) {\r\n out(matrix.toString() + \" cm\");\r\n return this;\r\n };\r\n\r\n /**\r\n * Inserts a debug comment into the generated pdf.\r\n * @function\r\n * @instance\r\n * @param {String} text\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name comment\r\n */\r\n API.comment = function(text) {\r\n out(\"#\" + text);\r\n return this;\r\n };\r\n\r\n /**\r\n * Point\r\n */\r\n var Point = function(x, y) {\r\n var _x = x || 0;\r\n Object.defineProperty(this, \"x\", {\r\n enumerable: true,\r\n get: function() {\r\n return _x;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _x = parseFloat(value);\r\n }\r\n }\r\n });\r\n\r\n var _y = y || 0;\r\n Object.defineProperty(this, \"y\", {\r\n enumerable: true,\r\n get: function() {\r\n return _y;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _y = parseFloat(value);\r\n }\r\n }\r\n });\r\n\r\n var _type = \"pt\";\r\n Object.defineProperty(this, \"type\", {\r\n enumerable: true,\r\n get: function() {\r\n return _type;\r\n },\r\n set: function(value) {\r\n _type = value.toString();\r\n }\r\n });\r\n return this;\r\n };\r\n\r\n /**\r\n * Rectangle\r\n */\r\n var Rectangle = function(x, y, w, h) {\r\n Point.call(this, x, y);\r\n this.type = \"rect\";\r\n\r\n var _w = w || 0;\r\n Object.defineProperty(this, \"w\", {\r\n enumerable: true,\r\n get: function() {\r\n return _w;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _w = parseFloat(value);\r\n }\r\n }\r\n });\r\n\r\n var _h = h || 0;\r\n Object.defineProperty(this, \"h\", {\r\n enumerable: true,\r\n get: function() {\r\n return _h;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _h = parseFloat(value);\r\n }\r\n }\r\n });\r\n\r\n return this;\r\n };\r\n\r\n /**\r\n * FormObject/RenderTarget\r\n */\r\n\r\n var RenderTarget = function() {\r\n this.page = page;\r\n this.currentPage = currentPage;\r\n this.pages = pages.slice(0);\r\n this.pagesContext = pagesContext.slice(0);\r\n this.x = pageX;\r\n this.y = pageY;\r\n this.matrix = pageMatrix;\r\n this.width = getPageWidth(currentPage);\r\n this.height = getPageHeight(currentPage);\r\n this.outputDestination = outputDestination;\r\n\r\n this.id = \"\"; // set by endFormObject()\r\n this.objectNumber = -1; // will be set by putXObject()\r\n };\r\n\r\n RenderTarget.prototype.restore = function() {\r\n page = this.page;\r\n currentPage = this.currentPage;\r\n pagesContext = this.pagesContext;\r\n pages = this.pages;\r\n pageX = this.x;\r\n pageY = this.y;\r\n pageMatrix = this.matrix;\r\n setPageWidth(currentPage, this.width);\r\n setPageHeight(currentPage, this.height);\r\n outputDestination = this.outputDestination;\r\n };\r\n\r\n var beginNewRenderTarget = function(x, y, width, height, matrix) {\r\n // save current state\r\n renderTargetStack.push(new RenderTarget());\r\n\r\n // clear pages\r\n page = currentPage = 0;\r\n pages = [];\r\n pageX = x;\r\n pageY = y;\r\n\r\n pageMatrix = matrix;\r\n\r\n beginPage([width, height]);\r\n };\r\n\r\n var endFormObject = function(key) {\r\n // only add it if it is not already present (the keys provided by the user must be unique!)\r\n if (renderTargetMap[key]) {\r\n renderTargetStack.pop().restore();\r\n return;\r\n }\r\n\r\n // save the created xObject\r\n var newXObject = new RenderTarget();\r\n\r\n var xObjectId = \"Xo\" + (Object.keys(renderTargets).length + 1).toString(10);\r\n newXObject.id = xObjectId;\r\n\r\n renderTargetMap[key] = xObjectId;\r\n renderTargets[xObjectId] = newXObject;\r\n\r\n events.publish(\"addFormObject\", newXObject);\r\n\r\n // restore state from stack\r\n renderTargetStack.pop().restore();\r\n };\r\n\r\n /**\r\n * Starts a new pdf form object, which means that all consequent draw calls target a new independent object\r\n * until {@link endFormObject} is called. The created object can be referenced and drawn later using\r\n * {@link doFormObject}. Nested form objects are possible.\r\n * x, y, width, height set the bounding box that is used to clip the content.\r\n *\r\n * @param {number} x\r\n * @param {number} y\r\n * @param {number} width\r\n * @param {number} height\r\n * @param {Matrix} matrix The matrix that will be applied to convert the form objects coordinate system to\r\n * the parent's.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name beginFormObject\r\n */\r\n API.beginFormObject = function(x, y, width, height, matrix) {\r\n // The user can set the output target to a new form object. Nested form objects are possible.\r\n // Currently, they use the resource dictionary of the surrounding stream. This should be changed, as\r\n // the PDF-Spec states:\r\n // \"In PDF 1.2 and later versions, form XObjects may be independent of the content streams in which\r\n // they appear, and this is strongly recommended although not requiredIn PDF 1.2 and later versions,\r\n // form XObjects may be independent of the content streams in which they appear, and this is strongly\r\n // recommended although not required\"\r\n beginNewRenderTarget(x, y, width, height, matrix);\r\n return this;\r\n };\r\n\r\n /**\r\n * Completes and saves the form object.\r\n * @param {String} key The key by which this form object can be referenced.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name endFormObject\r\n */\r\n API.endFormObject = function(key) {\r\n endFormObject(key);\r\n return this;\r\n };\r\n\r\n /**\r\n * Draws the specified form object by referencing to the respective pdf XObject created with\r\n * {@link API.beginFormObject} and {@link endFormObject}.\r\n * The location is determined by matrix.\r\n *\r\n * @param {String} key The key to the form object.\r\n * @param {Matrix} matrix The matrix applied before drawing the form object.\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name doFormObject\r\n */\r\n API.doFormObject = function(key, matrix) {\r\n var xObject = renderTargets[renderTargetMap[key]];\r\n out(\"q\");\r\n out(matrix.toString() + \" cm\");\r\n out(\"/\" + xObject.id + \" Do\");\r\n out(\"Q\");\r\n return this;\r\n };\r\n\r\n /**\r\n * Returns the form object specified by key.\r\n * @param key {String}\r\n * @returns {{x: number, y: number, width: number, height: number, matrix: Matrix}}\r\n * @function\r\n * @returns {jsPDF}\r\n * @memberof jsPDF#\r\n * @name getFormObject\r\n */\r\n API.getFormObject = function(key) {\r\n var xObject = renderTargets[renderTargetMap[key]];\r\n return {\r\n x: xObject.x,\r\n y: xObject.y,\r\n width: xObject.width,\r\n height: xObject.height,\r\n matrix: xObject.matrix\r\n };\r\n };\r\n\r\n /**\r\n * Saves as PDF document. An alias of jsPDF.output('save', 'filename.pdf').\r\n * Uses FileSaver.js-method saveAs.\r\n *\r\n * @memberof jsPDF#\r\n * @name save\r\n * @function\r\n * @instance\r\n * @param {string} filename The filename including extension.\r\n * @param {Object} options An Object with additional options, possible options: 'returnPromise'.\r\n * @returns {jsPDF|Promise} jsPDF-instance */\r\n API.save = function(filename, options) {\r\n filename = filename || \"generated.pdf\";\r\n\r\n options = options || {};\r\n options.returnPromise = options.returnPromise || false;\r\n\r\n if (options.returnPromise === false) {\r\n saveAs(getBlob(buildDocument()), filename);\r\n if (typeof saveAs.unload === \"function\") {\r\n if (globalObject.setTimeout) {\r\n setTimeout(saveAs.unload, 911);\r\n }\r\n }\r\n return this;\r\n } else {\r\n return new Promise(function(resolve, reject) {\r\n try {\r\n var result = saveAs(getBlob(buildDocument()), filename);\r\n if (typeof saveAs.unload === \"function\") {\r\n if (globalObject.setTimeout) {\r\n setTimeout(saveAs.unload, 911);\r\n }\r\n }\r\n resolve(result);\r\n } catch (e) {\r\n reject(e.message);\r\n }\r\n });\r\n }\r\n\r\n };\r\n\r\n // applying plugins (more methods) ON TOP of built-in API.\r\n // this is intentional as we allow plugins to override\r\n // built-ins\r\n for (var plugin in jsPDF.API) {\r\n if (jsPDF.API.hasOwnProperty(plugin)) {\r\n if (plugin === \"events\" && jsPDF.API.events.length) {\r\n (function(events, newEvents) {\r\n // jsPDF.API.events is a JS Array of Arrays\r\n // where each Array is a pair of event name, handler\r\n // Events were added by plugins to the jsPDF instantiator.\r\n // These are always added to the new instance and some ran\r\n // during instantiation.\r\n var eventname, handler_and_args, i;\r\n\r\n for (i = newEvents.length - 1; i !== -1; i--) {\r\n // subscribe takes 3 args: 'topic', function, runonce_flag\r\n // if undefined, runonce is false.\r\n // users can attach callback directly,\r\n // or they can attach an array with [callback, runonce_flag]\r\n // that's what the \"apply\" magic is for below.\r\n eventname = newEvents[i][0];\r\n handler_and_args = newEvents[i][1];\r\n events.subscribe.apply(\r\n events,\r\n [eventname].concat(\r\n typeof handler_and_args === \"function\"\r\n ? [handler_and_args]\r\n : handler_and_args\r\n )\r\n );\r\n }\r\n })(events, jsPDF.API.events);\r\n } else {\r\n API[plugin] = jsPDF.API[plugin];\r\n }\r\n }\r\n }\r\n\r\n var getPageWidth = (API.getPageWidth = function(pageNumber) {\r\n pageNumber = pageNumber || currentPage;\r\n return (\r\n (pagesContext[pageNumber].mediaBox.topRightX -\r\n pagesContext[pageNumber].mediaBox.bottomLeftX) /\r\n scaleFactor\r\n );\r\n });\r\n\r\n var setPageWidth = (API.setPageWidth = function(pageNumber, value) {\r\n pagesContext[pageNumber].mediaBox.topRightX =\r\n value * scaleFactor + pagesContext[pageNumber].mediaBox.bottomLeftX;\r\n });\r\n\r\n var getPageHeight = (API.getPageHeight = function(pageNumber) {\r\n pageNumber = pageNumber || currentPage;\r\n return (\r\n (pagesContext[pageNumber].mediaBox.topRightY -\r\n pagesContext[pageNumber].mediaBox.bottomLeftY) /\r\n scaleFactor\r\n );\r\n });\r\n\r\n var setPageHeight = (API.setPageHeight = function(pageNumber, value) {\r\n pagesContext[pageNumber].mediaBox.topRightY =\r\n value * scaleFactor + pagesContext[pageNumber].mediaBox.bottomLeftY;\r\n });\r\n\r\n /**\r\n * Object exposing internal API to plugins\r\n * @public\r\n * @ignore\r\n */\r\n API.internal = {\r\n pdfEscape: pdfEscape,\r\n getStyle: getStyle,\r\n getFont: getFontEntry,\r\n getFontSize: getFontSize,\r\n getCharSpace: getCharSpace,\r\n getTextColor: getTextColor,\r\n getLineHeight: getLineHeight,\r\n getLineHeightFactor: getLineHeightFactor,\r\n getLineWidth: getLineWidth,\r\n write: write,\r\n getHorizontalCoordinate: getHorizontalCoordinate,\r\n getVerticalCoordinate: getVerticalCoordinate,\r\n getCoordinateString: getHorizontalCoordinateString,\r\n getVerticalCoordinateString: getVerticalCoordinateString,\r\n collections: {},\r\n newObject: newObject,\r\n newAdditionalObject: newAdditionalObject,\r\n newObjectDeferred: newObjectDeferred,\r\n newObjectDeferredBegin: newObjectDeferredBegin,\r\n getFilters: getFilters,\r\n putStream: putStream,\r\n events: events,\r\n scaleFactor: scaleFactor,\r\n pageSize: {\r\n getWidth: function() {\r\n return getPageWidth(currentPage);\r\n },\r\n setWidth: function(value) {\r\n setPageWidth(currentPage, value);\r\n },\r\n getHeight: function() {\r\n return getPageHeight(currentPage);\r\n },\r\n setHeight: function(value) {\r\n setPageHeight(currentPage, value);\r\n }\r\n },\r\n encryptionOptions: encryptionOptions,\r\n encryption: encryption,\r\n getEncryptor: getEncryptor,\r\n output: output,\r\n getNumberOfPages: getNumberOfPages,\r\n pages: pages,\r\n out: out,\r\n f2: f2,\r\n f3: f3,\r\n getPageInfo: getPageInfo,\r\n getPageInfoByObjId: getPageInfoByObjId,\r\n getCurrentPageInfo: getCurrentPageInfo,\r\n getPDFVersion: getPdfVersion,\r\n Point: Point,\r\n Rectangle: Rectangle,\r\n Matrix: Matrix,\r\n hasHotfix: hasHotfix //Expose the hasHotfix check so plugins can also check them.\r\n };\r\n\r\n Object.defineProperty(API.internal.pageSize, \"width\", {\r\n get: function() {\r\n return getPageWidth(currentPage);\r\n },\r\n set: function(value) {\r\n setPageWidth(currentPage, value);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(API.internal.pageSize, \"height\", {\r\n get: function() {\r\n return getPageHeight(currentPage);\r\n },\r\n set: function(value) {\r\n setPageHeight(currentPage, value);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n\r\n //////////////////////////////////////////////////////\r\n // continuing initialization of jsPDF Document object\r\n //////////////////////////////////////////////////////\r\n // Add the first page automatically\r\n addFonts.call(API, standardFonts);\r\n activeFontKey = \"F1\";\r\n _addPage(format, orientation);\r\n\r\n events.publish(\"initialized\");\r\n return API;\r\n}\r\n\r\n/**\r\n * jsPDF.API is a STATIC property of jsPDF class.\r\n * jsPDF.API is an object you can add methods and properties to.\r\n * The methods / properties you add will show up in new jsPDF objects.\r\n *\r\n * One property is prepopulated. It is the 'events' Object. Plugin authors can add topics,\r\n * callbacks to this object. These will be reassigned to all new instances of jsPDF.\r\n *\r\n * @static\r\n * @public\r\n * @memberof jsPDF#\r\n * @name API\r\n *\r\n * @example\r\n * jsPDF.API.mymethod = function(){\r\n * // 'this' will be ref to internal API object. see jsPDF source\r\n * // , so you can refer to built-in methods like so:\r\n * // this.line(....)\r\n * // this.text(....)\r\n * }\r\n * var pdfdoc = new jsPDF()\r\n * pdfdoc.mymethod() // <- !!!!!!\r\n */\r\njsPDF.API = {\r\n events: []\r\n};\r\n/**\r\n * The version of jsPDF.\r\n * @name version\r\n * @type {string}\r\n * @memberof jsPDF#\r\n */\r\njsPDF.version = \"0.0.0\";\r\n\r\nexport { jsPDF, ShadingPattern, TilingPattern, GState };\r\nexport default jsPDF;\r\n","/* global jsPDF */\n/**\n * @license\n * Copyright (c) 2016 Alexander Weidt,\n * https://github.com/BiggA94\n *\n * Licensed under the MIT License. http://opensource.org/licenses/mit-license\n */\n\n/**\n * jsPDF AcroForm Plugin\n * @module AcroForm\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\nvar jsPDFAPI = jsPDF.API;\nvar scaleFactor = 1;\n\nvar pdfEscape = function(value) {\n return value\n .replace(/\\\\/g, \"\\\\\\\\\")\n .replace(/\\(/g, \"\\\\(\")\n .replace(/\\)/g, \"\\\\)\");\n};\nvar pdfUnescape = function(value) {\n return value\n .replace(/\\\\\\\\/g, \"\\\\\")\n .replace(/\\\\\\(/g, \"(\")\n .replace(/\\\\\\)/g, \")\");\n};\n\nvar f2 = function(number) {\n return number.toFixed(2); // Ie, %.2f\n};\n\nvar f5 = function(number) {\n return number.toFixed(5); // Ie, %.2f\n};\n\njsPDFAPI.__acroform__ = {};\nvar inherit = function(child, parent) {\n child.prototype = Object.create(parent.prototype);\n child.prototype.constructor = child;\n};\n\nvar scale = function(x) {\n return x * scaleFactor;\n};\n\nvar createFormXObject = function(formObject) {\n var xobj = new AcroFormXObject();\n var height = AcroFormAppearance.internal.getHeight(formObject) || 0;\n var width = AcroFormAppearance.internal.getWidth(formObject) || 0;\n xobj.BBox = [0, 0, Number(f2(width)), Number(f2(height))];\n return xobj;\n};\n\n/**\n * Bit-Operations\n */\nvar setBit = (jsPDFAPI.__acroform__.setBit = function(number, bitPosition) {\n number = number || 0;\n bitPosition = bitPosition || 0;\n\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.setBit\"\n );\n }\n var bitMask = 1 << bitPosition;\n\n number |= bitMask;\n\n return number;\n});\n\nvar clearBit = (jsPDFAPI.__acroform__.clearBit = function(number, bitPosition) {\n number = number || 0;\n bitPosition = bitPosition || 0;\n\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.clearBit\"\n );\n }\n var bitMask = 1 << bitPosition;\n\n number &= ~bitMask;\n\n return number;\n});\n\nvar getBit = (jsPDFAPI.__acroform__.getBit = function(number, bitPosition) {\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.getBit\"\n );\n }\n return (number & (1 << bitPosition)) === 0 ? 0 : 1;\n});\n\n/*\n * Ff starts counting the bit position at 1 and not like javascript at 0\n */\nvar getBitForPdf = (jsPDFAPI.__acroform__.getBitForPdf = function(\n number,\n bitPosition\n) {\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.getBitForPdf\"\n );\n }\n return getBit(number, bitPosition - 1);\n});\n\nvar setBitForPdf = (jsPDFAPI.__acroform__.setBitForPdf = function(\n number,\n bitPosition\n) {\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.setBitForPdf\"\n );\n }\n return setBit(number, bitPosition - 1);\n});\n\nvar clearBitForPdf = (jsPDFAPI.__acroform__.clearBitForPdf = function(\n number,\n bitPosition\n) {\n if (isNaN(number) || isNaN(bitPosition)) {\n throw new Error(\n \"Invalid arguments passed to jsPDF.API.__acroform__.clearBitForPdf\"\n );\n }\n return clearBit(number, bitPosition - 1);\n});\n\nvar calculateCoordinates = (jsPDFAPI.__acroform__.calculateCoordinates = function(\n args,\n scope\n) {\n var getHorizontalCoordinate = scope.internal.getHorizontalCoordinate;\n var getVerticalCoordinate = scope.internal.getVerticalCoordinate;\n var x = args[0];\n var y = args[1];\n var w = args[2];\n var h = args[3];\n\n var coordinates = {};\n\n coordinates.lowerLeft_X = getHorizontalCoordinate(x) || 0;\n coordinates.lowerLeft_Y = getVerticalCoordinate(y + h) || 0;\n coordinates.upperRight_X = getHorizontalCoordinate(x + w) || 0;\n coordinates.upperRight_Y = getVerticalCoordinate(y) || 0;\n\n return [\n Number(f2(coordinates.lowerLeft_X)),\n Number(f2(coordinates.lowerLeft_Y)),\n Number(f2(coordinates.upperRight_X)),\n Number(f2(coordinates.upperRight_Y))\n ];\n});\n\nvar calculateAppearanceStream = function(formObject) {\n if (formObject.appearanceStreamContent) {\n return formObject.appearanceStreamContent;\n }\n\n if (!formObject.V && !formObject.DV) {\n return;\n }\n\n // else calculate it\n\n var stream = [];\n var text = formObject._V || formObject.DV;\n var calcRes = calculateX(formObject, text);\n var fontKey = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n ).id;\n\n //PDF 32000-1:2008, page 444\n stream.push(\"/Tx BMC\");\n stream.push(\"q\");\n stream.push(\"BT\"); // Begin Text\n stream.push(formObject.scope.__private__.encodeColorString(formObject.color));\n stream.push(\"/\" + fontKey + \" \" + f2(calcRes.fontSize) + \" Tf\");\n stream.push(\"1 0 0 1 0 0 Tm\"); // Transformation Matrix\n stream.push(calcRes.text);\n stream.push(\"ET\"); // End Text\n stream.push(\"Q\");\n stream.push(\"EMC\");\n\n var appearanceStreamContent = createFormXObject(formObject);\n appearanceStreamContent.scope = formObject.scope;\n appearanceStreamContent.stream = stream.join(\"\\n\");\n return appearanceStreamContent;\n};\n\nvar calculateX = function(formObject, text) {\n var maxFontSize =\n formObject.fontSize === 0 ? formObject.maxFontSize : formObject.fontSize;\n var returnValue = {\n text: \"\",\n fontSize: \"\"\n };\n // Remove Brackets\n text = text.substr(0, 1) == \"(\" ? text.substr(1) : text;\n text =\n text.substr(text.length - 1) == \")\"\n ? text.substr(0, text.length - 1)\n : text;\n // split into array of words\n var textSplit = text.split(\" \");\n if (formObject.multiline) {\n textSplit = textSplit.map(word => word.split(\"\\n\"));\n } else {\n textSplit = textSplit.map(word => [word]);\n }\n\n var fontSize = maxFontSize; // The Starting fontSize (The Maximum)\n var lineSpacing = 2;\n var borderPadding = 2;\n\n var height = AcroFormAppearance.internal.getHeight(formObject) || 0;\n height = height < 0 ? -height : height;\n var width = AcroFormAppearance.internal.getWidth(formObject) || 0;\n width = width < 0 ? -width : width;\n\n var isSmallerThanWidth = function(i, lastLine, fontSize) {\n if (i + 1 < textSplit.length) {\n var tmp = lastLine + \" \" + textSplit[i + 1][0];\n var TextWidth = calculateFontSpace(tmp, formObject, fontSize).width;\n var FieldWidth = width - 2 * borderPadding;\n return TextWidth <= FieldWidth;\n } else {\n return false;\n }\n };\n\n fontSize++;\n FontSize: while (fontSize > 0) {\n text = \"\";\n fontSize--;\n var textHeight = calculateFontSpace(\"3\", formObject, fontSize).height;\n var startY = formObject.multiline\n ? height - fontSize\n : (height - textHeight) / 2;\n startY += lineSpacing;\n var startX;\n\n var lastY = startY;\n var firstWordInLine = 0,\n lastWordInLine = 0;\n var lastLength;\n var currWord = 0;\n\n if (fontSize <= 0) {\n // In case, the Text doesn't fit at all\n fontSize = 12;\n text = \"(...) Tj\\n\";\n text +=\n \"% Width of Text: \" +\n calculateFontSpace(text, formObject, fontSize).width +\n \", FieldWidth:\" +\n width +\n \"\\n\";\n break;\n }\n\n var lastLine = \"\";\n var lineCount = 0;\n Line: for (var i = 0; i < textSplit.length; i++) {\n if (textSplit.hasOwnProperty(i)) {\n let isWithNewLine = false;\n if (textSplit[i].length !== 1 && currWord !== textSplit[i].length - 1) {\n if (\n (textHeight + lineSpacing) * (lineCount + 2) + lineSpacing >\n height\n ) {\n continue FontSize;\n }\n\n lastLine += textSplit[i][currWord];\n isWithNewLine = true;\n lastWordInLine = i;\n i--;\n } else {\n lastLine += textSplit[i][currWord] + \" \";\n lastLine =\n lastLine.substr(lastLine.length - 1) == \" \"\n ? lastLine.substr(0, lastLine.length - 1)\n : lastLine;\n var key = parseInt(i);\n var nextLineIsSmaller = isSmallerThanWidth(key, lastLine, fontSize);\n var isLastWord = i >= textSplit.length - 1;\n\n if (nextLineIsSmaller && !isLastWord) {\n lastLine += \" \";\n currWord = 0;\n continue; // Line\n } else if (!nextLineIsSmaller && !isLastWord) {\n if (!formObject.multiline) {\n continue FontSize;\n } else {\n if (\n (textHeight + lineSpacing) * (lineCount + 2) + lineSpacing >\n height\n ) {\n // If the Text is higher than the\n // FieldObject\n continue FontSize;\n }\n lastWordInLine = key;\n // go on\n }\n } else if (isLastWord) {\n lastWordInLine = key;\n } else {\n if (\n formObject.multiline &&\n (textHeight + lineSpacing) * (lineCount + 2) + lineSpacing >\n height\n ) {\n // If the Text is higher than the FieldObject\n continue FontSize;\n }\n }\n }\n // Remove last blank\n\n var line = \"\";\n\n for (var x = firstWordInLine; x <= lastWordInLine; x++) {\n var currLine = textSplit[x];\n if (formObject.multiline) {\n if (x === lastWordInLine) {\n line += currLine[currWord] + \" \";\n currWord = (currWord + 1) % currLine.length;\n continue;\n }\n if (x === firstWordInLine) {\n line += currLine[currLine.length - 1] + \" \";\n continue;\n }\n }\n line += currLine[0] + \" \";\n }\n\n // Remove last blank\n line =\n line.substr(line.length - 1) == \" \"\n ? line.substr(0, line.length - 1)\n : line;\n // lastLength -= blankSpace.width;\n lastLength = calculateFontSpace(line, formObject, fontSize).width;\n\n // Calculate startX\n switch (formObject.textAlign) {\n case \"right\":\n startX = width - lastLength - borderPadding;\n break;\n case \"center\":\n startX = (width - lastLength) / 2;\n break;\n case \"left\":\n default:\n startX = borderPadding;\n break;\n }\n text += f2(startX) + \" \" + f2(lastY) + \" Td\\n\";\n text += \"(\" + pdfEscape(line) + \") Tj\\n\";\n // reset X in PDF\n text += -f2(startX) + \" 0 Td\\n\";\n\n // After a Line, adjust y position\n lastY = -(fontSize + lineSpacing);\n\n // Reset for next iteration step\n lastLength = 0;\n firstWordInLine = isWithNewLine ? lastWordInLine : lastWordInLine + 1;\n lineCount++;\n\n lastLine = \"\";\n continue Line;\n }\n }\n break;\n }\n\n returnValue.text = text;\n returnValue.fontSize = fontSize;\n\n return returnValue;\n};\n\n/**\n * Small workaround for calculating the TextMetric approximately.\n *\n * @param text\n * @param fontsize\n * @returns {TextMetrics} (Has Height and Width)\n */\nvar calculateFontSpace = function(text, formObject, fontSize) {\n var font = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n );\n var width =\n formObject.scope.getStringUnitWidth(text, {\n font: font,\n fontSize: parseFloat(fontSize),\n charSpace: 0\n }) * parseFloat(fontSize);\n var height =\n formObject.scope.getStringUnitWidth(\"3\", {\n font: font,\n fontSize: parseFloat(fontSize),\n charSpace: 0\n }) *\n parseFloat(fontSize) *\n 1.5;\n return { height: height, width: width };\n};\n\nvar acroformPluginTemplate = {\n fields: [],\n xForms: [],\n /**\n * acroFormDictionaryRoot contains information about the AcroForm\n * Dictionary 0: The Event-Token, the AcroFormDictionaryCallback has\n * 1: The Object ID of the Root\n */\n acroFormDictionaryRoot: null,\n /**\n * After the PDF gets evaluated, the reference to the root has to be\n * reset, this indicates, whether the root has already been printed\n * out\n */\n printedOut: false,\n internal: null,\n isInitialized: false\n};\n\nvar annotReferenceCallback = function(scope) {\n //set objId to undefined and force it to get a new objId on buildDocument\n scope.internal.acroformPlugin.acroFormDictionaryRoot.objId = undefined;\n var fields = scope.internal.acroformPlugin.acroFormDictionaryRoot.Fields;\n for (var i in fields) {\n if (fields.hasOwnProperty(i)) {\n var formObject = fields[i];\n //set objId to undefined and force it to get a new objId on buildDocument\n formObject.objId = undefined;\n // add Annot Reference!\n if (formObject.hasAnnotation) {\n // If theres an Annotation Widget in the Form Object, put the\n // Reference in the /Annot array\n createAnnotationReference(formObject, scope);\n }\n }\n }\n};\n\nvar putForm = function(formObject) {\n if (formObject.scope.internal.acroformPlugin.printedOut) {\n formObject.scope.internal.acroformPlugin.printedOut = false;\n formObject.scope.internal.acroformPlugin.acroFormDictionaryRoot = null;\n }\n formObject.scope.internal.acroformPlugin.acroFormDictionaryRoot.Fields.push(\n formObject\n );\n};\n/**\n * Create the Reference to the widgetAnnotation, so that it gets referenced\n * in the Annot[] int the+ (Requires the Annotation Plugin)\n */\nvar createAnnotationReference = function(object, scope) {\n var options = {\n type: \"reference\",\n object: object\n };\n var findEntry = function(entry) {\n return entry.type === options.type && entry.object === options.object;\n };\n if (\n scope.internal\n .getPageInfo(object.page)\n .pageContext.annotations.find(findEntry) === undefined\n ) {\n scope.internal\n .getPageInfo(object.page)\n .pageContext.annotations.push(options);\n }\n};\n\n// Callbacks\n\nvar putCatalogCallback = function(scope) {\n // Put reference to AcroForm to DocumentCatalog\n if (\n typeof scope.internal.acroformPlugin.acroFormDictionaryRoot !== \"undefined\"\n ) {\n // for safety, shouldn't normally be the case\n scope.internal.write(\n \"/AcroForm \" +\n scope.internal.acroformPlugin.acroFormDictionaryRoot.objId +\n \" \" +\n 0 +\n \" R\"\n );\n } else {\n throw new Error(\"putCatalogCallback: Root missing.\");\n }\n};\n\n/**\n * Adds /Acroform X 0 R to Document Catalog, and creates the AcroForm\n * Dictionary\n */\nvar AcroFormDictionaryCallback = function(scope) {\n // Remove event\n scope.internal.events.unsubscribe(\n scope.internal.acroformPlugin.acroFormDictionaryRoot._eventID\n );\n delete scope.internal.acroformPlugin.acroFormDictionaryRoot._eventID;\n scope.internal.acroformPlugin.printedOut = true;\n};\n\n/**\n * Creates the single Fields and writes them into the Document\n *\n * If fieldArray is set, use the fields that are inside it instead of the\n * fields from the AcroRoot (for the FormXObjects...)\n */\nvar createFieldCallback = function(fieldArray, scope) {\n var standardFields = !fieldArray;\n\n if (!fieldArray) {\n // in case there is no fieldArray specified, we want to print out\n // the Fields of the AcroForm\n // Print out Root\n scope.internal.newObjectDeferredBegin(\n scope.internal.acroformPlugin.acroFormDictionaryRoot.objId,\n true\n );\n scope.internal.acroformPlugin.acroFormDictionaryRoot.putStream();\n }\n\n fieldArray =\n fieldArray || scope.internal.acroformPlugin.acroFormDictionaryRoot.Kids;\n\n for (var i in fieldArray) {\n if (fieldArray.hasOwnProperty(i)) {\n var fieldObject = fieldArray[i];\n var keyValueList = [];\n var oldRect = fieldObject.Rect;\n\n if (fieldObject.Rect) {\n fieldObject.Rect = calculateCoordinates(fieldObject.Rect, scope);\n }\n\n // Start Writing the Object\n scope.internal.newObjectDeferredBegin(fieldObject.objId, true);\n\n fieldObject.DA = AcroFormAppearance.createDefaultAppearanceStream(\n fieldObject\n );\n\n if (\n typeof fieldObject === \"object\" &&\n typeof fieldObject.getKeyValueListForStream === \"function\"\n ) {\n keyValueList = fieldObject.getKeyValueListForStream();\n }\n\n fieldObject.Rect = oldRect;\n\n if (\n fieldObject.hasAppearanceStream &&\n !fieldObject.appearanceStreamContent\n ) {\n // Calculate Appearance\n var appearance = calculateAppearanceStream(fieldObject);\n keyValueList.push({ key: \"AP\", value: \"<>\" });\n\n scope.internal.acroformPlugin.xForms.push(appearance);\n }\n\n // Assume AppearanceStreamContent is a Array with N,R,D (at least\n // one of them!)\n if (fieldObject.appearanceStreamContent) {\n var appearanceStreamString = \"\";\n // Iterate over N,R and D\n for (var k in fieldObject.appearanceStreamContent) {\n if (fieldObject.appearanceStreamContent.hasOwnProperty(k)) {\n var value = fieldObject.appearanceStreamContent[k];\n appearanceStreamString += \"/\" + k + \" \";\n appearanceStreamString += \"<<\";\n if (Object.keys(value).length >= 1 || Array.isArray(value)) {\n // appearanceStream is an Array or Object!\n for (var i in value) {\n if (value.hasOwnProperty(i)) {\n var obj = value[i];\n if (typeof obj === \"function\") {\n // if Function is referenced, call it in order\n // to get the FormXObject\n obj = obj.call(scope, fieldObject);\n }\n appearanceStreamString += \"/\" + i + \" \" + obj + \" \";\n\n // In case the XForm is already used, e.g. OffState\n // of CheckBoxes, don't add it\n if (!(scope.internal.acroformPlugin.xForms.indexOf(obj) >= 0))\n scope.internal.acroformPlugin.xForms.push(obj);\n }\n }\n } else {\n obj = value;\n if (typeof obj === \"function\") {\n // if Function is referenced, call it in order to\n // get the FormXObject\n obj = obj.call(scope, fieldObject);\n }\n appearanceStreamString += \"/\" + i + \" \" + obj;\n if (!(scope.internal.acroformPlugin.xForms.indexOf(obj) >= 0))\n scope.internal.acroformPlugin.xForms.push(obj);\n }\n appearanceStreamString += \">>\";\n }\n }\n\n // appearance stream is a normal Object..\n keyValueList.push({\n key: \"AP\",\n value: \"<<\\n\" + appearanceStreamString + \">>\"\n });\n }\n\n scope.internal.putStream({\n additionalKeyValues: keyValueList,\n objectId: fieldObject.objId\n });\n\n scope.internal.out(\"endobj\");\n }\n }\n if (standardFields) {\n createXFormObjectCallback(scope.internal.acroformPlugin.xForms, scope);\n }\n};\n\nvar createXFormObjectCallback = function(fieldArray, scope) {\n for (var i in fieldArray) {\n if (fieldArray.hasOwnProperty(i)) {\n var key = i;\n var fieldObject = fieldArray[i];\n // Start Writing the Object\n scope.internal.newObjectDeferredBegin(fieldObject.objId, true);\n\n if (\n typeof fieldObject === \"object\" &&\n typeof fieldObject.putStream === \"function\"\n ) {\n fieldObject.putStream();\n }\n delete fieldArray[key];\n }\n }\n};\n\nvar initializeAcroForm = function(scope, formObject) {\n formObject.scope = scope;\n if (\n scope.internal !== undefined &&\n (scope.internal.acroformPlugin === undefined ||\n scope.internal.acroformPlugin.isInitialized === false)\n ) {\n AcroFormField.FieldNum = 0;\n scope.internal.acroformPlugin = JSON.parse(\n JSON.stringify(acroformPluginTemplate)\n );\n if (scope.internal.acroformPlugin.acroFormDictionaryRoot) {\n throw new Error(\"Exception while creating AcroformDictionary\");\n }\n scaleFactor = scope.internal.scaleFactor;\n // The Object Number of the AcroForm Dictionary\n scope.internal.acroformPlugin.acroFormDictionaryRoot = new AcroFormDictionary();\n scope.internal.acroformPlugin.acroFormDictionaryRoot.scope = scope;\n\n // add Callback for creating the AcroForm Dictionary\n scope.internal.acroformPlugin.acroFormDictionaryRoot._eventID = scope.internal.events.subscribe(\n \"postPutResources\",\n function() {\n AcroFormDictionaryCallback(scope);\n }\n );\n\n scope.internal.events.subscribe(\"buildDocument\", function() {\n annotReferenceCallback(scope);\n }); // buildDocument\n\n // Register event, that is triggered when the DocumentCatalog is\n // written, in order to add /AcroForm\n\n scope.internal.events.subscribe(\"putCatalog\", function() {\n putCatalogCallback(scope);\n });\n\n // Register event, that creates all Fields\n scope.internal.events.subscribe(\"postPutPages\", function(fieldArray) {\n createFieldCallback(fieldArray, scope);\n });\n\n scope.internal.acroformPlugin.isInitialized = true;\n }\n};\n\n//PDF 32000-1:2008, page 26, 7.3.6\nvar arrayToPdfArray = (jsPDFAPI.__acroform__.arrayToPdfArray = function(\n array,\n objId,\n scope\n) {\n var encryptor = function(data) {\n return data;\n };\n if (Array.isArray(array)) {\n var content = \"[\";\n for (var i = 0; i < array.length; i++) {\n if (i !== 0) {\n content += \" \";\n }\n switch (typeof array[i]) {\n case \"boolean\":\n case \"number\":\n case \"object\":\n content += array[i].toString();\n break;\n case \"string\":\n if (array[i].substr(0, 1) !== \"/\") {\n if (typeof objId !== \"undefined\" && scope)\n encryptor = scope.internal.getEncryptor(objId);\n content += \"(\" + pdfEscape(encryptor(array[i].toString())) + \")\";\n } else {\n content += array[i].toString();\n }\n break;\n }\n }\n content += \"]\";\n return content;\n }\n throw new Error(\n \"Invalid argument passed to jsPDF.__acroform__.arrayToPdfArray\"\n );\n});\nfunction getMatches(string, regex, index) {\n index || (index = 1); // default to the first capturing group\n var matches = [];\n var match;\n while ((match = regex.exec(string))) {\n matches.push(match[index]);\n }\n return matches;\n}\nvar pdfArrayToStringArray = function(array) {\n var result = [];\n if (typeof array === \"string\") {\n result = getMatches(array, /\\((.*?)\\)/g);\n }\n return result;\n};\n\nvar toPdfString = function(string, objId, scope) {\n var encryptor = function(data) {\n return data;\n };\n if (typeof objId !== \"undefined\" && scope)\n encryptor = scope.internal.getEncryptor(objId);\n string = string || \"\";\n string.toString();\n string = \"(\" + pdfEscape(encryptor(string)) + \")\";\n return string;\n};\n\n// ##########################\n// Classes\n// ##########################\n\n/**\n * @class AcroFormPDFObject\n * @classdesc A AcroFormPDFObject\n */\nvar AcroFormPDFObject = function() {\n this._objId = undefined;\n this._scope = undefined;\n\n /**\n * @name AcroFormPDFObject#objId\n * @type {any}\n */\n Object.defineProperty(this, \"objId\", {\n get: function() {\n if (typeof this._objId === \"undefined\") {\n if (typeof this.scope === \"undefined\") {\n return undefined;\n }\n this._objId = this.scope.internal.newObjectDeferred();\n }\n return this._objId;\n },\n set: function(value) {\n this._objId = value;\n }\n });\n Object.defineProperty(this, \"scope\", {\n value: this._scope,\n writable: true\n });\n};\n\n/**\n * @function AcroFormPDFObject.toString\n */\nAcroFormPDFObject.prototype.toString = function() {\n return this.objId + \" 0 R\";\n};\n\nAcroFormPDFObject.prototype.putStream = function() {\n var keyValueList = this.getKeyValueListForStream();\n this.scope.internal.putStream({\n data: this.stream,\n additionalKeyValues: keyValueList,\n objectId: this.objId\n });\n this.scope.internal.out(\"endobj\");\n};\n\n/**\n * Returns an key-value-List of all non-configurable Variables from the Object\n *\n * @name getKeyValueListForStream\n * @returns {string}\n */\nAcroFormPDFObject.prototype.getKeyValueListForStream = function() {\n var keyValueList = [];\n var keys = Object.getOwnPropertyNames(this).filter(function(key) {\n return (\n key != \"content\" &&\n key != \"appearanceStreamContent\" &&\n key != \"scope\" &&\n key != \"objId\" &&\n key.substring(0, 1) != \"_\"\n );\n });\n\n for (var i in keys) {\n if (Object.getOwnPropertyDescriptor(this, keys[i]).configurable === false) {\n var key = keys[i];\n var value = this[key];\n\n if (value) {\n if (Array.isArray(value)) {\n keyValueList.push({\n key: key,\n value: arrayToPdfArray(value, this.objId, this.scope)\n });\n } else if (value instanceof AcroFormPDFObject) {\n // In case it is a reference to another PDFObject,\n // take the reference number\n value.scope = this.scope;\n keyValueList.push({ key: key, value: value.objId + \" 0 R\" });\n } else if (typeof value !== \"function\") {\n keyValueList.push({ key: key, value: value });\n }\n }\n }\n }\n return keyValueList;\n};\n\nvar AcroFormXObject = function() {\n AcroFormPDFObject.call(this);\n\n Object.defineProperty(this, \"Type\", {\n value: \"/XObject\",\n configurable: false,\n writable: true\n });\n\n Object.defineProperty(this, \"Subtype\", {\n value: \"/Form\",\n configurable: false,\n writable: true\n });\n\n Object.defineProperty(this, \"FormType\", {\n value: 1,\n configurable: false,\n writable: true\n });\n\n var _BBox = [];\n Object.defineProperty(this, \"BBox\", {\n configurable: false,\n get: function() {\n return _BBox;\n },\n set: function(value) {\n _BBox = value;\n }\n });\n\n Object.defineProperty(this, \"Resources\", {\n value: \"2 0 R\",\n configurable: false,\n writable: true\n });\n\n var _stream;\n Object.defineProperty(this, \"stream\", {\n enumerable: false,\n configurable: true,\n set: function(value) {\n _stream = value.trim();\n },\n get: function() {\n if (_stream) {\n return _stream;\n } else {\n return null;\n }\n }\n });\n};\n\ninherit(AcroFormXObject, AcroFormPDFObject);\n\nvar AcroFormDictionary = function() {\n AcroFormPDFObject.call(this);\n\n var _Kids = [];\n\n Object.defineProperty(this, \"Kids\", {\n enumerable: false,\n configurable: true,\n get: function() {\n if (_Kids.length > 0) {\n return _Kids;\n } else {\n return undefined;\n }\n }\n });\n Object.defineProperty(this, \"Fields\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _Kids;\n }\n });\n\n // Default Appearance\n var _DA;\n Object.defineProperty(this, \"DA\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (!_DA) {\n return undefined;\n }\n var encryptor = function(data) {\n return data;\n };\n if (this.scope) encryptor = this.scope.internal.getEncryptor(this.objId);\n return \"(\" + pdfEscape(encryptor(_DA)) + \")\";\n },\n set: function(value) {\n _DA = value;\n }\n });\n};\n\ninherit(AcroFormDictionary, AcroFormPDFObject);\n\n/**\n * The Field Object contains the Variables, that every Field needs\n *\n * @class AcroFormField\n * @classdesc An AcroForm FieldObject\n */\nvar AcroFormField = function() {\n AcroFormPDFObject.call(this);\n\n //Annotation-Flag See Table 165\n var _F = 4;\n Object.defineProperty(this, \"F\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _F;\n },\n set: function(value) {\n if (!isNaN(value)) {\n _F = value;\n } else {\n throw new Error(\n 'Invalid value \"' + value + '\" for attribute F supplied.'\n );\n }\n }\n });\n\n /**\n * (PDF 1.2) If set, print the annotation when the page is printed. If clear, never print the annotation, regardless of wether is is displayed on the screen.\n * NOTE 2 This can be useful for annotations representing interactive pushbuttons, which would serve no meaningful purpose on the printed page.\n *\n * @name AcroFormField#showWhenPrinted\n * @default true\n * @type {boolean}\n */\n Object.defineProperty(this, \"showWhenPrinted\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(_F, 3));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.F = setBitForPdf(_F, 3);\n } else {\n this.F = clearBitForPdf(_F, 3);\n }\n }\n });\n\n var _Ff = 0;\n Object.defineProperty(this, \"Ff\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _Ff;\n },\n set: function(value) {\n if (!isNaN(value)) {\n _Ff = value;\n } else {\n throw new Error(\n 'Invalid value \"' + value + '\" for attribute Ff supplied.'\n );\n }\n }\n });\n\n var _Rect = [];\n Object.defineProperty(this, \"Rect\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (_Rect.length === 0) {\n return undefined;\n }\n return _Rect;\n },\n set: function(value) {\n if (typeof value !== \"undefined\") {\n _Rect = value;\n } else {\n _Rect = [];\n }\n }\n });\n\n /**\n * The x-position of the field.\n *\n * @name AcroFormField#x\n * @default null\n * @type {number}\n */\n Object.defineProperty(this, \"x\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_Rect || isNaN(_Rect[0])) {\n return 0;\n }\n return _Rect[0];\n },\n set: function(value) {\n _Rect[0] = value;\n }\n });\n\n /**\n * The y-position of the field.\n *\n * @name AcroFormField#y\n * @default null\n * @type {number}\n */\n Object.defineProperty(this, \"y\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_Rect || isNaN(_Rect[1])) {\n return 0;\n }\n return _Rect[1];\n },\n set: function(value) {\n _Rect[1] = value;\n }\n });\n\n /**\n * The width of the field.\n *\n * @name AcroFormField#width\n * @default null\n * @type {number}\n */\n Object.defineProperty(this, \"width\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_Rect || isNaN(_Rect[2])) {\n return 0;\n }\n return _Rect[2];\n },\n set: function(value) {\n _Rect[2] = value;\n }\n });\n\n /**\n * The height of the field.\n *\n * @name AcroFormField#height\n * @default null\n * @type {number}\n */\n Object.defineProperty(this, \"height\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_Rect || isNaN(_Rect[3])) {\n return 0;\n }\n return _Rect[3];\n },\n set: function(value) {\n _Rect[3] = value;\n }\n });\n\n var _FT = \"\";\n Object.defineProperty(this, \"FT\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return _FT;\n },\n set: function(value) {\n switch (value) {\n case \"/Btn\":\n case \"/Tx\":\n case \"/Ch\":\n case \"/Sig\":\n _FT = value;\n break;\n default:\n throw new Error(\n 'Invalid value \"' + value + '\" for attribute FT supplied.'\n );\n }\n }\n });\n\n var _T = null;\n\n Object.defineProperty(this, \"T\", {\n enumerable: true,\n configurable: false,\n get: function() {\n if (!_T || _T.length < 1) {\n // In case of a Child from a Radio´Group, you don't need a FieldName\n if (this instanceof AcroFormChildClass) {\n return undefined;\n }\n _T = \"FieldObject\" + AcroFormField.FieldNum++;\n }\n var encryptor = function(data) {\n return data;\n };\n if (this.scope) encryptor = this.scope.internal.getEncryptor(this.objId);\n return \"(\" + pdfEscape(encryptor(_T)) + \")\";\n },\n set: function(value) {\n _T = value.toString();\n }\n });\n\n /**\n * (Optional) The partial field name (see 12.7.3.2, “Field Names”).\n *\n * @name AcroFormField#fieldName\n * @default null\n * @type {string}\n */\n Object.defineProperty(this, \"fieldName\", {\n configurable: true,\n enumerable: true,\n get: function() {\n return _T;\n },\n set: function(value) {\n _T = value;\n }\n });\n\n var _fontName = \"helvetica\";\n /**\n * The fontName of the font to be used.\n *\n * @name AcroFormField#fontName\n * @default 'helvetica'\n * @type {string}\n */\n Object.defineProperty(this, \"fontName\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _fontName;\n },\n set: function(value) {\n _fontName = value;\n }\n });\n\n var _fontStyle = \"normal\";\n /**\n * The fontStyle of the font to be used.\n *\n * @name AcroFormField#fontStyle\n * @default 'normal'\n * @type {string}\n */\n Object.defineProperty(this, \"fontStyle\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _fontStyle;\n },\n set: function(value) {\n _fontStyle = value;\n }\n });\n\n var _fontSize = 0;\n /**\n * The fontSize of the font to be used.\n *\n * @name AcroFormField#fontSize\n * @default 0 (for auto)\n * @type {number}\n */\n Object.defineProperty(this, \"fontSize\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _fontSize;\n },\n set: function(value) {\n _fontSize = value;\n }\n });\n\n var _maxFontSize = undefined;\n /**\n * The maximum fontSize of the font to be used.\n *\n * @name AcroFormField#maxFontSize\n * @default 0 (for auto)\n * @type {number}\n */\n Object.defineProperty(this, \"maxFontSize\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (_maxFontSize === undefined) {\n // use the old default value here - the value is some kind of random as it depends on the scaleFactor (user unit)\n // (\"50\" is transformed to the \"user space\" but then used in \"pdf space\")\n return 50 / scaleFactor;\n } else {\n return _maxFontSize;\n }\n },\n set: function(value) {\n _maxFontSize = value;\n }\n });\n\n var _color = \"black\";\n /**\n * The color of the text\n *\n * @name AcroFormField#color\n * @default 'black'\n * @type {string|rgba}\n */\n Object.defineProperty(this, \"color\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _color;\n },\n set: function(value) {\n _color = value;\n }\n });\n\n var _DA = \"/F1 0 Tf 0 g\";\n // Defines the default appearance (Needed for variable Text)\n Object.defineProperty(this, \"DA\", {\n enumerable: true,\n configurable: false,\n get: function() {\n if (\n !_DA ||\n this instanceof AcroFormChildClass ||\n this instanceof AcroFormTextField\n ) {\n return undefined;\n }\n return toPdfString(_DA, this.objId, this.scope);\n },\n set: function(value) {\n value = value.toString();\n _DA = value;\n }\n });\n\n var _DV = null;\n Object.defineProperty(this, \"DV\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (!_DV) {\n return undefined;\n }\n if (this instanceof AcroFormButton === false) {\n return toPdfString(_DV, this.objId, this.scope);\n }\n return _DV;\n },\n set: function(value) {\n value = value.toString();\n if (this instanceof AcroFormButton === false) {\n if (value.substr(0, 1) === \"(\") {\n _DV = pdfUnescape(value.substr(1, value.length - 2));\n } else {\n _DV = pdfUnescape(value);\n }\n } else {\n _DV = value;\n }\n }\n });\n\n /**\n * (Optional; inheritable) The default value to which the field reverts when a reset-form action is executed (see 12.7.5.3, “Reset-Form Action”). The format of this value is the same as that of value.\n *\n * @name AcroFormField#defaultValue\n * @default null\n * @type {any}\n */\n Object.defineProperty(this, \"defaultValue\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (this instanceof AcroFormButton === true) {\n return pdfUnescape(_DV.substr(1, _DV.length - 1));\n } else {\n return _DV;\n }\n },\n set: function(value) {\n value = value.toString();\n if (this instanceof AcroFormButton === true) {\n _DV = \"/\" + value;\n } else {\n _DV = value;\n }\n }\n });\n\n var _V = null;\n Object.defineProperty(this, \"_V\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (!_V) {\n return undefined;\n }\n return _V;\n },\n set: function(value) {\n this.V = value;\n }\n });\n Object.defineProperty(this, \"V\", {\n enumerable: false,\n configurable: false,\n get: function() {\n if (!_V) {\n return undefined;\n }\n if (this instanceof AcroFormButton === false) {\n return toPdfString(_V, this.objId, this.scope);\n }\n return _V;\n },\n set: function(value) {\n value = value.toString();\n if (this instanceof AcroFormButton === false) {\n if (value.substr(0, 1) === \"(\") {\n _V = pdfUnescape(value.substr(1, value.length - 2));\n } else {\n _V = pdfUnescape(value);\n }\n } else {\n _V = value;\n }\n }\n });\n\n /**\n * (Optional; inheritable) The field’s value, whose format varies depending on the field type. See the descriptions of individual field types for further information.\n *\n * @name AcroFormField#value\n * @default null\n * @type {any}\n */\n Object.defineProperty(this, \"value\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (this instanceof AcroFormButton === true) {\n return pdfUnescape(_V.substr(1, _V.length - 1));\n } else {\n return _V;\n }\n },\n set: function(value) {\n value = value.toString();\n if (this instanceof AcroFormButton === true) {\n _V = \"/\" + value;\n } else {\n _V = value;\n }\n }\n });\n\n /**\n * Check if field has annotations\n *\n * @name AcroFormField#hasAnnotation\n * @readonly\n * @type {boolean}\n */\n Object.defineProperty(this, \"hasAnnotation\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return this.Rect;\n }\n });\n\n Object.defineProperty(this, \"Type\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return this.hasAnnotation ? \"/Annot\" : null;\n }\n });\n\n Object.defineProperty(this, \"Subtype\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return this.hasAnnotation ? \"/Widget\" : null;\n }\n });\n\n var _hasAppearanceStream = false;\n /**\n * true if field has an appearanceStream\n *\n * @name AcroFormField#hasAppearanceStream\n * @readonly\n * @type {boolean}\n */\n Object.defineProperty(this, \"hasAppearanceStream\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _hasAppearanceStream;\n },\n set: function(value) {\n value = Boolean(value);\n _hasAppearanceStream = value;\n }\n });\n\n /**\n * The page on which the AcroFormField is placed\n *\n * @name AcroFormField#page\n * @type {number}\n */\n var _page;\n Object.defineProperty(this, \"page\", {\n enumerable: true,\n configurable: true,\n get: function() {\n if (!_page) {\n return undefined;\n }\n return _page;\n },\n set: function(value) {\n _page = value;\n }\n });\n\n /**\n * If set, the user may not change the value of the field. Any associated widget annotations will not interact with the user; that is, they will not respond to mouse clicks or change their appearance in response to mouse motions. This flag is useful for fields whose values are computed or imported from a database.\n *\n * @name AcroFormField#readOnly\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"readOnly\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 1));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 1);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 1);\n }\n }\n });\n\n /**\n * If set, the field shall have a value at the time it is exported by a submitform action (see 12.7.5.2, “Submit-Form Action”).\n *\n * @name AcroFormField#required\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"required\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 2));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 2);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 2);\n }\n }\n });\n\n /**\n * If set, the field shall not be exported by a submit-form action (see 12.7.5.2, “Submit-Form Action”)\n *\n * @name AcroFormField#noExport\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"noExport\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 3));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 3);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 3);\n }\n }\n });\n\n var _Q = null;\n Object.defineProperty(this, \"Q\", {\n enumerable: true,\n configurable: false,\n get: function() {\n if (_Q === null) {\n return undefined;\n }\n return _Q;\n },\n set: function(value) {\n if ([0, 1, 2].indexOf(value) !== -1) {\n _Q = value;\n } else {\n throw new Error(\n 'Invalid value \"' + value + '\" for attribute Q supplied.'\n );\n }\n }\n });\n\n /**\n * (Optional; inheritable) A code specifying the form of quadding (justification) that shall be used in displaying the text:\n * 'left', 'center', 'right'\n *\n * @name AcroFormField#textAlign\n * @default 'left'\n * @type {string}\n */\n Object.defineProperty(this, \"textAlign\", {\n get: function() {\n var result;\n switch (_Q) {\n case 0:\n default:\n result = \"left\";\n break;\n case 1:\n result = \"center\";\n break;\n case 2:\n result = \"right\";\n break;\n }\n return result;\n },\n configurable: true,\n enumerable: true,\n set: function(value) {\n switch (value) {\n case \"right\":\n case 2:\n _Q = 2;\n break;\n case \"center\":\n case 1:\n _Q = 1;\n break;\n case \"left\":\n case 0:\n default:\n _Q = 0;\n }\n }\n });\n};\n\ninherit(AcroFormField, AcroFormPDFObject);\n\n/**\n * @class AcroFormChoiceField\n * @extends AcroFormField\n */\nvar AcroFormChoiceField = function() {\n AcroFormField.call(this);\n // Field Type = Choice Field\n this.FT = \"/Ch\";\n // options\n this.V = \"()\";\n\n this.fontName = \"zapfdingbats\";\n // Top Index\n var _TI = 0;\n\n Object.defineProperty(this, \"TI\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return _TI;\n },\n set: function(value) {\n _TI = value;\n }\n });\n\n /**\n * (Optional) For scrollable list boxes, the top index (the index in the Opt array of the first option visible in the list). Default value: 0.\n *\n * @name AcroFormChoiceField#topIndex\n * @default 0\n * @type {number}\n */\n Object.defineProperty(this, \"topIndex\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _TI;\n },\n set: function(value) {\n _TI = value;\n }\n });\n\n var _Opt = [];\n Object.defineProperty(this, \"Opt\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return arrayToPdfArray(_Opt, this.objId, this.scope);\n },\n set: function(value) {\n _Opt = pdfArrayToStringArray(value);\n }\n });\n\n /**\n * @memberof AcroFormChoiceField\n * @name getOptions\n * @function\n * @instance\n * @returns {array} array of Options\n */\n this.getOptions = function() {\n return _Opt;\n };\n\n /**\n * @memberof AcroFormChoiceField\n * @name setOptions\n * @function\n * @instance\n * @param {array} value\n */\n this.setOptions = function(value) {\n _Opt = value;\n if (this.sort) {\n _Opt.sort();\n }\n };\n\n /**\n * @memberof AcroFormChoiceField\n * @name addOption\n * @function\n * @instance\n * @param {string} value\n */\n this.addOption = function(value) {\n value = value || \"\";\n value = value.toString();\n _Opt.push(value);\n if (this.sort) {\n _Opt.sort();\n }\n };\n\n /**\n * @memberof AcroFormChoiceField\n * @name removeOption\n * @function\n * @instance\n * @param {string} value\n * @param {boolean} allEntries (default: false)\n */\n this.removeOption = function(value, allEntries) {\n allEntries = allEntries || false;\n value = value || \"\";\n value = value.toString();\n\n while (_Opt.indexOf(value) !== -1) {\n _Opt.splice(_Opt.indexOf(value), 1);\n if (allEntries === false) {\n break;\n }\n }\n };\n\n /**\n * If set, the field is a combo box; if clear, the field is a list box.\n *\n * @name AcroFormChoiceField#combo\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"combo\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 18));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 18);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 18);\n }\n }\n });\n\n /**\n * If set, the combo box shall include an editable text box as well as a drop-down list; if clear, it shall include only a drop-down list. This flag shall be used only if the Combo flag is set.\n *\n * @name AcroFormChoiceField#edit\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"edit\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 19));\n },\n set: function(value) {\n //PDF 32000-1:2008, page 444\n if (this.combo === true) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 19);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 19);\n }\n }\n }\n });\n\n /**\n * If set, the field’s option items shall be sorted alphabetically. This flag is intended for use by writers, not by readers. Conforming readers shall display the options in the order in which they occur in the Opt array (see Table 231).\n *\n * @name AcroFormChoiceField#sort\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"sort\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 20));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 20);\n _Opt.sort();\n } else {\n this.Ff = clearBitForPdf(this.Ff, 20);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, more than one of the field’s option items may be selected simultaneously; if clear, at most one item shall be selected\n *\n * @name AcroFormChoiceField#multiSelect\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"multiSelect\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 22));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 22);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 22);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, text entered in the field shall not be spellchecked. This flag shall not be used unless the Combo and Edit flags are both set.\n *\n * @name AcroFormChoiceField#doNotSpellCheck\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"doNotSpellCheck\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 23));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 23);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 23);\n }\n }\n });\n\n /**\n * (PDF 1.5) If set, the new value shall be committed as soon as a selection is made (commonly with the pointing device). In this case, supplying a value for a field involves three actions: selecting the field for fill-in, selecting a choice for the fill-in value, and leaving that field, which finalizes or “commits” the data choice and triggers any actions associated with the entry or changing of this data. If this flag is on, then processing does not wait for leaving the field action to occur, but immediately proceeds to the third step.\n * This option enables applications to perform an action once a selection is made, without requiring the user to exit the field. If clear, the new value is not committed until the user exits the field.\n *\n * @name AcroFormChoiceField#commitOnSelChange\n * @default false\n * @type {boolean}\n */\n Object.defineProperty(this, \"commitOnSelChange\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 27));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 27);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 27);\n }\n }\n });\n\n this.hasAppearanceStream = false;\n};\ninherit(AcroFormChoiceField, AcroFormField);\n\n/**\n * @class AcroFormListBox\n * @extends AcroFormChoiceField\n * @extends AcroFormField\n */\nvar AcroFormListBox = function() {\n AcroFormChoiceField.call(this);\n this.fontName = \"helvetica\";\n\n //PDF 32000-1:2008, page 444\n this.combo = false;\n};\ninherit(AcroFormListBox, AcroFormChoiceField);\n\n/**\n * @class AcroFormComboBox\n * @extends AcroFormListBox\n * @extends AcroFormChoiceField\n * @extends AcroFormField\n */\nvar AcroFormComboBox = function() {\n AcroFormListBox.call(this);\n this.combo = true;\n};\ninherit(AcroFormComboBox, AcroFormListBox);\n\n/**\n * @class AcroFormEditBox\n * @extends AcroFormComboBox\n * @extends AcroFormListBox\n * @extends AcroFormChoiceField\n * @extends AcroFormField\n */\nvar AcroFormEditBox = function() {\n AcroFormComboBox.call(this);\n this.edit = true;\n};\ninherit(AcroFormEditBox, AcroFormComboBox);\n\n/**\n * @class AcroFormButton\n * @extends AcroFormField\n */\nvar AcroFormButton = function() {\n AcroFormField.call(this);\n this.FT = \"/Btn\";\n\n /**\n * (Radio buttons only) If set, exactly one radio button shall be selected at all times; selecting the currently selected button has no effect. If clear, clicking the selected button deselects it, leaving no button selected.\n *\n * @name AcroFormButton#noToggleToOff\n * @type {boolean}\n */\n Object.defineProperty(this, \"noToggleToOff\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 15));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 15);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 15);\n }\n }\n });\n\n /**\n * If set, the field is a set of radio buttons; if clear, the field is a checkbox. This flag may be set only if the Pushbutton flag is clear.\n *\n * @name AcroFormButton#radio\n * @type {boolean}\n */\n Object.defineProperty(this, \"radio\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 16));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 16);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 16);\n }\n }\n });\n\n /**\n * If set, the field is a pushbutton that does not retain a permanent value.\n *\n * @name AcroFormButton#pushButton\n * @type {boolean}\n */\n Object.defineProperty(this, \"pushButton\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 17));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 17);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 17);\n }\n }\n });\n\n /**\n * (PDF 1.5) If set, a group of radio buttons within a radio button field that use the same value for the on state will turn on and off in unison; that is if one is checked, they are all checked. If clear, the buttons are mutually exclusive (the same behavior as HTML radio buttons).\n *\n * @name AcroFormButton#radioIsUnison\n * @type {boolean}\n */\n Object.defineProperty(this, \"radioIsUnison\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 26));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 26);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 26);\n }\n }\n });\n\n var _MK = {};\n Object.defineProperty(this, \"MK\", {\n enumerable: false,\n configurable: false,\n get: function() {\n var encryptor = function(data) {\n return data;\n };\n if (this.scope) encryptor = this.scope.internal.getEncryptor(this.objId);\n if (Object.keys(_MK).length !== 0) {\n var result = [];\n result.push(\"<<\");\n var key;\n for (key in _MK) {\n result.push(\"/\" + key + \" (\" + pdfEscape(encryptor(_MK[key])) + \")\");\n }\n result.push(\">>\");\n return result.join(\"\\n\");\n }\n return undefined;\n },\n set: function(value) {\n if (typeof value === \"object\") {\n _MK = value;\n }\n }\n });\n\n /**\n * From the PDF reference:\n * (Optional, button fields only) The widget annotation's normal caption which shall be displayed when it is not interacting with the user.\n * Unlike the remaining entries listed in this Table which apply only to widget annotations associated with pushbutton fields (see Pushbuttons in 12.7.4.2, \"Button Fields\"), the CA entry may be used with any type of button field, including check boxes (see Check Boxes in 12.7.4.2, \"Button Fields\") and radio buttons (Radio Buttons in 12.7.4.2, \"Button Fields\").\n *\n * - '8' = Cross,\n * - 'l' = Circle,\n * - '' = nothing\n * @name AcroFormButton#caption\n * @type {string}\n */\n Object.defineProperty(this, \"caption\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _MK.CA || \"\";\n },\n set: function(value) {\n if (typeof value === \"string\") {\n _MK.CA = value;\n }\n }\n });\n\n var _AS;\n Object.defineProperty(this, \"AS\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _AS;\n },\n set: function(value) {\n _AS = value;\n }\n });\n\n /**\n * (Required if the appearance dictionary AP contains one or more subdictionaries; PDF 1.2) The annotation's appearance state, which selects the applicable appearance stream from an appearance subdictionary (see Section 12.5.5, \"Appearance Streams\")\n *\n * @name AcroFormButton#appearanceState\n * @type {any}\n */\n Object.defineProperty(this, \"appearanceState\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _AS.substr(1, _AS.length - 1);\n },\n set: function(value) {\n _AS = \"/\" + value;\n }\n });\n};\ninherit(AcroFormButton, AcroFormField);\n\n/**\n * @class AcroFormPushButton\n * @extends AcroFormButton\n * @extends AcroFormField\n */\nvar AcroFormPushButton = function() {\n AcroFormButton.call(this);\n this.pushButton = true;\n};\ninherit(AcroFormPushButton, AcroFormButton);\n\n/**\n * @class AcroFormRadioButton\n * @extends AcroFormButton\n * @extends AcroFormField\n */\nvar AcroFormRadioButton = function() {\n AcroFormButton.call(this);\n this.radio = true;\n this.pushButton = false;\n\n var _Kids = [];\n Object.defineProperty(this, \"Kids\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return _Kids;\n },\n set: function(value) {\n if (typeof value !== \"undefined\") {\n _Kids = value;\n } else {\n _Kids = [];\n }\n }\n });\n};\ninherit(AcroFormRadioButton, AcroFormButton);\n\n/**\n * The Child class of a RadioButton (the radioGroup) -> The single Buttons\n *\n * @class AcroFormChildClass\n * @extends AcroFormField\n * @ignore\n */\nvar AcroFormChildClass = function() {\n AcroFormField.call(this);\n\n var _parent;\n Object.defineProperty(this, \"Parent\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _parent;\n },\n set: function(value) {\n _parent = value;\n }\n });\n\n var _optionName;\n Object.defineProperty(this, \"optionName\", {\n enumerable: false,\n configurable: true,\n get: function() {\n return _optionName;\n },\n set: function(value) {\n _optionName = value;\n }\n });\n\n var _MK = {};\n Object.defineProperty(this, \"MK\", {\n enumerable: false,\n configurable: false,\n get: function() {\n var encryptor = function(data) {\n return data;\n };\n if (this.scope) encryptor = this.scope.internal.getEncryptor(this.objId);\n var result = [];\n result.push(\"<<\");\n var key;\n for (key in _MK) {\n result.push(\"/\" + key + \" (\" + pdfEscape(encryptor(_MK[key])) + \")\");\n }\n result.push(\">>\");\n return result.join(\"\\n\");\n },\n set: function(value) {\n if (typeof value === \"object\") {\n _MK = value;\n }\n }\n });\n\n /**\n * From the PDF reference:\n * (Optional, button fields only) The widget annotation's normal caption which shall be displayed when it is not interacting with the user.\n * Unlike the remaining entries listed in this Table which apply only to widget annotations associated with pushbutton fields (see Pushbuttons in 12.7.4.2, \"Button Fields\"), the CA entry may be used with any type of button field, including check boxes (see Check Boxes in 12.7.4.2, \"Button Fields\") and radio buttons (Radio Buttons in 12.7.4.2, \"Button Fields\").\n *\n * - '8' = Cross,\n * - 'l' = Circle,\n * - '' = nothing\n * @name AcroFormButton#caption\n * @type {string}\n */\n Object.defineProperty(this, \"caption\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _MK.CA || \"\";\n },\n set: function(value) {\n if (typeof value === \"string\") {\n _MK.CA = value;\n }\n }\n });\n\n var _AS;\n Object.defineProperty(this, \"AS\", {\n enumerable: false,\n configurable: false,\n get: function() {\n return _AS;\n },\n set: function(value) {\n _AS = value;\n }\n });\n\n /**\n * (Required if the appearance dictionary AP contains one or more subdictionaries; PDF 1.2) The annotation's appearance state, which selects the applicable appearance stream from an appearance subdictionary (see Section 12.5.5, \"Appearance Streams\")\n *\n * @name AcroFormButton#appearanceState\n * @type {any}\n */\n Object.defineProperty(this, \"appearanceState\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _AS.substr(1, _AS.length - 1);\n },\n set: function(value) {\n _AS = \"/\" + value;\n }\n });\n this.caption = \"l\";\n this.appearanceState = \"Off\";\n // todo: set AppearanceType as variable that can be set from the\n // outside...\n this._AppearanceType = AcroFormAppearance.RadioButton.Circle;\n // The Default appearanceType is the Circle\n this.appearanceStreamContent = this._AppearanceType.createAppearanceStream(\n this.optionName\n );\n};\ninherit(AcroFormChildClass, AcroFormField);\n\nAcroFormRadioButton.prototype.setAppearance = function(appearance) {\n if (!(\"createAppearanceStream\" in appearance && \"getCA\" in appearance)) {\n throw new Error(\n \"Couldn't assign Appearance to RadioButton. Appearance was Invalid!\"\n );\n }\n for (var objId in this.Kids) {\n if (this.Kids.hasOwnProperty(objId)) {\n var child = this.Kids[objId];\n child.appearanceStreamContent = appearance.createAppearanceStream(\n child.optionName\n );\n child.caption = appearance.getCA();\n }\n }\n};\n\nAcroFormRadioButton.prototype.createOption = function(name) {\n // Create new Child for RadioGroup\n var child = new AcroFormChildClass();\n child.Parent = this;\n child.optionName = name;\n // Add to Parent\n this.Kids.push(child);\n\n addField.call(this.scope, child);\n\n return child;\n};\n\n/**\n * @class AcroFormCheckBox\n * @extends AcroFormButton\n * @extends AcroFormField\n */\nvar AcroFormCheckBox = function() {\n AcroFormButton.call(this);\n\n this.fontName = \"zapfdingbats\";\n this.caption = \"3\";\n this.appearanceState = \"On\";\n this.value = \"On\";\n this.textAlign = \"center\";\n this.appearanceStreamContent = AcroFormAppearance.CheckBox.createAppearanceStream();\n};\ninherit(AcroFormCheckBox, AcroFormButton);\n\n/**\n * @class AcroFormTextField\n * @extends AcroFormField\n */\nvar AcroFormTextField = function() {\n AcroFormField.call(this);\n this.FT = \"/Tx\";\n\n /**\n * If set, the field may contain multiple lines of text; if clear, the field’s text shall be restricted to a single line.\n *\n * @name AcroFormTextField#multiline\n * @type {boolean}\n */\n Object.defineProperty(this, \"multiline\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 13));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 13);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 13);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, the text entered in the field represents the pathname of a file whose contents shall be submitted as the value of the field.\n *\n * @name AcroFormTextField#fileSelect\n * @type {boolean}\n */\n Object.defineProperty(this, \"fileSelect\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 21));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 21);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 21);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, text entered in the field shall not be spell-checked.\n *\n * @name AcroFormTextField#doNotSpellCheck\n * @type {boolean}\n */\n Object.defineProperty(this, \"doNotSpellCheck\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 23));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 23);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 23);\n }\n }\n });\n\n /**\n * (PDF 1.4) If set, the field shall not scroll (horizontally for single-line fields, vertically for multiple-line fields) to accommodate more text than fits within its annotation rectangle. Once the field is full, no further text shall be accepted for interactive form filling; for noninteractive form filling, the filler should take care not to add more character than will visibly fit in the defined area.\n *\n * @name AcroFormTextField#doNotScroll\n * @type {boolean}\n */\n Object.defineProperty(this, \"doNotScroll\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 24));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 24);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 24);\n }\n }\n });\n\n /**\n * (PDF 1.5) May be set only if the MaxLen entry is present in the text field dictionary (see Table 229) and if the Multiline, Password, and FileSelect flags are clear. If set, the field shall be automatically divided into as many equally spaced positions, or combs, as the value of MaxLen, and the text is laid out into those combs.\n *\n * @name AcroFormTextField#comb\n * @type {boolean}\n */\n Object.defineProperty(this, \"comb\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 25));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 25);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 25);\n }\n }\n });\n\n /**\n * (PDF 1.5) If set, the value of this field shall be a rich text string (see 12.7.3.4, “Rich Text Strings”). If the field has a value, the RV entry of the field dictionary (Table 222) shall specify the rich text string.\n *\n * @name AcroFormTextField#richText\n * @type {boolean}\n */\n Object.defineProperty(this, \"richText\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 26));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 26);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 26);\n }\n }\n });\n\n var _MaxLen = null;\n Object.defineProperty(this, \"MaxLen\", {\n enumerable: true,\n configurable: false,\n get: function() {\n return _MaxLen;\n },\n set: function(value) {\n _MaxLen = value;\n }\n });\n\n /**\n * (Optional; inheritable) The maximum length of the field’s text, in characters.\n *\n * @name AcroFormTextField#maxLength\n * @type {number}\n */\n Object.defineProperty(this, \"maxLength\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return _MaxLen;\n },\n set: function(value) {\n if (Number.isInteger(value)) {\n _MaxLen = value;\n }\n }\n });\n\n Object.defineProperty(this, \"hasAppearanceStream\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return this.V || this.DV;\n }\n });\n};\ninherit(AcroFormTextField, AcroFormField);\n\n/**\n * @class AcroFormPasswordField\n * @extends AcroFormTextField\n * @extends AcroFormField\n */\nvar AcroFormPasswordField = function() {\n AcroFormTextField.call(this);\n\n /**\n * If set, the field is intended for entering a secure password that should not be echoed visibly to the screen. Characters typed from the keyboard shall instead be echoed in some unreadable form, such as asterisks or bullet characters.\n * NOTE To protect password confidentiality, readers should never store the value of the text field in the PDF file if this flag is set.\n *\n * @name AcroFormTextField#password\n * @type {boolean}\n */\n Object.defineProperty(this, \"password\", {\n enumerable: true,\n configurable: true,\n get: function() {\n return Boolean(getBitForPdf(this.Ff, 14));\n },\n set: function(value) {\n if (Boolean(value) === true) {\n this.Ff = setBitForPdf(this.Ff, 14);\n } else {\n this.Ff = clearBitForPdf(this.Ff, 14);\n }\n }\n });\n this.password = true;\n};\ninherit(AcroFormPasswordField, AcroFormTextField);\n\n// Contains Methods for creating standard appearances\nvar AcroFormAppearance = {\n CheckBox: {\n createAppearanceStream: function() {\n var appearance = {\n N: {\n On: AcroFormAppearance.CheckBox.YesNormal\n },\n D: {\n On: AcroFormAppearance.CheckBox.YesPushDown,\n Off: AcroFormAppearance.CheckBox.OffPushDown\n }\n };\n\n return appearance;\n },\n /**\n * Returns the standard On Appearance for a CheckBox\n *\n * @returns {AcroFormXObject}\n */\n YesPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n var fontKey = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n ).id;\n var encodedColor = formObject.scope.__private__.encodeColorString(\n formObject.color\n );\n var calcRes = calculateX(formObject, formObject.caption);\n stream.push(\"0.749023 g\");\n stream.push(\n \"0 0 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject)) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject)) +\n \" re\"\n );\n stream.push(\"f\");\n stream.push(\"BMC\");\n stream.push(\"q\");\n stream.push(\"0 0 1 rg\");\n stream.push(\n \"/\" + fontKey + \" \" + f2(calcRes.fontSize) + \" Tf \" + encodedColor\n );\n stream.push(\"BT\");\n stream.push(calcRes.text);\n stream.push(\"ET\");\n stream.push(\"Q\");\n stream.push(\"EMC\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n\n YesNormal: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var fontKey = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n ).id;\n var encodedColor = formObject.scope.__private__.encodeColorString(\n formObject.color\n );\n var stream = [];\n var height = AcroFormAppearance.internal.getHeight(formObject);\n var width = AcroFormAppearance.internal.getWidth(formObject);\n var calcRes = calculateX(formObject, formObject.caption);\n stream.push(\"1 g\");\n stream.push(\"0 0 \" + f2(width) + \" \" + f2(height) + \" re\");\n stream.push(\"f\");\n stream.push(\"q\");\n stream.push(\"0 0 1 rg\");\n stream.push(\"0 0 \" + f2(width - 1) + \" \" + f2(height - 1) + \" re\");\n stream.push(\"W\");\n stream.push(\"n\");\n stream.push(\"0 g\");\n stream.push(\"BT\");\n stream.push(\n \"/\" + fontKey + \" \" + f2(calcRes.fontSize) + \" Tf \" + encodedColor\n );\n stream.push(calcRes.text);\n stream.push(\"ET\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n\n /**\n * Returns the standard Off Appearance for a CheckBox\n *\n * @returns {AcroFormXObject}\n */\n OffPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n stream.push(\"0.749023 g\");\n stream.push(\n \"0 0 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject)) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject)) +\n \" re\"\n );\n stream.push(\"f\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n }\n },\n\n RadioButton: {\n Circle: {\n createAppearanceStream: function(name) {\n var appearanceStreamContent = {\n D: {\n Off: AcroFormAppearance.RadioButton.Circle.OffPushDown\n },\n N: {}\n };\n appearanceStreamContent.N[name] =\n AcroFormAppearance.RadioButton.Circle.YesNormal;\n appearanceStreamContent.D[name] =\n AcroFormAppearance.RadioButton.Circle.YesPushDown;\n return appearanceStreamContent;\n },\n getCA: function() {\n return \"l\";\n },\n\n YesNormal: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n // Make the Radius of the Circle relative to min(height, width) of formObject\n var DotRadius =\n AcroFormAppearance.internal.getWidth(formObject) <=\n AcroFormAppearance.internal.getHeight(formObject)\n ? AcroFormAppearance.internal.getWidth(formObject) / 4\n : AcroFormAppearance.internal.getHeight(formObject) / 4;\n // The Borderpadding...\n DotRadius = Number((DotRadius * 0.9).toFixed(5));\n var c = AcroFormAppearance.internal.Bezier_C;\n var DotRadiusBezier = Number((DotRadius * c).toFixed(5));\n /*\n * The Following is a Circle created with Bezier-Curves.\n */\n stream.push(\"q\");\n stream.push(\n \"1 0 0 1 \" +\n f5(AcroFormAppearance.internal.getWidth(formObject) / 2) +\n \" \" +\n f5(AcroFormAppearance.internal.getHeight(formObject) / 2) +\n \" cm\"\n );\n stream.push(DotRadius + \" 0 m\");\n stream.push(\n DotRadius +\n \" \" +\n DotRadiusBezier +\n \" \" +\n DotRadiusBezier +\n \" \" +\n DotRadius +\n \" 0 \" +\n DotRadius +\n \" c\"\n );\n stream.push(\n \"-\" +\n DotRadiusBezier +\n \" \" +\n DotRadius +\n \" -\" +\n DotRadius +\n \" \" +\n DotRadiusBezier +\n \" -\" +\n DotRadius +\n \" 0 c\"\n );\n stream.push(\n \"-\" +\n DotRadius +\n \" -\" +\n DotRadiusBezier +\n \" -\" +\n DotRadiusBezier +\n \" -\" +\n DotRadius +\n \" 0 -\" +\n DotRadius +\n \" c\"\n );\n stream.push(\n DotRadiusBezier +\n \" -\" +\n DotRadius +\n \" \" +\n DotRadius +\n \" -\" +\n DotRadiusBezier +\n \" \" +\n DotRadius +\n \" 0 c\"\n );\n stream.push(\"f\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n YesPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n var DotRadius =\n AcroFormAppearance.internal.getWidth(formObject) <=\n AcroFormAppearance.internal.getHeight(formObject)\n ? AcroFormAppearance.internal.getWidth(formObject) / 4\n : AcroFormAppearance.internal.getHeight(formObject) / 4;\n // The Borderpadding...\n DotRadius = Number((DotRadius * 0.9).toFixed(5));\n // Save results for later use; no need to waste\n // processor ticks on doing math\n var k = Number((DotRadius * 2).toFixed(5));\n var kc = Number((k * AcroFormAppearance.internal.Bezier_C).toFixed(5));\n var dc = Number(\n (DotRadius * AcroFormAppearance.internal.Bezier_C).toFixed(5)\n );\n\n stream.push(\"0.749023 g\");\n stream.push(\"q\");\n stream.push(\n \"1 0 0 1 \" +\n f5(AcroFormAppearance.internal.getWidth(formObject) / 2) +\n \" \" +\n f5(AcroFormAppearance.internal.getHeight(formObject) / 2) +\n \" cm\"\n );\n stream.push(k + \" 0 m\");\n stream.push(k + \" \" + kc + \" \" + kc + \" \" + k + \" 0 \" + k + \" c\");\n stream.push(\n \"-\" + kc + \" \" + k + \" -\" + k + \" \" + kc + \" -\" + k + \" 0 c\"\n );\n stream.push(\n \"-\" + k + \" -\" + kc + \" -\" + kc + \" -\" + k + \" 0 -\" + k + \" c\"\n );\n stream.push(kc + \" -\" + k + \" \" + k + \" -\" + kc + \" \" + k + \" 0 c\");\n stream.push(\"f\");\n stream.push(\"Q\");\n stream.push(\"0 g\");\n stream.push(\"q\");\n stream.push(\n \"1 0 0 1 \" +\n f5(AcroFormAppearance.internal.getWidth(formObject) / 2) +\n \" \" +\n f5(AcroFormAppearance.internal.getHeight(formObject) / 2) +\n \" cm\"\n );\n stream.push(DotRadius + \" 0 m\");\n stream.push(\n \"\" +\n DotRadius +\n \" \" +\n dc +\n \" \" +\n dc +\n \" \" +\n DotRadius +\n \" 0 \" +\n DotRadius +\n \" c\"\n );\n stream.push(\n \"-\" +\n dc +\n \" \" +\n DotRadius +\n \" -\" +\n DotRadius +\n \" \" +\n dc +\n \" -\" +\n DotRadius +\n \" 0 c\"\n );\n stream.push(\n \"-\" +\n DotRadius +\n \" -\" +\n dc +\n \" -\" +\n dc +\n \" -\" +\n DotRadius +\n \" 0 -\" +\n DotRadius +\n \" c\"\n );\n stream.push(\n dc +\n \" -\" +\n DotRadius +\n \" \" +\n DotRadius +\n \" -\" +\n dc +\n \" \" +\n DotRadius +\n \" 0 c\"\n );\n stream.push(\"f\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n OffPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n var DotRadius =\n AcroFormAppearance.internal.getWidth(formObject) <=\n AcroFormAppearance.internal.getHeight(formObject)\n ? AcroFormAppearance.internal.getWidth(formObject) / 4\n : AcroFormAppearance.internal.getHeight(formObject) / 4;\n // The Borderpadding...\n DotRadius = Number((DotRadius * 0.9).toFixed(5));\n // Save results for later use; no need to waste\n // processor ticks on doing math\n var k = Number((DotRadius * 2).toFixed(5));\n var kc = Number((k * AcroFormAppearance.internal.Bezier_C).toFixed(5));\n\n stream.push(\"0.749023 g\");\n stream.push(\"q\");\n stream.push(\n \"1 0 0 1 \" +\n f5(AcroFormAppearance.internal.getWidth(formObject) / 2) +\n \" \" +\n f5(AcroFormAppearance.internal.getHeight(formObject) / 2) +\n \" cm\"\n );\n stream.push(k + \" 0 m\");\n stream.push(k + \" \" + kc + \" \" + kc + \" \" + k + \" 0 \" + k + \" c\");\n stream.push(\n \"-\" + kc + \" \" + k + \" -\" + k + \" \" + kc + \" -\" + k + \" 0 c\"\n );\n stream.push(\n \"-\" + k + \" -\" + kc + \" -\" + kc + \" -\" + k + \" 0 -\" + k + \" c\"\n );\n stream.push(kc + \" -\" + k + \" \" + k + \" -\" + kc + \" \" + k + \" 0 c\");\n stream.push(\"f\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n }\n },\n\n Cross: {\n /**\n * Creates the Actual AppearanceDictionary-References\n *\n * @param {string} name\n * @returns {Object}\n * @ignore\n */\n createAppearanceStream: function(name) {\n var appearanceStreamContent = {\n D: {\n Off: AcroFormAppearance.RadioButton.Cross.OffPushDown\n },\n N: {}\n };\n appearanceStreamContent.N[name] =\n AcroFormAppearance.RadioButton.Cross.YesNormal;\n appearanceStreamContent.D[name] =\n AcroFormAppearance.RadioButton.Cross.YesPushDown;\n return appearanceStreamContent;\n },\n getCA: function() {\n return \"8\";\n },\n\n YesNormal: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n var cross = AcroFormAppearance.internal.calculateCross(formObject);\n stream.push(\"q\");\n stream.push(\n \"1 1 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject) - 2) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject) - 2) +\n \" re\"\n );\n stream.push(\"W\");\n stream.push(\"n\");\n stream.push(f2(cross.x1.x) + \" \" + f2(cross.x1.y) + \" m\");\n stream.push(f2(cross.x2.x) + \" \" + f2(cross.x2.y) + \" l\");\n stream.push(f2(cross.x4.x) + \" \" + f2(cross.x4.y) + \" m\");\n stream.push(f2(cross.x3.x) + \" \" + f2(cross.x3.y) + \" l\");\n stream.push(\"s\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n YesPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var cross = AcroFormAppearance.internal.calculateCross(formObject);\n var stream = [];\n stream.push(\"0.749023 g\");\n stream.push(\n \"0 0 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject)) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject)) +\n \" re\"\n );\n stream.push(\"f\");\n stream.push(\"q\");\n stream.push(\n \"1 1 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject) - 2) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject) - 2) +\n \" re\"\n );\n stream.push(\"W\");\n stream.push(\"n\");\n stream.push(f2(cross.x1.x) + \" \" + f2(cross.x1.y) + \" m\");\n stream.push(f2(cross.x2.x) + \" \" + f2(cross.x2.y) + \" l\");\n stream.push(f2(cross.x4.x) + \" \" + f2(cross.x4.y) + \" m\");\n stream.push(f2(cross.x3.x) + \" \" + f2(cross.x3.y) + \" l\");\n stream.push(\"s\");\n stream.push(\"Q\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n },\n OffPushDown: function(formObject) {\n var xobj = createFormXObject(formObject);\n xobj.scope = formObject.scope;\n var stream = [];\n stream.push(\"0.749023 g\");\n stream.push(\n \"0 0 \" +\n f2(AcroFormAppearance.internal.getWidth(formObject)) +\n \" \" +\n f2(AcroFormAppearance.internal.getHeight(formObject)) +\n \" re\"\n );\n stream.push(\"f\");\n xobj.stream = stream.join(\"\\n\");\n return xobj;\n }\n }\n },\n\n /**\n * Returns the standard Appearance\n *\n * @returns {AcroFormXObject}\n */\n createDefaultAppearanceStream: function(formObject) {\n // Set Helvetica to Standard Font (size: auto)\n // Color: Black\n var fontKey = formObject.scope.internal.getFont(\n formObject.fontName,\n formObject.fontStyle\n ).id;\n var encodedColor = formObject.scope.__private__.encodeColorString(\n formObject.color\n );\n var fontSize = formObject.fontSize;\n var result = \"/\" + fontKey + \" \" + fontSize + \" Tf \" + encodedColor;\n return result;\n }\n};\n\nAcroFormAppearance.internal = {\n Bezier_C: 0.551915024494,\n\n calculateCross: function(formObject) {\n var width = AcroFormAppearance.internal.getWidth(formObject);\n var height = AcroFormAppearance.internal.getHeight(formObject);\n var a = Math.min(width, height);\n\n var cross = {\n x1: {\n // upperLeft\n x: (width - a) / 2,\n y: (height - a) / 2 + a // height - borderPadding\n },\n x2: {\n // lowerRight\n x: (width - a) / 2 + a,\n y: (height - a) / 2 // borderPadding\n },\n x3: {\n // lowerLeft\n x: (width - a) / 2,\n y: (height - a) / 2 // borderPadding\n },\n x4: {\n // upperRight\n x: (width - a) / 2 + a,\n y: (height - a) / 2 + a // height - borderPadding\n }\n };\n\n return cross;\n }\n};\nAcroFormAppearance.internal.getWidth = function(formObject) {\n var result = 0;\n if (typeof formObject === \"object\") {\n result = scale(formObject.Rect[2]);\n }\n return result;\n};\nAcroFormAppearance.internal.getHeight = function(formObject) {\n var result = 0;\n if (typeof formObject === \"object\") {\n result = scale(formObject.Rect[3]);\n }\n return result;\n};\n\n// Public:\n\n/**\n * Add an AcroForm-Field to the jsPDF-instance\n *\n * @name addField\n * @function\n * @instance\n * @param {Object} fieldObject\n * @returns {jsPDF}\n */\nvar addField = (jsPDFAPI.addField = function(fieldObject) {\n initializeAcroForm(this, fieldObject);\n\n if (fieldObject instanceof AcroFormField) {\n putForm(fieldObject);\n } else {\n throw new Error(\"Invalid argument passed to jsPDF.addField.\");\n }\n fieldObject.page = fieldObject.scope.internal.getCurrentPageInfo().pageNumber;\n return this;\n});\n\njsPDFAPI.AcroFormChoiceField = AcroFormChoiceField;\njsPDFAPI.AcroFormListBox = AcroFormListBox;\njsPDFAPI.AcroFormComboBox = AcroFormComboBox;\njsPDFAPI.AcroFormEditBox = AcroFormEditBox;\njsPDFAPI.AcroFormButton = AcroFormButton;\njsPDFAPI.AcroFormPushButton = AcroFormPushButton;\njsPDFAPI.AcroFormRadioButton = AcroFormRadioButton;\njsPDFAPI.AcroFormCheckBox = AcroFormCheckBox;\njsPDFAPI.AcroFormTextField = AcroFormTextField;\njsPDFAPI.AcroFormPasswordField = AcroFormPasswordField;\njsPDFAPI.AcroFormAppearance = AcroFormAppearance;\n\njsPDFAPI.AcroForm = {\n ChoiceField: AcroFormChoiceField,\n ListBox: AcroFormListBox,\n ComboBox: AcroFormComboBox,\n EditBox: AcroFormEditBox,\n Button: AcroFormButton,\n PushButton: AcroFormPushButton,\n RadioButton: AcroFormRadioButton,\n CheckBox: AcroFormCheckBox,\n TextField: AcroFormTextField,\n PasswordField: AcroFormPasswordField,\n Appearance: AcroFormAppearance\n};\n\njsPDF.AcroForm = {\n ChoiceField: AcroFormChoiceField,\n ListBox: AcroFormListBox,\n ComboBox: AcroFormComboBox,\n EditBox: AcroFormEditBox,\n Button: AcroFormButton,\n PushButton: AcroFormPushButton,\n RadioButton: AcroFormRadioButton,\n CheckBox: AcroFormCheckBox,\n TextField: AcroFormTextField,\n PasswordField: AcroFormPasswordField,\n Appearance: AcroFormAppearance\n};\n\nvar AcroForm = jsPDF.AcroForm;\n\nexport {\n AcroForm,\n AcroFormChoiceField,\n AcroFormListBox,\n AcroFormComboBox,\n AcroFormEditBox,\n AcroFormButton,\n AcroFormPushButton,\n AcroFormRadioButton,\n AcroFormCheckBox,\n AcroFormTextField,\n AcroFormPasswordField,\n AcroFormAppearance\n};\n","function toLookup(arr) {\n return arr.reduce(function(lookup, name, index) {\n lookup[name] = index;\n\n return lookup;\n }, {});\n}\n\nvar fontStyleOrder = {\n italic: [\"italic\", \"oblique\", \"normal\"],\n oblique: [\"oblique\", \"italic\", \"normal\"],\n normal: [\"normal\", \"oblique\", \"italic\"]\n};\n\nvar fontStretchOrder = [\n \"ultra-condensed\",\n \"extra-condensed\",\n \"condensed\",\n \"semi-condensed\",\n \"normal\",\n \"semi-expanded\",\n \"expanded\",\n \"extra-expanded\",\n \"ultra-expanded\"\n];\n\n// For a given font-stretch value, we need to know where to start our search\n// from in the fontStretchOrder list.\nvar fontStretchLookup = toLookup(fontStretchOrder);\n\nvar fontWeights = [100, 200, 300, 400, 500, 600, 700, 800, 900];\nvar fontWeightsLookup = toLookup(fontWeights);\n\nfunction normalizeFontStretch(stretch) {\n stretch = stretch || \"normal\";\n\n return typeof fontStretchLookup[stretch] === \"number\" ? stretch : \"normal\";\n}\n\nfunction normalizeFontStyle(style) {\n style = style || \"normal\";\n\n return fontStyleOrder[style] ? style : \"normal\";\n}\n\nfunction normalizeFontWeight(weight) {\n if (!weight) {\n return 400;\n }\n\n if (typeof weight === \"number\") {\n // Ignore values which aren't valid font-weights.\n return weight >= 100 && weight <= 900 && weight % 100 === 0 ? weight : 400;\n }\n\n if (/^\\d00$/.test(weight)) {\n return parseInt(weight);\n }\n\n switch (weight) {\n case \"bold\":\n return 700;\n\n case \"normal\":\n default:\n return 400;\n }\n}\n\nexport function normalizeFontFace(fontFace) {\n var family = fontFace.family.replace(/\"|'/g, \"\").toLowerCase();\n\n var style = normalizeFontStyle(fontFace.style);\n var weight = normalizeFontWeight(fontFace.weight);\n var stretch = normalizeFontStretch(fontFace.stretch);\n\n return {\n family: family,\n style: style,\n weight: weight,\n stretch: stretch,\n src: fontFace.src || [],\n\n // The ref property maps this font-face to the font\n // added by the .addFont() method.\n ref: fontFace.ref || {\n name: family,\n style: [stretch, style, weight].join(\" \")\n }\n };\n}\n\n/**\n * Turns a list of font-faces into a map, for easier lookup when resolving\n * fonts.\n * @private\n */\nexport function buildFontFaceMap(fontFaces) {\n var map = {};\n\n for (var i = 0; i < fontFaces.length; ++i) {\n var normalized = normalizeFontFace(fontFaces[i]);\n\n var name = normalized.family;\n var stretch = normalized.stretch;\n var style = normalized.style;\n var weight = normalized.weight;\n\n map[name] = map[name] || {};\n\n map[name][stretch] = map[name][stretch] || {};\n map[name][stretch][style] = map[name][stretch][style] || {};\n map[name][stretch][style][weight] = normalized;\n }\n\n return map;\n}\n\n/**\n * Searches a map of stretches, weights, etc. in the given direction and\n * then, if no match has been found, in the opposite directions.\n *\n * @param {Object.} matchingSet A map of the various font variations.\n * @param {any[]} order The order of the different variations\n * @param {number} pivot The starting point of the search in the order list.\n * @param {number} dir The initial direction of the search (desc = -1, asc = 1)\n * @private\n */\n\nfunction searchFromPivot(matchingSet, order, pivot, dir) {\n var i;\n\n for (i = pivot; i >= 0 && i < order.length; i += dir) {\n if (matchingSet[order[i]]) {\n return matchingSet[order[i]];\n }\n }\n\n for (i = pivot; i >= 0 && i < order.length; i -= dir) {\n if (matchingSet[order[i]]) {\n return matchingSet[order[i]];\n }\n }\n}\n\nfunction resolveFontStretch(stretch, matchingSet) {\n if (matchingSet[stretch]) {\n return matchingSet[stretch];\n }\n\n var pivot = fontStretchLookup[stretch];\n\n // If the font-stretch value is normal or more condensed, we want to\n // start with a descending search, otherwise we should do ascending.\n var dir = pivot <= fontStretchLookup[\"normal\"] ? -1 : 1;\n var match = searchFromPivot(matchingSet, fontStretchOrder, pivot, dir);\n\n if (!match) {\n // Since a font-family cannot exist without having at least one stretch value\n // we should never reach this point.\n throw new Error(\n \"Could not find a matching font-stretch value for \" + stretch\n );\n }\n\n return match;\n}\n\nfunction resolveFontStyle(fontStyle, matchingSet) {\n if (matchingSet[fontStyle]) {\n return matchingSet[fontStyle];\n }\n\n var ordering = fontStyleOrder[fontStyle];\n\n for (var i = 0; i < ordering.length; ++i) {\n if (matchingSet[ordering[i]]) {\n return matchingSet[ordering[i]];\n }\n }\n\n // Since a font-family cannot exist without having at least one style value\n // we should never reach this point.\n throw new Error(\"Could not find a matching font-style for \" + fontStyle);\n}\n\nfunction resolveFontWeight(weight, matchingSet) {\n if (matchingSet[weight]) {\n return matchingSet[weight];\n }\n\n if (weight === 400 && matchingSet[500]) {\n return matchingSet[500];\n }\n\n if (weight === 500 && matchingSet[400]) {\n return matchingSet[400];\n }\n\n var pivot = fontWeightsLookup[weight];\n\n // If the font-stretch value is normal or more condensed, we want to\n // start with a descending search, otherwise we should do ascending.\n var dir = weight < 400 ? -1 : 1;\n var match = searchFromPivot(matchingSet, fontWeights, pivot, dir);\n\n if (!match) {\n // Since a font-family cannot exist without having at least one stretch value\n // we should never reach this point.\n throw new Error(\n \"Could not find a matching font-weight for value \" + weight\n );\n }\n\n return match;\n}\n\nvar defaultGenericFontFamilies = {\n \"sans-serif\": \"helvetica\",\n fixed: \"courier\",\n monospace: \"courier\",\n terminal: \"courier\",\n cursive: \"times\",\n fantasy: \"times\",\n serif: \"times\"\n};\n\nvar systemFonts = {\n caption: \"times\",\n icon: \"times\",\n menu: \"times\",\n \"message-box\": \"times\",\n \"small-caption\": \"times\",\n \"status-bar\": \"times\"\n};\n\nfunction ruleToString(rule) {\n return [rule.stretch, rule.style, rule.weight, rule.family].join(\" \");\n}\n\nexport function resolveFontFace(fontFaceMap, rules, opts) {\n opts = opts || {};\n\n var defaultFontFamily = opts.defaultFontFamily || \"times\";\n var genericFontFamilies = Object.assign(\n {},\n defaultGenericFontFamilies,\n opts.genericFontFamilies || {}\n );\n\n var rule = null;\n var matches = null;\n\n for (var i = 0; i < rules.length; ++i) {\n rule = normalizeFontFace(rules[i]);\n\n if (genericFontFamilies[rule.family]) {\n rule.family = genericFontFamilies[rule.family];\n }\n\n if (fontFaceMap.hasOwnProperty(rule.family)) {\n matches = fontFaceMap[rule.family];\n\n break;\n }\n }\n\n // Always fallback to a known font family.\n matches = matches || fontFaceMap[defaultFontFamily];\n\n if (!matches) {\n // At this point we should definitiely have a font family, but if we\n // don't there is something wrong with our configuration\n throw new Error(\n \"Could not find a font-family for the rule '\" +\n ruleToString(rule) +\n \"' and default family '\" +\n defaultFontFamily +\n \"'.\"\n );\n }\n\n matches = resolveFontStretch(rule.stretch, matches);\n matches = resolveFontStyle(rule.style, matches);\n matches = resolveFontWeight(rule.weight, matches);\n\n if (!matches) {\n // We should've fount\n throw new Error(\n \"Failed to resolve a font for the rule '\" + ruleToString(rule) + \"'.\"\n );\n }\n\n return matches;\n}\n\n/**\n * Builds a style id for use with the addFont() method.\n * @param {FontFace} font\n * @private\n */\nexport function toStyleName(font) {\n return [font.weight, font.style, font.stretch].join(\" \");\n}\n\nfunction eatWhiteSpace(input) {\n return input.trimLeft();\n}\n\nfunction parseQuotedFontFamily(input, quote) {\n var index = 0;\n\n while (index < input.length) {\n var current = input.charAt(index);\n\n if (current === quote) {\n return [input.substring(0, index), input.substring(index + 1)];\n }\n\n index += 1;\n }\n\n // Unexpected end of input\n return null;\n}\n\nfunction parseNonQuotedFontFamily(input) {\n // It implements part of the identifier parser here: https://www.w3.org/TR/CSS21/syndata.html#value-def-identifier\n //\n // NOTE: This parser pretty much ignores escaped identifiers and that there is a thing called unicode.\n //\n // Breakdown of regexp:\n // -[a-z_] - when identifier starts with a hyphen, you're not allowed to have another hyphen or a digit\n // [a-z_] - allow a-z and underscore at beginning of input\n // [a-z0-9_-]* - after that, anything goes\n var match = input.match(/^(-[a-z_]|[a-z_])[a-z0-9_-]*/i);\n\n // non quoted value contains illegal characters\n if (match === null) {\n return null;\n }\n\n return [match[0], input.substring(match[0].length)];\n}\n\nvar defaultFont = [\"times\"];\n\nexport function parseFontFamily(input) {\n var result = [];\n var ch, parsed;\n var remaining = input.trim();\n\n if (remaining === \"\") {\n return defaultFont;\n }\n\n if (remaining in systemFonts) {\n return [systemFonts[remaining]];\n }\n\n while (remaining !== \"\") {\n parsed = null;\n remaining = eatWhiteSpace(remaining);\n ch = remaining.charAt(0);\n\n switch (ch) {\n case '\"':\n case \"'\":\n parsed = parseQuotedFontFamily(remaining.substring(1), ch);\n break;\n\n default:\n parsed = parseNonQuotedFontFamily(remaining);\n break;\n }\n\n if (parsed === null) {\n return defaultFont;\n }\n\n result.push(parsed[0]);\n\n remaining = eatWhiteSpace(parsed[1]);\n\n // We expect end of input or a comma separator here\n if (remaining !== \"\" && remaining.charAt(0) !== \",\") {\n return defaultFont;\n }\n\n remaining = remaining.replace(/^,/, \"\");\n }\n\n return result;\n}\n","/** @license\n * jsPDF addImage plugin\n * Copyright (c) 2012 Jason Siefken, https://github.com/siefkenj/\n * 2013 Chris Dowling, https://github.com/gingerchris\n * 2013 Trinh Ho, https://github.com/ineedfat\n * 2013 Edwin Alejandro Perez, https://github.com/eaparango\n * 2013 Norah Smith, https://github.com/burnburnrocket\n * 2014 Diego Casorran, https://github.com/diegocr\n * 2014 James Robb, https://github.com/jamesbrobb\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n/**\n * @name addImage\n * @module\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { atob, btoa } from \"../libs/AtobBtoa.js\";\n\n(function(jsPDFAPI) {\n \"use strict\";\n\n var namespace = \"addImage_\";\n jsPDFAPI.__addimage__ = {};\n\n var UNKNOWN = \"UNKNOWN\";\n\n // Heuristic selection of a good batch for large array .apply. Not limiting make the call overflow.\n // With too small batch iteration will be slow as more calls are made,\n // higher values cause larger and slower garbage collection.\n var ARRAY_APPLY_BATCH = 8192;\n\n var imageFileTypeHeaders = {\n PNG: [[0x89, 0x50, 0x4e, 0x47]],\n TIFF: [\n [0x4d, 0x4d, 0x00, 0x2a], //Motorola\n [0x49, 0x49, 0x2a, 0x00] //Intel\n ],\n JPEG: [\n [\n 0xff,\n 0xd8,\n 0xff,\n 0xe0,\n undefined,\n undefined,\n 0x4a,\n 0x46,\n 0x49,\n 0x46,\n 0x00\n ], //JFIF\n [\n 0xff,\n 0xd8,\n 0xff,\n 0xe1,\n undefined,\n undefined,\n 0x45,\n 0x78,\n 0x69,\n 0x66,\n 0x00,\n 0x00\n ], //Exif\n [0xff, 0xd8, 0xff, 0xdb], //JPEG RAW\n [0xff, 0xd8, 0xff, 0xee] //EXIF RAW\n ],\n JPEG2000: [[0x00, 0x00, 0x00, 0x0c, 0x6a, 0x50, 0x20, 0x20]],\n GIF87a: [[0x47, 0x49, 0x46, 0x38, 0x37, 0x61]],\n GIF89a: [[0x47, 0x49, 0x46, 0x38, 0x39, 0x61]],\n WEBP: [\n [\n 0x52,\n 0x49,\n 0x46,\n 0x46,\n undefined,\n undefined,\n undefined,\n undefined,\n 0x57,\n 0x45,\n 0x42,\n 0x50\n ]\n ],\n BMP: [\n [0x42, 0x4d], //BM - Windows 3.1x, 95, NT, ... etc.\n [0x42, 0x41], //BA - OS/2 struct bitmap array\n [0x43, 0x49], //CI - OS/2 struct color icon\n [0x43, 0x50], //CP - OS/2 const color pointer\n [0x49, 0x43], //IC - OS/2 struct icon\n [0x50, 0x54] //PT - OS/2 pointer\n ]\n };\n\n /**\n * Recognize filetype of Image by magic-bytes\n *\n * https://en.wikipedia.org/wiki/List_of_file_signatures\n *\n * @name getImageFileTypeByImageData\n * @public\n * @function\n * @param {string|arraybuffer} imageData imageData as binary String or arraybuffer\n * @param {string} format format of file if filetype-recognition fails, e.g. 'JPEG'\n *\n * @returns {string} filetype of Image\n */\n var getImageFileTypeByImageData = (jsPDFAPI.__addimage__.getImageFileTypeByImageData = function(\n imageData,\n fallbackFormat\n ) {\n fallbackFormat = fallbackFormat || UNKNOWN;\n var i;\n var j;\n var result = UNKNOWN;\n var headerSchemata;\n var compareResult;\n var fileType;\n\n if (\n fallbackFormat === \"RGBA\" ||\n (imageData.data !== undefined &&\n imageData.data instanceof Uint8ClampedArray &&\n \"height\" in imageData &&\n \"width\" in imageData)\n ) {\n return \"RGBA\";\n }\n\n if (isArrayBufferView(imageData)) {\n for (fileType in imageFileTypeHeaders) {\n headerSchemata = imageFileTypeHeaders[fileType];\n for (i = 0; i < headerSchemata.length; i += 1) {\n compareResult = true;\n for (j = 0; j < headerSchemata[i].length; j += 1) {\n if (headerSchemata[i][j] === undefined) {\n continue;\n }\n if (headerSchemata[i][j] !== imageData[j]) {\n compareResult = false;\n break;\n }\n }\n if (compareResult === true) {\n result = fileType;\n break;\n }\n }\n }\n } else {\n for (fileType in imageFileTypeHeaders) {\n headerSchemata = imageFileTypeHeaders[fileType];\n for (i = 0; i < headerSchemata.length; i += 1) {\n compareResult = true;\n for (j = 0; j < headerSchemata[i].length; j += 1) {\n if (headerSchemata[i][j] === undefined) {\n continue;\n }\n if (headerSchemata[i][j] !== imageData.charCodeAt(j)) {\n compareResult = false;\n break;\n }\n }\n if (compareResult === true) {\n result = fileType;\n break;\n }\n }\n }\n }\n\n if (result === UNKNOWN && fallbackFormat !== UNKNOWN) {\n result = fallbackFormat;\n }\n return result;\n });\n\n // Image functionality ported from pdf.js\n var putImage = function(image) {\n var out = this.internal.write;\n var putStream = this.internal.putStream;\n var getFilters = this.internal.getFilters;\n\n var filter = getFilters();\n while (filter.indexOf(\"FlateEncode\") !== -1) {\n filter.splice(filter.indexOf(\"FlateEncode\"), 1);\n }\n\n image.objectId = this.internal.newObject();\n\n var additionalKeyValues = [];\n additionalKeyValues.push({ key: \"Type\", value: \"/XObject\" });\n additionalKeyValues.push({ key: \"Subtype\", value: \"/Image\" });\n additionalKeyValues.push({ key: \"Width\", value: image.width });\n additionalKeyValues.push({ key: \"Height\", value: image.height });\n\n if (image.colorSpace === color_spaces.INDEXED) {\n additionalKeyValues.push({\n key: \"ColorSpace\",\n value:\n \"[/Indexed /DeviceRGB \" +\n // if an indexed png defines more than one colour with transparency, we've created a sMask\n (image.palette.length / 3 - 1) +\n \" \" +\n (\"sMask\" in image && typeof image.sMask !== \"undefined\"\n ? image.objectId + 2\n : image.objectId + 1) +\n \" 0 R]\"\n });\n } else {\n additionalKeyValues.push({\n key: \"ColorSpace\",\n value: \"/\" + image.colorSpace\n });\n if (image.colorSpace === color_spaces.DEVICE_CMYK) {\n additionalKeyValues.push({ key: \"Decode\", value: \"[1 0 1 0 1 0 1 0]\" });\n }\n }\n additionalKeyValues.push({\n key: \"BitsPerComponent\",\n value: image.bitsPerComponent\n });\n if (\n \"decodeParameters\" in image &&\n typeof image.decodeParameters !== \"undefined\"\n ) {\n additionalKeyValues.push({\n key: \"DecodeParms\",\n value: \"<<\" + image.decodeParameters + \">>\"\n });\n }\n if (\"transparency\" in image && Array.isArray(image.transparency)) {\n var transparency = \"\",\n i = 0,\n len = image.transparency.length;\n for (; i < len; i++)\n transparency +=\n image.transparency[i] + \" \" + image.transparency[i] + \" \";\n\n additionalKeyValues.push({\n key: \"Mask\",\n value: \"[\" + transparency + \"]\"\n });\n }\n if (typeof image.sMask !== \"undefined\") {\n additionalKeyValues.push({\n key: \"SMask\",\n value: image.objectId + 1 + \" 0 R\"\n });\n }\n\n var alreadyAppliedFilters =\n typeof image.filter !== \"undefined\" ? [\"/\" + image.filter] : undefined;\n\n putStream({\n data: image.data,\n additionalKeyValues: additionalKeyValues,\n alreadyAppliedFilters: alreadyAppliedFilters,\n objectId: image.objectId\n });\n\n out(\"endobj\");\n\n // Soft mask\n if (\"sMask\" in image && typeof image.sMask !== \"undefined\") {\n var decodeParameters =\n \"/Predictor \" +\n image.predictor +\n \" /Colors 1 /BitsPerComponent \" +\n image.bitsPerComponent +\n \" /Columns \" +\n image.width;\n var sMask = {\n width: image.width,\n height: image.height,\n colorSpace: \"DeviceGray\",\n bitsPerComponent: image.bitsPerComponent,\n decodeParameters: decodeParameters,\n data: image.sMask\n };\n if (\"filter\" in image) {\n sMask.filter = image.filter;\n }\n putImage.call(this, sMask);\n }\n\n //Palette\n if (image.colorSpace === color_spaces.INDEXED) {\n var objId = this.internal.newObject();\n //out('<< /Filter / ' + img['f'] +' /Length ' + img['pal'].length + '>>');\n //putStream(zlib.compress(img['pal']));\n putStream({\n data: arrayBufferToBinaryString(new Uint8Array(image.palette)),\n objectId: objId\n });\n out(\"endobj\");\n }\n };\n var putResourcesCallback = function() {\n var images = this.internal.collections[namespace + \"images\"];\n for (var i in images) {\n putImage.call(this, images[i]);\n }\n };\n var putXObjectsDictCallback = function() {\n var images = this.internal.collections[namespace + \"images\"],\n out = this.internal.write,\n image;\n for (var i in images) {\n image = images[i];\n out(\"/I\" + image.index, image.objectId, \"0\", \"R\");\n }\n };\n\n var checkCompressValue = function(value) {\n if (value && typeof value === \"string\") value = value.toUpperCase();\n return value in jsPDFAPI.image_compression ? value : image_compression.NONE;\n };\n\n var initialize = function() {\n if (!this.internal.collections[namespace + \"images\"]) {\n this.internal.collections[namespace + \"images\"] = {};\n this.internal.events.subscribe(\"putResources\", putResourcesCallback);\n this.internal.events.subscribe(\"putXobjectDict\", putXObjectsDictCallback);\n }\n };\n\n var getImages = function() {\n var images = this.internal.collections[namespace + \"images\"];\n initialize.call(this);\n return images;\n };\n var getImageIndex = function() {\n return Object.keys(this.internal.collections[namespace + \"images\"]).length;\n };\n var notDefined = function(value) {\n return typeof value === \"undefined\" || value === null || value.length === 0;\n };\n var generateAliasFromImageData = function(imageData) {\n if (typeof imageData === \"string\" || isArrayBufferView(imageData)) {\n return sHashCode(imageData);\n } else if (isArrayBufferView(imageData.data)) {\n return sHashCode(imageData.data);\n }\n\n return null;\n };\n\n var isImageTypeSupported = function(type) {\n return typeof jsPDFAPI[\"process\" + type.toUpperCase()] === \"function\";\n };\n\n var isDOMElement = function(object) {\n return typeof object === \"object\" && object.nodeType === 1;\n };\n\n var getImageDataFromElement = function(element, format) {\n //if element is an image which uses data url definition, just return the dataurl\n if (element.nodeName === \"IMG\" && element.hasAttribute(\"src\")) {\n var src = \"\" + element.getAttribute(\"src\");\n\n //is base64 encoded dataUrl, directly process it\n if (src.indexOf(\"data:image/\") === 0) {\n return atob(\n unescape(src)\n .split(\"base64,\")\n .pop()\n );\n }\n\n //it is probably an url, try to load it\n var tmpImageData = jsPDFAPI.loadFile(src, true);\n if (tmpImageData !== undefined) {\n return tmpImageData;\n }\n }\n\n if (element.nodeName === \"CANVAS\") {\n if (element.width === 0 || element.height === 0) {\n throw new Error(\n \"Given canvas must have data. Canvas width: \" +\n element.width +\n \", height: \" +\n element.height\n );\n }\n var mimeType;\n switch (format) {\n case \"PNG\":\n mimeType = \"image/png\";\n break;\n case \"WEBP\":\n mimeType = \"image/webp\";\n break;\n case \"JPEG\":\n case \"JPG\":\n default:\n mimeType = \"image/jpeg\";\n break;\n }\n return atob(\n element\n .toDataURL(mimeType, 1.0)\n .split(\"base64,\")\n .pop()\n );\n }\n };\n\n var checkImagesForAlias = function(alias) {\n var images = this.internal.collections[namespace + \"images\"];\n if (images) {\n for (var e in images) {\n if (alias === images[e].alias) {\n return images[e];\n }\n }\n }\n };\n\n var determineWidthAndHeight = function(width, height, image) {\n if (!width && !height) {\n width = -96;\n height = -96;\n }\n if (width < 0) {\n width = (-1 * image.width * 72) / width / this.internal.scaleFactor;\n }\n if (height < 0) {\n height = (-1 * image.height * 72) / height / this.internal.scaleFactor;\n }\n if (width === 0) {\n width = (height * image.width) / image.height;\n }\n if (height === 0) {\n height = (width * image.height) / image.width;\n }\n\n return [width, height];\n };\n\n var writeImageToPDF = function(x, y, width, height, image, rotation) {\n var dims = determineWidthAndHeight.call(this, width, height, image),\n coord = this.internal.getCoordinateString,\n vcoord = this.internal.getVerticalCoordinateString;\n\n var images = getImages.call(this);\n\n width = dims[0];\n height = dims[1];\n images[image.index] = image;\n\n if (rotation) {\n rotation *= Math.PI / 180;\n var c = Math.cos(rotation);\n var s = Math.sin(rotation);\n //like in pdf Reference do it 4 digits instead of 2\n var f4 = function(number) {\n return number.toFixed(4);\n };\n var rotationTransformationMatrix = [\n f4(c),\n f4(s),\n f4(s * -1),\n f4(c),\n 0,\n 0,\n \"cm\"\n ];\n }\n this.internal.write(\"q\"); //Save graphics state\n if (rotation) {\n this.internal.write(\n [1, \"0\", \"0\", 1, coord(x), vcoord(y + height), \"cm\"].join(\" \")\n ); //Translate\n this.internal.write(rotationTransformationMatrix.join(\" \")); //Rotate\n this.internal.write(\n [coord(width), \"0\", \"0\", coord(height), \"0\", \"0\", \"cm\"].join(\" \")\n ); //Scale\n } else {\n this.internal.write(\n [\n coord(width),\n \"0\",\n \"0\",\n coord(height),\n coord(x),\n vcoord(y + height),\n \"cm\"\n ].join(\" \")\n ); //Translate and Scale\n }\n\n if (this.isAdvancedAPI()) {\n // draw image bottom up when in \"advanced\" API mode\n this.internal.write([1, 0, 0, -1, 0, 0, \"cm\"].join(\" \"));\n }\n\n this.internal.write(\"/I\" + image.index + \" Do\"); //Paint Image\n this.internal.write(\"Q\"); //Restore graphics state\n };\n\n /**\n * COLOR SPACES\n */\n var color_spaces = (jsPDFAPI.color_spaces = {\n DEVICE_RGB: \"DeviceRGB\",\n DEVICE_GRAY: \"DeviceGray\",\n DEVICE_CMYK: \"DeviceCMYK\",\n CAL_GREY: \"CalGray\",\n CAL_RGB: \"CalRGB\",\n LAB: \"Lab\",\n ICC_BASED: \"ICCBased\",\n INDEXED: \"Indexed\",\n PATTERN: \"Pattern\",\n SEPARATION: \"Separation\",\n DEVICE_N: \"DeviceN\"\n });\n\n /**\n * DECODE METHODS\n */\n jsPDFAPI.decode = {\n DCT_DECODE: \"DCTDecode\",\n FLATE_DECODE: \"FlateDecode\",\n LZW_DECODE: \"LZWDecode\",\n JPX_DECODE: \"JPXDecode\",\n JBIG2_DECODE: \"JBIG2Decode\",\n ASCII85_DECODE: \"ASCII85Decode\",\n ASCII_HEX_DECODE: \"ASCIIHexDecode\",\n RUN_LENGTH_DECODE: \"RunLengthDecode\",\n CCITT_FAX_DECODE: \"CCITTFaxDecode\"\n };\n\n /**\n * IMAGE COMPRESSION TYPES\n */\n var image_compression = (jsPDFAPI.image_compression = {\n NONE: \"NONE\",\n FAST: \"FAST\",\n MEDIUM: \"MEDIUM\",\n SLOW: \"SLOW\"\n });\n\n /**\n * @name sHashCode\n * @function\n * @param {string} data\n * @returns {string}\n */\n var sHashCode = (jsPDFAPI.__addimage__.sHashCode = function(data) {\n var hash = 0,\n i,\n len;\n\n if (typeof data === \"string\") {\n len = data.length;\n for (i = 0; i < len; i++) {\n hash = (hash << 5) - hash + data.charCodeAt(i);\n hash |= 0; // Convert to 32bit integer\n }\n } else if (isArrayBufferView(data)) {\n len = data.byteLength / 2;\n for (i = 0; i < len; i++) {\n hash = (hash << 5) - hash + data[i];\n hash |= 0; // Convert to 32bit integer\n }\n }\n return hash;\n });\n\n /**\n * Validates if given String is a valid Base64-String\n *\n * @name validateStringAsBase64\n * @public\n * @function\n * @param {String} possible Base64-String\n *\n * @returns {boolean}\n */\n var validateStringAsBase64 = (jsPDFAPI.__addimage__.validateStringAsBase64 = function(\n possibleBase64String\n ) {\n possibleBase64String = possibleBase64String || \"\";\n possibleBase64String.toString().trim();\n\n var result = true;\n\n if (possibleBase64String.length === 0) {\n result = false;\n }\n\n if (possibleBase64String.length % 4 !== 0) {\n result = false;\n }\n\n if (\n /^[A-Za-z0-9+/]+$/.test(\n possibleBase64String.substr(0, possibleBase64String.length - 2)\n ) === false\n ) {\n result = false;\n }\n\n if (\n /^[A-Za-z0-9/][A-Za-z0-9+/]|[A-Za-z0-9+/]=|==$/.test(\n possibleBase64String.substr(-2)\n ) === false\n ) {\n result = false;\n }\n return result;\n });\n\n /**\n * Strips out and returns info from a valid base64 data URI\n *\n * @name extractImageFromDataUrl\n * @function\n * @param {string} dataUrl a valid data URI of format 'data:[][;base64],'\n * @returns {Array}an Array containing the following\n * [0] the complete data URI\n * [1] \n * [2] format - the second part of the mime-type i.e 'png' in 'image/png'\n * [4] \n */\n var extractImageFromDataUrl = (jsPDFAPI.__addimage__.extractImageFromDataUrl = function(\n dataUrl\n ) {\n dataUrl = dataUrl || \"\";\n var dataUrlParts = dataUrl.split(\"base64,\");\n var result = null;\n\n if (dataUrlParts.length === 2) {\n var extractedInfo = /^data:(\\w*\\/\\w*);*(charset=(?!charset=)[\\w=-]*)*;*$/.exec(\n dataUrlParts[0]\n );\n if (Array.isArray(extractedInfo)) {\n result = {\n mimeType: extractedInfo[1],\n charset: extractedInfo[2],\n data: dataUrlParts[1]\n };\n }\n }\n return result;\n });\n\n /**\n * Check to see if ArrayBuffer is supported\n *\n * @name supportsArrayBuffer\n * @function\n * @returns {boolean}\n */\n var supportsArrayBuffer = (jsPDFAPI.__addimage__.supportsArrayBuffer = function() {\n return (\n typeof ArrayBuffer !== \"undefined\" && typeof Uint8Array !== \"undefined\"\n );\n });\n\n /**\n * Tests supplied object to determine if ArrayBuffer\n *\n * @name isArrayBuffer\n * @function\n * @param {Object} object an Object\n *\n * @returns {boolean}\n */\n jsPDFAPI.__addimage__.isArrayBuffer = function(object) {\n return supportsArrayBuffer() && object instanceof ArrayBuffer;\n };\n\n /**\n * Tests supplied object to determine if it implements the ArrayBufferView (TypedArray) interface\n *\n * @name isArrayBufferView\n * @function\n * @param {Object} object an Object\n * @returns {boolean}\n */\n var isArrayBufferView = (jsPDFAPI.__addimage__.isArrayBufferView = function(\n object\n ) {\n return (\n supportsArrayBuffer() &&\n typeof Uint32Array !== \"undefined\" &&\n (object instanceof Int8Array ||\n object instanceof Uint8Array ||\n (typeof Uint8ClampedArray !== \"undefined\" &&\n object instanceof Uint8ClampedArray) ||\n object instanceof Int16Array ||\n object instanceof Uint16Array ||\n object instanceof Int32Array ||\n object instanceof Uint32Array ||\n object instanceof Float32Array ||\n object instanceof Float64Array)\n );\n });\n\n /**\n * Convert Binary String to ArrayBuffer\n *\n * @name binaryStringToUint8Array\n * @public\n * @function\n * @param {string} BinaryString with ImageData\n * @returns {Uint8Array}\n */\n var binaryStringToUint8Array = (jsPDFAPI.__addimage__.binaryStringToUint8Array = function(\n binary_string\n ) {\n var len = binary_string.length;\n var bytes = new Uint8Array(len);\n for (var i = 0; i < len; i++) {\n bytes[i] = binary_string.charCodeAt(i);\n }\n return bytes;\n });\n\n /**\n * Convert the Buffer to a Binary String\n *\n * @name arrayBufferToBinaryString\n * @public\n * @function\n * @param {ArrayBuffer|ArrayBufferView} ArrayBuffer buffer or bufferView with ImageData\n *\n * @returns {String}\n */\n var arrayBufferToBinaryString = (jsPDFAPI.__addimage__.arrayBufferToBinaryString = function(\n buffer\n ) {\n var out = \"\";\n // There are calls with both ArrayBuffer and already converted Uint8Array or other BufferView.\n // Do not copy the array if input is already an array.\n var buf = isArrayBufferView(buffer) ? buffer : new Uint8Array(buffer);\n for (var i = 0; i < buf.length; i += ARRAY_APPLY_BATCH) {\n // Limit the amount of characters being parsed to prevent overflow.\n // Note that while TextDecoder would be faster, it does not have the same\n // functionality as fromCharCode with any provided encodings as of 3/2021.\n out += String.fromCharCode.apply(\n null,\n buf.subarray(i, i + ARRAY_APPLY_BATCH)\n );\n }\n return out;\n });\n\n /**\n * Possible parameter for addImage, an RGBA buffer with size.\n *\n * @typedef {Object} RGBAData\n * @property {Uint8ClampedArray} data - Single dimensional array of RGBA values. For example from canvas getImageData.\n * @property {number} width - Image width as the data does not carry this information in itself.\n * @property {number} height - Image height as the data does not carry this information in itself.\n */\n\n /**\n * Adds an Image to the PDF.\n *\n * @name addImage\n * @public\n * @function\n * @param {string|HTMLImageElement|HTMLCanvasElement|Uint8Array|RGBAData} imageData imageData as base64 encoded DataUrl or Image-HTMLElement or Canvas-HTMLElement or object containing RGBA array (like output from canvas.getImageData).\n * @param {string} format format of file if filetype-recognition fails or in case of a Canvas-Element needs to be specified (default for Canvas is JPEG), e.g. 'JPEG', 'PNG', 'WEBP'\n * @param {number} x x Coordinate (in units declared at inception of PDF document) against left edge of the page\n * @param {number} y y Coordinate (in units declared at inception of PDF document) against upper edge of the page\n * @param {number} width width of the image (in units declared at inception of PDF document)\n * @param {number} height height of the Image (in units declared at inception of PDF document)\n * @param {string} alias alias of the image (if used multiple times)\n * @param {string} compression compression of the generated JPEG, can have the values 'NONE', 'FAST', 'MEDIUM' and 'SLOW'\n * @param {number} rotation rotation of the image in degrees (0-359)\n *\n * @returns jsPDF\n */\n jsPDFAPI.addImage = function() {\n var imageData, format, x, y, w, h, alias, compression, rotation;\n\n imageData = arguments[0];\n if (typeof arguments[1] === \"number\") {\n format = UNKNOWN;\n x = arguments[1];\n y = arguments[2];\n w = arguments[3];\n h = arguments[4];\n alias = arguments[5];\n compression = arguments[6];\n rotation = arguments[7];\n } else {\n format = arguments[1];\n x = arguments[2];\n y = arguments[3];\n w = arguments[4];\n h = arguments[5];\n alias = arguments[6];\n compression = arguments[7];\n rotation = arguments[8];\n }\n\n if (\n typeof imageData === \"object\" &&\n !isDOMElement(imageData) &&\n \"imageData\" in imageData\n ) {\n var options = imageData;\n\n imageData = options.imageData;\n format = options.format || format || UNKNOWN;\n x = options.x || x || 0;\n y = options.y || y || 0;\n w = options.w || options.width || w;\n h = options.h || options.height || h;\n alias = options.alias || alias;\n compression = options.compression || compression;\n rotation = options.rotation || options.angle || rotation;\n }\n\n //If compression is not explicitly set, determine if we should use compression\n var filter = this.internal.getFilters();\n if (compression === undefined && filter.indexOf(\"FlateEncode\") !== -1) {\n compression = \"SLOW\";\n }\n\n if (isNaN(x) || isNaN(y)) {\n throw new Error(\"Invalid coordinates passed to jsPDF.addImage\");\n }\n\n initialize.call(this);\n\n var image = processImageData.call(\n this,\n imageData,\n format,\n alias,\n compression\n );\n\n writeImageToPDF.call(this, x, y, w, h, image, rotation);\n\n return this;\n };\n\n var processImageData = function(imageData, format, alias, compression) {\n var result, dataAsBinaryString;\n\n if (\n typeof imageData === \"string\" &&\n getImageFileTypeByImageData(imageData) === UNKNOWN\n ) {\n imageData = unescape(imageData);\n var tmpImageData = convertBase64ToBinaryString(imageData, false);\n\n if (tmpImageData !== \"\") {\n imageData = tmpImageData;\n } else {\n tmpImageData = jsPDFAPI.loadFile(imageData, true);\n if (tmpImageData !== undefined) {\n imageData = tmpImageData;\n }\n }\n }\n\n if (isDOMElement(imageData)) {\n imageData = getImageDataFromElement(imageData, format);\n }\n\n format = getImageFileTypeByImageData(imageData, format);\n if (!isImageTypeSupported(format)) {\n throw new Error(\n \"addImage does not support files of type '\" +\n format +\n \"', please ensure that a plugin for '\" +\n format +\n \"' support is added.\"\n );\n }\n\n // now do the heavy lifting\n\n if (notDefined(alias)) {\n alias = generateAliasFromImageData(imageData);\n }\n result = checkImagesForAlias.call(this, alias);\n\n if (!result) {\n if (supportsArrayBuffer()) {\n // no need to convert if imageData is already uint8array\n if (!(imageData instanceof Uint8Array) && format !== \"RGBA\") {\n dataAsBinaryString = imageData;\n imageData = binaryStringToUint8Array(imageData);\n }\n }\n\n result = this[\"process\" + format.toUpperCase()](\n imageData,\n getImageIndex.call(this),\n alias,\n checkCompressValue(compression),\n dataAsBinaryString\n );\n }\n\n if (!result) {\n throw new Error(\"An unknown error occurred whilst processing the image.\");\n }\n return result;\n };\n\n /**\n * @name convertBase64ToBinaryString\n * @function\n * @param {string} stringData\n * @returns {string} binary string\n */\n var convertBase64ToBinaryString = (jsPDFAPI.__addimage__.convertBase64ToBinaryString = function(\n stringData,\n throwError\n ) {\n throwError = typeof throwError === \"boolean\" ? throwError : true;\n var base64Info;\n var imageData = \"\";\n var rawData;\n\n if (typeof stringData === \"string\") {\n base64Info = extractImageFromDataUrl(stringData);\n rawData = base64Info !== null ? base64Info.data : stringData;\n\n try {\n imageData = atob(rawData);\n } catch (e) {\n if (throwError) {\n if (!validateStringAsBase64(rawData)) {\n throw new Error(\n \"Supplied Data is not a valid base64-String jsPDF.convertBase64ToBinaryString \"\n );\n } else {\n throw new Error(\n \"atob-Error in jsPDF.convertBase64ToBinaryString \" + e.message\n );\n }\n }\n }\n }\n return imageData;\n });\n\n /**\n * @name getImageProperties\n * @function\n * @param {Object} imageData\n * @returns {Object}\n */\n jsPDFAPI.getImageProperties = function(imageData) {\n var image;\n var tmpImageData = \"\";\n var format;\n\n if (isDOMElement(imageData)) {\n imageData = getImageDataFromElement(imageData);\n }\n\n if (\n typeof imageData === \"string\" &&\n getImageFileTypeByImageData(imageData) === UNKNOWN\n ) {\n tmpImageData = convertBase64ToBinaryString(imageData, false);\n\n if (tmpImageData === \"\") {\n tmpImageData = jsPDFAPI.loadFile(imageData) || \"\";\n }\n imageData = tmpImageData;\n }\n\n format = getImageFileTypeByImageData(imageData);\n if (!isImageTypeSupported(format)) {\n throw new Error(\n \"addImage does not support files of type '\" +\n format +\n \"', please ensure that a plugin for '\" +\n format +\n \"' support is added.\"\n );\n }\n\n if (supportsArrayBuffer() && !(imageData instanceof Uint8Array)) {\n imageData = binaryStringToUint8Array(imageData);\n }\n\n image = this[\"process\" + format.toUpperCase()](imageData);\n\n if (!image) {\n throw new Error(\"An unknown error occurred whilst processing the image\");\n }\n\n image.fileType = format;\n\n return image;\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\n/**\n * jsPDF Annotations PlugIn\n *\n * There are many types of annotations in a PDF document. Annotations are placed\n * on a page at a particular location. They are not 'attached' to an object.\n *
\n * This plugin current supports
\n *
  • Goto Page (set pageNumber and top in options)\n *
  • Goto Name (set name and top in options)\n *
  • Goto URL (set url in options)\n *

    \n * \tThe destination magnification factor can also be specified when goto is a page number or a named destination. (see documentation below)\n * (set magFactor in options). XYZ is the default.\n *

    \n *

    \n * Links, Text, Popup, and FreeText are supported.\n *

    \n *

    \n * Options In PDF spec Not Implemented Yet\n *

  • link border\n *
  • named target\n *
  • page coordinates\n *
  • destination page scaling and layout\n *
  • actions other than URL and GotoPage\n *
  • background / hover actions\n *

    \n * @name annotations\n * @module\n */\n\n/*\n Destination Magnification Factors\n See PDF 1.3 Page 386 for meanings and options\n\n [supported]\n\tXYZ (options; left top zoom)\n\tFit (no options)\n\tFitH (options: top)\n\tFitV (options: left)\n\n\t[not supported]\n\tFitR\n\tFitB\n\tFitBH\n\tFitBV\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n(function(jsPDFAPI) {\n \"use strict\";\n\n var notEmpty = function(obj) {\n if (typeof obj != \"undefined\") {\n if (obj != \"\") {\n return true;\n }\n }\n };\n\n jsPDF.API.events.push([\n \"addPage\",\n function(addPageData) {\n var pageInfo = this.internal.getPageInfo(addPageData.pageNumber);\n pageInfo.pageContext.annotations = [];\n }\n ]);\n\n jsPDFAPI.events.push([\n \"putPage\",\n function(putPageData) {\n var getHorizontalCoordinateString = this.internal.getCoordinateString;\n var getVerticalCoordinateString = this.internal\n .getVerticalCoordinateString;\n var pageInfo = this.internal.getPageInfoByObjId(putPageData.objId);\n var pageAnnos = putPageData.pageContext.annotations;\n\n var anno, rect, line;\n var found = false;\n for (var a = 0; a < pageAnnos.length && !found; a++) {\n anno = pageAnnos[a];\n switch (anno.type) {\n case \"link\":\n if (\n notEmpty(anno.options.url) ||\n notEmpty(anno.options.pageNumber)\n ) {\n found = true;\n }\n break;\n case \"reference\":\n case \"text\":\n case \"freetext\":\n found = true;\n break;\n }\n }\n if (found == false) {\n return;\n }\n\n this.internal.write(\"/Annots [\");\n for (var i = 0; i < pageAnnos.length; i++) {\n anno = pageAnnos[i];\n var escape = this.internal.pdfEscape;\n var encryptor = this.internal.getEncryptor(putPageData.objId);\n\n switch (anno.type) {\n case \"reference\":\n // References to Widget Annotations (for AcroForm Fields)\n this.internal.write(\" \" + anno.object.objId + \" 0 R \");\n break;\n case \"text\":\n // Create a an object for both the text and the popup\n var objText = this.internal.newAdditionalObject();\n var objPopup = this.internal.newAdditionalObject();\n var encryptorText = this.internal.getEncryptor(objText.objId);\n\n var title = anno.title || \"Note\";\n rect =\n \"/Rect [\" +\n getHorizontalCoordinateString(anno.bounds.x) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y + anno.bounds.h) +\n \" \" +\n getHorizontalCoordinateString(anno.bounds.x + anno.bounds.w) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y) +\n \"] \";\n\n line =\n \"<>\";\n objText.content = line;\n\n var parent = objText.objId + \" 0 R\";\n var popoff = 30;\n rect =\n \"/Rect [\" +\n getHorizontalCoordinateString(anno.bounds.x + popoff) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y + anno.bounds.h) +\n \" \" +\n getHorizontalCoordinateString(\n anno.bounds.x + anno.bounds.w + popoff\n ) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y) +\n \"] \";\n line =\n \"<>\";\n objPopup.content = line;\n\n this.internal.write(objText.objId, \"0 R\", objPopup.objId, \"0 R\");\n\n break;\n case \"freetext\":\n rect =\n \"/Rect [\" +\n getHorizontalCoordinateString(anno.bounds.x) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y) +\n \" \" +\n getHorizontalCoordinateString(anno.bounds.x + anno.bounds.w) +\n \" \" +\n getVerticalCoordinateString(anno.bounds.y + anno.bounds.h) +\n \"] \";\n var color = anno.color || \"#000000\";\n line =\n \"<>\";\n this.internal.write(line);\n break;\n case \"link\":\n if (anno.options.name) {\n var loc = this.annotations._nameMap[anno.options.name];\n anno.options.pageNumber = loc.page;\n anno.options.top = loc.y;\n } else {\n if (!anno.options.top) {\n anno.options.top = 0;\n }\n }\n\n rect =\n \"/Rect [\" +\n anno.finalBounds.x +\n \" \" +\n anno.finalBounds.y +\n \" \" +\n anno.finalBounds.w +\n \" \" +\n anno.finalBounds.h +\n \"] \";\n\n line = \"\";\n if (anno.options.url) {\n line =\n \"<>\";\n } else if (anno.options.pageNumber) {\n // first page is 0\n var info = this.internal.getPageInfo(anno.options.pageNumber);\n line =\n \"<>\";\n this.internal.write(line);\n }\n break;\n }\n }\n this.internal.write(\"]\");\n }\n ]);\n\n /**\n * @name createAnnotation\n * @function\n * @param {Object} options\n */\n jsPDFAPI.createAnnotation = function(options) {\n var pageInfo = this.internal.getCurrentPageInfo();\n switch (options.type) {\n case \"link\":\n this.link(\n options.bounds.x,\n options.bounds.y,\n options.bounds.w,\n options.bounds.h,\n options\n );\n break;\n case \"text\":\n case \"freetext\":\n pageInfo.pageContext.annotations.push(options);\n break;\n }\n };\n\n /**\n * Create a link\n *\n * valid options\n *
  • pageNumber or url [required]\n *

    If pageNumber is specified, top and zoom may also be specified

    \n * @name link\n * @function\n * @param {number} x\n * @param {number} y\n * @param {number} w\n * @param {number} h\n * @param {Object} options\n */\n jsPDFAPI.link = function(x, y, w, h, options) {\n var pageInfo = this.internal.getCurrentPageInfo();\n var getHorizontalCoordinateString = this.internal.getCoordinateString;\n var getVerticalCoordinateString = this.internal.getVerticalCoordinateString;\n\n pageInfo.pageContext.annotations.push({\n finalBounds: {\n x: getHorizontalCoordinateString(x),\n y: getVerticalCoordinateString(y),\n w: getHorizontalCoordinateString(x + w),\n h: getVerticalCoordinateString(y + h)\n },\n options: options,\n type: \"link\"\n });\n };\n\n /**\n * Currently only supports single line text.\n * Returns the width of the text/link\n *\n * @name textWithLink\n * @function\n * @param {string} text\n * @param {number} x\n * @param {number} y\n * @param {Object} options\n * @returns {number} width the width of the text/link\n */\n jsPDFAPI.textWithLink = function(text, x, y, options) {\n var totalLineWidth = this.getTextWidth(text);\n var lineHeight = this.internal.getLineHeight() / this.internal.scaleFactor;\n var linkHeight, linkWidth;\n\n // Checking if maxWidth option is passed to determine lineWidth and number of lines for each line\n if (options.maxWidth !== undefined) {\n var { maxWidth } = options;\n linkWidth = maxWidth;\n var numOfLines = this.splitTextToSize(text, linkWidth).length;\n linkHeight = Math.ceil(lineHeight * numOfLines);\n } else {\n linkWidth = totalLineWidth;\n linkHeight = lineHeight;\n }\n\n this.text(text, x, y, options);\n\n //TODO We really need the text baseline height to do this correctly.\n // Or ability to draw text on top, bottom, center, or baseline.\n y += lineHeight * 0.2;\n //handle x position based on the align option\n if (options.align === \"center\") {\n x = x - totalLineWidth / 2; //since starting from center move the x position by half of text width\n }\n if (options.align === \"right\") {\n x = x - totalLineWidth;\n }\n this.link(x, y - lineHeight, linkWidth, linkHeight, options);\n return totalLineWidth;\n };\n\n //TODO move into external library\n /**\n * @name getTextWidth\n * @function\n * @param {string} text\n * @returns {number} txtWidth\n */\n jsPDFAPI.getTextWidth = function(text) {\n var fontSize = this.internal.getFontSize();\n var txtWidth =\n (this.getStringUnitWidth(text) * fontSize) / this.internal.scaleFactor;\n return txtWidth;\n };\n\n return this;\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2017 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF arabic parser PlugIn\n *\n * @name arabic\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * Arabic shape substitutions: char code => (isolated, final, initial, medial).\n * Arabic Substition A\n */\n var arabicSubstitionA = {\n 0x0621: [0xfe80], // ARABIC LETTER HAMZA\n 0x0622: [0xfe81, 0xfe82], // ARABIC LETTER ALEF WITH MADDA ABOVE\n 0x0623: [0xfe83, 0xfe84], // ARABIC LETTER ALEF WITH HAMZA ABOVE\n 0x0624: [0xfe85, 0xfe86], // ARABIC LETTER WAW WITH HAMZA ABOVE\n 0x0625: [0xfe87, 0xfe88], // ARABIC LETTER ALEF WITH HAMZA BELOW\n 0x0626: [0xfe89, 0xfe8a, 0xfe8b, 0xfe8c], // ARABIC LETTER YEH WITH HAMZA ABOVE\n 0x0627: [0xfe8d, 0xfe8e], // ARABIC LETTER ALEF\n 0x0628: [0xfe8f, 0xfe90, 0xfe91, 0xfe92], // ARABIC LETTER BEH\n 0x0629: [0xfe93, 0xfe94], // ARABIC LETTER TEH MARBUTA\n 0x062a: [0xfe95, 0xfe96, 0xfe97, 0xfe98], // ARABIC LETTER TEH\n 0x062b: [0xfe99, 0xfe9a, 0xfe9b, 0xfe9c], // ARABIC LETTER THEH\n 0x062c: [0xfe9d, 0xfe9e, 0xfe9f, 0xfea0], // ARABIC LETTER JEEM\n 0x062d: [0xfea1, 0xfea2, 0xfea3, 0xfea4], // ARABIC LETTER HAH\n 0x062e: [0xfea5, 0xfea6, 0xfea7, 0xfea8], // ARABIC LETTER KHAH\n 0x062f: [0xfea9, 0xfeaa], // ARABIC LETTER DAL\n 0x0630: [0xfeab, 0xfeac], // ARABIC LETTER THAL\n 0x0631: [0xfead, 0xfeae], // ARABIC LETTER REH\n 0x0632: [0xfeaf, 0xfeb0], // ARABIC LETTER ZAIN\n 0x0633: [0xfeb1, 0xfeb2, 0xfeb3, 0xfeb4], // ARABIC LETTER SEEN\n 0x0634: [0xfeb5, 0xfeb6, 0xfeb7, 0xfeb8], // ARABIC LETTER SHEEN\n 0x0635: [0xfeb9, 0xfeba, 0xfebb, 0xfebc], // ARABIC LETTER SAD\n 0x0636: [0xfebd, 0xfebe, 0xfebf, 0xfec0], // ARABIC LETTER DAD\n 0x0637: [0xfec1, 0xfec2, 0xfec3, 0xfec4], // ARABIC LETTER TAH\n 0x0638: [0xfec5, 0xfec6, 0xfec7, 0xfec8], // ARABIC LETTER ZAH\n 0x0639: [0xfec9, 0xfeca, 0xfecb, 0xfecc], // ARABIC LETTER AIN\n 0x063a: [0xfecd, 0xfece, 0xfecf, 0xfed0], // ARABIC LETTER GHAIN\n 0x0641: [0xfed1, 0xfed2, 0xfed3, 0xfed4], // ARABIC LETTER FEH\n 0x0642: [0xfed5, 0xfed6, 0xfed7, 0xfed8], // ARABIC LETTER QAF\n 0x0643: [0xfed9, 0xfeda, 0xfedb, 0xfedc], // ARABIC LETTER KAF\n 0x0644: [0xfedd, 0xfede, 0xfedf, 0xfee0], // ARABIC LETTER LAM\n 0x0645: [0xfee1, 0xfee2, 0xfee3, 0xfee4], // ARABIC LETTER MEEM\n 0x0646: [0xfee5, 0xfee6, 0xfee7, 0xfee8], // ARABIC LETTER NOON\n 0x0647: [0xfee9, 0xfeea, 0xfeeb, 0xfeec], // ARABIC LETTER HEH\n 0x0648: [0xfeed, 0xfeee], // ARABIC LETTER WAW\n 0x0649: [0xfeef, 0xfef0, 64488, 64489], // ARABIC LETTER ALEF MAKSURA\n 0x064a: [0xfef1, 0xfef2, 0xfef3, 0xfef4], // ARABIC LETTER YEH\n 0x0671: [0xfb50, 0xfb51], // ARABIC LETTER ALEF WASLA\n 0x0677: [0xfbdd], // ARABIC LETTER U WITH HAMZA ABOVE\n 0x0679: [0xfb66, 0xfb67, 0xfb68, 0xfb69], // ARABIC LETTER TTEH\n 0x067a: [0xfb5e, 0xfb5f, 0xfb60, 0xfb61], // ARABIC LETTER TTEHEH\n 0x067b: [0xfb52, 0xfb53, 0xfb54, 0xfb55], // ARABIC LETTER BEEH\n 0x067e: [0xfb56, 0xfb57, 0xfb58, 0xfb59], // ARABIC LETTER PEH\n 0x067f: [0xfb62, 0xfb63, 0xfb64, 0xfb65], // ARABIC LETTER TEHEH\n 0x0680: [0xfb5a, 0xfb5b, 0xfb5c, 0xfb5d], // ARABIC LETTER BEHEH\n 0x0683: [0xfb76, 0xfb77, 0xfb78, 0xfb79], // ARABIC LETTER NYEH\n 0x0684: [0xfb72, 0xfb73, 0xfb74, 0xfb75], // ARABIC LETTER DYEH\n 0x0686: [0xfb7a, 0xfb7b, 0xfb7c, 0xfb7d], // ARABIC LETTER TCHEH\n 0x0687: [0xfb7e, 0xfb7f, 0xfb80, 0xfb81], // ARABIC LETTER TCHEHEH\n 0x0688: [0xfb88, 0xfb89], // ARABIC LETTER DDAL\n 0x068c: [0xfb84, 0xfb85], // ARABIC LETTER DAHAL\n 0x068d: [0xfb82, 0xfb83], // ARABIC LETTER DDAHAL\n 0x068e: [0xfb86, 0xfb87], // ARABIC LETTER DUL\n 0x0691: [0xfb8c, 0xfb8d], // ARABIC LETTER RREH\n 0x0698: [0xfb8a, 0xfb8b], // ARABIC LETTER JEH\n 0x06a4: [0xfb6a, 0xfb6b, 0xfb6c, 0xfb6d], // ARABIC LETTER VEH\n 0x06a6: [0xfb6e, 0xfb6f, 0xfb70, 0xfb71], // ARABIC LETTER PEHEH\n 0x06a9: [0xfb8e, 0xfb8f, 0xfb90, 0xfb91], // ARABIC LETTER KEHEH\n 0x06ad: [0xfbd3, 0xfbd4, 0xfbd5, 0xfbd6], // ARABIC LETTER NG\n 0x06af: [0xfb92, 0xfb93, 0xfb94, 0xfb95], // ARABIC LETTER GAF\n 0x06b1: [0xfb9a, 0xfb9b, 0xfb9c, 0xfb9d], // ARABIC LETTER NGOEH\n 0x06b3: [0xfb96, 0xfb97, 0xfb98, 0xfb99], // ARABIC LETTER GUEH\n 0x06ba: [0xfb9e, 0xfb9f], // ARABIC LETTER NOON GHUNNA\n 0x06bb: [0xfba0, 0xfba1, 0xfba2, 0xfba3], // ARABIC LETTER RNOON\n 0x06be: [0xfbaa, 0xfbab, 0xfbac, 0xfbad], // ARABIC LETTER HEH DOACHASHMEE\n 0x06c0: [0xfba4, 0xfba5], // ARABIC LETTER HEH WITH YEH ABOVE\n 0x06c1: [0xfba6, 0xfba7, 0xfba8, 0xfba9], // ARABIC LETTER HEH GOAL\n 0x06c5: [0xfbe0, 0xfbe1], // ARABIC LETTER KIRGHIZ OE\n 0x06c6: [0xfbd9, 0xfbda], // ARABIC LETTER OE\n 0x06c7: [0xfbd7, 0xfbd8], // ARABIC LETTER U\n 0x06c8: [0xfbdb, 0xfbdc], // ARABIC LETTER YU\n 0x06c9: [0xfbe2, 0xfbe3], // ARABIC LETTER KIRGHIZ YU\n 0x06cb: [0xfbde, 0xfbdf], // ARABIC LETTER VE\n 0x06cc: [0xfbfc, 0xfbfd, 0xfbfe, 0xfbff], // ARABIC LETTER FARSI YEH\n 0x06d0: [0xfbe4, 0xfbe5, 0xfbe6, 0xfbe7], //ARABIC LETTER E\n 0x06d2: [0xfbae, 0xfbaf], // ARABIC LETTER YEH BARREE\n 0x06d3: [0xfbb0, 0xfbb1] // ARABIC LETTER YEH BARREE WITH HAMZA ABOVE\n };\n\n /*\n var ligaturesSubstitutionA = {\n 0xFBEA: []// ARABIC LIGATURE YEH WITH HAMZA ABOVE WITH ALEF ISOLATED FORM\n };\n */\n\n var ligatures = {\n 0xfedf: {\n 0xfe82: 0xfef5, // ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM\n 0xfe84: 0xfef7, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM\n 0xfe88: 0xfef9, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM\n 0xfe8e: 0xfefb // ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM\n },\n 0xfee0: {\n 0xfe82: 0xfef6, // ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM\n 0xfe84: 0xfef8, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM\n 0xfe88: 0xfefa, // ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW FINAL FORM\n 0xfe8e: 0xfefc // ARABIC LIGATURE LAM WITH ALEF FINAL FORM\n },\n 0xfe8d: { 0xfedf: { 0xfee0: { 0xfeea: 0xfdf2 } } }, // ALLAH\n 0x0651: {\n 0x064c: 0xfc5e, // Shadda + Dammatan\n 0x064d: 0xfc5f, // Shadda + Kasratan\n 0x064e: 0xfc60, // Shadda + Fatha\n 0x064f: 0xfc61, // Shadda + Damma\n 0x0650: 0xfc62 // Shadda + Kasra\n }\n };\n\n var arabic_diacritics = {\n 1612: 64606, // Shadda + Dammatan\n 1613: 64607, // Shadda + Kasratan\n 1614: 64608, // Shadda + Fatha\n 1615: 64609, // Shadda + Damma\n 1616: 64610 // Shadda + Kasra\n };\n\n var alfletter = [1570, 1571, 1573, 1575];\n\n var noChangeInForm = -1;\n var isolatedForm = 0;\n var finalForm = 1;\n var initialForm = 2;\n var medialForm = 3;\n\n jsPDFAPI.__arabicParser__ = {};\n\n //private\n var isInArabicSubstitutionA = (jsPDFAPI.__arabicParser__.isInArabicSubstitutionA = function(\n letter\n ) {\n return typeof arabicSubstitionA[letter.charCodeAt(0)] !== \"undefined\";\n });\n\n var isArabicLetter = (jsPDFAPI.__arabicParser__.isArabicLetter = function(\n letter\n ) {\n return (\n typeof letter === \"string\" &&\n /^[\\u0600-\\u06FF\\u0750-\\u077F\\u08A0-\\u08FF\\uFB50-\\uFDFF\\uFE70-\\uFEFF]+$/.test(\n letter\n )\n );\n });\n\n var isArabicEndLetter = (jsPDFAPI.__arabicParser__.isArabicEndLetter = function(\n letter\n ) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length <= 2\n );\n });\n\n var isArabicAlfLetter = (jsPDFAPI.__arabicParser__.isArabicAlfLetter = function(\n letter\n ) {\n return (\n isArabicLetter(letter) && alfletter.indexOf(letter.charCodeAt(0)) >= 0\n );\n });\n\n jsPDFAPI.__arabicParser__.arabicLetterHasIsolatedForm = function(letter) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length >= 1\n );\n };\n\n var arabicLetterHasFinalForm = (jsPDFAPI.__arabicParser__.arabicLetterHasFinalForm = function(\n letter\n ) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length >= 2\n );\n });\n\n jsPDFAPI.__arabicParser__.arabicLetterHasInitialForm = function(letter) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length >= 3\n );\n };\n\n var arabicLetterHasMedialForm = (jsPDFAPI.__arabicParser__.arabicLetterHasMedialForm = function(\n letter\n ) {\n return (\n isArabicLetter(letter) &&\n isInArabicSubstitutionA(letter) &&\n arabicSubstitionA[letter.charCodeAt(0)].length == 4\n );\n });\n\n var resolveLigatures = (jsPDFAPI.__arabicParser__.resolveLigatures = function(\n letters\n ) {\n var i = 0;\n var tmpLigatures = ligatures;\n var result = \"\";\n var effectedLetters = 0;\n\n for (i = 0; i < letters.length; i += 1) {\n if (typeof tmpLigatures[letters.charCodeAt(i)] !== \"undefined\") {\n effectedLetters++;\n tmpLigatures = tmpLigatures[letters.charCodeAt(i)];\n\n if (typeof tmpLigatures === \"number\") {\n result += String.fromCharCode(tmpLigatures);\n tmpLigatures = ligatures;\n effectedLetters = 0;\n }\n if (i === letters.length - 1) {\n tmpLigatures = ligatures;\n result += letters.charAt(i - (effectedLetters - 1));\n i = i - (effectedLetters - 1);\n effectedLetters = 0;\n }\n } else {\n tmpLigatures = ligatures;\n result += letters.charAt(i - effectedLetters);\n i = i - effectedLetters;\n effectedLetters = 0;\n }\n }\n\n return result;\n });\n\n jsPDFAPI.__arabicParser__.isArabicDiacritic = function(letter) {\n return (\n letter !== undefined &&\n arabic_diacritics[letter.charCodeAt(0)] !== undefined\n );\n };\n\n var getCorrectForm = (jsPDFAPI.__arabicParser__.getCorrectForm = function(\n currentChar,\n beforeChar,\n nextChar\n ) {\n if (!isArabicLetter(currentChar)) {\n return -1;\n }\n\n if (isInArabicSubstitutionA(currentChar) === false) {\n return noChangeInForm;\n }\n if (\n !arabicLetterHasFinalForm(currentChar) ||\n (!isArabicLetter(beforeChar) && !isArabicLetter(nextChar)) ||\n (!isArabicLetter(nextChar) && isArabicEndLetter(beforeChar)) ||\n (isArabicEndLetter(currentChar) && !isArabicLetter(beforeChar)) ||\n (isArabicEndLetter(currentChar) && isArabicAlfLetter(beforeChar)) ||\n (isArabicEndLetter(currentChar) && isArabicEndLetter(beforeChar))\n ) {\n return isolatedForm;\n }\n\n if (\n arabicLetterHasMedialForm(currentChar) &&\n isArabicLetter(beforeChar) &&\n !isArabicEndLetter(beforeChar) &&\n isArabicLetter(nextChar) &&\n arabicLetterHasFinalForm(nextChar)\n ) {\n return medialForm;\n }\n\n if (isArabicEndLetter(currentChar) || !isArabicLetter(nextChar)) {\n return finalForm;\n }\n return initialForm;\n });\n\n /**\n * @name processArabic\n * @function\n * @param {string} text\n * @returns {string}\n */\n var parseArabic = function(text) {\n text = text || \"\";\n\n var result = \"\";\n var i = 0;\n var j = 0;\n var position = 0;\n var currentLetter = \"\";\n var prevLetter = \"\";\n var nextLetter = \"\";\n\n var words = text.split(\"\\\\s+\");\n var newWords = [];\n for (i = 0; i < words.length; i += 1) {\n newWords.push(\"\");\n for (j = 0; j < words[i].length; j += 1) {\n currentLetter = words[i][j];\n prevLetter = words[i][j - 1];\n nextLetter = words[i][j + 1];\n if (isArabicLetter(currentLetter)) {\n position = getCorrectForm(currentLetter, prevLetter, nextLetter);\n if (position !== -1) {\n newWords[i] += String.fromCharCode(\n arabicSubstitionA[currentLetter.charCodeAt(0)][position]\n );\n } else {\n newWords[i] += currentLetter;\n }\n } else {\n newWords[i] += currentLetter;\n }\n }\n\n newWords[i] = resolveLigatures(newWords[i]);\n }\n result = newWords.join(\" \");\n\n return result;\n };\n\n var processArabic = (jsPDFAPI.__arabicParser__.processArabic = jsPDFAPI.processArabic = function() {\n var text =\n typeof arguments[0] === \"string\" ? arguments[0] : arguments[0].text;\n var tmpText = [];\n var result;\n\n if (Array.isArray(text)) {\n var i = 0;\n tmpText = [];\n for (i = 0; i < text.length; i += 1) {\n if (Array.isArray(text[i])) {\n tmpText.push([parseArabic(text[i][0]), text[i][1], text[i][2]]);\n } else {\n tmpText.push([parseArabic(text[i])]);\n }\n }\n result = tmpText;\n } else {\n result = parseArabic(text);\n }\n if (typeof arguments[0] === \"string\") {\n return result;\n } else {\n arguments[0].text = result;\n return arguments[0];\n }\n });\n\n jsPDFAPI.events.push([\"preProcessText\", processArabic]);\n})(jsPDF.API);\n","/** @license\n * jsPDF Autoprint Plugin\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @name autoprint\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * Makes the PDF automatically open the print-Dialog when opened in a PDF-viewer.\n *\n * @name autoPrint\n * @function\n * @param {Object} options (optional) Set the attribute variant to 'non-conform' (default) or 'javascript' to activate different methods of automatic printing when opening in a PDF-viewer .\n * @returns {jsPDF}\n * @example\n * var doc = new jsPDF();\n * doc.text(10, 10, 'This is a test');\n * doc.autoPrint({variant: 'non-conform'});\n * doc.save('autoprint.pdf');\n */\n jsPDFAPI.autoPrint = function(options) {\n \"use strict\";\n var refAutoPrintTag;\n options = options || {};\n options.variant = options.variant || \"non-conform\";\n\n switch (options.variant) {\n case \"javascript\":\n //https://github.com/Rob--W/pdf.js/commit/c676ecb5a0f54677b9f3340c3ef2cf42225453bb\n this.addJS(\"print({});\");\n break;\n case \"non-conform\":\n default:\n this.internal.events.subscribe(\"postPutResources\", function() {\n refAutoPrintTag = this.internal.newObject();\n this.internal.out(\"<<\");\n this.internal.out(\"/S /Named\");\n this.internal.out(\"/Type /Action\");\n this.internal.out(\"/N /Print\");\n this.internal.out(\">>\");\n this.internal.out(\"endobj\");\n });\n\n this.internal.events.subscribe(\"putCatalog\", function() {\n this.internal.out(\"/OpenAction \" + refAutoPrintTag + \" 0 R\");\n });\n break;\n }\n return this;\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF Canvas PlugIn\n * This plugin mimics the HTML5 Canvas\n *\n * The goal is to provide a way for current canvas users to print directly to a PDF.\n * @name canvas\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * @class Canvas\n * @classdesc A Canvas Wrapper for jsPDF\n */\n var Canvas = function() {\n var jsPdfInstance = undefined;\n Object.defineProperty(this, \"pdf\", {\n get: function() {\n return jsPdfInstance;\n },\n set: function(value) {\n jsPdfInstance = value;\n }\n });\n\n var _width = 150;\n /**\n * The height property is a positive integer reflecting the height HTML attribute of the element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of 150 is used.\n * This is one of the two properties, the other being width, that controls the size of the canvas.\n *\n * @name width\n */\n Object.defineProperty(this, \"width\", {\n get: function() {\n return _width;\n },\n set: function(value) {\n if (isNaN(value) || Number.isInteger(value) === false || value < 0) {\n _width = 150;\n } else {\n _width = value;\n }\n if (this.getContext(\"2d\").pageWrapXEnabled) {\n this.getContext(\"2d\").pageWrapX = _width + 1;\n }\n }\n });\n\n var _height = 300;\n /**\n * The width property is a positive integer reflecting the width HTML attribute of the element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of 300 is used.\n * This is one of the two properties, the other being height, that controls the size of the canvas.\n *\n * @name height\n */\n Object.defineProperty(this, \"height\", {\n get: function() {\n return _height;\n },\n set: function(value) {\n if (isNaN(value) || Number.isInteger(value) === false || value < 0) {\n _height = 300;\n } else {\n _height = value;\n }\n if (this.getContext(\"2d\").pageWrapYEnabled) {\n this.getContext(\"2d\").pageWrapY = _height + 1;\n }\n }\n });\n\n var _childNodes = [];\n Object.defineProperty(this, \"childNodes\", {\n get: function() {\n return _childNodes;\n },\n set: function(value) {\n _childNodes = value;\n }\n });\n\n var _style = {};\n Object.defineProperty(this, \"style\", {\n get: function() {\n return _style;\n },\n set: function(value) {\n _style = value;\n }\n });\n\n Object.defineProperty(this, \"parentNode\", {});\n };\n\n /**\n * The getContext() method returns a drawing context on the canvas, or null if the context identifier is not supported.\n *\n * @name getContext\n * @function\n * @param {string} contextType Is a String containing the context identifier defining the drawing context associated to the canvas. Possible value is \"2d\", leading to the creation of a Context2D object representing a two-dimensional rendering context.\n * @param {object} contextAttributes\n */\n Canvas.prototype.getContext = function(contextType, contextAttributes) {\n contextType = contextType || \"2d\";\n var key;\n\n if (contextType !== \"2d\") {\n return null;\n }\n for (key in contextAttributes) {\n if (this.pdf.context2d.hasOwnProperty(key)) {\n this.pdf.context2d[key] = contextAttributes[key];\n }\n }\n this.pdf.context2d._canvas = this;\n return this.pdf.context2d;\n };\n\n /**\n * The toDataURL() method is just a stub to throw an error if accidently called.\n *\n * @name toDataURL\n * @function\n */\n Canvas.prototype.toDataURL = function() {\n throw new Error(\"toDataURL is not implemented.\");\n };\n\n jsPDFAPI.events.push([\n \"initialized\",\n function() {\n this.canvas = new Canvas();\n this.canvas.pdf = this;\n }\n ]);\n\n return this;\n})(jsPDF.API);\n","/**\n * @license\n * ====================================================================\n * Copyright (c) 2013 Youssef Beddad, youssef.beddad@gmail.com\n * 2013 Eduardo Menezes de Morais, eduardo.morais@usp.br\n * 2013 Lee Driscoll, https://github.com/lsdriscoll\n * 2014 Juan Pablo Gaviria, https://github.com/juanpgaviria\n * 2014 James Hall, james@parall.ax\n * 2014 Diego Casorran, https://github.com/diegocr\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @name cell\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n var NO_MARGINS = { left: 0, top: 0, bottom: 0, right: 0 };\n\n var px2pt = (0.264583 * 72) / 25.4;\n var printingHeaderRow = false;\n\n var _initialize = function() {\n if (typeof this.internal.__cell__ === \"undefined\") {\n this.internal.__cell__ = {};\n this.internal.__cell__.padding = 3;\n this.internal.__cell__.headerFunction = undefined;\n this.internal.__cell__.margins = Object.assign({}, NO_MARGINS);\n this.internal.__cell__.margins.width = this.getPageWidth();\n _reset.call(this);\n }\n };\n\n var _reset = function() {\n this.internal.__cell__.lastCell = new Cell();\n this.internal.__cell__.pages = 1;\n };\n\n var Cell = function() {\n var _x = arguments[0];\n Object.defineProperty(this, \"x\", {\n enumerable: true,\n get: function() {\n return _x;\n },\n set: function(value) {\n _x = value;\n }\n });\n var _y = arguments[1];\n Object.defineProperty(this, \"y\", {\n enumerable: true,\n get: function() {\n return _y;\n },\n set: function(value) {\n _y = value;\n }\n });\n var _width = arguments[2];\n Object.defineProperty(this, \"width\", {\n enumerable: true,\n get: function() {\n return _width;\n },\n set: function(value) {\n _width = value;\n }\n });\n var _height = arguments[3];\n Object.defineProperty(this, \"height\", {\n enumerable: true,\n get: function() {\n return _height;\n },\n set: function(value) {\n _height = value;\n }\n });\n var _text = arguments[4];\n Object.defineProperty(this, \"text\", {\n enumerable: true,\n get: function() {\n return _text;\n },\n set: function(value) {\n _text = value;\n }\n });\n var _lineNumber = arguments[5];\n Object.defineProperty(this, \"lineNumber\", {\n enumerable: true,\n get: function() {\n return _lineNumber;\n },\n set: function(value) {\n _lineNumber = value;\n }\n });\n var _align = arguments[6];\n Object.defineProperty(this, \"align\", {\n enumerable: true,\n get: function() {\n return _align;\n },\n set: function(value) {\n _align = value;\n }\n });\n\n return this;\n };\n\n Cell.prototype.clone = function() {\n return new Cell(\n this.x,\n this.y,\n this.width,\n this.height,\n this.text,\n this.lineNumber,\n this.align\n );\n };\n\n Cell.prototype.toArray = function() {\n return [\n this.x,\n this.y,\n this.width,\n this.height,\n this.text,\n this.lineNumber,\n this.align\n ];\n };\n\n /**\n * @name setHeaderFunction\n * @function\n * @param {function} func\n */\n jsPDFAPI.setHeaderFunction = function(func) {\n _initialize.call(this);\n this.internal.__cell__.headerFunction =\n typeof func === \"function\" ? func : undefined;\n return this;\n };\n\n /**\n * @name getTextDimensions\n * @function\n * @param {string} txt\n * @returns {Object} dimensions\n */\n jsPDFAPI.getTextDimensions = function(text, options) {\n _initialize.call(this);\n options = options || {};\n var fontSize = options.fontSize || this.getFontSize();\n var font = options.font || this.getFont();\n var scaleFactor = options.scaleFactor || this.internal.scaleFactor;\n var width = 0;\n var amountOfLines = 0;\n var height = 0;\n var tempWidth = 0;\n var scope = this;\n\n if (!Array.isArray(text) && typeof text !== \"string\") {\n if (typeof text === \"number\") {\n text = String(text);\n } else {\n throw new Error(\n \"getTextDimensions expects text-parameter to be of type String or type Number or an Array of Strings.\"\n );\n }\n }\n\n const maxWidth = options.maxWidth;\n if (maxWidth > 0) {\n if (typeof text === \"string\") {\n text = this.splitTextToSize(text, maxWidth);\n } else if (Object.prototype.toString.call(text) === \"[object Array]\") {\n text = text.reduce(function(acc, textLine) {\n return acc.concat(scope.splitTextToSize(textLine, maxWidth));\n }, []);\n }\n } else {\n // Without the else clause, it will not work if you do not pass along maxWidth\n text = Array.isArray(text) ? text : [text];\n }\n\n for (var i = 0; i < text.length; i++) {\n tempWidth = this.getStringUnitWidth(text[i], { font: font }) * fontSize;\n if (width < tempWidth) {\n width = tempWidth;\n }\n }\n\n if (width !== 0) {\n amountOfLines = text.length;\n }\n\n width = width / scaleFactor;\n height = Math.max(\n (amountOfLines * fontSize * this.getLineHeightFactor() -\n fontSize * (this.getLineHeightFactor() - 1)) /\n scaleFactor,\n 0\n );\n return { w: width, h: height };\n };\n\n /**\n * @name cellAddPage\n * @function\n */\n jsPDFAPI.cellAddPage = function() {\n _initialize.call(this);\n\n this.addPage();\n\n var margins = this.internal.__cell__.margins || NO_MARGINS;\n this.internal.__cell__.lastCell = new Cell(\n margins.left,\n margins.top,\n undefined,\n undefined\n );\n this.internal.__cell__.pages += 1;\n\n return this;\n };\n\n /**\n * @name cell\n * @function\n * @param {number} x\n * @param {number} y\n * @param {number} width\n * @param {number} height\n * @param {string} text\n * @param {number} lineNumber lineNumber\n * @param {string} align\n * @return {jsPDF} jsPDF-instance\n */\n var cell = (jsPDFAPI.cell = function() {\n var currentCell;\n\n if (arguments[0] instanceof Cell) {\n currentCell = arguments[0];\n } else {\n currentCell = new Cell(\n arguments[0],\n arguments[1],\n arguments[2],\n arguments[3],\n arguments[4],\n arguments[5]\n );\n }\n _initialize.call(this);\n var lastCell = this.internal.__cell__.lastCell;\n var padding = this.internal.__cell__.padding;\n var margins = this.internal.__cell__.margins || NO_MARGINS;\n var tableHeaderRow = this.internal.__cell__.tableHeaderRow;\n var printHeaders = this.internal.__cell__.printHeaders;\n // If this is not the first cell, we must change its position\n if (typeof lastCell.lineNumber !== \"undefined\") {\n if (lastCell.lineNumber === currentCell.lineNumber) {\n //Same line\n currentCell.x = (lastCell.x || 0) + (lastCell.width || 0);\n currentCell.y = lastCell.y || 0;\n } else {\n //New line\n if (\n lastCell.y + lastCell.height + currentCell.height + margins.bottom >\n this.getPageHeight()\n ) {\n this.cellAddPage();\n currentCell.y = margins.top;\n if (printHeaders && tableHeaderRow) {\n this.printHeaderRow(currentCell.lineNumber, true);\n currentCell.y += tableHeaderRow[0].height;\n }\n } else {\n currentCell.y = lastCell.y + lastCell.height || currentCell.y;\n }\n }\n }\n\n if (typeof currentCell.text[0] !== \"undefined\") {\n this.rect(\n currentCell.x,\n currentCell.y,\n currentCell.width,\n currentCell.height,\n printingHeaderRow === true ? \"FD\" : undefined\n );\n if (currentCell.align === \"right\") {\n this.text(\n currentCell.text,\n currentCell.x + currentCell.width - padding,\n currentCell.y + padding,\n { align: \"right\", baseline: \"top\" }\n );\n } else if (currentCell.align === \"center\") {\n this.text(\n currentCell.text,\n currentCell.x + currentCell.width / 2,\n currentCell.y + padding,\n {\n align: \"center\",\n baseline: \"top\",\n maxWidth: currentCell.width - padding - padding\n }\n );\n } else {\n this.text(\n currentCell.text,\n currentCell.x + padding,\n currentCell.y + padding,\n {\n align: \"left\",\n baseline: \"top\",\n maxWidth: currentCell.width - padding - padding\n }\n );\n }\n }\n this.internal.__cell__.lastCell = currentCell;\n return this;\n });\n\n /**\n * Create a table from a set of data.\n * @name table\n * @function\n * @param {Integer} [x] : left-position for top-left corner of table\n * @param {Integer} [y] top-position for top-left corner of table\n * @param {Object[]} [data] An array of objects containing key-value pairs corresponding to a row of data.\n * @param {String[]} [headers] Omit or null to auto-generate headers at a performance cost\n\n * @param {Object} [config.printHeaders] True to print column headers at the top of every page\n * @param {Object} [config.autoSize] True to dynamically set the column widths to match the widest cell value\n * @param {Object} [config.margins] margin values for left, top, bottom, and width\n * @param {Object} [config.fontSize] Integer fontSize to use (optional)\n * @param {Object} [config.padding] cell-padding in pt to use (optional)\n * @param {Object} [config.headerBackgroundColor] default is #c8c8c8 (optional)\n * @param {Object} [config.headerTextColor] default is #000 (optional)\n * @param {Object} [config.rowStart] callback to handle before print each row (optional)\n * @param {Object} [config.cellStart] callback to handle before print each cell (optional)\n * @returns {jsPDF} jsPDF-instance\n */\n\n jsPDFAPI.table = function(x, y, data, headers, config) {\n _initialize.call(this);\n if (!data) {\n throw new Error(\"No data for PDF table.\");\n }\n\n config = config || {};\n\n var headerNames = [],\n headerLabels = [],\n headerAligns = [],\n i,\n columnMatrix = {},\n columnWidths = {},\n column,\n columnMinWidths = [],\n j,\n tableHeaderConfigs = [],\n //set up defaults. If a value is provided in config, defaults will be overwritten:\n autoSize = config.autoSize || false,\n printHeaders = config.printHeaders === false ? false : true,\n fontSize =\n config.css && typeof config.css[\"font-size\"] !== \"undefined\"\n ? config.css[\"font-size\"] * 16\n : config.fontSize || 12,\n margins =\n config.margins ||\n Object.assign({ width: this.getPageWidth() }, NO_MARGINS),\n padding = typeof config.padding === \"number\" ? config.padding : 3,\n headerBackgroundColor = config.headerBackgroundColor || \"#c8c8c8\",\n headerTextColor = config.headerTextColor || \"#000\";\n\n _reset.call(this);\n\n this.internal.__cell__.printHeaders = printHeaders;\n this.internal.__cell__.margins = margins;\n this.internal.__cell__.table_font_size = fontSize;\n this.internal.__cell__.padding = padding;\n this.internal.__cell__.headerBackgroundColor = headerBackgroundColor;\n this.internal.__cell__.headerTextColor = headerTextColor;\n this.setFontSize(fontSize);\n\n // Set header values\n if (headers === undefined || headers === null) {\n // No headers defined so we derive from data\n headerNames = Object.keys(data[0]);\n headerLabels = headerNames;\n headerAligns = headerNames.map(function() {\n return \"left\";\n });\n } else if (Array.isArray(headers) && typeof headers[0] === \"object\") {\n headerNames = headers.map(function(header) {\n return header.name;\n });\n headerLabels = headers.map(function(header) {\n return header.prompt || header.name || \"\";\n });\n headerAligns = headers.map(function(header) {\n return header.align || \"left\";\n });\n // Split header configs into names and prompts\n for (i = 0; i < headers.length; i += 1) {\n columnWidths[headers[i].name] = headers[i].width * px2pt;\n }\n } else if (Array.isArray(headers) && typeof headers[0] === \"string\") {\n headerNames = headers;\n headerLabels = headerNames;\n headerAligns = headerNames.map(function() {\n return \"left\";\n });\n }\n\n if (\n autoSize ||\n (Array.isArray(headers) && typeof headers[0] === \"string\")\n ) {\n var headerName;\n for (i = 0; i < headerNames.length; i += 1) {\n headerName = headerNames[i];\n\n // Create a matrix of columns e.g., {column_title: [row1_Record, row2_Record]}\n\n columnMatrix[headerName] = data.map(function(rec) {\n return rec[headerName];\n });\n\n // get header width\n this.setFont(undefined, \"bold\");\n columnMinWidths.push(\n this.getTextDimensions(headerLabels[i], {\n fontSize: this.internal.__cell__.table_font_size,\n scaleFactor: this.internal.scaleFactor\n }).w\n );\n column = columnMatrix[headerName];\n\n // get cell widths\n this.setFont(undefined, \"normal\");\n for (j = 0; j < column.length; j += 1) {\n columnMinWidths.push(\n this.getTextDimensions(column[j], {\n fontSize: this.internal.__cell__.table_font_size,\n scaleFactor: this.internal.scaleFactor\n }).w\n );\n }\n\n // get final column width\n columnWidths[headerName] =\n Math.max.apply(null, columnMinWidths) + padding + padding;\n\n //have to reset\n columnMinWidths = [];\n }\n }\n\n // -- Construct the table\n\n if (printHeaders) {\n var row = {};\n for (i = 0; i < headerNames.length; i += 1) {\n row[headerNames[i]] = {};\n row[headerNames[i]].text = headerLabels[i];\n row[headerNames[i]].align = headerAligns[i];\n }\n\n var rowHeight = calculateLineHeight.call(this, row, columnWidths);\n\n // Construct the header row\n tableHeaderConfigs = headerNames.map(function(value) {\n return new Cell(\n x,\n y,\n columnWidths[value],\n rowHeight,\n row[value].text,\n undefined,\n row[value].align\n );\n });\n\n // Store the table header config\n this.setTableHeaderRow(tableHeaderConfigs);\n\n // Print the header for the start of the table\n this.printHeaderRow(1, false);\n }\n\n // Construct the data rows\n\n var align = headers.reduce(function(pv, cv) {\n pv[cv.name] = cv.align;\n return pv;\n }, {});\n for (i = 0; i < data.length; i += 1) {\n if (\"rowStart\" in config && config.rowStart instanceof Function) {\n config.rowStart(\n {\n row: i,\n data: data[i]\n },\n this\n );\n }\n var lineHeight = calculateLineHeight.call(this, data[i], columnWidths);\n\n for (j = 0; j < headerNames.length; j += 1) {\n var cellData = data[i][headerNames[j]];\n if (\"cellStart\" in config && config.cellStart instanceof Function) {\n config.cellStart(\n {\n row: i,\n col: j,\n data: cellData\n },\n this\n );\n }\n cell.call(\n this,\n new Cell(\n x,\n y,\n columnWidths[headerNames[j]],\n lineHeight,\n cellData,\n i + 2,\n align[headerNames[j]]\n )\n );\n }\n }\n this.internal.__cell__.table_x = x;\n this.internal.__cell__.table_y = y;\n return this;\n };\n\n /**\n * Calculate the height for containing the highest column\n *\n * @name calculateLineHeight\n * @function\n * @param {Object[]} model is the line of data we want to calculate the height of\n * @param {Integer[]} columnWidths is size of each column\n * @returns {number} lineHeight\n * @private\n */\n var calculateLineHeight = function calculateLineHeight(model, columnWidths) {\n var padding = this.internal.__cell__.padding;\n var fontSize = this.internal.__cell__.table_font_size;\n var scaleFactor = this.internal.scaleFactor;\n\n return Object.keys(model)\n .map(function(key) {\n var value = model[key];\n return this.splitTextToSize(\n value.hasOwnProperty(\"text\") ? value.text : value,\n columnWidths[key] - padding - padding\n );\n }, this)\n .map(function(value) {\n return (\n (this.getLineHeightFactor() * value.length * fontSize) / scaleFactor +\n padding +\n padding\n );\n }, this)\n .reduce(function(pv, cv) {\n return Math.max(pv, cv);\n }, 0);\n };\n\n /**\n * Store the config for outputting a table header\n *\n * @name setTableHeaderRow\n * @function\n * @param {Object[]} config\n * An array of cell configs that would define a header row: Each config matches the config used by jsPDFAPI.cell\n * except the lineNumber parameter is excluded\n */\n jsPDFAPI.setTableHeaderRow = function(config) {\n _initialize.call(this);\n this.internal.__cell__.tableHeaderRow = config;\n };\n\n /**\n * Output the store header row\n *\n * @name printHeaderRow\n * @function\n * @param {number} lineNumber The line number to output the header at\n * @param {boolean} new_page\n */\n jsPDFAPI.printHeaderRow = function(lineNumber, new_page) {\n _initialize.call(this);\n if (!this.internal.__cell__.tableHeaderRow) {\n throw new Error(\"Property tableHeaderRow does not exist.\");\n }\n\n var tableHeaderCell;\n\n printingHeaderRow = true;\n if (typeof this.internal.__cell__.headerFunction === \"function\") {\n var position = this.internal.__cell__.headerFunction(\n this,\n this.internal.__cell__.pages\n );\n this.internal.__cell__.lastCell = new Cell(\n position[0],\n position[1],\n position[2],\n position[3],\n undefined,\n -1\n );\n }\n this.setFont(undefined, \"bold\");\n\n var tempHeaderConf = [];\n for (var i = 0; i < this.internal.__cell__.tableHeaderRow.length; i += 1) {\n tableHeaderCell = this.internal.__cell__.tableHeaderRow[i].clone();\n if (new_page) {\n tableHeaderCell.y = this.internal.__cell__.margins.top || 0;\n tempHeaderConf.push(tableHeaderCell);\n }\n tableHeaderCell.lineNumber = lineNumber;\n var currentTextColor = this.getTextColor();\n this.setTextColor(this.internal.__cell__.headerTextColor);\n this.setFillColor(this.internal.__cell__.headerBackgroundColor);\n cell.call(this, tableHeaderCell);\n this.setTextColor(currentTextColor);\n }\n if (tempHeaderConf.length > 0) {\n this.setTableHeaderRow(tempHeaderConf);\n }\n this.setFont(undefined, \"normal\");\n printingHeaderRow = false;\n };\n})(jsPDF.API);\n","/**\n * @license\n * ====================================================================\n * Copyright (c) 2013 Youssef Beddad, youssef.beddad@gmail.com\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF JavaScript plugin\n *\n * @name javascript\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n var jsNamesObj, jsJsObj, text;\n /**\n * @name addJS\n * @function\n * @param {string} javascript The javascript to be embedded into the PDF-file.\n * @returns {jsPDF}\n */\n jsPDFAPI.addJS = function(javascript) {\n text = javascript;\n this.internal.events.subscribe(\"postPutResources\", function() {\n jsNamesObj = this.internal.newObject();\n this.internal.out(\"<<\");\n this.internal.out(\"/Names [(EmbeddedJS) \" + (jsNamesObj + 1) + \" 0 R]\");\n this.internal.out(\">>\");\n this.internal.out(\"endobj\");\n\n jsJsObj = this.internal.newObject();\n this.internal.out(\"<<\");\n this.internal.out(\"/S /JavaScript\");\n this.internal.out(\"/JS (\" + text + \")\");\n this.internal.out(\">>\");\n this.internal.out(\"endobj\");\n });\n this.internal.events.subscribe(\"putCatalog\", function() {\n if (jsNamesObj !== undefined && jsJsObj !== undefined) {\n this.internal.out(\"/Names <>\");\n }\n });\n return this;\n };\n})(jsPDF.API);\n","/**\n * @license\n * jsPDF fileloading PlugIn\n * Copyright (c) 2018 Aras Abbasi (aras.abbasi@gmail.com)\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @name fileloading\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * @name loadFile\n * @function\n * @param {string} url\n * @param {boolean} sync\n * @param {function} callback\n * @returns {string|undefined} result\n */\n jsPDFAPI.loadFile = function(url, sync, callback) {\n return browserRequest(url, sync, callback);\n\n };\n\n /**\n * @name loadImageFile\n * @function\n * @param {string} path\n * @param {boolean} sync\n * @param {function} callback\n */\n jsPDFAPI.loadImageFile = jsPDFAPI.loadFile;\n\n function browserRequest(url, sync, callback) {\n sync = sync === false ? false : true;\n callback = typeof callback === \"function\" ? callback : function() {};\n var result = undefined;\n\n var xhr = function(url, sync, callback) {\n var request = new XMLHttpRequest();\n var i = 0;\n\n var sanitizeUnicode = function(data) {\n var dataLength = data.length;\n var charArray = [];\n var StringFromCharCode = String.fromCharCode;\n\n //Transform Unicode to ASCII\n for (i = 0; i < dataLength; i += 1) {\n charArray.push(StringFromCharCode(data.charCodeAt(i) & 0xff));\n }\n return charArray.join(\"\");\n };\n\n request.open(\"GET\", url, !sync);\n // XHR binary charset opt by Marcus Granado 2006 [http://mgran.blogspot.com]\n request.overrideMimeType(\"text/plain; charset=x-user-defined\");\n\n if (sync === false) {\n request.onload = function() {\n if (request.status === 200) {\n callback(sanitizeUnicode(this.responseText));\n } else {\n callback(undefined);\n }\n };\n }\n request.send(null);\n\n if (sync && request.status === 200) {\n return sanitizeUnicode(request.responseText);\n }\n };\n try {\n result = xhr(url, sync, callback);\n // eslint-disable-next-line no-empty\n } catch (e) {}\n return result;\n }\n\n function nodeReadFile(url, sync, callback) {\n sync = sync === false ? false : true;\n var result = undefined;\n\n var fs = require(\"fs\");\n var path = require(\"path\");\n\n url = path.resolve(url);\n if (sync) {\n try {\n result = fs.readFileSync(url, { encoding: \"latin1\" });\n } catch (e) {\n return undefined;\n }\n } else {\n fs.readFile(url, { encoding: \"latin1\" }, function(err, data) {\n if (!callback) {\n return;\n }\n if (err) {\n callback(undefined);\n }\n callback(data);\n });\n }\n\n return result;\n }\n})(jsPDF.API);\n","/* eslint-disable no-fallthrough */\r\n/* eslint-disable no-console */\r\n/**\r\n * @license\r\n * jsPDF Context2D PlugIn Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv\r\n *\r\n * Licensed under the MIT License. http://opensource.org/licenses/mit-license\r\n */\r\n\r\nimport { jsPDF } from \"../jspdf.js\";\r\nimport { RGBColor } from \"../libs/rgbcolor.js\";\r\nimport { console } from \"../libs/console.js\";\r\nimport {\r\n buildFontFaceMap,\r\n parseFontFamily,\r\n resolveFontFace\r\n} from \"../libs/fontFace.js\";\r\n\r\n/**\r\n * This plugin mimics the HTML5 CanvasRenderingContext2D.\r\n *\r\n * The goal is to provide a way for current canvas implementations to print directly to a PDF.\r\n *\r\n * @name context2d\r\n * @module\r\n */\r\n(function(jsPDFAPI) {\r\n \"use strict\";\r\n var ContextLayer = function(ctx) {\r\n ctx = ctx || {};\r\n this.isStrokeTransparent = ctx.isStrokeTransparent || false;\r\n this.strokeOpacity = ctx.strokeOpacity || 1;\r\n this.strokeStyle = ctx.strokeStyle || \"#000000\";\r\n this.fillStyle = ctx.fillStyle || \"#000000\";\r\n this.isFillTransparent = ctx.isFillTransparent || false;\r\n this.fillOpacity = ctx.fillOpacity || 1;\r\n this.font = ctx.font || \"10px sans-serif\";\r\n this.textBaseline = ctx.textBaseline || \"alphabetic\";\r\n this.textAlign = ctx.textAlign || \"left\";\r\n this.lineWidth = ctx.lineWidth || 1;\r\n this.lineJoin = ctx.lineJoin || \"miter\";\r\n this.lineCap = ctx.lineCap || \"butt\";\r\n this.path = ctx.path || [];\r\n this.transform =\r\n typeof ctx.transform !== \"undefined\"\r\n ? ctx.transform.clone()\r\n : new Matrix();\r\n this.globalCompositeOperation = ctx.globalCompositeOperation || \"normal\";\r\n this.globalAlpha = ctx.globalAlpha || 1.0;\r\n this.clip_path = ctx.clip_path || [];\r\n this.currentPoint = ctx.currentPoint || new Point();\r\n this.miterLimit = ctx.miterLimit || 10.0;\r\n this.lastPoint = ctx.lastPoint || new Point();\r\n this.lineDashOffset = ctx.lineDashOffset || 0.0;\r\n this.lineDash = ctx.lineDash || [];\r\n this.margin = ctx.margin || [0, 0, 0, 0];\r\n this.prevPageLastElemOffset = ctx.prevPageLastElemOffset || 0;\r\n\r\n this.ignoreClearRect =\r\n typeof ctx.ignoreClearRect === \"boolean\" ? ctx.ignoreClearRect : true;\r\n return this;\r\n };\r\n\r\n //stub\r\n var f2,\r\n getHorizontalCoordinateString,\r\n getVerticalCoordinateString,\r\n getHorizontalCoordinate,\r\n getVerticalCoordinate,\r\n Point,\r\n Rectangle,\r\n Matrix,\r\n _ctx;\r\n jsPDFAPI.events.push([\r\n \"initialized\",\r\n function() {\r\n this.context2d = new Context2D(this);\r\n\r\n f2 = this.internal.f2;\r\n getHorizontalCoordinateString = this.internal.getCoordinateString;\r\n getVerticalCoordinateString = this.internal.getVerticalCoordinateString;\r\n getHorizontalCoordinate = this.internal.getHorizontalCoordinate;\r\n getVerticalCoordinate = this.internal.getVerticalCoordinate;\r\n Point = this.internal.Point;\r\n Rectangle = this.internal.Rectangle;\r\n Matrix = this.internal.Matrix;\r\n _ctx = new ContextLayer();\r\n }\r\n ]);\r\n\r\n var Context2D = function(pdf) {\r\n Object.defineProperty(this, \"canvas\", {\r\n get: function() {\r\n return { parentNode: false, style: false };\r\n }\r\n });\r\n\r\n var _pdf = pdf;\r\n Object.defineProperty(this, \"pdf\", {\r\n get: function() {\r\n return _pdf;\r\n }\r\n });\r\n\r\n var _pageWrapXEnabled = false;\r\n /**\r\n * @name pageWrapXEnabled\r\n * @type {boolean}\r\n * @default false\r\n */\r\n Object.defineProperty(this, \"pageWrapXEnabled\", {\r\n get: function() {\r\n return _pageWrapXEnabled;\r\n },\r\n set: function(value) {\r\n _pageWrapXEnabled = Boolean(value);\r\n }\r\n });\r\n\r\n var _pageWrapYEnabled = false;\r\n /**\r\n * @name pageWrapYEnabled\r\n * @type {boolean}\r\n * @default true\r\n */\r\n Object.defineProperty(this, \"pageWrapYEnabled\", {\r\n get: function() {\r\n return _pageWrapYEnabled;\r\n },\r\n set: function(value) {\r\n _pageWrapYEnabled = Boolean(value);\r\n }\r\n });\r\n\r\n var _posX = 0;\r\n /**\r\n * @name posX\r\n * @type {number}\r\n * @default 0\r\n */\r\n Object.defineProperty(this, \"posX\", {\r\n get: function() {\r\n return _posX;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _posX = value;\r\n }\r\n }\r\n });\r\n\r\n var _posY = 0;\r\n /**\r\n * @name posY\r\n * @type {number}\r\n * @default 0\r\n */\r\n Object.defineProperty(this, \"posY\", {\r\n get: function() {\r\n return _posY;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n _posY = value;\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * Gets or sets the page margin when using auto paging. Has no effect when {@link autoPaging} is off.\r\n * @name margin\r\n * @type {number|number[]}\r\n * @default [0, 0, 0, 0]\r\n */\r\n Object.defineProperty(this, \"margin\", {\r\n get: function() {\r\n return _ctx.margin;\r\n },\r\n set: function(value) {\r\n var margin;\r\n if (typeof value === \"number\") {\r\n margin = [value, value, value, value];\r\n } else {\r\n margin = new Array(4);\r\n margin[0] = value[0];\r\n margin[1] = value.length >= 2 ? value[1] : margin[0];\r\n margin[2] = value.length >= 3 ? value[2] : margin[0];\r\n margin[3] = value.length >= 4 ? value[3] : margin[1];\r\n }\r\n _ctx.margin = margin;\r\n }\r\n });\r\n\r\n var _autoPaging = false;\r\n /**\r\n * Gets or sets the auto paging mode. When auto paging is enabled, the context2d will automatically draw on the\r\n * next page if a shape or text chunk doesn't fit entirely on the current page. The context2d will create new\r\n * pages if required.\r\n *\r\n * Context2d supports different modes:\r\n *
      \r\n *
    • \r\n * false: Auto paging is disabled.\r\n *
    • \r\n *
    • \r\n * true or 'slice': Will cut shapes or text chunks across page breaks. Will possibly\r\n * slice text in half, making it difficult to read.\r\n *
    • \r\n *
    • \r\n * 'text': Trys not to cut text in half across page breaks. Works best for documents consisting\r\n * mostly of a single column of text.\r\n *
    • \r\n *
    \r\n * @name Context2D#autoPaging\r\n * @type {boolean|\"slice\"|\"text\"}\r\n * @default false\r\n */\r\n Object.defineProperty(this, \"autoPaging\", {\r\n get: function() {\r\n return _autoPaging;\r\n },\r\n set: function(value) {\r\n _autoPaging = value;\r\n }\r\n });\r\n\r\n var lastBreak = 0;\r\n /**\r\n * @name lastBreak\r\n * @type {number}\r\n * @default 0\r\n */\r\n Object.defineProperty(this, \"lastBreak\", {\r\n get: function() {\r\n return lastBreak;\r\n },\r\n set: function(value) {\r\n lastBreak = value;\r\n }\r\n });\r\n\r\n var pageBreaks = [];\r\n /**\r\n * Y Position of page breaks.\r\n * @name pageBreaks\r\n * @type {number}\r\n * @default 0\r\n */\r\n Object.defineProperty(this, \"pageBreaks\", {\r\n get: function() {\r\n return pageBreaks;\r\n },\r\n set: function(value) {\r\n pageBreaks = value;\r\n }\r\n });\r\n\r\n /**\r\n * @name ctx\r\n * @type {object}\r\n * @default {}\r\n */\r\n Object.defineProperty(this, \"ctx\", {\r\n get: function() {\r\n return _ctx;\r\n },\r\n set: function(value) {\r\n if (value instanceof ContextLayer) {\r\n _ctx = value;\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * @name path\r\n * @type {array}\r\n * @default []\r\n */\r\n Object.defineProperty(this, \"path\", {\r\n get: function() {\r\n return _ctx.path;\r\n },\r\n set: function(value) {\r\n _ctx.path = value;\r\n }\r\n });\r\n\r\n /**\r\n * @name ctxStack\r\n * @type {array}\r\n * @default []\r\n */\r\n var _ctxStack = [];\r\n Object.defineProperty(this, \"ctxStack\", {\r\n get: function() {\r\n return _ctxStack;\r\n },\r\n set: function(value) {\r\n _ctxStack = value;\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the color, gradient, or pattern used to fill the drawing\r\n *\r\n * @name fillStyle\r\n * @default #000000\r\n * @property {(color|gradient|pattern)} value The color of the drawing. Default value is #000000
    \r\n * A gradient object (linear or radial) used to fill the drawing (not supported by context2d)
    \r\n * A pattern object to use to fill the drawing (not supported by context2d)\r\n */\r\n Object.defineProperty(this, \"fillStyle\", {\r\n get: function() {\r\n return this.ctx.fillStyle;\r\n },\r\n set: function(value) {\r\n var rgba;\r\n rgba = getRGBA(value);\r\n\r\n this.ctx.fillStyle = rgba.style;\r\n this.ctx.isFillTransparent = rgba.a === 0;\r\n this.ctx.fillOpacity = rgba.a;\r\n\r\n this.pdf.setFillColor(rgba.r, rgba.g, rgba.b, { a: rgba.a });\r\n this.pdf.setTextColor(rgba.r, rgba.g, rgba.b, { a: rgba.a });\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the color, gradient, or pattern used for strokes\r\n *\r\n * @name strokeStyle\r\n * @default #000000\r\n * @property {color} color A CSS color value that indicates the stroke color of the drawing. Default value is #000000 (not supported by context2d)\r\n * @property {gradient} gradient A gradient object (linear or radial) used to create a gradient stroke (not supported by context2d)\r\n * @property {pattern} pattern A pattern object used to create a pattern stroke (not supported by context2d)\r\n */\r\n Object.defineProperty(this, \"strokeStyle\", {\r\n get: function() {\r\n return this.ctx.strokeStyle;\r\n },\r\n set: function(value) {\r\n var rgba = getRGBA(value);\r\n\r\n this.ctx.strokeStyle = rgba.style;\r\n this.ctx.isStrokeTransparent = rgba.a === 0;\r\n this.ctx.strokeOpacity = rgba.a;\r\n\r\n if (rgba.a === 0) {\r\n this.pdf.setDrawColor(255, 255, 255);\r\n } else if (rgba.a === 1) {\r\n this.pdf.setDrawColor(rgba.r, rgba.g, rgba.b);\r\n } else {\r\n this.pdf.setDrawColor(rgba.r, rgba.g, rgba.b);\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the style of the end caps for a line\r\n *\r\n * @name lineCap\r\n * @default butt\r\n * @property {(butt|round|square)} lineCap butt A flat edge is added to each end of the line
    \r\n * round A rounded end cap is added to each end of the line
    \r\n * square A square end cap is added to each end of the line
    \r\n */\r\n Object.defineProperty(this, \"lineCap\", {\r\n get: function() {\r\n return this.ctx.lineCap;\r\n },\r\n set: function(value) {\r\n if ([\"butt\", \"round\", \"square\"].indexOf(value) !== -1) {\r\n this.ctx.lineCap = value;\r\n this.pdf.setLineCap(value);\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the current line width\r\n *\r\n * @name lineWidth\r\n * @default 1\r\n * @property {number} lineWidth The current line width, in pixels\r\n */\r\n Object.defineProperty(this, \"lineWidth\", {\r\n get: function() {\r\n return this.ctx.lineWidth;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n this.ctx.lineWidth = value;\r\n this.pdf.setLineWidth(value);\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * Sets or returns the type of corner created, when two lines meet\r\n */\r\n Object.defineProperty(this, \"lineJoin\", {\r\n get: function() {\r\n return this.ctx.lineJoin;\r\n },\r\n set: function(value) {\r\n if ([\"bevel\", \"round\", \"miter\"].indexOf(value) !== -1) {\r\n this.ctx.lineJoin = value;\r\n this.pdf.setLineJoin(value);\r\n }\r\n }\r\n });\r\n\r\n /**\r\n * A number specifying the miter limit ratio in coordinate space units. Zero, negative, Infinity, and NaN values are ignored. The default value is 10.0.\r\n *\r\n * @name miterLimit\r\n * @default 10\r\n */\r\n Object.defineProperty(this, \"miterLimit\", {\r\n get: function() {\r\n return this.ctx.miterLimit;\r\n },\r\n set: function(value) {\r\n if (!isNaN(value)) {\r\n this.ctx.miterLimit = value;\r\n this.pdf.setMiterLimit(value);\r\n }\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"textBaseline\", {\r\n get: function() {\r\n return this.ctx.textBaseline;\r\n },\r\n set: function(value) {\r\n this.ctx.textBaseline = value;\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"textAlign\", {\r\n get: function() {\r\n return this.ctx.textAlign;\r\n },\r\n set: function(value) {\r\n if ([\"right\", \"end\", \"center\", \"left\", \"start\"].indexOf(value) !== -1) {\r\n this.ctx.textAlign = value;\r\n }\r\n }\r\n });\r\n\r\n var _fontFaceMap = null;\r\n\r\n function getFontFaceMap(pdf, fontFaces) {\r\n if (_fontFaceMap === null) {\r\n var fontMap = pdf.getFontList();\r\n\r\n var convertedFontFaces = convertToFontFaces(fontMap);\r\n\r\n _fontFaceMap = buildFontFaceMap(convertedFontFaces.concat(fontFaces));\r\n }\r\n\r\n return _fontFaceMap;\r\n }\r\n\r\n function convertToFontFaces(fontMap) {\r\n var fontFaces = [];\r\n\r\n Object.keys(fontMap).forEach(function(family) {\r\n var styles = fontMap[family];\r\n\r\n styles.forEach(function(style) {\r\n var fontFace = null;\r\n\r\n switch (style) {\r\n case \"bold\":\r\n fontFace = {\r\n family: family,\r\n weight: \"bold\"\r\n };\r\n break;\r\n\r\n case \"italic\":\r\n fontFace = {\r\n family: family,\r\n style: \"italic\"\r\n };\r\n break;\r\n\r\n case \"bolditalic\":\r\n fontFace = {\r\n family: family,\r\n weight: \"bold\",\r\n style: \"italic\"\r\n };\r\n break;\r\n\r\n case \"\":\r\n case \"normal\":\r\n fontFace = {\r\n family: family\r\n };\r\n break;\r\n }\r\n\r\n // If font-face is still null here, it is a font with some styling we don't recognize and\r\n // cannot map or it is a font added via the fontFaces option of .html().\r\n if (fontFace !== null) {\r\n fontFace.ref = {\r\n name: family,\r\n style: style\r\n };\r\n\r\n fontFaces.push(fontFace);\r\n }\r\n });\r\n });\r\n\r\n return fontFaces;\r\n }\r\n\r\n var _fontFaces = null;\r\n /**\r\n * A map of available font-faces, as passed in the options of\r\n * .html(). If set a limited implementation of the font style matching\r\n * algorithm defined by https://www.w3.org/TR/css-fonts-3/#font-matching-algorithm\r\n * will be used. If not set it will fallback to previous behavior.\r\n */\r\n\r\n Object.defineProperty(this, \"fontFaces\", {\r\n get: function() {\r\n return _fontFaces;\r\n },\r\n set: function(value) {\r\n _fontFaceMap = null;\r\n _fontFaces = value;\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"font\", {\r\n get: function() {\r\n return this.ctx.font;\r\n },\r\n set: function(value) {\r\n this.ctx.font = value;\r\n var rx, matches;\r\n\r\n //source: https://stackoverflow.com/a/10136041\r\n // eslint-disable-next-line no-useless-escape\r\n rx = /^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))(?:\\s*\\/\\s*(normal|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])))?\\s*([-_,\\\"\\'\\sa-z]+?)\\s*$/i;\r\n matches = rx.exec(value);\r\n if (matches !== null) {\r\n var fontStyle = matches[1];\r\n var fontVariant = matches[2];\r\n var fontWeight = matches[3];\r\n var fontSize = matches[4];\r\n var lineHeight = matches[5];\r\n var fontFamily = matches[6];\r\n } else {\r\n return;\r\n }\r\n var rxFontSize = /^([.\\d]+)((?:%|in|[cem]m|ex|p[ctx]))$/i;\r\n var fontSizeUnit = rxFontSize.exec(fontSize)[2];\r\n\r\n if (\"px\" === fontSizeUnit) {\r\n fontSize = Math.floor(\r\n parseFloat(fontSize) * this.pdf.internal.scaleFactor\r\n );\r\n } else if (\"em\" === fontSizeUnit) {\r\n fontSize = Math.floor(parseFloat(fontSize) * this.pdf.getFontSize());\r\n } else {\r\n fontSize = Math.floor(\r\n parseFloat(fontSize) * this.pdf.internal.scaleFactor\r\n );\r\n }\r\n\r\n this.pdf.setFontSize(fontSize);\r\n var parts = parseFontFamily(fontFamily);\r\n\r\n if (this.fontFaces) {\r\n var fontFaceMap = getFontFaceMap(this.pdf, this.fontFaces);\r\n\r\n var rules = parts.map(function(ff) {\r\n return {\r\n family: ff,\r\n stretch: \"normal\", // TODO: Extract font-stretch from font rule (perhaps write proper parser for it?)\r\n weight: fontWeight,\r\n style: fontStyle\r\n };\r\n });\r\n\r\n var font = resolveFontFace(fontFaceMap, rules);\r\n this.pdf.setFont(font.ref.name, font.ref.style);\r\n return;\r\n }\r\n\r\n var style = \"\";\r\n if (\r\n fontWeight === \"bold\" ||\r\n parseInt(fontWeight, 10) >= 700 ||\r\n fontStyle === \"bold\"\r\n ) {\r\n style = \"bold\";\r\n }\r\n\r\n if (fontStyle === \"italic\") {\r\n style += \"italic\";\r\n }\r\n\r\n if (style.length === 0) {\r\n style = \"normal\";\r\n }\r\n var jsPdfFontName = \"\";\r\n\r\n var fallbackFonts = {\r\n arial: \"Helvetica\",\r\n Arial: \"Helvetica\",\r\n verdana: \"Helvetica\",\r\n Verdana: \"Helvetica\",\r\n helvetica: \"Helvetica\",\r\n Helvetica: \"Helvetica\",\r\n \"sans-serif\": \"Helvetica\",\r\n fixed: \"Courier\",\r\n monospace: \"Courier\",\r\n terminal: \"Courier\",\r\n cursive: \"Times\",\r\n fantasy: \"Times\",\r\n serif: \"Times\"\r\n };\r\n\r\n for (var i = 0; i < parts.length; i++) {\r\n if (\r\n this.pdf.internal.getFont(parts[i], style, {\r\n noFallback: true,\r\n disableWarning: true\r\n }) !== undefined\r\n ) {\r\n jsPdfFontName = parts[i];\r\n break;\r\n } else if (\r\n style === \"bolditalic\" &&\r\n this.pdf.internal.getFont(parts[i], \"bold\", {\r\n noFallback: true,\r\n disableWarning: true\r\n }) !== undefined\r\n ) {\r\n jsPdfFontName = parts[i];\r\n style = \"bold\";\r\n } else if (\r\n this.pdf.internal.getFont(parts[i], \"normal\", {\r\n noFallback: true,\r\n disableWarning: true\r\n }) !== undefined\r\n ) {\r\n jsPdfFontName = parts[i];\r\n style = \"normal\";\r\n break;\r\n }\r\n }\r\n if (jsPdfFontName === \"\") {\r\n for (var j = 0; j < parts.length; j++) {\r\n if (fallbackFonts[parts[j]]) {\r\n jsPdfFontName = fallbackFonts[parts[j]];\r\n break;\r\n }\r\n }\r\n }\r\n jsPdfFontName = jsPdfFontName === \"\" ? \"Times\" : jsPdfFontName;\r\n this.pdf.setFont(jsPdfFontName, style);\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"globalCompositeOperation\", {\r\n get: function() {\r\n return this.ctx.globalCompositeOperation;\r\n },\r\n set: function(value) {\r\n this.ctx.globalCompositeOperation = value;\r\n }\r\n });\r\n\r\n Object.defineProperty(this, \"globalAlpha\", {\r\n get: function() {\r\n return this.ctx.globalAlpha;\r\n },\r\n set: function(value) {\r\n this.ctx.globalAlpha = value;\r\n }\r\n });\r\n\r\n /**\r\n * A float specifying the amount of the line dash offset. The default value is 0.0.\r\n *\r\n * @name lineDashOffset\r\n * @default 0.0\r\n */\r\n Object.defineProperty(this, \"lineDashOffset\", {\r\n get: function() {\r\n return this.ctx.lineDashOffset;\r\n },\r\n set: function(value) {\r\n this.ctx.lineDashOffset = value;\r\n setLineDash.call(this);\r\n }\r\n });\r\n\r\n // Not HTML API\r\n Object.defineProperty(this, \"lineDash\", {\r\n get: function() {\r\n return this.ctx.lineDash;\r\n },\r\n set: function(value) {\r\n this.ctx.lineDash = value;\r\n setLineDash.call(this);\r\n }\r\n });\r\n\r\n // Not HTML API\r\n Object.defineProperty(this, \"ignoreClearRect\", {\r\n get: function() {\r\n return this.ctx.ignoreClearRect;\r\n },\r\n set: function(value) {\r\n this.ctx.ignoreClearRect = Boolean(value);\r\n }\r\n });\r\n };\r\n\r\n /**\r\n * Sets the line dash pattern used when stroking lines.\r\n * @name setLineDash\r\n * @function\r\n * @description It uses an array of values that specify alternating lengths of lines and gaps which describe the pattern.\r\n */\r\n Context2D.prototype.setLineDash = function(dashArray) {\r\n this.lineDash = dashArray;\r\n };\r\n\r\n /**\r\n * gets the current line dash pattern.\r\n * @name getLineDash\r\n * @function\r\n * @returns {Array} An Array of numbers that specify distances to alternately draw a line and a gap (in coordinate space units). If the number, when setting the elements, is odd, the elements of the array get copied and concatenated. For example, setting the line dash to [5, 15, 25] will result in getting back [5, 15, 25, 5, 15, 25].\r\n */\r\n Context2D.prototype.getLineDash = function() {\r\n if (this.lineDash.length % 2) {\r\n // https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/getLineDash#return_value\r\n return this.lineDash.concat(this.lineDash);\r\n } else {\r\n // The copied value is returned to prevent contamination from outside.\r\n return this.lineDash.slice();\r\n }\r\n };\r\n\r\n Context2D.prototype.fill = function() {\r\n pathPreProcess.call(this, \"fill\", false);\r\n };\r\n\r\n /**\r\n * Actually draws the path you have defined\r\n *\r\n * @name stroke\r\n * @function\r\n * @description The stroke() method actually draws the path you have defined with all those moveTo() and lineTo() methods. The default color is black.\r\n */\r\n Context2D.prototype.stroke = function() {\r\n pathPreProcess.call(this, \"stroke\", false);\r\n };\r\n\r\n /**\r\n * Begins a path, or resets the current\r\n *\r\n * @name beginPath\r\n * @function\r\n * @description The beginPath() method begins a path, or resets the current path.\r\n */\r\n Context2D.prototype.beginPath = function() {\r\n this.path = [\r\n {\r\n type: \"begin\"\r\n }\r\n ];\r\n };\r\n\r\n /**\r\n * Moves the path to the specified point in the canvas, without creating a line\r\n *\r\n * @name moveTo\r\n * @function\r\n * @param x {Number} The x-coordinate of where to move the path to\r\n * @param y {Number} The y-coordinate of where to move the path to\r\n */\r\n Context2D.prototype.moveTo = function(x, y) {\r\n if (isNaN(x) || isNaN(y)) {\r\n console.error(\"jsPDF.context2d.moveTo: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.moveTo\");\r\n }\r\n\r\n var pt = this.ctx.transform.applyToPoint(new Point(x, y));\r\n\r\n this.path.push({\r\n type: \"mt\",\r\n x: pt.x,\r\n y: pt.y\r\n });\r\n this.ctx.lastPoint = new Point(x, y);\r\n };\r\n\r\n /**\r\n * Creates a path from the current point back to the starting point\r\n *\r\n * @name closePath\r\n * @function\r\n * @description The closePath() method creates a path from the current point back to the starting point.\r\n */\r\n Context2D.prototype.closePath = function() {\r\n var pathBegin = new Point(0, 0);\r\n var i = 0;\r\n for (i = this.path.length - 1; i !== -1; i--) {\r\n if (this.path[i].type === \"begin\") {\r\n if (\r\n typeof this.path[i + 1] === \"object\" &&\r\n typeof this.path[i + 1].x === \"number\"\r\n ) {\r\n pathBegin = new Point(this.path[i + 1].x, this.path[i + 1].y);\r\n break;\r\n }\r\n }\r\n }\r\n this.path.push({\r\n type: \"close\"\r\n });\r\n this.ctx.lastPoint = new Point(pathBegin.x, pathBegin.y);\r\n };\r\n\r\n /**\r\n * Adds a new point and creates a line to that point from the last specified point in the canvas\r\n *\r\n * @name lineTo\r\n * @function\r\n * @param x The x-coordinate of where to create the line to\r\n * @param y The y-coordinate of where to create the line to\r\n * @description The lineTo() method adds a new point and creates a line TO that point FROM the last specified point in the canvas (this method does not draw the line).\r\n */\r\n Context2D.prototype.lineTo = function(x, y) {\r\n if (isNaN(x) || isNaN(y)) {\r\n console.error(\"jsPDF.context2d.lineTo: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.lineTo\");\r\n }\r\n\r\n var pt = this.ctx.transform.applyToPoint(new Point(x, y));\r\n\r\n this.path.push({\r\n type: \"lt\",\r\n x: pt.x,\r\n y: pt.y\r\n });\r\n this.ctx.lastPoint = new Point(pt.x, pt.y);\r\n };\r\n\r\n /**\r\n * Clips a region of any shape and size from the original canvas\r\n *\r\n * @name clip\r\n * @function\r\n * @description The clip() method clips a region of any shape and size from the original canvas.\r\n */\r\n Context2D.prototype.clip = function() {\r\n this.ctx.clip_path = JSON.parse(JSON.stringify(this.path));\r\n pathPreProcess.call(this, null, true);\r\n };\r\n\r\n /**\r\n * Creates a cubic Bézier curve\r\n *\r\n * @name quadraticCurveTo\r\n * @function\r\n * @param cpx {Number} The x-coordinate of the Bézier control point\r\n * @param cpy {Number} The y-coordinate of the Bézier control point\r\n * @param x {Number} The x-coordinate of the ending point\r\n * @param y {Number} The y-coordinate of the ending point\r\n * @description The quadraticCurveTo() method adds a point to the current path by using the specified control points that represent a quadratic Bézier curve.

    A quadratic Bézier curve requires two points. The first point is a control point that is used in the quadratic Bézier calculation and the second point is the ending point for the curve. The starting point for the curve is the last point in the current path. If a path does not exist, use the beginPath() and moveTo() methods to define a starting point.\r\n */\r\n Context2D.prototype.quadraticCurveTo = function(cpx, cpy, x, y) {\r\n if (isNaN(x) || isNaN(y) || isNaN(cpx) || isNaN(cpy)) {\r\n console.error(\r\n \"jsPDF.context2d.quadraticCurveTo: Invalid arguments\",\r\n arguments\r\n );\r\n throw new Error(\r\n \"Invalid arguments passed to jsPDF.context2d.quadraticCurveTo\"\r\n );\r\n }\r\n\r\n var pt0 = this.ctx.transform.applyToPoint(new Point(x, y));\r\n var pt1 = this.ctx.transform.applyToPoint(new Point(cpx, cpy));\r\n\r\n this.path.push({\r\n type: \"qct\",\r\n x1: pt1.x,\r\n y1: pt1.y,\r\n x: pt0.x,\r\n y: pt0.y\r\n });\r\n this.ctx.lastPoint = new Point(pt0.x, pt0.y);\r\n };\r\n\r\n /**\r\n * Creates a cubic Bézier curve\r\n *\r\n * @name bezierCurveTo\r\n * @function\r\n * @param cp1x {Number} The x-coordinate of the first Bézier control point\r\n * @param cp1y {Number} The y-coordinate of the first Bézier control point\r\n * @param cp2x {Number} The x-coordinate of the second Bézier control point\r\n * @param cp2y {Number} The y-coordinate of the second Bézier control point\r\n * @param x {Number} The x-coordinate of the ending point\r\n * @param y {Number} The y-coordinate of the ending point\r\n * @description The bezierCurveTo() method adds a point to the current path by using the specified control points that represent a cubic Bézier curve.

    A cubic bezier curve requires three points. The first two points are control points that are used in the cubic Bézier calculation and the last point is the ending point for the curve. The starting point for the curve is the last point in the current path. If a path does not exist, use the beginPath() and moveTo() methods to define a starting point.\r\n */\r\n Context2D.prototype.bezierCurveTo = function(cp1x, cp1y, cp2x, cp2y, x, y) {\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n isNaN(cp1x) ||\r\n isNaN(cp1y) ||\r\n isNaN(cp2x) ||\r\n isNaN(cp2y)\r\n ) {\r\n console.error(\r\n \"jsPDF.context2d.bezierCurveTo: Invalid arguments\",\r\n arguments\r\n );\r\n throw new Error(\r\n \"Invalid arguments passed to jsPDF.context2d.bezierCurveTo\"\r\n );\r\n }\r\n var pt0 = this.ctx.transform.applyToPoint(new Point(x, y));\r\n var pt1 = this.ctx.transform.applyToPoint(new Point(cp1x, cp1y));\r\n var pt2 = this.ctx.transform.applyToPoint(new Point(cp2x, cp2y));\r\n\r\n this.path.push({\r\n type: \"bct\",\r\n x1: pt1.x,\r\n y1: pt1.y,\r\n x2: pt2.x,\r\n y2: pt2.y,\r\n x: pt0.x,\r\n y: pt0.y\r\n });\r\n this.ctx.lastPoint = new Point(pt0.x, pt0.y);\r\n };\r\n\r\n /**\r\n * Creates an arc/curve (used to create circles, or parts of circles)\r\n *\r\n * @name arc\r\n * @function\r\n * @param x {Number} The x-coordinate of the center of the circle\r\n * @param y {Number} The y-coordinate of the center of the circle\r\n * @param radius {Number} The radius of the circle\r\n * @param startAngle {Number} The starting angle, in radians (0 is at the 3 o'clock position of the arc's circle)\r\n * @param endAngle {Number} The ending angle, in radians\r\n * @param counterclockwise {Boolean} Optional. Specifies whether the drawing should be counterclockwise or clockwise. False is default, and indicates clockwise, while true indicates counter-clockwise.\r\n * @description The arc() method creates an arc/curve (used to create circles, or parts of circles).\r\n */\r\n Context2D.prototype.arc = function(\r\n x,\r\n y,\r\n radius,\r\n startAngle,\r\n endAngle,\r\n counterclockwise\r\n ) {\r\n if (\r\n isNaN(x) ||\r\n isNaN(y) ||\r\n isNaN(radius) ||\r\n isNaN(startAngle) ||\r\n isNaN(endAngle)\r\n ) {\r\n console.error(\"jsPDF.context2d.arc: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.arc\");\r\n }\r\n counterclockwise = Boolean(counterclockwise);\r\n\r\n if (!this.ctx.transform.isIdentity) {\r\n var xpt = this.ctx.transform.applyToPoint(new Point(x, y));\r\n x = xpt.x;\r\n y = xpt.y;\r\n\r\n var x_radPt = this.ctx.transform.applyToPoint(new Point(0, radius));\r\n var x_radPt0 = this.ctx.transform.applyToPoint(new Point(0, 0));\r\n radius = Math.sqrt(\r\n Math.pow(x_radPt.x - x_radPt0.x, 2) +\r\n Math.pow(x_radPt.y - x_radPt0.y, 2)\r\n );\r\n }\r\n if (Math.abs(endAngle - startAngle) >= 2 * Math.PI) {\r\n startAngle = 0;\r\n endAngle = 2 * Math.PI;\r\n }\r\n\r\n this.path.push({\r\n type: \"arc\",\r\n x: x,\r\n y: y,\r\n radius: radius,\r\n startAngle: startAngle,\r\n endAngle: endAngle,\r\n counterclockwise: counterclockwise\r\n });\r\n // this.ctx.lastPoint(new Point(pt.x,pt.y));\r\n };\r\n\r\n /**\r\n * Creates an arc/curve between two tangents\r\n *\r\n * @name arcTo\r\n * @function\r\n * @param x1 {Number} The x-coordinate of the first tangent\r\n * @param y1 {Number} The y-coordinate of the first tangent\r\n * @param x2 {Number} The x-coordinate of the second tangent\r\n * @param y2 {Number} The y-coordinate of the second tangent\r\n * @param radius The radius of the arc\r\n * @description The arcTo() method creates an arc/curve between two tangents on the canvas.\r\n */\r\n // eslint-disable-next-line no-unused-vars\r\n Context2D.prototype.arcTo = function(x1, y1, x2, y2, radius) {\r\n throw new Error(\"arcTo not implemented.\");\r\n };\r\n\r\n /**\r\n * Creates a rectangle\r\n *\r\n * @name rect\r\n * @function\r\n * @param x {Number} The x-coordinate of the upper-left corner of the rectangle\r\n * @param y {Number} The y-coordinate of the upper-left corner of the rectangle\r\n * @param w {Number} The width of the rectangle, in pixels\r\n * @param h {Number} The height of the rectangle, in pixels\r\n * @description The rect() method creates a rectangle.\r\n */\r\n Context2D.prototype.rect = function(x, y, w, h) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h)) {\r\n console.error(\"jsPDF.context2d.rect: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.rect\");\r\n }\r\n this.moveTo(x, y);\r\n this.lineTo(x + w, y);\r\n this.lineTo(x + w, y + h);\r\n this.lineTo(x, y + h);\r\n this.lineTo(x, y);\r\n this.lineTo(x + w, y);\r\n this.lineTo(x, y);\r\n };\r\n\r\n /**\r\n * Draws a \"filled\" rectangle\r\n *\r\n * @name fillRect\r\n * @function\r\n * @param x {Number} The x-coordinate of the upper-left corner of the rectangle\r\n * @param y {Number} The y-coordinate of the upper-left corner of the rectangle\r\n * @param w {Number} The width of the rectangle, in pixels\r\n * @param h {Number} The height of the rectangle, in pixels\r\n * @description The fillRect() method draws a \"filled\" rectangle. The default color of the fill is black.\r\n */\r\n Context2D.prototype.fillRect = function(x, y, w, h) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h)) {\r\n console.error(\"jsPDF.context2d.fillRect: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.fillRect\");\r\n }\r\n if (isFillTransparent.call(this)) {\r\n return;\r\n }\r\n var tmp = {};\r\n if (this.lineCap !== \"butt\") {\r\n tmp.lineCap = this.lineCap;\r\n this.lineCap = \"butt\";\r\n }\r\n if (this.lineJoin !== \"miter\") {\r\n tmp.lineJoin = this.lineJoin;\r\n this.lineJoin = \"miter\";\r\n }\r\n\r\n this.beginPath();\r\n this.rect(x, y, w, h);\r\n this.fill();\r\n\r\n if (tmp.hasOwnProperty(\"lineCap\")) {\r\n this.lineCap = tmp.lineCap;\r\n }\r\n if (tmp.hasOwnProperty(\"lineJoin\")) {\r\n this.lineJoin = tmp.lineJoin;\r\n }\r\n };\r\n\r\n /**\r\n * Draws a rectangle (no fill)\r\n *\r\n * @name strokeRect\r\n * @function\r\n * @param x {Number} The x-coordinate of the upper-left corner of the rectangle\r\n * @param y {Number} The y-coordinate of the upper-left corner of the rectangle\r\n * @param w {Number} The width of the rectangle, in pixels\r\n * @param h {Number} The height of the rectangle, in pixels\r\n * @description The strokeRect() method draws a rectangle (no fill). The default color of the stroke is black.\r\n */\r\n Context2D.prototype.strokeRect = function strokeRect(x, y, w, h) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h)) {\r\n console.error(\"jsPDF.context2d.strokeRect: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.strokeRect\");\r\n }\r\n if (isStrokeTransparent.call(this)) {\r\n return;\r\n }\r\n this.beginPath();\r\n this.rect(x, y, w, h);\r\n this.stroke();\r\n };\r\n\r\n /**\r\n * Clears the specified pixels within a given rectangle\r\n *\r\n * @name clearRect\r\n * @function\r\n * @param x {Number} The x-coordinate of the upper-left corner of the rectangle\r\n * @param y {Number} The y-coordinate of the upper-left corner of the rectangle\r\n * @param w {Number} The width of the rectangle to clear, in pixels\r\n * @param h {Number} The height of the rectangle to clear, in pixels\r\n * @description We cannot clear PDF commands that were already written to PDF, so we use white instead.
    \r\n * As a special case, read a special flag (ignoreClearRect) and do nothing if it is set.\r\n * This results in all calls to clearRect() to do nothing, and keep the canvas transparent.\r\n * This flag is stored in the save/restore context and is managed the same way as other drawing states.\r\n *\r\n */\r\n Context2D.prototype.clearRect = function(x, y, w, h) {\r\n if (isNaN(x) || isNaN(y) || isNaN(w) || isNaN(h)) {\r\n console.error(\"jsPDF.context2d.clearRect: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.clearRect\");\r\n }\r\n if (this.ignoreClearRect) {\r\n return;\r\n }\r\n\r\n this.fillStyle = \"#ffffff\";\r\n this.fillRect(x, y, w, h);\r\n };\r\n\r\n /**\r\n * Saves the state of the current context\r\n *\r\n * @name save\r\n * @function\r\n */\r\n Context2D.prototype.save = function(doStackPush) {\r\n doStackPush = typeof doStackPush === \"boolean\" ? doStackPush : true;\r\n var tmpPageNumber = this.pdf.internal.getCurrentPageInfo().pageNumber;\r\n for (var i = 0; i < this.pdf.internal.getNumberOfPages(); i++) {\r\n this.pdf.setPage(i + 1);\r\n this.pdf.internal.out(\"q\");\r\n }\r\n this.pdf.setPage(tmpPageNumber);\r\n\r\n if (doStackPush) {\r\n this.ctx.fontSize = this.pdf.internal.getFontSize();\r\n var ctx = new ContextLayer(this.ctx);\r\n this.ctxStack.push(this.ctx);\r\n this.ctx = ctx;\r\n }\r\n };\r\n\r\n /**\r\n * Returns previously saved path state and attributes\r\n *\r\n * @name restore\r\n * @function\r\n */\r\n Context2D.prototype.restore = function(doStackPop) {\r\n doStackPop = typeof doStackPop === \"boolean\" ? doStackPop : true;\r\n var tmpPageNumber = this.pdf.internal.getCurrentPageInfo().pageNumber;\r\n for (var i = 0; i < this.pdf.internal.getNumberOfPages(); i++) {\r\n this.pdf.setPage(i + 1);\r\n this.pdf.internal.out(\"Q\");\r\n }\r\n this.pdf.setPage(tmpPageNumber);\r\n\r\n if (doStackPop && this.ctxStack.length !== 0) {\r\n this.ctx = this.ctxStack.pop();\r\n this.fillStyle = this.ctx.fillStyle;\r\n this.strokeStyle = this.ctx.strokeStyle;\r\n this.font = this.ctx.font;\r\n this.lineCap = this.ctx.lineCap;\r\n this.lineWidth = this.ctx.lineWidth;\r\n this.lineJoin = this.ctx.lineJoin;\r\n this.lineDash = this.ctx.lineDash;\r\n this.lineDashOffset = this.ctx.lineDashOffset;\r\n }\r\n };\r\n\r\n /**\r\n * @name toDataURL\r\n * @function\r\n */\r\n Context2D.prototype.toDataURL = function() {\r\n throw new Error(\"toDataUrl not implemented.\");\r\n };\r\n\r\n //helper functions\r\n\r\n /**\r\n * Get the decimal values of r, g, b and a\r\n *\r\n * @name getRGBA\r\n * @function\r\n * @private\r\n * @ignore\r\n */\r\n var getRGBA = function(style) {\r\n var rxRgb = /rgb\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*\\)/;\r\n var rxRgba = /rgba\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*([\\d.]+)\\s*\\)/;\r\n var rxTransparent = /transparent|rgba\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*0+\\s*\\)/;\r\n\r\n var r, g, b, a;\r\n\r\n if (style.isCanvasGradient === true) {\r\n style = style.getColor();\r\n }\r\n\r\n if (!style) {\r\n return { r: 0, g: 0, b: 0, a: 0, style: style };\r\n }\r\n\r\n if (rxTransparent.test(style)) {\r\n r = 0;\r\n g = 0;\r\n b = 0;\r\n a = 0;\r\n } else {\r\n var matches = rxRgb.exec(style);\r\n if (matches !== null) {\r\n r = parseInt(matches[1]);\r\n g = parseInt(matches[2]);\r\n b = parseInt(matches[3]);\r\n a = 1;\r\n } else {\r\n matches = rxRgba.exec(style);\r\n if (matches !== null) {\r\n r = parseInt(matches[1]);\r\n g = parseInt(matches[2]);\r\n b = parseInt(matches[3]);\r\n a = parseFloat(matches[4]);\r\n } else {\r\n a = 1;\r\n\r\n if (typeof style === \"string\" && style.charAt(0) !== \"#\") {\r\n var rgbColor = new RGBColor(style);\r\n if (rgbColor.ok) {\r\n style = rgbColor.toHex();\r\n } else {\r\n style = \"#000000\";\r\n }\r\n }\r\n\r\n if (style.length === 4) {\r\n r = style.substring(1, 2);\r\n r += r;\r\n g = style.substring(2, 3);\r\n g += g;\r\n b = style.substring(3, 4);\r\n b += b;\r\n } else {\r\n r = style.substring(1, 3);\r\n g = style.substring(3, 5);\r\n b = style.substring(5, 7);\r\n }\r\n r = parseInt(r, 16);\r\n g = parseInt(g, 16);\r\n b = parseInt(b, 16);\r\n }\r\n }\r\n }\r\n return { r: r, g: g, b: b, a: a, style: style };\r\n };\r\n\r\n /**\r\n * @name isFillTransparent\r\n * @function\r\n * @private\r\n * @ignore\r\n * @returns {Boolean}\r\n */\r\n var isFillTransparent = function() {\r\n return this.ctx.isFillTransparent || this.globalAlpha == 0;\r\n };\r\n\r\n /**\r\n * @name isStrokeTransparent\r\n * @function\r\n * @private\r\n * @ignore\r\n * @returns {Boolean}\r\n */\r\n var isStrokeTransparent = function() {\r\n return Boolean(this.ctx.isStrokeTransparent || this.globalAlpha == 0);\r\n };\r\n\r\n /**\r\n * Draws \"filled\" text on the canvas\r\n *\r\n * @name fillText\r\n * @function\r\n * @param text {String} Specifies the text that will be written on the canvas\r\n * @param x {Number} The x coordinate where to start painting the text (relative to the canvas)\r\n * @param y {Number} The y coordinate where to start painting the text (relative to the canvas)\r\n * @param maxWidth {Number} Optional. The maximum allowed width of the text, in pixels\r\n * @description The fillText() method draws filled text on the canvas. The default color of the text is black.\r\n */\r\n Context2D.prototype.fillText = function(text, x, y, maxWidth) {\r\n if (isNaN(x) || isNaN(y) || typeof text !== \"string\") {\r\n console.error(\"jsPDF.context2d.fillText: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.fillText\");\r\n }\r\n maxWidth = isNaN(maxWidth) ? undefined : maxWidth;\r\n if (isFillTransparent.call(this)) {\r\n return;\r\n }\r\n\r\n var degs = rad2deg(this.ctx.transform.rotation);\r\n\r\n // We only use X axis as scale hint\r\n var scale = this.ctx.transform.scaleX;\r\n\r\n putText.call(this, {\r\n text: text,\r\n x: x,\r\n y: y,\r\n scale: scale,\r\n angle: degs,\r\n align: this.textAlign,\r\n maxWidth: maxWidth\r\n });\r\n };\r\n\r\n /**\r\n * Draws text on the canvas (no fill)\r\n *\r\n * @name strokeText\r\n * @function\r\n * @param text {String} Specifies the text that will be written on the canvas\r\n * @param x {Number} The x coordinate where to start painting the text (relative to the canvas)\r\n * @param y {Number} The y coordinate where to start painting the text (relative to the canvas)\r\n * @param maxWidth {Number} Optional. The maximum allowed width of the text, in pixels\r\n * @description The strokeText() method draws text (with no fill) on the canvas. The default color of the text is black.\r\n */\r\n Context2D.prototype.strokeText = function(text, x, y, maxWidth) {\r\n if (isNaN(x) || isNaN(y) || typeof text !== \"string\") {\r\n console.error(\"jsPDF.context2d.strokeText: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.strokeText\");\r\n }\r\n if (isStrokeTransparent.call(this)) {\r\n return;\r\n }\r\n\r\n maxWidth = isNaN(maxWidth) ? undefined : maxWidth;\r\n\r\n var degs = rad2deg(this.ctx.transform.rotation);\r\n var scale = this.ctx.transform.scaleX;\r\n\r\n putText.call(this, {\r\n text: text,\r\n x: x,\r\n y: y,\r\n scale: scale,\r\n renderingMode: \"stroke\",\r\n angle: degs,\r\n align: this.textAlign,\r\n maxWidth: maxWidth\r\n });\r\n };\r\n\r\n /**\r\n * Returns an object that contains the width of the specified text\r\n *\r\n * @name measureText\r\n * @function\r\n * @param text {String} The text to be measured\r\n * @description The measureText() method returns an object that contains the width of the specified text, in pixels.\r\n * @returns {Number}\r\n */\r\n Context2D.prototype.measureText = function(text) {\r\n if (typeof text !== \"string\") {\r\n console.error(\r\n \"jsPDF.context2d.measureText: Invalid arguments\",\r\n arguments\r\n );\r\n throw new Error(\r\n \"Invalid arguments passed to jsPDF.context2d.measureText\"\r\n );\r\n }\r\n var pdf = this.pdf;\r\n var k = this.pdf.internal.scaleFactor;\r\n\r\n var fontSize = pdf.internal.getFontSize();\r\n var txtWidth =\r\n (pdf.getStringUnitWidth(text) * fontSize) / pdf.internal.scaleFactor;\r\n txtWidth *= Math.round(((k * 96) / 72) * 10000) / 10000;\r\n\r\n var TextMetrics = function(options) {\r\n options = options || {};\r\n var _width = options.width || 0;\r\n Object.defineProperty(this, \"width\", {\r\n get: function() {\r\n return _width;\r\n }\r\n });\r\n return this;\r\n };\r\n return new TextMetrics({ width: txtWidth });\r\n };\r\n\r\n //Transformations\r\n\r\n /**\r\n * Scales the current drawing bigger or smaller\r\n *\r\n * @name scale\r\n * @function\r\n * @param scalewidth {Number} Scales the width of the current drawing (1=100%, 0.5=50%, 2=200%, etc.)\r\n * @param scaleheight {Number} Scales the height of the current drawing (1=100%, 0.5=50%, 2=200%, etc.)\r\n * @description The scale() method scales the current drawing, bigger or smaller.\r\n */\r\n Context2D.prototype.scale = function(scalewidth, scaleheight) {\r\n if (isNaN(scalewidth) || isNaN(scaleheight)) {\r\n console.error(\"jsPDF.context2d.scale: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.scale\");\r\n }\r\n var matrix = new Matrix(scalewidth, 0.0, 0.0, scaleheight, 0.0, 0.0);\r\n this.ctx.transform = this.ctx.transform.multiply(matrix);\r\n };\r\n\r\n /**\r\n * Rotates the current drawing\r\n *\r\n * @name rotate\r\n * @function\r\n * @param angle {Number} The rotation angle, in radians.\r\n * @description To calculate from degrees to radians: degrees*Math.PI/180.
    \r\n * Example: to rotate 5 degrees, specify the following: 5*Math.PI/180\r\n */\r\n Context2D.prototype.rotate = function(angle) {\r\n if (isNaN(angle)) {\r\n console.error(\"jsPDF.context2d.rotate: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.rotate\");\r\n }\r\n var matrix = new Matrix(\r\n Math.cos(angle),\r\n Math.sin(angle),\r\n -Math.sin(angle),\r\n Math.cos(angle),\r\n 0.0,\r\n 0.0\r\n );\r\n this.ctx.transform = this.ctx.transform.multiply(matrix);\r\n };\r\n\r\n /**\r\n * Remaps the (0,0) position on the canvas\r\n *\r\n * @name translate\r\n * @function\r\n * @param x {Number} The value to add to horizontal (x) coordinates\r\n * @param y {Number} The value to add to vertical (y) coordinates\r\n * @description The translate() method remaps the (0,0) position on the canvas.\r\n */\r\n Context2D.prototype.translate = function(x, y) {\r\n if (isNaN(x) || isNaN(y)) {\r\n console.error(\"jsPDF.context2d.translate: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.translate\");\r\n }\r\n var matrix = new Matrix(1.0, 0.0, 0.0, 1.0, x, y);\r\n this.ctx.transform = this.ctx.transform.multiply(matrix);\r\n };\r\n\r\n /**\r\n * Replaces the current transformation matrix for the drawing\r\n *\r\n * @name transform\r\n * @function\r\n * @param a {Number} Horizontal scaling\r\n * @param b {Number} Horizontal skewing\r\n * @param c {Number} Vertical skewing\r\n * @param d {Number} Vertical scaling\r\n * @param e {Number} Horizontal moving\r\n * @param f {Number} Vertical moving\r\n * @description Each object on the canvas has a current transformation matrix.

    The transform() method replaces the current transformation matrix. It multiplies the current transformation matrix with the matrix described by:



    a c e

    b d f

    0 0 1

    In other words, the transform() method lets you scale, rotate, move, and skew the current context.\r\n */\r\n Context2D.prototype.transform = function(a, b, c, d, e, f) {\r\n if (isNaN(a) || isNaN(b) || isNaN(c) || isNaN(d) || isNaN(e) || isNaN(f)) {\r\n console.error(\"jsPDF.context2d.transform: Invalid arguments\", arguments);\r\n throw new Error(\"Invalid arguments passed to jsPDF.context2d.transform\");\r\n }\r\n var matrix = new Matrix(a, b, c, d, e, f);\r\n this.ctx.transform = this.ctx.transform.multiply(matrix);\r\n };\r\n\r\n /**\r\n * Resets the current transform to the identity matrix. Then runs transform()\r\n *\r\n * @name setTransform\r\n * @function\r\n * @param a {Number} Horizontal scaling\r\n * @param b {Number} Horizontal skewing\r\n * @param c {Number} Vertical skewing\r\n * @param d {Number} Vertical scaling\r\n * @param e {Number} Horizontal moving\r\n * @param f {Number} Vertical moving\r\n * @description Each object on the canvas has a current transformation matrix.

    The setTransform() method resets the current transform to the identity matrix, and then runs transform() with the same arguments.

    In other words, the setTransform() method lets you scale, rotate, move, and skew the current context.\r\n */\r\n Context2D.prototype.setTransform = function(a, b, c, d, e, f) {\r\n a = isNaN(a) ? 1 : a;\r\n b = isNaN(b) ? 0 : b;\r\n c = isNaN(c) ? 0 : c;\r\n d = isNaN(d) ? 1 : d;\r\n e = isNaN(e) ? 0 : e;\r\n f = isNaN(f) ? 0 : f;\r\n this.ctx.transform = new Matrix(a, b, c, d, e, f);\r\n };\r\n\r\n /**\r\n * Should only be used if pageWrapYEnabled is true\r\n *\r\n * @name setPageByYPosition\r\n * @function\r\n * @private\r\n * @ignore\r\n * @returns One-based Page Number\r\n */\r\n var setPageByYPosition = function(y) {\r\n if (this.pageWrapYEnabled) {\r\n this.lastBreak = 0;\r\n var manualBreaks = 0;\r\n var autoBreaks = 0;\r\n for (var i = 0; i < this.pageBreaks.length; i++) {\r\n if (y >= this.pageBreaks[i]) {\r\n manualBreaks++;\r\n if (this.lastBreak === 0) {\r\n autoBreaks++;\r\n }\r\n var spaceBetweenLastBreak = this.pageBreaks[i] - this.lastBreak;\r\n this.lastBreak = this.pageBreaks[i];\r\n var pagesSinceLastBreak = Math.floor(\r\n spaceBetweenLastBreak / this.pageWrapY\r\n );\r\n autoBreaks += pagesSinceLastBreak;\r\n }\r\n }\r\n if (this.lastBreak === 0) {\r\n var pagesSinceLastBreak = Math.floor(y / this.pageWrapY) + 1;\r\n autoBreaks += pagesSinceLastBreak;\r\n }\r\n return autoBreaks + manualBreaks;\r\n } else {\r\n return this.pdf.internal.getCurrentPageInfo().pageNumber;\r\n }\r\n };\r\n\r\n var hasMargins = function() {\r\n return (\r\n this.margin[0] > 0 ||\r\n this.margin[1] > 0 ||\r\n this.margin[2] > 0 ||\r\n this.margin[3] > 0\r\n );\r\n };\r\n\r\n /**\r\n * Draws an image, canvas, or video onto the canvas\r\n *\r\n * @function\r\n * @param img {} Specifies the image, canvas, or video element to use\r\n * @param sx {Number} Optional. The x coordinate where to start clipping\r\n * @param sy {Number} Optional. The y coordinate where to start clipping\r\n * @param swidth {Number} Optional. The width of the clipped image\r\n * @param sheight {Number} Optional. The height of the clipped image\r\n * @param x {Number} The x coordinate where to place the image on the canvas\r\n * @param y {Number} The y coordinate where to place the image on the canvas\r\n * @param width {Number} Optional. The width of the image to use (stretch or reduce the image)\r\n * @param height {Number} Optional. The height of the image to use (stretch or reduce the image)\r\n */\r\n Context2D.prototype.drawImage = function(\r\n img,\r\n sx,\r\n sy,\r\n swidth,\r\n sheight,\r\n x,\r\n y,\r\n width,\r\n height\r\n ) {\r\n var imageProperties = this.pdf.getImageProperties(img);\r\n var factorX = 1;\r\n var factorY = 1;\r\n var isClip;\r\n\r\n var clipFactorX = 1;\r\n var clipFactorY = 1;\r\n\r\n if (typeof swidth !== \"undefined\" && typeof width !== \"undefined\") {\r\n isClip = true;\r\n clipFactorX = width / swidth;\r\n clipFactorY = height / sheight;\r\n factorX = ((imageProperties.width / swidth) * width) / swidth;\r\n factorY = ((imageProperties.height / sheight) * height) / sheight;\r\n }\r\n\r\n //is sx and sy are set and x and y not, set x and y with values of sx and sy\r\n if (typeof x === \"undefined\") {\r\n x = sx;\r\n y = sy;\r\n sx = 0;\r\n sy = 0;\r\n }\r\n\r\n if (typeof swidth !== \"undefined\" && typeof width === \"undefined\") {\r\n width = swidth;\r\n height = sheight;\r\n }\r\n if (typeof swidth === \"undefined\" && typeof width === \"undefined\") {\r\n width = imageProperties.width;\r\n height = imageProperties.height;\r\n }\r\n\r\n var decomposedTransformationMatrix = this.ctx.transform.decompose();\r\n var angle = rad2deg(decomposedTransformationMatrix.rotate.shx);\r\n var matrix = new Matrix();\r\n matrix = matrix.multiply(decomposedTransformationMatrix.translate);\r\n matrix = matrix.multiply(decomposedTransformationMatrix.skew);\r\n matrix = matrix.multiply(decomposedTransformationMatrix.scale);\r\n var xRect = matrix.applyToRectangle(\r\n new Rectangle(\r\n x - sx * clipFactorX,\r\n y - sy * clipFactorY,\r\n swidth * factorX,\r\n sheight * factorY\r\n )\r\n );\r\n var pageArray = getPagesByPath.call(this, xRect);\r\n var pages = [];\r\n for (var ii = 0; ii < pageArray.length; ii += 1) {\r\n if (pages.indexOf(pageArray[ii]) === -1) {\r\n pages.push(pageArray[ii]);\r\n }\r\n }\r\n\r\n sortPages(pages);\r\n\r\n var clipPath;\r\n if (this.autoPaging) {\r\n var min = pages[0];\r\n var max = pages[pages.length - 1];\r\n for (var i = min; i < max + 1; i++) {\r\n this.pdf.setPage(i);\r\n\r\n var pageWidthMinusMargins =\r\n this.pdf.internal.pageSize.width - this.margin[3] - this.margin[1];\r\n var topMargin = i === 1 ? this.posY + this.margin[0] : this.margin[0];\r\n var firstPageHeight =\r\n this.pdf.internal.pageSize.height -\r\n this.posY -\r\n this.margin[0] -\r\n this.margin[2];\r\n var pageHeightMinusMargins =\r\n this.pdf.internal.pageSize.height - this.margin[0] - this.margin[2];\r\n var previousPageHeightSum =\r\n i === 1 ? 0 : firstPageHeight + (i - 2) * pageHeightMinusMargins;\r\n\r\n if (this.ctx.clip_path.length !== 0) {\r\n var tmpPaths = this.path;\r\n clipPath = JSON.parse(JSON.stringify(this.ctx.clip_path));\r\n this.path = pathPositionRedo(\r\n clipPath,\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n );\r\n drawPaths.call(this, \"fill\", true);\r\n this.path = tmpPaths;\r\n }\r\n var tmpRect = JSON.parse(JSON.stringify(xRect));\r\n tmpRect = pathPositionRedo(\r\n [tmpRect],\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n )[0];\r\n\r\n const needsClipping = (i > min || i < max) && hasMargins.call(this);\r\n\r\n if (needsClipping) {\r\n this.pdf.saveGraphicsState();\r\n this.pdf\r\n .rect(\r\n this.margin[3],\r\n this.margin[0],\r\n pageWidthMinusMargins,\r\n pageHeightMinusMargins,\r\n null\r\n )\r\n .clip()\r\n .discardPath();\r\n }\r\n this.pdf.addImage(\r\n img,\r\n \"JPEG\",\r\n tmpRect.x,\r\n tmpRect.y,\r\n tmpRect.w,\r\n tmpRect.h,\r\n null,\r\n null,\r\n angle\r\n );\r\n if (needsClipping) {\r\n this.pdf.restoreGraphicsState();\r\n }\r\n }\r\n } else {\r\n this.pdf.addImage(\r\n img,\r\n \"JPEG\",\r\n xRect.x,\r\n xRect.y,\r\n xRect.w,\r\n xRect.h,\r\n null,\r\n null,\r\n angle\r\n );\r\n }\r\n };\r\n\r\n var getPagesByPath = function(path, pageWrapX, pageWrapY) {\r\n var result = [];\r\n pageWrapX = pageWrapX || this.pdf.internal.pageSize.width;\r\n pageWrapY =\r\n pageWrapY ||\r\n this.pdf.internal.pageSize.height - this.margin[0] - this.margin[2];\r\n var yOffset = this.posY + this.ctx.prevPageLastElemOffset;\r\n\r\n switch (path.type) {\r\n default:\r\n case \"mt\":\r\n case \"lt\":\r\n result.push(Math.floor((path.y + yOffset) / pageWrapY) + 1);\r\n break;\r\n case \"arc\":\r\n result.push(\r\n Math.floor((path.y + yOffset - path.radius) / pageWrapY) + 1\r\n );\r\n result.push(\r\n Math.floor((path.y + yOffset + path.radius) / pageWrapY) + 1\r\n );\r\n break;\r\n case \"qct\":\r\n var rectOfQuadraticCurve = getQuadraticCurveBoundary(\r\n this.ctx.lastPoint.x,\r\n this.ctx.lastPoint.y,\r\n path.x1,\r\n path.y1,\r\n path.x,\r\n path.y\r\n );\r\n result.push(\r\n Math.floor((rectOfQuadraticCurve.y + yOffset) / pageWrapY) + 1\r\n );\r\n result.push(\r\n Math.floor(\r\n (rectOfQuadraticCurve.y + rectOfQuadraticCurve.h + yOffset) /\r\n pageWrapY\r\n ) + 1\r\n );\r\n break;\r\n case \"bct\":\r\n var rectOfBezierCurve = getBezierCurveBoundary(\r\n this.ctx.lastPoint.x,\r\n this.ctx.lastPoint.y,\r\n path.x1,\r\n path.y1,\r\n path.x2,\r\n path.y2,\r\n path.x,\r\n path.y\r\n );\r\n result.push(\r\n Math.floor((rectOfBezierCurve.y + yOffset) / pageWrapY) + 1\r\n );\r\n result.push(\r\n Math.floor(\r\n (rectOfBezierCurve.y + rectOfBezierCurve.h + yOffset) / pageWrapY\r\n ) + 1\r\n );\r\n break;\r\n case \"rect\":\r\n result.push(Math.floor((path.y + yOffset) / pageWrapY) + 1);\r\n result.push(Math.floor((path.y + path.h + yOffset) / pageWrapY) + 1);\r\n }\r\n\r\n for (var i = 0; i < result.length; i += 1) {\r\n while (this.pdf.internal.getNumberOfPages() < result[i]) {\r\n addPage.call(this);\r\n }\r\n }\r\n return result;\r\n };\r\n\r\n var addPage = function() {\r\n var fillStyle = this.fillStyle;\r\n var strokeStyle = this.strokeStyle;\r\n var font = this.font;\r\n var lineCap = this.lineCap;\r\n var lineWidth = this.lineWidth;\r\n var lineJoin = this.lineJoin;\r\n this.pdf.addPage();\r\n this.fillStyle = fillStyle;\r\n this.strokeStyle = strokeStyle;\r\n this.font = font;\r\n this.lineCap = lineCap;\r\n this.lineWidth = lineWidth;\r\n this.lineJoin = lineJoin;\r\n };\r\n\r\n var pathPositionRedo = function(paths, x, y) {\r\n for (var i = 0; i < paths.length; i++) {\r\n switch (paths[i].type) {\r\n case \"bct\":\r\n paths[i].x2 += x;\r\n paths[i].y2 += y;\r\n case \"qct\":\r\n paths[i].x1 += x;\r\n paths[i].y1 += y;\r\n case \"mt\":\r\n case \"lt\":\r\n case \"arc\":\r\n default:\r\n paths[i].x += x;\r\n paths[i].y += y;\r\n }\r\n }\r\n return paths;\r\n };\r\n\r\n var sortPages = function(pages) {\r\n return pages.sort(function(a, b) {\r\n return a - b;\r\n });\r\n };\r\n\r\n var pathPreProcess = function(rule, isClip) {\r\n var fillStyle = this.fillStyle;\r\n var strokeStyle = this.strokeStyle;\r\n var lineCap = this.lineCap;\r\n var oldLineWidth = this.lineWidth;\r\n var lineWidth = Math.abs(oldLineWidth * this.ctx.transform.scaleX);\r\n var lineJoin = this.lineJoin;\r\n\r\n var origPath = JSON.parse(JSON.stringify(this.path));\r\n var xPath = JSON.parse(JSON.stringify(this.path));\r\n var clipPath;\r\n var tmpPath;\r\n var pages = [];\r\n\r\n for (var i = 0; i < xPath.length; i++) {\r\n if (typeof xPath[i].x !== \"undefined\") {\r\n var page = getPagesByPath.call(this, xPath[i]);\r\n\r\n for (var ii = 0; ii < page.length; ii += 1) {\r\n if (pages.indexOf(page[ii]) === -1) {\r\n pages.push(page[ii]);\r\n }\r\n }\r\n }\r\n }\r\n\r\n for (var j = 0; j < pages.length; j++) {\r\n while (this.pdf.internal.getNumberOfPages() < pages[j]) {\r\n addPage.call(this);\r\n }\r\n }\r\n sortPages(pages);\r\n\r\n if (this.autoPaging) {\r\n var min = pages[0];\r\n var max = pages[pages.length - 1];\r\n for (var k = min; k < max + 1; k++) {\r\n this.pdf.setPage(k);\r\n\r\n this.fillStyle = fillStyle;\r\n this.strokeStyle = strokeStyle;\r\n this.lineCap = lineCap;\r\n this.lineWidth = lineWidth;\r\n this.lineJoin = lineJoin;\r\n\r\n var pageWidthMinusMargins =\r\n this.pdf.internal.pageSize.width - this.margin[3] - this.margin[1];\r\n var topMargin = k === 1 ? this.posY + this.margin[0] : this.margin[0];\r\n var firstPageHeight =\r\n this.pdf.internal.pageSize.height -\r\n this.posY -\r\n this.margin[0] -\r\n this.margin[2];\r\n var pageHeightMinusMargins =\r\n this.pdf.internal.pageSize.height - this.margin[0] - this.margin[2];\r\n var previousPageHeightSum =\r\n k === 1 ? 0 : firstPageHeight + (k - 2) * pageHeightMinusMargins;\r\n\r\n if (this.ctx.clip_path.length !== 0) {\r\n var tmpPaths = this.path;\r\n clipPath = JSON.parse(JSON.stringify(this.ctx.clip_path));\r\n this.path = pathPositionRedo(\r\n clipPath,\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n );\r\n drawPaths.call(this, rule, true);\r\n this.path = tmpPaths;\r\n }\r\n tmpPath = JSON.parse(JSON.stringify(origPath));\r\n this.path = pathPositionRedo(\r\n tmpPath,\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n );\r\n if (isClip === false || k === 0) {\r\n const needsClipping = (k > min || k < max) && hasMargins.call(this);\r\n if (needsClipping) {\r\n this.pdf.saveGraphicsState();\r\n this.pdf\r\n .rect(\r\n this.margin[3],\r\n this.margin[0],\r\n pageWidthMinusMargins,\r\n pageHeightMinusMargins,\r\n null\r\n )\r\n .clip()\r\n .discardPath();\r\n }\r\n drawPaths.call(this, rule, isClip);\r\n if (needsClipping) {\r\n this.pdf.restoreGraphicsState();\r\n }\r\n }\r\n this.lineWidth = oldLineWidth;\r\n }\r\n } else {\r\n this.lineWidth = lineWidth;\r\n drawPaths.call(this, rule, isClip);\r\n this.lineWidth = oldLineWidth;\r\n }\r\n this.path = origPath;\r\n };\r\n\r\n /**\r\n * Processes the paths\r\n *\r\n * @function\r\n * @param rule {String}\r\n * @param isClip {Boolean}\r\n * @private\r\n * @ignore\r\n */\r\n var drawPaths = function(rule, isClip) {\r\n if (rule === \"stroke\" && !isClip && isStrokeTransparent.call(this)) {\r\n return;\r\n }\r\n\r\n if (rule !== \"stroke\" && !isClip && isFillTransparent.call(this)) {\r\n return;\r\n }\r\n\r\n var moves = [];\r\n\r\n //var alpha = (this.ctx.fillOpacity < 1) ? this.ctx.fillOpacity : this.ctx.globalAlpha;\r\n var delta;\r\n var xPath = this.path;\r\n for (var i = 0; i < xPath.length; i++) {\r\n var pt = xPath[i];\r\n\r\n switch (pt.type) {\r\n case \"begin\":\r\n moves.push({\r\n begin: true\r\n });\r\n break;\r\n\r\n case \"close\":\r\n moves.push({\r\n close: true\r\n });\r\n break;\r\n\r\n case \"mt\":\r\n moves.push({\r\n start: pt,\r\n deltas: [],\r\n abs: []\r\n });\r\n break;\r\n\r\n case \"lt\":\r\n var iii = moves.length;\r\n if (xPath[i - 1] && !isNaN(xPath[i - 1].x)) {\r\n delta = [pt.x - xPath[i - 1].x, pt.y - xPath[i - 1].y];\r\n if (iii > 0) {\r\n for (iii; iii >= 0; iii--) {\r\n if (\r\n moves[iii - 1].close !== true &&\r\n moves[iii - 1].begin !== true\r\n ) {\r\n moves[iii - 1].deltas.push(delta);\r\n moves[iii - 1].abs.push(pt);\r\n break;\r\n }\r\n }\r\n }\r\n }\r\n break;\r\n\r\n case \"bct\":\r\n delta = [\r\n pt.x1 - xPath[i - 1].x,\r\n pt.y1 - xPath[i - 1].y,\r\n pt.x2 - xPath[i - 1].x,\r\n pt.y2 - xPath[i - 1].y,\r\n pt.x - xPath[i - 1].x,\r\n pt.y - xPath[i - 1].y\r\n ];\r\n moves[moves.length - 1].deltas.push(delta);\r\n break;\r\n\r\n case \"qct\":\r\n var x1 = xPath[i - 1].x + (2.0 / 3.0) * (pt.x1 - xPath[i - 1].x);\r\n var y1 = xPath[i - 1].y + (2.0 / 3.0) * (pt.y1 - xPath[i - 1].y);\r\n var x2 = pt.x + (2.0 / 3.0) * (pt.x1 - pt.x);\r\n var y2 = pt.y + (2.0 / 3.0) * (pt.y1 - pt.y);\r\n var x3 = pt.x;\r\n var y3 = pt.y;\r\n delta = [\r\n x1 - xPath[i - 1].x,\r\n y1 - xPath[i - 1].y,\r\n x2 - xPath[i - 1].x,\r\n y2 - xPath[i - 1].y,\r\n x3 - xPath[i - 1].x,\r\n y3 - xPath[i - 1].y\r\n ];\r\n moves[moves.length - 1].deltas.push(delta);\r\n break;\r\n\r\n case \"arc\":\r\n moves.push({\r\n deltas: [],\r\n abs: [],\r\n arc: true\r\n });\r\n\r\n if (Array.isArray(moves[moves.length - 1].abs)) {\r\n moves[moves.length - 1].abs.push(pt);\r\n }\r\n break;\r\n }\r\n }\r\n var style;\r\n if (!isClip) {\r\n if (rule === \"stroke\") {\r\n style = \"stroke\";\r\n } else {\r\n style = \"fill\";\r\n }\r\n } else {\r\n style = null;\r\n }\r\n\r\n var began = false;\r\n for (var k = 0; k < moves.length; k++) {\r\n if (moves[k].arc) {\r\n var arcs = moves[k].abs;\r\n\r\n for (var ii = 0; ii < arcs.length; ii++) {\r\n var arc = arcs[ii];\r\n\r\n if (arc.type === \"arc\") {\r\n drawArc.call(\r\n this,\r\n arc.x,\r\n arc.y,\r\n arc.radius,\r\n arc.startAngle,\r\n arc.endAngle,\r\n arc.counterclockwise,\r\n undefined,\r\n isClip,\r\n !began\r\n );\r\n } else {\r\n drawLine.call(this, arc.x, arc.y);\r\n }\r\n began = true;\r\n }\r\n } else if (moves[k].close === true) {\r\n this.pdf.internal.out(\"h\");\r\n began = false;\r\n } else if (moves[k].begin !== true) {\r\n var x = moves[k].start.x;\r\n var y = moves[k].start.y;\r\n drawLines.call(this, moves[k].deltas, x, y);\r\n began = true;\r\n }\r\n }\r\n\r\n if (style) {\r\n putStyle.call(this, style);\r\n }\r\n if (isClip) {\r\n doClip.call(this);\r\n }\r\n };\r\n\r\n var getBaseline = function(y) {\r\n var height =\r\n this.pdf.internal.getFontSize() / this.pdf.internal.scaleFactor;\r\n var descent = height * (this.pdf.internal.getLineHeightFactor() - 1);\r\n switch (this.ctx.textBaseline) {\r\n case \"bottom\":\r\n return y - descent;\r\n case \"top\":\r\n return y + height - descent;\r\n case \"hanging\":\r\n return y + height - 2 * descent;\r\n case \"middle\":\r\n return y + height / 2 - descent;\r\n case \"ideographic\":\r\n // TODO not implemented\r\n return y;\r\n case \"alphabetic\":\r\n default:\r\n return y;\r\n }\r\n };\r\n\r\n var getTextBottom = function(yBaseLine) {\r\n var height =\r\n this.pdf.internal.getFontSize() / this.pdf.internal.scaleFactor;\r\n var descent = height * (this.pdf.internal.getLineHeightFactor() - 1);\r\n return yBaseLine + descent;\r\n };\r\n\r\n Context2D.prototype.createLinearGradient = function createLinearGradient() {\r\n var canvasGradient = function canvasGradient() {};\r\n\r\n canvasGradient.colorStops = [];\r\n canvasGradient.addColorStop = function(offset, color) {\r\n this.colorStops.push([offset, color]);\r\n };\r\n\r\n canvasGradient.getColor = function() {\r\n if (this.colorStops.length === 0) {\r\n return \"#000000\";\r\n }\r\n\r\n return this.colorStops[0][1];\r\n };\r\n\r\n canvasGradient.isCanvasGradient = true;\r\n return canvasGradient;\r\n };\r\n Context2D.prototype.createPattern = function createPattern() {\r\n return this.createLinearGradient();\r\n };\r\n Context2D.prototype.createRadialGradient = function createRadialGradient() {\r\n return this.createLinearGradient();\r\n };\r\n\r\n /**\r\n *\r\n * @param x Edge point X\r\n * @param y Edge point Y\r\n * @param r Radius\r\n * @param a1 start angle\r\n * @param a2 end angle\r\n * @param counterclockwise\r\n * @param style\r\n * @param isClip\r\n */\r\n var drawArc = function(\r\n x,\r\n y,\r\n r,\r\n a1,\r\n a2,\r\n counterclockwise,\r\n style,\r\n isClip,\r\n includeMove\r\n ) {\r\n // http://hansmuller-flex.blogspot.com/2011/10/more-about-approximating-circular-arcs.html\r\n var curves = createArc.call(this, r, a1, a2, counterclockwise);\r\n\r\n for (var i = 0; i < curves.length; i++) {\r\n var curve = curves[i];\r\n if (i === 0) {\r\n if (includeMove) {\r\n doMove.call(this, curve.x1 + x, curve.y1 + y);\r\n } else {\r\n drawLine.call(this, curve.x1 + x, curve.y1 + y);\r\n }\r\n }\r\n drawCurve.call(\r\n this,\r\n x,\r\n y,\r\n curve.x2,\r\n curve.y2,\r\n curve.x3,\r\n curve.y3,\r\n curve.x4,\r\n curve.y4\r\n );\r\n }\r\n\r\n if (!isClip) {\r\n putStyle.call(this, style);\r\n } else {\r\n doClip.call(this);\r\n }\r\n };\r\n\r\n var putStyle = function(style) {\r\n switch (style) {\r\n case \"stroke\":\r\n this.pdf.internal.out(\"S\");\r\n break;\r\n case \"fill\":\r\n this.pdf.internal.out(\"f\");\r\n break;\r\n }\r\n };\r\n\r\n var doClip = function() {\r\n this.pdf.clip();\r\n this.pdf.discardPath();\r\n };\r\n\r\n var doMove = function(x, y) {\r\n this.pdf.internal.out(\r\n getHorizontalCoordinateString(x) +\r\n \" \" +\r\n getVerticalCoordinateString(y) +\r\n \" m\"\r\n );\r\n };\r\n\r\n var putText = function(options) {\r\n var textAlign;\r\n switch (options.align) {\r\n case \"right\":\r\n case \"end\":\r\n textAlign = \"right\";\r\n break;\r\n case \"center\":\r\n textAlign = \"center\";\r\n break;\r\n case \"left\":\r\n case \"start\":\r\n default:\r\n textAlign = \"left\";\r\n break;\r\n }\r\n\r\n var textDimensions = this.pdf.getTextDimensions(options.text);\r\n var yBaseLine = getBaseline.call(this, options.y);\r\n var yBottom = getTextBottom.call(this, yBaseLine);\r\n var yTop = yBottom - textDimensions.h;\r\n\r\n var pt = this.ctx.transform.applyToPoint(new Point(options.x, yBaseLine));\r\n var decomposedTransformationMatrix = this.ctx.transform.decompose();\r\n var matrix = new Matrix();\r\n matrix = matrix.multiply(decomposedTransformationMatrix.translate);\r\n matrix = matrix.multiply(decomposedTransformationMatrix.skew);\r\n matrix = matrix.multiply(decomposedTransformationMatrix.scale);\r\n\r\n var baselineRect = this.ctx.transform.applyToRectangle(\r\n new Rectangle(options.x, yBaseLine, textDimensions.w, textDimensions.h)\r\n );\r\n var textBounds = matrix.applyToRectangle(\r\n new Rectangle(options.x, yTop, textDimensions.w, textDimensions.h)\r\n );\r\n var pageArray = getPagesByPath.call(this, textBounds);\r\n var pages = [];\r\n for (var ii = 0; ii < pageArray.length; ii += 1) {\r\n if (pages.indexOf(pageArray[ii]) === -1) {\r\n pages.push(pageArray[ii]);\r\n }\r\n }\r\n\r\n sortPages(pages);\r\n\r\n var clipPath, oldSize, oldLineWidth;\r\n if (this.autoPaging) {\r\n var min = pages[0];\r\n var max = pages[pages.length - 1];\r\n for (var i = min; i < max + 1; i++) {\r\n this.pdf.setPage(i);\r\n\r\n var topMargin = i === 1 ? this.posY + this.margin[0] : this.margin[0];\r\n var firstPageHeight =\r\n this.pdf.internal.pageSize.height -\r\n this.posY -\r\n this.margin[0] -\r\n this.margin[2];\r\n var pageHeightMinusBottomMargin =\r\n this.pdf.internal.pageSize.height - this.margin[2];\r\n var pageHeightMinusMargins =\r\n pageHeightMinusBottomMargin - this.margin[0];\r\n var pageWidthMinusRightMargin =\r\n this.pdf.internal.pageSize.width - this.margin[1];\r\n var pageWidthMinusMargins = pageWidthMinusRightMargin - this.margin[3];\r\n var previousPageHeightSum =\r\n i === 1 ? 0 : firstPageHeight + (i - 2) * pageHeightMinusMargins;\r\n\r\n if (this.ctx.clip_path.length !== 0) {\r\n var tmpPaths = this.path;\r\n clipPath = JSON.parse(JSON.stringify(this.ctx.clip_path));\r\n this.path = pathPositionRedo(\r\n clipPath,\r\n this.posX + this.margin[3],\r\n -1 * previousPageHeightSum + topMargin\r\n );\r\n drawPaths.call(this, \"fill\", true);\r\n this.path = tmpPaths;\r\n }\r\n var textBoundsOnPage = pathPositionRedo(\r\n [JSON.parse(JSON.stringify(textBounds))],\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum + topMargin + this.ctx.prevPageLastElemOffset\r\n )[0];\r\n\r\n if (options.scale >= 0.01) {\r\n oldSize = this.pdf.internal.getFontSize();\r\n this.pdf.setFontSize(oldSize * options.scale);\r\n oldLineWidth = this.lineWidth;\r\n this.lineWidth = oldLineWidth * options.scale;\r\n }\r\n\r\n var doSlice = this.autoPaging !== \"text\";\r\n\r\n if (\r\n doSlice ||\r\n textBoundsOnPage.y + textBoundsOnPage.h <= pageHeightMinusBottomMargin\r\n ) {\r\n if (\r\n doSlice ||\r\n (textBoundsOnPage.y >= topMargin &&\r\n textBoundsOnPage.x <= pageWidthMinusRightMargin)\r\n ) {\r\n var croppedText = doSlice\r\n ? options.text\r\n : this.pdf.splitTextToSize(\r\n options.text,\r\n options.maxWidth ||\r\n pageWidthMinusRightMargin - textBoundsOnPage.x\r\n )[0];\r\n var baseLineRectOnPage = pathPositionRedo(\r\n [JSON.parse(JSON.stringify(baselineRect))],\r\n this.posX + this.margin[3],\r\n -previousPageHeightSum +\r\n topMargin +\r\n this.ctx.prevPageLastElemOffset\r\n )[0];\r\n\r\n const needsClipping =\r\n doSlice && (i > min || i < max) && hasMargins.call(this);\r\n\r\n if (needsClipping) {\r\n this.pdf.saveGraphicsState();\r\n this.pdf\r\n .rect(\r\n this.margin[3],\r\n this.margin[0],\r\n pageWidthMinusMargins,\r\n pageHeightMinusMargins,\r\n null\r\n )\r\n .clip()\r\n .discardPath();\r\n }\r\n\r\n this.pdf.text(\r\n croppedText,\r\n baseLineRectOnPage.x,\r\n baseLineRectOnPage.y,\r\n {\r\n angle: options.angle,\r\n align: textAlign,\r\n renderingMode: options.renderingMode\r\n }\r\n );\r\n\r\n if (needsClipping) {\r\n this.pdf.restoreGraphicsState();\r\n }\r\n }\r\n } else {\r\n // This text is the last element of the page, but it got cut off due to the margin\r\n // so we render it in the next page\r\n\r\n if (textBoundsOnPage.y < pageHeightMinusBottomMargin) {\r\n // As a result, all other elements have their y offset increased\r\n this.ctx.prevPageLastElemOffset +=\r\n pageHeightMinusBottomMargin - textBoundsOnPage.y;\r\n }\r\n }\r\n\r\n if (options.scale >= 0.01) {\r\n this.pdf.setFontSize(oldSize);\r\n this.lineWidth = oldLineWidth;\r\n }\r\n }\r\n } else {\r\n if (options.scale >= 0.01) {\r\n oldSize = this.pdf.internal.getFontSize();\r\n this.pdf.setFontSize(oldSize * options.scale);\r\n oldLineWidth = this.lineWidth;\r\n this.lineWidth = oldLineWidth * options.scale;\r\n }\r\n this.pdf.text(options.text, pt.x + this.posX, pt.y + this.posY, {\r\n angle: options.angle,\r\n align: textAlign,\r\n renderingMode: options.renderingMode,\r\n maxWidth: options.maxWidth\r\n });\r\n\r\n if (options.scale >= 0.01) {\r\n this.pdf.setFontSize(oldSize);\r\n this.lineWidth = oldLineWidth;\r\n }\r\n }\r\n };\r\n\r\n var drawLine = function(x, y, prevX, prevY) {\r\n prevX = prevX || 0;\r\n prevY = prevY || 0;\r\n\r\n this.pdf.internal.out(\r\n getHorizontalCoordinateString(x + prevX) +\r\n \" \" +\r\n getVerticalCoordinateString(y + prevY) +\r\n \" l\"\r\n );\r\n };\r\n\r\n var drawLines = function(lines, x, y) {\r\n return this.pdf.lines(lines, x, y, null, null);\r\n };\r\n\r\n var drawCurve = function(x, y, x1, y1, x2, y2, x3, y3) {\r\n this.pdf.internal.out(\r\n [\r\n f2(getHorizontalCoordinate(x1 + x)),\r\n f2(getVerticalCoordinate(y1 + y)),\r\n f2(getHorizontalCoordinate(x2 + x)),\r\n f2(getVerticalCoordinate(y2 + y)),\r\n f2(getHorizontalCoordinate(x3 + x)),\r\n f2(getVerticalCoordinate(y3 + y)),\r\n \"c\"\r\n ].join(\" \")\r\n );\r\n };\r\n\r\n /**\r\n * Return a array of objects that represent bezier curves which approximate the circular arc centered at the origin, from startAngle to endAngle (radians) with the specified radius.\r\n *\r\n * Each bezier curve is an object with four points, where x1,y1 and x4,y4 are the arc's end points and x2,y2 and x3,y3 are the cubic bezier's control points.\r\n * @function createArc\r\n */\r\n var createArc = function(radius, startAngle, endAngle, anticlockwise) {\r\n var EPSILON = 0.00001; // Roughly 1/1000th of a degree, see below\r\n var twoPi = Math.PI * 2;\r\n var halfPi = Math.PI / 2.0;\r\n\r\n while (startAngle > endAngle) {\r\n startAngle = startAngle - twoPi;\r\n }\r\n var totalAngle = Math.abs(endAngle - startAngle);\r\n if (totalAngle < twoPi) {\r\n if (anticlockwise) {\r\n totalAngle = twoPi - totalAngle;\r\n }\r\n }\r\n\r\n // Compute the sequence of arc curves, up to PI/2 at a time.\r\n var curves = [];\r\n\r\n // clockwise or counterclockwise\r\n var sgn = anticlockwise ? -1 : +1;\r\n\r\n var a1 = startAngle;\r\n for (; totalAngle > EPSILON; ) {\r\n var remain = sgn * Math.min(totalAngle, halfPi);\r\n var a2 = a1 + remain;\r\n curves.push(createSmallArc.call(this, radius, a1, a2));\r\n totalAngle -= Math.abs(a2 - a1);\r\n a1 = a2;\r\n }\r\n\r\n return curves;\r\n };\r\n\r\n /**\r\n * Cubic bezier approximation of a circular arc centered at the origin, from (radians) a1 to a2, where a2-a1 < pi/2. The arc's radius is r.\r\n *\r\n * Returns an object with four points, where x1,y1 and x4,y4 are the arc's end points and x2,y2 and x3,y3 are the cubic bezier's control points.\r\n *\r\n * This algorithm is based on the approach described in: A. Riškus, \"Approximation of a Cubic Bezier Curve by Circular Arcs and Vice Versa,\" Information Technology and Control, 35(4), 2006 pp. 371-378.\r\n */\r\n var createSmallArc = function(r, a1, a2) {\r\n var a = (a2 - a1) / 2.0;\r\n\r\n var x4 = r * Math.cos(a);\r\n var y4 = r * Math.sin(a);\r\n var x1 = x4;\r\n var y1 = -y4;\r\n\r\n var q1 = x1 * x1 + y1 * y1;\r\n var q2 = q1 + x1 * x4 + y1 * y4;\r\n var k2 = ((4 / 3) * (Math.sqrt(2 * q1 * q2) - q2)) / (x1 * y4 - y1 * x4);\r\n\r\n var x2 = x1 - k2 * y1;\r\n var y2 = y1 + k2 * x1;\r\n var x3 = x2;\r\n var y3 = -y2;\r\n\r\n var ar = a + a1;\r\n var cos_ar = Math.cos(ar);\r\n var sin_ar = Math.sin(ar);\r\n\r\n return {\r\n x1: r * Math.cos(a1),\r\n y1: r * Math.sin(a1),\r\n x2: x2 * cos_ar - y2 * sin_ar,\r\n y2: x2 * sin_ar + y2 * cos_ar,\r\n x3: x3 * cos_ar - y3 * sin_ar,\r\n y3: x3 * sin_ar + y3 * cos_ar,\r\n x4: r * Math.cos(a2),\r\n y4: r * Math.sin(a2)\r\n };\r\n };\r\n\r\n var rad2deg = function(value) {\r\n return (value * 180) / Math.PI;\r\n };\r\n\r\n var getQuadraticCurveBoundary = function(sx, sy, cpx, cpy, ex, ey) {\r\n var midX1 = sx + (cpx - sx) * 0.5;\r\n var midY1 = sy + (cpy - sy) * 0.5;\r\n var midX2 = ex + (cpx - ex) * 0.5;\r\n var midY2 = ey + (cpy - ey) * 0.5;\r\n var resultX1 = Math.min(sx, ex, midX1, midX2);\r\n var resultX2 = Math.max(sx, ex, midX1, midX2);\r\n var resultY1 = Math.min(sy, ey, midY1, midY2);\r\n var resultY2 = Math.max(sy, ey, midY1, midY2);\r\n return new Rectangle(\r\n resultX1,\r\n resultY1,\r\n resultX2 - resultX1,\r\n resultY2 - resultY1\r\n );\r\n };\r\n\r\n //De Casteljau algorithm\r\n var getBezierCurveBoundary = function(ax, ay, bx, by, cx, cy, dx, dy) {\r\n var tobx = bx - ax;\r\n var toby = by - ay;\r\n var tocx = cx - bx;\r\n var tocy = cy - by;\r\n var todx = dx - cx;\r\n var tody = dy - cy;\r\n var precision = 40;\r\n var d,\r\n i,\r\n px,\r\n py,\r\n qx,\r\n qy,\r\n rx,\r\n ry,\r\n tx,\r\n ty,\r\n sx,\r\n sy,\r\n x,\r\n y,\r\n minx,\r\n miny,\r\n maxx,\r\n maxy,\r\n toqx,\r\n toqy,\r\n torx,\r\n tory,\r\n totx,\r\n toty;\r\n for (i = 0; i < precision + 1; i++) {\r\n d = i / precision;\r\n px = ax + d * tobx;\r\n py = ay + d * toby;\r\n qx = bx + d * tocx;\r\n qy = by + d * tocy;\r\n rx = cx + d * todx;\r\n ry = cy + d * tody;\r\n toqx = qx - px;\r\n toqy = qy - py;\r\n torx = rx - qx;\r\n tory = ry - qy;\r\n\r\n sx = px + d * toqx;\r\n sy = py + d * toqy;\r\n tx = qx + d * torx;\r\n ty = qy + d * tory;\r\n totx = tx - sx;\r\n toty = ty - sy;\r\n\r\n x = sx + d * totx;\r\n y = sy + d * toty;\r\n if (i == 0) {\r\n minx = x;\r\n miny = y;\r\n maxx = x;\r\n maxy = y;\r\n } else {\r\n minx = Math.min(minx, x);\r\n miny = Math.min(miny, y);\r\n maxx = Math.max(maxx, x);\r\n maxy = Math.max(maxy, y);\r\n }\r\n }\r\n return new Rectangle(\r\n Math.round(minx),\r\n Math.round(miny),\r\n Math.round(maxx - minx),\r\n Math.round(maxy - miny)\r\n );\r\n };\r\n\r\n var getPrevLineDashValue = function(lineDash, lineDashOffset) {\r\n return JSON.stringify({\r\n lineDash: lineDash,\r\n lineDashOffset: lineDashOffset\r\n });\r\n };\r\n\r\n var setLineDash = function() {\r\n // Avoid unnecessary line dash declarations.\r\n if (\r\n !this.prevLineDash &&\r\n !this.ctx.lineDash.length &&\r\n !this.ctx.lineDashOffset\r\n ) {\r\n return;\r\n }\r\n\r\n // Avoid unnecessary line dash declarations.\r\n const nextLineDash = getPrevLineDashValue(\r\n this.ctx.lineDash,\r\n this.ctx.lineDashOffset\r\n );\r\n if (this.prevLineDash !== nextLineDash) {\r\n this.pdf.setLineDash(this.ctx.lineDash, this.ctx.lineDashOffset);\r\n this.prevLineDash = nextLineDash;\r\n }\r\n };\r\n})(jsPDF.API);\r\n","/**\n * @license\n * jsPDF filters PlugIn\n * Copyright (c) 2014 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { zlibSync } from \"../libs/fflate.js\";\n\n(function(jsPDFAPI) {\n \"use strict\";\n\n var ASCII85Encode = function(a) {\n var b, c, d, e, f, g, h, i, j, k;\n // eslint-disable-next-line no-control-regex\n for (\n !/[^\\x00-\\xFF]/.test(a),\n b = \"\\x00\\x00\\x00\\x00\".slice(a.length % 4 || 4),\n a += b,\n c = [],\n d = 0,\n e = a.length;\n e > d;\n d += 4\n )\n (f =\n (a.charCodeAt(d) << 24) +\n (a.charCodeAt(d + 1) << 16) +\n (a.charCodeAt(d + 2) << 8) +\n a.charCodeAt(d + 3)),\n 0 !== f\n ? ((k = f % 85),\n (f = (f - k) / 85),\n (j = f % 85),\n (f = (f - j) / 85),\n (i = f % 85),\n (f = (f - i) / 85),\n (h = f % 85),\n (f = (f - h) / 85),\n (g = f % 85),\n c.push(g + 33, h + 33, i + 33, j + 33, k + 33))\n : c.push(122);\n return (\n (function(a, b) {\n for (var c = b; c > 0; c--) a.pop();\n })(c, b.length),\n String.fromCharCode.apply(String, c) + \"~>\"\n );\n };\n\n var ASCII85Decode = function(a) {\n var c,\n d,\n e,\n f,\n g,\n h = String,\n l = \"length\",\n w = 255,\n x = \"charCodeAt\",\n y = \"slice\",\n z = \"replace\";\n for (\n \"~>\" === a[y](-2),\n a = a[y](0, -2)\n [z](/\\s/g, \"\")\n [z](\"z\", \"!!!!!\"),\n c = \"uuuuu\"[y](a[l] % 5 || 5),\n a += c,\n e = [],\n f = 0,\n g = a[l];\n g > f;\n f += 5\n )\n (d =\n 52200625 * (a[x](f) - 33) +\n 614125 * (a[x](f + 1) - 33) +\n 7225 * (a[x](f + 2) - 33) +\n 85 * (a[x](f + 3) - 33) +\n (a[x](f + 4) - 33)),\n e.push(w & (d >> 24), w & (d >> 16), w & (d >> 8), w & d);\n return (\n (function(a, b) {\n for (var c = b; c > 0; c--) a.pop();\n })(e, c[l]),\n h.fromCharCode.apply(h, e)\n );\n };\n\n var ASCIIHexEncode = function(value) {\n return (\n value\n .split(\"\")\n .map(function(value) {\n return (\"0\" + value.charCodeAt().toString(16)).slice(-2);\n })\n .join(\"\") + \">\"\n );\n };\n\n var ASCIIHexDecode = function(value) {\n var regexCheckIfHex = new RegExp(/^([0-9A-Fa-f]{2})+$/);\n value = value.replace(/\\s/g, \"\");\n if (value.indexOf(\">\") !== -1) {\n value = value.substr(0, value.indexOf(\">\"));\n }\n if (value.length % 2) {\n value += \"0\";\n }\n if (regexCheckIfHex.test(value) === false) {\n return \"\";\n }\n var result = \"\";\n for (var i = 0; i < value.length; i += 2) {\n result += String.fromCharCode(\"0x\" + (value[i] + value[i + 1]));\n }\n return result;\n };\n /*\n var FlatePredictors = {\n None: 1,\n TIFF: 2,\n PNG_None: 10,\n PNG_Sub: 11,\n PNG_Up: 12,\n PNG_Average: 13,\n PNG_Paeth: 14,\n PNG_Optimum: 15\n };\n */\n\n var FlateEncode = function(data) {\n var arr = new Uint8Array(data.length);\n var i = data.length;\n while (i--) {\n arr[i] = data.charCodeAt(i);\n }\n arr = zlibSync(arr);\n data = arr.reduce(function(data, byte) {\n return data + String.fromCharCode(byte);\n }, \"\");\n return data;\n };\n\n jsPDFAPI.processDataByFilters = function(origData, filterChain) {\n \"use strict\";\n var i = 0;\n var data = origData || \"\";\n var reverseChain = [];\n filterChain = filterChain || [];\n\n if (typeof filterChain === \"string\") {\n filterChain = [filterChain];\n }\n\n for (i = 0; i < filterChain.length; i += 1) {\n switch (filterChain[i]) {\n case \"ASCII85Decode\":\n case \"/ASCII85Decode\":\n data = ASCII85Decode(data);\n reverseChain.push(\"/ASCII85Encode\");\n break;\n case \"ASCII85Encode\":\n case \"/ASCII85Encode\":\n data = ASCII85Encode(data);\n reverseChain.push(\"/ASCII85Decode\");\n break;\n case \"ASCIIHexDecode\":\n case \"/ASCIIHexDecode\":\n data = ASCIIHexDecode(data);\n reverseChain.push(\"/ASCIIHexEncode\");\n break;\n case \"ASCIIHexEncode\":\n case \"/ASCIIHexEncode\":\n data = ASCIIHexEncode(data);\n reverseChain.push(\"/ASCIIHexDecode\");\n break;\n case \"FlateEncode\":\n case \"/FlateEncode\":\n data = FlateEncode(data);\n reverseChain.push(\"/FlateDecode\");\n break;\n default:\n throw new Error(\n 'The filter: \"' + filterChain[i] + '\" is not implemented'\n );\n }\n }\n\n return { data: data, reverseChain: reverseChain.reverse().join(\" \") };\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2018 Erik Koopmans\n * Released under the MIT License.\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { normalizeFontFace } from \"../libs/fontFace.js\";\nimport { globalObject } from \"../libs/globalObject.js\";\n\n/**\n * jsPDF html PlugIn\n *\n * @name html\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n function loadHtml2Canvas() {\n return (function() {\n if (globalObject[\"html2canvas\"]) {\n return Promise.resolve(globalObject[\"html2canvas\"]);\n }\n\n return import(\"html2canvas\");\n\n })()\n .catch(function(e) {\n return Promise.reject(new Error(\"Could not load html2canvas: \" + e));\n })\n .then(function(html2canvas) {\n return html2canvas.default ? html2canvas.default : html2canvas;\n });\n }\n\n function loadDomPurify() {\n return (function() {\n if (globalObject[\"DOMPurify\"]) {\n return Promise.resolve(globalObject[\"DOMPurify\"]);\n }\n\n return import(\"dompurify\");\n\n })()\n .catch(function(e) {\n return Promise.reject(new Error(\"Could not load dompurify: \" + e));\n })\n .then(function(dompurify) {\n return dompurify.default ? dompurify.default : dompurify;\n });\n }\n\n /**\n * Determine the type of a variable/object.\n *\n * @private\n * @ignore\n */\n var objType = function(obj) {\n var type = typeof obj;\n if (type === \"undefined\") return \"undefined\";\n else if (type === \"string\" || obj instanceof String) return \"string\";\n else if (type === \"number\" || obj instanceof Number) return \"number\";\n else if (type === \"function\" || obj instanceof Function) return \"function\";\n else if (!!obj && obj.constructor === Array) return \"array\";\n else if (obj && obj.nodeType === 1) return \"element\";\n else if (type === \"object\") return \"object\";\n else return \"unknown\";\n };\n\n /**\n * Create an HTML element with optional className, innerHTML, and style.\n *\n * @private\n * @ignore\n */\n var createElement = function(tagName, opt) {\n var el = document.createElement(tagName);\n if (opt.className) el.className = opt.className;\n if (opt.innerHTML && opt.dompurify) {\n el.innerHTML = opt.dompurify.sanitize(opt.innerHTML);\n }\n for (var key in opt.style) {\n el.style[key] = opt.style[key];\n }\n return el;\n };\n\n /**\n * Deep-clone a node and preserve contents/properties.\n *\n * @private\n * @ignore\n */\n var cloneNode = function(node, javascriptEnabled) {\n // Recursively clone the node.\n var clone =\n node.nodeType === 3\n ? document.createTextNode(node.nodeValue)\n : node.cloneNode(false);\n for (var child = node.firstChild; child; child = child.nextSibling) {\n if (\n javascriptEnabled === true ||\n child.nodeType !== 1 ||\n child.nodeName !== \"SCRIPT\"\n ) {\n clone.appendChild(cloneNode(child, javascriptEnabled));\n }\n }\n\n if (node.nodeType === 1) {\n // Preserve contents/properties of special nodes.\n if (node.nodeName === \"CANVAS\") {\n clone.width = node.width;\n clone.height = node.height;\n clone.getContext(\"2d\").drawImage(node, 0, 0);\n } else if (node.nodeName === \"TEXTAREA\" || node.nodeName === \"SELECT\") {\n clone.value = node.value;\n }\n\n // Preserve the node's scroll position when it loads.\n clone.addEventListener(\n \"load\",\n function() {\n clone.scrollTop = node.scrollTop;\n clone.scrollLeft = node.scrollLeft;\n },\n true\n );\n }\n\n // Return the cloned node.\n return clone;\n };\n\n /* ----- CONSTRUCTOR ----- */\n\n var Worker = function Worker(opt) {\n // Create the root parent for the proto chain, and the starting Worker.\n var root = Object.assign(\n Worker.convert(Promise.resolve()),\n JSON.parse(JSON.stringify(Worker.template))\n );\n var self = Worker.convert(Promise.resolve(), root);\n\n // Set progress, optional settings, and return.\n self = self.setProgress(1, Worker, 1, [Worker]);\n self = self.set(opt);\n return self;\n };\n\n // Boilerplate for subclassing Promise.\n Worker.prototype = Object.create(Promise.prototype);\n Worker.prototype.constructor = Worker;\n\n // Converts/casts promises into Workers.\n Worker.convert = function convert(promise, inherit) {\n // Uses prototypal inheritance to receive changes made to ancestors' properties.\n promise.__proto__ = inherit || Worker.prototype;\n return promise;\n };\n\n Worker.template = {\n prop: {\n src: null,\n container: null,\n overlay: null,\n canvas: null,\n img: null,\n pdf: null,\n pageSize: null,\n callback: function() {}\n },\n progress: {\n val: 0,\n state: null,\n n: 0,\n stack: []\n },\n opt: {\n filename: \"file.pdf\",\n margin: [0, 0, 0, 0],\n enableLinks: true,\n x: 0,\n y: 0,\n html2canvas: {},\n jsPDF: {},\n backgroundColor: \"transparent\"\n }\n };\n\n /* ----- FROM / TO ----- */\n\n Worker.prototype.from = function from(src, type) {\n function getType(src) {\n switch (objType(src)) {\n case \"string\":\n return \"string\";\n case \"element\":\n return src.nodeName.toLowerCase() === \"canvas\" ? \"canvas\" : \"element\";\n default:\n return \"unknown\";\n }\n }\n\n return this.then(function from_main() {\n type = type || getType(src);\n switch (type) {\n case \"string\":\n return this.then(loadDomPurify).then(function(dompurify) {\n return this.set({\n src: createElement(\"div\", {\n innerHTML: src,\n dompurify: dompurify\n })\n });\n });\n case \"element\":\n return this.set({ src: src });\n case \"canvas\":\n return this.set({ canvas: src });\n case \"img\":\n return this.set({ img: src });\n default:\n return this.error(\"Unknown source type.\");\n }\n });\n };\n\n Worker.prototype.to = function to(target) {\n // Route the 'to' request to the appropriate method.\n switch (target) {\n case \"container\":\n return this.toContainer();\n case \"canvas\":\n return this.toCanvas();\n case \"img\":\n return this.toImg();\n case \"pdf\":\n return this.toPdf();\n default:\n return this.error(\"Invalid target.\");\n }\n };\n\n Worker.prototype.toContainer = function toContainer() {\n // Set up function prerequisites.\n var prereqs = [\n function checkSrc() {\n return (\n this.prop.src || this.error(\"Cannot duplicate - no source HTML.\")\n );\n },\n function checkPageSize() {\n return this.prop.pageSize || this.setPageSize();\n }\n ];\n return this.thenList(prereqs).then(function toContainer_main() {\n // Define the CSS styles for the container and its overlay parent.\n var overlayCSS = {\n position: \"fixed\",\n overflow: \"hidden\",\n zIndex: 1000,\n left: \"-100000px\",\n right: 0,\n bottom: 0,\n top: 0\n };\n var containerCSS = {\n position: \"relative\",\n display: \"inline-block\",\n width:\n (typeof this.opt.width === \"number\" &&\n !isNaN(this.opt.width) &&\n typeof this.opt.windowWidth === \"number\" &&\n !isNaN(this.opt.windowWidth)\n ? this.opt.windowWidth\n : Math.max(\n this.prop.src.clientWidth,\n this.prop.src.scrollWidth,\n this.prop.src.offsetWidth\n )) + \"px\",\n left: 0,\n right: 0,\n top: 0,\n margin: \"auto\",\n backgroundColor: this.opt.backgroundColor\n }; // Set the overlay to hidden (could be changed in the future to provide a print preview).\n\n var source = cloneNode(\n this.prop.src,\n this.opt.html2canvas.javascriptEnabled\n );\n\n if (source.tagName === \"BODY\") {\n containerCSS.height =\n Math.max(\n document.body.scrollHeight,\n document.body.offsetHeight,\n document.documentElement.clientHeight,\n document.documentElement.scrollHeight,\n document.documentElement.offsetHeight\n ) + \"px\";\n }\n\n this.prop.overlay = createElement(\"div\", {\n className: \"html2pdf__overlay\",\n style: overlayCSS\n });\n this.prop.container = createElement(\"div\", {\n className: \"html2pdf__container\",\n style: containerCSS\n });\n this.prop.container.appendChild(source);\n this.prop.container.firstChild.appendChild(\n createElement(\"div\", {\n style: {\n clear: \"both\",\n border: \"0 none transparent\",\n margin: 0,\n padding: 0,\n height: 0\n }\n })\n );\n this.prop.container.style.float = \"none\";\n this.prop.overlay.appendChild(this.prop.container);\n document.body.appendChild(this.prop.overlay);\n this.prop.container.firstChild.style.position = \"relative\";\n this.prop.container.height =\n Math.max(\n this.prop.container.firstChild.clientHeight,\n this.prop.container.firstChild.scrollHeight,\n this.prop.container.firstChild.offsetHeight\n ) + \"px\";\n });\n };\n\n Worker.prototype.toCanvas = function toCanvas() {\n // Set up function prerequisites.\n var prereqs = [\n function checkContainer() {\n return (\n document.body.contains(this.prop.container) || this.toContainer()\n );\n }\n ];\n\n // Fulfill prereqs then create the canvas.\n return this.thenList(prereqs)\n .then(loadHtml2Canvas)\n .then(function toCanvas_main(html2canvas) {\n // Handle old-fashioned 'onrendered' argument.\n var options = Object.assign({}, this.opt.html2canvas);\n delete options.onrendered;\n\n return html2canvas(this.prop.container, options);\n })\n .then(function toCanvas_post(canvas) {\n // Handle old-fashioned 'onrendered' argument.\n var onRendered = this.opt.html2canvas.onrendered || function() {};\n onRendered(canvas);\n\n this.prop.canvas = canvas;\n document.body.removeChild(this.prop.overlay);\n });\n };\n\n Worker.prototype.toContext2d = function toContext2d() {\n // Set up function prerequisites.\n var prereqs = [\n function checkContainer() {\n return (\n document.body.contains(this.prop.container) || this.toContainer()\n );\n }\n ];\n\n // Fulfill prereqs then create the canvas.\n return this.thenList(prereqs)\n .then(loadHtml2Canvas)\n .then(function toContext2d_main(html2canvas) {\n // Handle old-fashioned 'onrendered' argument.\n\n var pdf = this.opt.jsPDF;\n var fontFaces = this.opt.fontFaces;\n\n var scale =\n typeof this.opt.width === \"number\" &&\n !isNaN(this.opt.width) &&\n typeof this.opt.windowWidth === \"number\" &&\n !isNaN(this.opt.windowWidth)\n ? this.opt.width / this.opt.windowWidth\n : 1;\n\n var options = Object.assign(\n {\n async: true,\n allowTaint: true,\n scale: scale,\n scrollX: this.opt.scrollX || 0,\n scrollY: this.opt.scrollY || 0,\n backgroundColor: \"#ffffff\",\n imageTimeout: 15000,\n logging: true,\n proxy: null,\n removeContainer: true,\n foreignObjectRendering: false,\n useCORS: false\n },\n this.opt.html2canvas\n );\n delete options.onrendered;\n\n pdf.context2d.autoPaging =\n typeof this.opt.autoPaging === \"undefined\"\n ? true\n : this.opt.autoPaging;\n pdf.context2d.posX = this.opt.x;\n pdf.context2d.posY = this.opt.y;\n pdf.context2d.margin = this.opt.margin;\n pdf.context2d.fontFaces = fontFaces;\n\n if (fontFaces) {\n for (var i = 0; i < fontFaces.length; ++i) {\n var font = fontFaces[i];\n var src = font.src.find(function(src) {\n return src.format === \"truetype\";\n });\n\n if (src) {\n pdf.addFont(src.url, font.ref.name, font.ref.style);\n }\n }\n }\n\n options.windowHeight = options.windowHeight || 0;\n options.windowHeight =\n options.windowHeight == 0\n ? Math.max(\n this.prop.container.clientHeight,\n this.prop.container.scrollHeight,\n this.prop.container.offsetHeight\n )\n : options.windowHeight;\n\n pdf.context2d.save(true);\n return html2canvas(this.prop.container, options);\n })\n .then(function toContext2d_post(canvas) {\n this.opt.jsPDF.context2d.restore(true);\n\n // Handle old-fashioned 'onrendered' argument.\n var onRendered = this.opt.html2canvas.onrendered || function() {};\n onRendered(canvas);\n\n this.prop.canvas = canvas;\n document.body.removeChild(this.prop.overlay);\n });\n };\n\n Worker.prototype.toImg = function toImg() {\n // Set up function prerequisites.\n var prereqs = [\n function checkCanvas() {\n return this.prop.canvas || this.toCanvas();\n }\n ];\n\n // Fulfill prereqs then create the image.\n return this.thenList(prereqs).then(function toImg_main() {\n var imgData = this.prop.canvas.toDataURL(\n \"image/\" + this.opt.image.type,\n this.opt.image.quality\n );\n this.prop.img = document.createElement(\"img\");\n this.prop.img.src = imgData;\n });\n };\n\n Worker.prototype.toPdf = function toPdf() {\n // Set up function prerequisites.\n var prereqs = [\n function checkContext2d() {\n return this.toContext2d();\n }\n //function checkCanvas() { return this.prop.canvas || this.toCanvas(); }\n ];\n\n // Fulfill prereqs then create the image.\n return this.thenList(prereqs).then(function toPdf_main() {\n // Create local copies of frequently used properties.\n this.prop.pdf = this.prop.pdf || this.opt.jsPDF;\n });\n };\n\n /* ----- OUTPUT / SAVE ----- */\n\n Worker.prototype.output = function output(type, options, src) {\n // Redirect requests to the correct function (outputPdf / outputImg).\n src = src || \"pdf\";\n if (src.toLowerCase() === \"img\" || src.toLowerCase() === \"image\") {\n return this.outputImg(type, options);\n } else {\n return this.outputPdf(type, options);\n }\n };\n\n Worker.prototype.outputPdf = function outputPdf(type, options) {\n // Set up function prerequisites.\n var prereqs = [\n function checkPdf() {\n return this.prop.pdf || this.toPdf();\n }\n ];\n\n // Fulfill prereqs then perform the appropriate output.\n return this.thenList(prereqs).then(function outputPdf_main() {\n /* Currently implemented output types:\n * https://rawgit.com/MrRio/jsPDF/master/docs/jspdf.js.html#line992\n * save(options), arraybuffer, blob, bloburi/bloburl,\n * datauristring/dataurlstring, dataurlnewwindow, datauri/dataurl\n */\n return this.prop.pdf.output(type, options);\n });\n };\n\n Worker.prototype.outputImg = function outputImg(type) {\n // Set up function prerequisites.\n var prereqs = [\n function checkImg() {\n return this.prop.img || this.toImg();\n }\n ];\n\n // Fulfill prereqs then perform the appropriate output.\n return this.thenList(prereqs).then(function outputImg_main() {\n switch (type) {\n case undefined:\n case \"img\":\n return this.prop.img;\n case \"datauristring\":\n case \"dataurlstring\":\n return this.prop.img.src;\n case \"datauri\":\n case \"dataurl\":\n return (document.location.href = this.prop.img.src);\n default:\n throw 'Image output type \"' + type + '\" is not supported.';\n }\n });\n };\n\n Worker.prototype.save = function save(filename) {\n // Set up function prerequisites.\n var prereqs = [\n function checkPdf() {\n return this.prop.pdf || this.toPdf();\n }\n ];\n\n // Fulfill prereqs, update the filename (if provided), and save the PDF.\n return this.thenList(prereqs)\n .set(filename ? { filename: filename } : null)\n .then(function save_main() {\n this.prop.pdf.save(this.opt.filename);\n });\n };\n\n Worker.prototype.doCallback = function doCallback() {\n // Set up function prerequisites.\n var prereqs = [\n function checkPdf() {\n return this.prop.pdf || this.toPdf();\n }\n ];\n\n // Fulfill prereqs, update the filename (if provided), and save the PDF.\n return this.thenList(prereqs).then(function doCallback_main() {\n this.prop.callback(this.prop.pdf);\n });\n };\n\n /* ----- SET / GET ----- */\n\n Worker.prototype.set = function set(opt) {\n // TODO: Implement ordered pairs?\n\n // Silently ignore invalid or empty input.\n if (objType(opt) !== \"object\") {\n return this;\n }\n\n // Build an array of setter functions to queue.\n var fns = Object.keys(opt || {}).map(function(key) {\n if (key in Worker.template.prop) {\n // Set pre-defined properties.\n return function set_prop() {\n this.prop[key] = opt[key];\n };\n } else {\n switch (key) {\n case \"margin\":\n return this.setMargin.bind(this, opt.margin);\n case \"jsPDF\":\n return function set_jsPDF() {\n this.opt.jsPDF = opt.jsPDF;\n return this.setPageSize();\n };\n case \"pageSize\":\n return this.setPageSize.bind(this, opt.pageSize);\n default:\n // Set any other properties in opt.\n return function set_opt() {\n this.opt[key] = opt[key];\n };\n }\n }\n }, this);\n\n // Set properties within the promise chain.\n return this.then(function set_main() {\n return this.thenList(fns);\n });\n };\n\n Worker.prototype.get = function get(key, cbk) {\n return this.then(function get_main() {\n // Fetch the requested property, either as a predefined prop or in opt.\n var val = key in Worker.template.prop ? this.prop[key] : this.opt[key];\n return cbk ? cbk(val) : val;\n });\n };\n\n Worker.prototype.setMargin = function setMargin(margin) {\n return this.then(function setMargin_main() {\n // Parse the margin property.\n switch (objType(margin)) {\n case \"number\":\n margin = [margin, margin, margin, margin];\n // eslint-disable-next-line no-fallthrough\n case \"array\":\n if (margin.length === 2) {\n margin = [margin[0], margin[1], margin[0], margin[1]];\n }\n if (margin.length === 4) {\n break;\n }\n // eslint-disable-next-line no-fallthrough\n default:\n return this.error(\"Invalid margin array.\");\n }\n\n // Set the margin property, then update pageSize.\n this.opt.margin = margin;\n }).then(this.setPageSize);\n };\n\n Worker.prototype.setPageSize = function setPageSize(pageSize) {\n function toPx(val, k) {\n return Math.floor(((val * k) / 72) * 96);\n }\n\n return this.then(function setPageSize_main() {\n // Retrieve page-size based on jsPDF settings, if not explicitly provided.\n pageSize = pageSize || jsPDF.getPageSize(this.opt.jsPDF);\n\n // Add 'inner' field if not present.\n if (!pageSize.hasOwnProperty(\"inner\")) {\n pageSize.inner = {\n width: pageSize.width - this.opt.margin[1] - this.opt.margin[3],\n height: pageSize.height - this.opt.margin[0] - this.opt.margin[2]\n };\n pageSize.inner.px = {\n width: toPx(pageSize.inner.width, pageSize.k),\n height: toPx(pageSize.inner.height, pageSize.k)\n };\n pageSize.inner.ratio = pageSize.inner.height / pageSize.inner.width;\n }\n\n // Attach pageSize to this.\n this.prop.pageSize = pageSize;\n });\n };\n\n Worker.prototype.setProgress = function setProgress(val, state, n, stack) {\n // Immediately update all progress values.\n if (val != null) this.progress.val = val;\n if (state != null) this.progress.state = state;\n if (n != null) this.progress.n = n;\n if (stack != null) this.progress.stack = stack;\n this.progress.ratio = this.progress.val / this.progress.state;\n\n // Return this for command chaining.\n return this;\n };\n\n Worker.prototype.updateProgress = function updateProgress(\n val,\n state,\n n,\n stack\n ) {\n // Immediately update all progress values, using setProgress.\n return this.setProgress(\n val ? this.progress.val + val : null,\n state ? state : null,\n n ? this.progress.n + n : null,\n stack ? this.progress.stack.concat(stack) : null\n );\n };\n\n /* ----- PROMISE MAPPING ----- */\n\n Worker.prototype.then = function then(onFulfilled, onRejected) {\n // Wrap `this` for encapsulation.\n var self = this;\n\n return this.thenCore(onFulfilled, onRejected, function then_main(\n onFulfilled,\n onRejected\n ) {\n // Update progress while queuing, calling, and resolving `then`.\n self.updateProgress(null, null, 1, [onFulfilled]);\n return Promise.prototype.then\n .call(this, function then_pre(val) {\n self.updateProgress(null, onFulfilled);\n return val;\n })\n .then(onFulfilled, onRejected)\n .then(function then_post(val) {\n self.updateProgress(1);\n return val;\n });\n });\n };\n\n Worker.prototype.thenCore = function thenCore(\n onFulfilled,\n onRejected,\n thenBase\n ) {\n // Handle optional thenBase parameter.\n thenBase = thenBase || Promise.prototype.then;\n\n // Wrap `this` for encapsulation and bind it to the promise handlers.\n var self = this;\n if (onFulfilled) {\n onFulfilled = onFulfilled.bind(self);\n }\n if (onRejected) {\n onRejected = onRejected.bind(self);\n }\n\n // Cast self into a Promise to avoid polyfills recursively defining `then`.\n var isNative =\n Promise.toString().indexOf(\"[native code]\") !== -1 &&\n Promise.name === \"Promise\";\n var selfPromise = isNative\n ? self\n : Worker.convert(Object.assign({}, self), Promise.prototype);\n\n // Return the promise, after casting it into a Worker and preserving props.\n var returnVal = thenBase.call(selfPromise, onFulfilled, onRejected);\n return Worker.convert(returnVal, self.__proto__);\n };\n\n Worker.prototype.thenExternal = function thenExternal(\n onFulfilled,\n onRejected\n ) {\n // Call `then` and return a standard promise (exits the Worker chain).\n return Promise.prototype.then.call(this, onFulfilled, onRejected);\n };\n\n Worker.prototype.thenList = function thenList(fns) {\n // Queue a series of promise 'factories' into the promise chain.\n var self = this;\n fns.forEach(function thenList_forEach(fn) {\n self = self.thenCore(fn);\n });\n return self;\n };\n\n Worker.prototype[\"catch\"] = function(onRejected) {\n // Bind `this` to the promise handler, call `catch`, and return a Worker.\n if (onRejected) {\n onRejected = onRejected.bind(this);\n }\n var returnVal = Promise.prototype[\"catch\"].call(this, onRejected);\n return Worker.convert(returnVal, this);\n };\n\n Worker.prototype.catchExternal = function catchExternal(onRejected) {\n // Call `catch` and return a standard promise (exits the Worker chain).\n return Promise.prototype[\"catch\"].call(this, onRejected);\n };\n\n Worker.prototype.error = function error(msg) {\n // Throw the error in the Promise chain.\n return this.then(function error_main() {\n throw new Error(msg);\n });\n };\n\n /* ----- ALIASES ----- */\n\n Worker.prototype.using = Worker.prototype.set;\n Worker.prototype.saveAs = Worker.prototype.save;\n Worker.prototype.export = Worker.prototype.output;\n Worker.prototype.run = Worker.prototype.then;\n\n // Get dimensions of a PDF page, as determined by jsPDF.\n jsPDF.getPageSize = function(orientation, unit, format) {\n // Decode options object\n if (typeof orientation === \"object\") {\n var options = orientation;\n orientation = options.orientation;\n unit = options.unit || unit;\n format = options.format || format;\n }\n\n // Default options\n unit = unit || \"mm\";\n format = format || \"a4\";\n orientation = (\"\" + (orientation || \"P\")).toLowerCase();\n var format_as_string = (\"\" + format).toLowerCase();\n\n // Size in pt of various paper formats\n var pageFormats = {\n a0: [2383.94, 3370.39],\n a1: [1683.78, 2383.94],\n a2: [1190.55, 1683.78],\n a3: [841.89, 1190.55],\n a4: [595.28, 841.89],\n a5: [419.53, 595.28],\n a6: [297.64, 419.53],\n a7: [209.76, 297.64],\n a8: [147.4, 209.76],\n a9: [104.88, 147.4],\n a10: [73.7, 104.88],\n b0: [2834.65, 4008.19],\n b1: [2004.09, 2834.65],\n b2: [1417.32, 2004.09],\n b3: [1000.63, 1417.32],\n b4: [708.66, 1000.63],\n b5: [498.9, 708.66],\n b6: [354.33, 498.9],\n b7: [249.45, 354.33],\n b8: [175.75, 249.45],\n b9: [124.72, 175.75],\n b10: [87.87, 124.72],\n c0: [2599.37, 3676.54],\n c1: [1836.85, 2599.37],\n c2: [1298.27, 1836.85],\n c3: [918.43, 1298.27],\n c4: [649.13, 918.43],\n c5: [459.21, 649.13],\n c6: [323.15, 459.21],\n c7: [229.61, 323.15],\n c8: [161.57, 229.61],\n c9: [113.39, 161.57],\n c10: [79.37, 113.39],\n dl: [311.81, 623.62],\n letter: [612, 792],\n \"government-letter\": [576, 756],\n legal: [612, 1008],\n \"junior-legal\": [576, 360],\n ledger: [1224, 792],\n tabloid: [792, 1224],\n \"credit-card\": [153, 243]\n };\n\n var k;\n // Unit conversion\n switch (unit) {\n case \"pt\":\n k = 1;\n break;\n case \"mm\":\n k = 72 / 25.4;\n break;\n case \"cm\":\n k = 72 / 2.54;\n break;\n case \"in\":\n k = 72;\n break;\n case \"px\":\n k = 72 / 96;\n break;\n case \"pc\":\n k = 12;\n break;\n case \"em\":\n k = 12;\n break;\n case \"ex\":\n k = 6;\n break;\n default:\n throw \"Invalid unit: \" + unit;\n }\n var pageHeight = 0;\n var pageWidth = 0;\n\n // Dimensions are stored as user units and converted to points on output\n if (pageFormats.hasOwnProperty(format_as_string)) {\n pageHeight = pageFormats[format_as_string][1] / k;\n pageWidth = pageFormats[format_as_string][0] / k;\n } else {\n try {\n pageHeight = format[1];\n pageWidth = format[0];\n } catch (err) {\n throw new Error(\"Invalid format: \" + format);\n }\n }\n\n var tmp;\n // Handle page orientation\n if (orientation === \"p\" || orientation === \"portrait\") {\n orientation = \"p\";\n if (pageWidth > pageHeight) {\n tmp = pageWidth;\n pageWidth = pageHeight;\n pageHeight = tmp;\n }\n } else if (orientation === \"l\" || orientation === \"landscape\") {\n orientation = \"l\";\n if (pageHeight > pageWidth) {\n tmp = pageWidth;\n pageWidth = pageHeight;\n pageHeight = tmp;\n }\n } else {\n throw \"Invalid orientation: \" + orientation;\n }\n\n // Return information (k is the unit conversion ratio from pts)\n var info = {\n width: pageWidth,\n height: pageHeight,\n unit: unit,\n k: k,\n orientation: orientation\n };\n return info;\n };\n\n /**\n * @typedef FontFace\n *\n * The font-face type implements an interface similar to that of the font-face CSS rule,\n * and is used by jsPDF to match fonts when the font property of CanvasRenderingContext2D\n * is updated.\n *\n * All properties expect values similar to those in the font-face CSS rule. A difference\n * is the font-family, which do not need to be enclosed in double-quotes when containing\n * spaces like in CSS.\n *\n * @property {string} family The name of the font-family.\n * @property {string|undefined} style The style that this font-face defines, e.g. 'italic'.\n * @property {string|number|undefined} weight The weight of the font, either as a string or a number (400, 500, 600, e.g.)\n * @property {string|undefined} stretch The stretch of the font, e.g. condensed, normal, expanded.\n * @property {Object[]} src A list of URLs from where fonts of various formats can be fetched.\n * @property {string} [src] url A URL to a font of a specific format.\n * @property {string} [src] format Format of the font referenced by the URL.\n */\n\n /**\n * Generate a PDF from an HTML element or string using.\n *\n * @name html\n * @function\n * @param {HTMLElement|string} source The source HTMLElement or a string containing HTML.\n * @param {Object} [options] Collection of settings\n * @param {function} [options.callback] The mandatory callback-function gets as first parameter the current jsPDF instance\n * @param {(number|number[])=} [options.margin] Page margins [top, right, bottom, left]. Default is 0.\n * @param {(boolean|'slice'|'text')=} [options.autoPaging] The auto paging mode.\n *
      \n *
    • \n * false: Auto paging is disabled.\n *
    • \n *
    • \n * true or 'slice': Will cut shapes or text chunks across page breaks. Will possibly\n * slice text in half, making it difficult to read.\n *
    • \n *
    • \n * 'text': Trys not to cut text in half across page breaks. Works best for documents consisting\n * mostly of a single column of text.\n *
    • \n *
    \n * Default is true.\n * @param {string} [options.filename] name of the file\n * @param {HTMLOptionImage} [options.image] image settings when converting HTML to image\n * @param {Html2CanvasOptions} [options.html2canvas] html2canvas options\n * @param {FontFace[]} [options.fontFaces] A list of font-faces to match when resolving fonts. Fonts will be added to the PDF based on the specified URL. If omitted, the font match algorithm falls back to old algorithm.\n * @param {jsPDF} [options.jsPDF] jsPDF instance\n * @param {number=} [options.x] x position on the PDF document in jsPDF units.\n * @param {number=} [options.y] y position on the PDF document in jsPDF units.\n * @param {number=} [options.width] The target width in the PDF document in jsPDF units. The rendered element will be\n * scaled such that it fits into the specified width. Has no effect if either the html2canvas.scale is\n * specified or the windowWidth option is NOT specified.\n * @param {number=} [options.windowWidth] The window width in CSS pixels. In contrast to the\n * html2canvas.windowWidth option, this option affects the actual container size while rendering and\n * does NOT affect CSS media queries. This option only has an effect, if the width option is also specified.\n *\n * @example\n * var doc = new jsPDF();\n *\n * doc.html(document.body, {\n * callback: function (doc) {\n * doc.save();\n * },\n * x: 10,\n * y: 10\n * });\n */\n jsPDFAPI.html = function(src, options) {\n \"use strict\";\n\n options = options || {};\n options.callback = options.callback || function() {};\n options.html2canvas = options.html2canvas || {};\n options.html2canvas.canvas = options.html2canvas.canvas || this.canvas;\n options.jsPDF = options.jsPDF || this;\n options.fontFaces = options.fontFaces\n ? options.fontFaces.map(normalizeFontFace)\n : null;\n\n // Create a new worker with the given options.\n var worker = new Worker(options);\n\n if (!options.worker) {\n // If worker is not set to true, perform the traditional 'simple' operation.\n return worker.from(src).doCallback();\n } else {\n // Otherwise, return the worker for new Promise-based operation.\n return worker;\n }\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF Outline PlugIn\n *\n * Generates a PDF Outline\n * @name outline\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n var namesOid;\n //var destsGoto = [];\n\n jsPDFAPI.events.push([\n \"postPutResources\",\n function() {\n var pdf = this;\n var rx = /^(\\d+) 0 obj$/;\n\n // Write action goto objects for each page\n // this.outline.destsGoto = [];\n // for (var i = 0; i < totalPages; i++) {\n // var id = pdf.internal.newObject();\n // this.outline.destsGoto.push(id);\n // pdf.internal.write(\"<> endobj\");\n // }\n //\n // for (var i = 0; i < dests.length; i++) {\n // pdf.internal.write(\"(page_\" + (i + 1) + \")\" + dests[i] + \" 0\n // R\");\n // }\n //\n if (this.outline.root.children.length > 0) {\n var lines = pdf.outline.render().split(/\\r\\n/);\n for (var i = 0; i < lines.length; i++) {\n var line = lines[i];\n var m = rx.exec(line);\n if (m != null) {\n var oid = m[1];\n pdf.internal.newObjectDeferredBegin(oid, false);\n }\n pdf.internal.write(line);\n }\n }\n\n // This code will write named destination for each page reference\n // (page_1, etc)\n if (this.outline.createNamedDestinations) {\n var totalPages = this.internal.pages.length;\n // WARNING: this assumes jsPDF starts on page 3 and pageIDs\n // follow 5, 7, 9, etc\n // Write destination objects for each page\n var dests = [];\n for (var i = 0; i < totalPages; i++) {\n var id = pdf.internal.newObject();\n dests.push(id);\n var info = pdf.internal.getPageInfo(i + 1);\n pdf.internal.write(\n \"<< /D[\" + info.objId + \" 0 R /XYZ null null null]>> endobj\"\n );\n }\n\n // assign a name for each destination\n var names2Oid = pdf.internal.newObject();\n pdf.internal.write(\"<< /Names [ \");\n for (var i = 0; i < dests.length; i++) {\n pdf.internal.write(\"(page_\" + (i + 1) + \")\" + dests[i] + \" 0 R\");\n }\n pdf.internal.write(\" ] >>\", \"endobj\");\n\n // var kids = pdf.internal.newObject();\n // pdf.internal.write('<< /Kids [ ' + names2Oid + ' 0 R');\n // pdf.internal.write(' ] >>', 'endobj');\n\n namesOid = pdf.internal.newObject();\n pdf.internal.write(\"<< /Dests \" + names2Oid + \" 0 R\");\n pdf.internal.write(\">>\", \"endobj\");\n }\n }\n ]);\n\n jsPDFAPI.events.push([\n \"putCatalog\",\n function() {\n var pdf = this;\n if (pdf.outline.root.children.length > 0) {\n pdf.internal.write(\n \"/Outlines\",\n this.outline.makeRef(this.outline.root)\n );\n if (this.outline.createNamedDestinations) {\n pdf.internal.write(\"/Names \" + namesOid + \" 0 R\");\n }\n // Open with Bookmarks showing\n // pdf.internal.write(\"/PageMode /UseOutlines\");\n }\n }\n ]);\n\n jsPDFAPI.events.push([\n \"initialized\",\n function() {\n var pdf = this;\n\n pdf.outline = {\n createNamedDestinations: false,\n root: {\n children: []\n }\n };\n\n /**\n * Options: pageNumber\n */\n pdf.outline.add = function(parent, title, options) {\n var item = {\n title: title,\n options: options,\n children: []\n };\n if (parent == null) {\n parent = this.root;\n }\n parent.children.push(item);\n return item;\n };\n\n pdf.outline.render = function() {\n this.ctx = {};\n this.ctx.val = \"\";\n this.ctx.pdf = pdf;\n\n this.genIds_r(this.root);\n this.renderRoot(this.root);\n this.renderItems(this.root);\n\n return this.ctx.val;\n };\n\n pdf.outline.genIds_r = function(node) {\n node.id = pdf.internal.newObjectDeferred();\n for (var i = 0; i < node.children.length; i++) {\n this.genIds_r(node.children[i]);\n }\n };\n\n pdf.outline.renderRoot = function(node) {\n this.objStart(node);\n this.line(\"/Type /Outlines\");\n if (node.children.length > 0) {\n this.line(\"/First \" + this.makeRef(node.children[0]));\n this.line(\n \"/Last \" + this.makeRef(node.children[node.children.length - 1])\n );\n }\n this.line(\n \"/Count \" +\n this.count_r(\n {\n count: 0\n },\n node\n )\n );\n this.objEnd();\n };\n\n pdf.outline.renderItems = function(node) {\n var getVerticalCoordinateString = this.ctx.pdf.internal\n .getVerticalCoordinateString;\n for (var i = 0; i < node.children.length; i++) {\n var item = node.children[i];\n this.objStart(item);\n\n this.line(\"/Title \" + this.makeString(item.title));\n\n this.line(\"/Parent \" + this.makeRef(node));\n if (i > 0) {\n this.line(\"/Prev \" + this.makeRef(node.children[i - 1]));\n }\n if (i < node.children.length - 1) {\n this.line(\"/Next \" + this.makeRef(node.children[i + 1]));\n }\n if (item.children.length > 0) {\n this.line(\"/First \" + this.makeRef(item.children[0]));\n this.line(\n \"/Last \" + this.makeRef(item.children[item.children.length - 1])\n );\n }\n\n var count = (this.count = this.count_r(\n {\n count: 0\n },\n item\n ));\n if (count > 0) {\n this.line(\"/Count \" + count);\n }\n\n if (item.options) {\n if (item.options.pageNumber) {\n // Explicit Destination\n //WARNING this assumes page ids are 3,5,7, etc.\n var info = pdf.internal.getPageInfo(item.options.pageNumber);\n this.line(\n \"/Dest \" +\n \"[\" +\n info.objId +\n \" 0 R /XYZ 0 \" +\n getVerticalCoordinateString(0) +\n \" 0]\"\n );\n // this line does not work on all clients (pageNumber instead of page ref)\n //this.line('/Dest ' + '[' + (item.options.pageNumber - 1) + ' /XYZ 0 ' + this.ctx.pdf.internal.pageSize.getHeight() + ' 0]');\n\n // Named Destination\n // this.line('/Dest (page_' + (item.options.pageNumber) + ')');\n\n // Action Destination\n // var id = pdf.internal.newObject();\n // pdf.internal.write('<> endobj');\n // this.line('/A ' + id + ' 0 R' );\n }\n }\n this.objEnd();\n }\n for (var z = 0; z < node.children.length; z++) {\n this.renderItems(node.children[z]);\n }\n };\n\n pdf.outline.line = function(text) {\n this.ctx.val += text + \"\\r\\n\";\n };\n\n pdf.outline.makeRef = function(node) {\n return node.id + \" 0 R\";\n };\n\n pdf.outline.makeString = function(val) {\n return \"(\" + pdf.internal.pdfEscape(val) + \")\";\n };\n\n pdf.outline.objStart = function(node) {\n this.ctx.val += \"\\r\\n\" + node.id + \" 0 obj\" + \"\\r\\n<<\\r\\n\";\n };\n\n pdf.outline.objEnd = function() {\n this.ctx.val += \">> \\r\\n\" + \"endobj\" + \"\\r\\n\";\n };\n\n pdf.outline.count_r = function(ctx, node) {\n for (var i = 0; i < node.children.length; i++) {\n ctx.count++;\n this.count_r(ctx, node.children[i]);\n }\n return ctx.count;\n };\n }\n ]);\n\n return this;\n})(jsPDF.API);\n","/**\n * @license\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF jpeg Support PlugIn\n *\n * @name jpeg_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * 0xc0 (SOF) Huffman - Baseline DCT\n * 0xc1 (SOF) Huffman - Extended sequential DCT\n * 0xc2 Progressive DCT (SOF2)\n * 0xc3 Spatial (sequential) lossless (SOF3)\n * 0xc4 Differential sequential DCT (SOF5)\n * 0xc5 Differential progressive DCT (SOF6)\n * 0xc6 Differential spatial (SOF7)\n * 0xc7\n */\n var markers = [0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7];\n\n //takes a string imgData containing the raw bytes of\n //a jpeg image and returns [width, height]\n //Algorithm from: http://www.64lines.com/jpeg-width-height\n var getJpegInfo = function(imgData) {\n var width, height, numcomponents;\n var blockLength = imgData.charCodeAt(4) * 256 + imgData.charCodeAt(5);\n var len = imgData.length;\n var result = { width: 0, height: 0, numcomponents: 1 };\n for (var i = 4; i < len; i += 2) {\n i += blockLength;\n if (markers.indexOf(imgData.charCodeAt(i + 1)) !== -1) {\n height = imgData.charCodeAt(i + 5) * 256 + imgData.charCodeAt(i + 6);\n width = imgData.charCodeAt(i + 7) * 256 + imgData.charCodeAt(i + 8);\n numcomponents = imgData.charCodeAt(i + 9);\n result = { width: width, height: height, numcomponents: numcomponents };\n break;\n } else {\n blockLength =\n imgData.charCodeAt(i + 2) * 256 + imgData.charCodeAt(i + 3);\n }\n }\n return result;\n };\n\n /**\n * @ignore\n */\n jsPDFAPI.processJPEG = function(\n data,\n index,\n alias,\n compression,\n dataAsBinaryString,\n colorSpace\n ) {\n var filter = this.decode.DCT_DECODE,\n bpc = 8,\n dims,\n result = null;\n\n if (\n typeof data === \"string\" ||\n this.__addimage__.isArrayBuffer(data) ||\n this.__addimage__.isArrayBufferView(data)\n ) {\n // if we already have a stored binary string rep use that\n data = dataAsBinaryString || data;\n data = this.__addimage__.isArrayBuffer(data)\n ? new Uint8Array(data)\n : data;\n data = this.__addimage__.isArrayBufferView(data)\n ? this.__addimage__.arrayBufferToBinaryString(data)\n : data;\n\n dims = getJpegInfo(data);\n switch (dims.numcomponents) {\n case 1:\n colorSpace = this.color_spaces.DEVICE_GRAY;\n break;\n case 4:\n colorSpace = this.color_spaces.DEVICE_CMYK;\n break;\n case 3:\n colorSpace = this.color_spaces.DEVICE_RGB;\n break;\n }\n\n result = {\n data: data,\n width: dims.width,\n height: dims.height,\n colorSpace: colorSpace,\n bitsPerComponent: bpc,\n filter: filter,\n index: index,\n alias: alias\n };\n }\n return result;\n };\n})(jsPDF.API);\n","// Generated by CoffeeScript 1.4.0\n\n/**\n * @license\n * PNG.js\n * Copyright (c) 2011 Devon Govett\n * MIT LICENSE\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of this\n * software and associated documentation files (the \"Software\"), to deal in the Software\n * without restriction, including without limitation the rights to use, copy, modify, merge,\n * publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons\n * to whom the Software is furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all copies or\n * substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING\n * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\nimport { unzlibSync } from \"./fflate.js\";\nimport { globalObject } from \"./globalObject.js\";\n\nvar PNG = (function() {\n var APNG_BLEND_OP_OVER,\n APNG_BLEND_OP_SOURCE,\n APNG_DISPOSE_OP_BACKGROUND,\n APNG_DISPOSE_OP_NONE,\n APNG_DISPOSE_OP_PREVIOUS,\n makeImage,\n scratchCanvas,\n scratchCtx;\n\n APNG_DISPOSE_OP_NONE = 0;\n\n APNG_DISPOSE_OP_BACKGROUND = 1;\n\n APNG_DISPOSE_OP_PREVIOUS = 2;\n\n APNG_BLEND_OP_SOURCE = 0;\n\n APNG_BLEND_OP_OVER = 1;\n\n function PNG(data) {\n var chunkSize,\n colors,\n palLen,\n delayDen,\n delayNum,\n frame,\n i,\n index,\n key,\n section,\n palShort,\n text,\n _i,\n _j,\n _ref;\n this.data = data;\n this.pos = 8;\n this.palette = [];\n this.imgData = [];\n this.transparency = {};\n this.animation = null;\n this.text = {};\n frame = null;\n while (true) {\n chunkSize = this.readUInt32();\n section = function() {\n var _i, _results;\n _results = [];\n for (i = _i = 0; _i < 4; i = ++_i) {\n _results.push(String.fromCharCode(this.data[this.pos++]));\n }\n return _results;\n }\n .call(this)\n .join(\"\");\n switch (section) {\n case \"IHDR\":\n this.width = this.readUInt32();\n this.height = this.readUInt32();\n this.bits = this.data[this.pos++];\n this.colorType = this.data[this.pos++];\n this.compressionMethod = this.data[this.pos++];\n this.filterMethod = this.data[this.pos++];\n this.interlaceMethod = this.data[this.pos++];\n break;\n case \"acTL\":\n this.animation = {\n numFrames: this.readUInt32(),\n numPlays: this.readUInt32() || Infinity,\n frames: []\n };\n break;\n case \"PLTE\":\n this.palette = this.read(chunkSize);\n break;\n case \"fcTL\":\n if (frame) {\n this.animation.frames.push(frame);\n }\n this.pos += 4;\n frame = {\n width: this.readUInt32(),\n height: this.readUInt32(),\n xOffset: this.readUInt32(),\n yOffset: this.readUInt32()\n };\n delayNum = this.readUInt16();\n delayDen = this.readUInt16() || 100;\n frame.delay = (1000 * delayNum) / delayDen;\n frame.disposeOp = this.data[this.pos++];\n frame.blendOp = this.data[this.pos++];\n frame.data = [];\n break;\n case \"IDAT\":\n case \"fdAT\":\n if (section === \"fdAT\") {\n this.pos += 4;\n chunkSize -= 4;\n }\n data = (frame != null ? frame.data : void 0) || this.imgData;\n for (\n i = _i = 0;\n 0 <= chunkSize ? _i < chunkSize : _i > chunkSize;\n i = 0 <= chunkSize ? ++_i : --_i\n ) {\n data.push(this.data[this.pos++]);\n }\n break;\n case \"tRNS\":\n this.transparency = {};\n switch (this.colorType) {\n case 3:\n palLen = this.palette.length / 3;\n this.transparency.indexed = this.read(chunkSize);\n if (this.transparency.indexed.length > palLen)\n throw new Error(\"More transparent colors than palette size\");\n /*\n * According to the PNG spec trns should be increased to the same size as palette if shorter\n */\n //palShort = 255 - this.transparency.indexed.length;\n palShort = palLen - this.transparency.indexed.length;\n if (palShort > 0) {\n for (\n i = _j = 0;\n 0 <= palShort ? _j < palShort : _j > palShort;\n i = 0 <= palShort ? ++_j : --_j\n ) {\n this.transparency.indexed.push(255);\n }\n }\n break;\n case 0:\n this.transparency.grayscale = this.read(chunkSize)[0];\n break;\n case 2:\n this.transparency.rgb = this.read(chunkSize);\n }\n break;\n case \"tEXt\":\n text = this.read(chunkSize);\n index = text.indexOf(0);\n key = String.fromCharCode.apply(String, text.slice(0, index));\n this.text[key] = String.fromCharCode.apply(\n String,\n text.slice(index + 1)\n );\n break;\n case \"IEND\":\n if (frame) {\n this.animation.frames.push(frame);\n }\n this.colors = function() {\n switch (this.colorType) {\n case 0:\n case 3:\n case 4:\n return 1;\n case 2:\n case 6:\n return 3;\n }\n }.call(this);\n this.hasAlphaChannel = (_ref = this.colorType) === 4 || _ref === 6;\n colors = this.colors + (this.hasAlphaChannel ? 1 : 0);\n this.pixelBitlength = this.bits * colors;\n this.colorSpace = function() {\n switch (this.colors) {\n case 1:\n return \"DeviceGray\";\n case 3:\n return \"DeviceRGB\";\n }\n }.call(this);\n this.imgData = new Uint8Array(this.imgData);\n return;\n default:\n this.pos += chunkSize;\n }\n this.pos += 4;\n if (this.pos > this.data.length) {\n throw new Error(\"Incomplete or corrupt PNG file\");\n }\n }\n }\n\n PNG.prototype.read = function(bytes) {\n var i, _i, _results;\n _results = [];\n for (\n i = _i = 0;\n 0 <= bytes ? _i < bytes : _i > bytes;\n i = 0 <= bytes ? ++_i : --_i\n ) {\n _results.push(this.data[this.pos++]);\n }\n return _results;\n };\n\n PNG.prototype.readUInt32 = function() {\n var b1, b2, b3, b4;\n b1 = this.data[this.pos++] << 24;\n b2 = this.data[this.pos++] << 16;\n b3 = this.data[this.pos++] << 8;\n b4 = this.data[this.pos++];\n return b1 | b2 | b3 | b4;\n };\n\n PNG.prototype.readUInt16 = function() {\n var b1, b2;\n b1 = this.data[this.pos++] << 8;\n b2 = this.data[this.pos++];\n return b1 | b2;\n };\n\n PNG.prototype.decodePixels = function(data) {\n var pixelBytes = this.pixelBitlength / 8;\n var fullPixels = new Uint8Array(this.width * this.height * pixelBytes);\n var pos = 0;\n var _this = this;\n\n if (data == null) {\n data = this.imgData;\n }\n if (data.length === 0) {\n return new Uint8Array(0);\n }\n\n data = unzlibSync(data);\n function pass(x0, y0, dx, dy) {\n var abyte,\n c,\n col,\n i,\n left,\n length,\n p,\n pa,\n paeth,\n pb,\n pc,\n pixels,\n row,\n scanlineLength,\n upper,\n upperLeft,\n _i,\n _j,\n _k,\n _l,\n _m;\n var w = Math.ceil((_this.width - x0) / dx),\n h = Math.ceil((_this.height - y0) / dy);\n var isFull = _this.width == w && _this.height == h;\n scanlineLength = pixelBytes * w;\n pixels = isFull ? fullPixels : new Uint8Array(scanlineLength * h);\n length = data.length;\n row = 0;\n c = 0;\n while (row < h && pos < length) {\n switch (data[pos++]) {\n case 0:\n for (i = _i = 0; _i < scanlineLength; i = _i += 1) {\n pixels[c++] = data[pos++];\n }\n break;\n case 1:\n for (i = _j = 0; _j < scanlineLength; i = _j += 1) {\n abyte = data[pos++];\n left = i < pixelBytes ? 0 : pixels[c - pixelBytes];\n pixels[c++] = (abyte + left) % 256;\n }\n break;\n case 2:\n for (i = _k = 0; _k < scanlineLength; i = _k += 1) {\n abyte = data[pos++];\n col = (i - (i % pixelBytes)) / pixelBytes;\n upper =\n row &&\n pixels[\n (row - 1) * scanlineLength +\n col * pixelBytes +\n (i % pixelBytes)\n ];\n pixels[c++] = (upper + abyte) % 256;\n }\n break;\n case 3:\n for (i = _l = 0; _l < scanlineLength; i = _l += 1) {\n abyte = data[pos++];\n col = (i - (i % pixelBytes)) / pixelBytes;\n left = i < pixelBytes ? 0 : pixels[c - pixelBytes];\n upper =\n row &&\n pixels[\n (row - 1) * scanlineLength +\n col * pixelBytes +\n (i % pixelBytes)\n ];\n pixels[c++] = (abyte + Math.floor((left + upper) / 2)) % 256;\n }\n break;\n case 4:\n for (i = _m = 0; _m < scanlineLength; i = _m += 1) {\n abyte = data[pos++];\n col = (i - (i % pixelBytes)) / pixelBytes;\n left = i < pixelBytes ? 0 : pixels[c - pixelBytes];\n if (row === 0) {\n upper = upperLeft = 0;\n } else {\n upper =\n pixels[\n (row - 1) * scanlineLength +\n col * pixelBytes +\n (i % pixelBytes)\n ];\n upperLeft =\n col &&\n pixels[\n (row - 1) * scanlineLength +\n (col - 1) * pixelBytes +\n (i % pixelBytes)\n ];\n }\n p = left + upper - upperLeft;\n pa = Math.abs(p - left);\n pb = Math.abs(p - upper);\n pc = Math.abs(p - upperLeft);\n if (pa <= pb && pa <= pc) {\n paeth = left;\n } else if (pb <= pc) {\n paeth = upper;\n } else {\n paeth = upperLeft;\n }\n pixels[c++] = (abyte + paeth) % 256;\n }\n break;\n default:\n throw new Error(\"Invalid filter algorithm: \" + data[pos - 1]);\n }\n if (!isFull) {\n var fullPos = ((y0 + row * dy) * _this.width + x0) * pixelBytes;\n var partPos = row * scanlineLength;\n for (i = 0; i < w; i += 1) {\n for (var j = 0; j < pixelBytes; j += 1)\n fullPixels[fullPos++] = pixels[partPos++];\n fullPos += (dx - 1) * pixelBytes;\n }\n }\n row++;\n }\n }\n if (_this.interlaceMethod == 1) {\n /*\n 1 6 4 6 2 6 4 6\n 7 7 7 7 7 7 7 7\n 5 6 5 6 5 6 5 6\n 7 7 7 7 7 7 7 7\n 3 6 4 6 3 6 4 6\n 7 7 7 7 7 7 7 7\n 5 6 5 6 5 6 5 6\n 7 7 7 7 7 7 7 7\n */\n pass(0, 0, 8, 8); // 1\n /* NOTE these seem to follow the pattern:\n * pass(x, 0, 2*x, 2*x);\n * pass(0, x, x, 2*x);\n * with x being 4, 2, 1.\n */\n pass(4, 0, 8, 8); // 2\n pass(0, 4, 4, 8); // 3\n\n pass(2, 0, 4, 4); // 4\n pass(0, 2, 2, 4); // 5\n\n pass(1, 0, 2, 2); // 6\n pass(0, 1, 1, 2); // 7\n } else {\n pass(0, 0, 1, 1);\n }\n return fullPixels;\n };\n\n PNG.prototype.decodePalette = function() {\n var c, i, length, palette, pos, ret, transparency, _i, _ref, _ref1;\n palette = this.palette;\n transparency = this.transparency.indexed || [];\n ret = new Uint8Array((transparency.length || 0) + palette.length);\n pos = 0;\n length = palette.length;\n c = 0;\n for (i = _i = 0, _ref = length; _i < _ref; i = _i += 3) {\n ret[pos++] = palette[i];\n ret[pos++] = palette[i + 1];\n ret[pos++] = palette[i + 2];\n ret[pos++] = (_ref1 = transparency[c++]) != null ? _ref1 : 255;\n }\n return ret;\n };\n\n PNG.prototype.copyToImageData = function(imageData, pixels) {\n var alpha, colors, data, i, input, j, k, length, palette, v, _ref;\n colors = this.colors;\n palette = null;\n alpha = this.hasAlphaChannel;\n if (this.palette.length) {\n palette =\n (_ref = this._decodedPalette) != null\n ? _ref\n : (this._decodedPalette = this.decodePalette());\n colors = 4;\n alpha = true;\n }\n data = imageData.data || imageData;\n length = data.length;\n input = palette || pixels;\n i = j = 0;\n if (colors === 1) {\n while (i < length) {\n k = palette ? pixels[i / 4] * 4 : j;\n v = input[k++];\n data[i++] = v;\n data[i++] = v;\n data[i++] = v;\n data[i++] = alpha ? input[k++] : 255;\n j = k;\n }\n } else {\n while (i < length) {\n k = palette ? pixels[i / 4] * 4 : j;\n data[i++] = input[k++];\n data[i++] = input[k++];\n data[i++] = input[k++];\n data[i++] = alpha ? input[k++] : 255;\n j = k;\n }\n }\n };\n\n PNG.prototype.decode = function() {\n var ret;\n ret = new Uint8Array(this.width * this.height * 4);\n this.copyToImageData(ret, this.decodePixels());\n return ret;\n };\n\n var hasBrowserCanvas = function() {\n if (Object.prototype.toString.call(globalObject) === \"[object Window]\") {\n try {\n scratchCanvas = globalObject.document.createElement(\"canvas\");\n scratchCtx = scratchCanvas.getContext(\"2d\");\n } catch (e) {\n return false;\n }\n return true;\n }\n return false;\n };\n\n hasBrowserCanvas();\n\n makeImage = function(imageData) {\n if (hasBrowserCanvas() === true) {\n var img;\n scratchCtx.width = imageData.width;\n scratchCtx.height = imageData.height;\n scratchCtx.clearRect(0, 0, imageData.width, imageData.height);\n scratchCtx.putImageData(imageData, 0, 0);\n img = new Image();\n img.src = scratchCanvas.toDataURL();\n return img;\n }\n throw new Error(\"This method requires a Browser with Canvas-capability.\");\n };\n\n PNG.prototype.decodeFrames = function(ctx) {\n var frame, i, imageData, pixels, _i, _len, _ref, _results;\n if (!this.animation) {\n return;\n }\n _ref = this.animation.frames;\n _results = [];\n for (i = _i = 0, _len = _ref.length; _i < _len; i = ++_i) {\n frame = _ref[i];\n imageData = ctx.createImageData(frame.width, frame.height);\n pixels = this.decodePixels(new Uint8Array(frame.data));\n this.copyToImageData(imageData, pixels);\n frame.imageData = imageData;\n _results.push((frame.image = makeImage(imageData)));\n }\n return _results;\n };\n\n PNG.prototype.renderFrame = function(ctx, number) {\n var frame, frames, prev;\n frames = this.animation.frames;\n frame = frames[number];\n prev = frames[number - 1];\n if (number === 0) {\n ctx.clearRect(0, 0, this.width, this.height);\n }\n if (\n (prev != null ? prev.disposeOp : void 0) === APNG_DISPOSE_OP_BACKGROUND\n ) {\n ctx.clearRect(prev.xOffset, prev.yOffset, prev.width, prev.height);\n } else if (\n (prev != null ? prev.disposeOp : void 0) === APNG_DISPOSE_OP_PREVIOUS\n ) {\n ctx.putImageData(prev.imageData, prev.xOffset, prev.yOffset);\n }\n if (frame.blendOp === APNG_BLEND_OP_SOURCE) {\n ctx.clearRect(frame.xOffset, frame.yOffset, frame.width, frame.height);\n }\n return ctx.drawImage(frame.image, frame.xOffset, frame.yOffset);\n };\n\n PNG.prototype.animate = function(ctx) {\n var doFrame,\n frameNumber,\n frames,\n numFrames,\n numPlays,\n _ref,\n _this = this;\n frameNumber = 0;\n (_ref = this.animation),\n (numFrames = _ref.numFrames),\n (frames = _ref.frames),\n (numPlays = _ref.numPlays);\n return (doFrame = function() {\n var f, frame;\n f = frameNumber++ % numFrames;\n frame = frames[f];\n _this.renderFrame(ctx, f);\n if (numFrames > 1 && frameNumber / numFrames < numPlays) {\n return (_this.animation._timeout = setTimeout(doFrame, frame.delay));\n }\n })();\n };\n\n PNG.prototype.stopAnimation = function() {\n var _ref;\n return clearTimeout(\n (_ref = this.animation) != null ? _ref._timeout : void 0\n );\n };\n\n PNG.prototype.render = function(canvas) {\n var ctx, data;\n if (canvas._png) {\n canvas._png.stopAnimation();\n }\n canvas._png = this;\n canvas.width = this.width;\n canvas.height = this.height;\n ctx = canvas.getContext(\"2d\");\n if (this.animation) {\n this.decodeFrames(ctx);\n return this.animate(ctx);\n } else {\n data = ctx.createImageData(this.width, this.height);\n this.copyToImageData(data, this.decodePixels());\n return ctx.putImageData(data, 0, 0);\n }\n };\n\n return PNG;\n})();\n\nexport { PNG };\n","/** @license\n * MIT license.\n * Copyright (c) 2012 Willow Systems Corporation, https://github.com/willowsystems\n * 2014 Diego Casorran, https://github.com/diegocr\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF split_text_to_size plugin\n *\n * @name split_text_to_size\n * @module\n */\n(function(API) {\n \"use strict\";\n /**\n * Returns an array of length matching length of the 'word' string, with each\n * cell occupied by the width of the char in that position.\n *\n * @name getCharWidthsArray\n * @function\n * @param {string} text\n * @param {Object} options\n * @returns {Array}\n */\n var getCharWidthsArray = (API.getCharWidthsArray = function(text, options) {\n options = options || {};\n\n var activeFont = options.font || this.internal.getFont();\n var fontSize = options.fontSize || this.internal.getFontSize();\n var charSpace = options.charSpace || this.internal.getCharSpace();\n\n var widths = options.widths\n ? options.widths\n : activeFont.metadata.Unicode.widths;\n var widthsFractionOf = widths.fof ? widths.fof : 1;\n var kerning = options.kerning\n ? options.kerning\n : activeFont.metadata.Unicode.kerning;\n var kerningFractionOf = kerning.fof ? kerning.fof : 1;\n var doKerning = options.doKerning === false ? false : true;\n var kerningValue = 0;\n\n var i;\n var length = text.length;\n var char_code;\n var prior_char_code = 0; //for kerning\n var default_char_width = widths[0] || widthsFractionOf;\n var output = [];\n\n for (i = 0; i < length; i++) {\n char_code = text.charCodeAt(i);\n\n if (typeof activeFont.metadata.widthOfString === \"function\") {\n output.push(\n (activeFont.metadata.widthOfGlyph(\n activeFont.metadata.characterToGlyph(char_code)\n ) +\n charSpace * (1000 / fontSize) || 0) / 1000\n );\n } else {\n if (\n doKerning &&\n typeof kerning[char_code] === \"object\" &&\n !isNaN(parseInt(kerning[char_code][prior_char_code], 10))\n ) {\n kerningValue =\n kerning[char_code][prior_char_code] / kerningFractionOf;\n } else {\n kerningValue = 0;\n }\n output.push(\n (widths[char_code] || default_char_width) / widthsFractionOf +\n kerningValue\n );\n }\n prior_char_code = char_code;\n }\n\n return output;\n });\n\n /**\n * Returns a widths of string in a given font, if the font size is set as 1 point.\n *\n * In other words, this is \"proportional\" value. For 1 unit of font size, the length\n * of the string will be that much.\n *\n * Multiply by font size to get actual width in *points*\n * Then divide by 72 to get inches or divide by (72/25.6) to get 'mm' etc.\n *\n * @name getStringUnitWidth\n * @public\n * @function\n * @param {string} text\n * @param {string} options\n * @returns {number} result\n */\n var getStringUnitWidth = (API.getStringUnitWidth = function(text, options) {\n options = options || {};\n\n var fontSize = options.fontSize || this.internal.getFontSize();\n var font = options.font || this.internal.getFont();\n var charSpace = options.charSpace || this.internal.getCharSpace();\n var result = 0;\n\n if (API.processArabic) {\n text = API.processArabic(text);\n }\n\n if (typeof font.metadata.widthOfString === \"function\") {\n result =\n font.metadata.widthOfString(text, fontSize, charSpace) / fontSize;\n } else {\n result = getCharWidthsArray\n .apply(this, arguments)\n .reduce(function(pv, cv) {\n return pv + cv;\n }, 0);\n }\n return result;\n });\n\n /**\n returns array of lines\n */\n var splitLongWord = function(word, widths_array, firstLineMaxLen, maxLen) {\n var answer = [];\n\n // 1st, chop off the piece that can fit on the hanging line.\n var i = 0,\n l = word.length,\n workingLen = 0;\n while (i !== l && workingLen + widths_array[i] < firstLineMaxLen) {\n workingLen += widths_array[i];\n i++;\n }\n // this is first line.\n answer.push(word.slice(0, i));\n\n // 2nd. Split the rest into maxLen pieces.\n var startOfLine = i;\n workingLen = 0;\n while (i !== l) {\n if (workingLen + widths_array[i] > maxLen) {\n answer.push(word.slice(startOfLine, i));\n workingLen = 0;\n startOfLine = i;\n }\n workingLen += widths_array[i];\n i++;\n }\n if (startOfLine !== i) {\n answer.push(word.slice(startOfLine, i));\n }\n\n return answer;\n };\n\n // Note, all sizing inputs for this function must be in \"font measurement units\"\n // By default, for PDF, it's \"point\".\n var splitParagraphIntoLines = function(text, maxlen, options) {\n // at this time works only on Western scripts, ones with space char\n // separating the words. Feel free to expand.\n\n if (!options) {\n options = {};\n }\n\n var line = [],\n lines = [line],\n line_length = options.textIndent || 0,\n separator_length = 0,\n current_word_length = 0,\n word,\n widths_array,\n words = text.split(\" \"),\n spaceCharWidth = getCharWidthsArray.apply(this, [\" \", options])[0],\n i,\n l,\n tmp,\n lineIndent;\n\n if (options.lineIndent === -1) {\n lineIndent = words[0].length + 2;\n } else {\n lineIndent = options.lineIndent || 0;\n }\n if (lineIndent) {\n var pad = Array(lineIndent).join(\" \"),\n wrds = [];\n words.map(function(wrd) {\n wrd = wrd.split(/\\s*\\n/);\n if (wrd.length > 1) {\n wrds = wrds.concat(\n wrd.map(function(wrd, idx) {\n return (idx && wrd.length ? \"\\n\" : \"\") + wrd;\n })\n );\n } else {\n wrds.push(wrd[0]);\n }\n });\n words = wrds;\n lineIndent = getStringUnitWidth.apply(this, [pad, options]);\n }\n\n for (i = 0, l = words.length; i < l; i++) {\n var force = 0;\n\n word = words[i];\n if (lineIndent && word[0] == \"\\n\") {\n word = word.substr(1);\n force = 1;\n }\n widths_array = getCharWidthsArray.apply(this, [word, options]);\n current_word_length = widths_array.reduce(function(pv, cv) {\n return pv + cv;\n }, 0);\n\n if (\n line_length + separator_length + current_word_length > maxlen ||\n force\n ) {\n if (current_word_length > maxlen) {\n // this happens when you have space-less long URLs for example.\n // we just chop these to size. We do NOT insert hiphens\n tmp = splitLongWord.apply(this, [\n word,\n widths_array,\n maxlen - (line_length + separator_length),\n maxlen\n ]);\n // first line we add to existing line object\n line.push(tmp.shift()); // it's ok to have extra space indicator there\n // last line we make into new line object\n line = [tmp.pop()];\n // lines in the middle we apped to lines object as whole lines\n while (tmp.length) {\n lines.push([tmp.shift()]); // single fragment occupies whole line\n }\n current_word_length = widths_array\n .slice(word.length - (line[0] ? line[0].length : 0))\n .reduce(function(pv, cv) {\n return pv + cv;\n }, 0);\n } else {\n // just put it on a new line\n line = [word];\n }\n\n // now we attach new line to lines\n lines.push(line);\n line_length = current_word_length + lineIndent;\n separator_length = spaceCharWidth;\n } else {\n line.push(word);\n\n line_length += separator_length + current_word_length;\n separator_length = spaceCharWidth;\n }\n }\n\n var postProcess;\n if (lineIndent) {\n postProcess = function(ln, idx) {\n return (idx ? pad : \"\") + ln.join(\" \");\n };\n } else {\n postProcess = function(ln) {\n return ln.join(\" \");\n };\n }\n\n return lines.map(postProcess);\n };\n\n /**\n * Splits a given string into an array of strings. Uses 'size' value\n * (in measurement units declared as default for the jsPDF instance)\n * and the font's \"widths\" and \"Kerning\" tables, where available, to\n * determine display length of a given string for a given font.\n *\n * We use character's 100% of unit size (height) as width when Width\n * table or other default width is not available.\n *\n * @name splitTextToSize\n * @public\n * @function\n * @param {string} text Unencoded, regular JavaScript (Unicode, UTF-16 / UCS-2) string.\n * @param {number} size Nominal number, measured in units default to this instance of jsPDF.\n * @param {Object} options Optional flags needed for chopper to do the right thing.\n * @returns {Array} array Array with strings chopped to size.\n */\n API.splitTextToSize = function(text, maxlen, options) {\n \"use strict\";\n\n options = options || {};\n\n var fsize = options.fontSize || this.internal.getFontSize(),\n newOptions = function(options) {\n var widths = {\n 0: 1\n },\n kerning = {};\n\n if (!options.widths || !options.kerning) {\n var f = this.internal.getFont(options.fontName, options.fontStyle),\n encoding = \"Unicode\";\n // NOT UTF8, NOT UTF16BE/LE, NOT UCS2BE/LE\n // Actual JavaScript-native String's 16bit char codes used.\n // no multi-byte logic here\n\n if (f.metadata[encoding]) {\n return {\n widths: f.metadata[encoding].widths || widths,\n kerning: f.metadata[encoding].kerning || kerning\n };\n } else {\n return {\n font: f.metadata,\n fontSize: this.internal.getFontSize(),\n charSpace: this.internal.getCharSpace()\n };\n }\n } else {\n return {\n widths: options.widths,\n kerning: options.kerning\n };\n }\n }.call(this, options);\n\n // first we split on end-of-line chars\n var paragraphs;\n if (Array.isArray(text)) {\n paragraphs = text;\n } else {\n paragraphs = String(text).split(/\\r?\\n/);\n }\n\n // now we convert size (max length of line) into \"font size units\"\n // at present time, the \"font size unit\" is always 'point'\n // 'proportional' means, \"in proportion to font size\"\n var fontUnit_maxLen = (1.0 * this.internal.scaleFactor * maxlen) / fsize;\n // at this time, fsize is always in \"points\" regardless of the default measurement unit of the doc.\n // this may change in the future?\n // until then, proportional_maxlen is likely to be in 'points'\n\n // If first line is to be indented (shorter or longer) than maxLen\n // we indicate that by using CSS-style \"text-indent\" option.\n // here it's in font units too (which is likely 'points')\n // it can be negative (which makes the first line longer than maxLen)\n newOptions.textIndent = options.textIndent\n ? (options.textIndent * 1.0 * this.internal.scaleFactor) / fsize\n : 0;\n newOptions.lineIndent = options.lineIndent;\n\n var i,\n l,\n output = [];\n for (i = 0, l = paragraphs.length; i < l; i++) {\n output = output.concat(\n splitParagraphIntoLines.apply(this, [\n paragraphs[i],\n fontUnit_maxLen,\n newOptions\n ])\n );\n }\n\n return output;\n };\n})(jsPDF.API);\n","/**\n * @license\n * (c) Dean McNamee , 2013.\n *\n * https://github.com/deanm/omggif\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n * IN THE SOFTWARE.\n *\n * omggif is a JavaScript implementation of a GIF 89a encoder and decoder,\n * including animation and compression. It does not rely on any specific\n * underlying system, so should run in the browser, Node, or Plask.\n */\n\n\"use strict\";\n\nimport { console } from \"./console.js\";\n\nfunction GifWriter(buf, width, height, gopts) {\n var p = 0;\n\n var gopts = gopts === undefined ? {} : gopts;\n var loop_count = gopts.loop === undefined ? null : gopts.loop;\n var global_palette = gopts.palette === undefined ? null : gopts.palette;\n\n if (width <= 0 || height <= 0 || width > 65535 || height > 65535)\n throw new Error(\"Width/Height invalid.\");\n\n function check_palette_and_num_colors(palette) {\n var num_colors = palette.length;\n if (num_colors < 2 || num_colors > 256 || num_colors & (num_colors - 1)) {\n throw new Error(\n \"Invalid code/color length, must be power of 2 and 2 .. 256.\"\n );\n }\n return num_colors;\n }\n\n // - Header.\n buf[p++] = 0x47;\n buf[p++] = 0x49;\n buf[p++] = 0x46; // GIF\n buf[p++] = 0x38;\n buf[p++] = 0x39;\n buf[p++] = 0x61; // 89a\n\n // Handling of Global Color Table (palette) and background index.\n var gp_num_colors_pow2 = 0;\n var background = 0;\n if (global_palette !== null) {\n var gp_num_colors = check_palette_and_num_colors(global_palette);\n while ((gp_num_colors >>= 1)) ++gp_num_colors_pow2;\n gp_num_colors = 1 << gp_num_colors_pow2;\n --gp_num_colors_pow2;\n if (gopts.background !== undefined) {\n background = gopts.background;\n if (background >= gp_num_colors)\n throw new Error(\"Background index out of range.\");\n // The GIF spec states that a background index of 0 should be ignored, so\n // this is probably a mistake and you really want to set it to another\n // slot in the palette. But actually in the end most browsers, etc end\n // up ignoring this almost completely (including for dispose background).\n if (background === 0)\n throw new Error(\"Background index explicitly passed as 0.\");\n }\n }\n\n // - Logical Screen Descriptor.\n // NOTE(deanm): w/h apparently ignored by implementations, but set anyway.\n buf[p++] = width & 0xff;\n buf[p++] = (width >> 8) & 0xff;\n buf[p++] = height & 0xff;\n buf[p++] = (height >> 8) & 0xff;\n // NOTE: Indicates 0-bpp original color resolution (unused?).\n buf[p++] = (global_palette !== null ? 0x80 : 0) | gp_num_colors_pow2; // Global Color Table Flag. // NOTE: No sort flag (unused?).\n buf[p++] = background; // Background Color Index.\n buf[p++] = 0; // Pixel aspect ratio (unused?).\n\n // - Global Color Table\n if (global_palette !== null) {\n for (var i = 0, il = global_palette.length; i < il; ++i) {\n var rgb = global_palette[i];\n buf[p++] = (rgb >> 16) & 0xff;\n buf[p++] = (rgb >> 8) & 0xff;\n buf[p++] = rgb & 0xff;\n }\n }\n\n if (loop_count !== null) {\n // Netscape block for looping.\n if (loop_count < 0 || loop_count > 65535)\n throw new Error(\"Loop count invalid.\");\n // Extension code, label, and length.\n buf[p++] = 0x21;\n buf[p++] = 0xff;\n buf[p++] = 0x0b;\n // NETSCAPE2.0\n buf[p++] = 0x4e;\n buf[p++] = 0x45;\n buf[p++] = 0x54;\n buf[p++] = 0x53;\n buf[p++] = 0x43;\n buf[p++] = 0x41;\n buf[p++] = 0x50;\n buf[p++] = 0x45;\n buf[p++] = 0x32;\n buf[p++] = 0x2e;\n buf[p++] = 0x30;\n // Sub-block\n buf[p++] = 0x03;\n buf[p++] = 0x01;\n buf[p++] = loop_count & 0xff;\n buf[p++] = (loop_count >> 8) & 0xff;\n buf[p++] = 0x00; // Terminator.\n }\n\n var ended = false;\n\n this.addFrame = function(x, y, w, h, indexed_pixels, opts) {\n if (ended === true) {\n --p;\n ended = false;\n } // Un-end.\n\n opts = opts === undefined ? {} : opts;\n\n // TODO(deanm): Bounds check x, y. Do they need to be within the virtual\n // canvas width/height, I imagine?\n if (x < 0 || y < 0 || x > 65535 || y > 65535)\n throw new Error(\"x/y invalid.\");\n\n if (w <= 0 || h <= 0 || w > 65535 || h > 65535)\n throw new Error(\"Width/Height invalid.\");\n\n if (indexed_pixels.length < w * h)\n throw new Error(\"Not enough pixels for the frame size.\");\n\n var using_local_palette = true;\n var palette = opts.palette;\n if (palette === undefined || palette === null) {\n using_local_palette = false;\n palette = global_palette;\n }\n\n if (palette === undefined || palette === null)\n throw new Error(\"Must supply either a local or global palette.\");\n\n var num_colors = check_palette_and_num_colors(palette);\n\n // Compute the min_code_size (power of 2), destroying num_colors.\n var min_code_size = 0;\n while ((num_colors >>= 1)) ++min_code_size;\n num_colors = 1 << min_code_size; // Now we can easily get it back.\n\n var delay = opts.delay === undefined ? 0 : opts.delay;\n\n // From the spec:\n // 0 - No disposal specified. The decoder is\n // not required to take any action.\n // 1 - Do not dispose. The graphic is to be left\n // in place.\n // 2 - Restore to background color. The area used by the\n // graphic must be restored to the background color.\n // 3 - Restore to previous. The decoder is required to\n // restore the area overwritten by the graphic with\n // what was there prior to rendering the graphic.\n // 4-7 - To be defined.\n // NOTE(deanm): Dispose background doesn't really work, apparently most\n // browsers ignore the background palette index and clear to transparency.\n var disposal = opts.disposal === undefined ? 0 : opts.disposal;\n if (disposal < 0 || disposal > 3)\n // 4-7 is reserved.\n throw new Error(\"Disposal out of range.\");\n\n var use_transparency = false;\n var transparent_index = 0;\n if (opts.transparent !== undefined && opts.transparent !== null) {\n use_transparency = true;\n transparent_index = opts.transparent;\n if (transparent_index < 0 || transparent_index >= num_colors)\n throw new Error(\"Transparent color index.\");\n }\n\n if (disposal !== 0 || use_transparency || delay !== 0) {\n // - Graphics Control Extension\n buf[p++] = 0x21;\n buf[p++] = 0xf9; // Extension / Label.\n buf[p++] = 4; // Byte size.\n\n buf[p++] = (disposal << 2) | (use_transparency === true ? 1 : 0);\n buf[p++] = delay & 0xff;\n buf[p++] = (delay >> 8) & 0xff;\n buf[p++] = transparent_index; // Transparent color index.\n buf[p++] = 0; // Block Terminator.\n }\n\n // - Image Descriptor\n buf[p++] = 0x2c; // Image Seperator.\n buf[p++] = x & 0xff;\n buf[p++] = (x >> 8) & 0xff; // Left.\n buf[p++] = y & 0xff;\n buf[p++] = (y >> 8) & 0xff; // Top.\n buf[p++] = w & 0xff;\n buf[p++] = (w >> 8) & 0xff;\n buf[p++] = h & 0xff;\n buf[p++] = (h >> 8) & 0xff;\n // NOTE: No sort flag (unused?).\n // TODO(deanm): Support interlace.\n buf[p++] = using_local_palette === true ? 0x80 | (min_code_size - 1) : 0;\n\n // - Local Color Table\n if (using_local_palette === true) {\n for (var i = 0, il = palette.length; i < il; ++i) {\n var rgb = palette[i];\n buf[p++] = (rgb >> 16) & 0xff;\n buf[p++] = (rgb >> 8) & 0xff;\n buf[p++] = rgb & 0xff;\n }\n }\n\n p = GifWriterOutputLZWCodeStream(\n buf,\n p,\n min_code_size < 2 ? 2 : min_code_size,\n indexed_pixels\n );\n\n return p;\n };\n\n this.end = function() {\n if (ended === false) {\n buf[p++] = 0x3b; // Trailer.\n ended = true;\n }\n return p;\n };\n\n this.getOutputBuffer = function() {\n return buf;\n };\n this.setOutputBuffer = function(v) {\n buf = v;\n };\n this.getOutputBufferPosition = function() {\n return p;\n };\n this.setOutputBufferPosition = function(v) {\n p = v;\n };\n}\n\n// Main compression routine, palette indexes -> LZW code stream.\n// |index_stream| must have at least one entry.\nfunction GifWriterOutputLZWCodeStream(buf, p, min_code_size, index_stream) {\n buf[p++] = min_code_size;\n var cur_subblock = p++; // Pointing at the length field.\n\n var clear_code = 1 << min_code_size;\n var code_mask = clear_code - 1;\n var eoi_code = clear_code + 1;\n var next_code = eoi_code + 1;\n\n var cur_code_size = min_code_size + 1; // Number of bits per code.\n var cur_shift = 0;\n // We have at most 12-bit codes, so we should have to hold a max of 19\n // bits here (and then we would write out).\n var cur = 0;\n\n function emit_bytes_to_buffer(bit_block_size) {\n while (cur_shift >= bit_block_size) {\n buf[p++] = cur & 0xff;\n cur >>= 8;\n cur_shift -= 8;\n if (p === cur_subblock + 256) {\n // Finished a subblock.\n buf[cur_subblock] = 255;\n cur_subblock = p++;\n }\n }\n }\n\n function emit_code(c) {\n cur |= c << cur_shift;\n cur_shift += cur_code_size;\n emit_bytes_to_buffer(8);\n }\n\n // I am not an expert on the topic, and I don't want to write a thesis.\n // However, it is good to outline here the basic algorithm and the few data\n // structures and optimizations here that make this implementation fast.\n // The basic idea behind LZW is to build a table of previously seen runs\n // addressed by a short id (herein called output code). All data is\n // referenced by a code, which represents one or more values from the\n // original input stream. All input bytes can be referenced as the same\n // value as an output code. So if you didn't want any compression, you\n // could more or less just output the original bytes as codes (there are\n // some details to this, but it is the idea). In order to achieve\n // compression, values greater then the input range (codes can be up to\n // 12-bit while input only 8-bit) represent a sequence of previously seen\n // inputs. The decompressor is able to build the same mapping while\n // decoding, so there is always a shared common knowledge between the\n // encoding and decoder, which is also important for \"timing\" aspects like\n // how to handle variable bit width code encoding.\n //\n // One obvious but very important consequence of the table system is there\n // is always a unique id (at most 12-bits) to map the runs. 'A' might be\n // 4, then 'AA' might be 10, 'AAA' 11, 'AAAA' 12, etc. This relationship\n // can be used for an effecient lookup strategy for the code mapping. We\n // need to know if a run has been seen before, and be able to map that run\n // to the output code. Since we start with known unique ids (input bytes),\n // and then from those build more unique ids (table entries), we can\n // continue this chain (almost like a linked list) to always have small\n // integer values that represent the current byte chains in the encoder.\n // This means instead of tracking the input bytes (AAAABCD) to know our\n // current state, we can track the table entry for AAAABC (it is guaranteed\n // to exist by the nature of the algorithm) and the next character D.\n // Therefor the tuple of (table_entry, byte) is guaranteed to also be\n // unique. This allows us to create a simple lookup key for mapping input\n // sequences to codes (table indices) without having to store or search\n // any of the code sequences. So if 'AAAA' has a table entry of 12, the\n // tuple of ('AAAA', K) for any input byte K will be unique, and can be our\n // key. This leads to a integer value at most 20-bits, which can always\n // fit in an SMI value and be used as a fast sparse array / object key.\n\n // Output code for the current contents of the index buffer.\n var ib_code = index_stream[0] & code_mask; // Load first input index.\n var code_table = {}; // Key'd on our 20-bit \"tuple\".\n\n emit_code(clear_code); // Spec says first code should be a clear code.\n\n // First index already loaded, process the rest of the stream.\n for (var i = 1, il = index_stream.length; i < il; ++i) {\n var k = index_stream[i] & code_mask;\n var cur_key = (ib_code << 8) | k; // (prev, k) unique tuple.\n var cur_code = code_table[cur_key]; // buffer + k.\n\n // Check if we have to create a new code table entry.\n if (cur_code === undefined) {\n // We don't have buffer + k.\n // Emit index buffer (without k).\n // This is an inline version of emit_code, because this is the core\n // writing routine of the compressor (and V8 cannot inline emit_code\n // because it is a closure here in a different context). Additionally\n // we can call emit_byte_to_buffer less often, because we can have\n // 30-bits (from our 31-bit signed SMI), and we know our codes will only\n // be 12-bits, so can safely have 18-bits there without overflow.\n // emit_code(ib_code);\n cur |= ib_code << cur_shift;\n cur_shift += cur_code_size;\n while (cur_shift >= 8) {\n buf[p++] = cur & 0xff;\n cur >>= 8;\n cur_shift -= 8;\n if (p === cur_subblock + 256) {\n // Finished a subblock.\n buf[cur_subblock] = 255;\n cur_subblock = p++;\n }\n }\n\n if (next_code === 4096) {\n // Table full, need a clear.\n emit_code(clear_code);\n next_code = eoi_code + 1;\n cur_code_size = min_code_size + 1;\n code_table = {};\n } else {\n // Table not full, insert a new entry.\n // Increase our variable bit code sizes if necessary. This is a bit\n // tricky as it is based on \"timing\" between the encoding and\n // decoder. From the encoders perspective this should happen after\n // we've already emitted the index buffer and are about to create the\n // first table entry that would overflow our current code bit size.\n if (next_code >= 1 << cur_code_size) ++cur_code_size;\n code_table[cur_key] = next_code++; // Insert into code table.\n }\n\n ib_code = k; // Index buffer to single input k.\n } else {\n ib_code = cur_code; // Index buffer to sequence in code table.\n }\n }\n\n emit_code(ib_code); // There will still be something in the index buffer.\n emit_code(eoi_code); // End Of Information.\n\n // Flush / finalize the sub-blocks stream to the buffer.\n emit_bytes_to_buffer(1);\n\n // Finish the sub-blocks, writing out any unfinished lengths and\n // terminating with a sub-block of length 0. If we have already started\n // but not yet used a sub-block it can just become the terminator.\n if (cur_subblock + 1 === p) {\n // Started but unused.\n buf[cur_subblock] = 0;\n } else {\n // Started and used, write length and additional terminator block.\n buf[cur_subblock] = p - cur_subblock - 1;\n buf[p++] = 0;\n }\n return p;\n}\n\nfunction GifReader(buf) {\n var p = 0;\n\n // - Header (GIF87a or GIF89a).\n if (\n buf[p++] !== 0x47 ||\n buf[p++] !== 0x49 ||\n buf[p++] !== 0x46 ||\n buf[p++] !== 0x38 ||\n ((buf[p++] + 1) & 0xfd) !== 0x38 ||\n buf[p++] !== 0x61\n ) {\n throw new Error(\"Invalid GIF 87a/89a header.\");\n }\n\n // - Logical Screen Descriptor.\n var width = buf[p++] | (buf[p++] << 8);\n var height = buf[p++] | (buf[p++] << 8);\n var pf0 = buf[p++]; // .\n var global_palette_flag = pf0 >> 7;\n var num_global_colors_pow2 = pf0 & 0x7;\n var num_global_colors = 1 << (num_global_colors_pow2 + 1);\n var background = buf[p++];\n buf[p++]; // Pixel aspect ratio (unused?).\n\n var global_palette_offset = null;\n var global_palette_size = null;\n\n if (global_palette_flag) {\n global_palette_offset = p;\n global_palette_size = num_global_colors;\n p += num_global_colors * 3; // Seek past palette.\n }\n\n var no_eof = true;\n\n var frames = [];\n\n var delay = 0;\n var transparent_index = null;\n var disposal = 0; // 0 - No disposal specified.\n var loop_count = null;\n\n this.width = width;\n this.height = height;\n\n while (no_eof && p < buf.length) {\n switch (buf[p++]) {\n case 0x21: // Graphics Control Extension Block\n switch (buf[p++]) {\n case 0xff: // Application specific block\n // Try if it's a Netscape block (with animation loop counter).\n if (\n buf[p] !== 0x0b || // 21 FF already read, check block size.\n // NETSCAPE2.0\n (buf[p + 1] == 0x4e &&\n buf[p + 2] == 0x45 &&\n buf[p + 3] == 0x54 &&\n buf[p + 4] == 0x53 &&\n buf[p + 5] == 0x43 &&\n buf[p + 6] == 0x41 &&\n buf[p + 7] == 0x50 &&\n buf[p + 8] == 0x45 &&\n buf[p + 9] == 0x32 &&\n buf[p + 10] == 0x2e &&\n buf[p + 11] == 0x30 &&\n // Sub-block\n buf[p + 12] == 0x03 &&\n buf[p + 13] == 0x01 &&\n buf[p + 16] == 0)\n ) {\n p += 14;\n loop_count = buf[p++] | (buf[p++] << 8);\n p++; // Skip terminator.\n } else {\n // We don't know what it is, just try to get past it.\n p += 12;\n while (true) {\n // Seek through subblocks.\n var block_size = buf[p++];\n // Bad block size (ex: undefined from an out of bounds read).\n if (!(block_size >= 0)) throw Error(\"Invalid block size\");\n if (block_size === 0) break; // 0 size is terminator\n p += block_size;\n }\n }\n break;\n\n case 0xf9: // Graphics Control Extension\n if (buf[p++] !== 0x4 || buf[p + 4] !== 0)\n throw new Error(\"Invalid graphics extension block.\");\n var pf1 = buf[p++];\n delay = buf[p++] | (buf[p++] << 8);\n transparent_index = buf[p++];\n if ((pf1 & 1) === 0) transparent_index = null;\n disposal = (pf1 >> 2) & 0x7;\n p++; // Skip terminator.\n break;\n\n case 0xfe: // Comment Extension.\n while (true) {\n // Seek through subblocks.\n var block_size = buf[p++];\n // Bad block size (ex: undefined from an out of bounds read).\n if (!(block_size >= 0)) throw Error(\"Invalid block size\");\n if (block_size === 0) break; // 0 size is terminator\n // console.log(buf.slice(p, p+block_size).toString('ascii'));\n p += block_size;\n }\n break;\n\n default:\n throw new Error(\n \"Unknown graphic control label: 0x\" + buf[p - 1].toString(16)\n );\n }\n break;\n\n case 0x2c: // Image Descriptor.\n var x = buf[p++] | (buf[p++] << 8);\n var y = buf[p++] | (buf[p++] << 8);\n var w = buf[p++] | (buf[p++] << 8);\n var h = buf[p++] | (buf[p++] << 8);\n var pf2 = buf[p++];\n var local_palette_flag = pf2 >> 7;\n var interlace_flag = (pf2 >> 6) & 1;\n var num_local_colors_pow2 = pf2 & 0x7;\n var num_local_colors = 1 << (num_local_colors_pow2 + 1);\n var palette_offset = global_palette_offset;\n var palette_size = global_palette_size;\n var has_local_palette = false;\n if (local_palette_flag) {\n var has_local_palette = true;\n palette_offset = p; // Override with local palette.\n palette_size = num_local_colors;\n p += num_local_colors * 3; // Seek past palette.\n }\n\n var data_offset = p;\n\n p++; // codesize\n while (true) {\n var block_size = buf[p++];\n // Bad block size (ex: undefined from an out of bounds read).\n if (!(block_size >= 0)) throw Error(\"Invalid block size\");\n if (block_size === 0) break; // 0 size is terminator\n p += block_size;\n }\n\n frames.push({\n x: x,\n y: y,\n width: w,\n height: h,\n has_local_palette: has_local_palette,\n palette_offset: palette_offset,\n palette_size: palette_size,\n data_offset: data_offset,\n data_length: p - data_offset,\n transparent_index: transparent_index,\n interlaced: !!interlace_flag,\n delay: delay,\n disposal: disposal\n });\n break;\n\n case 0x3b: // Trailer Marker (end of file).\n no_eof = false;\n break;\n\n default:\n throw new Error(\"Unknown gif block: 0x\" + buf[p - 1].toString(16));\n break;\n }\n }\n\n this.numFrames = function() {\n return frames.length;\n };\n\n this.loopCount = function() {\n return loop_count;\n };\n\n this.frameInfo = function(frame_num) {\n if (frame_num < 0 || frame_num >= frames.length)\n throw new Error(\"Frame index out of range.\");\n return frames[frame_num];\n };\n\n this.decodeAndBlitFrameBGRA = function(frame_num, pixels) {\n var frame = this.frameInfo(frame_num);\n var num_pixels = frame.width * frame.height;\n var index_stream = new Uint8Array(num_pixels); // At most 8-bit indices.\n GifReaderLZWOutputIndexStream(\n buf,\n frame.data_offset,\n index_stream,\n num_pixels\n );\n var palette_offset = frame.palette_offset;\n\n // NOTE(deanm): It seems to be much faster to compare index to 256 than\n // to === null. Not sure why, but CompareStub_EQ_STRICT shows up high in\n // the profile, not sure if it's related to using a Uint8Array.\n var trans = frame.transparent_index;\n if (trans === null) trans = 256;\n\n // We are possibly just blitting to a portion of the entire frame.\n // That is a subrect within the framerect, so the additional pixels\n // must be skipped over after we finished a scanline.\n var framewidth = frame.width;\n var framestride = width - framewidth;\n var xleft = framewidth; // Number of subrect pixels left in scanline.\n\n // Output indices of the top left and bottom right corners of the subrect.\n var opbeg = (frame.y * width + frame.x) * 4;\n var opend = ((frame.y + frame.height) * width + frame.x) * 4;\n var op = opbeg;\n\n var scanstride = framestride * 4;\n\n // Use scanstride to skip past the rows when interlacing. This is skipping\n // 7 rows for the first two passes, then 3 then 1.\n if (frame.interlaced === true) {\n scanstride += width * 4 * 7; // Pass 1.\n }\n\n var interlaceskip = 8; // Tracking the row interval in the current pass.\n\n for (var i = 0, il = index_stream.length; i < il; ++i) {\n var index = index_stream[i];\n\n if (xleft === 0) {\n // Beginning of new scan line\n op += scanstride;\n xleft = framewidth;\n if (op >= opend) {\n // Catch the wrap to switch passes when interlacing.\n scanstride = framestride * 4 + width * 4 * (interlaceskip - 1);\n // interlaceskip / 2 * 4 is interlaceskip << 1.\n op = opbeg + (framewidth + framestride) * (interlaceskip << 1);\n interlaceskip >>= 1;\n }\n }\n\n if (index === trans) {\n op += 4;\n } else {\n var r = buf[palette_offset + index * 3];\n var g = buf[palette_offset + index * 3 + 1];\n var b = buf[palette_offset + index * 3 + 2];\n pixels[op++] = b;\n pixels[op++] = g;\n pixels[op++] = r;\n pixels[op++] = 255;\n }\n --xleft;\n }\n };\n\n // I will go to copy and paste hell one day...\n this.decodeAndBlitFrameRGBA = function(frame_num, pixels) {\n var frame = this.frameInfo(frame_num);\n var num_pixels = frame.width * frame.height;\n var index_stream = new Uint8Array(num_pixels); // At most 8-bit indices.\n GifReaderLZWOutputIndexStream(\n buf,\n frame.data_offset,\n index_stream,\n num_pixels\n );\n var palette_offset = frame.palette_offset;\n\n // NOTE(deanm): It seems to be much faster to compare index to 256 than\n // to === null. Not sure why, but CompareStub_EQ_STRICT shows up high in\n // the profile, not sure if it's related to using a Uint8Array.\n var trans = frame.transparent_index;\n if (trans === null) trans = 256;\n\n // We are possibly just blitting to a portion of the entire frame.\n // That is a subrect within the framerect, so the additional pixels\n // must be skipped over after we finished a scanline.\n var framewidth = frame.width;\n var framestride = width - framewidth;\n var xleft = framewidth; // Number of subrect pixels left in scanline.\n\n // Output indices of the top left and bottom right corners of the subrect.\n var opbeg = (frame.y * width + frame.x) * 4;\n var opend = ((frame.y + frame.height) * width + frame.x) * 4;\n var op = opbeg;\n\n var scanstride = framestride * 4;\n\n // Use scanstride to skip past the rows when interlacing. This is skipping\n // 7 rows for the first two passes, then 3 then 1.\n if (frame.interlaced === true) {\n scanstride += width * 4 * 7; // Pass 1.\n }\n\n var interlaceskip = 8; // Tracking the row interval in the current pass.\n\n for (var i = 0, il = index_stream.length; i < il; ++i) {\n var index = index_stream[i];\n\n if (xleft === 0) {\n // Beginning of new scan line\n op += scanstride;\n xleft = framewidth;\n if (op >= opend) {\n // Catch the wrap to switch passes when interlacing.\n scanstride = framestride * 4 + width * 4 * (interlaceskip - 1);\n // interlaceskip / 2 * 4 is interlaceskip << 1.\n op = opbeg + (framewidth + framestride) * (interlaceskip << 1);\n interlaceskip >>= 1;\n }\n }\n\n if (index === trans) {\n op += 4;\n } else {\n var r = buf[palette_offset + index * 3];\n var g = buf[palette_offset + index * 3 + 1];\n var b = buf[palette_offset + index * 3 + 2];\n pixels[op++] = r;\n pixels[op++] = g;\n pixels[op++] = b;\n pixels[op++] = 255;\n }\n --xleft;\n }\n };\n}\n\nfunction GifReaderLZWOutputIndexStream(code_stream, p, output, output_length) {\n var min_code_size = code_stream[p++];\n\n var clear_code = 1 << min_code_size;\n var eoi_code = clear_code + 1;\n var next_code = eoi_code + 1;\n\n var cur_code_size = min_code_size + 1; // Number of bits per code.\n // NOTE: This shares the same name as the encoder, but has a different\n // meaning here. Here this masks each code coming from the code stream.\n var code_mask = (1 << cur_code_size) - 1;\n var cur_shift = 0;\n var cur = 0;\n\n var op = 0; // Output pointer.\n\n var subblock_size = code_stream[p++];\n\n // TODO(deanm): Would using a TypedArray be any faster? At least it would\n // solve the fast mode / backing store uncertainty.\n // var code_table = Array(4096);\n var code_table = new Int32Array(4096); // Can be signed, we only use 20 bits.\n\n var prev_code = null; // Track code-1.\n\n while (true) {\n // Read up to two bytes, making sure we always 12-bits for max sized code.\n while (cur_shift < 16) {\n if (subblock_size === 0) break; // No more data to be read.\n\n cur |= code_stream[p++] << cur_shift;\n cur_shift += 8;\n\n if (subblock_size === 1) {\n // Never let it get to 0 to hold logic above.\n subblock_size = code_stream[p++]; // Next subblock.\n } else {\n --subblock_size;\n }\n }\n\n // TODO(deanm): We should never really get here, we should have received\n // and EOI.\n if (cur_shift < cur_code_size) break;\n\n var code = cur & code_mask;\n cur >>= cur_code_size;\n cur_shift -= cur_code_size;\n\n // TODO(deanm): Maybe should check that the first code was a clear code,\n // at least this is what you're supposed to do. But actually our encoder\n // now doesn't emit a clear code first anyway.\n if (code === clear_code) {\n // We don't actually have to clear the table. This could be a good idea\n // for greater error checking, but we don't really do any anyway. We\n // will just track it with next_code and overwrite old entries.\n\n next_code = eoi_code + 1;\n cur_code_size = min_code_size + 1;\n code_mask = (1 << cur_code_size) - 1;\n\n // Don't update prev_code ?\n prev_code = null;\n continue;\n } else if (code === eoi_code) {\n break;\n }\n\n // We have a similar situation as the decoder, where we want to store\n // variable length entries (code table entries), but we want to do in a\n // faster manner than an array of arrays. The code below stores sort of a\n // linked list within the code table, and then \"chases\" through it to\n // construct the dictionary entries. When a new entry is created, just the\n // last byte is stored, and the rest (prefix) of the entry is only\n // referenced by its table entry. Then the code chases through the\n // prefixes until it reaches a single byte code. We have to chase twice,\n // first to compute the length, and then to actually copy the data to the\n // output (backwards, since we know the length). The alternative would be\n // storing something in an intermediate stack, but that doesn't make any\n // more sense. I implemented an approach where it also stored the length\n // in the code table, although it's a bit tricky because you run out of\n // bits (12 + 12 + 8), but I didn't measure much improvements (the table\n // entries are generally not the long). Even when I created benchmarks for\n // very long table entries the complexity did not seem worth it.\n // The code table stores the prefix entry in 12 bits and then the suffix\n // byte in 8 bits, so each entry is 20 bits.\n\n var chase_code = code < next_code ? code : prev_code;\n\n // Chase what we will output, either {CODE} or {CODE-1}.\n var chase_length = 0;\n var chase = chase_code;\n while (chase > clear_code) {\n chase = code_table[chase] >> 8;\n ++chase_length;\n }\n\n var k = chase;\n\n var op_end = op + chase_length + (chase_code !== code ? 1 : 0);\n if (op_end > output_length) {\n console.log(\"Warning, gif stream longer than expected.\");\n return;\n }\n\n // Already have the first byte from the chase, might as well write it fast.\n output[op++] = k;\n\n op += chase_length;\n var b = op; // Track pointer, writing backwards.\n\n if (chase_code !== code)\n // The case of emitting {CODE-1} + k.\n output[op++] = k;\n\n chase = chase_code;\n while (chase_length--) {\n chase = code_table[chase];\n output[--b] = chase & 0xff; // Write backwards.\n chase >>= 8; // Pull down to the prefix code.\n }\n\n if (prev_code !== null && next_code < 4096) {\n code_table[next_code++] = (prev_code << 8) | k;\n // TODO(deanm): Figure out this clearing vs code growth logic better. I\n // have an feeling that it should just happen somewhere else, for now it\n // is awkward between when we grow past the max and then hit a clear code.\n // For now just check if we hit the max 12-bits (then a clear code should\n // follow, also of course encoded in 12-bits).\n if (next_code >= code_mask + 1 && cur_code_size < 12) {\n ++cur_code_size;\n code_mask = (code_mask << 1) | 1;\n }\n }\n\n prev_code = code;\n }\n\n if (op !== output_length) {\n console.log(\"Warning, gif stream shorter than expected.\");\n }\n\n return output;\n}\n\nexport { GifReader, GifWriter };\n","/**\n * @license\n Copyright (c) 2008, Adobe Systems Incorporated\n All rights reserved.\n\n Redistribution and use in source and binary forms, with or without \n modification, are permitted provided that the following conditions are\n met:\n\n * Redistributions of source code must retain the above copyright notice, \n this list of conditions and the following disclaimer.\n \n * Redistributions in binary form must reproduce the above copyright\n notice, this list of conditions and the following disclaimer in the \n documentation and/or other materials provided with the distribution.\n \n * Neither the name of Adobe Systems Incorporated nor the names of its \n contributors may be used to endorse or promote products derived from \n this software without specific prior written permission.\n\n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\n IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\n THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR \n CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF\n LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n*/\n/*\nJPEG encoder ported to JavaScript and optimized by Andreas Ritter, www.bytestrom.eu, 11/2009\n\nBasic GUI blocking jpeg encoder\n*/\n\nfunction JPEGEncoder(quality) {\n var ffloor = Math.floor;\n var YTable = new Array(64);\n var UVTable = new Array(64);\n var fdtbl_Y = new Array(64);\n var fdtbl_UV = new Array(64);\n var YDC_HT;\n var UVDC_HT;\n var YAC_HT;\n var UVAC_HT;\n\n var bitcode = new Array(65535);\n var category = new Array(65535);\n var outputfDCTQuant = new Array(64);\n var DU = new Array(64);\n var byteout = [];\n var bytenew = 0;\n var bytepos = 7;\n\n var YDU = new Array(64);\n var UDU = new Array(64);\n var VDU = new Array(64);\n var clt = new Array(256);\n var RGB_YUV_TABLE = new Array(2048);\n var currentQuality;\n\n var ZigZag = [\n 0,\n 1,\n 5,\n 6,\n 14,\n 15,\n 27,\n 28,\n 2,\n 4,\n 7,\n 13,\n 16,\n 26,\n 29,\n 42,\n 3,\n 8,\n 12,\n 17,\n 25,\n 30,\n 41,\n 43,\n 9,\n 11,\n 18,\n 24,\n 31,\n 40,\n 44,\n 53,\n 10,\n 19,\n 23,\n 32,\n 39,\n 45,\n 52,\n 54,\n 20,\n 22,\n 33,\n 38,\n 46,\n 51,\n 55,\n 60,\n 21,\n 34,\n 37,\n 47,\n 50,\n 56,\n 59,\n 61,\n 35,\n 36,\n 48,\n 49,\n 57,\n 58,\n 62,\n 63\n ];\n\n var std_dc_luminance_nrcodes = [\n 0,\n 0,\n 1,\n 5,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0,\n 0\n ];\n var std_dc_luminance_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];\n var std_ac_luminance_nrcodes = [\n 0,\n 0,\n 2,\n 1,\n 3,\n 3,\n 2,\n 4,\n 3,\n 5,\n 5,\n 4,\n 4,\n 0,\n 0,\n 1,\n 0x7d\n ];\n var std_ac_luminance_values = [\n 0x01,\n 0x02,\n 0x03,\n 0x00,\n 0x04,\n 0x11,\n 0x05,\n 0x12,\n 0x21,\n 0x31,\n 0x41,\n 0x06,\n 0x13,\n 0x51,\n 0x61,\n 0x07,\n 0x22,\n 0x71,\n 0x14,\n 0x32,\n 0x81,\n 0x91,\n 0xa1,\n 0x08,\n 0x23,\n 0x42,\n 0xb1,\n 0xc1,\n 0x15,\n 0x52,\n 0xd1,\n 0xf0,\n 0x24,\n 0x33,\n 0x62,\n 0x72,\n 0x82,\n 0x09,\n 0x0a,\n 0x16,\n 0x17,\n 0x18,\n 0x19,\n 0x1a,\n 0x25,\n 0x26,\n 0x27,\n 0x28,\n 0x29,\n 0x2a,\n 0x34,\n 0x35,\n 0x36,\n 0x37,\n 0x38,\n 0x39,\n 0x3a,\n 0x43,\n 0x44,\n 0x45,\n 0x46,\n 0x47,\n 0x48,\n 0x49,\n 0x4a,\n 0x53,\n 0x54,\n 0x55,\n 0x56,\n 0x57,\n 0x58,\n 0x59,\n 0x5a,\n 0x63,\n 0x64,\n 0x65,\n 0x66,\n 0x67,\n 0x68,\n 0x69,\n 0x6a,\n 0x73,\n 0x74,\n 0x75,\n 0x76,\n 0x77,\n 0x78,\n 0x79,\n 0x7a,\n 0x83,\n 0x84,\n 0x85,\n 0x86,\n 0x87,\n 0x88,\n 0x89,\n 0x8a,\n 0x92,\n 0x93,\n 0x94,\n 0x95,\n 0x96,\n 0x97,\n 0x98,\n 0x99,\n 0x9a,\n 0xa2,\n 0xa3,\n 0xa4,\n 0xa5,\n 0xa6,\n 0xa7,\n 0xa8,\n 0xa9,\n 0xaa,\n 0xb2,\n 0xb3,\n 0xb4,\n 0xb5,\n 0xb6,\n 0xb7,\n 0xb8,\n 0xb9,\n 0xba,\n 0xc2,\n 0xc3,\n 0xc4,\n 0xc5,\n 0xc6,\n 0xc7,\n 0xc8,\n 0xc9,\n 0xca,\n 0xd2,\n 0xd3,\n 0xd4,\n 0xd5,\n 0xd6,\n 0xd7,\n 0xd8,\n 0xd9,\n 0xda,\n 0xe1,\n 0xe2,\n 0xe3,\n 0xe4,\n 0xe5,\n 0xe6,\n 0xe7,\n 0xe8,\n 0xe9,\n 0xea,\n 0xf1,\n 0xf2,\n 0xf3,\n 0xf4,\n 0xf5,\n 0xf6,\n 0xf7,\n 0xf8,\n 0xf9,\n 0xfa\n ];\n\n var std_dc_chrominance_nrcodes = [\n 0,\n 0,\n 3,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 1,\n 0,\n 0,\n 0,\n 0,\n 0\n ];\n var std_dc_chrominance_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];\n var std_ac_chrominance_nrcodes = [\n 0,\n 0,\n 2,\n 1,\n 2,\n 4,\n 4,\n 3,\n 4,\n 7,\n 5,\n 4,\n 4,\n 0,\n 1,\n 2,\n 0x77\n ];\n var std_ac_chrominance_values = [\n 0x00,\n 0x01,\n 0x02,\n 0x03,\n 0x11,\n 0x04,\n 0x05,\n 0x21,\n 0x31,\n 0x06,\n 0x12,\n 0x41,\n 0x51,\n 0x07,\n 0x61,\n 0x71,\n 0x13,\n 0x22,\n 0x32,\n 0x81,\n 0x08,\n 0x14,\n 0x42,\n 0x91,\n 0xa1,\n 0xb1,\n 0xc1,\n 0x09,\n 0x23,\n 0x33,\n 0x52,\n 0xf0,\n 0x15,\n 0x62,\n 0x72,\n 0xd1,\n 0x0a,\n 0x16,\n 0x24,\n 0x34,\n 0xe1,\n 0x25,\n 0xf1,\n 0x17,\n 0x18,\n 0x19,\n 0x1a,\n 0x26,\n 0x27,\n 0x28,\n 0x29,\n 0x2a,\n 0x35,\n 0x36,\n 0x37,\n 0x38,\n 0x39,\n 0x3a,\n 0x43,\n 0x44,\n 0x45,\n 0x46,\n 0x47,\n 0x48,\n 0x49,\n 0x4a,\n 0x53,\n 0x54,\n 0x55,\n 0x56,\n 0x57,\n 0x58,\n 0x59,\n 0x5a,\n 0x63,\n 0x64,\n 0x65,\n 0x66,\n 0x67,\n 0x68,\n 0x69,\n 0x6a,\n 0x73,\n 0x74,\n 0x75,\n 0x76,\n 0x77,\n 0x78,\n 0x79,\n 0x7a,\n 0x82,\n 0x83,\n 0x84,\n 0x85,\n 0x86,\n 0x87,\n 0x88,\n 0x89,\n 0x8a,\n 0x92,\n 0x93,\n 0x94,\n 0x95,\n 0x96,\n 0x97,\n 0x98,\n 0x99,\n 0x9a,\n 0xa2,\n 0xa3,\n 0xa4,\n 0xa5,\n 0xa6,\n 0xa7,\n 0xa8,\n 0xa9,\n 0xaa,\n 0xb2,\n 0xb3,\n 0xb4,\n 0xb5,\n 0xb6,\n 0xb7,\n 0xb8,\n 0xb9,\n 0xba,\n 0xc2,\n 0xc3,\n 0xc4,\n 0xc5,\n 0xc6,\n 0xc7,\n 0xc8,\n 0xc9,\n 0xca,\n 0xd2,\n 0xd3,\n 0xd4,\n 0xd5,\n 0xd6,\n 0xd7,\n 0xd8,\n 0xd9,\n 0xda,\n 0xe2,\n 0xe3,\n 0xe4,\n 0xe5,\n 0xe6,\n 0xe7,\n 0xe8,\n 0xe9,\n 0xea,\n 0xf2,\n 0xf3,\n 0xf4,\n 0xf5,\n 0xf6,\n 0xf7,\n 0xf8,\n 0xf9,\n 0xfa\n ];\n\n function initQuantTables(sf) {\n var YQT = [\n 16,\n 11,\n 10,\n 16,\n 24,\n 40,\n 51,\n 61,\n 12,\n 12,\n 14,\n 19,\n 26,\n 58,\n 60,\n 55,\n 14,\n 13,\n 16,\n 24,\n 40,\n 57,\n 69,\n 56,\n 14,\n 17,\n 22,\n 29,\n 51,\n 87,\n 80,\n 62,\n 18,\n 22,\n 37,\n 56,\n 68,\n 109,\n 103,\n 77,\n 24,\n 35,\n 55,\n 64,\n 81,\n 104,\n 113,\n 92,\n 49,\n 64,\n 78,\n 87,\n 103,\n 121,\n 120,\n 101,\n 72,\n 92,\n 95,\n 98,\n 112,\n 100,\n 103,\n 99\n ];\n\n for (var i = 0; i < 64; i++) {\n var t = ffloor((YQT[i] * sf + 50) / 100);\n t = Math.min(Math.max(t, 1), 255);\n YTable[ZigZag[i]] = t;\n }\n var UVQT = [\n 17,\n 18,\n 24,\n 47,\n 99,\n 99,\n 99,\n 99,\n 18,\n 21,\n 26,\n 66,\n 99,\n 99,\n 99,\n 99,\n 24,\n 26,\n 56,\n 99,\n 99,\n 99,\n 99,\n 99,\n 47,\n 66,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99,\n 99\n ];\n for (var j = 0; j < 64; j++) {\n var u = ffloor((UVQT[j] * sf + 50) / 100);\n u = Math.min(Math.max(u, 1), 255);\n UVTable[ZigZag[j]] = u;\n }\n var aasf = [\n 1.0,\n 1.387039845,\n 1.306562965,\n 1.175875602,\n 1.0,\n 0.785694958,\n 0.5411961,\n 0.275899379\n ];\n var k = 0;\n for (var row = 0; row < 8; row++) {\n for (var col = 0; col < 8; col++) {\n fdtbl_Y[k] = 1.0 / (YTable[ZigZag[k]] * aasf[row] * aasf[col] * 8.0);\n fdtbl_UV[k] = 1.0 / (UVTable[ZigZag[k]] * aasf[row] * aasf[col] * 8.0);\n k++;\n }\n }\n }\n\n function computeHuffmanTbl(nrcodes, std_table) {\n var codevalue = 0;\n var pos_in_table = 0;\n var HT = new Array();\n for (var k = 1; k <= 16; k++) {\n for (var j = 1; j <= nrcodes[k]; j++) {\n HT[std_table[pos_in_table]] = [];\n HT[std_table[pos_in_table]][0] = codevalue;\n HT[std_table[pos_in_table]][1] = k;\n pos_in_table++;\n codevalue++;\n }\n codevalue *= 2;\n }\n return HT;\n }\n\n function initHuffmanTbl() {\n YDC_HT = computeHuffmanTbl(\n std_dc_luminance_nrcodes,\n std_dc_luminance_values\n );\n UVDC_HT = computeHuffmanTbl(\n std_dc_chrominance_nrcodes,\n std_dc_chrominance_values\n );\n YAC_HT = computeHuffmanTbl(\n std_ac_luminance_nrcodes,\n std_ac_luminance_values\n );\n UVAC_HT = computeHuffmanTbl(\n std_ac_chrominance_nrcodes,\n std_ac_chrominance_values\n );\n }\n\n function initCategoryNumber() {\n var nrlower = 1;\n var nrupper = 2;\n for (var cat = 1; cat <= 15; cat++) {\n //Positive numbers\n for (var nr = nrlower; nr < nrupper; nr++) {\n category[32767 + nr] = cat;\n bitcode[32767 + nr] = [];\n bitcode[32767 + nr][1] = cat;\n bitcode[32767 + nr][0] = nr;\n }\n //Negative numbers\n for (var nrneg = -(nrupper - 1); nrneg <= -nrlower; nrneg++) {\n category[32767 + nrneg] = cat;\n bitcode[32767 + nrneg] = [];\n bitcode[32767 + nrneg][1] = cat;\n bitcode[32767 + nrneg][0] = nrupper - 1 + nrneg;\n }\n nrlower <<= 1;\n nrupper <<= 1;\n }\n }\n\n function initRGBYUVTable() {\n for (var i = 0; i < 256; i++) {\n RGB_YUV_TABLE[i] = 19595 * i;\n RGB_YUV_TABLE[(i + 256) >> 0] = 38470 * i;\n RGB_YUV_TABLE[(i + 512) >> 0] = 7471 * i + 0x8000;\n RGB_YUV_TABLE[(i + 768) >> 0] = -11059 * i;\n RGB_YUV_TABLE[(i + 1024) >> 0] = -21709 * i;\n RGB_YUV_TABLE[(i + 1280) >> 0] = 32768 * i + 0x807fff;\n RGB_YUV_TABLE[(i + 1536) >> 0] = -27439 * i;\n RGB_YUV_TABLE[(i + 1792) >> 0] = -5329 * i;\n }\n }\n\n // IO functions\n function writeBits(bs) {\n var value = bs[0];\n var posval = bs[1] - 1;\n while (posval >= 0) {\n if (value & (1 << posval)) {\n bytenew |= 1 << bytepos;\n }\n posval--;\n bytepos--;\n if (bytepos < 0) {\n if (bytenew == 0xff) {\n writeByte(0xff);\n writeByte(0);\n } else {\n writeByte(bytenew);\n }\n bytepos = 7;\n bytenew = 0;\n }\n }\n }\n\n function writeByte(value) {\n //byteout.push(clt[value]); // write char directly instead of converting later\n byteout.push(value);\n }\n\n function writeWord(value) {\n writeByte((value >> 8) & 0xff);\n writeByte(value & 0xff);\n }\n\n // DCT & quantization core\n function fDCTQuant(data, fdtbl) {\n var d0, d1, d2, d3, d4, d5, d6, d7;\n /* Pass 1: process rows. */\n var dataOff = 0;\n var i;\n var I8 = 8;\n var I64 = 64;\n for (i = 0; i < I8; ++i) {\n d0 = data[dataOff];\n d1 = data[dataOff + 1];\n d2 = data[dataOff + 2];\n d3 = data[dataOff + 3];\n d4 = data[dataOff + 4];\n d5 = data[dataOff + 5];\n d6 = data[dataOff + 6];\n d7 = data[dataOff + 7];\n\n var tmp0 = d0 + d7;\n var tmp7 = d0 - d7;\n var tmp1 = d1 + d6;\n var tmp6 = d1 - d6;\n var tmp2 = d2 + d5;\n var tmp5 = d2 - d5;\n var tmp3 = d3 + d4;\n var tmp4 = d3 - d4;\n\n /* Even part */\n var tmp10 = tmp0 + tmp3; /* phase 2 */\n var tmp13 = tmp0 - tmp3;\n var tmp11 = tmp1 + tmp2;\n var tmp12 = tmp1 - tmp2;\n\n data[dataOff] = tmp10 + tmp11; /* phase 3 */\n data[dataOff + 4] = tmp10 - tmp11;\n\n var z1 = (tmp12 + tmp13) * 0.707106781; /* c4 */\n data[dataOff + 2] = tmp13 + z1; /* phase 5 */\n data[dataOff + 6] = tmp13 - z1;\n\n /* Odd part */\n tmp10 = tmp4 + tmp5; /* phase 2 */\n tmp11 = tmp5 + tmp6;\n tmp12 = tmp6 + tmp7;\n\n /* The rotator is modified from fig 4-8 to avoid extra negations. */\n var z5 = (tmp10 - tmp12) * 0.382683433; /* c6 */\n var z2 = 0.5411961 * tmp10 + z5; /* c2-c6 */\n var z4 = 1.306562965 * tmp12 + z5; /* c2+c6 */\n var z3 = tmp11 * 0.707106781; /* c4 */\n\n var z11 = tmp7 + z3; /* phase 5 */\n var z13 = tmp7 - z3;\n\n data[dataOff + 5] = z13 + z2; /* phase 6 */\n data[dataOff + 3] = z13 - z2;\n data[dataOff + 1] = z11 + z4;\n data[dataOff + 7] = z11 - z4;\n\n dataOff += 8; /* advance pointer to next row */\n }\n\n /* Pass 2: process columns. */\n dataOff = 0;\n for (i = 0; i < I8; ++i) {\n d0 = data[dataOff];\n d1 = data[dataOff + 8];\n d2 = data[dataOff + 16];\n d3 = data[dataOff + 24];\n d4 = data[dataOff + 32];\n d5 = data[dataOff + 40];\n d6 = data[dataOff + 48];\n d7 = data[dataOff + 56];\n\n var tmp0p2 = d0 + d7;\n var tmp7p2 = d0 - d7;\n var tmp1p2 = d1 + d6;\n var tmp6p2 = d1 - d6;\n var tmp2p2 = d2 + d5;\n var tmp5p2 = d2 - d5;\n var tmp3p2 = d3 + d4;\n var tmp4p2 = d3 - d4;\n\n /* Even part */\n var tmp10p2 = tmp0p2 + tmp3p2; /* phase 2 */\n var tmp13p2 = tmp0p2 - tmp3p2;\n var tmp11p2 = tmp1p2 + tmp2p2;\n var tmp12p2 = tmp1p2 - tmp2p2;\n\n data[dataOff] = tmp10p2 + tmp11p2; /* phase 3 */\n data[dataOff + 32] = tmp10p2 - tmp11p2;\n\n var z1p2 = (tmp12p2 + tmp13p2) * 0.707106781; /* c4 */\n data[dataOff + 16] = tmp13p2 + z1p2; /* phase 5 */\n data[dataOff + 48] = tmp13p2 - z1p2;\n\n /* Odd part */\n tmp10p2 = tmp4p2 + tmp5p2; /* phase 2 */\n tmp11p2 = tmp5p2 + tmp6p2;\n tmp12p2 = tmp6p2 + tmp7p2;\n\n /* The rotator is modified from fig 4-8 to avoid extra negations. */\n var z5p2 = (tmp10p2 - tmp12p2) * 0.382683433; /* c6 */\n var z2p2 = 0.5411961 * tmp10p2 + z5p2; /* c2-c6 */\n var z4p2 = 1.306562965 * tmp12p2 + z5p2; /* c2+c6 */\n var z3p2 = tmp11p2 * 0.707106781; /* c4 */\n\n var z11p2 = tmp7p2 + z3p2; /* phase 5 */\n var z13p2 = tmp7p2 - z3p2;\n\n data[dataOff + 40] = z13p2 + z2p2; /* phase 6 */\n data[dataOff + 24] = z13p2 - z2p2;\n data[dataOff + 8] = z11p2 + z4p2;\n data[dataOff + 56] = z11p2 - z4p2;\n\n dataOff++; /* advance pointer to next column */\n }\n\n // Quantize/descale the coefficients\n var fDCTQuant;\n for (i = 0; i < I64; ++i) {\n // Apply the quantization and scaling factor & Round to nearest integer\n fDCTQuant = data[i] * fdtbl[i];\n outputfDCTQuant[i] =\n fDCTQuant > 0.0 ? (fDCTQuant + 0.5) | 0 : (fDCTQuant - 0.5) | 0;\n //outputfDCTQuant[i] = fround(fDCTQuant);\n }\n return outputfDCTQuant;\n }\n\n function writeAPP0() {\n writeWord(0xffe0); // marker\n writeWord(16); // length\n writeByte(0x4a); // J\n writeByte(0x46); // F\n writeByte(0x49); // I\n writeByte(0x46); // F\n writeByte(0); // = \"JFIF\",'\\0'\n writeByte(1); // versionhi\n writeByte(1); // versionlo\n writeByte(0); // xyunits\n writeWord(1); // xdensity\n writeWord(1); // ydensity\n writeByte(0); // thumbnwidth\n writeByte(0); // thumbnheight\n }\n\n function writeSOF0(width, height) {\n writeWord(0xffc0); // marker\n writeWord(17); // length, truecolor YUV JPG\n writeByte(8); // precision\n writeWord(height);\n writeWord(width);\n writeByte(3); // nrofcomponents\n writeByte(1); // IdY\n writeByte(0x11); // HVY\n writeByte(0); // QTY\n writeByte(2); // IdU\n writeByte(0x11); // HVU\n writeByte(1); // QTU\n writeByte(3); // IdV\n writeByte(0x11); // HVV\n writeByte(1); // QTV\n }\n\n function writeDQT() {\n writeWord(0xffdb); // marker\n writeWord(132); // length\n writeByte(0);\n for (var i = 0; i < 64; i++) {\n writeByte(YTable[i]);\n }\n writeByte(1);\n for (var j = 0; j < 64; j++) {\n writeByte(UVTable[j]);\n }\n }\n\n function writeDHT() {\n writeWord(0xffc4); // marker\n writeWord(0x01a2); // length\n\n writeByte(0); // HTYDCinfo\n for (var i = 0; i < 16; i++) {\n writeByte(std_dc_luminance_nrcodes[i + 1]);\n }\n for (var j = 0; j <= 11; j++) {\n writeByte(std_dc_luminance_values[j]);\n }\n\n writeByte(0x10); // HTYACinfo\n for (var k = 0; k < 16; k++) {\n writeByte(std_ac_luminance_nrcodes[k + 1]);\n }\n for (var l = 0; l <= 161; l++) {\n writeByte(std_ac_luminance_values[l]);\n }\n\n writeByte(1); // HTUDCinfo\n for (var m = 0; m < 16; m++) {\n writeByte(std_dc_chrominance_nrcodes[m + 1]);\n }\n for (var n = 0; n <= 11; n++) {\n writeByte(std_dc_chrominance_values[n]);\n }\n\n writeByte(0x11); // HTUACinfo\n for (var o = 0; o < 16; o++) {\n writeByte(std_ac_chrominance_nrcodes[o + 1]);\n }\n for (var p = 0; p <= 161; p++) {\n writeByte(std_ac_chrominance_values[p]);\n }\n }\n\n function writeSOS() {\n writeWord(0xffda); // marker\n writeWord(12); // length\n writeByte(3); // nrofcomponents\n writeByte(1); // IdY\n writeByte(0); // HTY\n writeByte(2); // IdU\n writeByte(0x11); // HTU\n writeByte(3); // IdV\n writeByte(0x11); // HTV\n writeByte(0); // Ss\n writeByte(0x3f); // Se\n writeByte(0); // Bf\n }\n\n function processDU(CDU, fdtbl, DC, HTDC, HTAC) {\n var EOB = HTAC[0x00];\n var M16zeroes = HTAC[0xf0];\n var pos;\n var I16 = 16;\n var I63 = 63;\n var I64 = 64;\n var DU_DCT = fDCTQuant(CDU, fdtbl);\n //ZigZag reorder\n for (var j = 0; j < I64; ++j) {\n DU[ZigZag[j]] = DU_DCT[j];\n }\n var Diff = DU[0] - DC;\n DC = DU[0];\n //Encode DC\n if (Diff == 0) {\n writeBits(HTDC[0]); // Diff might be 0\n } else {\n pos = 32767 + Diff;\n writeBits(HTDC[category[pos]]);\n writeBits(bitcode[pos]);\n }\n //Encode ACs\n var end0pos = 63; // was const... which is crazy\n while (end0pos > 0 && DU[end0pos] == 0) {\n end0pos--;\n }\n //end0pos = first element in reverse order !=0\n if (end0pos == 0) {\n writeBits(EOB);\n return DC;\n }\n var i = 1;\n var lng;\n while (i <= end0pos) {\n var startpos = i;\n while (DU[i] == 0 && i <= end0pos) {\n ++i;\n }\n var nrzeroes = i - startpos;\n if (nrzeroes >= I16) {\n lng = nrzeroes >> 4;\n for (var nrmarker = 1; nrmarker <= lng; ++nrmarker)\n writeBits(M16zeroes);\n nrzeroes = nrzeroes & 0xf;\n }\n pos = 32767 + DU[i];\n writeBits(HTAC[(nrzeroes << 4) + category[pos]]);\n writeBits(bitcode[pos]);\n i++;\n }\n if (end0pos != I63) {\n writeBits(EOB);\n }\n return DC;\n }\n\n function initCharLookupTable() {\n var sfcc = String.fromCharCode;\n for (var i = 0; i < 256; i++) {\n ///// ACHTUNG // 255\n clt[i] = sfcc(i);\n }\n }\n\n this.encode = function(\n image,\n quality // image data object\n ) {\n if (quality) setQuality(quality);\n\n // Initialize bit writer\n byteout = new Array();\n bytenew = 0;\n bytepos = 7;\n\n // Add JPEG headers\n writeWord(0xffd8); // SOI\n writeAPP0();\n writeDQT();\n writeSOF0(image.width, image.height);\n writeDHT();\n writeSOS();\n\n // Encode 8x8 macroblocks\n var DCY = 0;\n var DCU = 0;\n var DCV = 0;\n\n bytenew = 0;\n bytepos = 7;\n\n this.encode.displayName = \"_encode_\";\n\n var imageData = image.data;\n var width = image.width;\n var height = image.height;\n\n var quadWidth = width * 4;\n\n var x,\n y = 0;\n var r, g, b;\n var start, p, col, row, pos;\n while (y < height) {\n x = 0;\n while (x < quadWidth) {\n start = quadWidth * y + x;\n col = -1;\n row = 0;\n\n for (pos = 0; pos < 64; pos++) {\n row = pos >> 3; // /8\n col = (pos & 7) * 4; // %8\n p = start + row * quadWidth + col;\n\n if (y + row >= height) {\n // padding bottom\n p -= quadWidth * (y + 1 + row - height);\n }\n\n if (x + col >= quadWidth) {\n // padding right\n p -= x + col - quadWidth + 4;\n }\n\n r = imageData[p++];\n g = imageData[p++];\n b = imageData[p++];\n\n /* // calculate YUV values dynamically\n\t\t\t\t\tYDU[pos]=((( 0.29900)*r+( 0.58700)*g+( 0.11400)*b))-128; //-0x80\n\t\t\t\t\tUDU[pos]=(((-0.16874)*r+(-0.33126)*g+( 0.50000)*b));\n\t\t\t\t\tVDU[pos]=((( 0.50000)*r+(-0.41869)*g+(-0.08131)*b));\n\t\t\t\t\t*/\n\n // use lookup table (slightly faster)\n YDU[pos] =\n ((RGB_YUV_TABLE[r] +\n RGB_YUV_TABLE[(g + 256) >> 0] +\n RGB_YUV_TABLE[(b + 512) >> 0]) >>\n 16) -\n 128;\n UDU[pos] =\n ((RGB_YUV_TABLE[(r + 768) >> 0] +\n RGB_YUV_TABLE[(g + 1024) >> 0] +\n RGB_YUV_TABLE[(b + 1280) >> 0]) >>\n 16) -\n 128;\n VDU[pos] =\n ((RGB_YUV_TABLE[(r + 1280) >> 0] +\n RGB_YUV_TABLE[(g + 1536) >> 0] +\n RGB_YUV_TABLE[(b + 1792) >> 0]) >>\n 16) -\n 128;\n }\n\n DCY = processDU(YDU, fdtbl_Y, DCY, YDC_HT, YAC_HT);\n DCU = processDU(UDU, fdtbl_UV, DCU, UVDC_HT, UVAC_HT);\n DCV = processDU(VDU, fdtbl_UV, DCV, UVDC_HT, UVAC_HT);\n x += 32;\n }\n y += 8;\n }\n\n ////////////////////////////////////////////////////////////////\n\n // Do the bit alignment of the EOI marker\n if (bytepos >= 0) {\n var fillbits = [];\n fillbits[1] = bytepos + 1;\n fillbits[0] = (1 << (bytepos + 1)) - 1;\n writeBits(fillbits);\n }\n\n writeWord(0xffd9); //EOI\n\n return new Uint8Array(byteout);\n };\n\n function setQuality(quality) {\n quality = Math.min(Math.max(quality, 1), 100);\n\n if (currentQuality == quality) return; // don't recalc if unchanged\n\n var sf =\n quality < 50 ? Math.floor(5000 / quality) : Math.floor(200 - quality * 2);\n\n initQuantTables(sf);\n currentQuality = quality;\n //console.log('Quality set to: '+quality +'%');\n }\n\n function init() {\n quality = quality || 50;\n // Create tables\n initCharLookupTable();\n initHuffmanTbl();\n initCategoryNumber();\n initRGBYUVTable();\n\n setQuality(quality);\n }\n init();\n}\n\nexport { JPEGEncoder };\n","/**\n * @author shaozilee\n *\n * Bmp format decoder,support 1bit 4bit 8bit 24bit bmp\n *\n */\n\nimport { console } from \"./console.js\";\n\nfunction BmpDecoder(buffer, is_with_alpha) {\n this.pos = 0;\n this.buffer = buffer;\n this.datav = new DataView(buffer.buffer);\n this.is_with_alpha = !!is_with_alpha;\n this.bottom_up = true;\n this.flag =\n String.fromCharCode(this.buffer[0]) + String.fromCharCode(this.buffer[1]);\n this.pos += 2;\n if ([\"BM\", \"BA\", \"CI\", \"CP\", \"IC\", \"PT\"].indexOf(this.flag) === -1)\n throw new Error(\"Invalid BMP File\");\n this.parseHeader();\n this.parseBGR();\n}\n\nBmpDecoder.prototype.parseHeader = function() {\n this.fileSize = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.reserved = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.offset = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.headerSize = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.width = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.height = this.datav.getInt32(this.pos, true);\n this.pos += 4;\n this.planes = this.datav.getUint16(this.pos, true);\n this.pos += 2;\n this.bitPP = this.datav.getUint16(this.pos, true);\n this.pos += 2;\n this.compress = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.rawSize = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.hr = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.vr = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.colors = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n this.importantColors = this.datav.getUint32(this.pos, true);\n this.pos += 4;\n\n if (this.bitPP === 16 && this.is_with_alpha) {\n this.bitPP = 15;\n }\n if (this.bitPP < 15) {\n var len = this.colors === 0 ? 1 << this.bitPP : this.colors;\n this.palette = new Array(len);\n for (var i = 0; i < len; i++) {\n var blue = this.datav.getUint8(this.pos++, true);\n var green = this.datav.getUint8(this.pos++, true);\n var red = this.datav.getUint8(this.pos++, true);\n var quad = this.datav.getUint8(this.pos++, true);\n this.palette[i] = {\n red: red,\n green: green,\n blue: blue,\n quad: quad\n };\n }\n }\n if (this.height < 0) {\n this.height *= -1;\n this.bottom_up = false;\n }\n};\n\nBmpDecoder.prototype.parseBGR = function() {\n this.pos = this.offset;\n try {\n var bitn = \"bit\" + this.bitPP;\n var len = this.width * this.height * 4;\n this.data = new Uint8Array(len);\n\n this[bitn]();\n } catch (e) {\n console.log(\"bit decode error:\" + e);\n }\n};\n\nBmpDecoder.prototype.bit1 = function() {\n var xlen = Math.ceil(this.width / 8);\n var mode = xlen % 4;\n var y;\n for (y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < xlen; x++) {\n var b = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 8 * 4;\n for (var i = 0; i < 8; i++) {\n if (x * 8 + i < this.width) {\n var rgb = this.palette[(b >> (7 - i)) & 0x1];\n this.data[location + i * 4] = rgb.blue;\n this.data[location + i * 4 + 1] = rgb.green;\n this.data[location + i * 4 + 2] = rgb.red;\n this.data[location + i * 4 + 3] = 0xff;\n } else {\n break;\n }\n }\n }\n\n if (mode !== 0) {\n this.pos += 4 - mode;\n }\n }\n};\n\nBmpDecoder.prototype.bit4 = function() {\n var xlen = Math.ceil(this.width / 2);\n var mode = xlen % 4;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < xlen; x++) {\n var b = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 2 * 4;\n\n var before = b >> 4;\n var after = b & 0x0f;\n\n var rgb = this.palette[before];\n this.data[location] = rgb.blue;\n this.data[location + 1] = rgb.green;\n this.data[location + 2] = rgb.red;\n this.data[location + 3] = 0xff;\n\n if (x * 2 + 1 >= this.width) break;\n\n rgb = this.palette[after];\n this.data[location + 4] = rgb.blue;\n this.data[location + 4 + 1] = rgb.green;\n this.data[location + 4 + 2] = rgb.red;\n this.data[location + 4 + 3] = 0xff;\n }\n\n if (mode !== 0) {\n this.pos += 4 - mode;\n }\n }\n};\n\nBmpDecoder.prototype.bit8 = function() {\n var mode = this.width % 4;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var b = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 4;\n if (b < this.palette.length) {\n var rgb = this.palette[b];\n this.data[location] = rgb.red;\n this.data[location + 1] = rgb.green;\n this.data[location + 2] = rgb.blue;\n this.data[location + 3] = 0xff;\n } else {\n this.data[location] = 0xff;\n this.data[location + 1] = 0xff;\n this.data[location + 2] = 0xff;\n this.data[location + 3] = 0xff;\n }\n }\n if (mode !== 0) {\n this.pos += 4 - mode;\n }\n }\n};\n\nBmpDecoder.prototype.bit15 = function() {\n var dif_w = this.width % 3;\n var _11111 = parseInt(\"11111\", 2),\n _1_5 = _11111;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var B = this.datav.getUint16(this.pos, true);\n this.pos += 2;\n var blue = (((B & _1_5) / _1_5) * 255) | 0;\n var green = ((((B >> 5) & _1_5) / _1_5) * 255) | 0;\n var red = ((((B >> 10) & _1_5) / _1_5) * 255) | 0;\n var alpha = B >> 15 ? 0xff : 0x00;\n\n var location = line * this.width * 4 + x * 4;\n this.data[location] = red;\n this.data[location + 1] = green;\n this.data[location + 2] = blue;\n this.data[location + 3] = alpha;\n }\n //skip extra bytes\n this.pos += dif_w;\n }\n};\n\nBmpDecoder.prototype.bit16 = function() {\n var dif_w = this.width % 3;\n var _11111 = parseInt(\"11111\", 2),\n _1_5 = _11111;\n var _111111 = parseInt(\"111111\", 2),\n _1_6 = _111111;\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var B = this.datav.getUint16(this.pos, true);\n this.pos += 2;\n var alpha = 0xff;\n var blue = (((B & _1_5) / _1_5) * 255) | 0;\n var green = ((((B >> 5) & _1_6) / _1_6) * 255) | 0;\n var red = (((B >> 11) / _1_5) * 255) | 0;\n\n var location = line * this.width * 4 + x * 4;\n this.data[location] = red;\n this.data[location + 1] = green;\n this.data[location + 2] = blue;\n this.data[location + 3] = alpha;\n }\n //skip extra bytes\n this.pos += dif_w;\n }\n};\n\nBmpDecoder.prototype.bit24 = function() {\n //when height > 0\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var blue = this.datav.getUint8(this.pos++, true);\n var green = this.datav.getUint8(this.pos++, true);\n var red = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 4;\n this.data[location] = red;\n this.data[location + 1] = green;\n this.data[location + 2] = blue;\n this.data[location + 3] = 0xff;\n }\n //skip extra bytes\n this.pos += this.width % 4;\n }\n};\n\n/**\n * add 32bit decode func\n * @author soubok\n */\nBmpDecoder.prototype.bit32 = function() {\n //when height > 0\n for (var y = this.height - 1; y >= 0; y--) {\n var line = this.bottom_up ? y : this.height - 1 - y;\n for (var x = 0; x < this.width; x++) {\n var blue = this.datav.getUint8(this.pos++, true);\n var green = this.datav.getUint8(this.pos++, true);\n var red = this.datav.getUint8(this.pos++, true);\n var alpha = this.datav.getUint8(this.pos++, true);\n var location = line * this.width * 4 + x * 4;\n this.data[location] = red;\n this.data[location + 1] = green;\n this.data[location + 2] = blue;\n this.data[location + 3] = alpha;\n }\n //skip extra bytes\n //this.pos += (this.width % 4);\n }\n};\n\nBmpDecoder.prototype.getData = function() {\n return this.data;\n};\n\nexport { BmpDecoder };\n","function WebPDecoder(imageData) {\n /** @license\n * Copyright 2011 Google Inc.\n *\n * This code is licensed under the same terms as WebM:\n * Software License Agreement: http://www.webmproject.org/license/software/\n * Additional IP Rights Grant: http://www.webmproject.org/license/additional/\n * -----------------------------------------------------------------------------\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND\n * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\n * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.\n * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * -----------------------------------------------------------------------------\n *\n * Copyright 2011-2017 Dominik Homberger\n * Libwebp Javascript / libwebpjs - the libwebp implementation in javascript (v0.6.0)\n *\n * Author: Dominik Homberger (dominik.homberger@gmail.com)\n */\n\n var self = this;\n var UpsampleRgbLinePair,\n UpsampleBgrLinePair,\n UpsampleRgbaLinePair,\n UpsampleBgraLinePair,\n UpsampleArgbLinePair,\n UpsampleArgbLinePair,\n UpsampleRgba4444LinePair,\n UpsampleRgb565LinePair;\n\n function x(F) {\n if (!F) throw Error(\"assert :P\");\n }\n function fa(F, L, J) {\n for (var H = 0; 4 > H; H++) if (F[L + H] != J.charCodeAt(H)) return !0;\n return !1;\n }\n function I(F, L, J, H, Z) {\n for (var O = 0; O < Z; O++) F[L + O] = J[H + O];\n }\n function M(F, L, J, H) {\n for (var Z = 0; Z < H; Z++) F[L + Z] = J;\n }\n function V(F) {\n return new Int32Array(F);\n }\n function wa(F, L) {\n for (var J = [], H = 0; H < F; H++) J.push(new L());\n return J;\n }\n function wb() {\n function F(J, H, Z) {\n for (var O = Z[H], L = 0; L < O; L++) {\n J.push(Z.length > H + 1 ? [] : 0);\n if (Z.length < H + 1) break;\n F(J[L], H + 1, Z);\n }\n }\n var L = [];\n F(L, 0, [3, 11]);\n return L;\n }\n function Ed(F, L) {\n function J(H, O, F) {\n for (var Z = F[O], ma = 0; ma < Z; ma++) {\n H.push(F.length > O + 1 ? [] : new L());\n if (F.length < O + 1) break;\n J(H[ma], O + 1, F);\n }\n }\n var H = [];\n J(H, 0, F);\n return H;\n }\n var _WebPDecoder = function() {\n var self = this;\n function F() {\n V(55);\n }\n function L(a, b) {\n for (var c = (1 << (b - 1)) >>> 0; a & c; ) c >>>= 1;\n return c ? (a & (c - 1)) + c : a;\n }\n function J(a, b, c, d, e) {\n x(!(d % c));\n do (d -= c), (a[b + d] = e);\n while (0 < d);\n }\n function H(a, b, c, d, e, f) {\n var g = b,\n h = 1 << c,\n k,\n l,\n m = V(16),\n n = V(16);\n x(0 != e);\n x(null != d);\n x(null != a);\n x(0 < c);\n for (l = 0; l < e; ++l) {\n if (15 < d[l]) return 0;\n ++m[d[l]];\n }\n if (m[0] == e) return 0;\n n[1] = 0;\n for (k = 1; 15 > k; ++k) {\n if (m[k] > 1 << k) return 0;\n n[k + 1] = n[k] + m[k];\n }\n for (l = 0; l < e; ++l) (k = d[l]), 0 < d[l] && (f[n[k]++] = l);\n if (1 == n[15])\n return (d = new O()), (d.g = 0), (d.value = f[0]), J(a, g, 1, h, d), h;\n var r = -1,\n q = h - 1,\n t = 0,\n v = 1,\n p = 1,\n u,\n w = 1 << c;\n l = 0;\n k = 1;\n for (e = 2; k <= c; ++k, e <<= 1) {\n p <<= 1;\n v += p;\n p -= m[k];\n if (0 > p) return 0;\n for (; 0 < m[k]; --m[k])\n (d = new O()),\n (d.g = k),\n (d.value = f[l++]),\n J(a, g + t, e, w, d),\n (t = L(t, k));\n }\n k = c + 1;\n for (e = 2; 15 >= k; ++k, e <<= 1) {\n p <<= 1;\n v += p;\n p -= m[k];\n if (0 > p) return 0;\n for (; 0 < m[k]; --m[k]) {\n d = new O();\n if ((t & q) != r) {\n g += w;\n r = k;\n for (u = 1 << (r - c); 15 > r; ) {\n u -= m[r];\n if (0 >= u) break;\n ++r;\n u <<= 1;\n }\n u = r - c;\n w = 1 << u;\n h += w;\n r = t & q;\n a[b + r].g = u + c;\n a[b + r].value = g - b - r;\n }\n d.g = k - c;\n d.value = f[l++];\n J(a, g + (t >> c), e, w, d);\n t = L(t, k);\n }\n }\n return v != 2 * n[15] - 1 ? 0 : h;\n }\n function Z(a, b, c, d, e) {\n x(2328 >= e);\n if (512 >= e) var f = V(512);\n else if (((f = V(e)), null == f)) return 0;\n return H(a, b, c, d, e, f);\n }\n function O() {\n this.value = this.g = 0;\n }\n function Fd() {\n this.value = this.g = 0;\n }\n function Ub() {\n this.G = wa(5, O);\n this.H = V(5);\n this.jc = this.Qb = this.qb = this.nd = 0;\n this.pd = wa(xb, Fd);\n }\n function ma(a, b, c, d) {\n x(null != a);\n x(null != b);\n x(2147483648 > d);\n a.Ca = 254;\n a.I = 0;\n a.b = -8;\n a.Ka = 0;\n a.oa = b;\n a.pa = c;\n a.Jd = b;\n a.Yc = c + d;\n a.Zc = 4 <= d ? c + d - 4 + 1 : c;\n Qa(a);\n }\n function na(a, b) {\n for (var c = 0; 0 < b--; ) c |= K(a, 128) << b;\n return c;\n }\n function ca(a, b) {\n var c = na(a, b);\n return G(a) ? -c : c;\n }\n function cb(a, b, c, d) {\n var e,\n f = 0;\n x(null != a);\n x(null != b);\n x(4294967288 > d);\n a.Sb = d;\n a.Ra = 0;\n a.u = 0;\n a.h = 0;\n 4 < d && (d = 4);\n for (e = 0; e < d; ++e) f += b[c + e] << (8 * e);\n a.Ra = f;\n a.bb = d;\n a.oa = b;\n a.pa = c;\n }\n function Vb(a) {\n for (; 8 <= a.u && a.bb < a.Sb; )\n (a.Ra >>>= 8),\n (a.Ra += (a.oa[a.pa + a.bb] << (ob - 8)) >>> 0),\n ++a.bb,\n (a.u -= 8);\n db(a) && ((a.h = 1), (a.u = 0));\n }\n function D(a, b) {\n x(0 <= b);\n if (!a.h && b <= Gd) {\n var c = pb(a) & Hd[b];\n a.u += b;\n Vb(a);\n return c;\n }\n a.h = 1;\n return (a.u = 0);\n }\n function Wb() {\n this.b = this.Ca = this.I = 0;\n this.oa = [];\n this.pa = 0;\n this.Jd = [];\n this.Yc = 0;\n this.Zc = [];\n this.Ka = 0;\n }\n function Ra() {\n this.Ra = 0;\n this.oa = [];\n this.h = this.u = this.bb = this.Sb = this.pa = 0;\n }\n function pb(a) {\n return (a.Ra >>> (a.u & (ob - 1))) >>> 0;\n }\n function db(a) {\n x(a.bb <= a.Sb);\n return a.h || (a.bb == a.Sb && a.u > ob);\n }\n function qb(a, b) {\n a.u = b;\n a.h = db(a);\n }\n function Sa(a) {\n a.u >= Xb && (x(a.u >= Xb), Vb(a));\n }\n function Qa(a) {\n x(null != a && null != a.oa);\n a.pa < a.Zc\n ? ((a.I = (a.oa[a.pa++] | (a.I << 8)) >>> 0), (a.b += 8))\n : (x(null != a && null != a.oa),\n a.pa < a.Yc\n ? ((a.b += 8), (a.I = a.oa[a.pa++] | (a.I << 8)))\n : a.Ka\n ? (a.b = 0)\n : ((a.I <<= 8), (a.b += 8), (a.Ka = 1)));\n }\n function G(a) {\n return na(a, 1);\n }\n function K(a, b) {\n var c = a.Ca;\n 0 > a.b && Qa(a);\n var d = a.b,\n e = (c * b) >>> 8,\n f = (a.I >>> d > e) + 0;\n f ? ((c -= e), (a.I -= ((e + 1) << d) >>> 0)) : (c = e + 1);\n d = c;\n for (e = 0; 256 <= d; ) (e += 8), (d >>= 8);\n d = 7 ^ (e + Id[d]);\n a.b -= d;\n a.Ca = (c << d) - 1;\n return f;\n }\n function ra(a, b, c) {\n a[b + 0] = (c >> 24) & 255;\n a[b + 1] = (c >> 16) & 255;\n a[b + 2] = (c >> 8) & 255;\n a[b + 3] = (c >> 0) & 255;\n }\n function Ta(a, b) {\n return (a[b + 0] << 0) | (a[b + 1] << 8);\n }\n function Yb(a, b) {\n return Ta(a, b) | (a[b + 2] << 16);\n }\n function Ha(a, b) {\n return Ta(a, b) | (Ta(a, b + 2) << 16);\n }\n function Zb(a, b) {\n var c = 1 << b;\n x(null != a);\n x(0 < b);\n a.X = V(c);\n if (null == a.X) return 0;\n a.Mb = 32 - b;\n a.Xa = b;\n return 1;\n }\n function $b(a, b) {\n x(null != a);\n x(null != b);\n x(a.Xa == b.Xa);\n I(b.X, 0, a.X, 0, 1 << b.Xa);\n }\n function ac() {\n this.X = [];\n this.Xa = this.Mb = 0;\n }\n function bc(a, b, c, d) {\n x(null != c);\n x(null != d);\n var e = c[0],\n f = d[0];\n 0 == e && (e = (a * f + b / 2) / b);\n 0 == f && (f = (b * e + a / 2) / a);\n if (0 >= e || 0 >= f) return 0;\n c[0] = e;\n d[0] = f;\n return 1;\n }\n function xa(a, b) {\n return (a + (1 << b) - 1) >>> b;\n }\n function yb(a, b) {\n return (\n (((((a & 4278255360) + (b & 4278255360)) >>> 0) & 4278255360) +\n ((((a & 16711935) + (b & 16711935)) >>> 0) & 16711935)) >>>\n 0\n );\n }\n function X(a, b) {\n self[b] = function(b, d, e, f, g, h, k) {\n var c;\n for (c = 0; c < g; ++c) {\n var m = self[a](h[k + c - 1], e, f + c);\n h[k + c] = yb(b[d + c], m);\n }\n };\n }\n function Jd() {\n this.ud = this.hd = this.jd = 0;\n }\n function aa(a, b) {\n return ((((a ^ b) & 4278124286) >>> 1) + (a & b)) >>> 0;\n }\n function sa(a) {\n if (0 <= a && 256 > a) return a;\n if (0 > a) return 0;\n if (255 < a) return 255;\n }\n function eb(a, b) {\n return sa(a + ((a - b + 0.5) >> 1));\n }\n function Ia(a, b, c) {\n return Math.abs(b - c) - Math.abs(a - c);\n }\n function cc(a, b, c, d, e, f, g) {\n d = f[g - 1];\n for (c = 0; c < e; ++c) f[g + c] = d = yb(a[b + c], d);\n }\n function Kd(a, b, c, d, e) {\n var f;\n for (f = 0; f < c; ++f) {\n var g = a[b + f],\n h = (g >> 8) & 255,\n k = g & 16711935,\n k = k + ((h << 16) + h),\n k = k & 16711935;\n d[e + f] = ((g & 4278255360) + k) >>> 0;\n }\n }\n function dc(a, b) {\n b.jd = (a >> 0) & 255;\n b.hd = (a >> 8) & 255;\n b.ud = (a >> 16) & 255;\n }\n function Ld(a, b, c, d, e, f) {\n var g;\n for (g = 0; g < d; ++g) {\n var h = b[c + g],\n k = h >>> 8,\n l = h >>> 16,\n m = h,\n l = l + ((((a.jd << 24) >> 24) * ((k << 24) >> 24)) >>> 5),\n l = l & 255,\n m = m + ((((a.hd << 24) >> 24) * ((k << 24) >> 24)) >>> 5),\n m = m + ((((a.ud << 24) >> 24) * ((l << 24) >> 24)) >>> 5),\n m = m & 255;\n e[f + g] = (h & 4278255360) + (l << 16) + m;\n }\n }\n function ec(a, b, c, d, e) {\n self[b] = function(a, b, c, k, l, m, n, r, q) {\n for (k = n; k < r; ++k)\n for (n = 0; n < q; ++n) l[m++] = e(c[d(a[b++])]);\n };\n self[a] = function(a, b, h, k, l, m, n) {\n var f = 8 >> a.b,\n g = a.Ea,\n t = a.K[0],\n v = a.w;\n if (8 > f)\n for (a = (1 << a.b) - 1, v = (1 << f) - 1; b < h; ++b) {\n var p = 0,\n u;\n for (u = 0; u < g; ++u)\n u & a || (p = d(k[l++])), (m[n++] = e(t[p & v])), (p >>= f);\n }\n else self[\"VP8LMapColor\" + c](k, l, t, v, m, n, b, h, g);\n };\n }\n function Md(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++];\n d[e++] = (f >> 16) & 255;\n d[e++] = (f >> 8) & 255;\n d[e++] = (f >> 0) & 255;\n }\n }\n function Nd(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++];\n d[e++] = (f >> 16) & 255;\n d[e++] = (f >> 8) & 255;\n d[e++] = (f >> 0) & 255;\n d[e++] = (f >> 24) & 255;\n }\n }\n function Od(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++],\n g = ((f >> 16) & 240) | ((f >> 12) & 15),\n f = ((f >> 0) & 240) | ((f >> 28) & 15);\n d[e++] = g;\n d[e++] = f;\n }\n }\n function Pd(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++],\n g = ((f >> 16) & 248) | ((f >> 13) & 7),\n f = ((f >> 5) & 224) | ((f >> 3) & 31);\n d[e++] = g;\n d[e++] = f;\n }\n }\n function Qd(a, b, c, d, e) {\n for (c = b + c; b < c; ) {\n var f = a[b++];\n d[e++] = (f >> 0) & 255;\n d[e++] = (f >> 8) & 255;\n d[e++] = (f >> 16) & 255;\n }\n }\n function fb(a, b, c, d, e, f) {\n if (0 == f)\n for (c = b + c; b < c; )\n (f = a[b++]),\n ra(\n d,\n ((f[0] >> 24) |\n ((f[1] >> 8) & 65280) |\n ((f[2] << 8) & 16711680) |\n (f[3] << 24)) >>>\n 0\n ),\n (e += 32);\n else I(d, e, a, b, c);\n }\n function gb(a, b) {\n self[b][0] = self[a + \"0\"];\n self[b][1] = self[a + \"1\"];\n self[b][2] = self[a + \"2\"];\n self[b][3] = self[a + \"3\"];\n self[b][4] = self[a + \"4\"];\n self[b][5] = self[a + \"5\"];\n self[b][6] = self[a + \"6\"];\n self[b][7] = self[a + \"7\"];\n self[b][8] = self[a + \"8\"];\n self[b][9] = self[a + \"9\"];\n self[b][10] = self[a + \"10\"];\n self[b][11] = self[a + \"11\"];\n self[b][12] = self[a + \"12\"];\n self[b][13] = self[a + \"13\"];\n self[b][14] = self[a + \"0\"];\n self[b][15] = self[a + \"0\"];\n }\n function hb(a) {\n return a == zb || a == Ab || a == Ja || a == Bb;\n }\n function Rd() {\n this.eb = [];\n this.size = this.A = this.fb = 0;\n }\n function Sd() {\n this.y = [];\n this.f = [];\n this.ea = [];\n this.F = [];\n this.Tc = this.Ed = this.Cd = this.Fd = this.lb = this.Db = this.Ab = this.fa = this.J = this.W = this.N = this.O = 0;\n }\n function Cb() {\n this.Rd = this.height = this.width = this.S = 0;\n this.f = {};\n this.f.RGBA = new Rd();\n this.f.kb = new Sd();\n this.sd = null;\n }\n function Td() {\n this.width = [0];\n this.height = [0];\n this.Pd = [0];\n this.Qd = [0];\n this.format = [0];\n }\n function Ud() {\n this.Id = this.fd = this.Md = this.hb = this.ib = this.da = this.bd = this.cd = this.j = this.v = this.Da = this.Sd = this.ob = 0;\n }\n function Vd(a) {\n alert(\"todo:WebPSamplerProcessPlane\");\n return a.T;\n }\n function Wd(a, b) {\n var c = a.T,\n d = b.ba.f.RGBA,\n e = d.eb,\n f = d.fb + a.ka * d.A,\n g = P[b.ba.S],\n h = a.y,\n k = a.O,\n l = a.f,\n m = a.N,\n n = a.ea,\n r = a.W,\n q = b.cc,\n t = b.dc,\n v = b.Mc,\n p = b.Nc,\n u = a.ka,\n w = a.ka + a.T,\n y = a.U,\n A = (y + 1) >> 1;\n 0 == u\n ? g(h, k, null, null, l, m, n, r, l, m, n, r, e, f, null, null, y)\n : (g(b.ec, b.fc, h, k, q, t, v, p, l, m, n, r, e, f - d.A, e, f, y),\n ++c);\n for (; u + 2 < w; u += 2)\n (q = l),\n (t = m),\n (v = n),\n (p = r),\n (m += a.Rc),\n (r += a.Rc),\n (f += 2 * d.A),\n (k += 2 * a.fa),\n g(h, k - a.fa, h, k, q, t, v, p, l, m, n, r, e, f - d.A, e, f, y);\n k += a.fa;\n a.j + w < a.o\n ? (I(b.ec, b.fc, h, k, y),\n I(b.cc, b.dc, l, m, A),\n I(b.Mc, b.Nc, n, r, A),\n c--)\n : w & 1 ||\n g(\n h,\n k,\n null,\n null,\n l,\n m,\n n,\n r,\n l,\n m,\n n,\n r,\n e,\n f + d.A,\n null,\n null,\n y\n );\n return c;\n }\n function Xd(a, b, c) {\n var d = a.F,\n e = [a.J];\n if (null != d) {\n var f = a.U,\n g = b.ba.S,\n h = g == ya || g == Ja;\n b = b.ba.f.RGBA;\n var k = [0],\n l = a.ka;\n k[0] = a.T;\n a.Kb &&\n (0 == l ? --k[0] : (--l, (e[0] -= a.width)),\n a.j + a.ka + a.T == a.o && (k[0] = a.o - a.j - l));\n var m = b.eb,\n l = b.fb + l * b.A;\n a = fc(d, e[0], a.width, f, k, m, l + (h ? 0 : 3), b.A);\n x(c == k);\n a && hb(g) && za(m, l, h, f, k, b.A);\n }\n return 0;\n }\n function gc(a) {\n var b = a.ma,\n c = b.ba.S,\n d = 11 > c,\n e = c == Ua || c == Va || c == ya || c == Db || 12 == c || hb(c);\n b.memory = null;\n b.Ib = null;\n b.Jb = null;\n b.Nd = null;\n if (!hc(b.Oa, a, e ? 11 : 12)) return 0;\n e && hb(c) && ic();\n if (a.da) alert(\"todo:use_scaling\");\n else {\n if (d) {\n if (((b.Ib = Vd), a.Kb)) {\n c = (a.U + 1) >> 1;\n b.memory = V(a.U + 2 * c);\n if (null == b.memory) return 0;\n b.ec = b.memory;\n b.fc = 0;\n b.cc = b.ec;\n b.dc = b.fc + a.U;\n b.Mc = b.cc;\n b.Nc = b.dc + c;\n b.Ib = Wd;\n ic();\n }\n } else alert(\"todo:EmitYUV\");\n e && ((b.Jb = Xd), d && Aa());\n }\n if (d && !jc) {\n for (a = 0; 256 > a; ++a)\n (Yd[a] = (89858 * (a - 128) + Ba) >> Wa),\n (Zd[a] = -22014 * (a - 128) + Ba),\n ($d[a] = -45773 * (a - 128)),\n (ae[a] = (113618 * (a - 128) + Ba) >> Wa);\n for (a = ta; a < Eb; ++a)\n (b = (76283 * (a - 16) + Ba) >> Wa),\n (be[a - ta] = ga(b, 255)),\n (ce[a - ta] = ga((b + 8) >> 4, 15));\n jc = 1;\n }\n return 1;\n }\n function kc(a) {\n var b = a.ma,\n c = a.U,\n d = a.T;\n x(!(a.ka & 1));\n if (0 >= c || 0 >= d) return 0;\n c = b.Ib(a, b);\n null != b.Jb && b.Jb(a, b, c);\n b.Dc += c;\n return 1;\n }\n function lc(a) {\n a.ma.memory = null;\n }\n function mc(a, b, c, d) {\n if (47 != D(a, 8)) return 0;\n b[0] = D(a, 14) + 1;\n c[0] = D(a, 14) + 1;\n d[0] = D(a, 1);\n return 0 != D(a, 3) ? 0 : !a.h;\n }\n function ib(a, b) {\n if (4 > a) return a + 1;\n var c = (a - 2) >> 1;\n return ((2 + (a & 1)) << c) + D(b, c) + 1;\n }\n function nc(a, b) {\n if (120 < b) return b - 120;\n var c = de[b - 1],\n c = (c >> 4) * a + (8 - (c & 15));\n return 1 <= c ? c : 1;\n }\n function ua(a, b, c) {\n var d = pb(c);\n b += d & 255;\n var e = a[b].g - 8;\n 0 < e &&\n (qb(c, c.u + 8),\n (d = pb(c)),\n (b += a[b].value),\n (b += d & ((1 << e) - 1)));\n qb(c, c.u + a[b].g);\n return a[b].value;\n }\n function ub(a, b, c) {\n c.g += a.g;\n c.value += (a.value << b) >>> 0;\n x(8 >= c.g);\n return a.g;\n }\n function ha(a, b, c) {\n var d = a.xc;\n b = 0 == d ? 0 : a.vc[a.md * (c >> d) + (b >> d)];\n x(b < a.Wb);\n return a.Ya[b];\n }\n function oc(a, b, c, d) {\n var e = a.ab,\n f = a.c * b,\n g = a.C;\n b = g + b;\n var h = c,\n k = d;\n d = a.Ta;\n for (c = a.Ua; 0 < e--; ) {\n var l = a.gc[e],\n m = g,\n n = b,\n r = h,\n q = k,\n k = d,\n h = c,\n t = l.Ea;\n x(m < n);\n x(n <= l.nc);\n switch (l.hc) {\n case 2:\n pc(r, q, (n - m) * t, k, h);\n break;\n case 0:\n var v = l,\n p = m,\n u = n,\n w = k,\n y = h,\n A = v.Ea;\n 0 == p &&\n (ee(r, q, null, null, 1, w, y),\n cc(r, q + 1, 0, 0, A - 1, w, y + 1),\n (q += A),\n (y += A),\n ++p);\n for (\n var E = 1 << v.b,\n B = E - 1,\n C = xa(A, v.b),\n N = v.K,\n v = v.w + (p >> v.b) * C;\n p < u;\n\n ) {\n var z = N,\n Q = v,\n S = 1;\n for (fe(r, q, w, y - A, 1, w, y); S < A; ) {\n var K = qc[(z[Q++] >> 8) & 15],\n D = (S & ~B) + E;\n D > A && (D = A);\n K(r, q + +S, w, y + S - A, D - S, w, y + S);\n S = D;\n }\n q += A;\n y += A;\n ++p;\n p & B || (v += C);\n }\n n != l.nc && I(k, h - t, k, h + (n - m - 1) * t, t);\n break;\n case 1:\n t = r;\n u = q;\n r = l.Ea;\n q = 1 << l.b;\n w = q - 1;\n y = r & ~w;\n A = r - y;\n p = xa(r, l.b);\n E = l.K;\n for (l = l.w + (m >> l.b) * p; m < n; ) {\n B = E;\n C = l;\n N = new Jd();\n v = u + y;\n for (z = u + r; u < v; )\n dc(B[C++], N), Fb(N, t, u, q, k, h), (u += q), (h += q);\n u < z &&\n (dc(B[C++], N), Fb(N, t, u, A, k, h), (u += A), (h += A));\n ++m;\n m & w || (l += p);\n }\n break;\n case 3:\n if (r == k && q == h && 0 < l.b) {\n y = (n - m) * xa(l.Ea, l.b);\n t = h + (n - m) * t - y;\n u = k;\n r = t;\n q = k;\n w = h;\n A = y;\n p = [];\n for (y = A - 1; 0 <= y; --y) p[y] = q[w + y];\n for (y = A - 1; 0 <= y; --y) u[r + y] = p[y];\n rc(l, m, n, k, t, k, h);\n } else rc(l, m, n, r, q, k, h);\n }\n h = d;\n k = c;\n }\n k != c && I(d, c, h, k, f);\n }\n function ge(a, b) {\n var c = a.V,\n d = a.Ba + a.c * a.C,\n e = b - a.C;\n x(b <= a.l.o);\n x(16 >= e);\n if (0 < e) {\n var f = a.l,\n g = a.Ta,\n h = a.Ua,\n k = f.width;\n oc(a, e, c, d);\n h = [h];\n c = a.C;\n d = b;\n e = h;\n x(c < d);\n x(f.v < f.va);\n d > f.o && (d = f.o);\n if (c < f.j) {\n var l = f.j - c,\n c = f.j;\n e[0] += l * k;\n }\n c >= d\n ? (c = 0)\n : ((e[0] += 4 * f.v),\n (f.ka = c - f.j),\n (f.U = f.va - f.v),\n (f.T = d - c),\n (c = 1));\n if (c) {\n h = h[0];\n c = a.ca;\n if (11 > c.S) {\n for (\n var m = c.f.RGBA,\n d = c.S,\n e = f.U,\n f = f.T,\n l = m.eb,\n n = m.A,\n r = f,\n m = m.fb + a.Ma * m.A;\n 0 < r--;\n\n ) {\n var q = g,\n t = h,\n v = e,\n p = l,\n u = m;\n switch (d) {\n case Ca:\n sc(q, t, v, p, u);\n break;\n case Ua:\n Gb(q, t, v, p, u);\n break;\n case zb:\n Gb(q, t, v, p, u);\n za(p, u, 0, v, 1, 0);\n break;\n case tc:\n uc(q, t, v, p, u);\n break;\n case Va:\n fb(q, t, v, p, u, 1);\n break;\n case Ab:\n fb(q, t, v, p, u, 1);\n za(p, u, 0, v, 1, 0);\n break;\n case ya:\n fb(q, t, v, p, u, 0);\n break;\n case Ja:\n fb(q, t, v, p, u, 0);\n za(p, u, 1, v, 1, 0);\n break;\n case Db:\n Hb(q, t, v, p, u);\n break;\n case Bb:\n Hb(q, t, v, p, u);\n vc(p, u, v, 1, 0);\n break;\n case wc:\n xc(q, t, v, p, u);\n break;\n default:\n x(0);\n }\n h += k;\n m += n;\n }\n a.Ma += f;\n } else alert(\"todo:EmitRescaledRowsYUVA\");\n x(a.Ma <= c.height);\n }\n }\n a.C = b;\n x(a.C <= a.i);\n }\n function yc(a) {\n var b;\n if (0 < a.ua) return 0;\n for (b = 0; b < a.Wb; ++b) {\n var c = a.Ya[b].G,\n d = a.Ya[b].H;\n if (\n 0 < c[1][d[1] + 0].g ||\n 0 < c[2][d[2] + 0].g ||\n 0 < c[3][d[3] + 0].g\n )\n return 0;\n }\n return 1;\n }\n function zc(a, b, c, d, e, f) {\n if (0 != a.Z) {\n var g = a.qd,\n h = a.rd;\n for (x(null != ia[a.Z]); b < c; ++b)\n ia[a.Z](g, h, d, e, d, e, f), (g = d), (h = e), (e += f);\n a.qd = g;\n a.rd = h;\n }\n }\n function Ib(a, b) {\n var c = a.l.ma,\n d = 0 == c.Z || 1 == c.Z ? a.l.j : a.C,\n d = a.C < d ? d : a.C;\n x(b <= a.l.o);\n if (b > d) {\n var e = a.l.width,\n f = c.ca,\n g = c.tb + e * d,\n h = a.V,\n k = a.Ba + a.c * d,\n l = a.gc;\n x(1 == a.ab);\n x(3 == l[0].hc);\n he(l[0], d, b, h, k, f, g);\n zc(c, d, b, f, g, e);\n }\n a.C = a.Ma = b;\n }\n function Jb(a, b, c, d, e, f, g) {\n var h = a.$ / d,\n k = a.$ % d,\n l = a.m,\n m = a.s,\n n = c + a.$,\n r = n;\n e = c + d * e;\n var q = c + d * f,\n t = 280 + m.ua,\n v = a.Pb ? h : 16777216,\n p = 0 < m.ua ? m.Wa : null,\n u = m.wc,\n w = n < q ? ha(m, k, h) : null;\n x(a.C < f);\n x(q <= e);\n var y = !1;\n a: for (;;) {\n for (; y || n < q; ) {\n var A = 0;\n if (h >= v) {\n var v = a,\n E = n - c;\n x(v.Pb);\n v.wd = v.m;\n v.xd = E;\n 0 < v.s.ua && $b(v.s.Wa, v.s.vb);\n v = h + ie;\n }\n k & u || (w = ha(m, k, h));\n x(null != w);\n w.Qb && ((b[n] = w.qb), (y = !0));\n if (!y)\n if ((Sa(l), w.jc)) {\n var A = l,\n E = b,\n B = n,\n C = w.pd[pb(A) & (xb - 1)];\n x(w.jc);\n 256 > C.g\n ? (qb(A, A.u + C.g), (E[B] = C.value), (A = 0))\n : (qb(A, A.u + C.g - 256), x(256 <= C.value), (A = C.value));\n 0 == A && (y = !0);\n } else A = ua(w.G[0], w.H[0], l);\n if (l.h) break;\n if (y || 256 > A) {\n if (!y)\n if (w.nd) b[n] = (w.qb | (A << 8)) >>> 0;\n else {\n Sa(l);\n y = ua(w.G[1], w.H[1], l);\n Sa(l);\n E = ua(w.G[2], w.H[2], l);\n B = ua(w.G[3], w.H[3], l);\n if (l.h) break;\n b[n] = ((B << 24) | (y << 16) | (A << 8) | E) >>> 0;\n }\n y = !1;\n ++n;\n ++k;\n if (\n k >= d &&\n ((k = 0),\n ++h,\n null != g && h <= f && !(h % 16) && g(a, h),\n null != p)\n )\n for (; r < n; )\n (A = b[r++]),\n (p.X[((506832829 * A) & 4294967295) >>> p.Mb] = A);\n } else if (280 > A) {\n A = ib(A - 256, l);\n E = ua(w.G[4], w.H[4], l);\n Sa(l);\n E = ib(E, l);\n E = nc(d, E);\n if (l.h) break;\n if (n - c < E || e - n < A) break a;\n else for (B = 0; B < A; ++B) b[n + B] = b[n + B - E];\n n += A;\n for (k += A; k >= d; )\n (k -= d), ++h, null != g && h <= f && !(h % 16) && g(a, h);\n x(n <= e);\n k & u && (w = ha(m, k, h));\n if (null != p)\n for (; r < n; )\n (A = b[r++]),\n (p.X[((506832829 * A) & 4294967295) >>> p.Mb] = A);\n } else if (A < t) {\n y = A - 280;\n for (x(null != p); r < n; )\n (A = b[r++]), (p.X[((506832829 * A) & 4294967295) >>> p.Mb] = A);\n A = n;\n E = p;\n x(!(y >>> E.Xa));\n b[A] = E.X[y];\n y = !0;\n } else break a;\n y || x(l.h == db(l));\n }\n if (a.Pb && l.h && n < e)\n x(a.m.h),\n (a.a = 5),\n (a.m = a.wd),\n (a.$ = a.xd),\n 0 < a.s.ua && $b(a.s.vb, a.s.Wa);\n else if (l.h) break a;\n else null != g && g(a, h > f ? f : h), (a.a = 0), (a.$ = n - c);\n return 1;\n }\n a.a = 3;\n return 0;\n }\n function Ac(a) {\n x(null != a);\n a.vc = null;\n a.yc = null;\n a.Ya = null;\n var b = a.Wa;\n null != b && (b.X = null);\n a.vb = null;\n x(null != a);\n }\n function Bc() {\n var a = new je();\n if (null == a) return null;\n a.a = 0;\n a.xb = Cc;\n gb(\"Predictor\", \"VP8LPredictors\");\n gb(\"Predictor\", \"VP8LPredictors_C\");\n gb(\"PredictorAdd\", \"VP8LPredictorsAdd\");\n gb(\"PredictorAdd\", \"VP8LPredictorsAdd_C\");\n pc = Kd;\n Fb = Ld;\n sc = Md;\n Gb = Nd;\n Hb = Od;\n xc = Pd;\n uc = Qd;\n self.VP8LMapColor32b = ke;\n self.VP8LMapColor8b = le;\n return a;\n }\n function rb(a, b, c, d, e) {\n var f = 1,\n g = [a],\n h = [b],\n k = d.m,\n l = d.s,\n m = null,\n n = 0;\n a: for (;;) {\n if (c)\n for (; f && D(k, 1); ) {\n var r = g,\n q = h,\n t = d,\n v = 1,\n p = t.m,\n u = t.gc[t.ab],\n w = D(p, 2);\n if (t.Oc & (1 << w)) f = 0;\n else {\n t.Oc |= 1 << w;\n u.hc = w;\n u.Ea = r[0];\n u.nc = q[0];\n u.K = [null];\n ++t.ab;\n x(4 >= t.ab);\n switch (w) {\n case 0:\n case 1:\n u.b = D(p, 3) + 2;\n v = rb(xa(u.Ea, u.b), xa(u.nc, u.b), 0, t, u.K);\n u.K = u.K[0];\n break;\n case 3:\n var y = D(p, 8) + 1,\n A = 16 < y ? 0 : 4 < y ? 1 : 2 < y ? 2 : 3;\n r[0] = xa(u.Ea, A);\n u.b = A;\n var v = rb(y, 1, 0, t, u.K),\n E;\n if ((E = v)) {\n var B,\n C = y,\n N = u,\n z = 1 << (8 >> N.b),\n Q = V(z);\n if (null == Q) E = 0;\n else {\n var S = N.K[0],\n K = N.w;\n Q[0] = N.K[0][0];\n for (B = 1; B < 1 * C; ++B) Q[B] = yb(S[K + B], Q[B - 1]);\n for (; B < 4 * z; ++B) Q[B] = 0;\n N.K[0] = null;\n N.K[0] = Q;\n E = 1;\n }\n }\n v = E;\n break;\n case 2:\n break;\n default:\n x(0);\n }\n f = v;\n }\n }\n g = g[0];\n h = h[0];\n if (f && D(k, 1) && ((n = D(k, 4)), (f = 1 <= n && 11 >= n), !f)) {\n d.a = 3;\n break a;\n }\n var H;\n if ((H = f))\n b: {\n var F = d,\n G = g,\n L = h,\n J = n,\n T = c,\n Da,\n ba,\n X = F.m,\n R = F.s,\n P = [null],\n U,\n W = 1,\n aa = 0,\n na = me[J];\n c: for (;;) {\n if (T && D(X, 1)) {\n var ca = D(X, 3) + 2,\n ga = xa(G, ca),\n ka = xa(L, ca),\n qa = ga * ka;\n if (!rb(ga, ka, 0, F, P)) break c;\n P = P[0];\n R.xc = ca;\n for (Da = 0; Da < qa; ++Da) {\n var ia = (P[Da] >> 8) & 65535;\n P[Da] = ia;\n ia >= W && (W = ia + 1);\n }\n }\n if (X.h) break c;\n for (ba = 0; 5 > ba; ++ba) {\n var Y = Dc[ba];\n !ba && 0 < J && (Y += 1 << J);\n aa < Y && (aa = Y);\n }\n var ma = wa(W * na, O);\n var ua = W,\n va = wa(ua, Ub);\n if (null == va) var la = null;\n else x(65536 >= ua), (la = va);\n var ha = V(aa);\n if (null == la || null == ha || null == ma) {\n F.a = 1;\n break c;\n }\n var pa = ma;\n for (Da = U = 0; Da < W; ++Da) {\n var ja = la[Da],\n da = ja.G,\n ea = ja.H,\n Fa = 0,\n ra = 1,\n Ha = 0;\n for (ba = 0; 5 > ba; ++ba) {\n Y = Dc[ba];\n da[ba] = pa;\n ea[ba] = U;\n !ba && 0 < J && (Y += 1 << J);\n d: {\n var sa,\n za = Y,\n ta = F,\n oa = ha,\n db = pa,\n eb = U,\n Ia = 0,\n Ka = ta.m,\n fb = D(Ka, 1);\n M(oa, 0, 0, za);\n if (fb) {\n var gb = D(Ka, 1) + 1,\n hb = D(Ka, 1),\n Ja = D(Ka, 0 == hb ? 1 : 8);\n oa[Ja] = 1;\n 2 == gb && ((Ja = D(Ka, 8)), (oa[Ja] = 1));\n var ya = 1;\n } else {\n var Ua = V(19),\n Va = D(Ka, 4) + 4;\n if (19 < Va) {\n ta.a = 3;\n var Aa = 0;\n break d;\n }\n for (sa = 0; sa < Va; ++sa) Ua[ne[sa]] = D(Ka, 3);\n var Ba = void 0,\n sb = void 0,\n Wa = ta,\n ib = Ua,\n Ca = za,\n Xa = oa,\n Oa = 0,\n La = Wa.m,\n Ya = 8,\n Za = wa(128, O);\n e: for (;;) {\n if (!Z(Za, 0, 7, ib, 19)) break e;\n if (D(La, 1)) {\n var kb = 2 + 2 * D(La, 3),\n Ba = 2 + D(La, kb);\n if (Ba > Ca) break e;\n } else Ba = Ca;\n for (sb = 0; sb < Ca && Ba--; ) {\n Sa(La);\n var $a = Za[0 + (pb(La) & 127)];\n qb(La, La.u + $a.g);\n var jb = $a.value;\n if (16 > jb) (Xa[sb++] = jb), 0 != jb && (Ya = jb);\n else {\n var lb = 16 == jb,\n ab = jb - 16,\n mb = oe[ab],\n bb = D(La, pe[ab]) + mb;\n if (sb + bb > Ca) break e;\n else\n for (var nb = lb ? Ya : 0; 0 < bb--; )\n Xa[sb++] = nb;\n }\n }\n Oa = 1;\n break e;\n }\n Oa || (Wa.a = 3);\n ya = Oa;\n }\n (ya = ya && !Ka.h) && (Ia = Z(db, eb, 8, oa, za));\n ya && 0 != Ia ? (Aa = Ia) : ((ta.a = 3), (Aa = 0));\n }\n if (0 == Aa) break c;\n ra && 1 == qe[ba] && (ra = 0 == pa[U].g);\n Fa += pa[U].g;\n U += Aa;\n if (3 >= ba) {\n var Pa = ha[0],\n tb;\n for (tb = 1; tb < Y; ++tb) ha[tb] > Pa && (Pa = ha[tb]);\n Ha += Pa;\n }\n }\n ja.nd = ra;\n ja.Qb = 0;\n ra &&\n ((ja.qb =\n ((da[3][ea[3] + 0].value << 24) |\n (da[1][ea[1] + 0].value << 16) |\n da[2][ea[2] + 0].value) >>>\n 0),\n 0 == Fa &&\n 256 > da[0][ea[0] + 0].value &&\n ((ja.Qb = 1), (ja.qb += da[0][ea[0] + 0].value << 8)));\n ja.jc = !ja.Qb && 6 > Ha;\n if (ja.jc) {\n var Ga,\n Ea = ja;\n for (Ga = 0; Ga < xb; ++Ga) {\n var Ma = Ga,\n Na = Ea.pd[Ma],\n vb = Ea.G[0][Ea.H[0] + Ma];\n 256 <= vb.value\n ? ((Na.g = vb.g + 256), (Na.value = vb.value))\n : ((Na.g = 0),\n (Na.value = 0),\n (Ma >>= ub(vb, 8, Na)),\n (Ma >>= ub(Ea.G[1][Ea.H[1] + Ma], 16, Na)),\n (Ma >>= ub(Ea.G[2][Ea.H[2] + Ma], 0, Na)),\n ub(Ea.G[3][Ea.H[3] + Ma], 24, Na));\n }\n }\n }\n R.vc = P;\n R.Wb = W;\n R.Ya = la;\n R.yc = ma;\n H = 1;\n break b;\n }\n H = 0;\n }\n f = H;\n if (!f) {\n d.a = 3;\n break a;\n }\n if (0 < n) {\n if (((l.ua = 1 << n), !Zb(l.Wa, n))) {\n d.a = 1;\n f = 0;\n break a;\n }\n } else l.ua = 0;\n var Qa = d,\n cb = g,\n ob = h,\n Ra = Qa.s,\n Ta = Ra.xc;\n Qa.c = cb;\n Qa.i = ob;\n Ra.md = xa(cb, Ta);\n Ra.wc = 0 == Ta ? -1 : (1 << Ta) - 1;\n if (c) {\n d.xb = re;\n break a;\n }\n m = V(g * h);\n if (null == m) {\n d.a = 1;\n f = 0;\n break a;\n }\n f = (f = Jb(d, m, 0, g, h, h, null)) && !k.h;\n break a;\n }\n f\n ? (null != e ? (e[0] = m) : (x(null == m), x(c)), (d.$ = 0), c || Ac(l))\n : Ac(l);\n return f;\n }\n function Ec(a, b) {\n var c = a.c * a.i,\n d = c + b + 16 * b;\n x(a.c <= b);\n a.V = V(d);\n if (null == a.V) return (a.Ta = null), (a.Ua = 0), (a.a = 1), 0;\n a.Ta = a.V;\n a.Ua = a.Ba + c + b;\n return 1;\n }\n function se(a, b) {\n var c = a.C,\n d = b - c,\n e = a.V,\n f = a.Ba + a.c * c;\n for (x(b <= a.l.o); 0 < d; ) {\n var g = 16 < d ? 16 : d,\n h = a.l.ma,\n k = a.l.width,\n l = k * g,\n m = h.ca,\n n = h.tb + k * c,\n r = a.Ta,\n q = a.Ua;\n oc(a, g, e, f);\n Fc(r, q, m, n, l);\n zc(h, c, c + g, m, n, k);\n d -= g;\n e += g * a.c;\n c += g;\n }\n x(c == b);\n a.C = a.Ma = b;\n }\n function te(a, b) {\n var c = [0],\n d = [0],\n e = [0];\n a: for (;;) {\n if (null == a) return 0;\n if (null == b) return (a.a = 2), 0;\n a.l = b;\n a.a = 0;\n cb(a.m, b.data, b.w, b.ha);\n if (!mc(a.m, c, d, e)) {\n a.a = 3;\n break a;\n }\n a.xb = Cc;\n b.width = c[0];\n b.height = d[0];\n if (!rb(c[0], d[0], 1, a, null)) break a;\n return 1;\n }\n x(0 != a.a);\n return 0;\n }\n function ue() {\n this.ub = this.yd = this.td = this.Rb = 0;\n }\n function ve() {\n this.Kd = this.Ld = this.Ud = this.Td = this.i = this.c = 0;\n }\n function we() {\n this.Fb = this.Bb = this.Cb = 0;\n this.Zb = V(4);\n this.Lb = V(4);\n }\n function Gc() {\n this.Yb = wb();\n }\n function xe() {\n this.jb = V(3);\n this.Wc = Ed([4, 8], Gc);\n this.Xc = Ed([4, 17], Gc);\n }\n function ye() {\n this.Pc = this.wb = this.Tb = this.zd = 0;\n this.vd = new V(4);\n this.od = new V(4);\n }\n function Xa() {\n this.ld = this.La = this.dd = this.tc = 0;\n }\n function Hc() {\n this.Na = this.la = 0;\n }\n function ze() {\n this.Sc = [0, 0];\n this.Eb = [0, 0];\n this.Qc = [0, 0];\n this.ia = this.lc = 0;\n }\n function Kb() {\n this.ad = V(384);\n this.Za = 0;\n this.Ob = V(16);\n this.$b = this.Ad = this.ia = this.Gc = this.Hc = this.Dd = 0;\n }\n function Ae() {\n this.uc = this.M = this.Nb = 0;\n this.wa = Array(new Xa());\n this.Y = 0;\n this.ya = Array(new Kb());\n this.aa = 0;\n this.l = new Oa();\n }\n function Ic() {\n this.y = V(16);\n this.f = V(8);\n this.ea = V(8);\n }\n function Be() {\n this.cb = this.a = 0;\n this.sc = \"\";\n this.m = new Wb();\n this.Od = new ue();\n this.Kc = new ve();\n this.ed = new ye();\n this.Qa = new we();\n this.Ic = this.$c = this.Aa = 0;\n this.D = new Ae();\n this.Xb = this.Va = this.Hb = this.zb = this.yb = this.Ub = this.za = 0;\n this.Jc = wa(8, Wb);\n this.ia = 0;\n new F();\n this.pb = wa(4, ze);\n this.Pa = new xe();\n this.Bd = this.kc = 0;\n this.Ac = [];\n this.Bc = 0;\n this.zc = [0, 0, 0, 0];\n this.Gd = Array(new Ic());\n this.Hd = 0;\n this.rb = Array(new Hc());\n this.sb = 0;\n this.wa = Array(new Xa());\n this.Y = 0;\n this.oc = [];\n this.pc = 0;\n this.sa = [];\n this.ta = 0;\n this.qa = [];\n this.ra = 0;\n this.Ha = [];\n this.B = this.R = this.Ia = 0;\n this.Ec = [];\n this.M = this.ja = this.Vb = this.Fc = 0;\n this.ya = Array(new Kb());\n this.L = this.aa = 0;\n this.gd = Ed([4, 2], Xa);\n this.ga = null;\n this.Fa = [];\n this.Cc = this.qc = this.P = 0;\n this.Gb = [];\n this.Uc = 0;\n this.mb = [];\n this.nb = 0;\n this.rc = [];\n this.Ga = this.Vc = 0;\n }\n function ga(a, b) {\n return 0 > a ? 0 : a > b ? b : a;\n }\n function Oa() {\n this.T = this.U = this.ka = this.height = this.width = 0;\n this.y = [];\n this.f = [];\n this.ea = [];\n this.Rc = this.fa = this.W = this.N = this.O = 0;\n this.ma = \"void\";\n this.put = \"VP8IoPutHook\";\n this.ac = \"VP8IoSetupHook\";\n this.bc = \"VP8IoTeardownHook\";\n this.ha = this.Kb = 0;\n this.data = [];\n this.hb = this.ib = this.da = this.o = this.j = this.va = this.v = this.Da = this.ob = this.w = 0;\n this.F = [];\n this.J = 0;\n }\n function Ce() {\n var a = new Be();\n null != a &&\n ((a.a = 0), (a.sc = \"OK\"), (a.cb = 0), (a.Xb = 0), oa || (oa = De));\n return a;\n }\n function T(a, b, c) {\n 0 == a.a && ((a.a = b), (a.sc = c), (a.cb = 0));\n return 0;\n }\n function Jc(a, b, c) {\n return 3 <= c && 157 == a[b + 0] && 1 == a[b + 1] && 42 == a[b + 2];\n }\n function Kc(a, b) {\n if (null == a) return 0;\n a.a = 0;\n a.sc = \"OK\";\n if (null == b) return T(a, 2, \"null VP8Io passed to VP8GetHeaders()\");\n var c = b.data;\n var d = b.w;\n var e = b.ha;\n if (4 > e) return T(a, 7, \"Truncated header.\");\n var f = c[d + 0] | (c[d + 1] << 8) | (c[d + 2] << 16);\n var g = a.Od;\n g.Rb = !(f & 1);\n g.td = (f >> 1) & 7;\n g.yd = (f >> 4) & 1;\n g.ub = f >> 5;\n if (3 < g.td) return T(a, 3, \"Incorrect keyframe parameters.\");\n if (!g.yd) return T(a, 4, \"Frame not displayable.\");\n d += 3;\n e -= 3;\n var h = a.Kc;\n if (g.Rb) {\n if (7 > e) return T(a, 7, \"cannot parse picture header\");\n if (!Jc(c, d, e)) return T(a, 3, \"Bad code word\");\n h.c = ((c[d + 4] << 8) | c[d + 3]) & 16383;\n h.Td = c[d + 4] >> 6;\n h.i = ((c[d + 6] << 8) | c[d + 5]) & 16383;\n h.Ud = c[d + 6] >> 6;\n d += 7;\n e -= 7;\n a.za = (h.c + 15) >> 4;\n a.Ub = (h.i + 15) >> 4;\n b.width = h.c;\n b.height = h.i;\n b.Da = 0;\n b.j = 0;\n b.v = 0;\n b.va = b.width;\n b.o = b.height;\n b.da = 0;\n b.ib = b.width;\n b.hb = b.height;\n b.U = b.width;\n b.T = b.height;\n f = a.Pa;\n M(f.jb, 0, 255, f.jb.length);\n f = a.Qa;\n x(null != f);\n f.Cb = 0;\n f.Bb = 0;\n f.Fb = 1;\n M(f.Zb, 0, 0, f.Zb.length);\n M(f.Lb, 0, 0, f.Lb);\n }\n if (g.ub > e) return T(a, 7, \"bad partition length\");\n f = a.m;\n ma(f, c, d, g.ub);\n d += g.ub;\n e -= g.ub;\n g.Rb && ((h.Ld = G(f)), (h.Kd = G(f)));\n h = a.Qa;\n var k = a.Pa,\n l;\n x(null != f);\n x(null != h);\n h.Cb = G(f);\n if (h.Cb) {\n h.Bb = G(f);\n if (G(f)) {\n h.Fb = G(f);\n for (l = 0; 4 > l; ++l) h.Zb[l] = G(f) ? ca(f, 7) : 0;\n for (l = 0; 4 > l; ++l) h.Lb[l] = G(f) ? ca(f, 6) : 0;\n }\n if (h.Bb) for (l = 0; 3 > l; ++l) k.jb[l] = G(f) ? na(f, 8) : 255;\n } else h.Bb = 0;\n if (f.Ka) return T(a, 3, \"cannot parse segment header\");\n h = a.ed;\n h.zd = G(f);\n h.Tb = na(f, 6);\n h.wb = na(f, 3);\n h.Pc = G(f);\n if (h.Pc && G(f)) {\n for (k = 0; 4 > k; ++k) G(f) && (h.vd[k] = ca(f, 6));\n for (k = 0; 4 > k; ++k) G(f) && (h.od[k] = ca(f, 6));\n }\n a.L = 0 == h.Tb ? 0 : h.zd ? 1 : 2;\n if (f.Ka) return T(a, 3, \"cannot parse filter header\");\n l = d;\n var m = e;\n e = l;\n d = l + m;\n h = m;\n a.Xb = (1 << na(a.m, 2)) - 1;\n k = a.Xb;\n if (m < 3 * k) c = 7;\n else {\n l += 3 * k;\n h -= 3 * k;\n for (m = 0; m < k; ++m) {\n var n = c[e + 0] | (c[e + 1] << 8) | (c[e + 2] << 16);\n n > h && (n = h);\n ma(a.Jc[+m], c, l, n);\n l += n;\n h -= n;\n e += 3;\n }\n ma(a.Jc[+k], c, l, h);\n c = l < d ? 0 : 5;\n }\n if (0 != c) return T(a, c, \"cannot parse partitions\");\n l = a.m;\n c = na(l, 7);\n e = G(l) ? ca(l, 4) : 0;\n d = G(l) ? ca(l, 4) : 0;\n h = G(l) ? ca(l, 4) : 0;\n k = G(l) ? ca(l, 4) : 0;\n l = G(l) ? ca(l, 4) : 0;\n m = a.Qa;\n for (n = 0; 4 > n; ++n) {\n if (m.Cb) {\n var r = m.Zb[n];\n m.Fb || (r += c);\n } else if (0 < n) {\n a.pb[n] = a.pb[0];\n continue;\n } else r = c;\n var q = a.pb[n];\n q.Sc[0] = Lb[ga(r + e, 127)];\n q.Sc[1] = Mb[ga(r + 0, 127)];\n q.Eb[0] = 2 * Lb[ga(r + d, 127)];\n q.Eb[1] = (101581 * Mb[ga(r + h, 127)]) >> 16;\n 8 > q.Eb[1] && (q.Eb[1] = 8);\n q.Qc[0] = Lb[ga(r + k, 117)];\n q.Qc[1] = Mb[ga(r + l, 127)];\n q.lc = r + l;\n }\n if (!g.Rb) return T(a, 4, \"Not a key frame.\");\n G(f);\n g = a.Pa;\n for (c = 0; 4 > c; ++c) {\n for (e = 0; 8 > e; ++e)\n for (d = 0; 3 > d; ++d)\n for (h = 0; 11 > h; ++h)\n (k = K(f, Ee[c][e][d][h]) ? na(f, 8) : Fe[c][e][d][h]),\n (g.Wc[c][e].Yb[d][h] = k);\n for (e = 0; 17 > e; ++e) g.Xc[c][e] = g.Wc[c][Ge[e]];\n }\n a.kc = G(f);\n a.kc && (a.Bd = na(f, 8));\n return (a.cb = 1);\n }\n function De(a, b, c, d, e, f, g) {\n var h = b[e].Yb[c];\n for (c = 0; 16 > e; ++e) {\n if (!K(a, h[c + 0])) return e;\n for (; !K(a, h[c + 1]); )\n if (((h = b[++e].Yb[0]), (c = 0), 16 == e)) return 16;\n var k = b[e + 1].Yb;\n if (K(a, h[c + 2])) {\n var l = a,\n m = h,\n n = c;\n var r = 0;\n if (K(l, m[n + 3]))\n if (K(l, m[n + 6])) {\n h = 0;\n r = K(l, m[n + 8]);\n m = K(l, m[n + 9 + r]);\n n = 2 * r + m;\n r = 0;\n for (m = He[n]; m[h]; ++h) r += r + K(l, m[h]);\n r += 3 + (8 << n);\n } else\n K(l, m[n + 7])\n ? ((r = 7 + 2 * K(l, 165)), (r += K(l, 145)))\n : (r = 5 + K(l, 159));\n else K(l, m[n + 4]) ? (r = 3 + K(l, m[n + 5])) : (r = 2);\n h = k[2];\n } else (r = 1), (h = k[1]);\n k = g + Ie[e];\n l = a;\n 0 > l.b && Qa(l);\n var m = l.b,\n n = l.Ca >> 1,\n q = (n - (l.I >> m)) >> 31;\n --l.b;\n l.Ca += q;\n l.Ca |= 1;\n l.I -= ((n + 1) & q) << m;\n f[k] = ((r ^ q) - q) * d[(0 < e) + 0];\n }\n return 16;\n }\n function Lc(a) {\n var b = a.rb[a.sb - 1];\n b.la = 0;\n b.Na = 0;\n M(a.zc, 0, 0, a.zc.length);\n a.ja = 0;\n }\n function Je(a, b) {\n for (a.M = 0; a.M < a.Va; ++a.M) {\n var c = a.Jc[a.M & a.Xb],\n d = a.m,\n e = a,\n f;\n for (f = 0; f < e.za; ++f) {\n var g = d;\n var h = e;\n var k = h.Ac,\n l = h.Bc + 4 * f,\n m = h.zc,\n n = h.ya[h.aa + f];\n h.Qa.Bb\n ? (n.$b = K(g, h.Pa.jb[0])\n ? 2 + K(g, h.Pa.jb[2])\n : K(g, h.Pa.jb[1]))\n : (n.$b = 0);\n h.kc && (n.Ad = K(g, h.Bd));\n n.Za = !K(g, 145) + 0;\n if (n.Za) {\n var r = n.Ob,\n q = 0;\n for (h = 0; 4 > h; ++h) {\n var t = m[0 + h];\n var v;\n for (v = 0; 4 > v; ++v) {\n t = Ke[k[l + v]][t];\n for (var p = Mc[K(g, t[0])]; 0 < p; )\n p = Mc[2 * p + K(g, t[p])];\n t = -p;\n k[l + v] = t;\n }\n I(r, q, k, l, 4);\n q += 4;\n m[0 + h] = t;\n }\n } else\n (t = K(g, 156) ? (K(g, 128) ? 1 : 3) : K(g, 163) ? 2 : 0),\n (n.Ob[0] = t),\n M(k, l, t, 4),\n M(m, 0, t, 4);\n n.Dd = K(g, 142) ? (K(g, 114) ? (K(g, 183) ? 1 : 3) : 2) : 0;\n }\n if (e.m.Ka) return T(a, 7, \"Premature end-of-partition0 encountered.\");\n for (; a.ja < a.za; ++a.ja) {\n d = a;\n e = c;\n g = d.rb[d.sb - 1];\n k = d.rb[d.sb + d.ja];\n f = d.ya[d.aa + d.ja];\n if ((l = d.kc ? f.Ad : 0))\n (g.la = k.la = 0),\n f.Za || (g.Na = k.Na = 0),\n (f.Hc = 0),\n (f.Gc = 0),\n (f.ia = 0);\n else {\n var u,\n w,\n g = k,\n k = e,\n l = d.Pa.Xc,\n m = d.ya[d.aa + d.ja],\n n = d.pb[m.$b];\n h = m.ad;\n r = 0;\n q = d.rb[d.sb - 1];\n t = v = 0;\n M(h, r, 0, 384);\n if (m.Za) {\n var y = 0;\n var A = l[3];\n } else {\n p = V(16);\n var E = g.Na + q.Na;\n E = oa(k, l[1], E, n.Eb, 0, p, 0);\n g.Na = q.Na = (0 < E) + 0;\n if (1 < E) Nc(p, 0, h, r);\n else {\n var B = (p[0] + 3) >> 3;\n for (p = 0; 256 > p; p += 16) h[r + p] = B;\n }\n y = 1;\n A = l[0];\n }\n var C = g.la & 15;\n var N = q.la & 15;\n for (p = 0; 4 > p; ++p) {\n var z = N & 1;\n for (B = w = 0; 4 > B; ++B)\n (E = z + (C & 1)),\n (E = oa(k, A, E, n.Sc, y, h, r)),\n (z = E > y),\n (C = (C >> 1) | (z << 7)),\n (w = (w << 2) | (3 < E ? 3 : 1 < E ? 2 : 0 != h[r + 0])),\n (r += 16);\n C >>= 4;\n N = (N >> 1) | (z << 7);\n v = ((v << 8) | w) >>> 0;\n }\n A = C;\n y = N >> 4;\n for (u = 0; 4 > u; u += 2) {\n w = 0;\n C = g.la >> (4 + u);\n N = q.la >> (4 + u);\n for (p = 0; 2 > p; ++p) {\n z = N & 1;\n for (B = 0; 2 > B; ++B)\n (E = z + (C & 1)),\n (E = oa(k, l[2], E, n.Qc, 0, h, r)),\n (z = 0 < E),\n (C = (C >> 1) | (z << 3)),\n (w = (w << 2) | (3 < E ? 3 : 1 < E ? 2 : 0 != h[r + 0])),\n (r += 16);\n C >>= 2;\n N = (N >> 1) | (z << 5);\n }\n t |= w << (4 * u);\n A |= (C << 4) << u;\n y |= (N & 240) << u;\n }\n g.la = A;\n q.la = y;\n m.Hc = v;\n m.Gc = t;\n m.ia = t & 43690 ? 0 : n.ia;\n l = !(v | t);\n }\n 0 < d.L &&\n ((d.wa[d.Y + d.ja] = d.gd[f.$b][f.Za]),\n (d.wa[d.Y + d.ja].La |= !l));\n if (e.Ka) return T(a, 7, \"Premature end-of-file encountered.\");\n }\n Lc(a);\n c = a;\n d = b;\n e = 1;\n f = c.D;\n g = 0 < c.L && c.M >= c.zb && c.M <= c.Va;\n if (0 == c.Aa)\n a: {\n (f.M = c.M), (f.uc = g), Oc(c, f), (e = 1);\n w = c.D;\n f = w.Nb;\n t = Ya[c.L];\n g = t * c.R;\n k = (t / 2) * c.B;\n p = 16 * f * c.R;\n B = 8 * f * c.B;\n l = c.sa;\n m = c.ta - g + p;\n n = c.qa;\n h = c.ra - k + B;\n r = c.Ha;\n q = c.Ia - k + B;\n C = w.M;\n N = 0 == C;\n v = C >= c.Va - 1;\n 2 == c.Aa && Oc(c, w);\n if (w.uc)\n for (E = c, z = E.D.M, x(E.D.uc), w = E.yb; w < E.Hb; ++w) {\n var Q = E;\n y = w;\n A = z;\n var S = Q.D,\n D = S.Nb;\n u = Q.R;\n var S = S.wa[S.Y + y],\n F = Q.sa,\n H = Q.ta + 16 * D * u + 16 * y,\n J = S.dd,\n G = S.tc;\n if (0 != G)\n if ((x(3 <= G), 1 == Q.L))\n 0 < y && Pc(F, H, u, G + 4),\n S.La && Qc(F, H, u, G),\n 0 < A && Rc(F, H, u, G + 4),\n S.La && Sc(F, H, u, G);\n else {\n var L = Q.B,\n O = Q.qa,\n P = Q.ra + 8 * D * L + 8 * y,\n R = Q.Ha,\n Q = Q.Ia + 8 * D * L + 8 * y,\n D = S.ld;\n 0 < y &&\n (Tc(F, H, u, G + 4, J, D),\n Uc(O, P, R, Q, L, G + 4, J, D));\n S.La && (Vc(F, H, u, G, J, D), Wc(O, P, R, Q, L, G, J, D));\n 0 < A &&\n (Xc(F, H, u, G + 4, J, D),\n Yc(O, P, R, Q, L, G + 4, J, D));\n S.La && (Zc(F, H, u, G, J, D), $c(O, P, R, Q, L, G, J, D));\n }\n }\n c.ia && alert(\"todo:DitherRow\");\n if (null != d.put) {\n w = 16 * C;\n C = 16 * (C + 1);\n N\n ? ((d.y = c.sa),\n (d.O = c.ta + p),\n (d.f = c.qa),\n (d.N = c.ra + B),\n (d.ea = c.Ha),\n (d.W = c.Ia + B))\n : ((w -= t),\n (d.y = l),\n (d.O = m),\n (d.f = n),\n (d.N = h),\n (d.ea = r),\n (d.W = q));\n v || (C -= t);\n C > d.o && (C = d.o);\n d.F = null;\n d.J = null;\n if (\n null != c.Fa &&\n 0 < c.Fa.length &&\n w < C &&\n ((d.J = Le(c, d, w, C - w)),\n (d.F = c.mb),\n null == d.F && 0 == d.F.length)\n ) {\n e = T(c, 3, \"Could not decode alpha data.\");\n break a;\n }\n w < d.j &&\n ((t = d.j - w),\n (w = d.j),\n x(!(t & 1)),\n (d.O += c.R * t),\n (d.N += c.B * (t >> 1)),\n (d.W += c.B * (t >> 1)),\n null != d.F && (d.J += d.width * t));\n w < C &&\n ((d.O += d.v),\n (d.N += d.v >> 1),\n (d.W += d.v >> 1),\n null != d.F && (d.J += d.v),\n (d.ka = w - d.j),\n (d.U = d.va - d.v),\n (d.T = C - w),\n (e = d.put(d)));\n }\n f + 1 != c.Ic ||\n v ||\n (I(c.sa, c.ta - g, l, m + 16 * c.R, g),\n I(c.qa, c.ra - k, n, h + 8 * c.B, k),\n I(c.Ha, c.Ia - k, r, q + 8 * c.B, k));\n }\n if (!e) return T(a, 6, \"Output aborted.\");\n }\n return 1;\n }\n function Me(a, b) {\n if (null == a) return 0;\n if (null == b) return T(a, 2, \"NULL VP8Io parameter in VP8Decode().\");\n if (!a.cb && !Kc(a, b)) return 0;\n x(a.cb);\n if (null == b.ac || b.ac(b)) {\n b.ob && (a.L = 0);\n var c = Ya[a.L];\n 2 == a.L\n ? ((a.yb = 0), (a.zb = 0))\n : ((a.yb = (b.v - c) >> 4),\n (a.zb = (b.j - c) >> 4),\n 0 > a.yb && (a.yb = 0),\n 0 > a.zb && (a.zb = 0));\n a.Va = (b.o + 15 + c) >> 4;\n a.Hb = (b.va + 15 + c) >> 4;\n a.Hb > a.za && (a.Hb = a.za);\n a.Va > a.Ub && (a.Va = a.Ub);\n if (0 < a.L) {\n var d = a.ed;\n for (c = 0; 4 > c; ++c) {\n var e;\n if (a.Qa.Cb) {\n var f = a.Qa.Lb[c];\n a.Qa.Fb || (f += d.Tb);\n } else f = d.Tb;\n for (e = 0; 1 >= e; ++e) {\n var g = a.gd[c][e],\n h = f;\n d.Pc && ((h += d.vd[0]), e && (h += d.od[0]));\n h = 0 > h ? 0 : 63 < h ? 63 : h;\n if (0 < h) {\n var k = h;\n 0 < d.wb &&\n ((k = 4 < d.wb ? k >> 2 : k >> 1),\n k > 9 - d.wb && (k = 9 - d.wb));\n 1 > k && (k = 1);\n g.dd = k;\n g.tc = 2 * h + k;\n g.ld = 40 <= h ? 2 : 15 <= h ? 1 : 0;\n } else g.tc = 0;\n g.La = e;\n }\n }\n }\n c = 0;\n } else T(a, 6, \"Frame setup failed\"), (c = a.a);\n if ((c = 0 == c)) {\n if (c) {\n a.$c = 0;\n 0 < a.Aa || (a.Ic = Ne);\n b: {\n c = a.Ic;\n var k = a.za,\n d = 4 * k,\n l = 32 * k,\n m = k + 1,\n n = 0 < a.L ? k * (0 < a.Aa ? 2 : 1) : 0,\n r = (2 == a.Aa ? 2 : 1) * k;\n e = ((3 * (16 * c + Ya[a.L])) / 2) * l;\n f = null != a.Fa && 0 < a.Fa.length ? a.Kc.c * a.Kc.i : 0;\n g = d + 832 + e + f;\n if (g != g) c = 0;\n else {\n if (g > a.Vb) {\n a.Vb = 0;\n a.Ec = V(g);\n a.Fc = 0;\n if (null == a.Ec) {\n c = T(a, 1, \"no memory during frame initialization.\");\n break b;\n }\n a.Vb = g;\n }\n g = a.Ec;\n h = a.Fc;\n a.Ac = g;\n a.Bc = h;\n h += d;\n a.Gd = wa(l, Ic);\n a.Hd = 0;\n a.rb = wa(m + 1, Hc);\n a.sb = 1;\n a.wa = n ? wa(n, Xa) : null;\n a.Y = 0;\n a.D.Nb = 0;\n a.D.wa = a.wa;\n a.D.Y = a.Y;\n 0 < a.Aa && (a.D.Y += k);\n x(!0);\n a.oc = g;\n a.pc = h;\n h += 832;\n a.ya = wa(r, Kb);\n a.aa = 0;\n a.D.ya = a.ya;\n a.D.aa = a.aa;\n 2 == a.Aa && (a.D.aa += k);\n a.R = 16 * k;\n a.B = 8 * k;\n l = Ya[a.L];\n k = l * a.R;\n l = (l / 2) * a.B;\n a.sa = g;\n a.ta = h + k;\n a.qa = a.sa;\n a.ra = a.ta + 16 * c * a.R + l;\n a.Ha = a.qa;\n a.Ia = a.ra + 8 * c * a.B + l;\n a.$c = 0;\n h += e;\n a.mb = f ? g : null;\n a.nb = f ? h : null;\n x(h + f <= a.Fc + a.Vb);\n Lc(a);\n M(a.Ac, a.Bc, 0, d);\n c = 1;\n }\n }\n if (c) {\n b.ka = 0;\n b.y = a.sa;\n b.O = a.ta;\n b.f = a.qa;\n b.N = a.ra;\n b.ea = a.Ha;\n b.Vd = a.Ia;\n b.fa = a.R;\n b.Rc = a.B;\n b.F = null;\n b.J = 0;\n if (!ad) {\n for (c = -255; 255 >= c; ++c) bd[255 + c] = 0 > c ? -c : c;\n for (c = -1020; 1020 >= c; ++c)\n cd[1020 + c] = -128 > c ? -128 : 127 < c ? 127 : c;\n for (c = -112; 112 >= c; ++c)\n dd[112 + c] = -16 > c ? -16 : 15 < c ? 15 : c;\n for (c = -255; 510 >= c; ++c)\n ed[255 + c] = 0 > c ? 0 : 255 < c ? 255 : c;\n ad = 1;\n }\n Nc = Oe;\n Za = Pe;\n Nb = Qe;\n pa = Re;\n Ob = Se;\n fd = Te;\n Xc = Ue;\n Tc = Ve;\n Yc = We;\n Uc = Xe;\n Zc = Ye;\n Vc = Ze;\n $c = $e;\n Wc = af;\n Rc = gd;\n Pc = hd;\n Sc = bf;\n Qc = cf;\n W[0] = df;\n W[1] = ef;\n W[2] = ff;\n W[3] = gf;\n W[4] = hf;\n W[5] = jf;\n W[6] = kf;\n W[7] = lf;\n W[8] = mf;\n W[9] = nf;\n Y[0] = of;\n Y[1] = pf;\n Y[2] = qf;\n Y[3] = rf;\n Y[4] = sf;\n Y[5] = tf;\n Y[6] = uf;\n ka[0] = vf;\n ka[1] = wf;\n ka[2] = xf;\n ka[3] = yf;\n ka[4] = zf;\n ka[5] = Af;\n ka[6] = Bf;\n c = 1;\n } else c = 0;\n }\n c && (c = Je(a, b));\n null != b.bc && b.bc(b);\n c &= 1;\n }\n if (!c) return 0;\n a.cb = 0;\n return c;\n }\n function qa(a, b, c, d, e) {\n e = a[b + c + 32 * d] + (e >> 3);\n a[b + c + 32 * d] = e & -256 ? (0 > e ? 0 : 255) : e;\n }\n function kb(a, b, c, d, e, f) {\n qa(a, b, 0, c, d + e);\n qa(a, b, 1, c, d + f);\n qa(a, b, 2, c, d - f);\n qa(a, b, 3, c, d - e);\n }\n function da(a) {\n return ((20091 * a) >> 16) + a;\n }\n function id(a, b, c, d) {\n var e = 0,\n f;\n var g = V(16);\n for (f = 0; 4 > f; ++f) {\n var h = a[b + 0] + a[b + 8];\n var k = a[b + 0] - a[b + 8];\n var l = ((35468 * a[b + 4]) >> 16) - da(a[b + 12]);\n var m = da(a[b + 4]) + ((35468 * a[b + 12]) >> 16);\n g[e + 0] = h + m;\n g[e + 1] = k + l;\n g[e + 2] = k - l;\n g[e + 3] = h - m;\n e += 4;\n b++;\n }\n for (f = e = 0; 4 > f; ++f)\n (a = g[e + 0] + 4),\n (h = a + g[e + 8]),\n (k = a - g[e + 8]),\n (l = ((35468 * g[e + 4]) >> 16) - da(g[e + 12])),\n (m = da(g[e + 4]) + ((35468 * g[e + 12]) >> 16)),\n qa(c, d, 0, 0, h + m),\n qa(c, d, 1, 0, k + l),\n qa(c, d, 2, 0, k - l),\n qa(c, d, 3, 0, h - m),\n e++,\n (d += 32);\n }\n function Te(a, b, c, d) {\n var e = a[b + 0] + 4,\n f = (35468 * a[b + 4]) >> 16,\n g = da(a[b + 4]),\n h = (35468 * a[b + 1]) >> 16;\n a = da(a[b + 1]);\n kb(c, d, 0, e + g, a, h);\n kb(c, d, 1, e + f, a, h);\n kb(c, d, 2, e - f, a, h);\n kb(c, d, 3, e - g, a, h);\n }\n function Pe(a, b, c, d, e) {\n id(a, b, c, d);\n e && id(a, b + 16, c, d + 4);\n }\n function Qe(a, b, c, d) {\n Za(a, b + 0, c, d, 1);\n Za(a, b + 32, c, d + 128, 1);\n }\n function Re(a, b, c, d) {\n a = a[b + 0] + 4;\n var e;\n for (e = 0; 4 > e; ++e) for (b = 0; 4 > b; ++b) qa(c, d, b, e, a);\n }\n function Se(a, b, c, d) {\n a[b + 0] && pa(a, b + 0, c, d);\n a[b + 16] && pa(a, b + 16, c, d + 4);\n a[b + 32] && pa(a, b + 32, c, d + 128);\n a[b + 48] && pa(a, b + 48, c, d + 128 + 4);\n }\n function Oe(a, b, c, d) {\n var e = V(16),\n f;\n for (f = 0; 4 > f; ++f) {\n var g = a[b + 0 + f] + a[b + 12 + f];\n var h = a[b + 4 + f] + a[b + 8 + f];\n var k = a[b + 4 + f] - a[b + 8 + f];\n var l = a[b + 0 + f] - a[b + 12 + f];\n e[0 + f] = g + h;\n e[8 + f] = g - h;\n e[4 + f] = l + k;\n e[12 + f] = l - k;\n }\n for (f = 0; 4 > f; ++f)\n (a = e[0 + 4 * f] + 3),\n (g = a + e[3 + 4 * f]),\n (h = e[1 + 4 * f] + e[2 + 4 * f]),\n (k = e[1 + 4 * f] - e[2 + 4 * f]),\n (l = a - e[3 + 4 * f]),\n (c[d + 0] = (g + h) >> 3),\n (c[d + 16] = (l + k) >> 3),\n (c[d + 32] = (g - h) >> 3),\n (c[d + 48] = (l - k) >> 3),\n (d += 64);\n }\n function Pb(a, b, c) {\n var d = b - 32,\n e = R,\n f = 255 - a[d - 1],\n g;\n for (g = 0; g < c; ++g) {\n var h = e,\n k = f + a[b - 1],\n l;\n for (l = 0; l < c; ++l) a[b + l] = h[k + a[d + l]];\n b += 32;\n }\n }\n function ef(a, b) {\n Pb(a, b, 4);\n }\n function wf(a, b) {\n Pb(a, b, 8);\n }\n function pf(a, b) {\n Pb(a, b, 16);\n }\n function qf(a, b) {\n var c;\n for (c = 0; 16 > c; ++c) I(a, b + 32 * c, a, b - 32, 16);\n }\n function rf(a, b) {\n var c;\n for (c = 16; 0 < c; --c) M(a, b, a[b - 1], 16), (b += 32);\n }\n function $a(a, b, c) {\n var d;\n for (d = 0; 16 > d; ++d) M(b, c + 32 * d, a, 16);\n }\n function of(a, b) {\n var c = 16,\n d;\n for (d = 0; 16 > d; ++d) c += a[b - 1 + 32 * d] + a[b + d - 32];\n $a(c >> 5, a, b);\n }\n function sf(a, b) {\n var c = 8,\n d;\n for (d = 0; 16 > d; ++d) c += a[b - 1 + 32 * d];\n $a(c >> 4, a, b);\n }\n function tf(a, b) {\n var c = 8,\n d;\n for (d = 0; 16 > d; ++d) c += a[b + d - 32];\n $a(c >> 4, a, b);\n }\n function uf(a, b) {\n $a(128, a, b);\n }\n function z(a, b, c) {\n return (a + 2 * b + c + 2) >> 2;\n }\n function ff(a, b) {\n var c = b - 32,\n c = new Uint8Array([\n z(a[c - 1], a[c + 0], a[c + 1]),\n z(a[c + 0], a[c + 1], a[c + 2]),\n z(a[c + 1], a[c + 2], a[c + 3]),\n z(a[c + 2], a[c + 3], a[c + 4])\n ]),\n d;\n for (d = 0; 4 > d; ++d) I(a, b + 32 * d, c, 0, c.length);\n }\n function gf(a, b) {\n var c = a[b - 1],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 + 96];\n ra(a, b + 0, 16843009 * z(a[b - 1 - 32], c, d));\n ra(a, b + 32, 16843009 * z(c, d, e));\n ra(a, b + 64, 16843009 * z(d, e, f));\n ra(a, b + 96, 16843009 * z(e, f, f));\n }\n function df(a, b) {\n var c = 4,\n d;\n for (d = 0; 4 > d; ++d) c += a[b + d - 32] + a[b - 1 + 32 * d];\n c >>= 3;\n for (d = 0; 4 > d; ++d) M(a, b + 32 * d, c, 4);\n }\n function hf(a, b) {\n var c = a[b - 1 + 0],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 - 32],\n g = a[b + 0 - 32],\n h = a[b + 1 - 32],\n k = a[b + 2 - 32],\n l = a[b + 3 - 32];\n a[b + 0 + 96] = z(d, e, a[b - 1 + 96]);\n a[b + 1 + 96] = a[b + 0 + 64] = z(c, d, e);\n a[b + 2 + 96] = a[b + 1 + 64] = a[b + 0 + 32] = z(f, c, d);\n a[b + 3 + 96] = a[b + 2 + 64] = a[b + 1 + 32] = a[b + 0 + 0] = z(g, f, c);\n a[b + 3 + 64] = a[b + 2 + 32] = a[b + 1 + 0] = z(h, g, f);\n a[b + 3 + 32] = a[b + 2 + 0] = z(k, h, g);\n a[b + 3 + 0] = z(l, k, h);\n }\n function kf(a, b) {\n var c = a[b + 1 - 32],\n d = a[b + 2 - 32],\n e = a[b + 3 - 32],\n f = a[b + 4 - 32],\n g = a[b + 5 - 32],\n h = a[b + 6 - 32],\n k = a[b + 7 - 32];\n a[b + 0 + 0] = z(a[b + 0 - 32], c, d);\n a[b + 1 + 0] = a[b + 0 + 32] = z(c, d, e);\n a[b + 2 + 0] = a[b + 1 + 32] = a[b + 0 + 64] = z(d, e, f);\n a[b + 3 + 0] = a[b + 2 + 32] = a[b + 1 + 64] = a[b + 0 + 96] = z(e, f, g);\n a[b + 3 + 32] = a[b + 2 + 64] = a[b + 1 + 96] = z(f, g, h);\n a[b + 3 + 64] = a[b + 2 + 96] = z(g, h, k);\n a[b + 3 + 96] = z(h, k, k);\n }\n function jf(a, b) {\n var c = a[b - 1 + 0],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 - 32],\n g = a[b + 0 - 32],\n h = a[b + 1 - 32],\n k = a[b + 2 - 32],\n l = a[b + 3 - 32];\n a[b + 0 + 0] = a[b + 1 + 64] = (f + g + 1) >> 1;\n a[b + 1 + 0] = a[b + 2 + 64] = (g + h + 1) >> 1;\n a[b + 2 + 0] = a[b + 3 + 64] = (h + k + 1) >> 1;\n a[b + 3 + 0] = (k + l + 1) >> 1;\n a[b + 0 + 96] = z(e, d, c);\n a[b + 0 + 64] = z(d, c, f);\n a[b + 0 + 32] = a[b + 1 + 96] = z(c, f, g);\n a[b + 1 + 32] = a[b + 2 + 96] = z(f, g, h);\n a[b + 2 + 32] = a[b + 3 + 96] = z(g, h, k);\n a[b + 3 + 32] = z(h, k, l);\n }\n function lf(a, b) {\n var c = a[b + 0 - 32],\n d = a[b + 1 - 32],\n e = a[b + 2 - 32],\n f = a[b + 3 - 32],\n g = a[b + 4 - 32],\n h = a[b + 5 - 32],\n k = a[b + 6 - 32],\n l = a[b + 7 - 32];\n a[b + 0 + 0] = (c + d + 1) >> 1;\n a[b + 1 + 0] = a[b + 0 + 64] = (d + e + 1) >> 1;\n a[b + 2 + 0] = a[b + 1 + 64] = (e + f + 1) >> 1;\n a[b + 3 + 0] = a[b + 2 + 64] = (f + g + 1) >> 1;\n a[b + 0 + 32] = z(c, d, e);\n a[b + 1 + 32] = a[b + 0 + 96] = z(d, e, f);\n a[b + 2 + 32] = a[b + 1 + 96] = z(e, f, g);\n a[b + 3 + 32] = a[b + 2 + 96] = z(f, g, h);\n a[b + 3 + 64] = z(g, h, k);\n a[b + 3 + 96] = z(h, k, l);\n }\n function nf(a, b) {\n var c = a[b - 1 + 0],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 + 96];\n a[b + 0 + 0] = (c + d + 1) >> 1;\n a[b + 2 + 0] = a[b + 0 + 32] = (d + e + 1) >> 1;\n a[b + 2 + 32] = a[b + 0 + 64] = (e + f + 1) >> 1;\n a[b + 1 + 0] = z(c, d, e);\n a[b + 3 + 0] = a[b + 1 + 32] = z(d, e, f);\n a[b + 3 + 32] = a[b + 1 + 64] = z(e, f, f);\n a[b + 3 + 64] = a[b + 2 + 64] = a[b + 0 + 96] = a[b + 1 + 96] = a[\n b + 2 + 96\n ] = a[b + 3 + 96] = f;\n }\n function mf(a, b) {\n var c = a[b - 1 + 0],\n d = a[b - 1 + 32],\n e = a[b - 1 + 64],\n f = a[b - 1 + 96],\n g = a[b - 1 - 32],\n h = a[b + 0 - 32],\n k = a[b + 1 - 32],\n l = a[b + 2 - 32];\n a[b + 0 + 0] = a[b + 2 + 32] = (c + g + 1) >> 1;\n a[b + 0 + 32] = a[b + 2 + 64] = (d + c + 1) >> 1;\n a[b + 0 + 64] = a[b + 2 + 96] = (e + d + 1) >> 1;\n a[b + 0 + 96] = (f + e + 1) >> 1;\n a[b + 3 + 0] = z(h, k, l);\n a[b + 2 + 0] = z(g, h, k);\n a[b + 1 + 0] = a[b + 3 + 32] = z(c, g, h);\n a[b + 1 + 32] = a[b + 3 + 64] = z(d, c, g);\n a[b + 1 + 64] = a[b + 3 + 96] = z(e, d, c);\n a[b + 1 + 96] = z(f, e, d);\n }\n function xf(a, b) {\n var c;\n for (c = 0; 8 > c; ++c) I(a, b + 32 * c, a, b - 32, 8);\n }\n function yf(a, b) {\n var c;\n for (c = 0; 8 > c; ++c) M(a, b, a[b - 1], 8), (b += 32);\n }\n function lb(a, b, c) {\n var d;\n for (d = 0; 8 > d; ++d) M(b, c + 32 * d, a, 8);\n }\n function vf(a, b) {\n var c = 8,\n d;\n for (d = 0; 8 > d; ++d) c += a[b + d - 32] + a[b - 1 + 32 * d];\n lb(c >> 4, a, b);\n }\n function Af(a, b) {\n var c = 4,\n d;\n for (d = 0; 8 > d; ++d) c += a[b + d - 32];\n lb(c >> 3, a, b);\n }\n function zf(a, b) {\n var c = 4,\n d;\n for (d = 0; 8 > d; ++d) c += a[b - 1 + 32 * d];\n lb(c >> 3, a, b);\n }\n function Bf(a, b) {\n lb(128, a, b);\n }\n function ab(a, b, c) {\n var d = a[b - c],\n e = a[b + 0],\n f = 3 * (e - d) + Qb[1020 + a[b - 2 * c] - a[b + c]],\n g = mb[112 + ((f + 4) >> 3)];\n a[b - c] = R[255 + d + mb[112 + ((f + 3) >> 3)]];\n a[b + 0] = R[255 + e - g];\n }\n function jd(a, b, c, d) {\n var e = a[b + 0],\n f = a[b + c];\n return U[255 + a[b - 2 * c] - a[b - c]] > d || U[255 + f - e] > d;\n }\n function kd(a, b, c, d) {\n return (\n 4 * U[255 + a[b - c] - a[b + 0]] + U[255 + a[b - 2 * c] - a[b + c]] <= d\n );\n }\n function ld(a, b, c, d, e) {\n var f = a[b - 3 * c],\n g = a[b - 2 * c],\n h = a[b - c],\n k = a[b + 0],\n l = a[b + c],\n m = a[b + 2 * c],\n n = a[b + 3 * c];\n return 4 * U[255 + h - k] + U[255 + g - l] > d\n ? 0\n : U[255 + a[b - 4 * c] - f] <= e &&\n U[255 + f - g] <= e &&\n U[255 + g - h] <= e &&\n U[255 + n - m] <= e &&\n U[255 + m - l] <= e &&\n U[255 + l - k] <= e;\n }\n function gd(a, b, c, d) {\n var e = 2 * d + 1;\n for (d = 0; 16 > d; ++d) kd(a, b + d, c, e) && ab(a, b + d, c);\n }\n function hd(a, b, c, d) {\n var e = 2 * d + 1;\n for (d = 0; 16 > d; ++d) kd(a, b + d * c, 1, e) && ab(a, b + d * c, 1);\n }\n function bf(a, b, c, d) {\n var e;\n for (e = 3; 0 < e; --e) (b += 4 * c), gd(a, b, c, d);\n }\n function cf(a, b, c, d) {\n var e;\n for (e = 3; 0 < e; --e) (b += 4), hd(a, b, c, d);\n }\n function ea(a, b, c, d, e, f, g, h) {\n for (f = 2 * f + 1; 0 < e--; ) {\n if (ld(a, b, c, f, g))\n if (jd(a, b, c, h)) ab(a, b, c);\n else {\n var k = a,\n l = b,\n m = c,\n n = k[l - 2 * m],\n r = k[l - m],\n q = k[l + 0],\n t = k[l + m],\n v = k[l + 2 * m],\n p = Qb[1020 + 3 * (q - r) + Qb[1020 + n - t]],\n u = (27 * p + 63) >> 7,\n w = (18 * p + 63) >> 7,\n p = (9 * p + 63) >> 7;\n k[l - 3 * m] = R[255 + k[l - 3 * m] + p];\n k[l - 2 * m] = R[255 + n + w];\n k[l - m] = R[255 + r + u];\n k[l + 0] = R[255 + q - u];\n k[l + m] = R[255 + t - w];\n k[l + 2 * m] = R[255 + v - p];\n }\n b += d;\n }\n }\n function Fa(a, b, c, d, e, f, g, h) {\n for (f = 2 * f + 1; 0 < e--; ) {\n if (ld(a, b, c, f, g))\n if (jd(a, b, c, h)) ab(a, b, c);\n else {\n var k = a,\n l = b,\n m = c,\n n = k[l - m],\n r = k[l + 0],\n q = k[l + m],\n t = 3 * (r - n),\n v = mb[112 + ((t + 4) >> 3)],\n t = mb[112 + ((t + 3) >> 3)],\n p = (v + 1) >> 1;\n k[l - 2 * m] = R[255 + k[l - 2 * m] + p];\n k[l - m] = R[255 + n + t];\n k[l + 0] = R[255 + r - v];\n k[l + m] = R[255 + q - p];\n }\n b += d;\n }\n }\n function Ue(a, b, c, d, e, f) {\n ea(a, b, c, 1, 16, d, e, f);\n }\n function Ve(a, b, c, d, e, f) {\n ea(a, b, 1, c, 16, d, e, f);\n }\n function Ye(a, b, c, d, e, f) {\n var g;\n for (g = 3; 0 < g; --g) (b += 4 * c), Fa(a, b, c, 1, 16, d, e, f);\n }\n function Ze(a, b, c, d, e, f) {\n var g;\n for (g = 3; 0 < g; --g) (b += 4), Fa(a, b, 1, c, 16, d, e, f);\n }\n function We(a, b, c, d, e, f, g, h) {\n ea(a, b, e, 1, 8, f, g, h);\n ea(c, d, e, 1, 8, f, g, h);\n }\n function Xe(a, b, c, d, e, f, g, h) {\n ea(a, b, 1, e, 8, f, g, h);\n ea(c, d, 1, e, 8, f, g, h);\n }\n function $e(a, b, c, d, e, f, g, h) {\n Fa(a, b + 4 * e, e, 1, 8, f, g, h);\n Fa(c, d + 4 * e, e, 1, 8, f, g, h);\n }\n function af(a, b, c, d, e, f, g, h) {\n Fa(a, b + 4, 1, e, 8, f, g, h);\n Fa(c, d + 4, 1, e, 8, f, g, h);\n }\n function Cf() {\n this.ba = new Cb();\n this.ec = [];\n this.cc = [];\n this.Mc = [];\n this.Dc = this.Nc = this.dc = this.fc = 0;\n this.Oa = new Ud();\n this.memory = 0;\n this.Ib = \"OutputFunc\";\n this.Jb = \"OutputAlphaFunc\";\n this.Nd = \"OutputRowFunc\";\n }\n function md() {\n this.data = [];\n this.offset = this.kd = this.ha = this.w = 0;\n this.na = [];\n this.xa = this.gb = this.Ja = this.Sa = this.P = 0;\n }\n function Df() {\n this.nc = this.Ea = this.b = this.hc = 0;\n this.K = [];\n this.w = 0;\n }\n function Ef() {\n this.ua = 0;\n this.Wa = new ac();\n this.vb = new ac();\n this.md = this.xc = this.wc = 0;\n this.vc = [];\n this.Wb = 0;\n this.Ya = new Ub();\n this.yc = new O();\n }\n function je() {\n this.xb = this.a = 0;\n this.l = new Oa();\n this.ca = new Cb();\n this.V = [];\n this.Ba = 0;\n this.Ta = [];\n this.Ua = 0;\n this.m = new Ra();\n this.Pb = 0;\n this.wd = new Ra();\n this.Ma = this.$ = this.C = this.i = this.c = this.xd = 0;\n this.s = new Ef();\n this.ab = 0;\n this.gc = wa(4, Df);\n this.Oc = 0;\n }\n function Ff() {\n this.Lc = this.Z = this.$a = this.i = this.c = 0;\n this.l = new Oa();\n this.ic = 0;\n this.ca = [];\n this.tb = 0;\n this.qd = null;\n this.rd = 0;\n }\n function Rb(a, b, c, d, e, f, g) {\n a = null == a ? 0 : a[b + 0];\n for (b = 0; b < g; ++b) (e[f + b] = (a + c[d + b]) & 255), (a = e[f + b]);\n }\n function Gf(a, b, c, d, e, f, g) {\n if (null == a) Rb(null, null, c, d, e, f, g);\n else {\n var h;\n for (h = 0; h < g; ++h) e[f + h] = (a[b + h] + c[d + h]) & 255;\n }\n }\n function Hf(a, b, c, d, e, f, g) {\n if (null == a) Rb(null, null, c, d, e, f, g);\n else {\n var h = a[b + 0],\n k = h,\n l = h,\n m;\n for (m = 0; m < g; ++m)\n (h = a[b + m]),\n (k = l + h - k),\n (l = (c[d + m] + (k & -256 ? (0 > k ? 0 : 255) : k)) & 255),\n (k = h),\n (e[f + m] = l);\n }\n }\n function Le(a, b, c, d) {\n var e = b.width,\n f = b.o;\n x(null != a && null != b);\n if (0 > c || 0 >= d || c + d > f) return null;\n if (!a.Cc) {\n if (null == a.ga) {\n a.ga = new Ff();\n var g;\n (g = null == a.ga) ||\n ((g = b.width * b.o),\n x(0 == a.Gb.length),\n (a.Gb = V(g)),\n (a.Uc = 0),\n null == a.Gb\n ? (g = 0)\n : ((a.mb = a.Gb), (a.nb = a.Uc), (a.rc = null), (g = 1)),\n (g = !g));\n if (!g) {\n g = a.ga;\n var h = a.Fa,\n k = a.P,\n l = a.qc,\n m = a.mb,\n n = a.nb,\n r = k + 1,\n q = l - 1,\n t = g.l;\n x(null != h && null != m && null != b);\n ia[0] = null;\n ia[1] = Rb;\n ia[2] = Gf;\n ia[3] = Hf;\n g.ca = m;\n g.tb = n;\n g.c = b.width;\n g.i = b.height;\n x(0 < g.c && 0 < g.i);\n if (1 >= l) b = 0;\n else if (\n ((g.$a = (h[k + 0] >> 0) & 3),\n (g.Z = (h[k + 0] >> 2) & 3),\n (g.Lc = (h[k + 0] >> 4) & 3),\n (k = (h[k + 0] >> 6) & 3),\n 0 > g.$a || 1 < g.$a || 4 <= g.Z || 1 < g.Lc || k)\n )\n b = 0;\n else if (\n ((t.put = kc),\n (t.ac = gc),\n (t.bc = lc),\n (t.ma = g),\n (t.width = b.width),\n (t.height = b.height),\n (t.Da = b.Da),\n (t.v = b.v),\n (t.va = b.va),\n (t.j = b.j),\n (t.o = b.o),\n g.$a)\n )\n b: {\n x(1 == g.$a), (b = Bc());\n c: for (;;) {\n if (null == b) {\n b = 0;\n break b;\n }\n x(null != g);\n g.mc = b;\n b.c = g.c;\n b.i = g.i;\n b.l = g.l;\n b.l.ma = g;\n b.l.width = g.c;\n b.l.height = g.i;\n b.a = 0;\n cb(b.m, h, r, q);\n if (!rb(g.c, g.i, 1, b, null)) break c;\n 1 == b.ab && 3 == b.gc[0].hc && yc(b.s)\n ? ((g.ic = 1),\n (h = b.c * b.i),\n (b.Ta = null),\n (b.Ua = 0),\n (b.V = V(h)),\n (b.Ba = 0),\n null == b.V ? ((b.a = 1), (b = 0)) : (b = 1))\n : ((g.ic = 0), (b = Ec(b, g.c)));\n if (!b) break c;\n b = 1;\n break b;\n }\n g.mc = null;\n b = 0;\n }\n else b = q >= g.c * g.i;\n g = !b;\n }\n if (g) return null;\n 1 != a.ga.Lc ? (a.Ga = 0) : (d = f - c);\n }\n x(null != a.ga);\n x(c + d <= f);\n a: {\n h = a.ga;\n b = h.c;\n f = h.l.o;\n if (0 == h.$a) {\n r = a.rc;\n q = a.Vc;\n t = a.Fa;\n k = a.P + 1 + c * b;\n l = a.mb;\n m = a.nb + c * b;\n x(k <= a.P + a.qc);\n if (0 != h.Z)\n for (x(null != ia[h.Z]), g = 0; g < d; ++g)\n ia[h.Z](r, q, t, k, l, m, b),\n (r = l),\n (q = m),\n (m += b),\n (k += b);\n else\n for (g = 0; g < d; ++g)\n I(l, m, t, k, b), (r = l), (q = m), (m += b), (k += b);\n a.rc = r;\n a.Vc = q;\n } else {\n x(null != h.mc);\n b = c + d;\n g = h.mc;\n x(null != g);\n x(b <= g.i);\n if (g.C >= b) b = 1;\n else if ((h.ic || Aa(), h.ic)) {\n var h = g.V,\n r = g.Ba,\n q = g.c,\n v = g.i,\n t = 1,\n k = g.$ / q,\n l = g.$ % q,\n m = g.m,\n n = g.s,\n p = g.$,\n u = q * v,\n w = q * b,\n y = n.wc,\n A = p < w ? ha(n, l, k) : null;\n x(p <= u);\n x(b <= v);\n x(yc(n));\n c: for (;;) {\n for (; !m.h && p < w; ) {\n l & y || (A = ha(n, l, k));\n x(null != A);\n Sa(m);\n v = ua(A.G[0], A.H[0], m);\n if (256 > v)\n (h[r + p] = v),\n ++p,\n ++l,\n l >= q && ((l = 0), ++k, k <= b && !(k % 16) && Ib(g, k));\n else if (280 > v) {\n var v = ib(v - 256, m);\n var E = ua(A.G[4], A.H[4], m);\n Sa(m);\n E = ib(E, m);\n E = nc(q, E);\n if (p >= E && u - p >= v) {\n var B;\n for (B = 0; B < v; ++B) h[r + p + B] = h[r + p + B - E];\n } else {\n t = 0;\n break c;\n }\n p += v;\n for (l += v; l >= q; )\n (l -= q), ++k, k <= b && !(k % 16) && Ib(g, k);\n p < w && l & y && (A = ha(n, l, k));\n } else {\n t = 0;\n break c;\n }\n x(m.h == db(m));\n }\n Ib(g, k > b ? b : k);\n break c;\n }\n !t || (m.h && p < u) ? ((t = 0), (g.a = m.h ? 5 : 3)) : (g.$ = p);\n b = t;\n } else b = Jb(g, g.V, g.Ba, g.c, g.i, b, se);\n if (!b) {\n d = 0;\n break a;\n }\n }\n c + d >= f && (a.Cc = 1);\n d = 1;\n }\n if (!d) return null;\n if (\n a.Cc &&\n ((d = a.ga), null != d && (d.mc = null), (a.ga = null), 0 < a.Ga)\n )\n return alert(\"todo:WebPDequantizeLevels\"), null;\n }\n return a.nb + c * e;\n }\n function If(a, b, c, d, e, f) {\n for (; 0 < e--; ) {\n var g = a,\n h = b + (c ? 1 : 0),\n k = a,\n l = b + (c ? 0 : 3),\n m;\n for (m = 0; m < d; ++m) {\n var n = k[l + 4 * m];\n 255 != n &&\n ((n *= 32897),\n (g[h + 4 * m + 0] = (g[h + 4 * m + 0] * n) >> 23),\n (g[h + 4 * m + 1] = (g[h + 4 * m + 1] * n) >> 23),\n (g[h + 4 * m + 2] = (g[h + 4 * m + 2] * n) >> 23));\n }\n b += f;\n }\n }\n function Jf(a, b, c, d, e) {\n for (; 0 < d--; ) {\n var f;\n for (f = 0; f < c; ++f) {\n var g = a[b + 2 * f + 0],\n h = a[b + 2 * f + 1],\n k = h & 15,\n l = 4369 * k,\n h = (((h & 240) | (h >> 4)) * l) >> 16;\n a[b + 2 * f + 0] =\n (((((g & 240) | (g >> 4)) * l) >> 16) & 240) |\n ((((((g & 15) | (g << 4)) * l) >> 16) >> 4) & 15);\n a[b + 2 * f + 1] = (h & 240) | k;\n }\n b += e;\n }\n }\n function Kf(a, b, c, d, e, f, g, h) {\n var k = 255,\n l,\n m;\n for (m = 0; m < e; ++m) {\n for (l = 0; l < d; ++l) {\n var n = a[b + l];\n f[g + 4 * l] = n;\n k &= n;\n }\n b += c;\n g += h;\n }\n return 255 != k;\n }\n function Lf(a, b, c, d, e) {\n var f;\n for (f = 0; f < e; ++f) c[d + f] = a[b + f] >> 8;\n }\n function Aa() {\n za = If;\n vc = Jf;\n fc = Kf;\n Fc = Lf;\n }\n function va(a, b, c) {\n self[a] = function(a, e, f, g, h, k, l, m, n, r, q, t, v, p, u, w, y) {\n var d,\n E = (y - 1) >> 1;\n var B = h[k + 0] | (l[m + 0] << 16);\n var C = n[r + 0] | (q[t + 0] << 16);\n x(null != a);\n var z = (3 * B + C + 131074) >> 2;\n b(a[e + 0], z & 255, z >> 16, v, p);\n null != f &&\n ((z = (3 * C + B + 131074) >> 2),\n b(f[g + 0], z & 255, z >> 16, u, w));\n for (d = 1; d <= E; ++d) {\n var D = h[k + d] | (l[m + d] << 16);\n var G = n[r + d] | (q[t + d] << 16);\n var F = B + D + C + G + 524296;\n var H = (F + 2 * (D + C)) >> 3;\n F = (F + 2 * (B + G)) >> 3;\n z = (H + B) >> 1;\n B = (F + D) >> 1;\n b(a[e + 2 * d - 1], z & 255, z >> 16, v, p + (2 * d - 1) * c);\n b(a[e + 2 * d - 0], B & 255, B >> 16, v, p + (2 * d - 0) * c);\n null != f &&\n ((z = (F + C) >> 1),\n (B = (H + G) >> 1),\n b(f[g + 2 * d - 1], z & 255, z >> 16, u, w + (2 * d - 1) * c),\n b(f[g + 2 * d + 0], B & 255, B >> 16, u, w + (2 * d + 0) * c));\n B = D;\n C = G;\n }\n y & 1 ||\n ((z = (3 * B + C + 131074) >> 2),\n b(a[e + y - 1], z & 255, z >> 16, v, p + (y - 1) * c),\n null != f &&\n ((z = (3 * C + B + 131074) >> 2),\n b(f[g + y - 1], z & 255, z >> 16, u, w + (y - 1) * c)));\n };\n }\n function ic() {\n P[Ca] = Mf;\n P[Ua] = nd;\n P[tc] = Nf;\n P[Va] = od;\n P[ya] = pd;\n P[Db] = qd;\n P[wc] = Of;\n P[zb] = nd;\n P[Ab] = od;\n P[Ja] = pd;\n P[Bb] = qd;\n }\n function Sb(a) {\n return a & ~Pf ? (0 > a ? 0 : 255) : a >> rd;\n }\n function bb(a, b) {\n return Sb(((19077 * a) >> 8) + ((26149 * b) >> 8) - 14234);\n }\n function nb(a, b, c) {\n return Sb(\n ((19077 * a) >> 8) - ((6419 * b) >> 8) - ((13320 * c) >> 8) + 8708\n );\n }\n function Pa(a, b) {\n return Sb(((19077 * a) >> 8) + ((33050 * b) >> 8) - 17685);\n }\n function Ga(a, b, c, d, e) {\n d[e + 0] = bb(a, c);\n d[e + 1] = nb(a, b, c);\n d[e + 2] = Pa(a, b);\n }\n function Tb(a, b, c, d, e) {\n d[e + 0] = Pa(a, b);\n d[e + 1] = nb(a, b, c);\n d[e + 2] = bb(a, c);\n }\n function sd(a, b, c, d, e) {\n var f = nb(a, b, c);\n b = ((f << 3) & 224) | (Pa(a, b) >> 3);\n d[e + 0] = (bb(a, c) & 248) | (f >> 5);\n d[e + 1] = b;\n }\n function td(a, b, c, d, e) {\n var f = (Pa(a, b) & 240) | 15;\n d[e + 0] = (bb(a, c) & 240) | (nb(a, b, c) >> 4);\n d[e + 1] = f;\n }\n function ud(a, b, c, d, e) {\n d[e + 0] = 255;\n Ga(a, b, c, d, e + 1);\n }\n function vd(a, b, c, d, e) {\n Tb(a, b, c, d, e);\n d[e + 3] = 255;\n }\n function wd(a, b, c, d, e) {\n Ga(a, b, c, d, e);\n d[e + 3] = 255;\n }\n function ga(a, b) {\n return 0 > a ? 0 : a > b ? b : a;\n }\n function la(a, b, c) {\n self[a] = function(a, e, f, g, h, k, l, m, n) {\n for (var d = m + (n & -2) * c; m != d; )\n b(a[e + 0], f[g + 0], h[k + 0], l, m),\n b(a[e + 1], f[g + 0], h[k + 0], l, m + c),\n (e += 2),\n ++g,\n ++k,\n (m += 2 * c);\n n & 1 && b(a[e + 0], f[g + 0], h[k + 0], l, m);\n };\n }\n function xd(a, b, c) {\n return 0 == c ? (0 == a ? (0 == b ? 6 : 5) : 0 == b ? 4 : 0) : c;\n }\n function yd(a, b, c, d, e) {\n switch (a >>> 30) {\n case 3:\n Za(b, c, d, e, 0);\n break;\n case 2:\n fd(b, c, d, e);\n break;\n case 1:\n pa(b, c, d, e);\n }\n }\n function Oc(a, b) {\n var c,\n d,\n e = b.M,\n f = b.Nb,\n g = a.oc,\n h = a.pc + 40,\n k = a.oc,\n l = a.pc + 584,\n m = a.oc,\n n = a.pc + 600;\n for (c = 0; 16 > c; ++c) g[h + 32 * c - 1] = 129;\n for (c = 0; 8 > c; ++c)\n (k[l + 32 * c - 1] = 129), (m[n + 32 * c - 1] = 129);\n 0 < e\n ? (g[h - 1 - 32] = k[l - 1 - 32] = m[n - 1 - 32] = 129)\n : (M(g, h - 32 - 1, 127, 21),\n M(k, l - 32 - 1, 127, 9),\n M(m, n - 32 - 1, 127, 9));\n for (d = 0; d < a.za; ++d) {\n var r = b.ya[b.aa + d];\n if (0 < d) {\n for (c = -1; 16 > c; ++c) I(g, h + 32 * c - 4, g, h + 32 * c + 12, 4);\n for (c = -1; 8 > c; ++c)\n I(k, l + 32 * c - 4, k, l + 32 * c + 4, 4),\n I(m, n + 32 * c - 4, m, n + 32 * c + 4, 4);\n }\n var q = a.Gd,\n t = a.Hd + d,\n v = r.ad,\n p = r.Hc;\n 0 < e &&\n (I(g, h - 32, q[t].y, 0, 16),\n I(k, l - 32, q[t].f, 0, 8),\n I(m, n - 32, q[t].ea, 0, 8));\n if (r.Za) {\n var u = g;\n var w = h - 32 + 16;\n 0 < e &&\n (d >= a.za - 1\n ? M(u, w, q[t].y[15], 4)\n : I(u, w, q[t + 1].y, 0, 4));\n for (c = 0; 4 > c; c++)\n u[w + 128 + c] = u[w + 256 + c] = u[w + 384 + c] = u[w + 0 + c];\n for (c = 0; 16 > c; ++c, p <<= 2)\n (u = g), (w = h + zd[c]), W[r.Ob[c]](u, w), yd(p, v, 16 * +c, u, w);\n } else if (((u = xd(d, e, r.Ob[0])), Y[u](g, h), 0 != p))\n for (c = 0; 16 > c; ++c, p <<= 2) yd(p, v, 16 * +c, g, h + zd[c]);\n c = r.Gc;\n u = xd(d, e, r.Dd);\n ka[u](k, l);\n ka[u](m, n);\n r = c >> 0;\n p = v;\n u = k;\n w = l;\n r & 255 && (r & 170 ? Nb(p, 256, u, w) : Ob(p, 256, u, w));\n c >>= 8;\n r = m;\n p = n;\n c & 255 && (c & 170 ? Nb(v, 320, r, p) : Ob(v, 320, r, p));\n e < a.Ub - 1 &&\n (I(q[t].y, 0, g, h + 480, 16),\n I(q[t].f, 0, k, l + 224, 8),\n I(q[t].ea, 0, m, n + 224, 8));\n c = 8 * f * a.B;\n q = a.sa;\n t = a.ta + 16 * d + 16 * f * a.R;\n v = a.qa;\n r = a.ra + 8 * d + c;\n p = a.Ha;\n u = a.Ia + 8 * d + c;\n for (c = 0; 16 > c; ++c) I(q, t + c * a.R, g, h + 32 * c, 16);\n for (c = 0; 8 > c; ++c)\n I(v, r + c * a.B, k, l + 32 * c, 8),\n I(p, u + c * a.B, m, n + 32 * c, 8);\n }\n }\n function Ad(a, b, c, d, e, f, g, h, k) {\n var l = [0],\n m = [0],\n n = 0,\n r = null != k ? k.kd : 0,\n q = null != k ? k : new md();\n if (null == a || 12 > c) return 7;\n q.data = a;\n q.w = b;\n q.ha = c;\n b = [b];\n c = [c];\n q.gb = [q.gb];\n a: {\n var t = b;\n var v = c;\n var p = q.gb;\n x(null != a);\n x(null != v);\n x(null != p);\n p[0] = 0;\n if (12 <= v[0] && !fa(a, t[0], \"RIFF\")) {\n if (fa(a, t[0] + 8, \"WEBP\")) {\n p = 3;\n break a;\n }\n var u = Ha(a, t[0] + 4);\n if (12 > u || 4294967286 < u) {\n p = 3;\n break a;\n }\n if (r && u > v[0] - 8) {\n p = 7;\n break a;\n }\n p[0] = u;\n t[0] += 12;\n v[0] -= 12;\n }\n p = 0;\n }\n if (0 != p) return p;\n u = 0 < q.gb[0];\n for (c = c[0]; ; ) {\n t = [0];\n n = [n];\n a: {\n var w = a;\n v = b;\n p = c;\n var y = n,\n A = l,\n z = m,\n B = t;\n y[0] = 0;\n if (8 > p[0]) p = 7;\n else {\n if (!fa(w, v[0], \"VP8X\")) {\n if (10 != Ha(w, v[0] + 4)) {\n p = 3;\n break a;\n }\n if (18 > p[0]) {\n p = 7;\n break a;\n }\n var C = Ha(w, v[0] + 8);\n var D = 1 + Yb(w, v[0] + 12);\n w = 1 + Yb(w, v[0] + 15);\n if (2147483648 <= D * w) {\n p = 3;\n break a;\n }\n null != B && (B[0] = C);\n null != A && (A[0] = D);\n null != z && (z[0] = w);\n v[0] += 18;\n p[0] -= 18;\n y[0] = 1;\n }\n p = 0;\n }\n }\n n = n[0];\n t = t[0];\n if (0 != p) return p;\n v = !!(t & 2);\n if (!u && n) return 3;\n null != f && (f[0] = !!(t & 16));\n null != g && (g[0] = v);\n null != h && (h[0] = 0);\n g = l[0];\n t = m[0];\n if (n && v && null == k) {\n p = 0;\n break;\n }\n if (4 > c) {\n p = 7;\n break;\n }\n if ((u && n) || (!u && !n && !fa(a, b[0], \"ALPH\"))) {\n c = [c];\n q.na = [q.na];\n q.P = [q.P];\n q.Sa = [q.Sa];\n a: {\n C = a;\n p = b;\n u = c;\n var y = q.gb,\n A = q.na,\n z = q.P,\n B = q.Sa;\n D = 22;\n x(null != C);\n x(null != u);\n w = p[0];\n var F = u[0];\n x(null != A);\n x(null != B);\n A[0] = null;\n z[0] = null;\n for (B[0] = 0; ; ) {\n p[0] = w;\n u[0] = F;\n if (8 > F) {\n p = 7;\n break a;\n }\n var G = Ha(C, w + 4);\n if (4294967286 < G) {\n p = 3;\n break a;\n }\n var H = (8 + G + 1) & -2;\n D += H;\n if (0 < y && D > y) {\n p = 3;\n break a;\n }\n if (!fa(C, w, \"VP8 \") || !fa(C, w, \"VP8L\")) {\n p = 0;\n break a;\n }\n if (F[0] < H) {\n p = 7;\n break a;\n }\n fa(C, w, \"ALPH\") || ((A[0] = C), (z[0] = w + 8), (B[0] = G));\n w += H;\n F -= H;\n }\n }\n c = c[0];\n q.na = q.na[0];\n q.P = q.P[0];\n q.Sa = q.Sa[0];\n if (0 != p) break;\n }\n c = [c];\n q.Ja = [q.Ja];\n q.xa = [q.xa];\n a: if (\n ((y = a),\n (p = b),\n (u = c),\n (A = q.gb[0]),\n (z = q.Ja),\n (B = q.xa),\n (C = p[0]),\n (w = !fa(y, C, \"VP8 \")),\n (D = !fa(y, C, \"VP8L\")),\n x(null != y),\n x(null != u),\n x(null != z),\n x(null != B),\n 8 > u[0])\n )\n p = 7;\n else {\n if (w || D) {\n y = Ha(y, C + 4);\n if (12 <= A && y > A - 12) {\n p = 3;\n break a;\n }\n if (r && y > u[0] - 8) {\n p = 7;\n break a;\n }\n z[0] = y;\n p[0] += 8;\n u[0] -= 8;\n B[0] = D;\n } else\n (B[0] = 5 <= u[0] && 47 == y[C + 0] && !(y[C + 4] >> 5)),\n (z[0] = u[0]);\n p = 0;\n }\n c = c[0];\n q.Ja = q.Ja[0];\n q.xa = q.xa[0];\n b = b[0];\n if (0 != p) break;\n if (4294967286 < q.Ja) return 3;\n null == h || v || (h[0] = q.xa ? 2 : 1);\n g = [g];\n t = [t];\n if (q.xa) {\n if (5 > c) {\n p = 7;\n break;\n }\n h = g;\n r = t;\n v = f;\n null == a || 5 > c\n ? (a = 0)\n : 5 <= c && 47 == a[b + 0] && !(a[b + 4] >> 5)\n ? ((u = [0]),\n (y = [0]),\n (A = [0]),\n (z = new Ra()),\n cb(z, a, b, c),\n mc(z, u, y, A)\n ? (null != h && (h[0] = u[0]),\n null != r && (r[0] = y[0]),\n null != v && (v[0] = A[0]),\n (a = 1))\n : (a = 0))\n : (a = 0);\n } else {\n if (10 > c) {\n p = 7;\n break;\n }\n h = t;\n null == a || 10 > c || !Jc(a, b + 3, c - 3)\n ? (a = 0)\n : ((r = a[b + 0] | (a[b + 1] << 8) | (a[b + 2] << 16)),\n (v = ((a[b + 7] << 8) | a[b + 6]) & 16383),\n (a = ((a[b + 9] << 8) | a[b + 8]) & 16383),\n r & 1 ||\n 3 < ((r >> 1) & 7) ||\n !((r >> 4) & 1) ||\n r >> 5 >= q.Ja ||\n !v ||\n !a\n ? (a = 0)\n : (g && (g[0] = v), h && (h[0] = a), (a = 1)));\n }\n if (!a) return 3;\n g = g[0];\n t = t[0];\n if (n && (l[0] != g || m[0] != t)) return 3;\n null != k &&\n ((k[0] = q),\n (k.offset = b - k.w),\n x(4294967286 > b - k.w),\n x(k.offset == k.ha - c));\n break;\n }\n return 0 == p || (7 == p && n && null == k)\n ? (null != f && (f[0] |= null != q.na && 0 < q.na.length),\n null != d && (d[0] = g),\n null != e && (e[0] = t),\n 0)\n : p;\n }\n function hc(a, b, c) {\n var d = b.width,\n e = b.height,\n f = 0,\n g = 0,\n h = d,\n k = e;\n b.Da = null != a && 0 < a.Da;\n if (\n b.Da &&\n ((h = a.cd),\n (k = a.bd),\n (f = a.v),\n (g = a.j),\n 11 > c || ((f &= -2), (g &= -2)),\n 0 > f || 0 > g || 0 >= h || 0 >= k || f + h > d || g + k > e)\n )\n return 0;\n b.v = f;\n b.j = g;\n b.va = f + h;\n b.o = g + k;\n b.U = h;\n b.T = k;\n b.da = null != a && 0 < a.da;\n if (b.da) {\n c = [a.ib];\n f = [a.hb];\n if (!bc(h, k, c, f)) return 0;\n b.ib = c[0];\n b.hb = f[0];\n }\n b.ob = null != a && a.ob;\n b.Kb = null == a || !a.Sd;\n b.da && ((b.ob = b.ib < (3 * d) / 4 && b.hb < (3 * e) / 4), (b.Kb = 0));\n return 1;\n }\n function Bd(a) {\n if (null == a) return 2;\n if (11 > a.S) {\n var b = a.f.RGBA;\n b.fb += (a.height - 1) * b.A;\n b.A = -b.A;\n } else\n (b = a.f.kb),\n (a = a.height),\n (b.O += (a - 1) * b.fa),\n (b.fa = -b.fa),\n (b.N += ((a - 1) >> 1) * b.Ab),\n (b.Ab = -b.Ab),\n (b.W += ((a - 1) >> 1) * b.Db),\n (b.Db = -b.Db),\n null != b.F && ((b.J += (a - 1) * b.lb), (b.lb = -b.lb));\n return 0;\n }\n function Cd(a, b, c, d) {\n if (null == d || 0 >= a || 0 >= b) return 2;\n if (null != c) {\n if (c.Da) {\n var e = c.cd,\n f = c.bd,\n g = c.v & -2,\n h = c.j & -2;\n if (0 > g || 0 > h || 0 >= e || 0 >= f || g + e > a || h + f > b)\n return 2;\n a = e;\n b = f;\n }\n if (c.da) {\n e = [c.ib];\n f = [c.hb];\n if (!bc(a, b, e, f)) return 2;\n a = e[0];\n b = f[0];\n }\n }\n d.width = a;\n d.height = b;\n a: {\n var k = d.width;\n var l = d.height;\n a = d.S;\n if (0 >= k || 0 >= l || !(a >= Ca && 13 > a)) a = 2;\n else {\n if (0 >= d.Rd && null == d.sd) {\n var g = (f = e = b = 0),\n h = k * Dd[a],\n m = h * l;\n 11 > a ||\n ((b = (k + 1) / 2),\n (f = ((l + 1) / 2) * b),\n 12 == a && ((e = k), (g = e * l)));\n l = V(m + 2 * f + g);\n if (null == l) {\n a = 1;\n break a;\n }\n d.sd = l;\n 11 > a\n ? ((k = d.f.RGBA),\n (k.eb = l),\n (k.fb = 0),\n (k.A = h),\n (k.size = m))\n : ((k = d.f.kb),\n (k.y = l),\n (k.O = 0),\n (k.fa = h),\n (k.Fd = m),\n (k.f = l),\n (k.N = 0 + m),\n (k.Ab = b),\n (k.Cd = f),\n (k.ea = l),\n (k.W = 0 + m + f),\n (k.Db = b),\n (k.Ed = f),\n 12 == a && ((k.F = l), (k.J = 0 + m + 2 * f)),\n (k.Tc = g),\n (k.lb = e));\n }\n b = 1;\n e = d.S;\n f = d.width;\n g = d.height;\n if (e >= Ca && 13 > e)\n if (11 > e)\n (a = d.f.RGBA),\n (h = Math.abs(a.A)),\n (b &= h * (g - 1) + f <= a.size),\n (b &= h >= f * Dd[e]),\n (b &= null != a.eb);\n else {\n a = d.f.kb;\n h = (f + 1) / 2;\n m = (g + 1) / 2;\n k = Math.abs(a.fa);\n var l = Math.abs(a.Ab),\n n = Math.abs(a.Db),\n r = Math.abs(a.lb),\n q = r * (g - 1) + f;\n b &= k * (g - 1) + f <= a.Fd;\n b &= l * (m - 1) + h <= a.Cd;\n b &= n * (m - 1) + h <= a.Ed;\n b = b & (k >= f) & (l >= h) & (n >= h);\n b &= null != a.y;\n b &= null != a.f;\n b &= null != a.ea;\n 12 == e && ((b &= r >= f), (b &= q <= a.Tc), (b &= null != a.F));\n }\n else b = 0;\n a = b ? 0 : 2;\n }\n }\n if (0 != a) return a;\n null != c && c.fd && (a = Bd(d));\n return a;\n }\n var xb = 64,\n Hd = [\n 0,\n 1,\n 3,\n 7,\n 15,\n 31,\n 63,\n 127,\n 255,\n 511,\n 1023,\n 2047,\n 4095,\n 8191,\n 16383,\n 32767,\n 65535,\n 131071,\n 262143,\n 524287,\n 1048575,\n 2097151,\n 4194303,\n 8388607,\n 16777215\n ],\n Gd = 24,\n ob = 32,\n Xb = 8,\n Id = [\n 0,\n 0,\n 1,\n 1,\n 2,\n 2,\n 2,\n 2,\n 3,\n 3,\n 3,\n 3,\n 3,\n 3,\n 3,\n 3,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 4,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 5,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 6,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7,\n 7\n ];\n X(\"Predictor0\", \"PredictorAdd0\");\n self.Predictor0 = function() {\n return 4278190080;\n };\n self.Predictor1 = function(a) {\n return a;\n };\n self.Predictor2 = function(a, b, c) {\n return b[c + 0];\n };\n self.Predictor3 = function(a, b, c) {\n return b[c + 1];\n };\n self.Predictor4 = function(a, b, c) {\n return b[c - 1];\n };\n self.Predictor5 = function(a, b, c) {\n return aa(aa(a, b[c + 1]), b[c + 0]);\n };\n self.Predictor6 = function(a, b, c) {\n return aa(a, b[c - 1]);\n };\n self.Predictor7 = function(a, b, c) {\n return aa(a, b[c + 0]);\n };\n self.Predictor8 = function(a, b, c) {\n return aa(b[c - 1], b[c + 0]);\n };\n self.Predictor9 = function(a, b, c) {\n return aa(b[c + 0], b[c + 1]);\n };\n self.Predictor10 = function(a, b, c) {\n return aa(aa(a, b[c - 1]), aa(b[c + 0], b[c + 1]));\n };\n self.Predictor11 = function(a, b, c) {\n var d = b[c + 0];\n b = b[c - 1];\n return 0 >=\n Ia((d >> 24) & 255, (a >> 24) & 255, (b >> 24) & 255) +\n Ia((d >> 16) & 255, (a >> 16) & 255, (b >> 16) & 255) +\n Ia((d >> 8) & 255, (a >> 8) & 255, (b >> 8) & 255) +\n Ia(d & 255, a & 255, b & 255)\n ? d\n : a;\n };\n self.Predictor12 = function(a, b, c) {\n var d = b[c + 0];\n b = b[c - 1];\n return (\n ((sa(((a >> 24) & 255) + ((d >> 24) & 255) - ((b >> 24) & 255)) << 24) |\n (sa(((a >> 16) & 255) + ((d >> 16) & 255) - ((b >> 16) & 255)) <<\n 16) |\n (sa(((a >> 8) & 255) + ((d >> 8) & 255) - ((b >> 8) & 255)) << 8) |\n sa((a & 255) + (d & 255) - (b & 255))) >>>\n 0\n );\n };\n self.Predictor13 = function(a, b, c) {\n var d = b[c - 1];\n a = aa(a, b[c + 0]);\n return (\n ((eb((a >> 24) & 255, (d >> 24) & 255) << 24) |\n (eb((a >> 16) & 255, (d >> 16) & 255) << 16) |\n (eb((a >> 8) & 255, (d >> 8) & 255) << 8) |\n eb((a >> 0) & 255, (d >> 0) & 255)) >>>\n 0\n );\n };\n var ee = self.PredictorAdd0;\n self.PredictorAdd1 = cc;\n X(\"Predictor2\", \"PredictorAdd2\");\n X(\"Predictor3\", \"PredictorAdd3\");\n X(\"Predictor4\", \"PredictorAdd4\");\n X(\"Predictor5\", \"PredictorAdd5\");\n X(\"Predictor6\", \"PredictorAdd6\");\n X(\"Predictor7\", \"PredictorAdd7\");\n X(\"Predictor8\", \"PredictorAdd8\");\n X(\"Predictor9\", \"PredictorAdd9\");\n X(\"Predictor10\", \"PredictorAdd10\");\n X(\"Predictor11\", \"PredictorAdd11\");\n X(\"Predictor12\", \"PredictorAdd12\");\n X(\"Predictor13\", \"PredictorAdd13\");\n var fe = self.PredictorAdd2;\n ec(\n \"ColorIndexInverseTransform\",\n \"MapARGB\",\n \"32b\",\n function(a) {\n return (a >> 8) & 255;\n },\n function(a) {\n return a;\n }\n );\n ec(\n \"VP8LColorIndexInverseTransformAlpha\",\n \"MapAlpha\",\n \"8b\",\n function(a) {\n return a;\n },\n function(a) {\n return (a >> 8) & 255;\n }\n );\n var rc = self.ColorIndexInverseTransform,\n ke = self.MapARGB,\n he = self.VP8LColorIndexInverseTransformAlpha,\n le = self.MapAlpha,\n pc,\n qc = (self.VP8LPredictorsAdd = []);\n qc.length = 16;\n (self.VP8LPredictors = []).length = 16;\n (self.VP8LPredictorsAdd_C = []).length = 16;\n (self.VP8LPredictors_C = []).length = 16;\n var Fb,\n sc,\n Gb,\n Hb,\n xc,\n uc,\n bd = V(511),\n cd = V(2041),\n dd = V(225),\n ed = V(767),\n ad = 0,\n Qb = cd,\n mb = dd,\n R = ed,\n U = bd,\n Ca = 0,\n Ua = 1,\n tc = 2,\n Va = 3,\n ya = 4,\n Db = 5,\n wc = 6,\n zb = 7,\n Ab = 8,\n Ja = 9,\n Bb = 10,\n pe = [2, 3, 7],\n oe = [3, 3, 11],\n Dc = [280, 256, 256, 256, 40],\n qe = [0, 1, 1, 1, 0],\n ne = [17, 18, 0, 1, 2, 3, 4, 5, 16, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],\n de = [\n 24,\n 7,\n 23,\n 25,\n 40,\n 6,\n 39,\n 41,\n 22,\n 26,\n 38,\n 42,\n 56,\n 5,\n 55,\n 57,\n 21,\n 27,\n 54,\n 58,\n 37,\n 43,\n 72,\n 4,\n 71,\n 73,\n 20,\n 28,\n 53,\n 59,\n 70,\n 74,\n 36,\n 44,\n 88,\n 69,\n 75,\n 52,\n 60,\n 3,\n 87,\n 89,\n 19,\n 29,\n 86,\n 90,\n 35,\n 45,\n 68,\n 76,\n 85,\n 91,\n 51,\n 61,\n 104,\n 2,\n 103,\n 105,\n 18,\n 30,\n 102,\n 106,\n 34,\n 46,\n 84,\n 92,\n 67,\n 77,\n 101,\n 107,\n 50,\n 62,\n 120,\n 1,\n 119,\n 121,\n 83,\n 93,\n 17,\n 31,\n 100,\n 108,\n 66,\n 78,\n 118,\n 122,\n 33,\n 47,\n 117,\n 123,\n 49,\n 63,\n 99,\n 109,\n 82,\n 94,\n 0,\n 116,\n 124,\n 65,\n 79,\n 16,\n 32,\n 98,\n 110,\n 48,\n 115,\n 125,\n 81,\n 95,\n 64,\n 114,\n 126,\n 97,\n 111,\n 80,\n 113,\n 127,\n 96,\n 112\n ],\n me = [\n 2954,\n 2956,\n 2958,\n 2962,\n 2970,\n 2986,\n 3018,\n 3082,\n 3212,\n 3468,\n 3980,\n 5004\n ],\n ie = 8,\n Lb = [\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 10,\n 11,\n 12,\n 13,\n 14,\n 15,\n 16,\n 17,\n 17,\n 18,\n 19,\n 20,\n 20,\n 21,\n 21,\n 22,\n 22,\n 23,\n 23,\n 24,\n 25,\n 25,\n 26,\n 27,\n 28,\n 29,\n 30,\n 31,\n 32,\n 33,\n 34,\n 35,\n 36,\n 37,\n 37,\n 38,\n 39,\n 40,\n 41,\n 42,\n 43,\n 44,\n 45,\n 46,\n 46,\n 47,\n 48,\n 49,\n 50,\n 51,\n 52,\n 53,\n 54,\n 55,\n 56,\n 57,\n 58,\n 59,\n 60,\n 61,\n 62,\n 63,\n 64,\n 65,\n 66,\n 67,\n 68,\n 69,\n 70,\n 71,\n 72,\n 73,\n 74,\n 75,\n 76,\n 76,\n 77,\n 78,\n 79,\n 80,\n 81,\n 82,\n 83,\n 84,\n 85,\n 86,\n 87,\n 88,\n 89,\n 91,\n 93,\n 95,\n 96,\n 98,\n 100,\n 101,\n 102,\n 104,\n 106,\n 108,\n 110,\n 112,\n 114,\n 116,\n 118,\n 122,\n 124,\n 126,\n 128,\n 130,\n 132,\n 134,\n 136,\n 138,\n 140,\n 143,\n 145,\n 148,\n 151,\n 154,\n 157\n ],\n Mb = [\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n 12,\n 13,\n 14,\n 15,\n 16,\n 17,\n 18,\n 19,\n 20,\n 21,\n 22,\n 23,\n 24,\n 25,\n 26,\n 27,\n 28,\n 29,\n 30,\n 31,\n 32,\n 33,\n 34,\n 35,\n 36,\n 37,\n 38,\n 39,\n 40,\n 41,\n 42,\n 43,\n 44,\n 45,\n 46,\n 47,\n 48,\n 49,\n 50,\n 51,\n 52,\n 53,\n 54,\n 55,\n 56,\n 57,\n 58,\n 60,\n 62,\n 64,\n 66,\n 68,\n 70,\n 72,\n 74,\n 76,\n 78,\n 80,\n 82,\n 84,\n 86,\n 88,\n 90,\n 92,\n 94,\n 96,\n 98,\n 100,\n 102,\n 104,\n 106,\n 108,\n 110,\n 112,\n 114,\n 116,\n 119,\n 122,\n 125,\n 128,\n 131,\n 134,\n 137,\n 140,\n 143,\n 146,\n 149,\n 152,\n 155,\n 158,\n 161,\n 164,\n 167,\n 170,\n 173,\n 177,\n 181,\n 185,\n 189,\n 193,\n 197,\n 201,\n 205,\n 209,\n 213,\n 217,\n 221,\n 225,\n 229,\n 234,\n 239,\n 245,\n 249,\n 254,\n 259,\n 264,\n 269,\n 274,\n 279,\n 284\n ],\n oa = null,\n He = [\n [173, 148, 140, 0],\n [176, 155, 140, 135, 0],\n [180, 157, 141, 134, 130, 0],\n [254, 254, 243, 230, 196, 177, 153, 140, 133, 130, 129, 0]\n ],\n Ie = [0, 1, 4, 8, 5, 2, 3, 6, 9, 12, 13, 10, 7, 11, 14, 15],\n Mc = [-0, 1, -1, 2, -2, 3, 4, 6, -3, 5, -4, -5, -6, 7, -7, 8, -8, -9],\n Fe = [\n [\n [\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128]\n ],\n [\n [253, 136, 254, 255, 228, 219, 128, 128, 128, 128, 128],\n [189, 129, 242, 255, 227, 213, 255, 219, 128, 128, 128],\n [106, 126, 227, 252, 214, 209, 255, 255, 128, 128, 128]\n ],\n [\n [1, 98, 248, 255, 236, 226, 255, 255, 128, 128, 128],\n [181, 133, 238, 254, 221, 234, 255, 154, 128, 128, 128],\n [78, 134, 202, 247, 198, 180, 255, 219, 128, 128, 128]\n ],\n [\n [1, 185, 249, 255, 243, 255, 128, 128, 128, 128, 128],\n [184, 150, 247, 255, 236, 224, 128, 128, 128, 128, 128],\n [77, 110, 216, 255, 236, 230, 128, 128, 128, 128, 128]\n ],\n [\n [1, 101, 251, 255, 241, 255, 128, 128, 128, 128, 128],\n [170, 139, 241, 252, 236, 209, 255, 255, 128, 128, 128],\n [37, 116, 196, 243, 228, 255, 255, 255, 128, 128, 128]\n ],\n [\n [1, 204, 254, 255, 245, 255, 128, 128, 128, 128, 128],\n [207, 160, 250, 255, 238, 128, 128, 128, 128, 128, 128],\n [102, 103, 231, 255, 211, 171, 128, 128, 128, 128, 128]\n ],\n [\n [1, 152, 252, 255, 240, 255, 128, 128, 128, 128, 128],\n [177, 135, 243, 255, 234, 225, 128, 128, 128, 128, 128],\n [80, 129, 211, 255, 194, 224, 128, 128, 128, 128, 128]\n ],\n [\n [1, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [246, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [255, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128]\n ]\n ],\n [\n [\n [198, 35, 237, 223, 193, 187, 162, 160, 145, 155, 62],\n [131, 45, 198, 221, 172, 176, 220, 157, 252, 221, 1],\n [68, 47, 146, 208, 149, 167, 221, 162, 255, 223, 128]\n ],\n [\n [1, 149, 241, 255, 221, 224, 255, 255, 128, 128, 128],\n [184, 141, 234, 253, 222, 220, 255, 199, 128, 128, 128],\n [81, 99, 181, 242, 176, 190, 249, 202, 255, 255, 128]\n ],\n [\n [1, 129, 232, 253, 214, 197, 242, 196, 255, 255, 128],\n [99, 121, 210, 250, 201, 198, 255, 202, 128, 128, 128],\n [23, 91, 163, 242, 170, 187, 247, 210, 255, 255, 128]\n ],\n [\n [1, 200, 246, 255, 234, 255, 128, 128, 128, 128, 128],\n [109, 178, 241, 255, 231, 245, 255, 255, 128, 128, 128],\n [44, 130, 201, 253, 205, 192, 255, 255, 128, 128, 128]\n ],\n [\n [1, 132, 239, 251, 219, 209, 255, 165, 128, 128, 128],\n [94, 136, 225, 251, 218, 190, 255, 255, 128, 128, 128],\n [22, 100, 174, 245, 186, 161, 255, 199, 128, 128, 128]\n ],\n [\n [1, 182, 249, 255, 232, 235, 128, 128, 128, 128, 128],\n [124, 143, 241, 255, 227, 234, 128, 128, 128, 128, 128],\n [35, 77, 181, 251, 193, 211, 255, 205, 128, 128, 128]\n ],\n [\n [1, 157, 247, 255, 236, 231, 255, 255, 128, 128, 128],\n [121, 141, 235, 255, 225, 227, 255, 255, 128, 128, 128],\n [45, 99, 188, 251, 195, 217, 255, 224, 128, 128, 128]\n ],\n [\n [1, 1, 251, 255, 213, 255, 128, 128, 128, 128, 128],\n [203, 1, 248, 255, 255, 128, 128, 128, 128, 128, 128],\n [137, 1, 177, 255, 224, 255, 128, 128, 128, 128, 128]\n ]\n ],\n [\n [\n [253, 9, 248, 251, 207, 208, 255, 192, 128, 128, 128],\n [175, 13, 224, 243, 193, 185, 249, 198, 255, 255, 128],\n [73, 17, 171, 221, 161, 179, 236, 167, 255, 234, 128]\n ],\n [\n [1, 95, 247, 253, 212, 183, 255, 255, 128, 128, 128],\n [239, 90, 244, 250, 211, 209, 255, 255, 128, 128, 128],\n [155, 77, 195, 248, 188, 195, 255, 255, 128, 128, 128]\n ],\n [\n [1, 24, 239, 251, 218, 219, 255, 205, 128, 128, 128],\n [201, 51, 219, 255, 196, 186, 128, 128, 128, 128, 128],\n [69, 46, 190, 239, 201, 218, 255, 228, 128, 128, 128]\n ],\n [\n [1, 191, 251, 255, 255, 128, 128, 128, 128, 128, 128],\n [223, 165, 249, 255, 213, 255, 128, 128, 128, 128, 128],\n [141, 124, 248, 255, 255, 128, 128, 128, 128, 128, 128]\n ],\n [\n [1, 16, 248, 255, 255, 128, 128, 128, 128, 128, 128],\n [190, 36, 230, 255, 236, 255, 128, 128, 128, 128, 128],\n [149, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128]\n ],\n [\n [1, 226, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [247, 192, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [240, 128, 255, 128, 128, 128, 128, 128, 128, 128, 128]\n ],\n [\n [1, 134, 252, 255, 255, 128, 128, 128, 128, 128, 128],\n [213, 62, 250, 255, 255, 128, 128, 128, 128, 128, 128],\n [55, 93, 255, 128, 128, 128, 128, 128, 128, 128, 128]\n ],\n [\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128],\n [128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128]\n ]\n ],\n [\n [\n [202, 24, 213, 235, 186, 191, 220, 160, 240, 175, 255],\n [126, 38, 182, 232, 169, 184, 228, 174, 255, 187, 128],\n [61, 46, 138, 219, 151, 178, 240, 170, 255, 216, 128]\n ],\n [\n [1, 112, 230, 250, 199, 191, 247, 159, 255, 255, 128],\n [166, 109, 228, 252, 211, 215, 255, 174, 128, 128, 128],\n [39, 77, 162, 232, 172, 180, 245, 178, 255, 255, 128]\n ],\n [\n [1, 52, 220, 246, 198, 199, 249, 220, 255, 255, 128],\n [124, 74, 191, 243, 183, 193, 250, 221, 255, 255, 128],\n [24, 71, 130, 219, 154, 170, 243, 182, 255, 255, 128]\n ],\n [\n [1, 182, 225, 249, 219, 240, 255, 224, 128, 128, 128],\n [149, 150, 226, 252, 216, 205, 255, 171, 128, 128, 128],\n [28, 108, 170, 242, 183, 194, 254, 223, 255, 255, 128]\n ],\n [\n [1, 81, 230, 252, 204, 203, 255, 192, 128, 128, 128],\n [123, 102, 209, 247, 188, 196, 255, 233, 128, 128, 128],\n [20, 95, 153, 243, 164, 173, 255, 203, 128, 128, 128]\n ],\n [\n [1, 222, 248, 255, 216, 213, 128, 128, 128, 128, 128],\n [168, 175, 246, 252, 235, 205, 255, 255, 128, 128, 128],\n [47, 116, 215, 255, 211, 212, 255, 255, 128, 128, 128]\n ],\n [\n [1, 121, 236, 253, 212, 214, 255, 255, 128, 128, 128],\n [141, 84, 213, 252, 201, 202, 255, 219, 128, 128, 128],\n [42, 80, 160, 240, 162, 185, 255, 205, 128, 128, 128]\n ],\n [\n [1, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [244, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128],\n [238, 1, 255, 128, 128, 128, 128, 128, 128, 128, 128]\n ]\n ]\n ],\n Ke = [\n [\n [231, 120, 48, 89, 115, 113, 120, 152, 112],\n [152, 179, 64, 126, 170, 118, 46, 70, 95],\n [175, 69, 143, 80, 85, 82, 72, 155, 103],\n [56, 58, 10, 171, 218, 189, 17, 13, 152],\n [114, 26, 17, 163, 44, 195, 21, 10, 173],\n [121, 24, 80, 195, 26, 62, 44, 64, 85],\n [144, 71, 10, 38, 171, 213, 144, 34, 26],\n [170, 46, 55, 19, 136, 160, 33, 206, 71],\n [63, 20, 8, 114, 114, 208, 12, 9, 226],\n [81, 40, 11, 96, 182, 84, 29, 16, 36]\n ],\n [\n [134, 183, 89, 137, 98, 101, 106, 165, 148],\n [72, 187, 100, 130, 157, 111, 32, 75, 80],\n [66, 102, 167, 99, 74, 62, 40, 234, 128],\n [41, 53, 9, 178, 241, 141, 26, 8, 107],\n [74, 43, 26, 146, 73, 166, 49, 23, 157],\n [65, 38, 105, 160, 51, 52, 31, 115, 128],\n [104, 79, 12, 27, 217, 255, 87, 17, 7],\n [87, 68, 71, 44, 114, 51, 15, 186, 23],\n [47, 41, 14, 110, 182, 183, 21, 17, 194],\n [66, 45, 25, 102, 197, 189, 23, 18, 22]\n ],\n [\n [88, 88, 147, 150, 42, 46, 45, 196, 205],\n [43, 97, 183, 117, 85, 38, 35, 179, 61],\n [39, 53, 200, 87, 26, 21, 43, 232, 171],\n [56, 34, 51, 104, 114, 102, 29, 93, 77],\n [39, 28, 85, 171, 58, 165, 90, 98, 64],\n [34, 22, 116, 206, 23, 34, 43, 166, 73],\n [107, 54, 32, 26, 51, 1, 81, 43, 31],\n [68, 25, 106, 22, 64, 171, 36, 225, 114],\n [34, 19, 21, 102, 132, 188, 16, 76, 124],\n [62, 18, 78, 95, 85, 57, 50, 48, 51]\n ],\n [\n [193, 101, 35, 159, 215, 111, 89, 46, 111],\n [60, 148, 31, 172, 219, 228, 21, 18, 111],\n [112, 113, 77, 85, 179, 255, 38, 120, 114],\n [40, 42, 1, 196, 245, 209, 10, 25, 109],\n [88, 43, 29, 140, 166, 213, 37, 43, 154],\n [61, 63, 30, 155, 67, 45, 68, 1, 209],\n [100, 80, 8, 43, 154, 1, 51, 26, 71],\n [142, 78, 78, 16, 255, 128, 34, 197, 171],\n [41, 40, 5, 102, 211, 183, 4, 1, 221],\n [51, 50, 17, 168, 209, 192, 23, 25, 82]\n ],\n [\n [138, 31, 36, 171, 27, 166, 38, 44, 229],\n [67, 87, 58, 169, 82, 115, 26, 59, 179],\n [63, 59, 90, 180, 59, 166, 93, 73, 154],\n [40, 40, 21, 116, 143, 209, 34, 39, 175],\n [47, 15, 16, 183, 34, 223, 49, 45, 183],\n [46, 17, 33, 183, 6, 98, 15, 32, 183],\n [57, 46, 22, 24, 128, 1, 54, 17, 37],\n [65, 32, 73, 115, 28, 128, 23, 128, 205],\n [40, 3, 9, 115, 51, 192, 18, 6, 223],\n [87, 37, 9, 115, 59, 77, 64, 21, 47]\n ],\n [\n [104, 55, 44, 218, 9, 54, 53, 130, 226],\n [64, 90, 70, 205, 40, 41, 23, 26, 57],\n [54, 57, 112, 184, 5, 41, 38, 166, 213],\n [30, 34, 26, 133, 152, 116, 10, 32, 134],\n [39, 19, 53, 221, 26, 114, 32, 73, 255],\n [31, 9, 65, 234, 2, 15, 1, 118, 73],\n [75, 32, 12, 51, 192, 255, 160, 43, 51],\n [88, 31, 35, 67, 102, 85, 55, 186, 85],\n [56, 21, 23, 111, 59, 205, 45, 37, 192],\n [55, 38, 70, 124, 73, 102, 1, 34, 98]\n ],\n [\n [125, 98, 42, 88, 104, 85, 117, 175, 82],\n [95, 84, 53, 89, 128, 100, 113, 101, 45],\n [75, 79, 123, 47, 51, 128, 81, 171, 1],\n [57, 17, 5, 71, 102, 57, 53, 41, 49],\n [38, 33, 13, 121, 57, 73, 26, 1, 85],\n [41, 10, 67, 138, 77, 110, 90, 47, 114],\n [115, 21, 2, 10, 102, 255, 166, 23, 6],\n [101, 29, 16, 10, 85, 128, 101, 196, 26],\n [57, 18, 10, 102, 102, 213, 34, 20, 43],\n [117, 20, 15, 36, 163, 128, 68, 1, 26]\n ],\n [\n [102, 61, 71, 37, 34, 53, 31, 243, 192],\n [69, 60, 71, 38, 73, 119, 28, 222, 37],\n [68, 45, 128, 34, 1, 47, 11, 245, 171],\n [62, 17, 19, 70, 146, 85, 55, 62, 70],\n [37, 43, 37, 154, 100, 163, 85, 160, 1],\n [63, 9, 92, 136, 28, 64, 32, 201, 85],\n [75, 15, 9, 9, 64, 255, 184, 119, 16],\n [86, 6, 28, 5, 64, 255, 25, 248, 1],\n [56, 8, 17, 132, 137, 255, 55, 116, 128],\n [58, 15, 20, 82, 135, 57, 26, 121, 40]\n ],\n [\n [164, 50, 31, 137, 154, 133, 25, 35, 218],\n [51, 103, 44, 131, 131, 123, 31, 6, 158],\n [86, 40, 64, 135, 148, 224, 45, 183, 128],\n [22, 26, 17, 131, 240, 154, 14, 1, 209],\n [45, 16, 21, 91, 64, 222, 7, 1, 197],\n [56, 21, 39, 155, 60, 138, 23, 102, 213],\n [83, 12, 13, 54, 192, 255, 68, 47, 28],\n [85, 26, 85, 85, 128, 128, 32, 146, 171],\n [18, 11, 7, 63, 144, 171, 4, 4, 246],\n [35, 27, 10, 146, 174, 171, 12, 26, 128]\n ],\n [\n [190, 80, 35, 99, 180, 80, 126, 54, 45],\n [85, 126, 47, 87, 176, 51, 41, 20, 32],\n [101, 75, 128, 139, 118, 146, 116, 128, 85],\n [56, 41, 15, 176, 236, 85, 37, 9, 62],\n [71, 30, 17, 119, 118, 255, 17, 18, 138],\n [101, 38, 60, 138, 55, 70, 43, 26, 142],\n [146, 36, 19, 30, 171, 255, 97, 27, 20],\n [138, 45, 61, 62, 219, 1, 81, 188, 64],\n [32, 41, 20, 117, 151, 142, 20, 21, 163],\n [112, 19, 12, 61, 195, 128, 48, 4, 24]\n ]\n ],\n Ee = [\n [\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [176, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [223, 241, 252, 255, 255, 255, 255, 255, 255, 255, 255],\n [249, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 244, 252, 255, 255, 255, 255, 255, 255, 255, 255],\n [234, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 246, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [239, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [251, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [251, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 253, 255, 254, 255, 255, 255, 255, 255, 255],\n [250, 255, 254, 255, 254, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ]\n ],\n [\n [\n [217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [225, 252, 241, 253, 255, 255, 254, 255, 255, 255, 255],\n [234, 250, 241, 250, 253, 255, 253, 254, 255, 255, 255]\n ],\n [\n [255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [223, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [238, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [249, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [247, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ]\n ],\n [\n [\n [186, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255],\n [234, 251, 244, 254, 255, 255, 255, 255, 255, 255, 255],\n [251, 251, 243, 253, 254, 255, 254, 255, 255, 255, 255]\n ],\n [\n [255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [236, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [251, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ]\n ],\n [\n [\n [248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [250, 254, 252, 254, 255, 255, 255, 255, 255, 255, 255],\n [248, 254, 249, 253, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [246, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [252, 254, 251, 254, 254, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 254, 252, 255, 255, 255, 255, 255, 255, 255, 255],\n [248, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [253, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [245, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 251, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [249, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255],\n [250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ],\n [\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255],\n [255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]\n ]\n ]\n ],\n Ge = [0, 1, 2, 3, 6, 4, 5, 6, 6, 6, 6, 6, 6, 6, 6, 7, 0],\n Nc,\n Y = [],\n W = [],\n ka = [],\n Za,\n fd,\n Nb,\n pa,\n Ob,\n Xc,\n Tc,\n Yc,\n Uc,\n Zc,\n Vc,\n $c,\n Wc,\n Rc,\n Pc,\n Sc,\n Qc,\n re = 1,\n Cc = 2,\n ia = [],\n za,\n vc,\n fc,\n Fc,\n P = [];\n va(\"UpsampleRgbLinePair\", Ga, 3);\n va(\"UpsampleBgrLinePair\", Tb, 3);\n va(\"UpsampleRgbaLinePair\", wd, 4);\n va(\"UpsampleBgraLinePair\", vd, 4);\n va(\"UpsampleArgbLinePair\", ud, 4);\n va(\"UpsampleRgba4444LinePair\", td, 2);\n va(\"UpsampleRgb565LinePair\", sd, 2);\n var Mf = self.UpsampleRgbLinePair,\n Nf = self.UpsampleBgrLinePair,\n nd = self.UpsampleRgbaLinePair,\n od = self.UpsampleBgraLinePair,\n pd = self.UpsampleArgbLinePair,\n qd = self.UpsampleRgba4444LinePair,\n Of = self.UpsampleRgb565LinePair,\n Wa = 16,\n Ba = 1 << (Wa - 1),\n ta = -227,\n Eb = 482,\n rd = 6,\n Pf = (256 << rd) - 1,\n jc = 0,\n Yd = V(256),\n ae = V(256),\n $d = V(256),\n Zd = V(256),\n be = V(Eb - ta),\n ce = V(Eb - ta);\n la(\"YuvToRgbRow\", Ga, 3);\n la(\"YuvToBgrRow\", Tb, 3);\n la(\"YuvToRgbaRow\", wd, 4);\n la(\"YuvToBgraRow\", vd, 4);\n la(\"YuvToArgbRow\", ud, 4);\n la(\"YuvToRgba4444Row\", td, 2);\n la(\"YuvToRgb565Row\", sd, 2);\n var zd = [\n 0,\n 4,\n 8,\n 12,\n 128,\n 132,\n 136,\n 140,\n 256,\n 260,\n 264,\n 268,\n 384,\n 388,\n 392,\n 396\n ],\n Ya = [0, 2, 8],\n Qf = [8, 7, 6, 4, 4, 2, 2, 2, 1, 1, 1, 1],\n Ne = 1;\n this.WebPDecodeRGBA = function(a, b, c, d, e) {\n var f = Ua;\n var g = new Cf(),\n h = new Cb();\n g.ba = h;\n h.S = f;\n h.width = [h.width];\n h.height = [h.height];\n var k = h.width;\n var l = h.height,\n m = new Td();\n if (null == m || null == a) var n = 2;\n else\n x(null != m),\n (n = Ad(a, b, c, m.width, m.height, m.Pd, m.Qd, m.format, null));\n 0 != n\n ? (k = 0)\n : (null != k && (k[0] = m.width[0]),\n null != l && (l[0] = m.height[0]),\n (k = 1));\n if (k) {\n h.width = h.width[0];\n h.height = h.height[0];\n null != d && (d[0] = h.width);\n null != e && (e[0] = h.height);\n b: {\n d = new Oa();\n e = new md();\n e.data = a;\n e.w = b;\n e.ha = c;\n e.kd = 1;\n b = [0];\n x(null != e);\n a = Ad(e.data, e.w, e.ha, null, null, null, b, null, e);\n (0 == a || 7 == a) && b[0] && (a = 4);\n b = a;\n if (0 == b) {\n x(null != g);\n d.data = e.data;\n d.w = e.w + e.offset;\n d.ha = e.ha - e.offset;\n d.put = kc;\n d.ac = gc;\n d.bc = lc;\n d.ma = g;\n if (e.xa) {\n a = Bc();\n if (null == a) {\n g = 1;\n break b;\n }\n if (te(a, d)) {\n b = Cd(d.width, d.height, g.Oa, g.ba);\n if ((d = 0 == b)) {\n c: {\n d = a;\n d: for (;;) {\n if (null == d) {\n d = 0;\n break c;\n }\n x(null != d.s.yc);\n x(null != d.s.Ya);\n x(0 < d.s.Wb);\n c = d.l;\n x(null != c);\n e = c.ma;\n x(null != e);\n if (0 != d.xb) {\n d.ca = e.ba;\n d.tb = e.tb;\n x(null != d.ca);\n if (!hc(e.Oa, c, Va)) {\n d.a = 2;\n break d;\n }\n if (!Ec(d, c.width)) break d;\n if (c.da) break d;\n (c.da || hb(d.ca.S)) && Aa();\n 11 > d.ca.S ||\n (alert(\"todo:WebPInitConvertARGBToYUV\"),\n null != d.ca.f.kb.F && Aa());\n if (\n d.Pb &&\n 0 < d.s.ua &&\n null == d.s.vb.X &&\n !Zb(d.s.vb, d.s.Wa.Xa)\n ) {\n d.a = 1;\n break d;\n }\n d.xb = 0;\n }\n if (!Jb(d, d.V, d.Ba, d.c, d.i, c.o, ge)) break d;\n e.Dc = d.Ma;\n d = 1;\n break c;\n }\n x(0 != d.a);\n d = 0;\n }\n d = !d;\n }\n d && (b = a.a);\n } else b = a.a;\n } else {\n a = new Ce();\n if (null == a) {\n g = 1;\n break b;\n }\n a.Fa = e.na;\n a.P = e.P;\n a.qc = e.Sa;\n if (Kc(a, d)) {\n if (((b = Cd(d.width, d.height, g.Oa, g.ba)), 0 == b)) {\n a.Aa = 0;\n c = g.Oa;\n e = a;\n x(null != e);\n if (null != c) {\n k = c.Md;\n k = 0 > k ? 0 : 100 < k ? 255 : (255 * k) / 100;\n if (0 < k) {\n for (l = m = 0; 4 > l; ++l)\n (n = e.pb[l]),\n 12 > n.lc &&\n (n.ia = (k * Qf[0 > n.lc ? 0 : n.lc]) >> 3),\n (m |= n.ia);\n m && (alert(\"todo:VP8InitRandom\"), (e.ia = 1));\n }\n e.Ga = c.Id;\n 100 < e.Ga ? (e.Ga = 100) : 0 > e.Ga && (e.Ga = 0);\n }\n Me(a, d) || (b = a.a);\n }\n } else b = a.a;\n }\n 0 == b && null != g.Oa && g.Oa.fd && (b = Bd(g.ba));\n }\n g = b;\n }\n f = 0 != g ? null : 11 > f ? h.f.RGBA.eb : h.f.kb.y;\n } else f = null;\n return f;\n };\n var Dd = [3, 4, 3, 4, 4, 2, 2, 4, 4, 4, 2, 1, 1];\n };\n new _WebPDecoder();\n\n /** @license\n * Copyright (c) 2017 Dominik Homberger\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nhttps://webpjs.appspot.com\nWebPRiffParser dominikhlbg@gmail.com\n*/\n\n function memcmp(data, data_off, str, size) {\n for (var i = 0; i < size; i++)\n if (data[data_off + i] != str.charCodeAt(i)) return true;\n return false;\n }\n\n function GetTag(data, data_off) {\n var str = \"\";\n for (var i = 0; i < 4; i++) str += String.fromCharCode(data[data_off++]);\n return str;\n }\n\n function GetLE16(data, data_off) {\n return (data[data_off + 0] << 0) | (data[data_off + 1] << 8);\n }\n\n function GetLE24(data, data_off) {\n return (\n ((data[data_off + 0] << 0) |\n (data[data_off + 1] << 8) |\n (data[data_off + 2] << 16)) >>>\n 0\n );\n }\n\n function GetLE32(data, data_off) {\n return (\n ((data[data_off + 0] << 0) |\n (data[data_off + 1] << 8) |\n (data[data_off + 2] << 16) |\n (data[data_off + 3] << 24)) >>>\n 0\n );\n }\n\n function WebPRiffParser(src, src_off) {\n var imagearray = {};\n var i = 0;\n var alpha_chunk = false;\n var alpha_size = 0;\n var alpha_offset = 0;\n imagearray[\"frames\"] = [];\n if (memcmp(src, src_off, \"RIFF\", 4)) return;\n src_off += 4;\n var riff_size = GetLE32(src, src_off) + 8;\n src_off += 8;\n\n while (src_off < src.length) {\n var fourcc = GetTag(src, src_off);\n src_off += 4;\n\n var payload_size = GetLE32(src, src_off);\n src_off += 4;\n var payload_size_padded = payload_size + (payload_size & 1);\n\n switch (fourcc) {\n case \"VP8 \":\n case \"VP8L\":\n if (typeof imagearray[\"frames\"][i] === \"undefined\")\n imagearray[\"frames\"][i] = {};\n var obj = imagearray[\"frames\"][i];\n var height = [0];\n var width = [0];\n obj[\"src_off\"] = alpha_chunk ? alpha_offset : src_off - 8;\n obj[\"src_size\"] = alpha_size + payload_size + 8;\n //var rgba = webpdecoder.WebPDecodeRGBA(src,(alpha_chunk?alpha_offset:src_off-8),alpha_size+payload_size+8,width,height);\n //imagearray[i]={'rgba':rgba,'width':width[0],'height':height[0]};\n i++;\n if (alpha_chunk) {\n alpha_chunk = false;\n alpha_size = 0;\n alpha_offset = 0;\n }\n break;\n case \"VP8X\":\n var obj = (imagearray[\"header\"] = {});\n var feature_flags = (obj[\"feature_flags\"] = src[src_off]);\n var src_off_ = src_off + 4;\n var canvas_width = (obj[\"canvas_width\"] = 1 + GetLE24(src, src_off_));\n src_off_ += 3;\n var canvas_height = (obj[\"canvas_height\"] =\n 1 + GetLE24(src, src_off_));\n src_off_ += 3;\n break;\n case \"ALPH\":\n alpha_chunk = true;\n alpha_size = payload_size_padded + 8;\n alpha_offset = src_off - 8;\n break;\n\n case \"ANIM\":\n var obj = imagearray[\"header\"];\n var bgcolor = (obj[\"bgcolor\"] = GetLE32(src, src_off));\n src_off_ = src_off + 4;\n\n var loop_count = (obj[\"loop_count\"] = GetLE16(src, src_off_));\n src_off_ += 2;\n break;\n case \"ANMF\":\n var offset_x = 0,\n offset_y = 0,\n width = 0,\n height = 0,\n duration = 0,\n blend = 0,\n dispose = 0,\n temp = 0;\n var obj = (imagearray[\"frames\"][i] = {});\n obj[\"offset_x\"] = offset_x = 2 * GetLE24(src, src_off);\n src_off += 3;\n obj[\"offset_y\"] = offset_y = 2 * GetLE24(src, src_off);\n src_off += 3;\n obj[\"width\"] = width = 1 + GetLE24(src, src_off);\n src_off += 3;\n obj[\"height\"] = height = 1 + GetLE24(src, src_off);\n src_off += 3;\n obj[\"duration\"] = duration = GetLE24(src, src_off);\n src_off += 3;\n temp = src[src_off++];\n obj[\"dispose\"] = dispose = temp & 1;\n obj[\"blend\"] = blend = (temp >> 1) & 1;\n break;\n default:\n }\n if (fourcc != \"ANMF\") src_off += payload_size_padded;\n }\n return imagearray;\n }\n\n var height = [0];\n var width = [0];\n var pixels = [];\n var webpdecoder = new _WebPDecoder();\n\n var response = imageData;\n var imagearray = WebPRiffParser(response, 0);\n imagearray[\"response\"] = response;\n imagearray[\"rgbaoutput\"] = true;\n imagearray[\"dataurl\"] = false;\n\n var header = imagearray[\"header\"] ? imagearray[\"header\"] : null;\n var frames = imagearray[\"frames\"] ? imagearray[\"frames\"] : null;\n\n if (header) {\n header[\"loop_counter\"] = header[\"loop_count\"];\n height = [header[\"canvas_height\"]];\n width = [header[\"canvas_width\"]];\n\n var blend = false;\n for (var f = 0; f < frames.length; f++)\n if (frames[f][\"blend\"] == 0) {\n blend = true;\n break;\n }\n }\n\n var frame = frames[0];\n var rgba = webpdecoder.WebPDecodeRGBA(\n response,\n frame[\"src_off\"],\n frame[\"src_size\"],\n width,\n height\n );\n frame[\"rgba\"] = rgba;\n frame[\"imgwidth\"] = width[0];\n frame[\"imgheight\"] = height[0];\n\n for (var i = 0; i < width[0] * height[0] * 4; i++) {\n pixels[i] = rgba[i];\n }\n\n this.width = width;\n this.height = height;\n this.data = pixels;\n return this;\n}\n\nWebPDecoder.prototype.getData = function() {\n return this.data;\n};\n\nexport { WebPDecoder };\n","/**\n * @license\n *\n * Copyright (c) 2014 James Robb, https://github.com/jamesbrobb\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { zlibSync } from \"../libs/fflate.js\";\nimport { PNG } from \"../libs/png.js\";\n\n/**\n * jsPDF PNG PlugIn\n * @name png_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /*\n * @see http://www.w3.org/TR/PNG-Chunks.html\n *\n Color Allowed Interpretation\n Type Bit Depths\n\n 0 1,2,4,8,16 Each pixel is a grayscale sample.\n\n 2 8,16 Each pixel is an R,G,B triple.\n\n 3 1,2,4,8 Each pixel is a palette index;\n a PLTE chunk must appear.\n\n 4 8,16 Each pixel is a grayscale sample,\n followed by an alpha sample.\n\n 6 8,16 Each pixel is an R,G,B triple,\n followed by an alpha sample.\n */\n\n /*\n * PNG filter method types\n *\n * @see http://www.w3.org/TR/PNG-Filters.html\n * @see http://www.libpng.org/pub/png/book/chapter09.html\n *\n * This is what the value 'Predictor' in decode params relates to\n *\n * 15 is \"optimal prediction\", which means the prediction algorithm can change from line to line.\n * In that case, you actually have to read the first byte off each line for the prediction algorthim (which should be 0-4, corresponding to PDF 10-14) and select the appropriate unprediction algorithm based on that byte.\n *\n 0 None\n 1 Sub\n 2 Up\n 3 Average\n 4 Paeth\n */\n\n var canCompress = function(value) {\n return value !== jsPDFAPI.image_compression.NONE && hasCompressionJS();\n };\n\n var hasCompressionJS = function() {\n return typeof zlibSync === \"function\";\n };\n var compressBytes = function(bytes, lineLength, colorsPerPixel, compression) {\n var level = 4;\n var filter_method = filterUp;\n\n switch (compression) {\n case jsPDFAPI.image_compression.FAST:\n level = 1;\n filter_method = filterSub;\n break;\n\n case jsPDFAPI.image_compression.MEDIUM:\n level = 6;\n filter_method = filterAverage;\n break;\n\n case jsPDFAPI.image_compression.SLOW:\n level = 9;\n filter_method = filterPaeth;\n break;\n }\n\n bytes = applyPngFilterMethod(\n bytes,\n lineLength,\n colorsPerPixel,\n filter_method\n );\n var dat = zlibSync(bytes, { level: level });\n return jsPDFAPI.__addimage__.arrayBufferToBinaryString(dat);\n };\n\n var applyPngFilterMethod = function(\n bytes,\n lineLength,\n colorsPerPixel,\n filter_method\n ) {\n var lines = bytes.length / lineLength,\n result = new Uint8Array(bytes.length + lines),\n filter_methods = getFilterMethods(),\n line,\n prevLine,\n offset;\n\n for (var i = 0; i < lines; i += 1) {\n offset = i * lineLength;\n line = bytes.subarray(offset, offset + lineLength);\n\n if (filter_method) {\n result.set(filter_method(line, colorsPerPixel, prevLine), offset + i);\n } else {\n var len = filter_methods.length,\n results = [];\n\n for (var j; j < len; j += 1) {\n results[j] = filter_methods[j](line, colorsPerPixel, prevLine);\n }\n\n var ind = getIndexOfSmallestSum(results.concat());\n\n result.set(results[ind], offset + i);\n }\n\n prevLine = line;\n }\n\n return result;\n };\n\n var filterNone = function(line) {\n /*var result = new Uint8Array(line.length + 1);\n result[0] = 0;\n result.set(line, 1);*/\n\n var result = Array.apply([], line);\n result.unshift(0);\n\n return result;\n };\n\n var filterSub = function(line, colorsPerPixel) {\n var result = [],\n len = line.length,\n left;\n\n result[0] = 1;\n\n for (var i = 0; i < len; i += 1) {\n left = line[i - colorsPerPixel] || 0;\n result[i + 1] = (line[i] - left + 0x0100) & 0xff;\n }\n\n return result;\n };\n\n var filterUp = function(line, colorsPerPixel, prevLine) {\n var result = [],\n len = line.length,\n up;\n\n result[0] = 2;\n\n for (var i = 0; i < len; i += 1) {\n up = (prevLine && prevLine[i]) || 0;\n result[i + 1] = (line[i] - up + 0x0100) & 0xff;\n }\n\n return result;\n };\n\n var filterAverage = function(line, colorsPerPixel, prevLine) {\n var result = [],\n len = line.length,\n left,\n up;\n\n result[0] = 3;\n\n for (var i = 0; i < len; i += 1) {\n left = line[i - colorsPerPixel] || 0;\n up = (prevLine && prevLine[i]) || 0;\n result[i + 1] = (line[i] + 0x0100 - ((left + up) >>> 1)) & 0xff;\n }\n\n return result;\n };\n\n var filterPaeth = function(line, colorsPerPixel, prevLine) {\n var result = [],\n len = line.length,\n left,\n up,\n upLeft,\n paeth;\n\n result[0] = 4;\n\n for (var i = 0; i < len; i += 1) {\n left = line[i - colorsPerPixel] || 0;\n up = (prevLine && prevLine[i]) || 0;\n upLeft = (prevLine && prevLine[i - colorsPerPixel]) || 0;\n paeth = paethPredictor(left, up, upLeft);\n result[i + 1] = (line[i] - paeth + 0x0100) & 0xff;\n }\n\n return result;\n };\n\n var paethPredictor = function(left, up, upLeft) {\n if (left === up && up === upLeft) {\n return left;\n }\n var pLeft = Math.abs(up - upLeft),\n pUp = Math.abs(left - upLeft),\n pUpLeft = Math.abs(left + up - upLeft - upLeft);\n return pLeft <= pUp && pLeft <= pUpLeft\n ? left\n : pUp <= pUpLeft\n ? up\n : upLeft;\n };\n\n var getFilterMethods = function() {\n return [filterNone, filterSub, filterUp, filterAverage, filterPaeth];\n };\n\n var getIndexOfSmallestSum = function(arrays) {\n var sum = arrays.map(function(value) {\n return value.reduce(function(pv, cv) {\n return pv + Math.abs(cv);\n }, 0);\n });\n return sum.indexOf(Math.min.apply(null, sum));\n };\n\n var getPredictorFromCompression = function(compression) {\n var predictor;\n switch (compression) {\n case jsPDFAPI.image_compression.FAST:\n predictor = 11;\n break;\n\n case jsPDFAPI.image_compression.MEDIUM:\n predictor = 13;\n break;\n\n case jsPDFAPI.image_compression.SLOW:\n predictor = 14;\n break;\n\n default:\n predictor = 12;\n break;\n }\n return predictor;\n };\n\n /**\n * @name processPNG\n * @function\n * @ignore\n */\n jsPDFAPI.processPNG = function(imageData, index, alias, compression) {\n \"use strict\";\n\n var colorSpace,\n filter = this.decode.FLATE_DECODE,\n bitsPerComponent,\n image,\n decodeParameters = \"\",\n trns,\n colors,\n pal,\n smask,\n pixels,\n len,\n alphaData,\n imgData,\n hasColors,\n pixel,\n i,\n n;\n\n if (this.__addimage__.isArrayBuffer(imageData))\n imageData = new Uint8Array(imageData);\n\n if (this.__addimage__.isArrayBufferView(imageData)) {\n image = new PNG(imageData);\n imageData = image.imgData;\n bitsPerComponent = image.bits;\n colorSpace = image.colorSpace;\n colors = image.colors;\n\n /*\n * colorType 6 - Each pixel is an R,G,B triple, followed by an alpha sample.\n *\n * colorType 4 - Each pixel is a grayscale sample, followed by an alpha sample.\n *\n * Extract alpha to create two separate images, using the alpha as a sMask\n */\n if ([4, 6].indexOf(image.colorType) !== -1) {\n /*\n * processes 8 bit RGBA and grayscale + alpha images\n */\n if (image.bits === 8) {\n pixels =\n image.pixelBitlength == 32\n ? new Uint32Array(image.decodePixels().buffer)\n : image.pixelBitlength == 16\n ? new Uint16Array(image.decodePixels().buffer)\n : new Uint8Array(image.decodePixels().buffer);\n len = pixels.length;\n imgData = new Uint8Array(len * image.colors);\n alphaData = new Uint8Array(len);\n var pDiff = image.pixelBitlength - image.bits;\n i = 0;\n n = 0;\n var pbl;\n\n for (; i < len; i++) {\n pixel = pixels[i];\n pbl = 0;\n\n while (pbl < pDiff) {\n imgData[n++] = (pixel >>> pbl) & 0xff;\n pbl = pbl + image.bits;\n }\n\n alphaData[i] = (pixel >>> pbl) & 0xff;\n }\n }\n\n /*\n * processes 16 bit RGBA and grayscale + alpha images\n */\n if (image.bits === 16) {\n pixels = new Uint32Array(image.decodePixels().buffer);\n len = pixels.length;\n imgData = new Uint8Array(\n len * (32 / image.pixelBitlength) * image.colors\n );\n alphaData = new Uint8Array(len * (32 / image.pixelBitlength));\n hasColors = image.colors > 1;\n i = 0;\n n = 0;\n var a = 0;\n\n while (i < len) {\n pixel = pixels[i++];\n\n imgData[n++] = (pixel >>> 0) & 0xff;\n\n if (hasColors) {\n imgData[n++] = (pixel >>> 16) & 0xff;\n\n pixel = pixels[i++];\n imgData[n++] = (pixel >>> 0) & 0xff;\n }\n\n alphaData[a++] = (pixel >>> 16) & 0xff;\n }\n bitsPerComponent = 8;\n }\n\n if (canCompress(compression)) {\n imageData = compressBytes(\n imgData,\n image.width * image.colors,\n image.colors,\n compression\n );\n smask = compressBytes(alphaData, image.width, 1, compression);\n } else {\n imageData = imgData;\n smask = alphaData;\n filter = undefined;\n }\n }\n\n /*\n * Indexed png. Each pixel is a palette index.\n */\n if (image.colorType === 3) {\n colorSpace = this.color_spaces.INDEXED;\n pal = image.palette;\n\n if (image.transparency.indexed) {\n var trans = image.transparency.indexed;\n var total = 0;\n i = 0;\n len = trans.length;\n\n for (; i < len; ++i) {\n total += trans[i];\n }\n\n total = total / 255;\n\n /*\n * a single color is specified as 100% transparent (0),\n * so we set trns to use a /Mask with that index\n */\n if (total === len - 1 && trans.indexOf(0) !== -1) {\n trns = [trans.indexOf(0)];\n\n /*\n * there's more than one colour within the palette that specifies\n * a transparency value less than 255, so we unroll the pixels to create an image sMask\n */\n } else if (total !== len) {\n pixels = image.decodePixels();\n alphaData = new Uint8Array(pixels.length);\n i = 0;\n len = pixels.length;\n\n for (; i < len; i++) {\n alphaData[i] = trans[pixels[i]];\n }\n\n smask = compressBytes(alphaData, image.width, 1);\n }\n }\n }\n\n var predictor = getPredictorFromCompression(compression);\n\n if (filter === this.decode.FLATE_DECODE) {\n decodeParameters = \"/Predictor \" + predictor + \" \";\n }\n decodeParameters +=\n \"/Colors \" +\n colors +\n \" /BitsPerComponent \" +\n bitsPerComponent +\n \" /Columns \" +\n image.width;\n\n if (\n this.__addimage__.isArrayBuffer(imageData) ||\n this.__addimage__.isArrayBufferView(imageData)\n ) {\n imageData = this.__addimage__.arrayBufferToBinaryString(imageData);\n }\n\n if (\n (smask && this.__addimage__.isArrayBuffer(smask)) ||\n this.__addimage__.isArrayBufferView(smask)\n ) {\n smask = this.__addimage__.arrayBufferToBinaryString(smask);\n }\n\n return {\n alias: alias,\n data: imageData,\n index: index,\n filter: filter,\n decodeParameters: decodeParameters,\n transparency: trns,\n palette: pal,\n sMask: smask,\n predictor: predictor,\n width: image.width,\n height: image.height,\n bitsPerComponent: bitsPerComponent,\n colorSpace: colorSpace\n };\n }\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2017 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { GifReader } from \"../libs/omggif.js\";\nimport { JPEGEncoder } from \"../libs/JPEGEncoder.js\";\n\n/**\n * jsPDF Gif Support PlugIn\n *\n * @name gif_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n jsPDFAPI.processGIF89A = function(imageData, index, alias, compression) {\n var reader = new GifReader(imageData);\n var width = reader.width,\n height = reader.height;\n var qu = 100;\n var pixels = [];\n\n reader.decodeAndBlitFrameRGBA(0, pixels);\n var rawImageData = {\n data: pixels,\n width: width,\n height: height\n };\n\n var encoder = new JPEGEncoder(qu);\n var data = encoder.encode(rawImageData, qu);\n return jsPDFAPI.processJPEG.call(this, data, index, alias, compression);\n };\n\n jsPDFAPI.processGIF87A = jsPDFAPI.processGIF89A;\n})(jsPDF.API);\n","import { JPEGEncoder } from \"../libs/JPEGEncoder.js\";\nimport { BmpDecoder } from \"../libs/BMPDecoder.js\";\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @license\n * Copyright (c) 2018 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\n/**\n * jsPDF bmp Support PlugIn\n * @name bmp_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n jsPDFAPI.processBMP = function(imageData, index, alias, compression) {\n var reader = new BmpDecoder(imageData, false);\n var width = reader.width,\n height = reader.height;\n var qu = 100;\n var pixels = reader.getData();\n\n var rawImageData = {\n data: pixels,\n width: width,\n height: height\n };\n\n var encoder = new JPEGEncoder(qu);\n var data = encoder.encode(rawImageData, qu);\n return jsPDFAPI.processJPEG.call(this, data, index, alias, compression);\n };\n})(jsPDF.API);\n","/**\n * @license\n * Copyright (c) 2019 Aras Abbasi\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { JPEGEncoder } from \"../libs/JPEGEncoder.js\";\nimport { WebPDecoder } from \"../libs/WebPDecoder.js\";\n\n/**\n * jsPDF webp Support PlugIn\n *\n * @name webp_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n jsPDFAPI.processWEBP = function(imageData, index, alias, compression) {\n var reader = new WebPDecoder(imageData, false);\n var width = reader.width,\n height = reader.height;\n var qu = 100;\n var pixels = reader.getData();\n\n var rawImageData = {\n data: pixels,\n width: width,\n height: height\n };\n\n var encoder = new JPEGEncoder(qu);\n var data = encoder.encode(rawImageData, qu);\n return jsPDFAPI.processJPEG.call(this, data, index, alias, compression);\n };\n})(jsPDF.API);\n","/**\n * @license\n *\n * Copyright (c) 2021 Antti Palola, https://github.com/Pantura\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF RGBA array PlugIn\n * @name rgba_support\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * @name processRGBA\n * @function\n *\n * Process RGBA Array. This is a one-dimension array with pixel data [red, green, blue, alpha, red, green, ...].\n * RGBA array data can be obtained from DOM canvas getImageData.\n * @ignore\n */\n jsPDFAPI.processRGBA = function(imageData, index, alias) {\n \"use strict\";\n\n var imagePixels = imageData.data;\n var length = imagePixels.length;\n // jsPDF takes alpha data separately so extract that.\n var rgbOut = new Uint8Array((length / 4) * 3);\n var alphaOut = new Uint8Array(length / 4);\n var outIndex = 0;\n var alphaIndex = 0;\n\n for (var i = 0; i < length; i += 4) {\n var r = imagePixels[i];\n var g = imagePixels[i + 1];\n var b = imagePixels[i + 2];\n var alpha = imagePixels[i + 3];\n rgbOut[outIndex++] = r;\n rgbOut[outIndex++] = g;\n rgbOut[outIndex++] = b;\n alphaOut[alphaIndex++] = alpha;\n }\n\n var rgbData = this.__addimage__.arrayBufferToBinaryString(rgbOut);\n var alphaData = this.__addimage__.arrayBufferToBinaryString(alphaOut);\n\n return {\n alpha: alphaData,\n data: rgbData,\n index: index,\n alias: alias,\n colorSpace: \"DeviceRGB\",\n bitsPerComponent: 8,\n width: imageData.width,\n height: imageData.height\n };\n };\n})(jsPDF.API);\n","/**\n * @license\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF setLanguage Plugin\n *\n * @name setLanguage\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n /**\n * Add Language Tag to the generated PDF\n *\n * @name setLanguage\n * @function\n * @param {string} langCode The Language code as ISO-639-1 (e.g. 'en') or as country language code (e.g. 'en-GB').\n * @returns {jsPDF}\n * @example\n * var doc = new jsPDF()\n * doc.text(10, 10, 'This is a test')\n * doc.setLanguage(\"en-US\")\n * doc.save('english.pdf')\n */\n jsPDFAPI.setLanguage = function(langCode) {\n \"use strict\";\n\n var langCodes = {\n af: \"Afrikaans\",\n sq: \"Albanian\",\n ar: \"Arabic (Standard)\",\n \"ar-DZ\": \"Arabic (Algeria)\",\n \"ar-BH\": \"Arabic (Bahrain)\",\n \"ar-EG\": \"Arabic (Egypt)\",\n \"ar-IQ\": \"Arabic (Iraq)\",\n \"ar-JO\": \"Arabic (Jordan)\",\n \"ar-KW\": \"Arabic (Kuwait)\",\n \"ar-LB\": \"Arabic (Lebanon)\",\n \"ar-LY\": \"Arabic (Libya)\",\n \"ar-MA\": \"Arabic (Morocco)\",\n \"ar-OM\": \"Arabic (Oman)\",\n \"ar-QA\": \"Arabic (Qatar)\",\n \"ar-SA\": \"Arabic (Saudi Arabia)\",\n \"ar-SY\": \"Arabic (Syria)\",\n \"ar-TN\": \"Arabic (Tunisia)\",\n \"ar-AE\": \"Arabic (U.A.E.)\",\n \"ar-YE\": \"Arabic (Yemen)\",\n an: \"Aragonese\",\n hy: \"Armenian\",\n as: \"Assamese\",\n ast: \"Asturian\",\n az: \"Azerbaijani\",\n eu: \"Basque\",\n be: \"Belarusian\",\n bn: \"Bengali\",\n bs: \"Bosnian\",\n br: \"Breton\",\n bg: \"Bulgarian\",\n my: \"Burmese\",\n ca: \"Catalan\",\n ch: \"Chamorro\",\n ce: \"Chechen\",\n zh: \"Chinese\",\n \"zh-HK\": \"Chinese (Hong Kong)\",\n \"zh-CN\": \"Chinese (PRC)\",\n \"zh-SG\": \"Chinese (Singapore)\",\n \"zh-TW\": \"Chinese (Taiwan)\",\n cv: \"Chuvash\",\n co: \"Corsican\",\n cr: \"Cree\",\n hr: \"Croatian\",\n cs: \"Czech\",\n da: \"Danish\",\n nl: \"Dutch (Standard)\",\n \"nl-BE\": \"Dutch (Belgian)\",\n en: \"English\",\n \"en-AU\": \"English (Australia)\",\n \"en-BZ\": \"English (Belize)\",\n \"en-CA\": \"English (Canada)\",\n \"en-IE\": \"English (Ireland)\",\n \"en-JM\": \"English (Jamaica)\",\n \"en-NZ\": \"English (New Zealand)\",\n \"en-PH\": \"English (Philippines)\",\n \"en-ZA\": \"English (South Africa)\",\n \"en-TT\": \"English (Trinidad & Tobago)\",\n \"en-GB\": \"English (United Kingdom)\",\n \"en-US\": \"English (United States)\",\n \"en-ZW\": \"English (Zimbabwe)\",\n eo: \"Esperanto\",\n et: \"Estonian\",\n fo: \"Faeroese\",\n fj: \"Fijian\",\n fi: \"Finnish\",\n fr: \"French (Standard)\",\n \"fr-BE\": \"French (Belgium)\",\n \"fr-CA\": \"French (Canada)\",\n \"fr-FR\": \"French (France)\",\n \"fr-LU\": \"French (Luxembourg)\",\n \"fr-MC\": \"French (Monaco)\",\n \"fr-CH\": \"French (Switzerland)\",\n fy: \"Frisian\",\n fur: \"Friulian\",\n gd: \"Gaelic (Scots)\",\n \"gd-IE\": \"Gaelic (Irish)\",\n gl: \"Galacian\",\n ka: \"Georgian\",\n de: \"German (Standard)\",\n \"de-AT\": \"German (Austria)\",\n \"de-DE\": \"German (Germany)\",\n \"de-LI\": \"German (Liechtenstein)\",\n \"de-LU\": \"German (Luxembourg)\",\n \"de-CH\": \"German (Switzerland)\",\n el: \"Greek\",\n gu: \"Gujurati\",\n ht: \"Haitian\",\n he: \"Hebrew\",\n hi: \"Hindi\",\n hu: \"Hungarian\",\n is: \"Icelandic\",\n id: \"Indonesian\",\n iu: \"Inuktitut\",\n ga: \"Irish\",\n it: \"Italian (Standard)\",\n \"it-CH\": \"Italian (Switzerland)\",\n ja: \"Japanese\",\n kn: \"Kannada\",\n ks: \"Kashmiri\",\n kk: \"Kazakh\",\n km: \"Khmer\",\n ky: \"Kirghiz\",\n tlh: \"Klingon\",\n ko: \"Korean\",\n \"ko-KP\": \"Korean (North Korea)\",\n \"ko-KR\": \"Korean (South Korea)\",\n la: \"Latin\",\n lv: \"Latvian\",\n lt: \"Lithuanian\",\n lb: \"Luxembourgish\",\n mk: \"North Macedonia\",\n ms: \"Malay\",\n ml: \"Malayalam\",\n mt: \"Maltese\",\n mi: \"Maori\",\n mr: \"Marathi\",\n mo: \"Moldavian\",\n nv: \"Navajo\",\n ng: \"Ndonga\",\n ne: \"Nepali\",\n no: \"Norwegian\",\n nb: \"Norwegian (Bokmal)\",\n nn: \"Norwegian (Nynorsk)\",\n oc: \"Occitan\",\n or: \"Oriya\",\n om: \"Oromo\",\n fa: \"Persian\",\n \"fa-IR\": \"Persian/Iran\",\n pl: \"Polish\",\n pt: \"Portuguese\",\n \"pt-BR\": \"Portuguese (Brazil)\",\n pa: \"Punjabi\",\n \"pa-IN\": \"Punjabi (India)\",\n \"pa-PK\": \"Punjabi (Pakistan)\",\n qu: \"Quechua\",\n rm: \"Rhaeto-Romanic\",\n ro: \"Romanian\",\n \"ro-MO\": \"Romanian (Moldavia)\",\n ru: \"Russian\",\n \"ru-MO\": \"Russian (Moldavia)\",\n sz: \"Sami (Lappish)\",\n sg: \"Sango\",\n sa: \"Sanskrit\",\n sc: \"Sardinian\",\n sd: \"Sindhi\",\n si: \"Singhalese\",\n sr: \"Serbian\",\n sk: \"Slovak\",\n sl: \"Slovenian\",\n so: \"Somani\",\n sb: \"Sorbian\",\n es: \"Spanish\",\n \"es-AR\": \"Spanish (Argentina)\",\n \"es-BO\": \"Spanish (Bolivia)\",\n \"es-CL\": \"Spanish (Chile)\",\n \"es-CO\": \"Spanish (Colombia)\",\n \"es-CR\": \"Spanish (Costa Rica)\",\n \"es-DO\": \"Spanish (Dominican Republic)\",\n \"es-EC\": \"Spanish (Ecuador)\",\n \"es-SV\": \"Spanish (El Salvador)\",\n \"es-GT\": \"Spanish (Guatemala)\",\n \"es-HN\": \"Spanish (Honduras)\",\n \"es-MX\": \"Spanish (Mexico)\",\n \"es-NI\": \"Spanish (Nicaragua)\",\n \"es-PA\": \"Spanish (Panama)\",\n \"es-PY\": \"Spanish (Paraguay)\",\n \"es-PE\": \"Spanish (Peru)\",\n \"es-PR\": \"Spanish (Puerto Rico)\",\n \"es-ES\": \"Spanish (Spain)\",\n \"es-UY\": \"Spanish (Uruguay)\",\n \"es-VE\": \"Spanish (Venezuela)\",\n sx: \"Sutu\",\n sw: \"Swahili\",\n sv: \"Swedish\",\n \"sv-FI\": \"Swedish (Finland)\",\n \"sv-SV\": \"Swedish (Sweden)\",\n ta: \"Tamil\",\n tt: \"Tatar\",\n te: \"Teluga\",\n th: \"Thai\",\n tig: \"Tigre\",\n ts: \"Tsonga\",\n tn: \"Tswana\",\n tr: \"Turkish\",\n tk: \"Turkmen\",\n uk: \"Ukrainian\",\n hsb: \"Upper Sorbian\",\n ur: \"Urdu\",\n ve: \"Venda\",\n vi: \"Vietnamese\",\n vo: \"Volapuk\",\n wa: \"Walloon\",\n cy: \"Welsh\",\n xh: \"Xhosa\",\n ji: \"Yiddish\",\n zu: \"Zulu\"\n };\n\n if (this.internal.languageSettings === undefined) {\n this.internal.languageSettings = {};\n this.internal.languageSettings.isSubscribed = false;\n }\n\n if (langCodes[langCode] !== undefined) {\n this.internal.languageSettings.languageCode = langCode;\n if (this.internal.languageSettings.isSubscribed === false) {\n this.internal.events.subscribe(\"putCatalog\", function() {\n this.internal.write(\n \"/Lang (\" + this.internal.languageSettings.languageCode + \")\"\n );\n });\n this.internal.languageSettings.isSubscribed = true;\n }\n }\n return this;\n };\n})(jsPDF.API);\n","/** @license\n jsPDF standard_fonts_metrics plugin\n * Copyright (c) 2012 Willow Systems Corporation, https://github.com/willowsystems\n * MIT license.\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n * \n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * This file adds the standard font metrics to jsPDF.\n *\n * Font metrics data is reprocessed derivative of contents of\n * \"Font Metrics for PDF Core 14 Fonts\" package, which exhibits the following copyright and license:\n *\n * Copyright (c) 1989, 1990, 1991, 1992, 1993, 1997 Adobe Systems Incorporated. All Rights Reserved.\n *\n * This file and the 14 PostScript(R) AFM files it accompanies may be used,\n * copied, and distributed for any purpose and without charge, with or without\n * modification, provided that all copyright notices are retained; that the AFM\n * files are not distributed without this file; that all modifications to this\n * file or any of the AFM files are prominently noted in the modified file(s);\n * and that this paragraph is not modified. Adobe Systems has no responsibility\n * or obligation to support the use of the AFM files.\n *\n * @name standard_fonts_metrics\n * @module\n */\n\n(function(API) {\n \"use strict\";\n API.__fontmetrics__ = API.__fontmetrics__ || {};\n\n var decoded = \"0123456789abcdef\",\n encoded = \"klmnopqrstuvwxyz\",\n mappingUncompress = {},\n mappingCompress = {};\n\n for (var i = 0; i < encoded.length; i++) {\n mappingUncompress[encoded[i]] = decoded[i];\n mappingCompress[decoded[i]] = encoded[i];\n }\n\n var hex = function(value) {\n return \"0x\" + parseInt(value, 10).toString(16);\n };\n\n var compress = (API.__fontmetrics__.compress = function(data) {\n var vals = [\"{\"];\n var value, keystring, valuestring, numberprefix;\n\n for (var key in data) {\n value = data[key];\n\n if (!isNaN(parseInt(key, 10))) {\n key = parseInt(key, 10);\n keystring = hex(key).slice(2);\n keystring =\n keystring.slice(0, -1) + mappingCompress[keystring.slice(-1)];\n } else {\n keystring = \"'\" + key + \"'\";\n }\n\n if (typeof value == \"number\") {\n if (value < 0) {\n valuestring = hex(value).slice(3);\n numberprefix = \"-\";\n } else {\n valuestring = hex(value).slice(2);\n numberprefix = \"\";\n }\n valuestring =\n numberprefix +\n valuestring.slice(0, -1) +\n mappingCompress[valuestring.slice(-1)];\n } else {\n if (typeof value === \"object\") {\n valuestring = compress(value);\n } else {\n throw new Error(\n \"Don't know what to do with value type \" + typeof value + \".\"\n );\n }\n }\n vals.push(keystring + valuestring);\n }\n vals.push(\"}\");\n return vals.join(\"\");\n });\n\n /**\n * Uncompresses data compressed into custom, base16-like format.\n *\n * @public\n * @function\n * @param\n * @returns {Type}\n */\n var uncompress = (API.__fontmetrics__.uncompress = function(data) {\n if (typeof data !== \"string\") {\n throw new Error(\"Invalid argument passed to uncompress.\");\n }\n\n var output = {},\n sign = 1,\n stringparts, // undef. will be [] in string mode\n activeobject = output,\n parentchain = [],\n parent_key_pair,\n keyparts = \"\",\n valueparts = \"\",\n key, // undef. will be Truthy when Key is resolved.\n datalen = data.length - 1, // stripping ending }\n ch;\n\n for (var i = 1; i < datalen; i += 1) {\n // - { } ' are special.\n\n ch = data[i];\n\n if (ch == \"'\") {\n if (stringparts) {\n // end of string mode\n key = stringparts.join(\"\");\n stringparts = undefined;\n } else {\n // start of string mode\n stringparts = [];\n }\n } else if (stringparts) {\n stringparts.push(ch);\n } else if (ch == \"{\") {\n // start of object\n parentchain.push([activeobject, key]);\n activeobject = {};\n key = undefined;\n } else if (ch == \"}\") {\n // end of object\n parent_key_pair = parentchain.pop();\n parent_key_pair[0][parent_key_pair[1]] = activeobject;\n key = undefined;\n activeobject = parent_key_pair[0];\n } else if (ch == \"-\") {\n sign = -1;\n } else {\n // must be number\n if (key === undefined) {\n if (mappingUncompress.hasOwnProperty(ch)) {\n keyparts += mappingUncompress[ch];\n key = parseInt(keyparts, 16) * sign;\n sign = +1;\n keyparts = \"\";\n } else {\n keyparts += ch;\n }\n } else {\n if (mappingUncompress.hasOwnProperty(ch)) {\n valueparts += mappingUncompress[ch];\n activeobject[key] = parseInt(valueparts, 16) * sign;\n sign = +1;\n key = undefined;\n valueparts = \"\";\n } else {\n valueparts += ch;\n }\n }\n }\n }\n return output;\n });\n\n // encoding = 'Unicode'\n // NOT UTF8, NOT UTF16BE/LE, NOT UCS2BE/LE. NO clever BOM behavior\n // Actual 16bit char codes used.\n // no multi-byte logic here\n\n // Unicode characters to WinAnsiEncoding:\n // {402: 131, 8211: 150, 8212: 151, 8216: 145, 8217: 146, 8218: 130, 8220: 147, 8221: 148, 8222: 132, 8224: 134, 8225: 135, 8226: 149, 8230: 133, 8364: 128, 8240:137, 8249: 139, 8250: 155, 710: 136, 8482: 153, 338: 140, 339: 156, 732: 152, 352: 138, 353: 154, 376: 159, 381: 142, 382: 158}\n // as you can see, all Unicode chars are outside of 0-255 range. No char code conflicts.\n // this means that you can give Win cp1252 encoded strings to jsPDF for rendering directly\n // as well as give strings with some (supported by these fonts) Unicode characters and\n // these will be mapped to win cp1252\n // for example, you can send char code (cp1252) 0x80 or (unicode) 0x20AC, getting \"Euro\" glyph displayed in both cases.\n\n var encodingBlock = {\n codePages: [\"WinAnsiEncoding\"],\n WinAnsiEncoding: uncompress(\n \"{19m8n201n9q201o9r201s9l201t9m201u8m201w9n201x9o201y8o202k8q202l8r202m9p202q8p20aw8k203k8t203t8v203u9v2cq8s212m9t15m8w15n9w2dw9s16k8u16l9u17s9z17x8y17y9y}\"\n )\n };\n var encodings = {\n Unicode: {\n Courier: encodingBlock,\n \"Courier-Bold\": encodingBlock,\n \"Courier-BoldOblique\": encodingBlock,\n \"Courier-Oblique\": encodingBlock,\n Helvetica: encodingBlock,\n \"Helvetica-Bold\": encodingBlock,\n \"Helvetica-BoldOblique\": encodingBlock,\n \"Helvetica-Oblique\": encodingBlock,\n \"Times-Roman\": encodingBlock,\n \"Times-Bold\": encodingBlock,\n \"Times-BoldItalic\": encodingBlock,\n \"Times-Italic\": encodingBlock\n //\t, 'Symbol'\n //\t, 'ZapfDingbats'\n }\n };\n\n var fontMetrics = {\n Unicode: {\n // all sizing numbers are n/fontMetricsFractionOf = one font size unit\n // this means that if fontMetricsFractionOf = 1000, and letter A's width is 476, it's\n // width is 476/1000 or 47.6% of its height (regardless of font size)\n // At this time this value applies to \"widths\" and \"kerning\" numbers.\n\n // char code 0 represents \"default\" (average) width - use it for chars missing in this table.\n // key 'fof' represents the \"fontMetricsFractionOf\" value\n\n \"Courier-Oblique\": uncompress(\n \"{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}\"\n ),\n \"Times-BoldItalic\": uncompress(\n \"{'widths'{k3o2q4ycx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2r202m2n2n3m2o3m2p5n202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5n4l4m4m4m4n4m4o4s4p4m4q4m4r4s4s4y4t2r4u3m4v4m4w3x4x5t4y4s4z4s5k3x5l4s5m4m5n3r5o3x5p4s5q4m5r5t5s4m5t3x5u3x5v2l5w1w5x2l5y3t5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q2l6r3m6s3r6t1w6u1w6v3m6w1w6x4y6y3r6z3m7k3m7l3m7m2r7n2r7o1w7p3r7q2w7r4m7s3m7t2w7u2r7v2n7w1q7x2n7y3t202l3mcl4mal2ram3man3mao3map3mar3mas2lat4uau1uav3maw3way4uaz2lbk2sbl3t'fof'6obo2lbp3tbq3mbr1tbs2lbu1ybv3mbz3mck4m202k3mcm4mcn4mco4mcp4mcq5ycr4mcs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz2w203k6o212m6o2dw2l2cq2l3t3m3u2l17s3x19m3m}'kerning'{cl{4qu5kt5qt5rs17ss5ts}201s{201ss}201t{cks4lscmscnscoscpscls2wu2yu201ts}201x{2wu2yu}2k{201ts}2w{4qx5kx5ou5qx5rs17su5tu}2x{17su5tu5ou}2y{4qx5kx5ou5qx5rs17ss5ts}'fof'-6ofn{17sw5tw5ou5qw5rs}7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qs}3v{17su5tu5os5qs}7p{17su5tu}ck{4qu5kt5qt5rs17ss5ts}4l{4qu5kt5qt5rs17ss5ts}cm{4qu5kt5qt5rs17ss5ts}cn{4qu5kt5qt5rs17ss5ts}co{4qu5kt5qt5rs17ss5ts}cp{4qu5kt5qt5rs17ss5ts}6l{4qu5ou5qw5rt17su5tu}5q{ckuclucmucnucoucpu4lu}5r{ckuclucmucnucoucpu4lu}7q{cksclscmscnscoscps4ls}6p{4qu5ou5qw5rt17sw5tw}ek{4qu5ou5qw5rt17su5tu}el{4qu5ou5qw5rt17su5tu}em{4qu5ou5qw5rt17su5tu}en{4qu5ou5qw5rt17su5tu}eo{4qu5ou5qw5rt17su5tu}ep{4qu5ou5qw5rt17su5tu}es{17ss5ts5qs4qu}et{4qu5ou5qw5rt17sw5tw}eu{4qu5ou5qw5rt17ss5ts}ev{17ss5ts5qs4qu}6z{17sw5tw5ou5qw5rs}fm{17sw5tw5ou5qw5rs}7n{201ts}fo{17sw5tw5ou5qw5rs}fp{17sw5tw5ou5qw5rs}fq{17sw5tw5ou5qw5rs}7r{cksclscmscnscoscps4ls}fs{17sw5tw5ou5qw5rs}ft{17su5tu}fu{17su5tu}fv{17su5tu}fw{17su5tu}fz{cksclscmscnscoscps4ls}}}\"\n ),\n \"Helvetica-Bold\": uncompress(\n \"{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}\"\n ),\n Courier: uncompress(\"{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}\"),\n \"Courier-BoldOblique\": uncompress(\n \"{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}\"\n ),\n \"Times-Bold\": uncompress(\n \"{'widths'{k3q2q5ncx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2l202m2n2n3m2o3m2p6o202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5x4l4s4m4m4n4s4o4s4p4m4q3x4r4y4s4y4t2r4u3m4v4y4w4m4x5y4y4s4z4y5k3x5l4y5m4s5n3r5o4m5p4s5q4s5r6o5s4s5t4s5u4m5v2l5w1w5x2l5y3u5z3m6k2l6l3m6m3r6n2w6o3r6p2w6q2l6r3m6s3r6t1w6u2l6v3r6w1w6x5n6y3r6z3m7k3r7l3r7m2w7n2r7o2l7p3r7q3m7r4s7s3m7t3m7u2w7v2r7w1q7x2r7y3o202l3mcl4sal2lam3man3mao3map3mar3mas2lat4uau1yav3maw3tay4uaz2lbk2sbl3t'fof'6obo2lbp3rbr1tbs2lbu2lbv3mbz3mck4s202k3mcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3rek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3m3u2l17s4s19m3m}'kerning'{cl{4qt5ks5ot5qy5rw17sv5tv}201t{cks4lscmscnscoscpscls4wv}2k{201ts}2w{4qu5ku7mu5os5qx5ru17su5tu}2x{17su5tu5ou5qs}2y{4qv5kv7mu5ot5qz5ru17su5tu}'fof'-6o7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qu}3v{17su5tu5os5qu}fu{17su5tu5ou5qu}7p{17su5tu5ou5qu}ck{4qt5ks5ot5qy5rw17sv5tv}4l{4qt5ks5ot5qy5rw17sv5tv}cm{4qt5ks5ot5qy5rw17sv5tv}cn{4qt5ks5ot5qy5rw17sv5tv}co{4qt5ks5ot5qy5rw17sv5tv}cp{4qt5ks5ot5qy5rw17sv5tv}6l{17st5tt5ou5qu}17s{ckuclucmucnucoucpu4lu4wu}5o{ckuclucmucnucoucpu4lu4wu}5q{ckzclzcmzcnzcozcpz4lz4wu}5r{ckxclxcmxcnxcoxcpx4lx4wu}5t{ckuclucmucnucoucpu4lu4wu}7q{ckuclucmucnucoucpu4lu}6p{17sw5tw5ou5qu}ek{17st5tt5qu}el{17st5tt5ou5qu}em{17st5tt5qu}en{17st5tt5qu}eo{17st5tt5qu}ep{17st5tt5ou5qu}es{17ss5ts5qu}et{17sw5tw5ou5qu}eu{17sw5tw5ou5qu}ev{17ss5ts5qu}6z{17sw5tw5ou5qu5rs}fm{17sw5tw5ou5qu5rs}fn{17sw5tw5ou5qu5rs}fo{17sw5tw5ou5qu5rs}fp{17sw5tw5ou5qu5rs}fq{17sw5tw5ou5qu5rs}7r{cktcltcmtcntcotcpt4lt5os}fs{17sw5tw5ou5qu5rs}ft{17su5tu5ou5qu}7m{5os}fv{17su5tu5ou5qu}fw{17su5tu5ou5qu}fz{cksclscmscnscoscps4ls}}}\"\n ),\n Symbol: uncompress(\n \"{'widths'{k3uaw4r19m3m2k1t2l2l202m2y2n3m2p5n202q6o3k3m2s2l2t2l2v3r2w1t3m3m2y1t2z1wbk2sbl3r'fof'6o3n3m3o3m3p3m3q3m3r3m3s3m3t3m3u1w3v1w3w3r3x3r3y3r3z2wbp3t3l3m5v2l5x2l5z3m2q4yfr3r7v3k7w1o7x3k}'kerning'{'fof'-6o}}\"\n ),\n Helvetica: uncompress(\n \"{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}\"\n ),\n \"Helvetica-BoldOblique\": uncompress(\n \"{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}\"\n ),\n ZapfDingbats: uncompress(\"{'widths'{k4u2k1w'fof'6o}'kerning'{'fof'-6o}}\"),\n \"Courier-Bold\": uncompress(\"{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}\"),\n \"Times-Italic\": uncompress(\n \"{'widths'{k3n2q4ycx2l201n3m201o5t201s2l201t2l201u2l201w3r201x3r201y3r2k1t2l2l202m2n2n3m2o3m2p5n202q5t2r1p2s2l2t2l2u3m2v4n2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w4n3x4n3y4n3z3m4k5w4l3x4m3x4n4m4o4s4p3x4q3x4r4s4s4s4t2l4u2w4v4m4w3r4x5n4y4m4z4s5k3x5l4s5m3x5n3m5o3r5p4s5q3x5r5n5s3x5t3r5u3r5v2r5w1w5x2r5y2u5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q1w6r3m6s3m6t1w6u1w6v2w6w1w6x4s6y3m6z3m7k3m7l3m7m2r7n2r7o1w7p3m7q2w7r4m7s2w7t2w7u2r7v2s7w1v7x2s7y3q202l3mcl3xal2ram3man3mao3map3mar3mas2lat4wau1vav3maw4nay4waz2lbk2sbl4n'fof'6obo2lbp3mbq3obr1tbs2lbu1zbv3mbz3mck3x202k3mcm3xcn3xco3xcp3xcq5tcr4mcs3xct3xcu3xcv3xcw2l2m2ucy2lcz2ldl4mdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr4nfs3mft3mfu3mfv3mfw3mfz2w203k6o212m6m2dw2l2cq2l3t3m3u2l17s3r19m3m}'kerning'{cl{5kt4qw}201s{201sw}201t{201tw2wy2yy6q-t}201x{2wy2yy}2k{201tw}2w{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}2x{17ss5ts5os}2y{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}'fof'-6o6t{17ss5ts5qs}7t{5os}3v{5qs}7p{17su5tu5qs}ck{5kt4qw}4l{5kt4qw}cm{5kt4qw}cn{5kt4qw}co{5kt4qw}cp{5kt4qw}6l{4qs5ks5ou5qw5ru17su5tu}17s{2ks}5q{ckvclvcmvcnvcovcpv4lv}5r{ckuclucmucnucoucpu4lu}5t{2ks}6p{4qs5ks5ou5qw5ru17su5tu}ek{4qs5ks5ou5qw5ru17su5tu}el{4qs5ks5ou5qw5ru17su5tu}em{4qs5ks5ou5qw5ru17su5tu}en{4qs5ks5ou5qw5ru17su5tu}eo{4qs5ks5ou5qw5ru17su5tu}ep{4qs5ks5ou5qw5ru17su5tu}es{5ks5qs4qs}et{4qs5ks5ou5qw5ru17su5tu}eu{4qs5ks5qw5ru17su5tu}ev{5ks5qs4qs}ex{17ss5ts5qs}6z{4qv5ks5ou5qw5ru17su5tu}fm{4qv5ks5ou5qw5ru17su5tu}fn{4qv5ks5ou5qw5ru17su5tu}fo{4qv5ks5ou5qw5ru17su5tu}fp{4qv5ks5ou5qw5ru17su5tu}fq{4qv5ks5ou5qw5ru17su5tu}7r{5os}fs{4qv5ks5ou5qw5ru17su5tu}ft{17su5tu5qs}fu{17su5tu5qs}fv{17su5tu5qs}fw{17su5tu5qs}}}\"\n ),\n \"Times-Roman\": uncompress(\n \"{'widths'{k3n2q4ycx2l201n3m201o6o201s2l201t2l201u2l201w2w201x2w201y2w2k1t2l2l202m2n2n3m2o3m2p5n202q6o2r1m2s2l2t2l2u3m2v3s2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v1w3w3s3x3s3y3s3z2w4k5w4l4s4m4m4n4m4o4s4p3x4q3r4r4s4s4s4t2l4u2r4v4s4w3x4x5t4y4s4z4s5k3r5l4s5m4m5n3r5o3x5p4s5q4s5r5y5s4s5t4s5u3x5v2l5w1w5x2l5y2z5z3m6k2l6l2w6m3m6n2w6o3m6p2w6q2l6r3m6s3m6t1w6u1w6v3m6w1w6x4y6y3m6z3m7k3m7l3m7m2l7n2r7o1w7p3m7q3m7r4s7s3m7t3m7u2w7v3k7w1o7x3k7y3q202l3mcl4sal2lam3man3mao3map3mar3mas2lat4wau1vav3maw3say4waz2lbk2sbl3s'fof'6obo2lbp3mbq2xbr1tbs2lbu1zbv3mbz2wck4s202k3mcm4scn4sco4scp4scq5tcr4mcs3xct3xcu3xcv3xcw2l2m2tcy2lcz2ldl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek2wel2wem2wen2weo2wep2weq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr3sfs3mft3mfu3mfv3mfw3mfz3m203k6o212m6m2dw2l2cq2l3t3m3u1w17s4s19m3m}'kerning'{cl{4qs5ku17sw5ou5qy5rw201ss5tw201ws}201s{201ss}201t{ckw4lwcmwcnwcowcpwclw4wu201ts}2k{201ts}2w{4qs5kw5os5qx5ru17sx5tx}2x{17sw5tw5ou5qu}2y{4qs5kw5os5qx5ru17sx5tx}'fof'-6o7t{ckuclucmucnucoucpu4lu5os5rs}3u{17su5tu5qs}3v{17su5tu5qs}7p{17sw5tw5qs}ck{4qs5ku17sw5ou5qy5rw201ss5tw201ws}4l{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cm{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cn{4qs5ku17sw5ou5qy5rw201ss5tw201ws}co{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cp{4qs5ku17sw5ou5qy5rw201ss5tw201ws}6l{17su5tu5os5qw5rs}17s{2ktclvcmvcnvcovcpv4lv4wuckv}5o{ckwclwcmwcnwcowcpw4lw4wu}5q{ckyclycmycnycoycpy4ly4wu5ms}5r{cktcltcmtcntcotcpt4lt4ws}5t{2ktclvcmvcnvcovcpv4lv4wuckv}7q{cksclscmscnscoscps4ls}6p{17su5tu5qw5rs}ek{5qs5rs}el{17su5tu5os5qw5rs}em{17su5tu5os5qs5rs}en{17su5qs5rs}eo{5qs5rs}ep{17su5tu5os5qw5rs}es{5qs}et{17su5tu5qw5rs}eu{17su5tu5qs5rs}ev{5qs}6z{17sv5tv5os5qx5rs}fm{5os5qt5rs}fn{17sv5tv5os5qx5rs}fo{17sv5tv5os5qx5rs}fp{5os5qt5rs}fq{5os5qt5rs}7r{ckuclucmucnucoucpu4lu5os}fs{17sv5tv5os5qx5rs}ft{17ss5ts5qs}fu{17sw5tw5qs}fv{17sw5tw5qs}fw{17ss5ts5qs}fz{ckuclucmucnucoucpu4lu5os5rs}}}\"\n ),\n \"Helvetica-Oblique\": uncompress(\n \"{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}\"\n )\n }\n };\n\n /*\n\tThis event handler is fired when a new jsPDF object is initialized\n\tThis event handler appends metrics data to standard fonts within\n\tthat jsPDF instance. The metrics are mapped over Unicode character\n\tcodes, NOT CIDs or other codes matching the StandardEncoding table of the\n\tstandard PDF fonts.\n\tFuture:\n\tAlso included is the encoding maping table, converting Unicode (UCS-2, UTF-16)\n\tchar codes to StandardEncoding character codes. The encoding table is to be used\n\tsomewhere around \"pdfEscape\" call.\n\t*/\n API.events.push([\n \"addFont\",\n function(data) {\n var font = data.font;\n\n var metrics = fontMetrics[\"Unicode\"][font.postScriptName];\n if (metrics) {\n font.metadata[\"Unicode\"] = {};\n font.metadata[\"Unicode\"].widths = metrics.widths;\n font.metadata[\"Unicode\"].kerning = metrics.kerning;\n }\n\n var encodingBlock = encodings[\"Unicode\"][font.postScriptName];\n if (encodingBlock) {\n font.metadata[\"Unicode\"].encoding = encodingBlock;\n font.encoding = encodingBlock.codePages[0];\n }\n }\n ]); // end of adding event handler\n})(jsPDF.API);\n","/**\n * @license\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { atob } from \"../libs/AtobBtoa.js\";\n\n/**\n * @name ttfsupport\n * @module\n */\n(function(jsPDF) {\n \"use strict\";\n\n var binaryStringToUint8Array = function(binary_string) {\n var len = binary_string.length;\n var bytes = new Uint8Array(len);\n for (var i = 0; i < len; i++) {\n bytes[i] = binary_string.charCodeAt(i);\n }\n return bytes;\n };\n\n var addFont = function(font, file) {\n // eslint-disable-next-line no-control-regex\n if (/^\\x00\\x01\\x00\\x00/.test(file)) {\n file = binaryStringToUint8Array(file);\n } else {\n file = binaryStringToUint8Array(atob(file));\n }\n font.metadata = jsPDF.API.TTFFont.open(file);\n font.metadata.Unicode = font.metadata.Unicode || {\n encoding: {},\n kerning: {},\n widths: []\n };\n font.metadata.glyIdsUsed = [0];\n };\n\n jsPDF.API.events.push([\n \"addFont\",\n function(data) {\n var file = undefined;\n var font = data.font;\n var instance = data.instance;\n if (font.isStandardFont) {\n return;\n }\n if (typeof instance !== \"undefined\") {\n if (instance.existsFileInVFS(font.postScriptName) === false) {\n file = instance.loadFile(font.postScriptName);\n } else {\n file = instance.getFileFromVFS(font.postScriptName);\n }\n if (typeof file !== \"string\") {\n throw new Error(\n \"Font is not stored as string-data in vFS, import fonts or remove declaration doc.addFont('\" +\n font.postScriptName +\n \"').\"\n );\n }\n addFont(font, file);\n } else {\n throw new Error(\n \"Font does not exist in vFS, import fonts or remove declaration doc.addFont('\" +\n font.postScriptName +\n \"').\"\n );\n }\n }\n ]); // end of adding event handler\n})(jsPDF);\n","/** @license\n * Copyright (c) 2012 Willow Systems Corporation, https://github.com/willowsystems\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\nimport { console } from \"../libs/console.js\";\nimport { globalObject } from \"../libs/globalObject.js\";\n\n/**\n * jsPDF SVG plugin\n *\n * @name svg\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n function loadCanvg() {\n return (function() {\n if (globalObject[\"canvg\"]) {\n return Promise.resolve(globalObject[\"canvg\"]);\n }\n\n return import(\"canvg\");\n\n })()\n .catch(function(e) {\n return Promise.reject(new Error(\"Could not load canvg: \" + e));\n })\n .then(function(canvg) {\n return canvg.default ? canvg.default : canvg;\n });\n }\n\n /**\n * Parses SVG XML and saves it as image into the PDF.\n *\n * Depends on canvas-element and canvg\n *\n * @name addSvgAsImage\n * @public\n * @function\n * @param {string} SVG-Data as Text\n * @param {number} x Coordinate (in units declared at inception of PDF document) against left edge of the page\n * @param {number} y Coordinate (in units declared at inception of PDF document) against upper edge of the page\n * @param {number} width of SVG-Image (in units declared at inception of PDF document)\n * @param {number} height of SVG-Image (in units declared at inception of PDF document)\n * @param {string} alias of SVG-Image (if used multiple times)\n * @param {string} compression of the generated JPEG, can have the values 'NONE', 'FAST', 'MEDIUM' and 'SLOW'\n * @param {number} rotation of the image in degrees (0-359)\n *\n * @returns jsPDF jsPDF-instance\n */\n jsPDFAPI.addSvgAsImage = function(\n svg,\n x,\n y,\n w,\n h,\n alias,\n compression,\n rotation\n ) {\n if (isNaN(x) || isNaN(y)) {\n console.error(\"jsPDF.addSvgAsImage: Invalid coordinates\", arguments);\n throw new Error(\"Invalid coordinates passed to jsPDF.addSvgAsImage\");\n }\n\n if (isNaN(w) || isNaN(h)) {\n console.error(\"jsPDF.addSvgAsImage: Invalid measurements\", arguments);\n throw new Error(\n \"Invalid measurements (width and/or height) passed to jsPDF.addSvgAsImage\"\n );\n }\n\n var canvas = document.createElement(\"canvas\");\n canvas.width = w;\n canvas.height = h;\n var ctx = canvas.getContext(\"2d\");\n ctx.fillStyle = \"#fff\"; /// set white fill style\n ctx.fillRect(0, 0, canvas.width, canvas.height);\n\n var options = {\n ignoreMouse: true,\n ignoreAnimation: true,\n ignoreDimensions: true\n };\n var doc = this;\n return loadCanvg()\n .then(\n function(canvg) {\n return canvg.fromString(ctx, svg, options);\n },\n function() {\n return Promise.reject(new Error(\"Could not load canvg.\"));\n }\n )\n .then(function(instance) {\n return instance.render(options);\n })\n .then(function() {\n doc.addImage(\n canvas.toDataURL(\"image/jpeg\", 1.0),\n x,\n y,\n w,\n h,\n compression,\n rotation\n );\n });\n };\n})(jsPDF.API);\n","/**\n * @license\n * ====================================================================\n * Copyright (c) 2013 Eduardo Menezes de Morais, eduardo.morais@usp.br\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * jsPDF total_pages plugin\n * @name total_pages\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n /**\n * @name putTotalPages\n * @function\n * @param {string} pageExpression Regular Expression\n * @returns {jsPDF} jsPDF-instance\n */\n\n jsPDFAPI.putTotalPages = function(pageExpression) {\n \"use strict\";\n\n var replaceExpression;\n var totalNumberOfPages = 0;\n if (parseInt(this.internal.getFont().id.substr(1), 10) < 15) {\n replaceExpression = new RegExp(pageExpression, \"g\");\n totalNumberOfPages = this.internal.getNumberOfPages();\n } else {\n replaceExpression = new RegExp(\n this.pdfEscape16(pageExpression, this.internal.getFont()),\n \"g\"\n );\n totalNumberOfPages = this.pdfEscape16(\n this.internal.getNumberOfPages() + \"\",\n this.internal.getFont()\n );\n }\n\n for (var n = 1; n <= this.internal.getNumberOfPages(); n++) {\n for (var i = 0; i < this.internal.pages[n].length; i++) {\n this.internal.pages[n][i] = this.internal.pages[n][i].replace(\n replaceExpression,\n totalNumberOfPages\n );\n }\n }\n\n return this;\n };\n})(jsPDF.API);\n","/**\n * @license\n * jsPDF viewerPreferences Plugin\n * @author Aras Abbasi (github.com/arasabbasi)\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * Adds the ability to set ViewerPreferences and by thus\n * controlling the way the document is to be presented on the\n * screen or in print.\n * @name viewerpreferences\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n /**\n * Set the ViewerPreferences of the generated PDF\n *\n * @name viewerPreferences\n * @function\n * @public\n * @param {Object} options Array with the ViewerPreferences
    \n * Example: doc.viewerPreferences({\"FitWindow\":true});
    \n *
    \n * You can set following preferences:
    \n *
    \n * HideToolbar (boolean)
    \n * Default value: false
    \n *
    \n * HideMenubar (boolean)
    \n * Default value: false.
    \n *
    \n * HideWindowUI (boolean)
    \n * Default value: false.
    \n *
    \n * FitWindow (boolean)
    \n * Default value: false.
    \n *
    \n * CenterWindow (boolean)
    \n * Default value: false
    \n *
    \n * DisplayDocTitle (boolean)
    \n * Default value: false.
    \n *
    \n * NonFullScreenPageMode (string)
    \n * Possible values: UseNone, UseOutlines, UseThumbs, UseOC
    \n * Default value: UseNone
    \n *
    \n * Direction (string)
    \n * Possible values: L2R, R2L
    \n * Default value: L2R.
    \n *
    \n * ViewArea (string)
    \n * Possible values: MediaBox, CropBox, TrimBox, BleedBox, ArtBox
    \n * Default value: CropBox.
    \n *
    \n * ViewClip (string)
    \n * Possible values: MediaBox, CropBox, TrimBox, BleedBox, ArtBox
    \n * Default value: CropBox
    \n *
    \n * PrintArea (string)
    \n * Possible values: MediaBox, CropBox, TrimBox, BleedBox, ArtBox
    \n * Default value: CropBox
    \n *
    \n * PrintClip (string)
    \n * Possible values: MediaBox, CropBox, TrimBox, BleedBox, ArtBox
    \n * Default value: CropBox.
    \n *
    \n * PrintScaling (string)
    \n * Possible values: AppDefault, None
    \n * Default value: AppDefault.
    \n *
    \n * Duplex (string)
    \n * Possible values: Simplex, DuplexFlipLongEdge, DuplexFlipShortEdge\n * Default value: none
    \n *
    \n * PickTrayByPDFSize (boolean)
    \n * Default value: false
    \n *
    \n * PrintPageRange (Array)
    \n * Example: [[1,5], [7,9]]
    \n * Default value: as defined by PDF viewer application
    \n *
    \n * NumCopies (Number)
    \n * Possible values: 1, 2, 3, 4, 5
    \n * Default value: 1
    \n *
    \n * For more information see the PDF Reference, sixth edition on Page 577\n * @param {boolean} doReset True to reset the settings\n * @function\n * @returns jsPDF jsPDF-instance\n * @example\n * var doc = new jsPDF()\n * doc.text('This is a test', 10, 10)\n * doc.viewerPreferences({'FitWindow': true}, true)\n * doc.save(\"viewerPreferences.pdf\")\n *\n * // Example printing 10 copies, using cropbox, and hiding UI.\n * doc.viewerPreferences({\n * 'HideWindowUI': true,\n * 'PrintArea': 'CropBox',\n * 'NumCopies': 10\n * })\n */\n jsPDFAPI.viewerPreferences = function(options, doReset) {\n options = options || {};\n doReset = doReset || false;\n\n var configuration;\n var configurationTemplate = {\n HideToolbar: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n HideMenubar: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n HideWindowUI: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n FitWindow: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n CenterWindow: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.3\n },\n DisplayDocTitle: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.4\n },\n NonFullScreenPageMode: {\n defaultValue: \"UseNone\",\n value: \"UseNone\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"UseNone\", \"UseOutlines\", \"UseThumbs\", \"UseOC\"],\n pdfVersion: 1.3\n },\n Direction: {\n defaultValue: \"L2R\",\n value: \"L2R\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"L2R\", \"R2L\"],\n pdfVersion: 1.3\n },\n ViewArea: {\n defaultValue: \"CropBox\",\n value: \"CropBox\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"MediaBox\", \"CropBox\", \"TrimBox\", \"BleedBox\", \"ArtBox\"],\n pdfVersion: 1.4\n },\n ViewClip: {\n defaultValue: \"CropBox\",\n value: \"CropBox\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"MediaBox\", \"CropBox\", \"TrimBox\", \"BleedBox\", \"ArtBox\"],\n pdfVersion: 1.4\n },\n PrintArea: {\n defaultValue: \"CropBox\",\n value: \"CropBox\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"MediaBox\", \"CropBox\", \"TrimBox\", \"BleedBox\", \"ArtBox\"],\n pdfVersion: 1.4\n },\n PrintClip: {\n defaultValue: \"CropBox\",\n value: \"CropBox\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"MediaBox\", \"CropBox\", \"TrimBox\", \"BleedBox\", \"ArtBox\"],\n pdfVersion: 1.4\n },\n PrintScaling: {\n defaultValue: \"AppDefault\",\n value: \"AppDefault\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\"AppDefault\", \"None\"],\n pdfVersion: 1.6\n },\n Duplex: {\n defaultValue: \"\",\n value: \"none\",\n type: \"name\",\n explicitSet: false,\n valueSet: [\n \"Simplex\",\n \"DuplexFlipShortEdge\",\n \"DuplexFlipLongEdge\",\n \"none\"\n ],\n pdfVersion: 1.7\n },\n PickTrayByPDFSize: {\n defaultValue: false,\n value: false,\n type: \"boolean\",\n explicitSet: false,\n valueSet: [true, false],\n pdfVersion: 1.7\n },\n PrintPageRange: {\n defaultValue: \"\",\n value: \"\",\n type: \"array\",\n explicitSet: false,\n valueSet: null,\n pdfVersion: 1.7\n },\n NumCopies: {\n defaultValue: 1,\n value: 1,\n type: \"integer\",\n explicitSet: false,\n valueSet: null,\n pdfVersion: 1.7\n }\n };\n\n var configurationKeys = Object.keys(configurationTemplate);\n\n var rangeArray = [];\n var i = 0;\n var j = 0;\n var k = 0;\n var isValid;\n\n var method;\n var value;\n\n function arrayContainsElement(array, element) {\n var iterator;\n var result = false;\n\n for (iterator = 0; iterator < array.length; iterator += 1) {\n if (array[iterator] === element) {\n result = true;\n }\n }\n return result;\n }\n\n if (this.internal.viewerpreferences === undefined) {\n this.internal.viewerpreferences = {};\n this.internal.viewerpreferences.configuration = JSON.parse(\n JSON.stringify(configurationTemplate)\n );\n this.internal.viewerpreferences.isSubscribed = false;\n }\n configuration = this.internal.viewerpreferences.configuration;\n\n if (options === \"reset\" || doReset === true) {\n var len = configurationKeys.length;\n\n for (k = 0; k < len; k += 1) {\n configuration[configurationKeys[k]].value =\n configuration[configurationKeys[k]].defaultValue;\n configuration[configurationKeys[k]].explicitSet = false;\n }\n }\n\n if (typeof options === \"object\") {\n for (method in options) {\n value = options[method];\n if (\n arrayContainsElement(configurationKeys, method) &&\n value !== undefined\n ) {\n if (\n configuration[method].type === \"boolean\" &&\n typeof value === \"boolean\"\n ) {\n configuration[method].value = value;\n } else if (\n configuration[method].type === \"name\" &&\n arrayContainsElement(configuration[method].valueSet, value)\n ) {\n configuration[method].value = value;\n } else if (\n configuration[method].type === \"integer\" &&\n Number.isInteger(value)\n ) {\n configuration[method].value = value;\n } else if (configuration[method].type === \"array\") {\n for (i = 0; i < value.length; i += 1) {\n isValid = true;\n if (value[i].length === 1 && typeof value[i][0] === \"number\") {\n rangeArray.push(String(value[i] - 1));\n } else if (value[i].length > 1) {\n for (j = 0; j < value[i].length; j += 1) {\n if (typeof value[i][j] !== \"number\") {\n isValid = false;\n }\n }\n if (isValid === true) {\n rangeArray.push([value[i][0] - 1, value[i][1] - 1].join(\" \"));\n }\n }\n }\n configuration[method].value = \"[\" + rangeArray.join(\" \") + \"]\";\n } else {\n configuration[method].value = configuration[method].defaultValue;\n }\n\n configuration[method].explicitSet = true;\n }\n }\n }\n\n if (this.internal.viewerpreferences.isSubscribed === false) {\n this.internal.events.subscribe(\"putCatalog\", function() {\n var pdfDict = [];\n var vPref;\n for (vPref in configuration) {\n if (configuration[vPref].explicitSet === true) {\n if (configuration[vPref].type === \"name\") {\n pdfDict.push(\"/\" + vPref + \" /\" + configuration[vPref].value);\n } else {\n pdfDict.push(\"/\" + vPref + \" \" + configuration[vPref].value);\n }\n }\n }\n if (pdfDict.length !== 0) {\n this.internal.write(\n \"/ViewerPreferences\\n<<\\n\" + pdfDict.join(\"\\n\") + \"\\n>>\"\n );\n }\n });\n this.internal.viewerpreferences.isSubscribed = true;\n }\n\n this.internal.viewerpreferences.configuration = configuration;\n return this;\n };\n})(jsPDF.API);\n","/** ====================================================================\n * @license\n * jsPDF XMP metadata plugin\n * Copyright (c) 2016 Jussi Utunen, u-jussi@suomi24.fi\n *\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n * ====================================================================\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * @name xmp_metadata\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n var postPutResources = function() {\n var xmpmeta_beginning = '';\n var rdf_beginning =\n '';\n var rdf_ending = \"\";\n var xmpmeta_ending = \"\";\n var utf8_xmpmeta_beginning = unescape(\n encodeURIComponent(xmpmeta_beginning)\n );\n var utf8_rdf_beginning = unescape(encodeURIComponent(rdf_beginning));\n var utf8_metadata = unescape(\n encodeURIComponent(this.internal.__metadata__.metadata)\n );\n var utf8_rdf_ending = unescape(encodeURIComponent(rdf_ending));\n var utf8_xmpmeta_ending = unescape(encodeURIComponent(xmpmeta_ending));\n\n var total_len =\n utf8_rdf_beginning.length +\n utf8_metadata.length +\n utf8_rdf_ending.length +\n utf8_xmpmeta_beginning.length +\n utf8_xmpmeta_ending.length;\n\n this.internal.__metadata__.metadata_object_number = this.internal.newObject();\n this.internal.write(\n \"<< /Type /Metadata /Subtype /XML /Length \" + total_len + \" >>\"\n );\n this.internal.write(\"stream\");\n this.internal.write(\n utf8_xmpmeta_beginning +\n utf8_rdf_beginning +\n utf8_metadata +\n utf8_rdf_ending +\n utf8_xmpmeta_ending\n );\n this.internal.write(\"endstream\");\n this.internal.write(\"endobj\");\n };\n\n var putCatalog = function() {\n if (this.internal.__metadata__.metadata_object_number) {\n this.internal.write(\n \"/Metadata \" +\n this.internal.__metadata__.metadata_object_number +\n \" 0 R\"\n );\n }\n };\n\n /**\n * Adds XMP formatted metadata to PDF\n *\n * @name addMetadata\n * @function\n * @param {String} metadata The actual metadata to be added. The metadata shall be stored as XMP simple value. Note that if the metadata string contains XML markup characters \"<\", \">\" or \"&\", those characters should be written using XML entities.\n * @param {String} namespaceuri Sets the namespace URI for the metadata. Last character should be slash or hash.\n * @returns {jsPDF} jsPDF-instance\n */\n jsPDFAPI.addMetadata = function(metadata, namespaceuri) {\n if (typeof this.internal.__metadata__ === \"undefined\") {\n this.internal.__metadata__ = {\n metadata: metadata,\n namespaceuri: namespaceuri || \"http://jspdf.default.namespaceuri/\"\n };\n this.internal.events.subscribe(\"putCatalog\", putCatalog);\n\n this.internal.events.subscribe(\"postPutResources\", postPutResources);\n }\n return this;\n };\n})(jsPDF.API);\n","import { jsPDF } from \"../jspdf.js\";\nimport { toPDFName } from \"../libs/pdfname.js\";\n\n/**\n * @name utf8\n * @module\n */\n(function(jsPDF) {\n \"use strict\";\n var jsPDFAPI = jsPDF.API;\n\n /***************************************************************************************************/\n /* function : pdfEscape16 */\n /* comment : The character id of a 2-byte string is converted to a hexadecimal number by obtaining */\n /* the corresponding glyph id and width, and then adding padding to the string. */\n /***************************************************************************************************/\n var pdfEscape16 = (jsPDFAPI.pdfEscape16 = function(text, font) {\n var widths = font.metadata.Unicode.widths;\n var padz = [\"\", \"0\", \"00\", \"000\", \"0000\"];\n var ar = [\"\"];\n for (var i = 0, l = text.length, t; i < l; ++i) {\n t = font.metadata.characterToGlyph(text.charCodeAt(i));\n font.metadata.glyIdsUsed.push(t);\n font.metadata.toUnicode[t] = text.charCodeAt(i);\n if (widths.indexOf(t) == -1) {\n widths.push(t);\n widths.push([parseInt(font.metadata.widthOfGlyph(t), 10)]);\n }\n if (t == \"0\") {\n //Spaces are not allowed in cmap.\n return ar.join(\"\");\n } else {\n t = t.toString(16);\n ar.push(padz[4 - t.length], t);\n }\n }\n return ar.join(\"\");\n });\n\n var toUnicodeCmap = function(map) {\n var code, codes, range, unicode, unicodeMap, _i, _len;\n unicodeMap =\n \"/CIDInit /ProcSet findresource begin\\n12 dict begin\\nbegincmap\\n/CIDSystemInfo <<\\n /Registry (Adobe)\\n /Ordering (UCS)\\n /Supplement 0\\n>> def\\n/CMapName /Adobe-Identity-UCS def\\n/CMapType 2 def\\n1 begincodespacerange\\n<0000>\\nendcodespacerange\";\n codes = Object.keys(map).sort(function(a, b) {\n return a - b;\n });\n\n range = [];\n for (_i = 0, _len = codes.length; _i < _len; _i++) {\n code = codes[_i];\n if (range.length >= 100) {\n unicodeMap +=\n \"\\n\" +\n range.length +\n \" beginbfchar\\n\" +\n range.join(\"\\n\") +\n \"\\nendbfchar\";\n range = [];\n }\n\n if (\n map[code] !== undefined &&\n map[code] !== null &&\n typeof map[code].toString === \"function\"\n ) {\n unicode = (\"0000\" + map[code].toString(16)).slice(-4);\n code = (\"0000\" + (+code).toString(16)).slice(-4);\n range.push(\"<\" + code + \"><\" + unicode + \">\");\n }\n }\n\n if (range.length) {\n unicodeMap +=\n \"\\n\" +\n range.length +\n \" beginbfchar\\n\" +\n range.join(\"\\n\") +\n \"\\nendbfchar\\n\";\n }\n unicodeMap +=\n \"endcmap\\nCMapName currentdict /CMap defineresource pop\\nend\\nend\";\n return unicodeMap;\n };\n\n var identityHFunction = function(options) {\n var font = options.font;\n var out = options.out;\n var newObject = options.newObject;\n var putStream = options.putStream;\n\n if (\n font.metadata instanceof jsPDF.API.TTFFont &&\n font.encoding === \"Identity-H\"\n ) {\n //Tag with Identity-H\n var widths = font.metadata.Unicode.widths;\n var data = font.metadata.subset.encode(font.metadata.glyIdsUsed, 1);\n var pdfOutput = data;\n var pdfOutput2 = \"\";\n for (var i = 0; i < pdfOutput.length; i++) {\n pdfOutput2 += String.fromCharCode(pdfOutput[i]);\n }\n var fontTable = newObject();\n putStream({ data: pdfOutput2, addLength1: true, objectId: fontTable });\n out(\"endobj\");\n\n var cmap = newObject();\n var cmapData = toUnicodeCmap(font.metadata.toUnicode);\n putStream({ data: cmapData, addLength1: true, objectId: cmap });\n out(\"endobj\");\n\n var fontDescriptor = newObject();\n out(\"<<\");\n out(\"/Type /FontDescriptor\");\n out(\"/FontName /\" + toPDFName(font.fontName));\n out(\"/FontFile2 \" + fontTable + \" 0 R\");\n out(\"/FontBBox \" + jsPDF.API.PDFObject.convert(font.metadata.bbox));\n out(\"/Flags \" + font.metadata.flags);\n out(\"/StemV \" + font.metadata.stemV);\n out(\"/ItalicAngle \" + font.metadata.italicAngle);\n out(\"/Ascent \" + font.metadata.ascender);\n out(\"/Descent \" + font.metadata.decender);\n out(\"/CapHeight \" + font.metadata.capHeight);\n out(\">>\");\n out(\"endobj\");\n\n var DescendantFont = newObject();\n out(\"<<\");\n out(\"/Type /Font\");\n out(\"/BaseFont /\" + toPDFName(font.fontName));\n out(\"/FontDescriptor \" + fontDescriptor + \" 0 R\");\n out(\"/W \" + jsPDF.API.PDFObject.convert(widths));\n out(\"/CIDToGIDMap /Identity\");\n out(\"/DW 1000\");\n out(\"/Subtype /CIDFontType2\");\n out(\"/CIDSystemInfo\");\n out(\"<<\");\n out(\"/Supplement 0\");\n out(\"/Registry (Adobe)\");\n out(\"/Ordering (\" + font.encoding + \")\");\n out(\">>\");\n out(\">>\");\n out(\"endobj\");\n\n font.objectNumber = newObject();\n out(\"<<\");\n out(\"/Type /Font\");\n out(\"/Subtype /Type0\");\n out(\"/ToUnicode \" + cmap + \" 0 R\");\n out(\"/BaseFont /\" + toPDFName(font.fontName));\n out(\"/Encoding /\" + font.encoding);\n out(\"/DescendantFonts [\" + DescendantFont + \" 0 R]\");\n out(\">>\");\n out(\"endobj\");\n\n font.isAlreadyPutted = true;\n }\n };\n\n jsPDFAPI.events.push([\n \"putFont\",\n function(args) {\n identityHFunction(args);\n }\n ]);\n\n var winAnsiEncodingFunction = function(options) {\n var font = options.font;\n var out = options.out;\n var newObject = options.newObject;\n var putStream = options.putStream;\n\n if (\n font.metadata instanceof jsPDF.API.TTFFont &&\n font.encoding === \"WinAnsiEncoding\"\n ) {\n //Tag with WinAnsi encoding\n var data = font.metadata.rawData;\n var pdfOutput = data;\n var pdfOutput2 = \"\";\n for (var i = 0; i < pdfOutput.length; i++) {\n pdfOutput2 += String.fromCharCode(pdfOutput[i]);\n }\n var fontTable = newObject();\n putStream({ data: pdfOutput2, addLength1: true, objectId: fontTable });\n out(\"endobj\");\n\n var cmap = newObject();\n var cmapData = toUnicodeCmap(font.metadata.toUnicode);\n putStream({ data: cmapData, addLength1: true, objectId: cmap });\n out(\"endobj\");\n\n var fontDescriptor = newObject();\n out(\"<<\");\n out(\"/Descent \" + font.metadata.decender);\n out(\"/CapHeight \" + font.metadata.capHeight);\n out(\"/StemV \" + font.metadata.stemV);\n out(\"/Type /FontDescriptor\");\n out(\"/FontFile2 \" + fontTable + \" 0 R\");\n out(\"/Flags 96\");\n out(\"/FontBBox \" + jsPDF.API.PDFObject.convert(font.metadata.bbox));\n out(\"/FontName /\" + toPDFName(font.fontName));\n out(\"/ItalicAngle \" + font.metadata.italicAngle);\n out(\"/Ascent \" + font.metadata.ascender);\n out(\">>\");\n out(\"endobj\");\n font.objectNumber = newObject();\n for (var j = 0; j < font.metadata.hmtx.widths.length; j++) {\n font.metadata.hmtx.widths[j] = parseInt(\n font.metadata.hmtx.widths[j] * (1000 / font.metadata.head.unitsPerEm)\n ); //Change the width of Em units to Point units.\n }\n out(\n \"<>\"\n );\n out(\"endobj\");\n font.isAlreadyPutted = true;\n }\n };\n\n jsPDFAPI.events.push([\n \"putFont\",\n function(args) {\n winAnsiEncodingFunction(args);\n }\n ]);\n\n var utf8TextFunction = function(args) {\n var text = args.text || \"\";\n var x = args.x;\n var y = args.y;\n var options = args.options || {};\n var mutex = args.mutex || {};\n\n var pdfEscape = mutex.pdfEscape;\n var activeFontKey = mutex.activeFontKey;\n var fonts = mutex.fonts;\n var key = activeFontKey;\n\n var str = \"\",\n s = 0,\n cmapConfirm;\n var strText = \"\";\n var encoding = fonts[key].encoding;\n\n if (fonts[key].encoding !== \"Identity-H\") {\n return {\n text: text,\n x: x,\n y: y,\n options: options,\n mutex: mutex\n };\n }\n strText = text;\n\n key = activeFontKey;\n if (Array.isArray(text)) {\n strText = text[0];\n }\n for (s = 0; s < strText.length; s += 1) {\n if (fonts[key].metadata.hasOwnProperty(\"cmap\")) {\n cmapConfirm =\n fonts[key].metadata.cmap.unicode.codeMap[strText[s].charCodeAt(0)];\n /*\n if (Object.prototype.toString.call(text) === '[object Array]') {\n var i = 0;\n // for (i = 0; i < text.length; i += 1) {\n if (Object.prototype.toString.call(text[s]) === '[object Array]') {\n cmapConfirm = fonts[key].metadata.cmap.unicode.codeMap[strText[s][0].charCodeAt(0)]; //Make sure the cmap has the corresponding glyph id\n } else {\n\n }\n //}\n\n } else {\n cmapConfirm = fonts[key].metadata.cmap.unicode.codeMap[strText[s].charCodeAt(0)]; //Make sure the cmap has the corresponding glyph id\n }*/\n }\n if (!cmapConfirm) {\n if (\n strText[s].charCodeAt(0) < 256 &&\n fonts[key].metadata.hasOwnProperty(\"Unicode\")\n ) {\n str += strText[s];\n } else {\n str += \"\";\n }\n } else {\n str += strText[s];\n }\n }\n var result = \"\";\n if (parseInt(key.slice(1)) < 14 || encoding === \"WinAnsiEncoding\") {\n //For the default 13 font\n result = pdfEscape(str, key)\n .split(\"\")\n .map(function(cv) {\n return cv.charCodeAt(0).toString(16);\n })\n .join(\"\");\n } else if (encoding === \"Identity-H\") {\n result = pdfEscape16(str, fonts[key]);\n }\n mutex.isHex = true;\n\n return {\n text: result,\n x: x,\n y: y,\n options: options,\n mutex: mutex\n };\n };\n\n var utf8EscapeFunction = function(parms) {\n var text = parms.text || \"\",\n x = parms.x,\n y = parms.y,\n options = parms.options,\n mutex = parms.mutex;\n var tmpText = [];\n var args = {\n text: text,\n x: x,\n y: y,\n options: options,\n mutex: mutex\n };\n\n if (Array.isArray(text)) {\n var i = 0;\n for (i = 0; i < text.length; i += 1) {\n if (Array.isArray(text[i])) {\n if (text[i].length === 3) {\n tmpText.push([\n utf8TextFunction(Object.assign({}, args, { text: text[i][0] }))\n .text,\n text[i][1],\n text[i][2]\n ]);\n } else {\n tmpText.push(\n utf8TextFunction(Object.assign({}, args, { text: text[i] })).text\n );\n }\n } else {\n tmpText.push(\n utf8TextFunction(Object.assign({}, args, { text: text[i] })).text\n );\n }\n }\n parms.text = tmpText;\n } else {\n parms.text = utf8TextFunction(\n Object.assign({}, args, { text: text })\n ).text;\n }\n };\n\n jsPDFAPI.events.push([\"postProcessText\", utf8EscapeFunction]);\n})(jsPDF);\n","/**\n * @license\n * jsPDF virtual FileSystem functionality\n *\n * Licensed under the MIT License.\n * http://opensource.org/licenses/mit-license\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n/**\n * Use the vFS to handle files\n *\n * @name vFS\n * @module\n */\n(function(jsPDFAPI) {\n \"use strict\";\n\n var _initializeVFS = function() {\n if (typeof this.internal.vFS === \"undefined\") {\n this.internal.vFS = {};\n }\n return true;\n };\n\n /**\n * Check if the file exists in the vFS\n *\n * @name existsFileInVFS\n * @function\n * @param {string} Possible filename in the vFS.\n * @returns {boolean}\n * @example\n * doc.existsFileInVFS(\"someFile.txt\");\n */\n jsPDFAPI.existsFileInVFS = function(filename) {\n _initializeVFS.call(this);\n return typeof this.internal.vFS[filename] !== \"undefined\";\n };\n\n /**\n * Add a file to the vFS\n *\n * @name addFileToVFS\n * @function\n * @param {string} filename The name of the file which should be added.\n * @param {string} filecontent The content of the file.\n * @returns {jsPDF}\n * @example\n * doc.addFileToVFS(\"someFile.txt\", \"BADFACE1\");\n */\n jsPDFAPI.addFileToVFS = function(filename, filecontent) {\n _initializeVFS.call(this);\n this.internal.vFS[filename] = filecontent;\n return this;\n };\n\n /**\n * Get the file from the vFS\n *\n * @name getFileFromVFS\n * @function\n * @param {string} The name of the file which gets requested.\n * @returns {string}\n * @example\n * doc.getFileFromVFS(\"someFile.txt\");\n */\n jsPDFAPI.getFileFromVFS = function(filename) {\n _initializeVFS.call(this);\n\n if (typeof this.internal.vFS[filename] !== \"undefined\") {\n return this.internal.vFS[filename];\n }\n return null;\n };\n})(jsPDF.API);\n","/**\n * @license\n * Unicode Bidi Engine based on the work of Alex Shensis (@asthensis)\n * MIT License\n */\n\nimport { jsPDF } from \"../jspdf.js\";\n\n(function(jsPDF) {\n \"use strict\";\n /**\n * Table of Unicode types.\n *\n * Generated by:\n *\n * var bidi = require(\"./bidi/index\");\n * var bidi_accumulate = bidi.slice(0, 256).concat(bidi.slice(0x0500, 0x0500 + 256 * 3)).\n * concat(bidi.slice(0x2000, 0x2000 + 256)).concat(bidi.slice(0xFB00, 0xFB00 + 256)).\n * concat(bidi.slice(0xFE00, 0xFE00 + 2 * 256));\n *\n * for( var i = 0; i < bidi_accumulate.length; i++) {\n * \tif(bidi_accumulate[i] === undefined || bidi_accumulate[i] === 'ON')\n * \t\tbidi_accumulate[i] = 'N'; //mark as neutral to conserve space and substitute undefined\n * }\n * var bidiAccumulateStr = 'return [ \"' + bidi_accumulate.toString().replace(/,/g, '\", \"') + '\" ];';\n * require(\"fs\").writeFile('unicode-types.js', bidiAccumulateStr);\n *\n * Based on:\n * https://github.com/mathiasbynens/unicode-8.0.0\n */\n var bidiUnicodeTypes = [\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"S\",\n \"B\",\n \"S\",\n \"WS\",\n \"B\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"B\",\n \"B\",\n \"B\",\n \"S\",\n \"WS\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ES\",\n \"CS\",\n \"ES\",\n \"CS\",\n \"CS\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"CS\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"B\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"CS\",\n \"N\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"N\",\n \"N\",\n \"BN\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"EN\",\n \"EN\",\n \"N\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"EN\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"R\",\n \"NSM\",\n \"R\",\n \"NSM\",\n \"NSM\",\n \"R\",\n \"NSM\",\n \"NSM\",\n \"R\",\n \"NSM\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"N\",\n \"N\",\n \"AL\",\n \"ET\",\n \"ET\",\n \"AL\",\n \"CS\",\n \"AL\",\n \"N\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"AN\",\n \"ET\",\n \"AN\",\n \"AN\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AN\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"N\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"AL\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"R\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"WS\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"L\",\n \"R\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"WS\",\n \"B\",\n \"LRE\",\n \"RLE\",\n \"PDF\",\n \"LRO\",\n \"RLO\",\n \"CS\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"CS\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"WS\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"N\",\n \"LRI\",\n \"RLI\",\n \"FSI\",\n \"PDI\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"BN\",\n \"EN\",\n \"L\",\n \"N\",\n \"N\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"ES\",\n \"ES\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"ES\",\n \"ES\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"R\",\n \"NSM\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"ES\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"N\",\n \"R\",\n \"N\",\n \"R\",\n \"R\",\n \"N\",\n \"R\",\n \"R\",\n \"N\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"R\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"NSM\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"CS\",\n \"N\",\n \"CS\",\n \"N\",\n \"N\",\n \"CS\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"N\",\n \"N\",\n \"ES\",\n \"ES\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"N\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"AL\",\n \"N\",\n \"N\",\n \"BN\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"ES\",\n \"CS\",\n \"ES\",\n \"CS\",\n \"CS\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"EN\",\n \"CS\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"L\",\n \"L\",\n \"L\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"ET\",\n \"ET\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\",\n \"N\"\n ];\n\n /**\n * Unicode Bidi algorithm compliant Bidi engine.\n * For reference see http://unicode.org/reports/tr9/\n */\n\n /**\n * constructor ( options )\n *\n * Initializes Bidi engine\n *\n * @param {Object} See 'setOptions' below for detailed description.\n * options are cashed between invocation of 'doBidiReorder' method\n *\n * sample usage pattern of BidiEngine:\n * var opt = {\n * \tisInputVisual: true,\n * \tisInputRtl: false,\n * \tisOutputVisual: false,\n * \tisOutputRtl: false,\n * \tisSymmetricSwapping: true\n * }\n * var sourceToTarget = [], levels = [];\n * var bidiEng = Globalize.bidiEngine(opt);\n * var src = \"text string to be reordered\";\n * var ret = bidiEng.doBidiReorder(src, sourceToTarget, levels);\n */\n\n jsPDF.__bidiEngine__ = jsPDF.prototype.__bidiEngine__ = function(options) {\n var _UNICODE_TYPES = _bidiUnicodeTypes;\n\n var _STATE_TABLE_LTR = [\n [0, 3, 0, 1, 0, 0, 0],\n [0, 3, 0, 1, 2, 2, 0],\n [0, 3, 0, 0x11, 2, 0, 1],\n [0, 3, 5, 5, 4, 1, 0],\n [0, 3, 0x15, 0x15, 4, 0, 1],\n [0, 3, 5, 5, 4, 2, 0]\n ];\n\n var _STATE_TABLE_RTL = [\n [2, 0, 1, 1, 0, 1, 0],\n [2, 0, 1, 1, 0, 2, 0],\n [2, 0, 2, 1, 3, 2, 0],\n [2, 0, 2, 0x21, 3, 1, 1]\n ];\n\n var _TYPE_NAMES_MAP = { L: 0, R: 1, EN: 2, AN: 3, N: 4, B: 5, S: 6 };\n\n var _UNICODE_RANGES_MAP = {\n 0: 0,\n 5: 1,\n 6: 2,\n 7: 3,\n 0x20: 4,\n 0xfb: 5,\n 0xfe: 6,\n 0xff: 7\n };\n\n var _SWAP_TABLE = [\n \"\\u0028\",\n \"\\u0029\",\n \"\\u0028\",\n \"\\u003C\",\n \"\\u003E\",\n \"\\u003C\",\n \"\\u005B\",\n \"\\u005D\",\n \"\\u005B\",\n \"\\u007B\",\n \"\\u007D\",\n \"\\u007B\",\n \"\\u00AB\",\n \"\\u00BB\",\n \"\\u00AB\",\n \"\\u2039\",\n \"\\u203A\",\n \"\\u2039\",\n \"\\u2045\",\n \"\\u2046\",\n \"\\u2045\",\n \"\\u207D\",\n \"\\u207E\",\n \"\\u207D\",\n \"\\u208D\",\n \"\\u208E\",\n \"\\u208D\",\n \"\\u2264\",\n \"\\u2265\",\n \"\\u2264\",\n \"\\u2329\",\n \"\\u232A\",\n \"\\u2329\",\n \"\\uFE59\",\n \"\\uFE5A\",\n \"\\uFE59\",\n \"\\uFE5B\",\n \"\\uFE5C\",\n \"\\uFE5B\",\n \"\\uFE5D\",\n \"\\uFE5E\",\n \"\\uFE5D\",\n \"\\uFE64\",\n \"\\uFE65\",\n \"\\uFE64\"\n ];\n\n var _LTR_RANGES_REG_EXPR = new RegExp(\n /^([1-4|9]|1[0-9]|2[0-9]|3[0168]|4[04589]|5[012]|7[78]|159|16[0-9]|17[0-2]|21[569]|22[03489]|250)$/\n );\n\n var _lastArabic = false,\n _hasUbatAl,\n _hasUbatB,\n _hasUbatS,\n DIR_LTR = 0,\n DIR_RTL = 1,\n _isInVisual,\n _isInRtl,\n _isOutVisual,\n _isOutRtl,\n _isSymmetricSwapping,\n _dir = DIR_LTR;\n\n this.__bidiEngine__ = {};\n\n var _init = function(text, sourceToTargetMap) {\n if (sourceToTargetMap) {\n for (var i = 0; i < text.length; i++) {\n sourceToTargetMap[i] = i;\n }\n }\n if (_isInRtl === undefined) {\n _isInRtl = _isContextualDirRtl(text);\n }\n if (_isOutRtl === undefined) {\n _isOutRtl = _isContextualDirRtl(text);\n }\n };\n\n // for reference see 3.2 in http://unicode.org/reports/tr9/\n //\n var _getCharType = function(ch) {\n var charCode = ch.charCodeAt(),\n range = charCode >> 8,\n rangeIdx = _UNICODE_RANGES_MAP[range];\n\n if (rangeIdx !== undefined) {\n return _UNICODE_TYPES[rangeIdx * 256 + (charCode & 0xff)];\n } else if (range === 0xfc || range === 0xfd) {\n return \"AL\";\n } else if (_LTR_RANGES_REG_EXPR.test(range)) {\n //unlikely case\n return \"L\";\n } else if (range === 8) {\n // even less likely\n return \"R\";\n }\n return \"N\"; //undefined type, mark as neutral\n };\n\n var _isContextualDirRtl = function(text) {\n for (var i = 0, charType; i < text.length; i++) {\n charType = _getCharType(text.charAt(i));\n if (charType === \"L\") {\n return false;\n } else if (charType === \"R\") {\n return true;\n }\n }\n return false;\n };\n\n // for reference see 3.3.4 & 3.3.5 in http://unicode.org/reports/tr9/\n //\n var _resolveCharType = function(chars, types, resolvedTypes, index) {\n var cType = types[index],\n wType,\n nType,\n i,\n len;\n switch (cType) {\n case \"L\":\n case \"R\":\n _lastArabic = false;\n break;\n case \"N\":\n case \"AN\":\n break;\n\n case \"EN\":\n if (_lastArabic) {\n cType = \"AN\";\n }\n break;\n\n case \"AL\":\n _lastArabic = true;\n _hasUbatAl = true;\n cType = \"R\";\n break;\n\n case \"WS\":\n cType = \"N\";\n break;\n\n case \"CS\":\n if (\n index < 1 ||\n index + 1 >= types.length ||\n ((wType = resolvedTypes[index - 1]) !== \"EN\" && wType !== \"AN\") ||\n ((nType = types[index + 1]) !== \"EN\" && nType !== \"AN\")\n ) {\n cType = \"N\";\n } else if (_lastArabic) {\n nType = \"AN\";\n }\n cType = nType === wType ? nType : \"N\";\n break;\n\n case \"ES\":\n wType = index > 0 ? resolvedTypes[index - 1] : \"B\";\n cType =\n wType === \"EN\" &&\n index + 1 < types.length &&\n types[index + 1] === \"EN\"\n ? \"EN\"\n : \"N\";\n break;\n\n case \"ET\":\n if (index > 0 && resolvedTypes[index - 1] === \"EN\") {\n cType = \"EN\";\n break;\n } else if (_lastArabic) {\n cType = \"N\";\n break;\n }\n i = index + 1;\n len = types.length;\n while (i < len && types[i] === \"ET\") {\n i++;\n }\n if (i < len && types[i] === \"EN\") {\n cType = \"EN\";\n } else {\n cType = \"N\";\n }\n break;\n\n case \"NSM\":\n if (_isInVisual && !_isInRtl) {\n //V->L\n len = types.length;\n i = index + 1;\n while (i < len && types[i] === \"NSM\") {\n i++;\n }\n if (i < len) {\n var c = chars[index];\n var rtlCandidate = (c >= 0x0591 && c <= 0x08ff) || c === 0xfb1e;\n wType = types[i];\n if (rtlCandidate && (wType === \"R\" || wType === \"AL\")) {\n cType = \"R\";\n break;\n }\n }\n }\n if (index < 1 || (wType = types[index - 1]) === \"B\") {\n cType = \"N\";\n } else {\n cType = resolvedTypes[index - 1];\n }\n break;\n\n case \"B\":\n _lastArabic = false;\n _hasUbatB = true;\n cType = _dir;\n break;\n\n case \"S\":\n _hasUbatS = true;\n cType = \"N\";\n break;\n\n case \"LRE\":\n case \"RLE\":\n case \"LRO\":\n case \"RLO\":\n case \"PDF\":\n _lastArabic = false;\n break;\n case \"BN\":\n cType = \"N\";\n break;\n }\n return cType;\n };\n\n var _handleUbatS = function(types, levels, length) {\n for (var i = 0; i < length; i++) {\n if (types[i] === \"S\") {\n levels[i] = _dir;\n for (var j = i - 1; j >= 0; j--) {\n if (types[j] === \"WS\") {\n levels[j] = _dir;\n } else {\n break;\n }\n }\n }\n }\n };\n\n var _invertString = function(text, sourceToTargetMap, levels) {\n var charArray = text.split(\"\");\n if (levels) {\n _computeLevels(charArray, levels, { hiLevel: _dir });\n }\n charArray.reverse();\n sourceToTargetMap && sourceToTargetMap.reverse();\n return charArray.join(\"\");\n };\n\n // For reference see 3.3 in http://unicode.org/reports/tr9/\n //\n var _computeLevels = function(chars, levels, params) {\n var action,\n condition,\n i,\n index,\n newLevel,\n prevState,\n condPos = -1,\n len = chars.length,\n newState = 0,\n resolvedTypes = [],\n stateTable = _dir ? _STATE_TABLE_RTL : _STATE_TABLE_LTR,\n types = [];\n\n _lastArabic = false;\n _hasUbatAl = false;\n _hasUbatB = false;\n _hasUbatS = false;\n for (i = 0; i < len; i++) {\n types[i] = _getCharType(chars[i]);\n }\n for (index = 0; index < len; index++) {\n prevState = newState;\n resolvedTypes[index] = _resolveCharType(\n chars,\n types,\n resolvedTypes,\n index\n );\n newState = stateTable[prevState][_TYPE_NAMES_MAP[resolvedTypes[index]]];\n action = newState & 0xf0;\n newState &= 0x0f;\n levels[index] = newLevel = stateTable[newState][5];\n if (action > 0) {\n if (action === 0x10) {\n for (i = condPos; i < index; i++) {\n levels[i] = 1;\n }\n condPos = -1;\n } else {\n condPos = -1;\n }\n }\n condition = stateTable[newState][6];\n if (condition) {\n if (condPos === -1) {\n condPos = index;\n }\n } else {\n if (condPos > -1) {\n for (i = condPos; i < index; i++) {\n levels[i] = newLevel;\n }\n condPos = -1;\n }\n }\n if (types[index] === \"B\") {\n levels[index] = 0;\n }\n params.hiLevel |= newLevel;\n }\n if (_hasUbatS) {\n _handleUbatS(types, levels, len);\n }\n };\n\n // for reference see 3.4 in http://unicode.org/reports/tr9/\n //\n var _invertByLevel = function(\n level,\n charArray,\n sourceToTargetMap,\n levels,\n params\n ) {\n if (params.hiLevel < level) {\n return;\n }\n if (level === 1 && _dir === DIR_RTL && !_hasUbatB) {\n charArray.reverse();\n sourceToTargetMap && sourceToTargetMap.reverse();\n return;\n }\n var ch,\n high,\n end,\n low,\n len = charArray.length,\n start = 0;\n\n while (start < len) {\n if (levels[start] >= level) {\n end = start + 1;\n while (end < len && levels[end] >= level) {\n end++;\n }\n for (low = start, high = end - 1; low < high; low++, high--) {\n ch = charArray[low];\n charArray[low] = charArray[high];\n charArray[high] = ch;\n if (sourceToTargetMap) {\n ch = sourceToTargetMap[low];\n sourceToTargetMap[low] = sourceToTargetMap[high];\n sourceToTargetMap[high] = ch;\n }\n }\n start = end;\n }\n start++;\n }\n };\n\n // for reference see 7 & BD16 in http://unicode.org/reports/tr9/\n //\n var _symmetricSwap = function(charArray, levels, params) {\n if (params.hiLevel !== 0 && _isSymmetricSwapping) {\n for (var i = 0, index; i < charArray.length; i++) {\n if (levels[i] === 1) {\n index = _SWAP_TABLE.indexOf(charArray[i]);\n if (index >= 0) {\n charArray[i] = _SWAP_TABLE[index + 1];\n }\n }\n }\n }\n };\n\n var _reorder = function(text, sourceToTargetMap, levels) {\n var charArray = text.split(\"\"),\n params = { hiLevel: _dir };\n\n if (!levels) {\n levels = [];\n }\n _computeLevels(charArray, levels, params);\n _symmetricSwap(charArray, levels, params);\n _invertByLevel(DIR_RTL + 1, charArray, sourceToTargetMap, levels, params);\n _invertByLevel(DIR_RTL, charArray, sourceToTargetMap, levels, params);\n return charArray.join(\"\");\n };\n\n // doBidiReorder( text, sourceToTargetMap, levels )\n // Performs Bidi reordering by implementing Unicode Bidi algorithm.\n // Returns reordered string\n // @text [String]:\n // - input string to be reordered, this is input parameter\n // $sourceToTargetMap [Array] (optional)\n // - resultant mapping between input and output strings, this is output parameter\n // $levels [Array] (optional)\n // - array of calculated Bidi levels, , this is output parameter\n this.__bidiEngine__.doBidiReorder = function(\n text,\n sourceToTargetMap,\n levels\n ) {\n _init(text, sourceToTargetMap);\n if (!_isInVisual && _isOutVisual && !_isOutRtl) {\n // LLTR->VLTR, LRTL->VLTR\n _dir = _isInRtl ? DIR_RTL : DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n } else if (_isInVisual && _isOutVisual && _isInRtl ^ _isOutRtl) {\n // VRTL->VLTR, VLTR->VRTL\n _dir = _isInRtl ? DIR_RTL : DIR_LTR;\n text = _invertString(text, sourceToTargetMap, levels);\n } else if (!_isInVisual && _isOutVisual && _isOutRtl) {\n // LLTR->VRTL, LRTL->VRTL\n _dir = _isInRtl ? DIR_RTL : DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n text = _invertString(text, sourceToTargetMap);\n } else if (_isInVisual && !_isInRtl && !_isOutVisual && !_isOutRtl) {\n // VLTR->LLTR\n _dir = DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n } else if (_isInVisual && !_isOutVisual && _isInRtl ^ _isOutRtl) {\n // VLTR->LRTL, VRTL->LLTR\n text = _invertString(text, sourceToTargetMap);\n if (_isInRtl) {\n //LLTR -> VLTR\n _dir = DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n } else {\n //LRTL -> VRTL\n _dir = DIR_RTL;\n text = _reorder(text, sourceToTargetMap, levels);\n text = _invertString(text, sourceToTargetMap);\n }\n } else if (_isInVisual && _isInRtl && !_isOutVisual && _isOutRtl) {\n // VRTL->LRTL\n _dir = DIR_RTL;\n text = _reorder(text, sourceToTargetMap, levels);\n text = _invertString(text, sourceToTargetMap);\n } else if (!_isInVisual && !_isOutVisual && _isInRtl ^ _isOutRtl) {\n // LRTL->LLTR, LLTR->LRTL\n var isSymmetricSwappingOrig = _isSymmetricSwapping;\n if (_isInRtl) {\n //LRTL->LLTR\n _dir = DIR_RTL;\n text = _reorder(text, sourceToTargetMap, levels);\n _dir = DIR_LTR;\n _isSymmetricSwapping = false;\n text = _reorder(text, sourceToTargetMap, levels);\n _isSymmetricSwapping = isSymmetricSwappingOrig;\n } else {\n //LLTR->LRTL\n _dir = DIR_LTR;\n text = _reorder(text, sourceToTargetMap, levels);\n text = _invertString(text, sourceToTargetMap);\n _dir = DIR_RTL;\n _isSymmetricSwapping = false;\n text = _reorder(text, sourceToTargetMap, levels);\n _isSymmetricSwapping = isSymmetricSwappingOrig;\n text = _invertString(text, sourceToTargetMap);\n }\n }\n return text;\n };\n\n /**\n * @name setOptions( options )\n * @function\n * Sets options for Bidi conversion\n * @param {Object}:\n * - isInputVisual {boolean} (defaults to false): allowed values: true(Visual mode), false(Logical mode)\n * - isInputRtl {boolean}: allowed values true(Right-to-left direction), false (Left-to-right directiion), undefined(Contectual direction, i.e.direction defined by first strong character of input string)\n * - isOutputVisual {boolean} (defaults to false): allowed values: true(Visual mode), false(Logical mode)\n * - isOutputRtl {boolean}: allowed values true(Right-to-left direction), false (Left-to-right directiion), undefined(Contectual direction, i.e.direction defined by first strong characterof input string)\n * - isSymmetricSwapping {boolean} (defaults to false): allowed values true(needs symmetric swapping), false (no need in symmetric swapping),\n */\n this.__bidiEngine__.setOptions = function(options) {\n if (options) {\n _isInVisual = options.isInputVisual;\n _isOutVisual = options.isOutputVisual;\n _isInRtl = options.isInputRtl;\n _isOutRtl = options.isOutputRtl;\n _isSymmetricSwapping = options.isSymmetricSwapping;\n }\n };\n\n this.__bidiEngine__.setOptions(options);\n return this.__bidiEngine__;\n };\n\n var _bidiUnicodeTypes = bidiUnicodeTypes;\n\n var bidiEngine = new jsPDF.__bidiEngine__({ isInputVisual: true });\n\n var bidiEngineFunction = function(args) {\n var text = args.text;\n var x = args.x;\n var y = args.y;\n var options = args.options || {};\n var mutex = args.mutex || {};\n var lang = options.lang;\n var tmpText = [];\n\n options.isInputVisual =\n typeof options.isInputVisual === \"boolean\" ? options.isInputVisual : true;\n bidiEngine.setOptions(options);\n\n if (Object.prototype.toString.call(text) === \"[object Array]\") {\n var i = 0;\n tmpText = [];\n for (i = 0; i < text.length; i += 1) {\n if (Object.prototype.toString.call(text[i]) === \"[object Array]\") {\n tmpText.push([\n bidiEngine.doBidiReorder(text[i][0]),\n text[i][1],\n text[i][2]\n ]);\n } else {\n tmpText.push([bidiEngine.doBidiReorder(text[i])]);\n }\n }\n args.text = tmpText;\n } else {\n args.text = bidiEngine.doBidiReorder(text);\n }\n bidiEngine.setOptions({ isInputVisual: true });\n };\n\n jsPDF.API.events.push([\"postProcessText\", bidiEngineFunction]);\n})(jsPDF);\n","/* eslint-disable no-control-regex */\n/************************************************\n * Title : custom font *\n * Start Data : 2017. 01. 22. *\n * Comment : TEXT API *\n ************************************************/\n\n/******************************\n * jsPDF extension API Design *\n * ****************************/\n\nimport { jsPDF } from \"../jspdf.js\";\n\njsPDF.API.TTFFont = (function() {\n /************************************************************************/\n /* function : open */\n /* comment : Decode the encoded ttf content and create a TTFFont object. */\n /************************************************************************/\n TTFFont.open = function(file) {\n return new TTFFont(file);\n };\n /***************************************************************/\n /* function : TTFFont gernerator */\n /* comment : Decode TTF contents are parsed, Data, */\n /* Subset object is created, and registerTTF function is called.*/\n /***************************************************************/\n function TTFFont(rawData) {\n var data;\n this.rawData = rawData;\n data = this.contents = new Data(rawData);\n this.contents.pos = 4;\n if (data.readString(4) === \"ttcf\") {\n throw new Error(\"TTCF not supported.\");\n } else {\n data.pos = 0;\n this.parse();\n this.subset = new Subset(this);\n this.registerTTF();\n }\n }\n /********************************************************/\n /* function : parse */\n /* comment : TTF Parses the file contents by each table.*/\n /********************************************************/\n TTFFont.prototype.parse = function() {\n this.directory = new Directory(this.contents);\n this.head = new HeadTable(this);\n this.name = new NameTable(this);\n this.cmap = new CmapTable(this);\n this.toUnicode = {};\n this.hhea = new HheaTable(this);\n this.maxp = new MaxpTable(this);\n this.hmtx = new HmtxTable(this);\n this.post = new PostTable(this);\n this.os2 = new OS2Table(this);\n this.loca = new LocaTable(this);\n this.glyf = new GlyfTable(this);\n this.ascender =\n (this.os2.exists && this.os2.ascender) || this.hhea.ascender;\n this.decender =\n (this.os2.exists && this.os2.decender) || this.hhea.decender;\n this.lineGap = (this.os2.exists && this.os2.lineGap) || this.hhea.lineGap;\n return (this.bbox = [\n this.head.xMin,\n this.head.yMin,\n this.head.xMax,\n this.head.yMax\n ]);\n };\n /***************************************************************/\n /* function : registerTTF */\n /* comment : Get the value to assign pdf font descriptors. */\n /***************************************************************/\n TTFFont.prototype.registerTTF = function() {\n var e, hi, low, raw, _ref;\n this.scaleFactor = 1000.0 / this.head.unitsPerEm;\n this.bbox = function() {\n var _i, _len, _ref, _results;\n _ref = this.bbox;\n _results = [];\n for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n e = _ref[_i];\n _results.push(Math.round(e * this.scaleFactor));\n }\n return _results;\n }.call(this);\n this.stemV = 0;\n if (this.post.exists) {\n raw = this.post.italic_angle;\n hi = raw >> 16;\n low = raw & 0xff;\n if ((hi & 0x8000) !== 0) {\n hi = -((hi ^ 0xffff) + 1);\n }\n this.italicAngle = +(\"\" + hi + \".\" + low);\n } else {\n this.italicAngle = 0;\n }\n this.ascender = Math.round(this.ascender * this.scaleFactor);\n this.decender = Math.round(this.decender * this.scaleFactor);\n this.lineGap = Math.round(this.lineGap * this.scaleFactor);\n this.capHeight = (this.os2.exists && this.os2.capHeight) || this.ascender;\n this.xHeight = (this.os2.exists && this.os2.xHeight) || 0;\n this.familyClass = ((this.os2.exists && this.os2.familyClass) || 0) >> 8;\n this.isSerif =\n (_ref = this.familyClass) === 1 ||\n _ref === 2 ||\n _ref === 3 ||\n _ref === 4 ||\n _ref === 5 ||\n _ref === 7;\n this.isScript = this.familyClass === 10;\n this.flags = 0;\n if (this.post.isFixedPitch) {\n this.flags |= 1 << 0;\n }\n if (this.isSerif) {\n this.flags |= 1 << 1;\n }\n if (this.isScript) {\n this.flags |= 1 << 3;\n }\n if (this.italicAngle !== 0) {\n this.flags |= 1 << 6;\n }\n this.flags |= 1 << 5;\n if (!this.cmap.unicode) {\n throw new Error(\"No unicode cmap for font\");\n }\n };\n TTFFont.prototype.characterToGlyph = function(character) {\n var _ref;\n return (\n ((_ref = this.cmap.unicode) != null ? _ref.codeMap[character] : void 0) ||\n 0\n );\n };\n TTFFont.prototype.widthOfGlyph = function(glyph) {\n var scale;\n scale = 1000.0 / this.head.unitsPerEm;\n return this.hmtx.forGlyph(glyph).advance * scale;\n };\n TTFFont.prototype.widthOfString = function(string, size, charSpace) {\n var charCode, i, scale, width, _ref;\n string = \"\" + string;\n width = 0;\n for (\n i = 0, _ref = string.length;\n 0 <= _ref ? i < _ref : i > _ref;\n i = 0 <= _ref ? ++i : --i\n ) {\n charCode = string.charCodeAt(i);\n width +=\n this.widthOfGlyph(this.characterToGlyph(charCode)) +\n charSpace * (1000 / size) || 0;\n }\n scale = size / 1000;\n return width * scale;\n };\n TTFFont.prototype.lineHeight = function(size, includeGap) {\n var gap;\n if (includeGap == null) {\n includeGap = false;\n }\n gap = includeGap ? this.lineGap : 0;\n return ((this.ascender + gap - this.decender) / 1000) * size;\n };\n return TTFFont;\n})();\n\n/************************************************************************************************/\n/* function : Data */\n/* comment : The ttf data decoded and stored in an array is read and written to the Data object.*/\n/************************************************************************************************/\nvar Data = (function() {\n function Data(data) {\n this.data = data != null ? data : [];\n this.pos = 0;\n this.length = this.data.length;\n }\n Data.prototype.readByte = function() {\n return this.data[this.pos++];\n };\n Data.prototype.writeByte = function(byte) {\n return (this.data[this.pos++] = byte);\n };\n Data.prototype.readUInt32 = function() {\n var b1, b2, b3, b4;\n b1 = this.readByte() * 0x1000000;\n b2 = this.readByte() << 16;\n b3 = this.readByte() << 8;\n b4 = this.readByte();\n return b1 + b2 + b3 + b4;\n };\n Data.prototype.writeUInt32 = function(val) {\n this.writeByte((val >>> 24) & 0xff);\n this.writeByte((val >> 16) & 0xff);\n this.writeByte((val >> 8) & 0xff);\n return this.writeByte(val & 0xff);\n };\n Data.prototype.readInt32 = function() {\n var int;\n int = this.readUInt32();\n if (int >= 0x80000000) {\n return int - 0x100000000;\n } else {\n return int;\n }\n };\n Data.prototype.writeInt32 = function(val) {\n if (val < 0) {\n val += 0x100000000;\n }\n return this.writeUInt32(val);\n };\n Data.prototype.readUInt16 = function() {\n var b1, b2;\n b1 = this.readByte() << 8;\n b2 = this.readByte();\n return b1 | b2;\n };\n Data.prototype.writeUInt16 = function(val) {\n this.writeByte((val >> 8) & 0xff);\n return this.writeByte(val & 0xff);\n };\n Data.prototype.readInt16 = function() {\n var int;\n int = this.readUInt16();\n if (int >= 0x8000) {\n return int - 0x10000;\n } else {\n return int;\n }\n };\n Data.prototype.writeInt16 = function(val) {\n if (val < 0) {\n val += 0x10000;\n }\n return this.writeUInt16(val);\n };\n Data.prototype.readString = function(length) {\n var i, ret;\n ret = [];\n for (\n i = 0;\n 0 <= length ? i < length : i > length;\n i = 0 <= length ? ++i : --i\n ) {\n ret[i] = String.fromCharCode(this.readByte());\n }\n return ret.join(\"\");\n };\n Data.prototype.writeString = function(val) {\n var i, _ref, _results;\n _results = [];\n for (\n i = 0, _ref = val.length;\n 0 <= _ref ? i < _ref : i > _ref;\n i = 0 <= _ref ? ++i : --i\n ) {\n _results.push(this.writeByte(val.charCodeAt(i)));\n }\n return _results;\n };\n /*Data.prototype.stringAt = function (pos, length) {\n this.pos = pos;\n return this.readString(length);\n };*/\n Data.prototype.readShort = function() {\n return this.readInt16();\n };\n Data.prototype.writeShort = function(val) {\n return this.writeInt16(val);\n };\n Data.prototype.readLongLong = function() {\n var b1, b2, b3, b4, b5, b6, b7, b8;\n b1 = this.readByte();\n b2 = this.readByte();\n b3 = this.readByte();\n b4 = this.readByte();\n b5 = this.readByte();\n b6 = this.readByte();\n b7 = this.readByte();\n b8 = this.readByte();\n if (b1 & 0x80) {\n return (\n ((b1 ^ 0xff) * 0x100000000000000 +\n (b2 ^ 0xff) * 0x1000000000000 +\n (b3 ^ 0xff) * 0x10000000000 +\n (b4 ^ 0xff) * 0x100000000 +\n (b5 ^ 0xff) * 0x1000000 +\n (b6 ^ 0xff) * 0x10000 +\n (b7 ^ 0xff) * 0x100 +\n (b8 ^ 0xff) +\n 1) *\n -1\n );\n }\n return (\n b1 * 0x100000000000000 +\n b2 * 0x1000000000000 +\n b3 * 0x10000000000 +\n b4 * 0x100000000 +\n b5 * 0x1000000 +\n b6 * 0x10000 +\n b7 * 0x100 +\n b8\n );\n };\n Data.prototype.writeLongLong = function(val) {\n var high, low;\n high = Math.floor(val / 0x100000000);\n low = val & 0xffffffff;\n this.writeByte((high >> 24) & 0xff);\n this.writeByte((high >> 16) & 0xff);\n this.writeByte((high >> 8) & 0xff);\n this.writeByte(high & 0xff);\n this.writeByte((low >> 24) & 0xff);\n this.writeByte((low >> 16) & 0xff);\n this.writeByte((low >> 8) & 0xff);\n return this.writeByte(low & 0xff);\n };\n Data.prototype.readInt = function() {\n return this.readInt32();\n };\n Data.prototype.writeInt = function(val) {\n return this.writeInt32(val);\n };\n /*Data.prototype.slice = function (start, end) {\n return this.data.slice(start, end);\n };*/\n Data.prototype.read = function(bytes) {\n var buf, i;\n buf = [];\n for (\n i = 0;\n 0 <= bytes ? i < bytes : i > bytes;\n i = 0 <= bytes ? ++i : --i\n ) {\n buf.push(this.readByte());\n }\n return buf;\n };\n Data.prototype.write = function(bytes) {\n var byte, i, _len, _results;\n _results = [];\n for (i = 0, _len = bytes.length; i < _len; i++) {\n byte = bytes[i];\n _results.push(this.writeByte(byte));\n }\n return _results;\n };\n return Data;\n})();\n\nvar Directory = (function() {\n var checksum;\n\n /*****************************************************************************************************/\n /* function : Directory generator */\n /* comment : Initialize the offset, tag, length, and checksum for each table for the font to be used.*/\n /*****************************************************************************************************/\n function Directory(data) {\n var entry, i, _ref;\n this.scalarType = data.readInt();\n this.tableCount = data.readShort();\n this.searchRange = data.readShort();\n this.entrySelector = data.readShort();\n this.rangeShift = data.readShort();\n this.tables = {};\n for (\n i = 0, _ref = this.tableCount;\n 0 <= _ref ? i < _ref : i > _ref;\n i = 0 <= _ref ? ++i : --i\n ) {\n entry = {\n tag: data.readString(4),\n checksum: data.readInt(),\n offset: data.readInt(),\n length: data.readInt()\n };\n this.tables[entry.tag] = entry;\n }\n }\n /********************************************************************************************************/\n /* function : encode */\n /* comment : It encodes and stores the font table object and information used for the directory object. */\n /********************************************************************************************************/\n Directory.prototype.encode = function(tables) {\n var adjustment,\n directory,\n directoryLength,\n entrySelector,\n headOffset,\n log2,\n offset,\n rangeShift,\n searchRange,\n sum,\n table,\n tableCount,\n tableData,\n tag;\n tableCount = Object.keys(tables).length;\n log2 = Math.log(2);\n searchRange = Math.floor(Math.log(tableCount) / log2) * 16;\n entrySelector = Math.floor(searchRange / log2);\n rangeShift = tableCount * 16 - searchRange;\n directory = new Data();\n directory.writeInt(this.scalarType);\n directory.writeShort(tableCount);\n directory.writeShort(searchRange);\n directory.writeShort(entrySelector);\n directory.writeShort(rangeShift);\n directoryLength = tableCount * 16;\n offset = directory.pos + directoryLength;\n headOffset = null;\n tableData = [];\n for (tag in tables) {\n table = tables[tag];\n directory.writeString(tag);\n directory.writeInt(checksum(table));\n directory.writeInt(offset);\n directory.writeInt(table.length);\n tableData = tableData.concat(table);\n if (tag === \"head\") {\n headOffset = offset;\n }\n offset += table.length;\n while (offset % 4) {\n tableData.push(0);\n offset++;\n }\n }\n directory.write(tableData);\n sum = checksum(directory.data);\n adjustment = 0xb1b0afba - sum;\n directory.pos = headOffset + 8;\n directory.writeUInt32(adjustment);\n return directory.data;\n };\n /***************************************************************/\n /* function : checksum */\n /* comment : Duplicate the table for the tag. */\n /***************************************************************/\n checksum = function(data) {\n var i, sum, tmp, _ref;\n data = __slice.call(data);\n while (data.length % 4) {\n data.push(0);\n }\n tmp = new Data(data);\n sum = 0;\n for (i = 0, _ref = data.length; i < _ref; i = i += 4) {\n sum += tmp.readUInt32();\n }\n return sum & 0xffffffff;\n };\n return Directory;\n})();\n\nvar Table,\n __hasProp = {}.hasOwnProperty,\n __extends = function(child, parent) {\n for (var key in parent) {\n if (__hasProp.call(parent, key)) child[key] = parent[key];\n }\n\n function ctor() {\n this.constructor = child;\n }\n ctor.prototype = parent.prototype;\n child.prototype = new ctor();\n child.__super__ = parent.prototype;\n return child;\n };\n\n/***************************************************************/\n/* function : Table */\n/* comment : Save info for each table, and parse the table. */\n/***************************************************************/\nTable = (function() {\n function Table(file) {\n var info;\n this.file = file;\n info = this.file.directory.tables[this.tag];\n this.exists = !!info;\n if (info) {\n (this.offset = info.offset), (this.length = info.length);\n this.parse(this.file.contents);\n }\n }\n Table.prototype.parse = function() {};\n Table.prototype.encode = function() {};\n Table.prototype.raw = function() {\n if (!this.exists) {\n return null;\n }\n this.file.contents.pos = this.offset;\n return this.file.contents.read(this.length);\n };\n return Table;\n})();\n\nvar HeadTable = (function(_super) {\n __extends(HeadTable, _super);\n\n function HeadTable() {\n return HeadTable.__super__.constructor.apply(this, arguments);\n }\n HeadTable.prototype.tag = \"head\";\n HeadTable.prototype.parse = function(data) {\n data.pos = this.offset;\n this.version = data.readInt();\n this.revision = data.readInt();\n this.checkSumAdjustment = data.readInt();\n this.magicNumber = data.readInt();\n this.flags = data.readShort();\n this.unitsPerEm = data.readShort();\n this.created = data.readLongLong();\n this.modified = data.readLongLong();\n this.xMin = data.readShort();\n this.yMin = data.readShort();\n this.xMax = data.readShort();\n this.yMax = data.readShort();\n this.macStyle = data.readShort();\n this.lowestRecPPEM = data.readShort();\n this.fontDirectionHint = data.readShort();\n this.indexToLocFormat = data.readShort();\n return (this.glyphDataFormat = data.readShort());\n };\n HeadTable.prototype.encode = function(indexToLocFormat) {\n var table;\n table = new Data();\n table.writeInt(this.version);\n table.writeInt(this.revision);\n table.writeInt(this.checkSumAdjustment);\n table.writeInt(this.magicNumber);\n table.writeShort(this.flags);\n table.writeShort(this.unitsPerEm);\n table.writeLongLong(this.created);\n table.writeLongLong(this.modified);\n table.writeShort(this.xMin);\n table.writeShort(this.yMin);\n table.writeShort(this.xMax);\n table.writeShort(this.yMax);\n table.writeShort(this.macStyle);\n table.writeShort(this.lowestRecPPEM);\n table.writeShort(this.fontDirectionHint);\n table.writeShort(indexToLocFormat);\n table.writeShort(this.glyphDataFormat);\n return table.data;\n };\n return HeadTable;\n})(Table);\n\n/************************************************************************************/\n/* function : CmapEntry */\n/* comment : Cmap Initializes and encodes object information (required by pdf spec).*/\n/************************************************************************************/\nvar CmapEntry = (function() {\n function CmapEntry(data, offset) {\n var code,\n count,\n endCode,\n glyphId,\n glyphIds,\n i,\n idDelta,\n idRangeOffset,\n index,\n saveOffset,\n segCount,\n segCountX2,\n start,\n startCode,\n tail,\n _j,\n _k,\n _len;\n this.platformID = data.readUInt16();\n this.encodingID = data.readShort();\n this.offset = offset + data.readInt();\n saveOffset = data.pos;\n data.pos = this.offset;\n this.format = data.readUInt16();\n this.length = data.readUInt16();\n this.language = data.readUInt16();\n this.isUnicode =\n (this.platformID === 3 && this.encodingID === 1 && this.format === 4) ||\n (this.platformID === 0 && this.format === 4);\n this.codeMap = {};\n switch (this.format) {\n case 0:\n for (i = 0; i < 256; ++i) {\n this.codeMap[i] = data.readByte();\n }\n break;\n case 4:\n segCountX2 = data.readUInt16();\n segCount = segCountX2 / 2;\n data.pos += 6;\n endCode = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= segCount ? _j < segCount : _j > segCount;\n i = 0 <= segCount ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n data.pos += 2;\n startCode = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= segCount ? _j < segCount : _j > segCount;\n i = 0 <= segCount ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n idDelta = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= segCount ? _j < segCount : _j > segCount;\n i = 0 <= segCount ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n idRangeOffset = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= segCount ? _j < segCount : _j > segCount;\n i = 0 <= segCount ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n count = (this.length - data.pos + this.offset) / 2;\n glyphIds = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= count ? _j < count : _j > count;\n i = 0 <= count ? ++_j : --_j\n ) {\n _results.push(data.readUInt16());\n }\n return _results;\n })();\n for (i = _j = 0, _len = endCode.length; _j < _len; i = ++_j) {\n tail = endCode[i];\n start = startCode[i];\n for (\n code = _k = start;\n start <= tail ? _k <= tail : _k >= tail;\n code = start <= tail ? ++_k : --_k\n ) {\n if (idRangeOffset[i] === 0) {\n glyphId = code + idDelta[i];\n } else {\n index = idRangeOffset[i] / 2 + (code - start) - (segCount - i);\n glyphId = glyphIds[index] || 0;\n if (glyphId !== 0) {\n glyphId += idDelta[i];\n }\n }\n this.codeMap[code] = glyphId & 0xffff;\n }\n }\n }\n data.pos = saveOffset;\n }\n CmapEntry.encode = function(charmap, encoding) {\n var charMap,\n code,\n codeMap,\n codes,\n delta,\n deltas,\n diff,\n endCode,\n endCodes,\n entrySelector,\n glyphIDs,\n i,\n id,\n indexes,\n last,\n map,\n nextID,\n offset,\n old,\n rangeOffsets,\n rangeShift,\n searchRange,\n segCount,\n segCountX2,\n startCode,\n startCodes,\n startGlyph,\n subtable,\n _i,\n _j,\n _k,\n _l,\n _len,\n _len1,\n _len2,\n _len3,\n _len4,\n _len5,\n _len6,\n _len7,\n _m,\n _n,\n _name,\n _o,\n _p,\n _q;\n subtable = new Data();\n codes = Object.keys(charmap).sort(function(a, b) {\n return a - b;\n });\n switch (encoding) {\n case \"macroman\":\n id = 0;\n indexes = (function() {\n var _results = [];\n for (i = 0; i < 256; ++i) {\n _results.push(0);\n }\n return _results;\n })();\n map = {\n 0: 0\n };\n codeMap = {};\n for (_i = 0, _len = codes.length; _i < _len; _i++) {\n code = codes[_i];\n if (map[(_name = charmap[code])] == null) {\n map[_name] = ++id;\n }\n codeMap[code] = {\n old: charmap[code],\n new: map[charmap[code]]\n };\n indexes[code] = map[charmap[code]];\n }\n subtable.writeUInt16(1);\n subtable.writeUInt16(0);\n subtable.writeUInt32(12);\n subtable.writeUInt16(0);\n subtable.writeUInt16(262);\n subtable.writeUInt16(0);\n subtable.write(indexes);\n return {\n charMap: codeMap,\n subtable: subtable.data,\n maxGlyphID: id + 1\n };\n case \"unicode\":\n startCodes = [];\n endCodes = [];\n nextID = 0;\n map = {};\n charMap = {};\n last = diff = null;\n for (_j = 0, _len1 = codes.length; _j < _len1; _j++) {\n code = codes[_j];\n old = charmap[code];\n if (map[old] == null) {\n map[old] = ++nextID;\n }\n charMap[code] = {\n old: old,\n new: map[old]\n };\n delta = map[old] - code;\n if (last == null || delta !== diff) {\n if (last) {\n endCodes.push(last);\n }\n startCodes.push(code);\n diff = delta;\n }\n last = code;\n }\n if (last) {\n endCodes.push(last);\n }\n endCodes.push(0xffff);\n startCodes.push(0xffff);\n segCount = startCodes.length;\n segCountX2 = segCount * 2;\n searchRange = 2 * Math.pow(Math.log(segCount) / Math.LN2, 2);\n entrySelector = Math.log(searchRange / 2) / Math.LN2;\n rangeShift = 2 * segCount - searchRange;\n deltas = [];\n rangeOffsets = [];\n glyphIDs = [];\n for (i = _k = 0, _len2 = startCodes.length; _k < _len2; i = ++_k) {\n startCode = startCodes[i];\n endCode = endCodes[i];\n if (startCode === 0xffff) {\n deltas.push(0);\n rangeOffsets.push(0);\n break;\n }\n startGlyph = charMap[startCode][\"new\"];\n if (startCode - startGlyph >= 0x8000) {\n deltas.push(0);\n rangeOffsets.push(2 * (glyphIDs.length + segCount - i));\n for (\n code = _l = startCode;\n startCode <= endCode ? _l <= endCode : _l >= endCode;\n code = startCode <= endCode ? ++_l : --_l\n ) {\n glyphIDs.push(charMap[code][\"new\"]);\n }\n } else {\n deltas.push(startGlyph - startCode);\n rangeOffsets.push(0);\n }\n }\n subtable.writeUInt16(3);\n subtable.writeUInt16(1);\n subtable.writeUInt32(12);\n subtable.writeUInt16(4);\n subtable.writeUInt16(16 + segCount * 8 + glyphIDs.length * 2);\n subtable.writeUInt16(0);\n subtable.writeUInt16(segCountX2);\n subtable.writeUInt16(searchRange);\n subtable.writeUInt16(entrySelector);\n subtable.writeUInt16(rangeShift);\n for (_m = 0, _len3 = endCodes.length; _m < _len3; _m++) {\n code = endCodes[_m];\n subtable.writeUInt16(code);\n }\n subtable.writeUInt16(0);\n for (_n = 0, _len4 = startCodes.length; _n < _len4; _n++) {\n code = startCodes[_n];\n subtable.writeUInt16(code);\n }\n for (_o = 0, _len5 = deltas.length; _o < _len5; _o++) {\n delta = deltas[_o];\n subtable.writeUInt16(delta);\n }\n for (_p = 0, _len6 = rangeOffsets.length; _p < _len6; _p++) {\n offset = rangeOffsets[_p];\n subtable.writeUInt16(offset);\n }\n for (_q = 0, _len7 = glyphIDs.length; _q < _len7; _q++) {\n id = glyphIDs[_q];\n subtable.writeUInt16(id);\n }\n return {\n charMap: charMap,\n subtable: subtable.data,\n maxGlyphID: nextID + 1\n };\n }\n };\n return CmapEntry;\n})();\n\nvar CmapTable = (function(_super) {\n __extends(CmapTable, _super);\n\n function CmapTable() {\n return CmapTable.__super__.constructor.apply(this, arguments);\n }\n CmapTable.prototype.tag = \"cmap\";\n CmapTable.prototype.parse = function(data) {\n var entry, i, tableCount;\n data.pos = this.offset;\n this.version = data.readUInt16();\n tableCount = data.readUInt16();\n this.tables = [];\n this.unicode = null;\n for (\n i = 0;\n 0 <= tableCount ? i < tableCount : i > tableCount;\n i = 0 <= tableCount ? ++i : --i\n ) {\n entry = new CmapEntry(data, this.offset);\n this.tables.push(entry);\n if (entry.isUnicode) {\n if (this.unicode == null) {\n this.unicode = entry;\n }\n }\n }\n return true;\n };\n /*************************************************************************/\n /* function : encode */\n /* comment : Encode the cmap table corresponding to the input character. */\n /*************************************************************************/\n CmapTable.encode = function(charmap, encoding) {\n var result, table;\n if (encoding == null) {\n encoding = \"macroman\";\n }\n result = CmapEntry.encode(charmap, encoding);\n table = new Data();\n table.writeUInt16(0);\n table.writeUInt16(1);\n result.table = table.data.concat(result.subtable);\n return result;\n };\n return CmapTable;\n})(Table);\n\nvar HheaTable = (function(_super) {\n __extends(HheaTable, _super);\n\n function HheaTable() {\n return HheaTable.__super__.constructor.apply(this, arguments);\n }\n HheaTable.prototype.tag = \"hhea\";\n HheaTable.prototype.parse = function(data) {\n data.pos = this.offset;\n this.version = data.readInt();\n this.ascender = data.readShort();\n this.decender = data.readShort();\n this.lineGap = data.readShort();\n this.advanceWidthMax = data.readShort();\n this.minLeftSideBearing = data.readShort();\n this.minRightSideBearing = data.readShort();\n this.xMaxExtent = data.readShort();\n this.caretSlopeRise = data.readShort();\n this.caretSlopeRun = data.readShort();\n this.caretOffset = data.readShort();\n data.pos += 4 * 2;\n this.metricDataFormat = data.readShort();\n return (this.numberOfMetrics = data.readUInt16());\n };\n /*HheaTable.prototype.encode = function (ids) {\n var i, table, _i, _ref;\n table = new Data;\n table.writeInt(this.version);\n table.writeShort(this.ascender);\n table.writeShort(this.decender);\n table.writeShort(this.lineGap);\n table.writeShort(this.advanceWidthMax);\n table.writeShort(this.minLeftSideBearing);\n table.writeShort(this.minRightSideBearing);\n table.writeShort(this.xMaxExtent);\n table.writeShort(this.caretSlopeRise);\n table.writeShort(this.caretSlopeRun);\n table.writeShort(this.caretOffset);\n for (i = _i = 0, _ref = 4 * 2; 0 <= _ref ? _i < _ref : _i > _ref; i = 0 <= _ref ? ++_i : --_i) {\n table.writeByte(0);\n }\n table.writeShort(this.metricDataFormat);\n table.writeUInt16(ids.length);\n return table.data;\n };*/\n return HheaTable;\n})(Table);\n\nvar OS2Table = (function(_super) {\n __extends(OS2Table, _super);\n\n function OS2Table() {\n return OS2Table.__super__.constructor.apply(this, arguments);\n }\n OS2Table.prototype.tag = \"OS/2\";\n OS2Table.prototype.parse = function(data) {\n data.pos = this.offset;\n this.version = data.readUInt16();\n this.averageCharWidth = data.readShort();\n this.weightClass = data.readUInt16();\n this.widthClass = data.readUInt16();\n this.type = data.readShort();\n this.ySubscriptXSize = data.readShort();\n this.ySubscriptYSize = data.readShort();\n this.ySubscriptXOffset = data.readShort();\n this.ySubscriptYOffset = data.readShort();\n this.ySuperscriptXSize = data.readShort();\n this.ySuperscriptYSize = data.readShort();\n this.ySuperscriptXOffset = data.readShort();\n this.ySuperscriptYOffset = data.readShort();\n this.yStrikeoutSize = data.readShort();\n this.yStrikeoutPosition = data.readShort();\n this.familyClass = data.readShort();\n this.panose = (function() {\n var i, _results;\n _results = [];\n for (i = 0; i < 10; ++i) {\n _results.push(data.readByte());\n }\n return _results;\n })();\n this.charRange = (function() {\n var i, _results;\n _results = [];\n for (i = 0; i < 4; ++i) {\n _results.push(data.readInt());\n }\n return _results;\n })();\n this.vendorID = data.readString(4);\n this.selection = data.readShort();\n this.firstCharIndex = data.readShort();\n this.lastCharIndex = data.readShort();\n if (this.version > 0) {\n this.ascent = data.readShort();\n this.descent = data.readShort();\n this.lineGap = data.readShort();\n this.winAscent = data.readShort();\n this.winDescent = data.readShort();\n this.codePageRange = (function() {\n var i, _results;\n _results = [];\n for (i = 0; i < 2; i = ++i) {\n _results.push(data.readInt());\n }\n return _results;\n })();\n if (this.version > 1) {\n this.xHeight = data.readShort();\n this.capHeight = data.readShort();\n this.defaultChar = data.readShort();\n this.breakChar = data.readShort();\n return (this.maxContext = data.readShort());\n }\n }\n };\n /*OS2Table.prototype.encode = function () {\n return this.raw();\n };*/\n return OS2Table;\n})(Table);\n\nvar PostTable = (function(_super) {\n var POSTSCRIPT_GLYPHS;\n __extends(PostTable, _super);\n\n function PostTable() {\n return PostTable.__super__.constructor.apply(this, arguments);\n }\n PostTable.prototype.tag = \"post\";\n PostTable.prototype.parse = function(data) {\n var length, numberOfGlyphs, _results;\n data.pos = this.offset;\n this.format = data.readInt();\n this.italicAngle = data.readInt();\n this.underlinePosition = data.readShort();\n this.underlineThickness = data.readShort();\n this.isFixedPitch = data.readInt();\n this.minMemType42 = data.readInt();\n this.maxMemType42 = data.readInt();\n this.minMemType1 = data.readInt();\n this.maxMemType1 = data.readInt();\n switch (this.format) {\n case 0x00010000:\n break;\n case 0x00020000:\n numberOfGlyphs = data.readUInt16();\n this.glyphNameIndex = [];\n var i;\n for (\n i = 0;\n 0 <= numberOfGlyphs ? i < numberOfGlyphs : i > numberOfGlyphs;\n i = 0 <= numberOfGlyphs ? ++i : --i\n ) {\n this.glyphNameIndex.push(data.readUInt16());\n }\n this.names = [];\n _results = [];\n while (data.pos < this.offset + this.length) {\n length = data.readByte();\n _results.push(this.names.push(data.readString(length)));\n }\n return _results;\n case 0x00025000:\n numberOfGlyphs = data.readUInt16();\n return (this.offsets = data.read(numberOfGlyphs));\n case 0x00030000:\n break;\n case 0x00040000:\n return (this.map = function() {\n var _j, _ref, _results1;\n _results1 = [];\n for (\n i = _j = 0, _ref = this.file.maxp.numGlyphs;\n 0 <= _ref ? _j < _ref : _j > _ref;\n i = 0 <= _ref ? ++_j : --_j\n ) {\n _results1.push(data.readUInt32());\n }\n return _results1;\n }.call(this));\n }\n };\n /*PostTable.prototype.glyphFor = function (code) {\n var index;\n switch (this.format) {\n case 0x00010000:\n return POSTSCRIPT_GLYPHS[code] || '.notdef';\n case 0x00020000:\n index = this.glyphNameIndex[code];\n if (index <= 257) {\n return POSTSCRIPT_GLYPHS[index];\n }\n else {\n return this.names[index - 258] || '.notdef';\n }\n break;\n case 0x00025000:\n return POSTSCRIPT_GLYPHS[code + this.offsets[code]] || '.notdef';\n case 0x00030000:\n return '.notdef';\n case 0x00040000:\n return this.map[code] || 0xFFFF;\n }\n };*/\n /*PostTable.prototype.encode = function (mapping) {\n var id, index, indexes, position, post, raw, string, strings, table, _i, _j, _k, _len, _len1, _len2;\n if (!this.exists) {\n return null;\n }\n raw = this.raw();\n if (this.format === 0x00030000) {\n return raw;\n }\n table = new Data(raw.slice(0, 32));\n table.writeUInt32(0x00020000);\n table.pos = 32;\n indexes = [];\n strings = [];\n for (_i = 0, _len = mapping.length; _i < _len; _i++) {\n id = mapping[_i];\n post = this.glyphFor(id);\n position = POSTSCRIPT_GLYPHS.indexOf(post);\n if (position !== -1) {\n indexes.push(position);\n }\n else {\n indexes.push(257 + strings.length);\n strings.push(post);\n }\n }\n table.writeUInt16(Object.keys(mapping).length);\n for (_j = 0, _len1 = indexes.length; _j < _len1; _j++) {\n index = indexes[_j];\n table.writeUInt16(index);\n }\n for (_k = 0, _len2 = strings.length; _k < _len2; _k++) {\n string = strings[_k];\n table.writeByte(string.length);\n table.writeString(string);\n }\n return table.data;\n };*/\n POSTSCRIPT_GLYPHS = \".notdef .null nonmarkingreturn space exclam quotedbl numbersign dollar percent\\nampersand quotesingle parenleft parenright asterisk plus comma hyphen period slash\\nzero one two three four five six seven eight nine colon semicolon less equal greater\\nquestion 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\\nbracketleft backslash bracketright asciicircum underscore grave\\na 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\\nbraceleft bar braceright asciitilde Adieresis Aring Ccedilla Eacute Ntilde Odieresis\\nUdieresis aacute agrave acircumflex adieresis atilde aring ccedilla eacute egrave\\necircumflex edieresis iacute igrave icircumflex idieresis ntilde oacute ograve\\nocircumflex odieresis otilde uacute ugrave ucircumflex udieresis dagger degree cent\\nsterling section bullet paragraph germandbls registered copyright trademark acute\\ndieresis notequal AE Oslash infinity plusminus lessequal greaterequal yen mu\\npartialdiff summation product pi integral ordfeminine ordmasculine Omega ae oslash\\nquestiondown exclamdown logicalnot radical florin approxequal Delta guillemotleft\\nguillemotright ellipsis nonbreakingspace Agrave Atilde Otilde OE oe endash emdash\\nquotedblleft quotedblright quoteleft quoteright divide lozenge ydieresis Ydieresis\\nfraction currency guilsinglleft guilsinglright fi fl daggerdbl periodcentered\\nquotesinglbase quotedblbase perthousand Acircumflex Ecircumflex Aacute Edieresis\\nEgrave Iacute Icircumflex Idieresis Igrave Oacute Ocircumflex apple Ograve Uacute\\nUcircumflex Ugrave dotlessi circumflex tilde macron breve dotaccent ring cedilla\\nhungarumlaut ogonek caron Lslash lslash Scaron scaron Zcaron zcaron brokenbar Eth\\neth Yacute yacute Thorn thorn minus multiply onesuperior twosuperior threesuperior\\nonehalf onequarter threequarters franc Gbreve gbreve Idotaccent Scedilla scedilla\\nCacute cacute Ccaron ccaron dcroat\".split(\n /\\s+/g\n );\n return PostTable;\n})(Table);\n\n/*********************************************************************************************************/\n/* function : NameEntry */\n/* comment : Store copyright information, platformID, encodingID, and languageID in the NameEntry object.*/\n/*********************************************************************************************************/\nvar NameEntry = (function() {\n function NameEntry(raw, entry) {\n this.raw = raw;\n this.length = raw.length;\n this.platformID = entry.platformID;\n this.encodingID = entry.encodingID;\n this.languageID = entry.languageID;\n }\n return NameEntry;\n})();\n\nvar NameTable = (function(_super) {\n var subsetTag;\n __extends(NameTable, _super);\n\n function NameTable() {\n return NameTable.__super__.constructor.apply(this, arguments);\n }\n NameTable.prototype.tag = \"name\";\n NameTable.prototype.parse = function(data) {\n var count,\n entries,\n entry,\n i,\n name,\n stringOffset,\n strings,\n text,\n _j,\n _len,\n _name;\n data.pos = this.offset;\n data.readShort(); //format\n count = data.readShort();\n stringOffset = data.readShort();\n entries = [];\n for (\n i = 0;\n 0 <= count ? i < count : i > count;\n i = 0 <= count ? ++i : --i\n ) {\n entries.push({\n platformID: data.readShort(),\n encodingID: data.readShort(),\n languageID: data.readShort(),\n nameID: data.readShort(),\n length: data.readShort(),\n offset: this.offset + stringOffset + data.readShort()\n });\n }\n strings = {};\n for (i = _j = 0, _len = entries.length; _j < _len; i = ++_j) {\n entry = entries[i];\n data.pos = entry.offset;\n text = data.readString(entry.length);\n name = new NameEntry(text, entry);\n if (strings[(_name = entry.nameID)] == null) {\n strings[_name] = [];\n }\n strings[entry.nameID].push(name);\n }\n this.strings = strings;\n this.copyright = strings[0];\n this.fontFamily = strings[1];\n this.fontSubfamily = strings[2];\n this.uniqueSubfamily = strings[3];\n this.fontName = strings[4];\n this.version = strings[5];\n try {\n this.postscriptName = strings[6][0].raw.replace(\n /[\\x00-\\x19\\x80-\\xff]/g,\n \"\"\n );\n } catch (e) {\n this.postscriptName = strings[4][0].raw.replace(\n /[\\x00-\\x19\\x80-\\xff]/g,\n \"\"\n );\n }\n this.trademark = strings[7];\n this.manufacturer = strings[8];\n this.designer = strings[9];\n this.description = strings[10];\n this.vendorUrl = strings[11];\n this.designerUrl = strings[12];\n this.license = strings[13];\n this.licenseUrl = strings[14];\n this.preferredFamily = strings[15];\n this.preferredSubfamily = strings[17];\n this.compatibleFull = strings[18];\n return (this.sampleText = strings[19]);\n };\n subsetTag = \"AAAAAA\";\n /*NameTable.prototype.encode = function () {\n var id, list, nameID, nameTable, postscriptName, strCount, strTable, string, strings, table, val, _i, _len, _ref;\n strings = {};\n _ref = this.strings;\n for (id in _ref) {\n val = _ref[id];\n strings[id] = val;\n }\n postscriptName = new NameEntry(\"\" + subsetTag + \"+\" + this.postscriptName, {\n platformID: 1\n , encodingID: 0\n , languageID: 0\n });\n strings[6] = [postscriptName];\n subsetTag = successorOf(subsetTag);\n strCount = 0;\n for (id in strings) {\n list = strings[id];\n if (list != null) {\n strCount += list.length;\n }\n }\n table = new Data;\n strTable = new Data;\n table.writeShort(0);\n table.writeShort(strCount);\n table.writeShort(6 + 12 * strCount);\n for (nameID in strings) {\n list = strings[nameID];\n if (list != null) {\n for (_i = 0, _len = list.length; _i < _len; _i++) {\n string = list[_i];\n table.writeShort(string.platformID);\n table.writeShort(string.encodingID);\n table.writeShort(string.languageID);\n table.writeShort(nameID);\n table.writeShort(string.length);\n table.writeShort(strTable.pos);\n strTable.writeString(string.raw);\n }\n }\n }\n return nameTable = {\n postscriptName: postscriptName.raw\n , table: table.data.concat(strTable.data)\n };\n };*/\n return NameTable;\n})(Table);\n\nvar MaxpTable = (function(_super) {\n __extends(MaxpTable, _super);\n\n function MaxpTable() {\n return MaxpTable.__super__.constructor.apply(this, arguments);\n }\n MaxpTable.prototype.tag = \"maxp\";\n MaxpTable.prototype.parse = function(data) {\n data.pos = this.offset;\n this.version = data.readInt();\n this.numGlyphs = data.readUInt16();\n this.maxPoints = data.readUInt16();\n this.maxContours = data.readUInt16();\n this.maxCompositePoints = data.readUInt16();\n this.maxComponentContours = data.readUInt16();\n this.maxZones = data.readUInt16();\n this.maxTwilightPoints = data.readUInt16();\n this.maxStorage = data.readUInt16();\n this.maxFunctionDefs = data.readUInt16();\n this.maxInstructionDefs = data.readUInt16();\n this.maxStackElements = data.readUInt16();\n this.maxSizeOfInstructions = data.readUInt16();\n this.maxComponentElements = data.readUInt16();\n return (this.maxComponentDepth = data.readUInt16());\n };\n /*MaxpTable.prototype.encode = function (ids) {\n var table;\n table = new Data;\n table.writeInt(this.version);\n table.writeUInt16(ids.length);\n table.writeUInt16(this.maxPoints);\n table.writeUInt16(this.maxContours);\n table.writeUInt16(this.maxCompositePoints);\n table.writeUInt16(this.maxComponentContours);\n table.writeUInt16(this.maxZones);\n table.writeUInt16(this.maxTwilightPoints);\n table.writeUInt16(this.maxStorage);\n table.writeUInt16(this.maxFunctionDefs);\n table.writeUInt16(this.maxInstructionDefs);\n table.writeUInt16(this.maxStackElements);\n table.writeUInt16(this.maxSizeOfInstructions);\n table.writeUInt16(this.maxComponentElements);\n table.writeUInt16(this.maxComponentDepth);\n return table.data;\n };*/\n return MaxpTable;\n})(Table);\n\nvar HmtxTable = (function(_super) {\n __extends(HmtxTable, _super);\n\n function HmtxTable() {\n return HmtxTable.__super__.constructor.apply(this, arguments);\n }\n HmtxTable.prototype.tag = \"hmtx\";\n HmtxTable.prototype.parse = function(data) {\n var i, last, lsbCount, m, _j, _ref, _results;\n data.pos = this.offset;\n this.metrics = [];\n for (\n i = 0, _ref = this.file.hhea.numberOfMetrics;\n 0 <= _ref ? i < _ref : i > _ref;\n i = 0 <= _ref ? ++i : --i\n ) {\n this.metrics.push({\n advance: data.readUInt16(),\n lsb: data.readInt16()\n });\n }\n lsbCount = this.file.maxp.numGlyphs - this.file.hhea.numberOfMetrics;\n this.leftSideBearings = (function() {\n var _j, _results;\n _results = [];\n for (\n i = _j = 0;\n 0 <= lsbCount ? _j < lsbCount : _j > lsbCount;\n i = 0 <= lsbCount ? ++_j : --_j\n ) {\n _results.push(data.readInt16());\n }\n return _results;\n })();\n this.widths = function() {\n var _j, _len, _ref1, _results;\n _ref1 = this.metrics;\n _results = [];\n for (_j = 0, _len = _ref1.length; _j < _len; _j++) {\n m = _ref1[_j];\n _results.push(m.advance);\n }\n return _results;\n }.call(this);\n last = this.widths[this.widths.length - 1];\n _results = [];\n for (\n i = _j = 0;\n 0 <= lsbCount ? _j < lsbCount : _j > lsbCount;\n i = 0 <= lsbCount ? ++_j : --_j\n ) {\n _results.push(this.widths.push(last));\n }\n return _results;\n };\n /***************************************************************/\n /* function : forGlyph */\n /* comment : Returns the advance width and lsb for this glyph. */\n /***************************************************************/\n HmtxTable.prototype.forGlyph = function(id) {\n if (id in this.metrics) {\n return this.metrics[id];\n }\n return {\n advance: this.metrics[this.metrics.length - 1].advance,\n lsb: this.leftSideBearings[id - this.metrics.length]\n };\n };\n /*HmtxTable.prototype.encode = function (mapping) {\n var id, metric, table, _i, _len;\n table = new Data;\n for (_i = 0, _len = mapping.length; _i < _len; _i++) {\n id = mapping[_i];\n metric = this.forGlyph(id);\n table.writeUInt16(metric.advance);\n table.writeUInt16(metric.lsb);\n }\n return table.data;\n };*/\n return HmtxTable;\n})(Table);\n\nvar __slice = [].slice;\n\nvar GlyfTable = (function(_super) {\n __extends(GlyfTable, _super);\n\n function GlyfTable() {\n return GlyfTable.__super__.constructor.apply(this, arguments);\n }\n GlyfTable.prototype.tag = \"glyf\";\n GlyfTable.prototype.parse = function() {\n return (this.cache = {});\n };\n GlyfTable.prototype.glyphFor = function(id) {\n var data,\n index,\n length,\n loca,\n numberOfContours,\n raw,\n xMax,\n xMin,\n yMax,\n yMin;\n if (id in this.cache) {\n return this.cache[id];\n }\n loca = this.file.loca;\n data = this.file.contents;\n index = loca.indexOf(id);\n length = loca.lengthOf(id);\n if (length === 0) {\n return (this.cache[id] = null);\n }\n data.pos = this.offset + index;\n raw = new Data(data.read(length));\n numberOfContours = raw.readShort();\n xMin = raw.readShort();\n yMin = raw.readShort();\n xMax = raw.readShort();\n yMax = raw.readShort();\n if (numberOfContours === -1) {\n this.cache[id] = new CompoundGlyph(raw, xMin, yMin, xMax, yMax);\n } else {\n this.cache[id] = new SimpleGlyph(\n raw,\n numberOfContours,\n xMin,\n yMin,\n xMax,\n yMax\n );\n }\n return this.cache[id];\n };\n GlyfTable.prototype.encode = function(glyphs, mapping, old2new) {\n var glyph, id, offsets, table, _i, _len;\n table = [];\n offsets = [];\n for (_i = 0, _len = mapping.length; _i < _len; _i++) {\n id = mapping[_i];\n glyph = glyphs[id];\n offsets.push(table.length);\n if (glyph) {\n table = table.concat(glyph.encode(old2new));\n }\n }\n offsets.push(table.length);\n return {\n table: table,\n offsets: offsets\n };\n };\n return GlyfTable;\n})(Table);\n\nvar SimpleGlyph = (function() {\n /**************************************************************************/\n /* function : SimpleGlyph */\n /* comment : Stores raw, xMin, yMin, xMax, and yMax values for this glyph.*/\n /**************************************************************************/\n function SimpleGlyph(raw, numberOfContours, xMin, yMin, xMax, yMax) {\n this.raw = raw;\n this.numberOfContours = numberOfContours;\n this.xMin = xMin;\n this.yMin = yMin;\n this.xMax = xMax;\n this.yMax = yMax;\n this.compound = false;\n }\n SimpleGlyph.prototype.encode = function() {\n return this.raw.data;\n };\n return SimpleGlyph;\n})();\n\nvar CompoundGlyph = (function() {\n var ARG_1_AND_2_ARE_WORDS,\n MORE_COMPONENTS,\n WE_HAVE_AN_X_AND_Y_SCALE,\n WE_HAVE_A_SCALE,\n WE_HAVE_A_TWO_BY_TWO,\n WE_HAVE_INSTRUCTIONS;\n ARG_1_AND_2_ARE_WORDS = 0x0001;\n WE_HAVE_A_SCALE = 0x0008;\n MORE_COMPONENTS = 0x0020;\n WE_HAVE_AN_X_AND_Y_SCALE = 0x0040;\n WE_HAVE_A_TWO_BY_TWO = 0x0080;\n WE_HAVE_INSTRUCTIONS = 0x0100;\n\n /********************************************************************************************************************/\n /* function : CompoundGlypg generator */\n /* comment : It stores raw, xMin, yMin, xMax, yMax, glyph id, and glyph offset for the corresponding compound glyph.*/\n /********************************************************************************************************************/\n function CompoundGlyph(raw, xMin, yMin, xMax, yMax) {\n var data, flags;\n this.raw = raw;\n this.xMin = xMin;\n this.yMin = yMin;\n this.xMax = xMax;\n this.yMax = yMax;\n this.compound = true;\n this.glyphIDs = [];\n this.glyphOffsets = [];\n data = this.raw;\n while (true) {\n flags = data.readShort();\n this.glyphOffsets.push(data.pos);\n this.glyphIDs.push(data.readUInt16());\n if (!(flags & MORE_COMPONENTS)) {\n break;\n }\n if (flags & ARG_1_AND_2_ARE_WORDS) {\n data.pos += 4;\n } else {\n data.pos += 2;\n }\n if (flags & WE_HAVE_A_TWO_BY_TWO) {\n data.pos += 8;\n } else if (flags & WE_HAVE_AN_X_AND_Y_SCALE) {\n data.pos += 4;\n } else if (flags & WE_HAVE_A_SCALE) {\n data.pos += 2;\n }\n }\n }\n /****************************************************************************************************************/\n /* function : CompoundGlypg encode */\n /* comment : After creating a table for the characters you typed, you call directory.encode to encode the table.*/\n /****************************************************************************************************************/\n CompoundGlyph.prototype.encode = function() {\n var i, result, _len, _ref;\n result = new Data(__slice.call(this.raw.data));\n _ref = this.glyphIDs;\n for (i = 0, _len = _ref.length; i < _len; ++i) {\n result.pos = this.glyphOffsets[i];\n }\n return result.data;\n };\n return CompoundGlyph;\n})();\n\nvar LocaTable = (function(_super) {\n __extends(LocaTable, _super);\n\n function LocaTable() {\n return LocaTable.__super__.constructor.apply(this, arguments);\n }\n LocaTable.prototype.tag = \"loca\";\n LocaTable.prototype.parse = function(data) {\n var format, i;\n data.pos = this.offset;\n format = this.file.head.indexToLocFormat;\n if (format === 0) {\n return (this.offsets = function() {\n var _ref, _results;\n _results = [];\n for (i = 0, _ref = this.length; i < _ref; i += 2) {\n _results.push(data.readUInt16() * 2);\n }\n return _results;\n }.call(this));\n } else {\n return (this.offsets = function() {\n var _ref, _results;\n _results = [];\n for (i = 0, _ref = this.length; i < _ref; i += 4) {\n _results.push(data.readUInt32());\n }\n return _results;\n }.call(this));\n }\n };\n LocaTable.prototype.indexOf = function(id) {\n return this.offsets[id];\n };\n LocaTable.prototype.lengthOf = function(id) {\n return this.offsets[id + 1] - this.offsets[id];\n };\n LocaTable.prototype.encode = function(offsets, activeGlyphs) {\n var LocaTable = new Uint32Array(this.offsets.length);\n var glyfPtr = 0;\n var listGlyf = 0;\n for (var k = 0; k < LocaTable.length; ++k) {\n LocaTable[k] = glyfPtr;\n if (listGlyf < activeGlyphs.length && activeGlyphs[listGlyf] == k) {\n ++listGlyf;\n LocaTable[k] = glyfPtr;\n var start = this.offsets[k];\n var len = this.offsets[k + 1] - start;\n if (len > 0) {\n glyfPtr += len;\n }\n }\n }\n var newLocaTable = new Array(LocaTable.length * 4);\n for (var j = 0; j < LocaTable.length; ++j) {\n newLocaTable[4 * j + 3] = LocaTable[j] & 0x000000ff;\n newLocaTable[4 * j + 2] = (LocaTable[j] & 0x0000ff00) >> 8;\n newLocaTable[4 * j + 1] = (LocaTable[j] & 0x00ff0000) >> 16;\n newLocaTable[4 * j] = (LocaTable[j] & 0xff000000) >> 24;\n }\n return newLocaTable;\n };\n return LocaTable;\n})(Table);\n\n/************************************************************************************/\n/* function : invert */\n/* comment : Change the object's (key: value) to create an object with (value: key).*/\n/************************************************************************************/\nvar invert = function(object) {\n var key, ret, val;\n ret = {};\n for (key in object) {\n val = object[key];\n ret[val] = key;\n }\n return ret;\n};\n\n/*var successorOf = function (input) {\n var added, alphabet, carry, i, index, isUpperCase, last, length, next, result;\n alphabet = 'abcdefghijklmnopqrstuvwxyz';\n length = alphabet.length;\n result = input;\n i = input.length;\n while (i >= 0) {\n last = input.charAt(--i);\n if (isNaN(last)) {\n index = alphabet.indexOf(last.toLowerCase());\n if (index === -1) {\n next = last;\n carry = true;\n }\n else {\n next = alphabet.charAt((index + 1) % length);\n isUpperCase = last === last.toUpperCase();\n if (isUpperCase) {\n next = next.toUpperCase();\n }\n carry = index + 1 >= length;\n if (carry && i === 0) {\n added = isUpperCase ? 'A' : 'a';\n result = added + next + result.slice(1);\n break;\n }\n }\n }\n else {\n next = +last + 1;\n carry = next > 9;\n if (carry) {\n next = 0;\n }\n if (carry && i === 0) {\n result = '1' + next + result.slice(1);\n break;\n }\n }\n result = result.slice(0, i) + next + result.slice(i + 1);\n if (!carry) {\n break;\n }\n }\n return result;\n };*/\n\nvar Subset = (function() {\n function Subset(font) {\n this.font = font;\n this.subset = {};\n this.unicodes = {};\n this.next = 33;\n }\n /*Subset.prototype.use = function (character) {\n var i, _i, _ref;\n if (typeof character === 'string') {\n for (i = _i = 0, _ref = character.length; 0 <= _ref ? _i < _ref : _i > _ref; i = 0 <= _ref ? ++_i : --_i) {\n this.use(character.charCodeAt(i));\n }\n return;\n }\n if (!this.unicodes[character]) {\n this.subset[this.next] = character;\n return this.unicodes[character] = this.next++;\n }\n };*/\n /*Subset.prototype.encodeText = function (text) {\n var char, i, string, _i, _ref;\n string = '';\n for (i = _i = 0, _ref = text.length; 0 <= _ref ? _i < _ref : _i > _ref; i = 0 <= _ref ? ++_i : --_i) {\n char = this.unicodes[text.charCodeAt(i)];\n string += String.fromCharCode(char);\n }\n return string;\n };*/\n /***************************************************************/\n /* function : generateCmap */\n /* comment : Returns the unicode cmap for this font. */\n /***************************************************************/\n Subset.prototype.generateCmap = function() {\n var mapping, roman, unicode, unicodeCmap, _ref;\n unicodeCmap = this.font.cmap.tables[0].codeMap;\n mapping = {};\n _ref = this.subset;\n for (roman in _ref) {\n unicode = _ref[roman];\n mapping[roman] = unicodeCmap[unicode];\n }\n return mapping;\n };\n /*Subset.prototype.glyphIDs = function () {\n var ret, roman, unicode, unicodeCmap, val, _ref;\n unicodeCmap = this.font.cmap.tables[0].codeMap;\n ret = [0];\n _ref = this.subset;\n for (roman in _ref) {\n unicode = _ref[roman];\n val = unicodeCmap[unicode];\n if ((val != null) && __indexOf.call(ret, val) < 0) {\n ret.push(val);\n }\n }\n return ret.sort();\n };*/\n /******************************************************************/\n /* function : glyphsFor */\n /* comment : Returns simple glyph objects for the input character.*/\n /******************************************************************/\n Subset.prototype.glyphsFor = function(glyphIDs) {\n var additionalIDs, glyph, glyphs, id, _i, _len, _ref;\n glyphs = {};\n for (_i = 0, _len = glyphIDs.length; _i < _len; _i++) {\n id = glyphIDs[_i];\n glyphs[id] = this.font.glyf.glyphFor(id);\n }\n additionalIDs = [];\n for (id in glyphs) {\n glyph = glyphs[id];\n if (glyph != null ? glyph.compound : void 0) {\n additionalIDs.push.apply(additionalIDs, glyph.glyphIDs);\n }\n }\n if (additionalIDs.length > 0) {\n _ref = this.glyphsFor(additionalIDs);\n for (id in _ref) {\n glyph = _ref[id];\n glyphs[id] = glyph;\n }\n }\n return glyphs;\n };\n /***************************************************************/\n /* function : encode */\n /* comment : Encode various tables for the characters you use. */\n /***************************************************************/\n Subset.prototype.encode = function(glyID, indexToLocFormat) {\n var cmap,\n code,\n glyf,\n glyphs,\n id,\n ids,\n loca,\n new2old,\n newIDs,\n nextGlyphID,\n old2new,\n oldID,\n oldIDs,\n tables,\n _ref;\n cmap = CmapTable.encode(this.generateCmap(), \"unicode\");\n glyphs = this.glyphsFor(glyID);\n old2new = {\n 0: 0\n };\n _ref = cmap.charMap;\n for (code in _ref) {\n ids = _ref[code];\n old2new[ids.old] = ids[\"new\"];\n }\n nextGlyphID = cmap.maxGlyphID;\n for (oldID in glyphs) {\n if (!(oldID in old2new)) {\n old2new[oldID] = nextGlyphID++;\n }\n }\n new2old = invert(old2new);\n newIDs = Object.keys(new2old).sort(function(a, b) {\n return a - b;\n });\n oldIDs = (function() {\n var _i, _len, _results;\n _results = [];\n for (_i = 0, _len = newIDs.length; _i < _len; _i++) {\n id = newIDs[_i];\n _results.push(new2old[id]);\n }\n return _results;\n })();\n glyf = this.font.glyf.encode(glyphs, oldIDs, old2new);\n loca = this.font.loca.encode(glyf.offsets, oldIDs);\n tables = {\n cmap: this.font.cmap.raw(),\n glyf: glyf.table,\n loca: loca,\n hmtx: this.font.hmtx.raw(),\n hhea: this.font.hhea.raw(),\n maxp: this.font.maxp.raw(),\n post: this.font.post.raw(),\n name: this.font.name.raw(),\n head: this.font.head.encode(indexToLocFormat)\n };\n if (this.font.os2.exists) {\n tables[\"OS/2\"] = this.font.os2.raw();\n }\n return this.font.directory.encode(tables);\n };\n return Subset;\n})();\n\njsPDF.API.PDFObject = (function() {\n var pad;\n\n function PDFObject() {}\n pad = function(str, length) {\n return (Array(length + 1).join(\"0\") + str).slice(-length);\n };\n /*****************************************************************************/\n /* function : convert */\n /* comment :Converts pdf tag's / FontBBox and array values in / W to strings */\n /*****************************************************************************/\n PDFObject.convert = function(object) {\n var e, items, key, out, val;\n if (Array.isArray(object)) {\n items = (function() {\n var _i, _len, _results;\n _results = [];\n for (_i = 0, _len = object.length; _i < _len; _i++) {\n e = object[_i];\n _results.push(PDFObject.convert(e));\n }\n return _results;\n })().join(\" \");\n return \"[\" + items + \"]\";\n } else if (typeof object === \"string\") {\n return \"/\" + object;\n } else if (object != null ? object.isString : void 0) {\n return \"(\" + object + \")\";\n } else if (object instanceof Date) {\n return (\n \"(D:\" +\n pad(object.getUTCFullYear(), 4) +\n pad(object.getUTCMonth(), 2) +\n pad(object.getUTCDate(), 2) +\n pad(object.getUTCHours(), 2) +\n pad(object.getUTCMinutes(), 2) +\n pad(object.getUTCSeconds(), 2) +\n \"Z)\"\n );\n } else if ({}.toString.call(object) === \"[object Object]\") {\n out = [\"<<\"];\n for (key in object) {\n val = object[key];\n out.push(\"/\" + key + \" \" + PDFObject.convert(val));\n }\n out.push(\">>\");\n return out.join(\"\\n\");\n } else {\n return \"\" + object;\n }\n };\n return PDFObject;\n})();\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nlet getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default {\n randomUUID\n};","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import { createContext } from \"react\";\n\nconst RadioContext = createContext({});\n\nexport default RadioContext;","import RadioContext from \"./RadioContext\";\n\nfunction RadioGroup({ label, children, ...rest }) {\n return (\n
    \n {label}\n {children}\n
    \n );\n}\n\nexport default RadioGroup;","import { useContext } from \"react\";\nimport RadioContext from \"./RadioContext\";\n\nfunction Radio({ children, value, name, defaultChecked, disabled }) {\n const group = useContext(RadioContext);\n\n return (\n \n );\n}\n\nexport default Radio;","export const store = {\n _origin: 'https://api.emailjs.com',\n};\n","export const validateParams = (publicKey, serviceID, templateID) => {\n if (!publicKey) {\n throw 'The public key is required. Visit https://dashboard.emailjs.com/admin/account';\n }\n if (!serviceID) {\n throw 'The service ID is required. Visit https://dashboard.emailjs.com/admin';\n }\n if (!templateID) {\n throw 'The template ID is required. Visit https://dashboard.emailjs.com/admin/templates';\n }\n return true;\n};\n","export class EmailJSResponseStatus {\n constructor(httpResponse) {\n this.status = httpResponse ? httpResponse.status : 0;\n this.text = httpResponse ? httpResponse.responseText : 'Network Error';\n }\n}\n","import { EmailJSResponseStatus } from '../models/EmailJSResponseStatus';\nimport { store } from '../store/store';\nexport const sendPost = (url, data, headers = {}) => {\n return new Promise((resolve, reject) => {\n const xhr = new XMLHttpRequest();\n xhr.addEventListener('load', ({ target }) => {\n const responseStatus = new EmailJSResponseStatus(target);\n if (responseStatus.status === 200 || responseStatus.text === 'OK') {\n resolve(responseStatus);\n }\n else {\n reject(responseStatus);\n }\n });\n xhr.addEventListener('error', ({ target }) => {\n reject(new EmailJSResponseStatus(target));\n });\n xhr.open('POST', store._origin + url, true);\n Object.keys(headers).forEach((key) => {\n xhr.setRequestHeader(key, headers[key]);\n });\n xhr.send(data);\n });\n};\n","import { init } from './methods/init/init';\nimport { send } from './methods/send/send';\nimport { sendForm } from './methods/sendForm/sendForm';\nexport { init, send, sendForm };\nexport default {\n init,\n send,\n sendForm,\n};\n","import { store } from '../../store/store';\nimport { validateParams } from '../../utils/validateParams';\nimport { sendPost } from '../../api/sendPost';\n/**\n * Send a template to the specific EmailJS service\n * @param {string} serviceID - the EmailJS service ID\n * @param {string} templateID - the EmailJS template ID\n * @param {object} templatePrams - the template params, what will be set to the EmailJS template\n * @param {string} publicKey - the EmailJS public key\n * @returns {Promise}\n */\nexport const send = (serviceID, templateID, templatePrams, publicKey) => {\n const uID = publicKey || store._userID;\n validateParams(uID, serviceID, templateID);\n const params = {\n lib_version: '3.11.0',\n user_id: uID,\n service_id: serviceID,\n template_id: templateID,\n template_params: templatePrams,\n };\n return sendPost('/api/v1.0/email/send', JSON.stringify(params), {\n 'Content-type': 'application/json',\n });\n};\n","import { useEffect, useState, useRef } from \"react\";\nimport { firestore, storage } from \"../firebase.js\";\nimport { collection, doc, addDoc, getDoc } from \"firebase/firestore\";\nimport { ref, uploadBytes, getDownloadURL } from \"firebase/storage\";\nimport html2canvas from 'html2canvas';\nimport { jsPDF } from 'jspdf';\nimport { v4 as uuidv4 } from 'uuid';\nimport { Link } from \"react-router-dom\";\nimport LogoImageUrl from '../asset/logos.png';\nimport RadioGroup from \"./components/RadioGroup\";\nimport Radio from \"./components/Radio\";\nimport Agreebox from \"./components/Agreebox\";\nimport Logo from '../asset/logos.png'\nimport emailjs from '@emailjs/browser';\nimport '../css/Purchase.css';\nimport '../css/Result.css';\nimport '../css/modal.css';\n\nfunction PurchaseForm() {\n\n //견적용 날짜 포매팅\n const formatDate = (date) => {\n const year = date.getFullYear();\n const month = (date.getMonth() + 1).toString().padStart(2, '0');\n const day = date.getDate().toString().padStart(2, '0');\n return `${year}년 ${month}월 ${day}일`;\n };\n\n\nconst [page, setPage] = useState(0);\nlet timeoutId;\n\nconst [isModalOpen, setIsModalOpen] = useState(false);\n\nconst [products, setProducts] = useState([\n {\n id: Date.now(),\n name: '',\n option: '',\n quantity: '',\n price: '',\n link: '',\n image: null,\n },\n ]);\n\n const handleInputChange = (index, field, value) => {\n const updated = [...products];\n updated[index][field] = value;\n setProducts(updated);\n };\n\n const handleImageUpdate = (index, url) => {\n const updated = [...products];\n updated[index].image = url;\n setProducts(updated);\n };\n\n const addProduct = () => {\n if (products.length >= 10) return;\n setProducts([\n ...products,\n {\n id: Date.now(),\n name: '',\n option: '',\n quantity: '',\n price: '',\n link: '',\n image: null,\n },\n ]);\n };\n\n const removeProduct = (index) => {\n if (index === 0) return;\n const updated = [...products];\n updated.splice(index, 1);\n setProducts(updated);\n };\n\n\nconst openModal = () => setIsModalOpen(true);\nconst closeModal = () => setIsModalOpen(false);\n\nfunction DualSectionImageUploader({ image, onImageChange, onRemove }) {\n const fileInputRef = useRef(null);\n const pasteRef = useRef(null);\n \n useEffect(() => {\n const handlePaste = (e) => {\n if (!pasteRef.current || !pasteRef.current.contains(document.activeElement)) return;\n \n const items = e.clipboardData?.items;\n if (!items) return;\n \n for (const item of items) {\n if (item.type.indexOf('image') !== -1) {\n const blob = item.getAsFile();\n if (blob) {\n const url = URL.createObjectURL(blob);\n onImageChange(blob, url);\n }\n }\n }\n };\n \n window.addEventListener('paste', handlePaste);\n return () => window.removeEventListener('paste', handlePaste);\n }, [onImageChange]);\n \n if (image) {\n return (\n \n \n \n ×\n \n \n );\n }\n \n return (\n \n {/* 왼쪽: 클릭 첨부 영역 */}\n fileInputRef.current.click()}\n style={{\n flex: 1,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: '#f0f0f0',\n fontSize: '12px',\n cursor: 'pointer',\n borderRight: '1px solid #ccc',\n }}\n >\n 제품 이미지 첨부\n {\n const file = e.target.files?.[0];\n if (file) {\n const url = URL.createObjectURL(file);\n onImageChange(file, url);\n }\n }}\n />\n \n \n {/* 오른쪽: 붙여넣기 영역 */}\n \n \n );\n }\nconst [prds, setPrds] = useState(\"\");\n\nuseEffect(() => {\n if (products.length === 0 || !products[0].name.trim()) {\n setPrds(\"\");\n } else if (products.length === 1) {\n setPrds(products[0].name);\n } else {\n setPrds(`${products[0].name} 외 ${products.length - 1}건`);\n }\n }, [products]);\n\nconst [b, setB] = useState(\"\");\nconst [c, setC] = useState(\"\");\nconst [e, setE] = useState(\"\");\nconst [f, setF] = useState(\"\");\nconst [g, setG] = useState(\"\");\n\nconst [address, setAddress] = useState(\"\");\nconst [code, setCode] = useState(\"\");\nconst [take, setTake] = useState(\"\");\nconst [cnCall, setCnCall] = useState(\"\");\n\nconst [owner, setOwner] = useState(\"\");\nconst [bank, setBank] = useState(\"\");\nconst [paycode, setPaycode] = useState(\"\");\n\nconst [i, setI] = useState(\"\");\nconst [j, setJ] = useState(\"\");\nconst [k, setK] = useState(\"\");\nconst [l, setL] = useState(\"\");\nconst [m, setM] = useState(false);\n\nconst [z, setZ] = useState(\"\");\n\nconst [t, setT] = useState(\"\");\n\nconst [p, setP] = useState(\"\");\nconst [q, setQ] = useState(\"\");\nconst [r, setR] = useState(\"\");\n\nconst [w, setW] = useState(\"\");\nconst [x, setX] = useState(\"\");\nconst [y, setY] = useState(\"\");\nconst [o, setO] = useState(\"\");\n\nconst [rr, setRr] = useState(\"\"); \n\nconst [result, setResult] = useState(null); //견적서 pdf\nconst [date, setDate] = useState(''); //견적날짜\n\nconst [loading, setLoading] = useState(false)\n\n\n // 컴포넌트가 마운트될 때 현재 날짜 설정\n useEffect(() => {\n setDate(formatDate(new Date()));\n }, []);\n\n\n\n\n const calC = async (event) => {\n try {\n const docRef = doc(firestore, 'purchase_admin', 'bigpie');\n const docSnapshot = await getDoc(docRef);\n \n if (docSnapshot.exists()) {\n const { w, x, y, z, v } = docSnapshot.data();\n \n let calculatedO;\n if (i <= v) {\n calculatedO = w;\n } else {\n calculatedO = Math.round(i * z * x);\n }\n \n const calculatedT = Math.round(i * z);\n const calculatedP = Math.floor(calculatedO * y);\n const calculatedQ = Math.round(i * z + calculatedO);\n const calculatedR = Math.round(calculatedQ + calculatedP);\n\n setZ(z);\n setP(calculatedP);\n setQ(calculatedQ);\n setR(calculatedR);\n setW(w);\n setX(x);\n setY(y);\n setO(calculatedO);\n setT(calculatedT);\n \n } else {\n console.error('Document not found');\n }\n } catch (error) {\n console.error('Error fetching document:', error);\n }\n };\n\n\n\nasync function handleNextClick() {\n //const firstProduct = products[0];\n if (!m) {\n alert(\"주의사항에 동의해주세요\");\n return;\n } if (!c || !e || !f || !g || !i || !k) {\n alert(\"필수 항목을 모두 입력해주세요\");\n return;\n }\n {/* if (\n !firstProduct.name.trim() ||\n !firstProduct.option.trim() ||\n !firstProduct.quantity ||\n !firstProduct.link.trim()\n ) {\n alert(\"결제대행 대상 제품의 이름, 옵션, 수량, 제품URL을 입력해주세요\");\n return;\n }\n */}\n setLoading(true);\n try {\n await calC(); // calC 함수의 작업이 완료될 때까지 기다림\n } catch (error) {\n console.error('Error in calC function:', error);\n } finally {\n setLoading(false); // 작업이 완료되면 로딩 상태를 false로 설정\n }\n\n setPage((currPage) => currPage + 1); // 페이지 이동\n window.scrollTo({ top: 0 }); // 페이지 상단으로 스크롤\n};\n \n\n\nconst onSubmit = async (event) => {\n event.preventDefault();\n\n if (!r) {\n alert(\"잠시만 기다려주세요\");\n return;\n }\n if (!c || !e || !f || !g || !i || !k) {\n alert(\"필수 항목을 모두 입력해주세요\");\n return;\n }\n\n alert(\"완료되었습니다\");\n const uniqueFolder = uuidv4(); // 고유 폴더 이름 생성\n\n try {\n\n setLoading(true);\n \n setRr(r);\n\n setTimeout(async () => {\n const canvasElement = await html2canvas(document.querySelector('.prcCanvas'));\n const imageData = canvasElement.toDataURL('image/png');\n const imgWidth = 210;\n const pageHeight = 295;\n const imgHeight = (canvasElement.height * imgWidth) / canvasElement.width;\n let heightLeft = imgHeight;\n \n const pdfDoc = new jsPDF('p', 'mm', 'a4', true);\n let position = 0;\n \n pdfDoc.addImage(imageData, 'PNG', 0, position, imgWidth, imgHeight, undefined, 'FAST');\n heightLeft -= pageHeight;\n \n while (heightLeft >= 0) {\n position = heightLeft - imgHeight;\n pdfDoc.addPage();\n pdfDoc.addImage(imageData, 'PNG', 0, position, imgWidth, imgHeight, undefined, 'FAST');\n heightLeft -= pageHeight;\n }\n \n const pdfBlob = pdfDoc.output('blob');\n\n\n \n const metadata = {\n //contentType: 'file/mime-type', // 파일 MIME 타입 설정\n contentType: 'application/pdf',\n //contentDisposition: `attachment; filename=\"중달이 결제대행 견적서_${c}님_${date}.pdf\"`, // 다운로드되도록 설정\n contentDisposition: `inline; filename=\"중달이 결제대행 견적서_${c}님_${date}.pdf\"`,\n };\n\n // Firebase Storage에 PDF 업로드\n const pdfFileRef = ref(storage, `prcRegister/${uniqueFolder}/results/result.pdf`);\n await uploadBytes(pdfFileRef, pdfBlob, metadata);\n const uploadedPdfFileURL = await getDownloadURL(pdfFileRef);\n setResult(uploadedPdfFileURL); // 상태 업데이트\n\n\n // 제품 이미지 업로드\n const uploadedProducts = await Promise.all(\n products.map(async (product, index) => {\n let imageUrl = '';\n if (product.image) {\n const imageRef = ref(storage, `prcRegister/${uniqueFolder}/products/${index}.jpg`);\n const response = await fetch(product.image);\n const blob = await response.blob();\n await uploadBytes(imageRef, blob);\n imageUrl = await getDownloadURL(imageRef);\n }\n\n return {\n name: product.name,\n option: product.option,\n quantity: product.quantity,\n price: product.price,\n link: product.link,\n imageUrl: imageUrl || null,\n };\n })\n );\n\n // 전체 제품 요약 문자열\n const productSummary = uploadedProducts\n .map((p, i) => \n `🔹 제품 #${i + 1}\n - 이름: ${p.name}\n - 옵션: ${p.option}\n - 수량: ${p.quantity}\n - 단가: ${p.price}\n - 링크: ${p.link}\n - 이미지: ${p.imageUrl}\n `\n )\n .join('\\n');\n\n\n\n // 파이어스토어에 데이터 저장\n await addDoc(collection(firestore, \"purchase\"), {\n\n id: b,\n prcName: c,\n phone: e,\n email: f,\n jungdari: g,\n\n address: address,\n code: code,\n take: take,\n cnCall: cnCall,\n\n owner: owner,\n bank: bank,\n paycode: paycode,\n\n total: i,\n delivery: k,\n note: l,\n agree: m,\n prdPrice: t,\n tax: p,\n estimate: q,\n totalPrice: r,\n\n z: z,\n taxRate: y,\n fee: o,\n feeRate: x,\n minimumFee: w,\n result: uploadedPdfFileURL,\n products: uploadedProducts,\n state: \"의뢰요청\",\n\n timestamp: new Date(),\n });\n\n \n const templateParams = {\n\n id: b,\n prcName: c,\n phone: e,\n email: f,\n jungdari: g,\n\n address: address,\n code: code,\n take: take,\n cnCall: cnCall,\n \n owner: owner,\n bank: bank,\n paycode: paycode,\n\n total: i,\n delivery: k,\n note: l,\n agree: m,\n prdPrice: t,\n tax: p,\n estimate: q,\n totalPrice: r,\n\n z: z,\n taxRate: y,\n fee: f,\n feeRate: x,\n minimumFee: w,\n state: \"의뢰요청\",\n\n timestamp: new Date(),\n uploadedPdfFileURL,\n productSummary, // 전체 요약 문자열\n };\n\n \n emailjs.send('service_mp685ax', 'template_s4a03eb', templateParams, 'etcL6FhB6gHZjSLnB')\n .then((result) => {\n console.log(result.text);\n\n setTimeout(() => setPage(currPage => currPage + 1), 0);\n window.scrollTo({ top: 0 });\n\n }, (error) => {\n console.log(error.text);\n });\n\n }, 0);\n\n } catch (error) {\n console.error('Error', error);\n }\n };\n\n\n\nuseEffect(() => {\n return () => clearTimeout(timeoutId);\n }, []);\n\n\n //핸드폰\n const handlePhoneChange = (e) => {\n const phoneNum = e.target.value;\n setE(phoneNum\n .replace(/[^0-9]/g, '')\n .replace(/^(\\d{0,3})(\\d{0,4})(\\d{0,4})$/g, \"$1-$2-$3\")\n .replace(/(\\-{1,2})$/g, \"\")\n );\n }\n\n //값에 콤마\n const valueComma = (feeNum) => {\n return feeNum.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n }\n\n\n\nconst Pages = () => {\n if (page === 0) {\n return(\n
    \n\n {loading &&
    \n \n \n \n
    }\n \n
    \n 결제대행 신청\n
    \n
    \n 신청자 정보 입력\n
    \n
    \n
    \n
    *신청자명
    \n (setC(event.target.value))}/>\n
    \n
    \n
    *연락처
    \n \n
    \n
    \n
    *이메일
    \n (setF(event.target.value))}/>\n
    \n
    \n
    *중달이닷컴 아이디
    \n (setG(event.target.value))}/>\n
    \n
    \n
    \n 1688 확인 정보 입력\n
    \n
    \n
    \n
    1688 ID
    \n (setB(event.target.value))}/>\n
    \n
    \n
    중국 주소
    \n (setAddress(event.target.value))}/>\n
    \n
    \n
    중국 우편번호
    \n (setCode(event.target.value))}/>\n
    \n
    \n
    수취인
    \n (setTake(event.target.value))}/>\n
    \n
    \n
    중국 연락처
    \n (setCnCall(event.target.value))}/>\n
    \n
    \n
    예금주명 (입금 받는 사람)
    \n (setOwner(event.target.value))}/>\n
    \n
    \n
    은행명
    \n (setBank(event.target.value))}/>\n
    \n
    \n
    계좌번호
    \n (setPaycode(event.target.value))}/>\n
    \n
    \n \n
    \n\n
    \n
    *총 결제 요청 금액 (CNY)
    \n (setI(event.target.value))} />\n
    \n\n
    \n
    제품 정보
    \n 제품 정보 업로드\n \n
    \n\n {/* 모달 */}\n {isModalOpen && (\n
    \n
    e.stopPropagation()}>\n
    \n

    제품 정보 업로드

    \n \n
    \n
    \n {products.map((product, index) => (\n
    \n {/* 왼쪽 이미지 */}\n {\n const updated = [...products];\n updated[index].image = url;\n setProducts(updated);\n }}\n onRemove={() => {\n const updated = [...products];\n updated[index].image = null;\n setProducts(updated);\n }}\n />\n\n {/* 오른쪽 입력 영역 */}\n
    \n handleInputChange(index, 'name', e.target.value)}\n />\n handleInputChange(index, 'option', e.target.value)}\n />\n handleInputChange(index, 'quantity', e.target.value)}\n />\n handleInputChange(index, 'price', e.target.value)}\n />\n handleInputChange(index, 'link', e.target.value)}\n />\n
    \n\n {/* 삭제 버튼 */}\n
    \n removeProduct(index)}\n disabled={index === 0}\n style={{ color: index === 0 ? '#ccc' : 'red' }}\n >\n 삭제\n \n
    \n
    \n ))}\n\n\n\n
    \n {products.length < 10 && (\n \n )}\n \n
    \n\n
    \n
    \n
    \n )}\n\n
    \n\n
    \n\n
    *중달이닷컴 배송대행 신청여부
    \n \n YES\n NO\n \n
    \n\n\n
    \n
    \n
    비고
    \n