From 6f8b368f188290e52675ce6170eb0bd7ccbc6092 Mon Sep 17 00:00:00 2001 From: Andrii Kostenko Date: Mon, 11 Sep 2023 16:53:14 +0000 Subject: [PATCH] svg path support, border radius support --- README.md | 1 - src/pdf.ts | 39 +++++++++--------- src/png.ts | 2 + src/png_browser.ts | 2 +- src/svg.ts | 25 ++++------- src/tests/browser.test.ts | 24 +++++++++++ src/tests/test.ts | 24 +++++++++++ src/typing/types.ts | 5 +++ src/utils.ts | 32 +++++++++++++- test_data/golden/browser_qr.pdf | Bin 1958 -> 4382 bytes test_data/golden/browser_qr.svg | 2 +- .../golden/browser_qr_logo_arraybuffer.pdf | Bin 11164 -> 18865 bytes .../golden/browser_qr_with_border_radius.pdf | Bin 0 -> 17985 bytes .../golden/browser_qr_with_border_radius.png | Bin 0 -> 809 bytes .../golden/browser_qr_with_border_radius.svg | 1 + test_data/golden/browser_qr_with_colors.pdf | Bin 1958 -> 4378 bytes test_data/golden/browser_qr_with_colors.svg | 2 +- .../golden/browser_qr_with_colors_hex.svg | 2 +- test_data/golden/browser_qr_with_ec_level.svg | 2 +- test_data/golden/browser_qr_with_logo.pdf | Bin 11164 -> 11163 bytes test_data/golden/browser_qr_with_logo.svg | 2 +- .../browser_qr_with_logo_as_arraybuffer.svg | 2 +- ...rowser_qr_with_logo_as_arraybuffer_jpg.svg | 2 +- test_data/golden/browser_qr_with_size.svg | 2 +- test_data/golden/qr.pdf | Bin 3363 -> 4382 bytes test_data/golden/qr.png | Bin 405 -> 991 bytes test_data/golden/qr.svg | 2 +- test_data/golden/qr_logo_arraybuffer.pdf | Bin 0 -> 13587 bytes test_data/golden/qr_logo_arraybuffer_jpg.pdf | Bin 0 -> 18865 bytes test_data/golden/qr_with_border_radius.pdf | Bin 0 -> 18011 bytes test_data/golden/qr_with_border_radius.png | Bin 0 -> 1410 bytes test_data/golden/qr_with_border_radius.svg | 1 + test_data/golden/qr_with_colors.pdf | Bin 0 -> 4378 bytes test_data/golden/qr_with_colors.png | Bin 1162 -> 777 bytes test_data/golden/qr_with_colors.svg | 2 +- test_data/golden/qr_with_colors_rgba.png | Bin 762 -> 753 bytes test_data/golden/qr_with_colors_rgba.svg | 2 +- test_data/golden/qr_with_ec_level.svg | 2 +- test_data/golden/qr_with_empty_options.png | Bin 1016 -> 991 bytes test_data/golden/qr_with_logo.pdf | Bin 11056 -> 13587 bytes test_data/golden/qr_with_logo.png | Bin 2301 -> 2166 bytes test_data/golden/qr_with_logo.svg | 2 +- .../golden/qr_with_logo_as_arraybuffer.svg | 2 +- .../qr_with_logo_as_arraybuffer_jpg.svg | 2 +- test_data/golden/qr_with_logo_jpg.png | Bin 3267 -> 3167 bytes test_data/golden/qr_with_margin.png | Bin 3632 -> 3491 bytes test_data/golden/qr_with_size.png | Bin 3073 -> 2907 bytes test_data/golden/qr_with_size.svg | 2 +- test_data/golden/qr_with_undefined_size.png | Bin 1016 -> 991 bytes 49 files changed, 132 insertions(+), 56 deletions(-) create mode 100644 test_data/golden/browser_qr_with_border_radius.pdf create mode 100644 test_data/golden/browser_qr_with_border_radius.png create mode 100644 test_data/golden/browser_qr_with_border_radius.svg create mode 100644 test_data/golden/qr_logo_arraybuffer.pdf create mode 100644 test_data/golden/qr_logo_arraybuffer_jpg.pdf create mode 100644 test_data/golden/qr_with_border_radius.pdf create mode 100644 test_data/golden/qr_with_border_radius.png create mode 100644 test_data/golden/qr_with_border_radius.svg create mode 100644 test_data/golden/qr_with_colors.pdf diff --git a/README.md b/README.md index 4ab5e35..6ee800b 100644 --- a/README.md +++ b/README.md @@ -89,5 +89,4 @@ getSVG with logo x 2,817 ops/sec ±0.17% (89 runs sampled) - Use lighter versions of PDF library - Round corners -- Transparency - Background diff --git a/src/pdf.ts b/src/pdf.ts index 8e5ee41..799bfb1 100644 --- a/src/pdf.ts +++ b/src/pdf.ts @@ -1,7 +1,7 @@ import { PDFDocument, PDFImage, rgb } from "pdf-lib"; import { QR } from "./qr-base.js"; import { ImageOptions, Matrix } from "./typing/types"; -import { getOptions } from "./utils.js"; +import { getOptions, getSVGPath } from "./utils.js"; import colorString from "color-string"; const textDec = new TextDecoder(); @@ -24,6 +24,13 @@ function colorToRGB(color: string | number): [number, number, number] { ]; } +function getOpacity(color: string | number): number { + if (typeof color === "string") { + return colorString.get.rgb(color)[3]; + } + return ((color % 256) / 255); +} + async function PDF({ matrix, margin, @@ -32,6 +39,7 @@ async function PDF({ logoHeight, color, bgColor, + borderRadius, }: ImageOptions & { matrix: Matrix; }) { @@ -39,27 +47,18 @@ async function PDF({ const document = await PDFDocument.create(); const pageSize = (matrix.length + 2 * margin) * size; const page = document.addPage([pageSize, pageSize]); - page.drawRectangle({ - width: pageSize, - height: pageSize, + page.drawSquare({ + size: pageSize, color: rgb(...colorToRGB(bgColor)), }); - page.moveTo(margin * size, page.getHeight() - margin * size - size); - for (const column of matrix) { - for (const y of column) { - if (y) { - page.drawRectangle({ - width: size, - height: size, - color: rgb(...colorToRGB(color)), - borderColor: rgb(...colorToRGB(color)), - }); - } - page.moveDown(size); - } - page.moveUp(size * column.length); - page.moveRight(size); - } + page.moveTo(0, page.getHeight()); + const path = getSVGPath(matrix, size, margin * size, borderRadius); + page.drawSvgPath(path, { + color: rgb(...colorToRGB(color)), + opacity: getOpacity(color), + borderColor: rgb(...colorToRGB(color)), + borderOpacity: getOpacity(color), + }); if (logo) { let logoData: PDFImage; const header = new Uint8Array(logo.slice(0, 4)); diff --git a/src/png.ts b/src/png.ts index 6bc6e0e..f7a1eb3 100644 --- a/src/png.ts +++ b/src/png.ts @@ -19,12 +19,14 @@ export async function generateImage({ logoHeight, color, bgColor, + borderRadius, }: ImageOptions & { matrix: Matrix }) { const marginPx = margin * size; const imageSize = matrix.length * size + marginPx * 2; const svg = await createSVG({ matrix, size, margin, color, bgColor, imageWidth: imageSize, imageHeight: imageSize, + borderRadius, }); const qrImage = sharp(svg); const layers: sharp.OverlayOptions[] = []; diff --git a/src/png_browser.ts b/src/png_browser.ts index 87bb491..2563747 100644 --- a/src/png_browser.ts +++ b/src/png_browser.ts @@ -47,7 +47,7 @@ export async function generateImage({ const context = canvas.getContext('2d'); context.fillStyle = colorToHex(bgColor); context.fillRect(0, 0, imageSize, imageSize); - + // TODO use Path2D when node-canvas supports it, currently it makes testing impossible for (let y = 0; y < N; y += 1) { for (let x = 0; x < matrix[y].length; x += 1) { if (matrix[y][x]) { diff --git a/src/svg.ts b/src/svg.ts index e1aa386..4494c09 100644 --- a/src/svg.ts +++ b/src/svg.ts @@ -1,10 +1,10 @@ import { QR } from "./qr-base.js"; import { ImageOptions, Matrix } from "./typing/types"; -import { getOptions, colorToHex } from "./utils.js"; +import { getOptions, colorToHex, getSVGPath } from "./utils.js"; import { Base64 } from 'js-base64'; interface FillSVGOptions - extends Pick { + extends Pick { blockSize?: number; } @@ -27,6 +27,7 @@ export async function createSVG({ bgColor, imageWidth, imageHeight, + borderRadius, }: ImageOptions & { matrix: Matrix; imageWidth?: number; @@ -45,6 +46,7 @@ export async function createSVG({ size: XY, margin, blockSize: actualSize, + borderRadius, }); const svgEndTag = ""; const logoImage = logo ? getLogoImage(logo, XY, logoWidth, logoHeight) : ""; @@ -55,22 +57,11 @@ export async function createSVG({ } function getSVGBody(matrix: Matrix, options: FillSVGOptions): string { + const path = getSVGPath(matrix, options.blockSize, options.margin * options.blockSize, options.borderRadius); let svgBody = - ``; - - for (let y = 0; y < matrix.length; y++) { - for (let x = 0; x < matrix[y].length; x++) { - if (matrix[y][x]) { - svgBody += - `` + - ``; - } - } - } + ``; + svgBody += ''; return svgBody; } diff --git a/src/tests/browser.test.ts b/src/tests/browser.test.ts index f4b0186..a556ba2 100755 --- a/src/tests/browser.test.ts +++ b/src/tests/browser.test.ts @@ -47,6 +47,14 @@ const defaultParams = { filename: "qr.png", }, + { + name: "PNG with border radius", + type: "png", + filename: "qr_with_border_radius.png", + params: { + borderRadius: 2, + } + }, { name: "PNG with colors", type: "png", @@ -91,6 +99,14 @@ const defaultParams = { type: "svg", filename: "qr.svg", }, + { + name: "SVG with border radius", + type: "svg", + filename: "qr_with_border_radius.svg", + params: { + borderRadius: 2, + } + }, { name: "SVG with EC level", type: "svg", @@ -146,6 +162,14 @@ const defaultParams = { type: "pdf", filename: "qr.pdf", }, + { + name: "PDF with border radius", + type: "pdf", + filename: "qr_with_border_radius.pdf", + params: { + borderRadius: 2, + } + }, { name: "PDF with colors", type: "pdf", diff --git a/src/tests/test.ts b/src/tests/test.ts index 0f844d3..b06421e 100755 --- a/src/tests/test.ts +++ b/src/tests/test.ts @@ -60,6 +60,14 @@ interface TestParams { margin: 3, } }, + { + name: "PNG with border radius", + fn: getPNG, + filename: "qr_with_border_radius.png", + params: { + borderRadius: 1, + }, + }, { name: "PNG with colors", fn: getPNG, @@ -110,6 +118,14 @@ interface TestParams { fn: getSVG, filename: "qr.svg", }, + { + name: "SVG with border radius", + fn: getSVG, + filename: "qr_with_border_radius.svg", + params: { + borderRadius: 4, + }, + }, { name: "SVG with EC level", fn: getSVG, @@ -180,6 +196,14 @@ interface TestParams { fn: getPDF, filename: "qr.pdf", }, + { + name: "PDF with border radius", + fn: getPDF, + filename: "qr_with_border_radius.pdf", + params: { + borderRadius: 4, + } + }, { name: "PDF with colors", fn: getPDF, diff --git a/src/typing/types.ts b/src/typing/types.ts index fd4567c..7a81357 100644 --- a/src/typing/types.ts +++ b/src/typing/types.ts @@ -91,4 +91,9 @@ export interface ImageOptions { * @default 0xFFFFFFFF */ bgColor?: number | string; + + /** + * border radius of the points + */ + borderRadius?: number; } diff --git a/src/utils.ts b/src/utils.ts index 8fd4116..b760ff2 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -1,5 +1,5 @@ import colorString from "color-string"; -import { ImageOptions, ImageType } from "./typing/types"; +import { ImageOptions, ImageType, Matrix } from "./typing/types"; export function getOptions(inOptions: ImageOptions) { const type: ImageType = inOptions?.type ?? "png"; @@ -14,6 +14,36 @@ export function colorToHex(color: number | string): string { return `#${(color >>> 8).toString(16).padStart(6, "0")}`; } +export function getSVGPath(matrix: Matrix, size: number, margin: number = 0, borderRadius: number = 0) { + let rectangles = []; + for (let x = 0; x < matrix.length; x++) { + const column = matrix[x]; + for (let y = 0; y < column.length; y++) { + if (column[y]) { + const leftX = x * size + margin; + const rightX = (x + 1) * size + margin; + const topY = y * size + margin; + const bottomY = (y + 1) * size + margin; + const rectangle = []; + rectangle.push(`M ${leftX} ${topY + borderRadius}`) + rectangle.push(`L ${leftX} ${bottomY - borderRadius}`) + rectangle.push(`A ${borderRadius} ${borderRadius} 0 0 0 ${leftX + borderRadius} ${bottomY} `) + rectangle.push(`L ${rightX - borderRadius} ${bottomY}`) + rectangle.push(`A ${borderRadius} ${borderRadius} 0 0 0 ${rightX} ${bottomY - borderRadius}`) + rectangle.push(`L ${rightX} ${topY + borderRadius}`) + rectangle.push(`A ${borderRadius} ${borderRadius} 0 0 0 ${rightX - borderRadius} ${topY}`) + rectangle.push(`L ${leftX + borderRadius} ${topY}`) + rectangle.push(`A ${borderRadius} ${borderRadius} 0 0 0 ${leftX} ${topY + borderRadius}`) + rectangle.push(`z`) + rectangles.push(rectangle.join(" ")); + } + } + } + return rectangles.join(" "); +} + + + const commonOptions: Pick< ImageOptions, | "type" diff --git a/test_data/golden/browser_qr.pdf b/test_data/golden/browser_qr.pdf index 7576a474d1a9810ac55237d1c2d1d62e0c46b899..f8cb54956fdc0f116d02b8374eacd7a21aa74b28 100644 GIT binary patch delta 4096 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 diff --git a/test_data/golden/browser_qr.svg b/test_data/golden/browser_qr.svg index 78b847b..c7e9c12 100644 --- a/test_data/golden/browser_qr.svg +++ b/test_data/golden/browser_qr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/browser_qr_logo_arraybuffer.pdf b/test_data/golden/browser_qr_logo_arraybuffer.pdf index be4551f3a7eeb82dfe77107c71b5e08dcf0bd266..05ba173033b93ef1f6c4e0e0f8d9772474a19b5f 100644 GIT binary patch literal 18865 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 literal 11164 zcmbVy2T+sE*RO!I(0dC_M35FhN|fF~qzOn5z4s!77C@?06_Fx>h#=BI={=!HQ;=$* zBtfb|KuV;@eZu?QJMTC5Ki{3X%rJY-?%CfyyZh`pzdd;bjWxB!r6lA*f^onf2qeoV z$>;Cn1yWQ5L9{)6LR^FRAlg2TA+DOP&i*d0Ajln8Klcz1KB*g$H$lqEpx}@oS4UqE zys&Fww3bVYIT77fjD)CGY=(Aptm-mo`B4b}PkVgI5J$6Jm9&rAOLPh)=^pM8tLyCYWGl@3oJEw<+oa+_

g>{nntER=-A+8*$`AZ$YoibHyvR+I_a7ls}EJ(0aS> zjOt*PbV~n*yggR^jE1|y@`J?AhwTm@?a2qJLmlo^5<54yIE=k#NqeZ%kOyZ@%YW-6 zCC{=O`?Z8DxGTmmmc*IZR#K=pPKt;&oie~-Oq6V})9Ipkb`vxhq2FNXf1Pzpe88zo zu${tNW5X=^UTw=|prOy!pECX6S+C_kMc#L|^coqqwCe#4dBkif*8`?WQj`YVVYN*J!dpZGC@vg>2A|pHyyI=$>TxUDBXu zl@1?&TpqMFL_Hm)Om8dfozJ69&)DeAD+8rd>h{gk?0Da85b<>pb6cw25Sx*GQRZc? zSuFx*=V1@ZJ$v-+=hmK?vzTNHfAk0L4U&=QzVGGx=&P-kem2LkC!fi`=P56T1{ORo z>B}dr!MvKx7fife?#{|Al3)DzEh~q2T-!6V&W;wQ0voUgXK;W)u+*c8JnO_2B!}Hq z`a#USnUU`xXAeKOSsD4pH+MW_#y37ZjeArsl{O>u#+s?zjyTw=jqHn z>x|T<;R*ez!sPERKg&FQh8sK$PvkkYJqxyEO4^)7hsR4lzTCnG-! zbw$>B`WXg~%-c=b+AF*%bS;!#Wh>bFB1C;my6VOul)gl|N{zf(qNXb=GAlTRC>i$O z<=yu_C7*uOYe^^0e##S*w*eaS{6Na&Vs}y{=-$Gw<=tM+W!0w)eZ!Ica=GT-(53szG6r__K(%+U9jD>$GyYG_nqBkJ>8n2(d4( z)}Dw*+_UuX3-_En^`5k4vXl0)k$m%)G(8# z4%@FkMS1MsFs(Mw=6XITcPul`F>63}{rM`j_f+2GR~Oy)p0)3MrJFelOwS**ITul_ zT91>NK96emKD)ady-x&sbZ z-7_TE*fmJQ-#5VD&($x44+?@S_{PnfAc(H3r@KeUKeC3ukAIM9fTJ^jr|BB% z>Fjz}M;$;ka18e5lLv;p`#(E%8F{%I|IMlYn*R1!tcBsSaq0G(^_r+B3QyQaTWz*(Kv^$L!Dl9MwU`V#3CFV@^d62h*6m*TtY=0D0q%>>{ZWJaJF4EcTjyXtQ3L(vALq3n>Tb#h>A5huE9F-!UU zwH2Nsq_3)rBO0$aisSZ(Yl##(UdbLrn;P>%@N)YNLJA3V>aLyGZxilCK8)RzuDh8# zYP|49bG+DezjrrL^w;4cG}f5LKO*e-RrU+iQ3*5baC`rz(DP&?P43R0H5(d+hjhg$ zx8O@BpDhZ(49X1maU=3&M$nsAqIhqkYy5B92L@^4m7gMQmL4mkS5k0+6-jJ80?`A* z3(;${Q!KPbu^!!C&1f>az93g)v3WF1Lr;g)yJmVAxCL3uA9% zaPfoV3*$Pqz$j4a)P*tW!LF>Z;e|2t^w8W(XfzUdIE4vf`}mOy;~iD1D0-18AzLMR zf1~qLbwV3&LgW4!>v*T>^m%$>mMU8m)5vEbThX*nch48f&;k>rOMn4oE=A8Ll~7)Z zznvL4g9^Rkdb*ymPy5+-C}U={foZ%pvP@c9aXt>$PEv7$M6r5(wirXw?S&t|B}?dW z1S&wEg?x}kyPRh}bEx84?rv(*4N)?57`zyP%thH(|5E|uMkJ7Iv_#3BmfXUO8b4BA zDMPbC;}O%vsNxENZt9tJQ5YuzVY)GQCU@#ufWaDPD6iZ{x3nZ7Rw2lx*VmP4XVx`f z%m}#X#?W6Ky!ZY9upQB(qR6_;iMqcQcm+ZQbM%KaWF76u=+OZ17DNtvBaJdgvGN23 zKIo0ysmbh&Q2_RwpS)B0bg^<6D~~)X$;=7UM`qQOcgCn@eJ^r4FEWaq8xnez z`DM)u1*z%oj0psq@*=7fPd~SRz~&ABO&k{1S5Ln8au2s;Ln-I5B`tdVNmRw{c6&?CakEz#bh zUo}ctWTI4B^tAm788Ap3PmUFOjzx-|Hx;yBafe!^KE(uYZ1$4P)d?S`m5xk)McgIK zgrXC3VkSUq<+CFk7)pULRUsq&IFdB>L;|$QwIp84eqjQ1nzYnu?-gw{01bQEhL&fQ zx=esB9HZ%JNZ}_yuetc)GqkAt0B9wlV3fa@69obKW{D2irSbVa9&Sec`0+xFJSv7@9bBY46nkC6DTKER7 z@4)6zC|ylM?ucWgyBW3CS*(~5{tUUhIl}67AKG!*X{|{FX!U1F_ICZGQG%NjOpOw! zn^z>3nM{(49+jb!*>*($PqThz$&H9)fS`eD9y)pig5eVu5Mi|c5}6Qj3`Q6xlT;Wj z6C#1()AEUNY7q@9BAG!21Bi>%9Eengtlel~EjlvVp1~Ayz*oJRLniaO^oQY<%}N1r z$)!IR4>c=&^XfLL>C zw&1qG#2XiGM`Ll{GRJX%N0aZ4#wQNR;W?+@Y;|kkUks7qnWx{RbsOQEbiAWLn^P=H z;-{;n*Of`d*Af2gh(D9GOL43r?^ zjKNa8gzKJgr>oTEx<7Iu0@*rft+W&PP}nQ3{8M^ZOKUt^)Q$Gc;ZNwYG;er^d}&&q zBFkb&YivuTN_)!iJM^!#T%4D`UW;Tne`oye)x|Bl4bU}6!klDLpMIB=UEfL*PI}O} zb24)3Odm!?pch-6N(((JKXCU3bK$v0FGq7b!LTuWI@=%m_Nd{U3#u`&HZiVWn;12nX?;v@jL)UiB2C1`Tax`pbv}?=TlvI zNE;*U*BS2GV0Or#C%LF^T^x&j@FEHOy&!mB7?O&;?(@YG;N{>47*1eizTh(b<8vh> zro`_Q(bWCnfnzb(?D|*U;>!JF!^D#&?Cv0FA(3Ig-lT3j?FGY^Y_Ke84I$jwyhza{ zHi*U8ORoGVF4&)Lc#RX!!syBtZdQJPip6vTcFjH+;0=rAmZ}yv{#@xi`Gw;dkZyl5 ztb*)VqV+cxD_0=AEaxzI*n3bYi@VM=*4MJ4*2fUDIWC))2 zeXjyz+4?LGXE%vBE>u&ky+bI;NG-aP&E#3_jun9*`D-%2(T_65b21Ng(2KA0@G^9h z4eYXN3bc=(Bm?K~^lvG*-TDg@aQ=X!^R)J$nZQPR{&*P3N1|{B!fE!AKB`BNEjX)+ zhfCo;8WvH-1koPuqsdm4BZSlIZ52nxPBUom5I1?>p~2{-iaWKNFdaDU@apkBN6~wcIt!; zh@h?{FtpQq0tnZ}ZURHY=V*6MRvF6!o_bk`bGL{mDHSbha#`hL3f;ckQ!2ny6P#Q5 zT8S+X1bRP7V-zCzL4@dW$|t}xAz&g1M33b;_T9Y2hm1h6th1=8V9 zU{v647I05*%GyTXBSPixH2A|sYF0vJSBk~P7fC`TDy>x&l1y2gmTulp8gWw@dZYytpWG0zhgbQ%E1uI@j)j~f8ss7qR0 zBJfVYsM?dk(()H@r9f=sx_~p;FT6v?n*qQH69QWn0O!O^2!c8QoK$L2b{o2s0H;NW zfRhBc*Mvaq0l<-c1|n;e4DfU$8$c9R<^-NDZvWLC>I*nkLI}Qq<0FLY3%EzHrw{*u z(V*j>?`Srq`%4y@?#ZWyYZoVRE>U^jA7y{7 z*f|tnNPTs+RMGWWNM4~OCoh6dS4SFMW0cr)S9vHM_plnJ? zp5y%{7N^!$f-4Gq zR%VnVNC)GO;s9Zu8)qxehzy%n5gZyoW{%C$u6^ndBQ(7;e$+ixJA5M(RGe4^S1*(dnOEDhOXv+OC9e2JJcZP~hlfgv4l!U%zbT^Q4gU{8#bFN|e{ zGXaNoVGLZ+2<*?)Ad?oj&*3$hOD>E-n^=H)D$lH}6Rx^-nxq%TVJ}Gu^p#)?+!XP~ z0T;D8FR8j&3NLI)Jrex2o{8L)18$v!w@z>NqgLNI}=nFWgjIW0$e@8%s}YE8v_pnT!1@wYJf|F25(Sf zIQ&Zoz)Ul`*IhmlB4L(>+Hr060@Ayiyqj8fW6Q7^1jI_bm|3~M;un74I=&1rx$gbf zVT2$%_mVVv54gUE`X>RL>=>8rhMrlZZRgpe>yyL!H>+b84?~q&V?6C z1p5p(%02iF(2Fd%5>~&xgFG=zvZ&vNgKnK?2TaK90OU$TKC%k;c|f)^X;*P!ZxL;m z_8d-xC0;l&M6;xsz;`g$l*qJD&sk8rwFANtJhv0rL{@$23gMjoJ;pY%O8(>f= zKD+-ptp?=j z^;)=ze8zPOWW1*wadqP&_vAoT26a5+0IYJ3rRrZR zl0$7W1AXq&I0l;idXi!R=KcVwO{xAqZY>eG|BLt|rlS6kG$|)E*bQWQYt!RHt^cWkk%Be$Y9&VC> zGMR3DB3$krxUc7Xcw&9sP3(GRrg`g`Zj-~{T@3D)$(hA#p)Pf>cT-bw6)fBL73%SH zGeVEbPuBvyUix*SuF|nUE1@)uyT5KAgq|kziHEU3%H^Ti$lC`t@0s=EN}-&cvMHBz z?0GU$&DVZlg+={NQy3>Vpts8!nD}2!1wPd;t$c=~Ov?~>YjB)H9D%%o^_V6*yL&&a ziH>bZ+xO#6;&^=p6l5E4Iz!xc)deFAecNtE^PYoA=PuXh+pX!jDW&E%lZN$|kf_NF z{(!=!OS{YH6fY)gk=S%i)MSOYhlts}1A2X$Ovcz9`tTjg$D2^-tFN)m#Iy7q(8jNbX6q{kq^G~$5$e} zKEUQ&mUnq=08t3#^2IS1LX&}tP$jx#B|>KDG7e|7+kQg5=LJX zyd3a8RHj!H^M+Ra=QrX=Gv{QI?kk9&d{0M?^(4WQ>16yHF?mi>k$3uvTyrf=%C}dy zvH2h4P>$O1zZcx+lN7RqSm?6U(d%O#FXc0e?+d-k26m_&?_fH%(FShi6PJ(=eqM5p;9L zmuQ>SYKbYn-E@GC-HSVYt_`V$39=H#tAC{?Zc@1aj@YrBfxK;qD57WR_K^G33+KT= zn_uWJA#1AWbj3Zfe9BMnPKpRAA zBEADPdswS`gVrJ_E51ki-iQ)ypYMZ%h5ZEx)TP_L6c?&5?78g*y2_ zRwI@BT~y9Q!&-%2luRwJYA&_8=x7_L8=F;Ll<=LHhU2tB`kkyhMeA8^AT1qt>_w6c%bii@8>mYM* zjn5c-So{*$pIgj(JwecIM#Z=KwQv;htIwx(E2Op+u(*Dek|2 zX_$s+b-ze)XO?0y!ivMl$S|kh!Wl>#Pk^4Wx|)`yaDUu)>6DK z^{l)tNxGC=wZHkYjEmgl&WpeB)o@Gt!2)dJMll zHiEC9Ut-h8w3PNHc)MrD^ImkER(_saNF*Aw@3t9!4iouJnXC9-pWZhjcY3f#&^5=R z&{y8;+tL%s*a|k4ny-f~uRF-pGElC_Dxl0nd8)E~(aHjfxoQffWp?W~XWjTCOm>%~L<8KB3-Y>bab@4VZ>^nAqX^O=8z~mAwM3sF_CAC+I`uWQw6O-~P^?=q75hRGG1IxHe zmy7LK5>Q0+c&B<{a1bAZQa3W7BJSn5IhaYGzP_>m8Kkz=Z}vvYS7K zlAYPqaf-$YUv*OA0~eWOZ88|iyUFQAS~#!M;=_%M{bcWf*Nbkv ztyV0LC7GJ03z~IigeED^V`HDzl*f@s+w(j9(G1{&^WBkW0c*$&#myT@bAS(z*7;_C zO!YY;3@ENN70}aed56%yok<9wwy^=TEVH~xK(!ZA;8hi_gEb@vi0T*K2e_DmW1Wqs zkW!lZ;Mgme{(u$0FKcOlV-ts_1AN@TwajkdqUm|`C9r57IP)Vdxr3GRO>n&9kCDGW z%9EXCvAEZY*Z_hv*SY~d6kMRh=(<6FX2`37$J0^Sd%!<{G5rZ@>p6(N4YY)9e1vvC zI;$Fox`CYl|4*m}+KNFnaWKJxjc@^s+ z>N5IsZrTzp9FygD>8xt;v6WF7Ch+}Gpyr^#&oI~K$x8fhZg+jLTbs^xu3Dw|DWgB< zx?XkD;I1z+fp!ie9?r+%3al^pN8$&C0xLg#4nLdTC> z;Pd6{tC1Vq^{n-ggMJ@s$$3})3bAHxPkw;QF3zTFf61_!!j?2V<4anT;m;PM)H!nT zksVTN3itP+Xgd7cNqNMp8IkQPSVrrCt=i6Q?#?=Uetr0S7G1 zhwC9 zvf<5|15~oitgV;pp$T;H>*l@8-j758Wd}M&x@ypBd*3JY+x(!Hcc0wlTkGBGLG230SHBt@ zn>@s29Ot>3C~34nV3IwXwm-YN`K+Cx<-K|hSzZcXE3O@SB@7Dpa_GfX_->Z;C?`>; zMdT2-ms;Gl`E3&jX^xG=l>bcm=-Ym0z1=uO)7@SgnPR%-#GQcnK_%$B{_1OO@xvG* zy6b78pVcnUnNCL3>of%}J;O9gE^@x9XVwqS;n^+Gs!=2U&6>t*a!!&T)_I`MP?a>t ziczk;?mTz}@)yxx#IK*%;AQ6iV+})I4W3y=T={XS;<=sV%-;T5?!3uM%X}p_0eYwkHn7?Z-{b?fOzLu= z&HyJ12Ed9%H+_WwaQ(;Vy`4a4@X4JT+7}dB3BHyToI&Tumk=&r3bE zLd05M-O!lX)X??45PS5c7y0Z`MW(fsx&{*g2+TF|Xamte(^a#$s(17;Ge4~Fw`!ct z7%4Laq1!7DSPd(K6K^}dYD`hS6%8$0lKMK^aemVJ_I#11ryDm^7~ZM4GTBI8etk4& zp?#sXyx~S&;L{SC;gz%T-)VM6C7lrh8~J^TrOynWX+-R&R3H7_n+-mDiG7#&>-Z4) zYdHLa#LVvHy`?DjLU$cQ7+CQ>(j*8c^iYL}%b~*JKWx#>e{GSeXM`)C6tMDl{r!P0 z09t^rp7i|O{P}MDBmWP3XnEJw?f-0O(7e3R3}TixE~ZX|3}QBhE~X-;#`Y$r&lIlzSC(oopxJ2eMNqP%mmr>41YA9|4fs3O5#6a zP2ius-)dwonBD}Q`{^Y8oqy43Igez@%an*Mn$Ph9aa!*=%l8UOjn zF8pe5=Xfvo_b3mkyYc`2==bnnb)T!}@9}$F#p&~l@t-@l^yRaD%GwQ zO3yROT|G0$?-|prUxzqUJyyH;tMKvGtN7}dIxX!u1l&D)4p;(?9>Qx-F5rKhSks!! z{f73rXAM8dd;NI*-Civ>_sa+O%PqrS^koh0In+3HC~)h(4*630aR%fvSPasP8$-Ar zkZ<^hw`@nZY@gK&WaZtg$JsLyW3VcoUE+s~f^+i?066Ig`Pi5f#Wo>1=IEbijW z?&9C!FN*tCDc9GOw{ED{*WcAxv)65)=H9{0z25`taC#IYScub(0LUApxjK`1y6;o} z>SuBDw9to^gB#uTRg)s@iQ8sCbF~Au)Xyur6S@>T9NC<(q`Zjbyh#4ajBrO5i&;?) z6Wa0C&zbEUJK8lthR1^`bCW>MP#GJ0zLzhz)Wf`9|Mx^$@zH}~myE=uS&0EMe)qqO zB&Wfg6zPxVf1~83U%&d&r&~c-8Xl5aEm)I%;m z3H44-Nd~0oA2mjH1ol3iBiEn9m9bjY!mhU=JoE*KZ4+-$Aoqg^0ps-l&-E_!(x zC(pV3*Z#d9rymBE+^>BVvD(z;?VDer67P{eEWRi%Qb>HK*Zgc)D?Vl%-pH+_E+dkJ;uSBKiuq6L?~$L-O8>XN{q)K|O_c&0A*(k6C*Mg-FX>x;d;PP0&%eG;r;qd* z=V6LhE}B?7>17WgzHutH|9_)2uTWkpn3s0{Iq+iy(uzv`SBV~Z`P+fIctt8zi`n!7 zrY`^0o+Yk0Ke7+M^nWv^N$^Y#E z?aUDQ?!~gySkEC|Md%h=8AKUVF1^0GRCDWj-_5?7@9S4N2ImqqPfoX7P;#x`(7s9T zlZVDXk3e0dljqsZ%c7H~+08rKZGhnSPQmjg&huu@6Dz>ei+1>JL-FHKzFE$*e~1^O zRqWrB?B54?pZ=@Q2gK(y)VTQP5SlK~14e=MS0iVX2(Wi`eYu6_k>k*e&k=iFV_3Y_JAJ;cc%RqJC6{EIRC zAY?_cY~RyDJ2#GvV{QKy)4wtgkhoPa1B_+i9z^1#zHONKyc7C;KhNR9nyqSMKoPj! zkU=6?c<2y>PHr4yWXKuVi;I@{xx^;* zojdqLJvA{m?lw7>?i>RxA{@DvqTo#PF7fBjs~BbaabX!b$1eSh+rbN;Po)@I@4kln zPm6KueN`b@8ju^8?C3D*vd>JQU} z7J#7ZVLL4sHb+6$8E7i;%kjMBH|5o!^1BU z6XC{YEExah#?m(ydNgYYf&=)@;wc}t@LF*B<9Y?{S?L>XMR`dRj7l4SK~rOV{Yg5< z;Fg{A?OMjwH&%ps%X3l16H%frVN;QD_KlPoZ_dO`y?5YvbRcU@aRsO0bfZ|!#V;eW zgVYbEHk?zheYVD3J+rYE0fJk)p(k z1jtZGZTiSy&x(;n@KlabYCd;KV`T-Ol3pZARWZZ_ z7r1ixozaytLjs%q7=YW5u%orNwg|z!1X~OLHIVp+kd`vsA|;OiapEeWyEQz)T$Rw| z&~$=eCHzeo7$m44(4o28B;}qAi(a4)2Ov)5tYfl2Jpcp`WM~OQ(+Rm?OO0j<+f!i; z5*|1g3Lv5$K~w>>@r}qHeMbcCulJl32K zomb1{(~Ye5u!0(^xJ1wa18nq5^^`+^G-}v7^snxpf`^lb;dOD>@1^^jXV7`S-Wd-! zpY>|bANe-*R~xS}7kQ8HXxJd99F;gH#uDBOdh-IxnM1La%A@h}KspujzcbYsWoAYg z*_P23b{yy)HdbQ^Z_VRC&{d8~Y*U2^2Nm5Jfklk*5T|H`{QUa;rc)tlo~}bJGFSW6 zZ%^NY8vs{bZJGJTY7uXFR-&qJXQor80Nhn?pASe7+b*5CoOHVXpm=hcD2%>MXzMSd zaU+#n+y%%f-N3e8_SG8e?dyRh7(aHlXS+4TCs$%(+)nm^RwFnbzce}g{K%2JWKJ|g zE@El&mur{EMTi2Pj8<{@#Zlusi#NTXNX@f>Z{!N(YW~XEb!Hwi-h3T_(1s3Y9$kB& z%BS0w(%sMJgdTjogaJtcmYk3#QqKqO z+<-o+;)fw=k2!oCzbr*Ky5K)UN*6lN%%y{T{=;{OLy$$O-g<9KuTF$Ds}GyGlCFi3 z5n~0$EXB}YapdhysNUFSyi=7*(8$~J)f(tE#vwpr^(H#Kd*XzawBX~%c}}@b%DTux zSfUk}ut+T1n6|C4-#n?R-2{Dq+Y}VqGGL%32p^`>KYL8wWrv@w(|ZQ6OP_(I^W7_R za{0B%Y}%=-cfdHgn%w&5im5B2WWYd45I*#O0Fh!(Ud~d;K&qpQ%O`Sm{anUQY;R83 zD1b|oy;?iD{=mL7Yk5;GtZHZK_<|obGyJu8?u1^j_?9aZ4jDjoat)6IR10-c zl*w)O02yW9t{z={zfmz3H>M-|_9jm*n+w*B{ilT}K$lXJpbWWr+|iMxBZKhDWqGdz zZ4Z8nT<|*F-2La<2+L4@;*n&u?)@InoE%WVWS{qvkyCJ07ya4Q5K z>_*4-?xzd-7u$V!(ExYdwa$TU3TG^b&R*`@;KXd0v!ipR!3&Xg6eOaO`*~2lPKKp z9a_?`gW-8X`<)u%bHRp94uMF3g^55-qYaSAhalFD%bYrF7lw;U6?p4Hqd<_%R5>Y_ zQf)Sn%$m3+(E&h)@@oJNr^!m46if__=<2ckDn*3kG@^n>+ex-%(BQ}XXHfnIH{6_(@e|rfd6a;WrSR!p~``EJ{ zHlcjW`WNS|`gFC4G+z^*TRX=SKZ3+v;njBzepbac3$Vuy8{kQ1e~5mspadwdRqiw0 z`2zPw_u(~-hPF*)A2zRce{g>E+G~MBTaegxs1ZL`Z5U*mJ4Y{b(qRbBH^^|4F3i0U zBsu<(bLKIqU|c|`LvXrR{GO?Z{yj$d!Kgom_3O(rb|(+vx#%#hpe=mfrpckl#d!<) zFCWWqI$VZZri_-cae-}^xN)1NhS!6*?fGpE0e1$kGu($IQeU^1*pme3+iW_@$Re)U zctbaVu*$wIsNEaDlu`gQW*H*{CP8L1yf3m?%3YRlUEs%j`WDK~7jnVYfCCqO&>>f! z?Qj=+&&S*}c7u5n0M=7<0YD4e_(G)U>@S0a0>P`Fuz6>IWoTd)Qy$7TlD@w$(T)?Y z2rK$RFNerWBI5Qj9{xSNiy#0u)Eg6=kPDcdzdu4~lVj9(mRHGn`{k zduXCsUN3TH{!RiuHq<$h=c4q@(QYl=&PK1a+u>yX_9zwGOg^tgd3YhU^X*?>y<04T zMQZo+i(@NkgxHYBge~NnwzsRXaC`=j8g`P)W~VUbKWg}!?1rZBev8J^Lx!C@ylU2O z+=qteg^3CHNjMNHMIM0q&W4L~Qy7mkXh+Ew^OyB;gDpAY${yKQD=O|i-$}g`xFxg! zRYzh%P;w^4D5JY^V1HU*voE^;BL)_WFs1~JKOGKP&7kzVwL3!~P#^=88!4;{ekCri z5>;hJRA)ESuzt7qB(f{udDKNj@Wm|nx;X<8{aRy?-4z2;h z$VyY}$Emp=<64#{kM-o(PJ&HLZq|u9BRGQZvn>A?dA>iGqS{vXN95!_1^FRv5+fKy z^vapC!#&q)GOai$6T}CpPi80+90a~T!UOqr=w@hgQqg3Tr+qt2IT_=>Gq=F-!6G*P zIbKdS(KK8*v+S&a?rwrOw6EzyZRIyFj~Blh*wu-KjbOqE>fx^4Ps0hZFgCa6!ENh> zl2&FLl0hqkKmxJkWnzx|>RzUPYA=oJXa<=@Yls52(;Qd}BaCRqT{=QT^BIXPEEMle z7)mon%i0*5HB4g!LlkM&b=nR?eHr^L3=*$3+CHe{#|>aiSVsjtj?|JAb$b;(5=Bp_ zi;RJuU`cD!hTz+#a6*9fhQJ72)f^Y}u4MY(eHNWwF6oLZLO|rL@g39>zzskHPC#kk z2Kz>X28&t{zzv(>S43N=B}`Ak3)={y`e7B+|FLM`zod_UWx!yZV1WGG5A?h2={vAx zwW!5^((nKgq17?ThU6I+0Bbm~Wt6OnM|2`f(~laF>)if;(xvIdkkyVMA8D{!){4h> z5=KWl#99(R;{Jjf2%?N8KYs!aP$qP`d`7(A0|~Hk2K>bdpgkQ3I+x36QA;9rPOi$RB1m@XuLec-mfBwO`W>6}6Ic+xM*C zgFwZSbJRZ-9}LGwjl;7~M^l#Rz}IfSa9mU2y>Mz`9MQ=Wv^h$rjD}1m8(oN1`Woo% z3byXzy{LY*`d9H3AH=HjplT52@d8uYr%WwsJ^#Jn|6ty~8;&TFTkydg(<7M2@MJc1JRG@zg{USEpY>;|^SDUR9*K~v8$6NR^t zI~w@wSKo^wV~0Qk&~A)d*LnPoQ9kzV@wxyPxF*(gp2^mZtB1AZSY?_4LnYpHpllu@ z$|TLS+NkMl2=1ZO1k=Vzhk#dfuhT&K>Gu()i7Bmjl%x0RUTrC6`NTh6a?WYSxk%Vz zsk&=P;nD+SpH|qzZ>%MA5Uv8NJ`i0tkpDOgMn3KPL^^Ks~VC!^^70xX(cEAnB*{lZ8*t@i6{mmyhwVsz>w~-#>01owuJQ`Dz`uzC!gF z|IpsD-owKoBpi2&MfM#qu6vHh{Y{f-4WENzEa5Xwkax2uysub7=ox(@)XI{J&|84MBpfk^w~&M;u?i}M+=t|@XXd(=W9?_7M#NIlyZbGi05 zGX3x>JUmfr%NRwLAH6!Ue_PkXq@_(@deMlV<1pcD@M|uCF0*hit2xPf?p%lEu@&QQ zdPMpVg_G=X;GnjnY$)Yj*oQ2*!w1W(-otLE*-dMzni~?iwM5+`+48ms-d*h zP*G?9nVNtzV6DynGt^esi|~XE;%?4Fb_NjYO@i(1g+4ByHK=IMmHJ z%^eEL#Ph(pjEOf{(Fo2B0$2HZzNsZs{^y;a4*qqz_(#TN%nHWP*S$l(ONYLL$`)jP z248FVRTN1HH&_u&l5yur!tdR0TIuLFQhC{cjzuZ@R--Z&sanw5R2>_#+BW2)v<^gm zCU+|Y`VONaWn%6x*2~AG8ZV!wmJIm|7XdRl?+M(E;r#O6+|(?;EcP~k8BAxHzn2N3tVNrnAIb)fq1(TB{n1WQkgh2#V{=4xuNDNV8@$)c|7y-{ zm|80u&_i8oI?5c1D@VhSru)^bC+`JpuY^01fl2c;#OBRhb?=g9HhSIj~kALIF zf5m>tW}@lVWsB_gu#z_uSfW$*?Q4wGU%!f>N?V84U$<%hZL~Uwt#?i3WBrmp*`*r| zF|~3K*hB_n1QtAbk@y?6_5iI-=tTz=Ecjg4h{iLv_DHlXsj3Oh2BX^ORC{Vl@fX77FoWqde)@5sY551 zPTjl--QDw z&nBHbS~BvYNxMS$dlUDN4WvcG zfei3HxCE6iXDr+1mX$}XrAf5(Xg7Xy?5Dp;Yxb98hsahlc2Y)1WAUsVjmH;N3xXz1 zn(_5M<3~Fk5i3$RcflxaM-hqFsklqa^=~IT-RHxqMk|X(X)GWY?89e z?Zp4sNE*HrkeH0Hg_6OH_0f!ZO={F*RY#5aWwEiJh#DuW$HsD*;TCo;uzJLHHA?zc z+eu!go;^xUSxTEkPc{BqY>eh|_rA?kbJ4#Y`w~)fklnuQ9l_?ayx0HAmOD-KwkoEO-Ijq{O@&+Ja{*Nv-nSw`g#g);$|iSi3{)54^XxG~tei_}D!vM~E3anpj8 zSRyfcqHKAT%~{1|l%UgU_7Ocr=d|QaXcBai^}krHy2|8}sBg6^XAHFk9lS7Ryf8so z`@LrtSiczMxb&0xOIi2yrR`&v7a=*Y?ba7D$)&%&7xGv3!_28wl-Y8U>n>JP)#>7u4fmDD(0?*pd4eO9wy=_&fABmae#K^vLc$8D5N%DY9uBZR;kqLmh=|1x~U zkPobd?#44G*4Sh>EgvYX#-oRU?%6^0-~!W=3uFjURiO2DM&**t)sazUlm;b6ca2cr~1izkL%_Ltj&C+<(K-HEl->~97 zR!gpHrv@5R8T6_?N7acn78Anv-1mAIQg(X!tFtVsF5KA>V&p{oktw<l>vbWL;cU zSElU7mfKY=iJ{jEv^B4gGgWOhGjpur`D9$3&T`C~103KJo9_(Uk4Z@i=%mCy^A;j_|y#TLrX z51K1B=(qiI0*-)9mE&=8|9d2Yp^WV^)6(WfFEsWM!}CU}r8OCn?Y8CYk;y^Dir} zX6*w8VfKTV<~eGei$U(-c%Kx15f&`^_tcRcyTEg>@4~aY4yt8rCrk-FbD!Derhw`` zOl5#vjAZN#>e>6`PYd&2}oO%FBMsV)SQMj8Bm+@0KN!Qu*U7cCxyHA z+_ni7us z5%uiE*uH$GDx)WFKCc+=4hAS$GyKU7tVc{Ao#5Z1#xar8L_7NTwxH=z{gT>g%W7Oa zRrqB5?gzqn17`<4M?O(}&k|dA@FOM{v=96G)6zZO31g)4)jD^E1YY`}x^c0l1;+_v zGdhL3mE^9-R-fDsP*)mS2(NWs!izvBU)(y9eZ8Zd(2m|g9q}Q)hqVLKhX6`wDS#W9 zxboV%-|*WV(*BwRFSZ$sDSLnQ zL{||J{vjnFRd7j{R$blH;e}KK&xD}qN>=$Hu&b%OBDiR`HcRShMfLFo^|R~IziJC_ zj1;iWM@`U8)>~9JRZ3p;I}Hc~zVtPHY__=nm{4q12b9-z9f#kzyxj46tH7b3=Q4G?Rqx7u@Tv$f8uRojyU(bm_h6@|75|P&oUpp1D+uhL za(j?2Bw%>aUntlMKk); z%w2%427)a8^ZP^;gABHlfOuQ`yn{&vuV^p)w_yB$fOxtB7V!mu1_W#K-ZJyv5{*eO zds37;(zp?UXye7DIG~BNJb>2v;-o+N_bPWj_|EuKDsq?Mh)>;|FqB$uNk2?!UVQbx zp#siD23&*+HmsZ_Kb)b;y&P9B@d;FS&}u25%TT}%^@=yq-&_y&$Pk&4cb*-3DL@cH zQ;s<9YOYWP5N$bAq&Y)YRF35q-gDLmNQ#hqSHTFQ?hi!e?TsGXBSVA5?kXe{{Z!|r zQqs?hdektE4@O(>cBkukxs_6dM}B}1o;Q+7A4nx1*S_pj5b&3SNpC(zk`FkfF3<&- z?6$q=6BoZ*rj%qYo(&?s1)%f^Io(L-jA9m3_Rxz%#<5KpMADa%l871Z%l;}S$p3?l?j1w6V}1)T$*CYf`Io}j8!6}@&k zU1BJq6&>~_aEWydMiGO_6bt3%AtzrC^A3Pz+62<3##|Lf~ zX;4-0uIapdmnhj-tSfB7MZ6|$A@9hr4}c*{Jdh?lzPehbQ{svw^ciB0A}M;Jr-Cq! zCdM5}aLgt~NVI78mNDm5kq{%(aa4SrfDr(!o7i3LQShg5$Y3QRUOG>oYpDQ@BWi*t z#(+2T@7hLnt6lfRWZ`^9RsIjc3=V)qP%NvMRrD)!et6=EwZW61d=MXc(<(K&Qm%I? zHi@o=ZeNI&-=!cBJN6&LSuyZl9~L9swP>|SqsB?K%BFkVqt0Ex#d!oUVv4k z*2r*{RbHvp|Bfv`iin6!2M~=x|7RPqCz9KAH>xYWUNkobgII3;8)qstwO@Q7Q4)ho zYeEJ!VBnN~B^K|A3f+LW>KpAJl8E{gMXA3HyPH~-DflsU*_iH^T$!hnRGT;aM z(Faj*Xi&r2o{a@EpqLaBviay3(Be&G=S?gNuaqpl-8K~DE^qR9V0*c@%pVm_RPyj3 z3!=@6qOM#x8OEOb0Dj96S9L^Zr%?f0vK(HrtU`RF6L+!V+I;$oMTCu4slpy8cST1X zIQSmUMz%wPR0#|XCyUcO1Olo+hOA0Z^V2x-cqvqe1G+$_%zjGYp6dur1M)CXYX9S> z)tdg$Y~iqLCpkiA;qSH!beu|v3w-`PBDi}q#KZENTlqJ)bD$Jo zC}uJzMhOd6$)-&LC!P+1u_L#HIe$cWBXLU(!d!?$HWDYBzA}3W=Y}{WH0Aolq1Isxx19W zsdi9lI55KuW`pRl5~9^2SZ!xFnS=@85P`vv2rn<&oW~7QNCvE;=eZ-5db}H>_4N{^ zrNlDQMM;EW)R3q*Qsya(wJg3grLs-sl%=6tLEfjMNzTdSwe4hHr1u|P>8(&gCQXVe zsV7WYy0B%}p^L82Wzo}6Lu-CVS5F<)d&R)s2^PLKuO>m*LJF9W9bXI#_kH2HT)sZ5 zR#XXhv4B!o@1DN4gKgN-soO)cw!t30A?i+2Sc(u0jPb*W!?kUaxX?c9pMv3z!2+*F zTi!3yv5mgKi>J1SL$G$$RT`rj=1-4VTW@N7<7GV{!w$kRr}*DbLz`9IU`%RQb^kUt zQA7LtC{ez$YgAH@`Q*zvt!f5pjVMWK7&kORaI|LtNu{rf`^?S|%LhHRW4ZJ0U-pV` z9Q*bj1BgN{dNd#Kf|qCz-cW@pbn)6Uw0P*OTIYO$>J5uU(|rY_Rs&daS4THJe6EWw zZOo7}1aJ#3ZRU}NgN5icLH~L2U0M8Q>R8bnas3q-Xu+{8Dr?FrJr2-c;q9k{zC{h@ zuhTzHN``(gi*MMJ@3fY0-`FJ&d=l*pLI)iCPA@}mC&>Kz43U?Q3Z~uH(nU!nR*r64$sm%RPt&kGJ!oL;%C_~mehlpGq4XlXIcgvE_A%Y$ z2yQCS#&}ml*tVi2>m$hWw;g@%w(zxIw)SHXdhtdwQpZW_37wtGI`{zAe($QHrnli= z>k0VuHa2x!7>C%EGi=U1I8YmGMFKe*$gXJjWe5!wv3c1< z18dX#7K)h;jhr-)m$cOrfPTXeFL42)HM*Cj54-SX1i8=8f7yZWM(PcJE$ zwV!Kt^_NP0`b{2Uh8(O61thf+?WCKvTwC`lnYtk(6TIHPeIr~M3dAw*4%QZ0g}KH* zf{f@pb;jQE;M0jf>wSqvl5LxvIK}zhOm^cVM_BoKIW`Zx8~Q#`r^|l}*@uHny4ff; z+l`H~M*1()K2~@R6m{V)z6_W@ma|Utz3)FCY#BD}+f|W}Y_3PZs|W~(W?kt6Hjo6< z_pAHY13VBduW!NfY5#ghzno<-bcoh?b2&d<%n9^=O_{^lZ8cNeg;i+>l)TOCBUARh zOB77k?=(ZW->feoMHq$WHn1ujgs-3a-6$aG5@d={W3$Vo83)yR2i#I*AS%Yeh)WnR zp7$`y;KGv+m#fr4vufV!B2SB$oj*_?Cmf_jW{3>0TqV<}gI!UP|Fbvnesd=vik+O8 zp%5Fs)&&98ryFW%goT!+u9$){(CG&qYf_0N2-3*Zr#fP!X5 zrnVNkhj>l@)-yoUTu>2przo8H8A`suNV_og5KWagt!-Y829K^Nu3jh0R0jF7y9!Ub z_UE1`!OBMsE4ywV57#rKqke8sPZE{N_{XJa(wow^!y~wM_w1Iy;8L1~QC@g59Q|fH zcVE`I!A-lU=qZhf3_FrI5=K5Ga|3}wL5_!s^sBQ)lGxh-GfhuFM2gIb2dHW!SCmZ+pF zU*3`96_%*N|uNWhExUYH&P% zWf%XJS)t3pEuziP^F(1*A~Z_MXSt)T;b&ff*s5XTZbIx$C{08#Hai11r%Ks=^sSw6 z`=RHl{)8qv&YSYfr+BTbuz3>j+i0a@7^JIczI@KdOTDJDO7nZ8ad`MR%^N~)TI zOOtPG;J)DKw=$Y^Tl`SHZ7(5lvwtWs<{VJN9@rdAt}+ z1;g?21t(JSno?=k(xDf2VeDk**9E8lJu6EAk$8bZ;jFd#H+jY~*13E(gQC229%H?4 zdb*M{UodlND3n-HTjw9fog!Dez&7}867BTA9Q0-hdV0A$!LmG)72_NpoiSc6y524; zr31j}d6}$vO6Ky?mEb_h2gy*b+Rcj#GR?GIE;?oPWhSh;$mMJr>U_%1#RZ*n@-E~b zoge7vg%)v{5u7PIU=&)hc<26jFV|=Pr}_(=WLJ?hZfcdXLz5(n93Jj5UeCU@|7kvx zcb+5p^sS7Rofb*=uMxdO=Bcu9M_)bE$miSxQ?rdX6hUG^M8{77$I9ohX3P<7Llo%=iz=Lb=K;}0BCvMa5UZN5%1u75c>=t+|OeHnW9XJt(c)SApN$<#~#Sdp^TKcyLB z=;tlz04+5b`RUMBASN_Hv+r#InTsx$BzP4b=m_U8Dv*Mf^kn;ayQWP4Eb+4oVFFb0 z^zo+CTbYzQOfud_0^zP%p-;4~%QdY{8Og3*yoT2^yx$`=F*uG%3m1x3&WXo`t@Gbd8caOB?g zV`_~+?8#NeUc*MpxOu%nzBetW5Oy*NGQD}*J5KV7TnR5q&(T6s!TbTJFFeIrd#&H4 zyZ1_j3te`6C&B5R)`Hy9>3cPMYFYsSi9 zbYP-_&eIpEs_p2Q->%pIM)z?BmNEyGzYF?^Y@;5t!J zu80dKv)MbuwkusPE82i}tN{Ze(z49a1!OmaS{6n_ONg zr3n=;_C|Ac1zdh!=aaT>bm^js?RN$TEU&B%AF629#(;ky+}sa3?Oy2IM1T1&MqIS7Gjy6df0XGY#mEC=1!l8IUB(D0zX1yjU1e{gBlG2yaf6{8Go%sXNYA3Xr801FP^} zV#V`(di`>$e2t@OoP>x(z+545EEQg!j_ZY~t^&JN!40c-VUW02*z z=^MWwsDFJAj+5f8mqb0KzgBitKDeuV@s|BiR+U=ouc~}q)vw!!Egsy#dXKKJQXE zKTPrkC?WzjUhXr6gZy%40MHg`GU+wfS!k-g%|v^=-ulz^bGbZ@gCjkLt@~!ik9D$L zv4*s%ZNKOaTjj>Ab7NNNn8=pMXuQo#UFT~cMN<<}l)`E|JC%gTU=Y7SQHU=NljO&w z5%%d)+rHE8v?!7r<;V}y91=2PQu&e_yUdwE$D*_V8g08U@mf)>gJ zAvVKv7-R!ZRH-CkS7^JL7StI6#jZ;7U6j=yQos(ZG@)&Ll8*?EE zkRn@KH8bRY;Et4P7-mXG=JIr;)>vg>cRXIV24t6>QQ0|mqsz=B0P9V@Tk==T! zdk^=OL#m|w13Pn(B>OD25b%58vdba|2a8`>2LYIpi@3^=NY|owmB6j3)|2&D-8Xt- zC7(Wp<8FGvb{6teH8wt<+ZVO78^WL~cxT!?Q3XlNRO|-1mWzlMuiu~?8I;2ob8!<( zcu0=1m5eqV&m3m%H5@Ztqc?dq*%COj?r!1SnHjJM#acSMY88d>gVYR-DVLr7n`II* zVGt^vvUgs*xK-O;EcA*`xw4&hmwXvD!p*Du>q^g*(ks!f8P8pc*T+#;#DC$}_2$}2 zKf7=A0)$2(btPVSoE?@o!aXSRZ7US&g_NjNihC!^aVS+rQ=XI1PWO`Z3o&v@5?^T;oQdp*&w?jqVLL`2Y$1LV-&UD1$M^EWUxvI|OYLG-W>q zQM)O8Es24s&EZ_=T7VE9BKcq@r|OHkF4d}CPsRLH;kxP)?NbL+teM57!i_i5iVUM+ z6D!@BCk21Vn%e+>S+4W*G8$x~I2(CQsgn8NoacD!%{AE$#d+1XaEQkjwb7cFTSK zED-_zNg-DKWgubIZqQ}{x39PqXl*Lj(M@-zXjOdAFM}MK|H~o(HM z0V(BNX24-tZV(nyiwIQ7P6<^j>hkHVm@9)-VdbdA%sZf}88$^imtTGh1 zVWCcFa45ru+;@!IAVx+aF>bX_A|ozB2d7q@Q4z3_6y!TW#KlI8lK&8pm;2#00>+cG z7Et>+DDi)!1fg}T{ar2Bvc9YX!938N<3RVcHrGWDxQXwSKCC7FTk{$r&xRs1B}z$2 zv-YFZnDnE_=%-Fbqt!2SL_m>d)iph23t7`IeD-x*BI>p5aw5ak>~nqYm!KVu%1J$F zFc8Lj{E8d{O(&Ba?!k-9cpPU^Y$wsJM;J9~ekx0cA^+OqB4gS&VgU_MhPDYGQ_dL~ z^~oKimhf)geJatL4RHKgE<`_ffO!J!>JVa_H$=M>V~8W``aO|jCXmoW=R8v{7aT|I zKAG^*U}PEkcj2Lh)vjlPA43v;LXnI71>A~t!yAg8!xE3{03sw`Hm*^F(~6@_CwX(^ zBJR>#ur&qjMUN@P0fMg)?SNk#uBJG-9$<6Ec}zP_5aROyW37KuiHnlU$Q;RCADSUB zY4gC-iy6B$dg$sn)~Tc->1l}4ZG!}I*4}SB1h;b{+wTYx5)lXpq8pKXbnu=Of+iK0 z_SwaNv1oE}Vo-_%f~HEMlX2Z~o{3ZAL|33F8t)4nfwJs-REH#;U$^|AGCH=$jm{h(dCjwCTV#^MhyYJdL0p#A$VJ};Jq(69i(UC^jI50N)hDC z5|n*OIy*hjDtPUsuR5iSq=D0Rb`@!GFp)RhKLc;s4LB+;Mxy!~yg;wW86jAy$k0iw zklb7H=GjF|xr`QABR+BAy6QA60xDHI(RHm}@dZyxKmaER*8L$%brB4u0@WJ$07-^l zLcK4WI09OAv1l-i(@KUR{jtxrZ?C*^c%gq?RXD6;)V zgt6q|S=n4Y{Wv9T-`~9(lmVM>eEfyJ%HyI-H&=|#AY8#fO$Hwar3xTv-pv<5Y0&Sl zHSW*4Qt#sS|IQVjFJ>%$bRYk2vA7f-s9rWk*w?jr;kpg#iavqBxnZb$xS=xxSMj+JZrXv(u6Fsi@h*?amEAUCzZTRj!pT z`q?J6KSFy|Yqsmg-Ml|#5{tKsIRT~r3S2MM+aPwRzi@(p&5SiIpmzCMam!>JOa2P;zFz*5Av1tJpf3z{4Y*tW#It5Wb|u za3ZwhCwH@~@4I7;3=>x0;8)zJp!4Vvr&?#5dS?>9W0LEy#dBj?Q(5_RJ=(>OgxVV3 zSNYUb(&4zvu-PR`;BD0Fg={Yinm24IZ`@X~E2CnU2Y;xr+RML=i>e%!up7{+jcST@t*}o7uT!e2)g}JW=B@Kf<*xLTvvF@6zpxF@KgVxOf>|lq?+eXol?u}tR4G2%o`_mbnd$#v}?}x1R>#4-)CFpcCPf4B_4 z-QWN3>+Ao_b5;4&k0a7RdGL8^kje^OR(NiLVZpMnYKfRCc$ z5(Ogz_^BSoMy4oddRz_i^*?ODv-f%U4-R$_bKluwzEi#I%N&F+A7gB^Xfd1B7SO!Q zN9w=aa>-;Ff%GMIs_X8re*4R{LBYYR!!cDsv6J;oTF?FZJ<<=n_ZnIs%isQ&Z=Oc? zhNkpm+PmdtT-IpZFyDU3Z~skRZlw;JpWPc}a`(SK!?Af=X0%Id$4ZqY9gCK2R(itX zX!z8{t-NWH`vq%J#wKVNWE{&JYADo zR%TzerR;pRZt4psqkje8KV|I-z9Dm`=539v|D5&fMV?9WF4*+vOqsga9M0*qAGCUZ_2km##d5V%WafH5^53(5y)>4nGDnK4;LNI2 z1q&|yp!|GbOaLW%b}+#Fu8*Z57tc-ndlv<=49X_x~q6{Qrev$MgaL zPWFif0)N-k{ixcz>$u?CYo}Kmu3vZe?`^H?Wi|IQSAU#o+0oMMVF4sEA}6dXF$pT? z-qQDI^QY?N+}AIc9Z!FzAjGHi5J)U~+fccHvyL_#8%iab4!8yM1*L0 zET8jk!n%-M%gk-N)*BQ0fHH+%Lf@ zx4cF+8DZ+h)kV{4kBfQ9ez&N7yKZ)zW{4I&V7#h1vg-j#pfrf$^> z+r9H&=^>=H%E(q#mzRG3T-GoAR>Hfr){;4x1MVL)?~vY*&sV7P^1Ih z?e%_w-A0MoRnCd8HvaD7(@aG~YJU0eRX_Uv#+7>f \ No newline at end of file diff --git a/test_data/golden/browser_qr_with_colors.pdf b/test_data/golden/browser_qr_with_colors.pdf index 0f04843fa9b6fb7b74455fb5b62c0506a09b81e6..66660f0e0e74eb91b46da0c28046b064785e8312 100644 GIT binary patch delta 4096 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 LjD(X@9RmIzB8}gy delta 1671 zcmV;226*|JBBl?JIDauRHZlr6J_>Vma%Ev{3V58o-9L_7M-ar}oTuOsX5JsZHz#mx zr-C92k^?D_6JOt5y#kyFkZl29!sRX?{jkgK>YCvc=j&rU=W{&&{8Uf=dc1pI&p$l! zleeFb=kH&B@NK^2aXa?s=SLp@c{b|nACHfZUmst;{j&nSJ%9P_m+ukRbKA~;&s_EY zuWyh4hc#c0H7>@Q>vpVrLDqk$$Dd_g)3J`ju{KxpbGn*et_+u}!rK+$YiFp_mHXkQ z$qt7JoF#6Qs1B}Q$+?Vzxlt0>sropuUH%!_Fy<8lW7`}BW3#1LY_=4O&6Z-Z*%DoZwV`yXUMn|S0%NnKU~aYq#%4=k zY_H)<=mBx8M1%ED>la9ccQw)rmw}P>DE|x0A z`kh=U2FBjB4~#jFf;s0A7;_#CQ@d}0F|7)W*_^Z(#8ySn)w|hEEbx&uhS``ti3Lb_BhCF3I z%pFJ{@tj9rnwkMXiTj_a)05BE)oc1ajP0-Zig{6w=!#*>+C5L z8clOLGG!p7Y0P3Z&8gOeX_vrUR&K()OJHn4*cwU8kyfK(Z8G%IH0L2V8GC6O+j4B0 z)Ba6{QJUr^O=xb?6pfwSX&4)88%){+#&#+Kb2GGHZia3!MHCp@8R<#GBxINAo~F6Q z;eRgkJxz1Vwb0yhZI=^+zP5_ zP_hmgWNMm|tfDy;DVXz+`8zUyaJZCK3LiH1DFa4Lb3W^osh_5~t&vlPjGE>|D>Sz? za>AfdU~U89gt4Z;ocNzG*c6!CKsaHv>3>c973?JwM@@737@GUg%c8k;=nE#C0&{&` zFxS@wbA6q1lzq*LvAiSn#+MA-HO(!tFPZOanpy~N1(B!B15Bf3w18PWMY=#yLevUuPbbkfr zG~|W}vaWqLK2wd1CGR$CnzQ}4ymPE+&i3Cj)7Ug9{W8@U8XPoB4jOn(FYZ~*bO=EsFG$+RsrZxj}H+|+sqpz7_Z8F-}GjkEvvam)RCJN){>A9LpM@{mWv9$2Oc~-a z@*#;o0m$Q`+LJpFt2F8XB-m~-FaQ8jlmlf7Wo~41baG{3Z3<;>WN%_>3JP;{VRCeM Ra%E-;F*h|d3MC~)Pe$A>A+G=c diff --git a/test_data/golden/browser_qr_with_colors.svg b/test_data/golden/browser_qr_with_colors.svg index 618f9d2..0a8173b 100644 --- a/test_data/golden/browser_qr_with_colors.svg +++ b/test_data/golden/browser_qr_with_colors.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/browser_qr_with_colors_hex.svg b/test_data/golden/browser_qr_with_colors_hex.svg index 7cbd595..7249969 100644 --- a/test_data/golden/browser_qr_with_colors_hex.svg +++ b/test_data/golden/browser_qr_with_colors_hex.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/browser_qr_with_ec_level.svg b/test_data/golden/browser_qr_with_ec_level.svg index 10fb66f..9b789c1 100644 --- a/test_data/golden/browser_qr_with_ec_level.svg +++ b/test_data/golden/browser_qr_with_ec_level.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/browser_qr_with_logo.pdf b/test_data/golden/browser_qr_with_logo.pdf index be4551f3a7eeb82dfe77107c71b5e08dcf0bd266..186cc1cceae34c89cbac06dee288a117a0377852 100644 GIT binary patch delta 364 zcmV-y0h9imSDRO`YAJs<3O+sxb98cLVQmU{oYhiMOT#b_e$TJCM}3f7leB4N4CdO3 z$Z$*_MDd}nVN|q{E`#~+y=ykb2l3g$M{>FE%Uyb30tgC>0Sz_>1F2RpnFx9J@$Nt_ zn~mEFdEK>Jc%&@C3Z8_V`&}O(5!0#o=FXeYy!wrZB1o8gWGsIN-|p6KfJt4|HKIkt z%n&j}Rnj^q6a+;v_Tln2aQ&#`vxRHB z=ECpEdB`p`dIb4z*7rWJBS$axfjZ$RJ@}KvpAsUdPm{AMxd@bj0RVoh1lyBzD2nQ55O`8@~lSV%f zLKD;AfIu9|8cjvepe~cfzsGJi5C_DW!)xOBz1XQ=1PBVWh8Ro+8j@H+Q3!eW@oqsb z+l}1{dEIwgc%&@C3Z8^4-EQy@iP=nibIaDZuWloP2qGpQ8Owjsb-T44p=j!+K{SY% zYC?*rDq2fIPEZt6PGz(w7<~YpnHVviQ?3a}P0(vxV*Y z_QLJSdB`r+@dWbUd>EW(M^0WGJaxiRa_}dKKLHzHs8^G+D!DL>fdK%1t_0i)Wo~41 mbaG{3Z3<;>WN%_>3JP;{VRCeMa%E-;F)%qbFbX9lMNdXEk+}Z= diff --git a/test_data/golden/browser_qr_with_logo.svg b/test_data/golden/browser_qr_with_logo.svg index 8864ad6..ebe6e76 100644 --- a/test_data/golden/browser_qr_with_logo.svg +++ b/test_data/golden/browser_qr_with_logo.svg @@ -1 +1 @@ - \ No newline at end of file +[object Promise] \ No newline at end of file diff --git a/test_data/golden/browser_qr_with_logo_as_arraybuffer.svg b/test_data/golden/browser_qr_with_logo_as_arraybuffer.svg index 8864ad6..3d9acde 100644 --- a/test_data/golden/browser_qr_with_logo_as_arraybuffer.svg +++ b/test_data/golden/browser_qr_with_logo_as_arraybuffer.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/browser_qr_with_logo_as_arraybuffer_jpg.svg b/test_data/golden/browser_qr_with_logo_as_arraybuffer_jpg.svg index 25d9352..2744bbe 100644 --- a/test_data/golden/browser_qr_with_logo_as_arraybuffer_jpg.svg +++ b/test_data/golden/browser_qr_with_logo_as_arraybuffer_jpg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/browser_qr_with_size.svg b/test_data/golden/browser_qr_with_size.svg index 7f1d40d..b7bfcda 100644 --- a/test_data/golden/browser_qr_with_size.svg +++ b/test_data/golden/browser_qr_with_size.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/qr.pdf b/test_data/golden/qr.pdf index 464e96bce3d6b9143782fb863896bc797b8a5e27..f8cb54956fdc0f116d02b8374eacd7a21aa74b28 100644 GIT binary patch literal 4382 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 literal 3363 zcmZXXO>Y}j6o&WnEAA%C;+b*AiKQru7P3AAdS z&iT6MYp$J(Pv3uhH+V4#)j^we6Pn zjh|n(bYWbyZMznp!LS5FVABnpBK2T16mXIOauJI$EiNO%0Bu2T#Y=hMS+pF#j4)+{ z%wd3|Jg&~1>v_?}q9dU%IwEm0;xZzVx~t+xl(nq7eE62Wk3EqIln8&^Cl#GViaH3f zu<5Y2fhb2FPK*c|3=ueA9$)|nh3Kl(uY2Okh$nJ_yG4R@QxQb@N**ytW}Z2gs}zXy z3@mMcrwyRHN)|;~YJNq_@e|3Cszx0_`qpF_lAq5QWO0rWeLnAxYsMn;hhZ_VNsw@# zb*Po}`b`L0#6CF96R&t?l0szZ0A%L?HS4KP&>q=>y|M*Mu8=&Os8|%`n4AUr!

vab+%}GI$X3p`4nx3KIuDU&d`WTma0yhP*hct7u6*~xm%*TD*K}2 zWxKvxTJiD#9UO@CB@238<Ch5qJw3vY_|lur$U}BDSt=b*1JG~3X3qJlW^SZC01Do1>ZqdzwWd9 zm0QVZqd#m(cz8ftWv^!-bA-aCbGx<`pJOB@mxNqMFrh)%2%IQMcbiIDlgQDa*~jHS>UP-s1PoNgxZHLp+Vq~(86Gu zu*ndXLzwgh>3EeAa;Nfy8@KRztd=sPRSBg;MG0F@VL3&xMZv)$Gu++OvEcR(F@+)8 z-xs7?TE(8}RCX}oQ<+3jokZu3iX|8Q&gp|QHvvd|-Xq0C81RxfgH4BtJ`B(Mr(+Nb zo6ZB&Hv&J${9=(d9hvF_inm3!*N%6UQMnkF=zym)6m+t3jmt*G?25Xh%V^>B zV@F~$$wf8!ON1(<+und!JhXa7d)f%E-ssr&^=ll@*m|=D1MM|t_@4IFuR?DvH7j*q z%!HfAB$Pvxg}ZbczB2opRD>m6NjWQF54KCf2+DUF`#p60=8#{z^LL1E`}IS|+tl@^ zKW#Bh^Qk?wlZ-IdwwJSP;v2jEypjzh_+Qz`YkZO&_p7Jp_1?eX-0gNpa@21$vtOV7 bS<}_q+wO2&?T^lBJ}j5r#l;W5eC+-Oq2;=o diff --git a/test_data/golden/qr.png b/test_data/golden/qr.png index ab8ecc73cdecf45be9af558e1280dd4d6de27105..6bca0f4ed1c8149526d833e6abfa12f19345efad 100644 GIT binary patch literal 991 zcmeAS@N?(olHy`uVBq!ia0vp^?I6s-1|)5sdx0c43p^r=85p>QL70(Y)*J~22Ih&L zE{-7;bKc&J?vpX(alUx#|FUYcfUFzNeJ<5{jsG}vUI(hnJI>=*be;E-%_HxCO=Ro!+8H)pf^MLZFiXSkzSL(^N zTfci4_I}xU>rinSpt|k5Uw-zx$_mu~@onC(J;9~Z3w{1BdB|rYzV*5C?0r9CuFUJt z`Sqwcu-b0Z%kJ~8Z-1Uxrf&z7yl!u6@Q#1cl^v?rec1Wx*UjXU`4?j>Yw>4inpMG% z%{F(he46_GPT;TEw;DHT7v!+WNOuRe1;1+o`h?;5zt{qvM=vz?+(|f`bcbR6&H0x~ z{uF?G_N|Js-2&(s#p?yvOON*@Z|(RUQ^or|-&D4`(suflgeu+w9BIEpylC<41>STC1(sx-@o43_i)OxgN%GT*G*bt zd0^v36Oh+KCz-h0^nLMhe7j@yp6By%0bTb(UP9*Q-<{_hnPq;lzXK+)rR#p@9sgvV7JQG{y$~4R8t;MO z|1=h8#2#)w!Q-!zrhK=0rDb~OZ|RwBdz!C4yyNY$YW0@968d+?o!uY4>K|yS}%Kfr+^9?#*TI)ZXrV oK40<42}q7&<_ltzS#pNoMYsR(bHjoFV2)+*boFyt=akR{0N~5TJOBUy delta 389 zcmV;00eb%52bBYm8Gir(000?`71jU%0bEH$K~#9!?b<<(gD?<8QSN`~%q~hscGquX zl1O~75`ocM&{om*@%W8#=+F@zM;3_JfgM4+Z{o4LrspFmw z+{Ma)160ZRKAnymJL;FbPRFgeL%9we(J^`|4Z*b0P$w20I`W;4!Zh+^_q^5gLLSq&P&x5L3?4K2tyxNhmN=} z);}3THzz{=(0-wVITqtcU18+Vq7EI=(b{ilt>M6?LkD!6KCiua(o2VqE6z*NBe19H zMTd^1z7$ButEoeWj!PY_E-&f#>d>*x(Q75-Mz9VYYmU}e99Xn_`?orDL`N$$fQ}m7 jV$-1mI=(-2=%~gY2d*{m?}^gE00000NkvXXu0mjfV=28c diff --git a/test_data/golden/qr.svg b/test_data/golden/qr.svg index 78b847b..c7e9c12 100644 --- a/test_data/golden/qr.svg +++ b/test_data/golden/qr.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/qr_logo_arraybuffer.pdf b/test_data/golden/qr_logo_arraybuffer.pdf new file mode 100644 index 0000000000000000000000000000000000000000..bb9482bc9ab675c8f9fd08b26afcff1714a51284 GIT binary patch literal 13587 zcmbVz1yqz@*Du}OF_cJ1HzVC4EhQ}=Aq|2I-61J$ASvA-Asv!=N+_NQ?+_ zpW*+0_rBk{@A~dqm$g{WKKtzRJI^`$oL%b~E<-g9K~W)TBCaUlkBCT;U4-4+!Hq~x zj!0PJsfWLlAG@%IhrPd(nviHx$3PW>o)p}`Z=9WIdJp5ezyK-Sn=-M#IZ!PdGr zx*Bn98u7F5=JMM7_wPcxn=4_(A6si{YdIH%J%8W+RaE?J-`n;J_4`-DZ>H+*(yPlU zyBp+QL*HLiMa1QS5aNEJpCV%G;zpn6&FalwYWVVM)l%8#h#M4-^%08kh%2S=vis5WT9qh=BZmd%V5VOEC2J*Z)p=`j@Hl9>0}i=UD{y`c`KzuX$Dq`2O`5x7p_f+ z+2<_J84%4OAC``vcD-d8?$~FQ_be4yW+=c*89Fg~`O<;0ingkVw;(&Zc2ad>S&ogP z+G%+BhrGv^v(vBfV2@R)q>$Y9KiR7JQbEi^@)IGyyH))sB2y!~H+Al%>Y5^~$``*T#oT}nG# zg2;uH6P;TdjcV<(S&pOAC{g`wyg1=UzA4N-6TeNK32pv-9U5AFzi_;LIE23Y{-8!v ze`(aJgfWc?Y%BmQ;qzK3>75KF8`F?oP-KU@v(`(E)WP0*ijc5Dzbf5>F0IF)j2$Pd zc-ps6n)zAYZxr2>b_i8#x^zm-X4PlXt>u-SB-~oXh@0Goc3)pBv)~aaACs88 zn{U)8cxopP-ovo>mCNdPI!|ggqM>PQjMktS0A6%K{DDIy?^uvdJmrf7Pf8rJRRjaG zvk&Ye0T%ud@o=iVZ$f7N1%3*1$i{m>EF$$-hDv+lV=e)O_!b;t$+QpVPJ2zS%i>UK zurB(`lCk`CNzs>HwT_AXPqQ>7C0}wF#ld5n{zm)$!~}DX{b)%y>R&&^jAHW8qaP9% zE5pjevuYWnVC%#cBIT}l=TKp#RD_oWtS7kKBt?ZQTbPAGQ-qJKn5yXlJRHyX-A4!< zwY1mYVJ~=SsPen_@%Ki$1Vh3f0H+A&{RRbJasDr)uQH()uE|rR*p`0NFSm18!$NNN zP6_xb`dBm5u>|w;xWJ%|_ya6m35-`lNiI*aafC=QoLSfv2#Bni)^%lv(uy#sNqx$b zOU_a<8TcOft*Sf*VP-<=vRgwU`a9ebEWZ)@4o4fSkmP5(v<5s*n*Tei+q7ui-H^sQj-km)fL6Co5Q8EuG8Ai z48iqjZHPnb>&vvZI-sG@`maWdA-Ev?>uST#NBYawydZO&&+LbfKF?P)U?YX{)_Wi-yN)gEWOz|D3`Z@`)b*J*lR1P(TMZ8Q-Z=92!|A4-}J_Vuvs%USVO03@q z9Db?X^*1`@T(nph>pIZNzWZDON2o;+7nBVe5x*}tI-z9CTYwpP=YKDFw%Mvie?~5X zqnao4EyYmV7U;VuxTL)CYXK9I1>|X5=VM-nYD3fQcoYdnFVN?2fNyni@;#`eeCka)XU%m*U+iP1_Mc`m<>&v zv>j_`^L;Dlc9x0Ygr(oqJ|&Frf_Yk1c?G(i8JyKB$*rK{uJvX;EtfQQuhf!{^~Qo- z&a~U6cSPGrgbfz&vzqj+NIcczdTZ~qWTTyswp4gKgP4u+dqD#f!nm)-q zj9L7_JYX5mfX(3YGABrey`Jn{$gOnm%2W~!4X|jjCDy2R>uPS66+Zi!iCN*yT`q2- znxv&Uq_FppWlVclt)S7Te@B#FEZao0xkJac3Grsh-P}z2TP#f{wP=i}WBN}`R48A6LQ+qCkq24H~JYhD)zSLTf4YgqYz4^303YSkWS>nzt3K|e6_|3MTvuUjFH7@2 zi{nt1Eh=~|scbPi9BC_Wx$eIBMbZ>l_VwTw0-3t8Q_|5-te`mQ^!(2fc#1;WaA0c$ z9x^fGyT!PH$W2ijAMK>AF-J z*b!-K+^#@z}%Rcip|yg6-D4xZIQ8Ds?u8##E@~rBiP_)E0cD$8V>~@i8?KjR`x_pq>^V1CSz^rhAN=Ck%BUL->jn4MmcL{^B zYK}VV#+9m%KMFGEqrNx)_WI7MEqIY#D(Fj z3MXQU0G{re3(;sP+O1juPK!J+mPqj*!YeeTR>qmiz;mNqwf<~$SGoRCK;W*~UdCJ= zYq4>=WqPf`DZ#rp{8uTrMCY++v)gFEOR;2n*Kj#+I;j z=*7hSDY4zUit%k$bq10ueXzi+6w=9i{*$T$=)EN*A~ke$>4$K;r)%QW-CIoKE7+q*vFNU#w7fFP1TG zxI63eLkfkiUWcGdCHY^K3hqbr%qDhMEHz0W)U%ZzpR4_@>oTx4-$e?$RN_5G(Z+17 ziL%4bh(xJQunHt8Z5t?3e|0`>_hx>H434|CrfQHLmHnPO>lW02m~Zhu>QMQkrwzI8 zqHY!57E@Mhfc&}zWwF9zqIYj*YRt`e9t<1_WiKyoV|d+Hwb{0-or%<>CaA$GR(MJH z?u}@*xmixKS!yP#ofNAy*y#+@7{sgxYGrk}+lUkQ#iVmV)q0f4?a}q|O+Y*lsmW=* z5;i~lVzRoB#oLjq(pBfB^YzU_uo;_2tbTfvWZhY<0NU_Ms?G(Qkva|T;#D{&T2AdM zF%mis$(O|%?^)Pv(?y&58jOu6%yFM#nk1$O5-yq-^hr0=|n zF~0w527Qk+5j+_k`Hw86PNUA)F1Z(Vi@ zrShxeW_tgJci)dtg@}&aa+K8++l}qb*~JaY^Set|!9v5<*3sXS-hmse&rgsAL{45$ z{*{IT6gqh&lKQtS)+ETsiCy@SfrFcqqd$?bae#yWEl1na-UY~KRi64kGj#G(_4f4f z_Hy#_X9p7rn?HSmPI2$wClc0jdg|ip{|~L|?cwcb>|^f;;Hf!1f9mM;P*Vj!)U$u) z&Mpm1`S5?vnI)v9#Q$5)d@#41A<#~VV_14vv0WFMDVxbK(P4e)_`ICCzY0qX!5|V- zKWTUK`=S9n84))}7N7dx1)jJ7=xT4BrY#ms%G5PXDox0i3!;YB=LFNN)Rbx6m*LYn-@ zQLcZP-r$S80)O|bW5%P$S6cKJ-;u$?A>A*IBZb^gTp-#A(j&)EZF-5{47T&@btzN+ z!dc!h;t(<0Nr*w9Xb@j_o6E*o%9=lJ7CrQB2>a?ZD(AHu^XghDvLIf_+E2QBC}G`H z{7P50$@ghhj3pdsfpGZr)p<2>b_XdKkk{ z+7n0?*QoXop3BXwVYsm&n=nf1w24PHmR!ZD8?ij?Qs6<=OXzf*cBIS(X*NX(%niEt zVupPiD}W;mNxg#uFH5rC!7hqvY|jr*@AJG(Fi>OZ-mlwH)juaMOq7AF{rO^^5293{ z3_y-cml=TX-w9=V0I&0YVCUbV|rm5$mmD5sG6ueJf0mbIjtZd@IauG8|Z>a4YO?2r7)eycKRx_6;RU zn!OdqJv)}<)xQ;{nHyOw0*66?my?~wvWpqN6+TiT4yE9m<*}BR_BOb=QbG5z#WtT_ z(|zhTp1VnjOIM-~r5^vnW6hsD_3&n;49+=?y9Njl<`MKwDL!Wt`rDm~)T`7kY$WfS zoI1_YC5)KY0G9FI;8FbArsHLhM!cf4a44PI7xPId`AN`a6<%zgJ-{IP!s7uoIA*%` zScDbUv-FbS?(pNm10jXs&^(x3?LQ1#mhf2Yo%T?vt74gr3B#8Pn`Ll%a7_4IA*`^H zvzKIko8OixJluF^@mlK2>CFbhFjZkQ0N&mnAO2Gqy7vB_0@?hwsx3`8gnwt`uO`a< zbO=yK*aSbcA#J+huQ^H<&7cVzO@=m*jZa(*0jD5j%pGcwHi3{vHz33A(4)Gv?g&{x z=N$OmVpprxV+d*JMR8hApbj*>uDm;fKJ?D+qvs#^u9o;F5Q`%`C23!`++f0Wz1q3e4JDH_^W>{ zxng6_kFVw%szw9jXOBSPkC!Lj3d0ggqR*I{1+Mz_UrO7>kgMZ9(O8IOTjDrbCq@=m zVx*1DA@^kTRzvv|XlS>MUeku#P+}h!S1P5C*CO|l7!rXI!6wdecIJahp}c(4rDFV7 zopeZrRhX*(9rplq%9TAt?_%v->L01bWrHEXyt<;8I^ugcWeccgf7M|y)AWw8Fw_(F@p zuu!g~>1Sf{S6}XU0XrJInz;kdqw}Q(w)!-;mO!yBQ5M+E;)Eyas3!IAfN}`r?H{{VbC$5q8e)56FlqXAT~BgQcQ zFbsiQPWyxeEShw07%FZ=3dJ;6vDd4LdN+cHqM55m?lnNQYPyFK?atD!310myy{CXH zxE=1z5dM3HY%Pk;zonhD@5VLuNQu64VL9HMy>p#&I_~iFCtN-85=9_ULfjJpVJQ*o z#Yo-eE2Oebs(c}=B-}ZIA7{>44L>_lmqv9UqXFme_h9?7fWbDaGBU7_b7e&pHbF%v z9In~fs+nNUO=Eji?(bwkF05ZWVzrii>x9D`xK=NF{f)EwpgJ_}$no}a_cvE8wq>tU zFM1?xrZ?H(o=H`ZwXRuQJ%#u{K5n?vTBMiDi8`dk0la!jx^2t77JtEyx1qNdBjj|# z+wCNZ)9_o$pEFAnuAck{G7?zA{Q8Q*w!I^UK2*FjZEOl&mh2Ack}getB}cp3)e+eq zqS%=@)&f6B&O^F+YqyI8adgKV-(B6a*&*T)%Bqa!1T0V1{D#!s{xy0y-gx^_EET>;bEHMGb*&zj`u@&Ni5Uo%xDP^Nz_A5}Fm%Eg)_9 z%?d$maN7)SRw2v1BLfBFr)_k@$%I1!0o^1WI-ER%tXUywlbifmve=;fYxKhAlSRz0 zLz!)V_d@C%SXU-C_mB(HL&UVkJGR_*2|(PiTK-7MT>ST)?mq`e)*-RZcVmjst~D}m zLxFNx^kKQNg#<=VOX~e4vWwJ!xMO|M(-Sjetbs%w?(LwxvNvFb_(S|rWFPuvsmit& zSebgU1(DCylsmh4;tiC;y6KH_>yIqZ0g|^GO@&UVA&QA+q>Dmuo0W~S7jNj8PK~qk z)1L(3{$2eoWwF_Q2LtXOaCNfl&)U$@NZ)T)J?Rh_Qja&;F2qCWBBUK@QTbvm$V1gU zv=B|&K|D0*!?KW0yoqbiJ+uRR!cbx~gAFoL<;-icp`dE`1!#G;?1%|4El8a-)$QF2 zVzvY~6zRx)|381?j#TemMIt1EF=TE@e}rx@UT`d$>xy_3Oc)#sgk@I_2%lh*YIKBl zWyTrq)ZB}X&`>!V-7__Y(txF2=V3Z7V2w|L^BdtPeoiDmmC7atEH&D=m2VYW15TiS zN^C44{FMxOu}VURX7(hS?|cl~C4CYVQb5Phdi~ z?l{u=rn08b!=Gg|C3WZ?jeJ3V9DStzy_n~T&8^rW-~}W?Ma9f01Gfn+=zAF$YZBj{ zCJ7MPr2uGp!RmBz!WzST8w&Dw`Jwcj09+w!CM`S}fMZbc9y>)20dOS6?N5SH4#2D$ zGtb1NZ{bP--^P3kXLOpcOU{-G!11CTTRH&eK!bLIngE<=QbE>7cqtlA9qj>U&~We3 zj@T7|!}|hw)=&xH?XY(MFRZ`>yj|33i7v@4oD$jv-@>t@-SsWpOWW)h|G;UXef9r0 zT+8iZMRU=S!tG*p&`||?u_`vEqX`WZgO{HQ>X#*zX7rmjTTtGy?OU>({W8h;Kv9!dS5O zXoSnc=MCx~H|=plY))af*P@oiujb0mT%&h%0|>Gr?JR|n*1sbf2*WdSZZAcf?dd1y z=JBu$$$y#}rvrak{?e##A2sr#Z{Ed1V(-^+T#Qp#@`l-Q7dk!%BBX(a zdg8FgbSN9onu8mfhRv4v^06IpM15#t6cF~{EB0NUw%U?J zw1*~gpxb@@Kzo%aq9-&?7XHVOND;bm+L}ffF&rA_j&AqCfHoOf#1w4pW*!;F8)xU} zbZO!er??M4x_JUbIWY2Ov9P*Xm>p^ivW0-I&EXkV&7_?hq zAVot*f5v)gWI#TLQllxp6(-t60HLSC{N^?~)ooD2y%i2D!bOL#Xkj2zL>c|zma z*a?unKlhFYVzNtQmNR^Qm7Fcg)*m~Q744`SB4j)9wa<_bkCFoW?%5>1cZHNn4_mF} z)vG@gLYE+Nj`S}$?@`)rQX`wamFT$!;DQP`-j`DTj#SjP@MnO_)-dO>U_w_jo*!w_ z^IA}@e#bs`J9?0J?=^$%viR}CBfWM$Mz+j^EN{jrA)T;}y<2!|_=7Jw-fr1GT z&;Uh{e+4v3K*-YqKTElQJToZodL>76h%-oqhHgX#unIck!T!ESk8v@hz3&bGr z>^l%%q(kHpI-Onkae*QQgI0{>+pI?*bY%w!u2iK%YLH)sB)j8}gW~jmpMz+OI4d+h(KMyXl!c)R5r3n3K%0 zjiTvJUrHCS-+S0njhD>XXu4mVDh{G(6DyGu^nf8mkYx!vzz>=~b{u9?|0uaB>|?T4 zX#}Dj;-_Q-OU=!l7k>~P#7+~cX0*OXIBSa!UI@2FRCZ=yW*~fiGHK$P1{tNojOIEr zdCT2>PqjVI|5)C07Pyy|X4-MB)%tk&;RaI1=-T`}Pmc=7y|uNl#x~2d1eP(^7OqX~ zrDYD^F8wy$P;LK4J+?HEWw2q$pMo?k)76kO5ocr}DCVfFTdASBGt?e_(53{HAl&;Z?;ZpbuN-HIhC_Y?=lA~7Z z^Yc;Mr^ZS!k+sj&Jl4m%Pd0eLRh=fJ9~h}MA2NS=(2DmZy*g+?^HkoXL~_;~ zxYQ7|(w>Z@C!q(riOQwbwiVXVJ#tiz2y3X6DynM?pRJPp zKKBPW)p&1-Q%jAQr_Hvrp1OjRJ(Y~%e0w}mzA2A^dgJ&p)I|Z zB+T;<(7?tE5!imK_1dyw!7{DG2xnt+c)0I&12!|ioOf{nv-@2X_S;9GO1+N_=evhi z6K$7}t^SSeeO=!wCdIZ+HT`ems=0>q!0x@53S{Q-%_B^k`eu+}}I9=bp zOSV^+K=pmZz zOZ4+^RFJ9cFJpz6I3{5C-U;7l&mOKr_;J%RuBQCS=9EW|a4&Yz? zx0K-9L?gcI1Nyso3~3(fF_s2Bb3y}Dv2~0i@}9V#MG?p{#svOPVCykiGCy1+!6UHA zi+U|_GIPK5m_9MHae1-EvsOfgM6NBas{0q9f95go&1Y9lvgqUVVW@&WC{?WYA~A3mT&siH-hvgN-|% z{k@a`H0w)#lQ47sCM6_0DyFx|t_+Jz>_{@FRg(i;{!mMxh;Ufho@thrB;ia_HHoDq zG-tYLt5Q2uA_3mmN9{=jFHQ9F*0gBl z+o?kGmf`0A5fPh{8duYBhc%}(rV2QRhavGQ3H-@;&c%9?eDv_ z5}DP644Rryqxny~Dg@s?aVBe;rWYTk4bOb>F)`)st0y3jMwN}kIqZnC{QXNxJwm4S zRg@*I6tTf8HwFy}boj-~NWiM8IbviwsiEbEun^nc} z7zs6}yG3Qp_(r<#{z5u@DYWlWN67SX@sO2h3xo$>9P@lnX}9II zOp(Y+dd0eL=k4#i@RUOVB%O^=)R*(Ya>+wkL{uoJcq*p=8 z8OnasOpNherIxfxrNZyUr{HU6x<`fzGBEU#Gy`oHh!?T=Acmp>C=4wE2f>Z3|~d zYz+Er0(Mzl6%-jaGUwyr463Jb1{KUL!7)JmuRv*^$?zXrDBK6d*#8*+`=dO;Q4)cC zFNg3!8*_DW&^gx%;f9toct2HI8T2UymUROB0~m8tVC$#D@CQIo;Lc}o@5}3&Phe+| z17QErY{2X{mxxB>w;H;{Ij(j-E|x=}8d3{xQV^P$VXx<(y>2zdl2E&gaOHn8vA;O? z2+kXk?uBt(vzlRHP`2UwVZ>K$SZ_bjscohj^^3(tM?hxRvB62b6g6w``$o&nCOYTn zO`sciW9ZQn!d#oa2mKSGzMC}zl~|oNfokZ+;NDCkR-#42D`=O{<{BachoY>M`IHHHj(jn?C{ZT{tt`+7=_;8U8=i`j|KP3B5ATW+B`${(dmC67pHvK_zLj+-KTqP*$3 zsn}x~);I{NKT!I7U`ts5jq(T|YZcwgiR26w``#(~F26;P#AKU&-Bl6fv$7PV)z+(v zOCv)7hHk~Qy=k`OC%TCnAAy5=#nqc3iv4>1l~~LmO_bkyvNwN4n3%|oFfR4%cM2xW zKi5lp^U}}gHXk}K;X6sBxr$w(s*+F31FCPL!$>d?qh@%OvplcEnQIFoxR$KrhABx? zky4ZtB%43!1=2h`5@cE%>idEjNY<@!hbb}J9@R=sWq43+=bpfr*Gce(GVJlR53cFg z+H}~Hi8{#%lQ>oCniD_CZ0Q(${TV>r#Cwi)$gi=ny&ix6-eGJ<=2hFvt=N}fs!u8= z9C~!AwjP5; z%1l1?GruqbuYTJ#OY8rP354vxz~DT2f{}etAz>^KBa?AL?3hW?GGy@mmBT6UG)tvG z8YsP|uXu1;;p~or~X^YVV}rgS&iZ{fydCm7crBeG2g;$-y~Tou%dv zt$tbg3b#duY?SXOe)jCt-R?B>S97rwgC-j9Ik3cr{~+e_+%EZ6U-%*dll)#X{}*MP zMdO*^M$J~=wcL$nkyWOOMjD-GIjqOU>UGLkzvz$7P}amR(rqZz-*X(k zBm6gfuz*A7Rg;^E%a5%M{94fb&+t1xt_PE@Fqd>jl%l&xBJOH$ff6W;Gy-z*My6$P z9hP-}hrRGYrR-!Ar?WnYcVy^%FLl%Erf#~K7YjaD0_j=o2JNx~Dig)=)f~d7LM&lg z;7bxoi-6Xbs#3*MvgFno;_E~b!O?Ksk=}#4_urVUagc0515LBfhn{DoTXn%U2}T-^ zG$tJ>NxY{-vxGr^w3GeB-b;O~7_uc>t4?^nU$4+}5P2s7d_K-^^2AQ!1UiR(f2hfL zvHWq$o$l~~D6Oxp-<}X~w(i2^7BAUyWG;RFLtz2@Z-s^b_=}T&stv&RJI4N=M8f*) z66kV(-!p%9F_HiCa}){D|5gH+e>k8I6Cvr@;t!35(MaoM(dcDqbmM}*7&w5~!C5k^Rq*^?he|}A+M8VGWzKB$7^dTlf6cNaFM2GV1X|oz`kUpSe zy_eh=%QH;ez9)CrL(Japd&&7(ja3V8^xc=~Da)&^UBl-h_0Fbom6S%>(JC}t?{GPI z2$JsckgO0|vML?C_qJTyodV2$^0eXP1p|ri6z1hY8q5lWnK6>cn{J&KxAq{+h1yp`S0T3~C z?MK_|i4)|XQjiGH{`VgpIX-@jx+#1S6%&Q2CK64+O))Sz%HH4KKN?7?#rqVCu#}tK m-eIC210zxnC-*-r;F-U@pFhM8m|av{Tw0uni%Z==<9`9+C-F1@ literal 0 HcmV?d00001 diff --git a/test_data/golden/qr_logo_arraybuffer_jpg.pdf b/test_data/golden/qr_logo_arraybuffer_jpg.pdf new file mode 100644 index 0000000000000000000000000000000000000000..05ba173033b93ef1f6c4e0e0f8d9772474a19b5f GIT binary patch literal 18865 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 literal 0 HcmV?d00001 diff --git a/test_data/golden/qr_with_border_radius.pdf b/test_data/golden/qr_with_border_radius.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b0c1a4185f8d1104d805ed9c087367193fd2050d GIT binary patch literal 18011 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 Gy8!@*H0r_t literal 0 HcmV?d00001 diff --git a/test_data/golden/qr_with_border_radius.png b/test_data/golden/qr_with_border_radius.png new file mode 100644 index 0000000000000000000000000000000000000000..3d0a3abe39cdc95e61f451134dbe8c493986d172 GIT binary patch literal 1410 zcmV-|1%3L7P)1)-SK{%-qh3dC1YgA?n#6vtOb z_cI0JtEj<=b*?xbj8}0S5cD)=1Qo|d9Dm(55kLp9Sah3dYvndilgFS63ozi+lns`L1@;(Dg>-C`G2=Ocr@*eX!P^uO_gem{JiAHZL1c{g9yJldCu?j*8=1ERZ;oRt!(PBy~&u zBrBv-yL689|3W3XWxq5Gn#x@q>}Lu^U6yu90j6_Q9L50CIVz3~lA6Hu)!Ot1S8}O| z?TaA&d}n%-x&m}Hf$fVx!GR$CRkQSECsJ{&QE`C22r3SdI24T>8|mje)0@;4pe=jE z*Y)G}h;P#Q&ZvfTJfP|IgN!%zMINM9h%dyE6m-Q=acu1>jswKuYLwW#>8qhfHl#^N z|7oOY%!r+fBVHVeDIa+?Ok+muY#d`t6WoG`{lirp6^E5$Y-xg`Sv+y|^2ilZWW1zp zch?GT(hYt3ItMZyn-_uNRf9Zij^%h$5(E`T#qp>x3SI;i#}BNKBI6}(ySr9!T`RpS zKn>}MKflBtPtm-)Vu4;O$TW)}X*y=tAS#w=fQTI%6-ULfMa5whM|uO9)W|8CcULUX zrKY4+L> zh(FJ33J-x9k-_c-g*+XaaBUI0co7bEe6Dk) zD_ql%B6bSjHl*Mb=(1DzDjqf}jtwe~iern4GNGz^A(l27IaO7(R ziN%!%n}c1y<#-55#Zhro92LiZq&K8UEUr9UtGWn|JVWYgT#@lkJhpJ;Nig=*s~C@+ z8=H5@fdt4##ZhtWgQ+<3#gTr7)YZ5mKmxq&klq(p$En6)T_VHJ!$+`Hor~iHf7xqT(pFs5pu(Dvn}{KMCI<4XUR( QD*ylh07*qoM6N<$f&&qjwg3PC literal 0 HcmV?d00001 diff --git a/test_data/golden/qr_with_border_radius.svg b/test_data/golden/qr_with_border_radius.svg new file mode 100644 index 0000000..d00805d --- /dev/null +++ b/test_data/golden/qr_with_border_radius.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/test_data/golden/qr_with_colors.pdf b/test_data/golden/qr_with_colors.pdf new file mode 100644 index 0000000000000000000000000000000000000000..66660f0e0e74eb91b46da0c28046b064785e8312 GIT binary patch literal 4378 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 TexCSNCB&p9fZW^~FzCMks<1GK literal 0 HcmV?d00001 diff --git a/test_data/golden/qr_with_colors.png b/test_data/golden/qr_with_colors.png index 63473f4a7c36fa5ff388cff4869b0467ca951cbb..9d98995e410dc366d02f9d9501960a08724166e6 100644 GIT binary patch literal 777 zcmeAS@N?(olHy`uVBq!ia0vp^?I6s-1|)5sdx0c43p^r=85p>QL70(Y)*J~22BzJf zE{-7;bKYKd?0am$!*bxyf6>pEBj4Dv@k~&No@Mn#b%XAz$e(}y{rT5bb2`16;Uurj zCkcxuh6N{*_dWViQ7Vsw{19;POsYAb&A^F-(PKQSTa z-T7)i76$@VeK~sG^=r+O3*z=b$?fv~KHr_R((ec%yFL18_&#&S4b{&&-yZ}z0_>84 zBadfT?5I|ZUatI;hchy%@OJN6;! zLk2Ti>9L@a>w}Y|m~r6>2XQ6@R&;&XW<(9YY&59<^S`~EgYCxl{GZ?RdwX{KEOWZ1 zdUv%(qp4{-V>$<)W8_`A8J;bPc37yewwa8bo=v}^R_A47r8#=)!{1v|(e??i_Q?wO z%n`cK7yL3l_`OazK2B}j&y6g~VlCzW7Lw+AtR2C)!@8Pe4{~yt=@$$`9Mex1#_9x* zD=cM?ak9^R)J@+tyBpZ9joY?;7ju(%Se&H|>oY9mPYqYe{yfmA~;; zfdCvJR~3v~in<8lSSV9Z`H?mN70})Q#S%~hOaIg3IV`9GX}_0Kxhtqc8EQCUCj{(T zSZL`ZE;ZY=O_X0>w2P1|Xoo%Xnc+MRxHHWp4s)_ZbVhm!O zz*=k@1_;vmGN9ZT`ihlPT8F--8I{%suqIoDfeVJOVQJt!5stUcv*D&4;N)3yuY1vU tZ~|<>iuTq>ap^s61&g;E*Ble=bp=l?wD-3$LQnl>|IdfwVS{2!jE9s>XX diff --git a/test_data/golden/qr_with_colors.svg b/test_data/golden/qr_with_colors.svg index 618f9d2..0a8173b 100644 --- a/test_data/golden/qr_with_colors.svg +++ b/test_data/golden/qr_with_colors.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/qr_with_colors_rgba.png b/test_data/golden/qr_with_colors_rgba.png index 0f357ac5044ff56238ffad29a4a845b113eef7b6..2bde2fec5f62b4959d0e02de214d0babd86d1b1d 100644 GIT binary patch literal 753 zcmeAS@N?(olHy`uVBq!ia0vp^?I6s-1|)5sdx0c43p^r=85p>QL70(Y)*J~22ByWH zE{-7;bKc%{%xiJrVL9;ksMpWpdp>pyf|GQ2JC?q<-C$c*c=xZ&@sG+y)6SPMPm;EH zVpMP<^}&SGa~}Vwt4}WaZZtJrJ?+B*%fpQ9G6e@fM9RYzJiDq73JXknrFT}cPyI^k zV@B^L<^7o!4^Bi2$sA3*d-mFfUDYeU$k?S@JZNC%gAl7qwY^`h`-p7P0mIhCm%P8* zHa+8k8Gc}5|6=RA&Uc$k84DKZL2W$1=q}c`)BvMMUcV=wDWUwl@cU+%LmqS-Hw@TOs~Ei?-o_rG z*j7eZ+%Nvu-E?iwS++2XCk8Y3EnIj{*5^CJ_DOtfP_H~_P?kIHa`|rQ?&_5)ndczE z0t%at7L$xN?%-Sj7J1zbw(`Up!_UfFg%96y+S$5iHyg}k#^cI`Il9J~D}?1Q1?d;G z=&Gy~w>Ts==?b?@BDd!&*1ip`DqoF0ujh>Re!p(_)(4%x55Z%=<)O!Uu`8YF+V8XH zaU%?r>+_oUZqL&FolDK_xq$(?<~uu(RN=GVyFdJ~h4uBhUU%Q6tBaWzZa?%J5ig$# z@5uT*trafaexPLe&*WBkFf}Be>>Y z#~pZy-Kc>V5klO@!_*kc^i^t?nOC>L4ZU$#vFL!}e-^%-JTgU+z|>YhrEd1GO}pGX QfN7Y))78&qol`;+0Bxc!b^rhX literal 762 zcmeAS@N?(olHy`uVBq!ia0vp^?I6s-1|)5sdx0c43p^r=85p>QL70(Y)*J~22BtNh zE{-7;bKc%@^kX&@U~#Au?6m*<>?w1k!6$>uaaR}Sm*sp9St27Kf4#J}YtQN9UszSl z3r^%dm~i`m;`Yk^$6tSSoqUxX_Wj+Q=)Zk0^XhlX%M=`7WCs!MVtrQ?-=-|TlEvZq zUSb!Lgk9g&Pu8crw5qr&KkkGn2kKceHHz1CPrAi}24+48QFdMRt?dSoNOH~lM%%+c zlOI>}zxjD)|MM3b|BrkZo6miG@;z>leTH>;Oeypy86ao0eTu*LuhNJJ{QU74ZVa1|@iuNpgJ9%Y_ eq%EG9-G4M|_OI_BpMC)*W(H4JKbLh*2~7ZsqDJNb diff --git a/test_data/golden/qr_with_colors_rgba.svg b/test_data/golden/qr_with_colors_rgba.svg index 95cfebe..487959d 100644 --- a/test_data/golden/qr_with_colors_rgba.svg +++ b/test_data/golden/qr_with_colors_rgba.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/qr_with_ec_level.svg b/test_data/golden/qr_with_ec_level.svg index 10fb66f..9b789c1 100644 --- a/test_data/golden/qr_with_ec_level.svg +++ b/test_data/golden/qr_with_ec_level.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/qr_with_empty_options.png b/test_data/golden/qr_with_empty_options.png index 99a0012b7011f6833d6c371fd492152a589c4977..6bca0f4ed1c8149526d833e6abfa12f19345efad 100644 GIT binary patch delta 948 zcmeytexH4UW&K1?7srr_Id5-9_sJOYIA6T=e_6FzK-LZCK9_2}#($hSuLITP9p~{Y zy3Tva=8<>6@l-?e6h?N<&s~oz=gqkPN#W4lKG``t(hG9-u=g>~ihCQ$X>nlVS2+v5 zjH<2ast;})xG0#q()@ZUyNvi%bYeMc{qfs7ug(t&@7yiE^!XRtW@ecO1!tbUv#dS; zfPvjYX7kQ!zx$sjT1=6WE!HTt{>990ae$Gp;LoaeSqB*Vj24iRjmprWJ zvk~9=TzU4sA2CM0R2*1sx9Mf~dDpi;Pb|~714>@Ew>5ajzv#*i)$2a&eD&*Q z^2z**F_yLXvop=A;Kyd0yH`F<{eCC#*X&!3o3smZSY)KT1KWb%H37ZCaQt6v0neis z8hh>}98S8!u>R)!OC^5_KwkS+#n^7aZc%?g@p{4a(&K%}TRVQoRPlb#H zp^CSF$81I%vrIGZvg-`T6PjO|9@w~1;(M&Btm%{`&6Rs!%dyD3XKb$s2L^Z`KNH`} zJFjEED?F$;f7QZjR@wE^?~DFSiPbDWsJM^4Z;@NjWl*s2$vn_F-}sn8#`EQm0@;A6 z#r4Ui)BO2TrCi>$1H;ZOTW7w^DU*&H{Oo)MJ=Y5CSL}JdZuJu89_dwo_g+=<0*3S2 zqa{~DnfMBTX~5!CgYyx?uZEMS-TEk=xn}xRwyDMM8kl8LAyMNlSzCS@mEPxzFWQ0GQIP+^vt$B%~v1Z@%C7? zy8cSRcc5WFS3h8A-)LX(hmr4T%yFouf+^((fhkK57{2#d-G%vK|yS}%KfhoD~uI|lc@6_Jzd_G_C$q7itV&)5ClUZ_x-$l3o@N>h000toNboFyt I=akR{0N|Fx1poj5 literal 1016 zcmeAS@N?(olHy`uVBq!ia0vp^?I6s-1|)5sdx0c43p^r=85p>QL70(Y)*J~22If_s zE{-7;bKcHz%u_bxVfp=k{xv4Eq$dV0Ca29jc~>#aSE^Lmbt$E$L(HLJkvxL}dkYxd zne2RN#&x~j)yC(i{*=4B_3!5zbvY@^7MT-@lbWAgIMK3ftwHgcEi$4hY&-9kik46Q zDVO{FbWT~b%&gGoXVT11EQ~BYhsyQKE&Km65T99c%1m2 zbU5%m;c)CrEGpqG+U>Ld_+s{;CjvzZ$EAUmMLZU=+B$PvQA)K-U&EOXD;=A)i+Fx- z@;Oo1aPh=O556ZAj?s#i*LJi3?K57vJlx>#&J%?P+Mlpldh`iAaR6g0%Uy9RPs{G` zoBXQg$wK)(c<4QRD#Z`a7?%~!U)rtg-z#IP;2t6|QRYOWjN%DFQ8$(2+hk&ecl?(0 z-}hd0rIgLih!YzpFk8A5O^{i%_Cgrjd6{={u@`^eeLi{TkJ!x-tHR#3E3^ldI`U0Q zR%Fk8%6!r>IxPNs2pdX z)VxioN#?{wZTIT|GZ!WqTxnb%;#=PRRBx3uC}7(?_$E1T5xv!QZoZ{a@riGVXIxiA zsDG|?Ut28BXeqMO;JLFqP{j$y=%0;G5}rjozU7rRclJ8Dn84<)@6Ny=ZAy>n3sT>^?fu5;ojfNNmMKmEMjgiCeV<<_t)BO;-UBB!;AKHF)6hJ!}Z<-pl?6{D`tFL z->5l}tz0I2j{mcRxBlL_@?cl>46X@}rJ!*PitF@~iS|C1cg31K@IJWP)c30XR!PgS z?E)tfrW?AKRYnU_7ZfiP@4(t$nuV<=sN(3+7ugLqY=< zD(>rLV%K{z&u`=3`>i@8h7YPy!BQ-@b=#-LnamHK{CDOuh2^(39)0yH4*iFJG3llQ PvoeFHtDnm{r-UW|rw_qJ diff --git a/test_data/golden/qr_with_logo.pdf b/test_data/golden/qr_with_logo.pdf index 0286ad6dcaaf053fb49f77ee2c1c07677ad38b5c..bb9482bc9ab675c8f9fd08b26afcff1714a51284 100644 GIT binary patch delta 4160 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 aBqIw|rOHgByUNc1g(^ZBL`Ahtbp8iieHnrP delta 1610 zcmV-Q2DSNVma%Ev{3V58&-Mfk$M-&F&e4b)nz*1NBttvMd zhjwZd2w&vD!pMnV-}Rprn`~(K5Q5QY5&N;zr~Y%QrJ}z)wr76*^XcoGpMO|y{(b!N zVZHzD(dujMIiJ0s&tE^kej%@K|CrzMI-h?%=GWJ4z5e<5A)DXS#854A31Yu1%>orYoQGz?3pVOTm1!$yNxg}>8wdDSY8oi^mct~hovvdJ8& zIA+?c8}Tql6gK5gR%4yh?gq7&dSsWaema#|5X&sWuz$=V49hISu=9Xe0*hgzL2S}> z)@1G1l;yNj)<`8k%*Tytv?eDF|4pud{3{;Rx?FEb$*ZfB+#uHaCAH+1(?)@A_+eOv zABJW4VOWMAhK&ZXENh2Nh*gF-?U40YiRHAFjZnK~{nw=Bv?;^CW*@h>YYn)z#;~+C zhTR=vb$`p>Y1#TZt;-sz_;=bxtK@D{%SIb&GPY{#%d`xwJ3PY!u?ew?EvF^6oR-*f zT4Kv-caz$nHJLe*X%$;eyK51+y9f-+Y{#%vA5*`d&vQL9{*a?dHpE#Rdx`y@g>jko)4u* zDCr4GcI>agYxeTs5f+Q`grS>C850W%VzoZnjA0o22tR6)1P}{In zw2?N2_1`h zjWcjko=fU53DO`|I!qo<@jFJ-IQxGexAfoJ;nx@bm@|!+hCCYbz%pgNF_WFg7ROG! zMA~8oHz?x|w=b`zT|$2Sj?y!krZQEDQUOE zSo}9QtWKT`_nt(-7gLU;zLP36trRK@BqY*+gvNd#p%ulz004F+1VfYSG#&~tI5aW} IB_%~qM))u!Y5)KL diff --git a/test_data/golden/qr_with_logo.png b/test_data/golden/qr_with_logo.png index a9fe79f902b1fae9d2d135cc2adfc02c1d7ac9b1..3d91d28f7e6d8b3b5bf36ca7c35ca2b97c176a9f 100644 GIT binary patch delta 2132 zcmZXVX&{vC8poe8G!zetLZgV+k|WzIV=zJ*-V@nEMwX;x8IN7%^-PjEO7;wuL}(~G zgA`+l?9-7f!<&ihVaU8=KU3#?JNJkC%YEIy`?~HA|KE-{M=V(%R0-&`pgX^4?J>|61%#G=Wp0bd> z9)E;M@)?0>6p*C`(-A@f7`a>krI@aO77!3<|9vRlVtAfvg8M8DMM{Z6Qzi_eSBCfm zfPU7FMBfyvW@dWxV+`rJX4>W=mF|OlXvFF(7m~u6=!*v+{tsooh(uuHqPjYSSr1`e z-R`mo`-isH6SwPh1O_1AA9LvNzm<(Z@o*=D?PaUrxv;)}Vy;HbelTkU-2EIm)=$OG zcry@7*B!EDjeE_Co{32xH?j4oM55;Xk+H-fRxJI?BoxK3g&eTfPobN*l7sh zNi6D4O?Q1ZJfFW3I4%*-VSGODh0%EwwllHiMCx4c%NICsEPr%V#@E+3FD`DMOJmd} zM?YU*;j24!B?*THcN{h$z8BM<-1cYB70ypKP`}=L6C2>^*>x>ASi2iEwshG=>J#)rP-5vnvHwV1nlL_x^F5B@sRA8BY^;hex6X*%M<$WJm3 zbTi+d5PAk67Xl$d`1N=r3F+@I@WvaYzcrrPrdQTDC9v7-Ps?vF$jC`bN;>Or3v0eq z>*#zZfon*b{vDT=$<0&6^kp012{ix0u!Yb6F0@*<$Kz4Gk9GYZ2(Jw1zdnXNKgkyQ>r32S*vM|U%^<*DTKI$tfcKavcc~`3C2|G^ zhcV0j6Xou>TH?5=nq&29eBaY3dakDUAr{prdt0Ajj;t+R*$sLen?A`?I zLAb>6xuhGFynBCq>NLArN2H;m>fy$knyN%GOHGiOeU<3Ge69A1UH0WIP1RY~mXv5Q z4(om3jT803ZLcFlm7Ctb*P#{{cd;ELAbv6M_RK-)@e2V>u$33Pjh1owZ9z_EVNOD& zPU7Y!c9#qB@k9KA;OCat52LKhL}cN-veJjvBNfb%>a>BpspXKFKFLx!l7a^`tY+au zCFj6~jkk4rZ$$cH6{RODo{VH&9!XFEao-oq$=qO?f=oP_#+8EFrU0Ame9#bE4O=Lraes1#2wW2t!<| zE4|sXJp7b(Ll(nB4<1X$)oU(@S9x`CK1mBsXr3u%QLpJ$D{Nta!NZFF-#+jwMl~j# z9BN9B_41vm44JW}d!{<3SlTKxJ_GuV}}J!ZoCh?R$4DZxeJJ>8>ek*jMz zq`JDgxW%j=0$%i#BuF^a%1`&@A$QGaA{UUY3szcpu6Xas^6UKZWOStJy1nATX%EbJ zA0H@^HfK(RQ@xp=dT3KG!Q!K{g~{t*>vtC^p|if}r7lSaiT0TB#_Hx3oW#B>$FTut3^MWoHAbUcyf{Y(R zA5+Ng8(7Xj%G2`34o#|NM5AF-<{4Wee*O#7j|pdgbjBkynJ(t)OuG` zmZm+40C@_S{JHTw;5q#0ox8dUdoDBd8_h(uagJTI^iv1h{77(Z(tcc&_vVJsX9OAS z(*dZ7 zIx@>feLy}{`a&4d#Uo9~=GV`lki3>PrFbQ=%|POIY^zmSp-Zu{b;s4si~lv`(AajR zZc*PaS(Mdpc>CF9ult)le=9LTiseHm+mMh4_d{n)cTig+Hcg59Dx3h`vNX3oTWabN F^B?n@2HpSw literal 2301 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 V-D9h;!28btXe(RGvNKm>{szdtO8Ni* diff --git a/test_data/golden/qr_with_logo.svg b/test_data/golden/qr_with_logo.svg index 8864ad6..3d9acde 100644 --- a/test_data/golden/qr_with_logo.svg +++ b/test_data/golden/qr_with_logo.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/qr_with_logo_as_arraybuffer.svg b/test_data/golden/qr_with_logo_as_arraybuffer.svg index 8864ad6..3d9acde 100644 --- a/test_data/golden/qr_with_logo_as_arraybuffer.svg +++ b/test_data/golden/qr_with_logo_as_arraybuffer.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/qr_with_logo_as_arraybuffer_jpg.svg b/test_data/golden/qr_with_logo_as_arraybuffer_jpg.svg index 25d9352..2744bbe 100644 --- a/test_data/golden/qr_with_logo_as_arraybuffer_jpg.svg +++ b/test_data/golden/qr_with_logo_as_arraybuffer_jpg.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/qr_with_logo_jpg.png b/test_data/golden/qr_with_logo_jpg.png index bcdd4cfd5f747292b6fea1924a2d901dc57946b6..23b5fa593d1b0c00bd6cced1b3202ecc6cb8ff70 100644 GIT binary patch literal 3167 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 T>{Eq51`%hpt7F~CK>WV}(wyAg literal 3267 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 AtN;K2 diff --git a/test_data/golden/qr_with_margin.png b/test_data/golden/qr_with_margin.png index 1684f2346d3a646dcfbe2892db8698942e4bec1a..dc040200b4adeeb7a2e6814047b209bb7766887d 100644 GIT binary patch literal 3491 zcmc&%X;f2577l2zB?2x;G;Sk;43b2JM2#)72(p8MA|XLU1riV%0tzAqp;;6L71V^J zW7s!=jzRv622^8CB37o|^}y=V;E=V| zucri8pRYwDR|(=Iy1FOsldT5S87WuEPid>tj22fYfg+fbPYq_yr$=NA$Q~~sCwO@A zgugnJk3QC;sxtnu>aBNR-n&+9h6Ayv8m`(i_S56KSGIMThG=H_kx<0a>NoGAV#?C! zW^Nu>-|Y7~KZI1($re1f&C?6+lV4i?hFRGc95Xuq@UUXu(MNDQA(`~IC%p@=W&=~F zXIb?$L&VxD^D8y;Wiwr<;Te+ziL1_z;8z~+U5d78I zTtkWw%~XkwXN47H4YR((R!KS8xrL=j7p9A94JJgUO{WCt6|$x52q=G4^TxDQ()t~0 z-)$1`tV^4J$yvePUl^)Yc%N*ZE#ACijC)I1&_eBLFhnDd6!DYnYXxq=hG>Fp$k%+6=_sk3sq--+gjNVwoFCK&6~h zznlP2f7;~YBM8st-Q*7K%8-K`#7?gjui2z#VwNBgCkQR0avDxa0b-9tCv089*EP+7 zyhSS1hp%b=%*w2%4O@C|HEr|RH3gE@Yse_iVE+m~I>>dz7v&n5@czB$&A7J+{-exi z0K*XiC#;fgr^K7vun3EJQ-xPQ@8U0GbfCR50@gE9_^0mqdSJzI#S9;TEuz3PQKF0a zj~jiiy^6^6D2m>Me_%msO{|+0>H0uvBYgiK=UL~T^F#NBBvYU?PG_~bK`r){25Zl_ zn)9k4LV5)XITYXJTfViuvG<8#4#tM&-miN1!z0H%XS=I6?6c-eY+C}zS!+%*UnDwi zh*(m1wQ}PNVk#oMe$@E&O=^E|pLQE#8=)jL);ZE^`v&8n9u1CeH%-qUj}S7Nx4GYhJd<4-dWAt=U`9AT+O;VZ% z*4w-$Q;(0njD5@Ao~WQ4ys_ z!d82ZGaLdkB$N15_AL>uitO5eX7Z>?sTxT-%1;pOlq=Qa_h6VEyC6v*3U81t2^Qof z60zRxMTF&;2uL5_M3b`*H``GJBy6z{1M0#BI9o!!G&>CvYDY7&`O@SslX&Y~DYyZ# zVH6?dEryA021&hSP!!!(OTv1w!6i^@$(H9_tRg?cflIT3b7;zXDp(Ls<<L($ENMA zukT${=jPpTE=X>&bk76SP$aLU+) zeTJSdN0$W)nldYnPiY^pcDOkI1jCevRR(b53Mq!XE!7g^m=^bDw-4GFiEK#~S*kRa z{IE{sG?Fd17kilVPv;K<;&?z7##K)9pl3AsA4dEC;rEs%M|F$quxlVm5^rc1`yxP= z;_&&ABbvEInA1R!Vwk*a%>1bF12X+nvSu!;iY!e01_e{QW8y2%^0r9ZlT<#C>RQ`C zlx!%FLSaF~N@h210#S~yEah#vEpZiozs)N*gO|Q4A`GV#40^X1-2?S(<%LcL_XLz!n*-`2%%^JS<<)Fy*KGM#UJmo$zNZFlhOx__A94n{|{4i@JN_{8=9{W$ViD=P{s~$QTNX-E#>5nsS{smO0+qe#*pN2>p&y{gT;O9 zyH$Zk%I1!LB{%-EOpdRhXpr}n_p(es4WJ=w)0oaLln5VtYT!@Aj>t=Z>ECs?%Ww+& zfP!9^Gdegl^CtJOw_P)Tmf94TC|NCTA2KRtT`)@}itdvwqfnRi@$KVc#47diQpI6v+!qsGqj;hG=5yVgb zyRk-qIi5~>KsLX@y5QVj+W3Q7F^kEqKsqeJ9jivbf(~L`@WJt-y};^qneZf{i0mwpfpC#rLqg7 z@u$HN94)3E9@oOOA6B{xTE@zeY~Svyz*`e|bC}@K-hfk7 zCajA239g?@N&B8#az zfTpfgirgwtGEsS!-2Sv+g*j=cn3x(xA&R2)0dZwvraMXxoAS{VVLGVtBAuuJ_uQ{$ zLnP(0Tno_c5lMBxX#EivTSWlpq0Hg5vSW?U<25ewMr|1~ZSCT|LjLJZv0BKvtFaQ7m literal 3632 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 literal 3073 zcmcguc~nzZ8jso{I|2^KCR&uGRPrDRNE%Cp$SNQKWl;$M2_ZnOrKo@q6);3Ll_en{ z6vEN~5;+O9!h|IX&Z&tcN@9tWy3_}71D}%OCgMd%yd;_kQo( z-}ik#+My6X16@m97z}0*;E%;Yy+YHpwV-eK(he`E)A`&#IvobnGu5;WFlOyGXuu7? z?vFTIJI@U2v_5LMsrzkkU*y7s&MuLzQ{G_p@o68|5BDvo!ve31)mgCS2wy?Rn6VBQ z=eJ83Xmb^C&cOc8kfQ@utLBOZuvLIPvc$r#D+f^)@ z;NbbY)}?@{ca?5DLX131Qs~d^``ID!nJ>zxs*U@`3|XISLcB&36u(Jg7ACNZ5YAETVf{ioe5JZ)zH)&;fWJaM+LWT7_YwrNqc!%uHzDiu#O> z!c99oBVScFTHY3(c3S!$z?<9o{c4uyugB{$fYDCtBQ-jT6dkUo8m@zwrYrC9nF^t_ zEURYrq+GLjYsH zeakKl(1dt}=JZD}oy`hqT1^Ot6t1+ojYWz zeNlEoD#iFl-kYS-{&ytXfrLm_h{w*x{R(sxzNamEs*QMNEwrR}oskPeBlyW3TZAO}5c79V4I6xkToh%xUs9SsF*>nak)Qc^ zs8nm^(LyOOwdn_pFS)Lz^W9XB3+O2h0jwk~L zJX|x1D>|0~U(P@$z79TUV+Vx=t{1J)R%Dxo-}Qe<{`acXp?xPnU$m6>&{qGjX#8&i^%Q?uS&tgj)>5OZ8k_0en+z z2G-}H1an^80@d=N)SO^d;%64~bk$T`39y=I2L9;Nr9{1;-%8}+-vQ~-42sdP>`?_C ztditbQw(L=2zViKkkscfD}JSXiDnad!^~{SX>+hl7Jy>ykxdl!^Z^uJNSj4k7Z}U? zp+LpTz==pjsO83a7oqKqak$ZfyogWg(^L4(HZdh;DX$JZKF;up zagY}GM5V*!uLNod+KSpj1C8c4cd?`QmH~O#yh98>2E3rdiRmT4Fp5=)vG$hv8d5l& z2$rag!J!jExWY}cV=HJ32JK9_43+^#_6fPwbedKJPzK<2qr;Ju{7k^&%s75#4$(oH8Ox$`jILYE~oIDpRP*c1?x~dF-UxhL#1jEM+2oFJ-v%W$L z)(ZIShO#Nn5>_kFuY9-uxh^6C%DN8C8wQj-HZm(m}M?06>V72kHaEDb>Qt>EO_u*agz zv;K12vig0}Tsp;@c6Z3eEQ=0w_IYza&EJ`yTc;T(vu z>#dCi8P8+wgtaX9Sus{`c7*TC@bpWQHPFmtCD|oFda1m_$8=AJ)v_f4wC;|k+Q&qB zyg~_to@B0JFz@DP6Dgg7;-e51D{^h(R)Ud6R(ByzTCF(qmm-W-+NCW`aL-za~; zAv6qB#H-luc@{a{A%O#z3f6I#U$n~giHlOS)0(B(e`hlfjbFMso)WiyC#zX&<%=!J z7bd3(+((0InljK}@x_h@8~KvkM9u}3>1?It^u7H}?`N^7qS#Fe2bnWUOwaSzTl6)m z;cJ1R9g*a(;G3_SO_ywU&o&U&M{&kJ#T$OGM{Kn(b;*+9)fLOW&~J^6`N|{f`#BUq ziRa@s<#-nIK0Uekn*(H*9@oOisash^m6;(1{4X-2&b!}FSDHC1YAv%~{CpFZRy#Gb z=LqPDTKw(>VS{|{sPt%uFr7SIdGGc{-l@9wZ=$NF#>CEa>ieYUn8=e|ZlmmmNEahL z@knOpWPD;>xDV&pcC)Wa6vz0(-(gxW#ooev^r_Wv7l!d{*+dQ~L>kpVYCyt9^I|nJ zuW6TXw*;25)Hvi*fk-7im;z=X z4bO0&+&Y!6i5QbKsK&F=RwpkjJT)Ofa}Onh5!XvRhE=uX(|>n;X>e1;3OhfVZD&Gk pF7;GZUQPP(SB`OZf2GaDffCC}ePVcyje*?Bv25kTU diff --git a/test_data/golden/qr_with_size.svg b/test_data/golden/qr_with_size.svg index 7f1d40d..b7bfcda 100644 --- a/test_data/golden/qr_with_size.svg +++ b/test_data/golden/qr_with_size.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/test_data/golden/qr_with_undefined_size.png b/test_data/golden/qr_with_undefined_size.png index 99a0012b7011f6833d6c371fd492152a589c4977..6bca0f4ed1c8149526d833e6abfa12f19345efad 100644 GIT binary patch delta 948 zcmeytexH4UW&K1?7srr_Id5-9_sJOYIA6T=e_6FzK-LZCK9_2}#($hSuLITP9p~{Y zy3Tva=8<>6@l-?e6h?N<&s~oz=gqkPN#W4lKG``t(hG9-u=g>~ihCQ$X>nlVS2+v5 zjH<2ast;})xG0#q()@ZUyNvi%bYeMc{qfs7ug(t&@7yiE^!XRtW@ecO1!tbUv#dS; zfPvjYX7kQ!zx$sjT1=6WE!HTt{>990ae$Gp;LoaeSqB*Vj24iRjmprWJ zvk~9=TzU4sA2CM0R2*1sx9Mf~dDpi;Pb|~714>@Ew>5ajzv#*i)$2a&eD&*Q z^2z**F_yLXvop=A;Kyd0yH`F<{eCC#*X&!3o3smZSY)KT1KWb%H37ZCaQt6v0neis z8hh>}98S8!u>R)!OC^5_KwkS+#n^7aZc%?g@p{4a(&K%}TRVQoRPlb#H zp^CSF$81I%vrIGZvg-`T6PjO|9@w~1;(M&Btm%{`&6Rs!%dyD3XKb$s2L^Z`KNH`} zJFjEED?F$;f7QZjR@wE^?~DFSiPbDWsJM^4Z;@NjWl*s2$vn_F-}sn8#`EQm0@;A6 z#r4Ui)BO2TrCi>$1H;ZOTW7w^DU*&H{Oo)MJ=Y5CSL}JdZuJu89_dwo_g+=<0*3S2 zqa{~DnfMBTX~5!CgYyx?uZEMS-TEk=xn}xRwyDMM8kl8LAyMNlSzCS@mEPxzFWQ0GQIP+^vt$B%~v1Z@%C7? zy8cSRcc5WFS3h8A-)LX(hmr4T%yFouf+^((fhkK57{2#d-G%vK|yS}%KfhoD~uI|lc@6_Jzd_G_C$q7itV&)5ClUZ_x-$l3o@N>h000toNboFyt I=akR{0N|Fx1poj5 literal 1016 zcmeAS@N?(olHy`uVBq!ia0vp^?I6s-1|)5sdx0c43p^r=85p>QL70(Y)*J~22If_s zE{-7;bKcHz%u_bxVfp=k{xv4Eq$dV0Ca29jc~>#aSE^Lmbt$E$L(HLJkvxL}dkYxd zne2RN#&x~j)yC(i{*=4B_3!5zbvY@^7MT-@lbWAgIMK3ftwHgcEi$4hY&-9kik46Q zDVO{FbWT~b%&gGoXVT11EQ~BYhsyQKE&Km65T99c%1m2 zbU5%m;c)CrEGpqG+U>Ld_+s{;CjvzZ$EAUmMLZU=+B$PvQA)K-U&EOXD;=A)i+Fx- z@;Oo1aPh=O556ZAj?s#i*LJi3?K57vJlx>#&J%?P+Mlpldh`iAaR6g0%Uy9RPs{G` zoBXQg$wK)(c<4QRD#Z`a7?%~!U)rtg-z#IP;2t6|QRYOWjN%DFQ8$(2+hk&ecl?(0 z-}hd0rIgLih!YzpFk8A5O^{i%_Cgrjd6{={u@`^eeLi{TkJ!x-tHR#3E3^ldI`U0Q zR%Fk8%6!r>IxPNs2pdX z)VxioN#?{wZTIT|GZ!WqTxnb%;#=PRRBx3uC}7(?_$E1T5xv!QZoZ{a@riGVXIxiA zsDG|?Ut28BXeqMO;JLFqP{j$y=%0;G5}rjozU7rRclJ8Dn84<)@6Ny=ZAy>n3sT>^?fu5;ojfNNmMKmEMjgiCeV<<_t)BO;-UBB!;AKHF)6hJ!}Z<-pl?6{D`tFL z->5l}tz0I2j{mcRxBlL_@?cl>46X@}rJ!*PitF@~iS|C1cg31K@IJWP)c30XR!PgS z?E)tfrW?AKRYnU_7ZfiP@4(t$nuV<=sN(3+7ugLqY=< zD(>rLV%K{z&u`=3`>i@8h7YPy!BQ-@b=#-LnamHK{CDOuh2^(39)0yH4*iFJG3llQ PvoeFHtDnm{r-UW|rw_qJ