From ae2bf8dff46dcc8852d9816f335b8da8759718d0 Mon Sep 17 00:00:00 2001 From: Correl Date: Fri, 1 Oct 2021 17:48:18 -0400 Subject: [PATCH] updates --- 20201009010321-static_type_checking.org | 3 + 20210608234049-hy.org | 4 +- aweber/20210901164718-test.org | 1 - ..._progress_of_moving_pages_out_of_sites.org | 161 ++++++++++++++++++ ...ontrollers-migrated-in-sites-over-time.png | Bin 0 -> 20240 bytes aweber/controllers-migrated-in-sites.png | Bin 0 -> 25465 bytes aweber/ecommerce-cancellation-webhooks.svg | 4 +- aweber/ecommerce-payment-webhooks.svg | 4 +- aweber/ecommerce-products.svg | 4 +- aweber/ecommerce-subscribing.svg | 4 +- aweber/stripe-legacy-purchase-tracking.svg | 4 +- aweber/stripe-payment-states.svg | 6 +- aweber/stripe-poller.svg | 4 +- aweber/stripe-purchase-states.svg | 6 +- .../stripe-purchase-subscription-events.svg | 4 +- ...tripe-purchase-tracking-payment-events.svg | 4 +- aweber/stripe-purchase-tracking.svg | 4 +- aweber/stripe-subscription-states.svg | 6 +- daily/2021-09-16.org | 3 + daily/2021-09-30.org | 24 +++ daily/2021-10-01.org | 4 + distributed-web-application.svg | 4 +- openapi-core-exceptions.svg | 84 ++++----- 23 files changed, 268 insertions(+), 74 deletions(-) delete mode 100644 aweber/20210901164718-test.org create mode 100644 aweber/20211001095858-tracking_progress_of_moving_pages_out_of_sites.org create mode 100644 aweber/controllers-migrated-in-sites-over-time.png create mode 100644 aweber/controllers-migrated-in-sites.png create mode 100644 daily/2021-09-30.org create mode 100644 daily/2021-10-01.org diff --git a/20201009010321-static_type_checking.org b/20201009010321-static_type_checking.org index 55759ce..2aa07c8 100644 --- a/20201009010321-static_type_checking.org +++ b/20201009010321-static_type_checking.org @@ -2,3 +2,6 @@ :ID: 1882370a-e4df-42a3-ab5a-32b650b754a6 :END: #+title: Static Typing + +A property of a [[id:c90b53a0-62f7-4115-a417-85e22f55d83d][Type System]] such that types are verified at compile time, with +the goal of removing the need for runtime checks. diff --git a/20210608234049-hy.org b/20210608234049-hy.org index 09a8f6e..a9ddc98 100644 --- a/20210608234049-hy.org +++ b/20210608234049-hy.org @@ -18,7 +18,7 @@ A lisp dialect of [[id:cda9c620-fec5-4549-b979-22fc06819d77][Python]]. Disassembling the above code generates the following Python equivalent. -#+begin_src hy :exports results :cache yes :wrap src python +#+begin_src hy :exports results :eval no-export :cache yes :wrap src python (disassemble (quote (do @@ -31,7 +31,7 @@ Disassembling the above code generates the following Python equivalent. True) #+end_src -#+RESULTS[08e5153ad26dcf0fd8ca2a7c041eb26268461381]: +#+RESULTS[1efb8b1b457cd5e9ece84633e21daf77ea8e8753]: #+begin_src python from dataclasses import dataclass diff --git a/aweber/20210901164718-test.org b/aweber/20210901164718-test.org deleted file mode 100644 index 0214a0b..0000000 --- a/aweber/20210901164718-test.org +++ /dev/null @@ -1 +0,0 @@ -#+title: Test diff --git a/aweber/20211001095858-tracking_progress_of_moving_pages_out_of_sites.org b/aweber/20211001095858-tracking_progress_of_moving_pages_out_of_sites.org new file mode 100644 index 0000000..a0c41f7 --- /dev/null +++ b/aweber/20211001095858-tracking_progress_of_moving_pages_out_of_sites.org @@ -0,0 +1,161 @@ +:PROPERTIES: +:ID: 3cc8bd09-dd02-4950-8c89-a737f92809fd +:header-args:bash: :dir ~/sites-clean :exports both +:header-args:python: :exports results +:END: +#+title: Tracking progress of moving pages out of Sites + +* Metrics + +#+caption: Migrated controllers in the CP +#+begin_src python :var total=controller-count done=js-controller-count :results file + import matplotlib.pyplot as plt + + total = float(total) + fig1, ax1 = plt.subplots() + ax1.pie( + [100 * (total - done) / total, 100 * done / total], + explode=[0.0, 0.1], + labels=["Legacy", "JavaScript"], + autopct="%1.1f%%", + shadow=True, + startangle=90, + ) + ax1.axis("equal") + plt.title("Controller Types") + filename = "controllers-migrated-in-sites.png" + plt.savefig(filename) + return filename +#+end_src + +#+RESULTS: +[[file:controllers-migrated-in-sites.png]] + +** Controllers in Sites +#+caption: Identifying the total number of public controllers in the CP +#+name: controller-count +#+begin_src bash + grep -l AppController aweber_app/controllers/*_controller.php | wc -l +#+end_src + +#+RESULTS: controller-count +: 85 + +** Controllers loading JavaScript applications +#+caption: Identifying the number of controllers loading JS applications +#+name: js-controller-count +#+begin_src bash + egrep -l '\bappName\b' aweber_app/controllers/*_controller.php | wc -l +#+end_src + +#+RESULTS: js-controller-count +: 24 + +* Progress over time + +#+caption: Percentage of controllers migrated over time +#+begin_src python :var progress=progress :results file + from datetime import date + + import matplotlib.pyplot as plt + + progress = [[date.fromisoformat(row[0]), 100.0 * row[2] / row[1]] for row in progress] + x = [p[0] for p in progress] + y = [p[1] for p in progress] + plt.plot(x, y) + plt.fill_between(x, y, alpha=0.3) + plt.gcf().autofmt_xdate() + + plt.title("% Controllers Migrated Over Time") + + filename = "controllers-migrated-in-sites-over-time.png" + plt.savefig(filename) + return filename + +#+end_src + +#+RESULTS: +[[file:controllers-migrated-in-sites-over-time.png]] + +#+caption: Identifying the last tagged release each month +#+name: tags +#+begin_src bash :results silent :exports code + git log --tags \ + --simplify-by-decoration \ + --pretty="format:%as#%S" \ + --after="2018-01-01" \ + | sort -r -u -t- -k1,2 # Last tag of each month +#+end_src + +#+caption: Gathering progress over time +#+name: progress +#+begin_src bash :noweb yes :cache yes :exports code + controller_total () { + <> + } + + controller_done () { + <> + } + + tags () { + <> + } + + git checkout -q master + for taginfo in $(tags); do + date=$(echo $taginfo | cut -d '#' -f 1) + tag=$(echo $taginfo | cut -d '#' -f 2) + + git checkout $tag + echo $date $(controller_total) $(controller_done) + done + git checkout -q master +#+end_src + +#+RESULTS[b2f17a7946c030068f7ef85189b10bd0c5cb6a0a]: progress +| 2021-09-30 | 85 | 24 | +| 2021-08-31 | 85 | 23 | +| 2021-07-28 | 85 | 23 | +| 2021-06-28 | 85 | 23 | +| 2021-05-27 | 85 | 23 | +| 2021-04-28 | 85 | 23 | +| 2021-03-04 | 84 | 22 | +| 2021-02-25 | 84 | 22 | +| 2021-01-28 | 83 | 16 | +| 2020-12-29 | 83 | 16 | +| 2020-11-20 | 83 | 16 | +| 2020-10-29 | 83 | 16 | +| 2020-09-30 | 83 | 16 | +| 2020-08-27 | 83 | 16 | +| 2020-07-31 | 83 | 16 | +| 2020-06-30 | 82 | 15 | +| 2020-05-29 | 81 | 15 | +| 2020-04-30 | 81 | 15 | +| 2020-03-31 | 81 | 15 | +| 2020-02-28 | 81 | 15 | +| 2020-01-30 | 82 | 15 | +| 2019-12-18 | 82 | 15 | +| 2019-11-25 | 82 | 15 | +| 2019-10-31 | 81 | 14 | +| 2019-09-30 | 81 | 14 | +| 2019-08-27 | 81 | 14 | +| 2019-07-31 | 81 | 14 | +| 2019-06-27 | 81 | 14 | +| 2019-05-31 | 81 | 14 | +| 2019-04-26 | 80 | 13 | +| 2019-03-29 | 79 | 13 | +| 2019-02-28 | 78 | 12 | +| 2019-01-30 | 78 | 12 | +| 2018-12-27 | 77 | 10 | +| 2018-11-29 | 76 | 10 | +| 2018-10-31 | 75 | 9 | +| 2018-09-28 | 75 | 9 | +| 2018-08-31 | 74 | 8 | +| 2018-07-26 | 74 | 8 | +| 2018-06-29 | 73 | 6 | +| 2018-05-31 | 73 | 6 | +| 2018-04-30 | 73 | 6 | +| 2018-03-29 | 73 | 6 | +| 2018-02-28 | 73 | 6 | +| 2018-01-24 | 73 | 6 | diff --git a/aweber/controllers-migrated-in-sites-over-time.png b/aweber/controllers-migrated-in-sites-over-time.png new file mode 100644 index 0000000000000000000000000000000000000000..f5c1225116c1f2ae199a80aa61ab02a66df468ec GIT binary patch literal 20240 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 literal 0 HcmV?d00001 diff --git a/aweber/controllers-migrated-in-sites.png b/aweber/controllers-migrated-in-sites.png new file mode 100644 index 0000000000000000000000000000000000000000..d0a58a99b8bb853648d8ad8bd084ae43163d80cd GIT binary patch literal 25465 zcmdSBg;!N;_XfHJ0YSPOX_S<1P)U^*X^`%QO^1{;Zn{B1y1QE%k#3Og?!NCn-*4Q% z;a`#LY;7d^LWHcNh5G;N8=SiMet~mr^upuk)=96pc{(_4u`Fj1s@gcMrI#H-< zrE%~NfjImnn-j+nU4Y`-4>H5DGKY-V9RdO3FZNw_(W)q3^qApo z6`R!6lBqG)7%hSx4mj8WsqL}aB#T^_tO;hcW zTW=Q*xAykPD=rtR%<*a$pk%*({d#vn*=g-_v^Pu}|3^#WXUxJLf&`sl^GQFm=LT0s z`?`aDCk7vf^UfzvQL4k1TehXghs&8dds-~vqqgr&mpO7Nb@vx@Nn$>tl9H0|PAEHB znVG}BQF+(()OZ{=Csb5$9yA`d=-!3~qtgSsZ~w~94k#>bNq%kEUFLdhAQeGM;C8U9 z_b4a?-TN1(ru(|Q0};J5v#{`a?VL6AB@P7z1swy!#q`Fp>(%_G=#=3co`UcjLqo&T zeHxl~aw=^!qXP>rOLAITWIm6#OCABO_uWxc!?i8v#l4qb#eIbi>iq3jyO$m6nO?nG zVHCSYU07HU(N+8Osf#{Ay93BJP^3{QBO{YpSC{B>zpDrHqVzm^BYK)N46&QkFqO=a zOkmTQT_rAUeGp{K@Z_|qO=-PbXNT;~R)-A(8)fI_#v~^8?#)z2z04Cm>7^Y^6~L>V zlXG_$RMYd~@whzLFCV_UK1~vIepUFn*x+Ek9w>AYlW}Jxe#mFLC~PvAII`&&!yvcf z_nZxa`H^wSaad&DWyvd?gbTTLZm7xabh=FcUFnp~Ohq7bX;bvsnG-H9F8}pfjN9>V zB9Fb*%iDVR8F1($prWE085!AaB$=LUq}XC^X-m*G0FRJiXKy~k{r&rQs`t(I{p@4B zmd$eO<879Vht!=foWJ3GCiWPCP87ke{Si%m&X_gm8Qz&~AuDGAxM zr&ov9YvycL!D}~*D*voR`P|Wp-ES+9h`4hXs+Cgytq+!o<&u!V9G#!Hf^@GZ=q;As zPZenxLb_RN=SK~1FIz4}5IG3hb;)OVO$Lb(Ie_KTdTWxCNjujaNS5voTxjRg-FIFh za>TP}jPBlFP#KQ=loY91a^EdR{=%YF!%|UPT|Gf81T9kf^vUR{|C>$@^sMacE=ah~ z!)XTW-upOAj~L}qkcE|%$BH+_9vJPyHR^nKiVWJ=+;ib}x-~Oj zjpHAIo2T!eV7*h0xK{ zpIbfxPbcs_^xPB@sqwjNTteF7LGqZl?|E(dC$;xdLqp?ZGIxkhBlNtnyWFrxD(4+m ziQ#0CMylIJ63kk+G=be~`$KGee1-W~jyKigjA;fvKAQc6s+y9T8j;)D#s(*F4!GqE zeG&$K5AiL{AFfipfBzmWLC;$tO6-9@NFRcYj_h{Q$EZcE6Ozh+y zL^uEWxC-r~0x2n}dXwvGH63RHU;)@^UTNtj2)Qq}7yGdZ35eg5lly^-&$M{mzRvg- zEFlI@SJVOmB)*fAlivHS9+x&npP5&Cq7KVN`1lgW$3H<27Z(g~w??u&C}>$(Bf7i0 zy{Gu0d()!3iQMMOrTe$JkzyJ>%T`M*6rCKviU`0GB9tk7wmINW&%^cgHGkS4ps<}y z-7+%p%+3nq0f;LI0C?Ek?3Nx@9|oY}xm&03+Z$v@3`SB2aiIHWJl<_K|5+t!y+RUS z)Aqg|&>I~e@9GM{OX9UAg=c4tTAPK;)Rzc&LF*62XP}5!mNrkCHtUwU^zPLE^LyUg*S8Flrql#`c2C7 z^0z;*AxpQ5m+ldX2eo2#!)ZbZX+kb19naa1y2)&hfCoj~9yCS)FC3nC7+^&dqs9q& z4@&Up06fzoVhOjQPk z=iN!&xmv3kT(_21a4g^SiNh&`;zRHlDVSS5$ctSs{cWAPTCN${sJ?DdIFakOXLh21PQs~hgdv${wFCz-K9SFmdPn8_VwDSUKcY! z0ICxnv73=7*Sq7M`mLW~S0I1Lg0cpGlAfMk_;ip$-FxSi5JpY_Cg901=VMZbEMwaErZgb@!rTIOE}r@sIH7M}RcCfzwNdhK1#W@Bqjsv#2P%+HwkE z`M1F7=CJ9;U=pasl@9Cg)4gxZTaF`a(P!L3gF`-Qe`TRjvYD%~{_pv$yu4mJ!89pl zsNIt4=ESDuUzN`|kbPB^%&mlXm>%Qu_Koj#sH3>v}|kaBP-G)e2$oBzw9s zv|GLp3{|M4t!*`JRYS?DkLirw$q^1BfmBV`?H4RL*@BLaj=0ifh*Q`5dY$t2EEi+Y zdsz51+#Zx=Qp%_v;A-7#eK8T>Yj(RQi?uw)y@7=_he680J@G?vq7#J8du+9neG%V6-teJWcayj6Jrw&>^zA3oO-rgvKB? zlJJG5fR3hS|8%+G^^mPMS2it-2Di}(BNLRs*XaJOkN1azDSV~FH3Bp=J@2OgqLv7` zxPa<<9!r7@-Enii>$V(7G{`0^VGs+@xJ+zbaq;@BWhp%mPh7^`8Y8^)n=3aG3()U!9mq^Q{eb>vXO6FV$5D* z6pa{akN&Tv+pBFkdNVYf{AY8ZO-T;8Q*5Nan?Aeyy3fmK6pn?`(S(to@xo45P5hLCH=f>@F4TY@g}~z=_BqhU+42V9)uI^DDekJ zodakP;7wK+2V%kGH>$%2LhY9vHs1W$@=cJY851HV8U}c47DBWzRJI*>)M*g-lS_Xm zSHIu*d!h~0nT9hQZlo0$j$gD(N0eF%%IY7?Z|!|V{>-FocKEO#*`VEfUD!#Kncqp} z?Q~uYKDu{YC}l`zTD6ql+5DrmSKCBmM;* zrVSM%Hn4q%(zq+cly8|^@GGnvN)TCY>-zNdOE9Zyv1e0l2#-gydSxwa^aeAq$;==C^CM1f zcu*2whb*5NL3!`99PpOTf}(PN9$48_S5T-)!`*#KK^)WHCKSS@Cm#;c*hvLewZ1#1 z!VgzT8G;X^t}bqf`=w>6t~=U0TftzV)i}f^i~Oz^Yd783S)n7~ba_xqe{kDGjh^Nn zu7iKU7|~iYg)_^HX6I;ebu6EAvQ9Mm%hk3syJf4yTdzdBk{QX6UL0_sy|3qVmj0}; z@~|u_cS_S^-0ONVzcxAicC?jCeMpyhE0S0RVIiz6#D$5%?^XhywN8)0GOPX@{>9_f zDLT;-F`*MjUDe-RXi_gf5DQK1g-Wd90h44ez2BL2gF2H8duhvSWaU8DpS=hdQ!?xtrP7rQqNUn`uG}YV0F1b zt>!C#>UgXC<(Y|fmPO4h%bT@n5^D8RCM#D$`Fqa6YfQTAM4dR9dAP}f)2gk7@7is2 zwYA>7YaHHlpd&;QTyDPAKX3h)n$bC!QmrV_^%Mj^$G66v>$wV@rsiMB@A&?GU;aA- zVfP`M6h=;%$EsHuDv_Zp0h)K^i*s}_?=pj1aVHb_QgkA_3M&YX+JyPfne8SO+O}WA zrObpd;hJhT-U*j`vSYRA6)+6pQoMa~^)ISy8>w!~Cb6jv7{?$TAyX!m$#!Qg<1qec zEws4`iZaM1on5=peALCmv2CDk$Cr(tr~{K31e%1{6Ue2_UvBWG-`1sy%Me}lJu5pW zU~)rYYj`eympU^M+(m~Z4kMlzUtU%C06i+jf{qpQvT=@HX)XtrcGgJRZ68v=F5}D+8ULy zS!<{Ojel-28s$BAs>ActM`pV^U>Bn<6(HV|(&ExJK3gkeHS5NiU%}{U1U~*ck6#r; zAlHmZIuX6Wz}-3hidn4xsg+up3@tKLe!wB2JfB-W-0XB~4H#=Nf%4GM#v^3*J{zAt zSoP7H8&oOmciO}Z5u+AsdN5?tLru7UGn6HXEdE5%=qV^vxu4^YTT88T$~$d=TpP1T z=;KyF!=eZztAiy{MiS+4Ch2VWV&}8yX#&<&JJ&A$gTzJQ%u}pXBrRQ@MqC(<L zT_!2pqs+S^F1bUgQyF5Dp(`+dsz`_CjN&(c-OoVyuq_fO2FofxwZ7^>`dc-%_g>;> zGBA4VjK*9yeXGZ}RyO80wFd+wzO$@HwT?d=if7`2C0N1nF`XO|c&OVw3R#uzb2Q?^ zV8z8~5A~3mR%0kVjgl;o7p=+#cro4a*SfUETcE`sJeYMBXHu86X=weCHaDe zL8~$ME4%0!4$r=3GZW|5+b6EatsPTO)9+O(3voh7NuS`q9-&&A@5+5R^a7IpxcIYh zbT{<^pSv*{r|^HgQ!)dw>7?9Qm}_!ztmb zfBxAyIh13!{eS=Bm-TXJl^4ddi&pvN*y!vsa_;eplBE;2oKSsnOw<|r?s~gld%b5W zHjw7B*k_!e6ZG3ae=J9?>3SmtQ8Z_Gvvb=iIweIYI4(4a8-a;4oYKpMdFt+*Hc$+Q z%i0^~!Hf2(XXnFY7$NHlz@KygqJ)Q|v(>NRLJ#Ii+#cY}#W%4#{ivz&$;lNvepk?T zLtL+xzX<^DMfUxB8qfxU<|!WV6ul2{h6T>D!CSB-ZgX5bMtP&E1}FZ!vq8b_B|9Xc7Xl(o|-zC&~o-mSEcPk0^4tc@}qv{QVy>h zIMI_R;=xPCYZWZ)b2`K~Ha{Q!+o0W`+zxaw7#mc%d@O$;}~ z^F;RKH6cggzngQp{0JuK6I~`U5a1ii6_%mWa-v}~3DL-{RUAJ|DlDZW%LKgKl zaFl~{wyi?|Yr5|N?&^}mup3?U;mXh(a2Hf3>TrwHUoLuRlp7#{4p`fL``6XIw>$u; zptte{{b_ztQFcW|G`vYbyf%!X&V2a=Mm;${*}nN$5ujQPLGz(eGQ8bg_IT!Vp=3vg zKA`1&GnR31d@uHJj8#!lF%9TUm0bDtg2IxONiExTzz0S=ZRw%(2)8V$M-HREyInoa zc=TL52MpNV!)5Dctcv`P;$n=_sR5t+DW7ty8BTb20s2q4twAp-I;G=6!ItpcSLm=Q z2F_Lj^+X(sKqGaQx4&08yaDjC&D!ng=&0!MHoOxDjzI~5_eDrZNN{3H+j&AYJ3ISJ zxjMHqc_7^P0(cWX+l|-~?mzdT!F7f<5gZU~9g@e_&b4?6!C5mP8XY5}%BN3H+tNim zAie$lE5P)dBhpkznSe6I620=>Eoo$P2v;rqY`^_0fz$oWEIK+GFn799hJe(89|)ix z+K0U_xSDj?;ha+vk0l`m#WKUGJ%BUoSbDhN z`&_C!1nlk#XqzW?jSJF66RXGQ{Q@7HKtUrh3erEioDy9bP_X{Nv&P*>jf9KLVQ^#{KxDWMm%uF4yY`V-pjb$PHr1Y&>wq`}3*Gq<%x`Eql%-2})}e+OME?<@VaRx&cOnHp;{&__RM z+jhc5FSs<|9_8_+@n<4NKM9jgINIu#M-O{&4+&?oqzvpr=YNc(7Vy;6Bqbps0hBmm zI4Mu4h{wfI7S(;;ls9G6x4`E_C&2qshf??)hj^wW(#Zg;D4!c6cDIb>xz4Po-x-84 zZ!bOUZrixeD<~+aUiRgQVR!hC{QMAj;9T85^j5pKUj1h0-%NER=CdJ(v&w+j27gsg zp{+e!t+V^cN=YFL2ngJr<%-dBadC}amgVII*VOPXdf!?Ddijlk0Zm9qi1a-r=M~%+ zWds`=uDTza`)N}eUbEa3(sR-@KYF-6V)?uGDl!Eu*z{ObpLF3Vlvzx?0%^G)Fgw=X zrzuNk*U7*KBSBi=H2p&^6-7xglO7lM8?@rRDheXMK{D&naas5+aydV?S`FOFaH>RS z9;COA>B322Yz@H$1+NxeS1}mmlApE#M%-;DKi3s7*aCnk=D*#m)M)X%_Wg4RveJsy z(hVV(>7VR^f>4k-QFFP3Z|!fkb5G++Jp+M*V%b6 zrr&HWj7(Vh0T*Vb*oZ_(aWCR1`7;CnJ?f@b2aHG8W$Q@+2AnPv0OD}vK0iL^6}5#D z&>(`>jDB-YsXdM|)iaH-<`gA2NuZ?}+4^Psc1*Xj5Ss)WltqQ<>c;R^k!u=eKS?Kb zTmYXXeyXZDx+=*qnE^XV%KdO1s?dkeJ5Kd*5MwItUJdJ3ute+4j1ShET@xNBRe`0fF`A!6hK;LjW zsb}f;xK6yuIw3NxFCp*ePj3;0FXk;-G%EdZhw&>1aA2^!U*x)vNi(X!XDJAoUDb+A zU5;Uk8xfbE6_bV2d>`Hi_lg(0J%zHp2Ji76$xZ93{(Z>0`KxyE2hF-`@;kQwzU1JS z?KT@VCk+#L$81GbfT^xm7_!R~5C43)LCQ1D`B>`5;HtGUSR9zC??oAgoa| zgPZh&=$#moo-r`#H_#v3_Z(s!T|F-?ug^}USj>Ow9Hoat@=*#~_lo`5%}|NN+IM^i zeFc1FESi6> zLHZ6cKDrJ0a~D|_lUtotlDUjDC|{6j<;kNo%KZ79^A!36d|#R)eieo z@vM4s?l#ngv&wJ}TUq$_h(+p>q7(QGGa60stO1x6uWC*Kg@oFX-R+14>p zqXtaLdvs28|4lu;x7+Cs4O|S0`T2S{A%wf>pB&9X(0~mbKbOpP2~m~M2(d>^SpRpT z4!$@6E(gFRaFE19SR;m5msMK{p9_&l)&k+^W{W&wV zdZv^$GhgCyA1Z^7hQy7=l%oQKFSociS-dtQxXyA=pNW@x7B)j45`1R8fJcgiuL7L* z5t~i z*{xN_gA9+asV;>|U0@HpglLDB>m$x0QJ3RVVhN&)ulX5C|h zNjsO1P;8;c6EPIw@*yKpMNtn3Kfc558#2-=hl?e;SQn?d%d3=_Ffdy~=Vx(C!?~5* z*r_+Rfb!s-rfas^7x9Et5aVr7J097c6B7Cc(F}^`Jc$7B=g&{g_qf$nak9s3IYbxw z8$A$;O3+S*RMPyR@=CeoPitEBp#-?5H;=WdbfHczx325^F3nA{M-hk-P|4G)b&D3Rf=QJto`&qwL_=MheAr-MZ$kUn?f4rzla;x45x7O z7SJ?e21_JX0&;wfyUZ=j*C&1-uE;v!RneEJ)_UTRI4!wW$0XFEs5@kR^IJotA`l{b zduJb*;iJ8=k!m2sfADN2BUZWBP)fT%*R8* zY-NnBG>4-?Fn#!4HN=jm{+I;*)#sdnMc(##wca@pwTdhSPMK2^BRsb7;NG?(8*)6B zAIKg7jxMkZ6-k^#DOpofLCwAv)U3N`hS@@m*hb6>V!p&!$^i|<* zBBwsf?ySfa#yy#o5y$;fza8SnHP*RR!`<)zUfuRnM$D8zwNmHPtlGxmVrQ_XUDt4_Lqe=&+RuWY!)9ozJ3rgS)aQ)FlS@)E{d^IaQ!MXsCmmj zSU0=(iVhQQ-;w#*?zuxYM*5jB{pxbrsfQ4B!BwI@>3P$)K@p}Uf_GaU+r=V>{bL!c z2y3pz&AQKzmQJ?6_N1ZhMk$ZAyOJ%8Xq1!2; zqQUhDSG>{`hfxC%L;Kc4nlWriOI|q|C1s-9ec}9_gu#R+I0tt$Urw4LZ7{O!w>WXA zVA_R_;Eqo`r@_s#;CuJG2PCxD@=p|hrVnqL9(yp`)u;0BX2O)wO|MdB{D6$}~;i6wDCFpo0>US7Wij;3+Dmt3VUC zAkX@M4ZA8o=c#1=-;;&q^?~b_yx(E*Xl7>$5-T4&<@4ah6*mjWXHh)Y6wweQ#W|+3 zjj6#jvVw&Z!k3I3PYn>2(o1}_u{dVCF7a367O6KP`a!yXr<#RgaO~=33c8NOC!M#UZZ_BJMtmj!Z7Tc^^&WyO8`qfb(_K*hKBcf8P$4-HJ3@QC;355QYUt zX2y}Wg0GjDKK%iN3kQiVPYF2F;>jz{QDw;VSR6!skoCO;9jVj!c8wip9^9~2bJZ#F zHPGlwxkroh(%{}V7oK0BNVxCd*NPUZFmlJf0t$(!LUCrFvyl!5w)MmO3yB1P8w5L~ z$C^5!rf*x)Mv z04nQuPNu1|5L(q7MPbLzY7Oq-=JRyPgII#smPVKY(c;YmIx@-UfZ`)JMq#kU}Ec7DR>& zKIHeO_AlShwV>bk&LwI9!z!_cUBKt3p9u081WEk0s;affd4wFy;}IIj!i~Jg0OlUJ zzdVcomH}i>hYZ@F{Qg&k=7(EdyRuI&q8{=eGlF}mRc$#M5kj7z`5F|AR-mD`SztUe zea^oR16;@iXmI{_iL{ery2*=(vR0@yG?lxIP^p+YJ5eLNj$4X;qRMZm0Fwtc0duAF3BWkg#Sdg~E?SQzUlQmF) zQ=^*>Z^Xp!A0;GiK8&@&hfcro!7I&etZ9FHynyh6rHA0NC_=y9*MMYE`7|+(gN|%3 z*g4jsL;XCBI;BrFBsd&f&I35A6hAPcq?{Kb%F>YXe_94!XaX(&lcYSi3GK4|xj0;o zQJ*vn;Jmb{2$|@O;xELF5HvwLUMgG^6lo#|nV%tH!Q@Cl zWgtSVzS`7Z2@g}E1Al3VGknPW=**q0^A)ZV=iUw}DQe(b{=H=-F`wSIjqnH0GNd5u z#4jQJWrfAIUHoRKc3O(d3SjzrCDgVA+89nh__aALrNDvpaL*-@(WoE6y-H(DndFFG zC;eq;$o{da6KCoWkYs2$A!%}O!4pN@jMaI#tN$)8j&MON(9|W?wvZZuUrKR+Jp378 zY|!AX%Jctys!0oGp@`UMa0$QMti|b1OpbgN!*1K=|9c_%ziVe8T*AKq>5BvfI|?UR z2nW7e14bQ3z?~X=89!VIi`}iQYWU_N4I&uI3LyXYMT;XdmMJ;Dk`l<`Q@}K!x6q%M zp7)z@|JU<}Bl82TFJ}j_dSp{fui_Yf898F(43dnexs}cDZQ(LV_FNhE=(qfEj_ODR zU733XlCKt{h^j_U3uLf9t%_6ia)xswvGjn+NRX6|QayKg2JGdfaz)Hi1hxSC+Ug-TY zUx=~M0^PM+XG^Cvthi?#&8jxbVzwdE=wjwyXAxC;+AX5}F&ePnMy9`eqKFLqK1dGK zNbgoE=?cCI)@&Sck|)v1V=w3GNobA!+11;5MB919*wNEnY?;qcy$SOdl%{l!Z0hCp z$V)l<_n_2qLvNCoib>qKPf+@tO4a3clrk&D;{41eTj5UN1A+H?B^OEi=oI zfR5x7kx#KUS-;97b8al&w!ipXh*8_~!H*HOwkK=|de#~}XJuYBGdjJWjNtqG8I0U2 zn1!?N*{2xNqTfLWq&SXX$pk*lAmOE^4bcC)dcy>Yjw)dol7cc?dNw{c@c4g1)rI+2Eva&v7!zle~zrA>B;0Xs4>^cxqa^PU6PNn=8%7>_hT z;qtxTH?zP*3!I<}B%O#f=_>Q39oeJ#pVQ$1zb}pi=9BPuHXbTswv6=5Sb=ghzc5~+ zjUz$IU&}!sG7Foqpy#1Y84tJWrf{Kww2S-Z+$4L2eSDQaTNzVOfvZVsv3+2L!ZNMH zHc!bOl5UiWdhnzst1tHtjA~}%nX}~V$X;vCUpxzn!LhjZ=)@#($n zj;c|1nZYHdMZe3KqDn|;(Jz$>csSe%1ZDpp(Wu`B_;{=Z%-D06}A|ik^QACVwQHGDjK7c}F2yh`V09w#tzBBeW(2ajF zj!28;fu8i=ynk_bn6mOwfev4uS!VsJ$q1MH9hd6nd%GAd^^Z2oU+pGm7Ny?FA)QYU zfH+lBYKX{bAT1#K@C^A*o#ivG@S@ib4%Ei`t+^4W>FDh;`pPMu*G=slGH5(f2L`y_ z<6js#)N@~DtPQfnNtabW1GxLJn{2EeP{4Rsa zW%-YxRoUe;k(_0kELF3k=GDJc+!ckAW50N-pNrmvtK9Dx2(wD2IZE!U`gK7*rRD$nXz~(^L#v- zvMBQGBSvZ)y7S7uZ;eBy3VKl1z9bXcTrI8kVO!9!qUyXbVlVWhs2W2 zhM$a5hK?>9Htm)3%sCYJ0QC7E;#l2Vom5LkAVjs?#XMRrK^C2#z@CXeu;=6v3nYO- zxnCMFV(ADaR~2cGRydHjc)DtFU}u(>?1(eXH^=OpC@1e&ZXKYPK7}^m(ukm;%tq!+ zDv1|oy{H(%+1VKhWuR4;G|035`-g|Yl?RkvIQWSe8@cU~0|4RM2ueot)X@R> zI@QL74j;3MLN2Z{_?4-Wk=ENhRtMJQ2fM^CPMDMVk-~k~(u>k-9B?<|zpT#WK&L(V z`lZsB!2kP!*o#qiRaTu();lXhauYD?tT8;=vF@?w%8AJtex|*%BXzxhsNO*z{ugqv zxSrd&5$;cFifZL3txMm)>91e>yP$(@$#op?-?YsdpDQ1nDIbs%&1|6ZUe;~eYnGAb zE|bNchFcIaXGZ{f{D0ogpN0t*r`x|^H{Q2JrFRNa-k9P18z30!WuuE|LI;)kU)m&F;sRD>w@AHi8okJ_yK(jOMKtnK2E!io29fAVoE zn^jWX_b4^8212#aJal3@$k6@Q6yHTzqKzR`mrq49{KDRQ$F;+J3~&TE0{tGFN*we+ z_q%@rMbr)c@5XT7(NPAXPwS3#UnKLUYv>^RcADrb+bFMTc9>u1e;ho<)DTLRu*D5o zl*PyY_FwU-<(7P_FZY}Bm5Xieuk!Tn+4o>68q~SV7DC5X$BgtlCJXQQi2ug7szlpQ^i9ujg_dQ}~407$72I&sda4D~W~N zkg;1#uNdb>J{>Mdeozt7A!z)1w4m@DN-as@IHqWRU#ZMQexbcD@BA5r`MhnJvk`B>Z#-WX!-W| zQZ)ka(lXTDv?YIzi1IVKvv77(05D1m2cvlD2sJp*F3>%}G;5@|WuYg!xSD0gJ(EIC z_dNoL1zOs`F*Icvd#Zb{z}wCPyYD;&-;0#~7nJYh=+7tC0h&@&sz__t;Uq2SKfZ2& zJZEz;$hNOuSQg$<+^THIcOq1BQxqa~DdXX^ZhB09n=ry7V>+tU zJ(CpWp`CwdaSwP-8%+;j!Gj_eY&zGSMrRjC3>(3OtJjoRQF%&UR!4}vq!`j>Qq3Vc zK&JaenK)fEJvAkKOcY3=b0Bfj9nNSwc;&@I;#5;RstBsF9FlXKacqK3R((s*#to@o zJLGd=#M3CET1Iko>zc1sS+f7@FpMsmU-z{KA^zY{m($EdCi6dPWHUq{Uw=ysYk_+N z;GeR8F{ms}pLSS)x!p8AI*C=Wjj^ROvqCXiZI=CP(MQTSd<|#etQT>|GrCrjKQ!D@ zx8xW`Qa-lV+3|yQ!l&e>2g14}Nqf^IneeB~RLGyj%p()nHa-<>zO++xETLH|ys>M{Mk@ zx80cz8xZ*p<>n>b7XaOkuU&8@$pa|F9na-JlScQA6w601TZs{Ut4UH6tZ)UXN?D+_ zD-Qb{3l<}@eF(OBH%3ZxoYzTYBxz2|{2mL~RKAP~|5@h`4)zHVx zUNSK#+aQEK^SDG`y+=e6$_3?47Ur=3HVlN=3wL^=f%>VP)|pki&z#)ddP?n01n_ zS~kYe!epN-7qqX3}FtXlLy zW=F1y*$RrY@}c25zY5dE^HNe;9}tCygfdqQdy@q7HeVipfE%D<%3q(DIA~;*$gqM{ z<{q0h84otCI5jymr)A;l@j=c=%e%k>EUaHHtdzV6%nqQol8)g^E@~QqS+^Xpky^Ym z&tuDN$?-dhwuaqO-FhvkvjDr?s!$$DoXVinTnq2p;<{Ib+8qyyg1%hxC;zVlCrJu{s1z4;7jt1gtvZ%X0s#w zI;d-ek@U58Rz_NC(jG=ISshgpI4mnD%*iQ_6>p3BZ9q>wf|n#(Gk1$wv_P@H7Lmk3 zH}y6Y?)UHIWEtAme-_S7(L!fzZ)8`f$PXY6Av&6aS?*SRa( z;9}1G)pkk!zC~SXh5*{HiwUE@Ba;q)`&XOcomV~Ryc$5~1^JvpaoIu{h?-6Zk|#B- z#73SUbv}IL8Ki1a!3R)ggY1Pn%^Vkb@*@H42hKARt9%RN530-xCG*dH$83!I^VWKK z0=dwXi4)d;3rYZBCHvAfTA7KQ59!&rj>()L8K$EAX*tPl%-Lizv%HcQMgemp*{185 z?jkhs49C*GPQywc(x2QwIXAZVq=+~Ga|!ZB!btH7fqL@5+F*Z?;R_#xGB;xNRK=Zz znzN?9@?2Ppob>WBHiH{&V5mRa$W}7S zn)i9Oz}>hdeOYi~_5zWSn=InM2U40jWjuw#oGAAOJD2G!-ERZ|O+oi7; z@I{?$%(N6NXBJ2?+eei{T@8R@%gU)vspVBWo!r>zt?6(A$V`4f!C3PRnr?!q0loWn zu1b)O4HTK}n}3N7)j*8ge+!Vq0RyjF#HG+kcC;I zZYuN}eCq!@zbL;Z<8-P@0+rRpnn~KOs&=`Uwy7oEK>>^N16178>LVSi1D7YOrc=$;y&km90n-!Phh)ee<46VnyBkJ-gpSv?n4xmb<#M#`!*G@Yvf z9shkN*wD_Ak&~yPWsR%3NPqIzaCU)&L{LwkB$&{@u!j?!Ah9x0>WF(t9|pc~ zE3v_Qg$uTU`%t0sOrIe5j)227M>}zNc3zH6rw0gOgXttZ&T@^3!%u^7(O&irb(`0Y zO)NO}^DR)mXeZ^)e}x14!DDL>KSLi34%;mh?NsK2Tu%P4Up>$;$t)m#uH27maFhlkO|r=k zaa(ZamsBfJ;iu4#DT^)L>7TogbeeFg8BNMKCJrXA^1-rnlN*DDrkrlX zd^Pr`Q{@2m6Ts0LK^xOn86&fPRbM*$BBAOqe4?Y_qrRdiTN7BWj=bIlehQuu7Lk%=m-kPtfZo zvN3X{HKnqUij81lXHGBNezvEfp&c50ZH}MAn5+{d1LxoW7?g8ZpF9=BwAcHxKmfe7 zA&_w+MaNGD3qBcOAdG5XE`u9&y>tS>kO!zho7icx9BrO8$o4K91wJ3Z>xtC=1SPCK zk7!OO%QgRkL(&e+N;9;|-G~mO1U=p>&40X$>z{5C;Rn~(y*JR(kO_?9ipN{w_V{Goxn@S)kKNaLznq6?X8Blu zt2N_wPRTCUrne>AU5R1Q;%8qk^q9?6#VUHx^4bcf=Wl*@xS0Tb6C_#8JwASY81mg= zCs#K8Jim9hk-28{sQZ!jGHA)5d=~lGN^(Uydf-pJiUV9FBA^oKY8YA{Rh*oh4x%C2 ziMue-?i0K5h|BgjUf5pFjrndTrmhSbPkfgTyLE)|T#i2`Kb$JIM$Vj!a8;GKMTCd7 zMsPWDFT~B|`|P`@>rh53w4m$Bp$;92zMqVH#0Yw`&(%t&zbDII8OrhY&5qt99tn~6 zyJdwnVr_n&gs0ygFlEo+6CeHBxg;LLS5d8H&pJ71vOYmH()Bu7l&;X#N9y$lgl(v5-MKM;MW|g= z(i30W!e>5SB!7x%G)3Km0y1U#vC3i2K_I1Nre~?4;hS(bVd0~peco5UiIA6OR5LkJh zCR;w^j$Iuj_irtat~s}b32xrJ5uk#(#-*gT?X94L0N7Ts!p!Xr=BeSx7`d(oGm!4x z?HO)o2LlvK&6sDLM~d9IPFAd6MBl+jw2D0&pzB{e>As#kAShL9UmE85kKAtm&H!Rma z)!NPXIJP-yy>nrK_Pm~;!)0e7yxMyiXp%tfAd`#`pXYejWdPE>=A4JZHRY!H;VMBn z?O*M8QwP$G3d$yWA)9q>z+H~yMN+a=*mAEsb8qIwrbj-WdPKpz57f3w zrh{lju%z8ZQ4MnppCVq74Mf#5z+7MZ7!a;j7`QAahl9Qc*BR~9fdr&0Icu-d&5AVd z3UX1r0#Zur-KDPhL_d$EjtE2jtH$=x)6%-%21vByn-39Tk5Z#ApO-V5`r&jvqa62m zjlWm^UPA)&@VO}=$P&H!U|(pwT(daUz8}@;*7K=fGnshL4pXLnfSJ}KAvm}*i)LIa z%PzI%=RSt?kd|3x&xyuo&>E?WeD4*;sv`H7C(RyrEXhkg(UED)&$!jb%J;oAKMO0Y zbd9+;yO{R%T#@z53T_)fQtROXkoG2H!yT?tX=lk71{QJM>+ltnx?n)C2N4|1Wk!<^+} zu^8tWtWMehUlD z?y%f(mEoI5C>Yo}EbP5T^Z9S-Z~WEZfN^(h2pHv^yZxaY6n8q3eO-8uEVG1EMxW2{Zfv)lcw!kaki08^N zG5q`4+v9xPqiRz>lVqFKP{V@J6HX%smb*p(9-wyk1i-ljzx4*Xa&%0dt<}M~cKq1z zR)9QS0WQqdw7Tt*{qI&rxGBr1uYBjLlAtB(Ra88-4>Hve~r zL8{{h3s`K)x3tQ-|NAzgDJkb>W6L#P-ezP?5%6OoL!}7^9HckW(_O)D{!1 z>Fff22+BJ(NGhlA{u5Xf9Uy^lCew`9VO8V!7Psm+sT`-X*kd3G0B$rJ(}Qm zCBpBzuAdo9a;BMZJ_lQMIAimkQaCfRs6aDL_>^!Z)%k{nb4)ou-*W3*J5;3iI34<* zX0R3L(Yo8}|5M(1zf=9k4_|gErOXsLiLx@XMRcrWM9R)4GkfF^LPlhT4k<@w5sq=J zlD&7x$~^WgyZS!gpZostzV3hEdtExNE9ac+b>8pSd_JF#$AOh-HW_xkFGP5x<9$kO zv<-)DU8P_8eWa@TiPPZeq$nC~Dd^|;S3-M?7N$~3F626NO0QZL3-{-&So#@g12uW@WqvkBF1^?l7a-3~f+~}VenRDY($GPrvp^Dl_$9x)ZToA*! zx3y%ao3j+ncgm*RlhjYp{r+qJXz^O7Ug;$?nzB`wo5}Ugy-MU`o`6_V5tMNd_EseE zrO3|fDgJsVT~82PH2TGGTK{U(V&r+};d#CD9a7=B@l86FX%{z9DI0_DcBmI3h zT{5|(kXz7$eB60gNy1T3$rH&mDC^$!oiG!X5dE+VegChNhr{{wxB8}@EdLccD^<^M z(Th0m+~vu$J1{zioF!V9lowZa zV>C1$H(4)Uq*X-I67#p4g#_B|k@tlCr@4Z)FAr0?NYYL;tyGoob!ycjszFvQbadN- zyZ9q%wcW$SVMr$k&2;E!Si;y_k!=WiH6wG8-j+uXeNbl?IB6sqOdi&`qKyuPtyROx z?EX3{Vkb98og&6UC;hNP-4P|9AEY=-T`LwKlg(%Yd&`zru+k?B`y36o1ido-?A4=& z4@t)9)}dUP`?spceAmd~_OfWhn9+f7I5aM-2uCwqnqA$EX{xA7PROC`MfG7vou>X_ z*63F%$FU6(f1ay#sA{TD<*9WyTbHuA@_2i?(zKR+-C*QG-CGYRNLKp4y;%~LKUHov zxs+{US5`(IV|w@GvQOBcslUNx#&KRf^bX;PtJK2|K4fw=gXn-zEAU5)KHDi`Rx;9F z>y3iGR5cFS>F44N)N?e@8S2r^O*KQQ=5RIZA^L6pn!C4iFv(b@c<8p3x^enp>QBeZ zqf@N&ZNNI~@lys6To~Ds#*vE!k;w-9rXr58QoVnp6yMW3QbqM{kd&Ayo+BEia^Z0P z$XtUt%?Wv9s01;eAh=nJ*f-txT%8yt)&$)wJ40OXy%k&G?iv{8oF><}B8(1AgSV7{ z2}?K03qIsRS*v^w_1=rLd6n=J;5#}Uq~aQxm*%_Qw!V$XlQpa-Nlp2I&SDIC z(Qt#8!~bw`h9wSAOuZ(vX* zLwB9lsLQ!fP-A{fEdS-wj|17=R`-LHq#xu4EPQ80B5wM#?e!51esKhmzPnI|cznKv z&~yq|^rYSJ5T?1Fta)2Ugx_%$v!=7MW}dZ14`fW=iY(jylHb^W5D=OIdWRa+BGC}j z>-4kJzO5CXsH{9R*>f@1W^I1@Ba|QoHR1xKG8=^WmiD`%z$NBDA0aCDVTgC6OM3n16N#L>yrrUlpUNlNQYGD@^}dWd5trJp z&t~T84BsmbGyS|C!d?<@nEY->5Oq23<)tqMg0FSBVuX-Z!kL~7ai@T9rZb%TZA)7s zuRh+EZg6lA!M9>DwcBay8xv30H$nS>=#+|q69Z;xd`9B`&ByuFR#&HjTx8mnfOuv= z_B0LPj|{Ln@Soa7Mu;kDY{olA_TVbQe;j(SLD`(Ru?I^dZhOR}n5upO)0y5#>ZXmo zdS^kVP3{VvQ2ZeE=6HYKe#h9NbrNu6d`gefy-|l_?)~aFL`64&5ZfL83)+kbtM=EM zAQn+BOH53>r>EBfS_u|WJ9-34+8MSm@|jB{xgjndpOn;$I5ZHaiR`5FTw7wQYuhz^ zS=sb&-+e^r1a7T5c&Uqoued`E$Xt9j>ZnG5t|RG|J>(Og@V>08tLrWE)<2zCW?Z#j zFUO9<1>fTm$?f_#%CluC5?J`3z{iR}4f&bvlVz3g4)vfOZ#_e%e z)HZx;Vw(ZPIyOvjQ`;&ua9fuM6~u)vp> zyVX%JJ%N843%Hm#V4Q%-s{l97#{RcR;W4LOvzXYlw9XGnCT(E5(QJyo*bW?MQ{M+Q zDtC?Sw-PURqBYq3cdYX4mRma8R!U>W?ViZ{k`)fvXsvtEE@04>)GU-XSz<24P8t^} z53G3XZI~jCAv!K^kc5D#?3>g2AB+1&Mp5-srr@`VV!L^sTJxCmXc=O!A^mLC&bYL^ zOaL0|Djy&DH=VCkSXs<}Vix}||6bvqm5;g7AXFjXh*7NK(IQ=MGN3Av<^m{BLL-pXN=k0RLmxQ~`6K3%7&g$z?ky zC+p5PqBq$d9rPvH+S>knV_#qf4O;=z+|Z+dG^}%Nim9LqfW1gBLBKWrV$0)T+?u6% zv`6|NUsU*t2oQ^@8r+C)Ww_Ly2~<)j5alSx?EY;Mua#F*qd~wn-iHO2AO(^++NgIJ zuM{orreHEc{B>Ur1`8_y>y247;)mrg&4cTqk+&Gs_aWN@Li#A9xxCU%6T_d$6Pjqs zZq?(ZW7{Fyt?jMC$UujnlQJF%Ee)B?2DTW4Yy}!M##FFnpP1f_f81a3`@5m4x_ToN z`|14w(a#+4kuz~>0#l%`nTrzXGHpw^#>x4d=^kKbn}~8~Ku6OB^j0n~k+}fx`pbJA zxM9$L-GvT?aBsjG9)W^vRp`8JsR3az3rkHIjDT>>ezh=>ws)s@UmCzp=s^sf6&(FFUhAin@f z-hzpV_JZxgcv`*7xd=e_ zEgO17p9xzcd~TV;$Txs?ZJnIvlfE2XApxD%{<|7wH#d>xp+X`kg;)nRsHT*9hm8C= zWWS^XePpwe>?ecayW_IXdfX4kk;aqmByvUAh)?Ooxz(rpjUGgvqwovh`D4)r2==sL zIn<}Q3%kwVea&yEWNp1ZSW4yrjAn`7zH9APV&N0eq@DWVvg<}jHTt(0xw-$Ry2?*< zCPHaOW8vaf>Vse!ktO}Ub{@??>-VG65*s^FV~nHBm+cP_;Cow zlF^?C(Zm0``PO$|-AI6&0_RFgaJK*2Wcc#&62nzjdOl`)_rxb=McC^`ZWK^N4MLu? zB9M-Z4m4vv0y+jrwS4m191tf(l~*2SeywHrCS9taH~YfqHA$l*t7L#Lhj@S|M{a9a z?Zg9gG^i?CF6}MM{FeDO5Q+El6mq&NKkMm@(Vv_*^HD1Bz@OV2 z%NCHe9KAxv0u`pQ^2MJ0Vr;%kiahp9$yze!iSoO=e>1l*LlmCNmA7Kqn)H@iok!am zZPL1I1Z3H>w|fF&(3VhQr%2g55y8Xed!Q)hFjAKsRDFBr#B+F=Sf&np4^`@mmuKP? zKFpHa5vISD5cX0fhaC>6;##!8Kf_|l|H)D2?=7Sf5{nhdFtlY`zWG zKVlkY#BXU>oM(_75`1vYoVMyp1DZ$Gk=N|+N<879m_|jTZ}psFD4gG0&W!4qwBFYI z($MrtxmKV@(A1(TjDf$Ey!4Kq`Tb}dw%3tW)$2T8^~Qy+bZNt(!|;^}5QK$`5jk=Y`MT_Ry8JDWlhi{%8vp0;_8=BW`XBIM!F2U-= zzp>4qP``9$7LJs&I!tM|t$p)GK7^~VLr2e0@zFh{S#w0m``w9Cs8?OyiB@cMN?F5z zOib26)!J)liVWAHwef>AHEvA7^YdFMTtA^aw*`%PvJ~EbV~P80Bl0d$lkBD=TZ7eG zJJLW8iSTe^qwoorO(Y(DpPLSzr+*{L&sYD|>9|n+Xj8&-YaSk+O)Anhm6CGNI3;chh-H@b?n0-sKXa(OnaLVm;pyjO@=w&UNuCt) zi@~RY!w-Yg`EPj`--HwiJ;SWarleakX4*YfBW%P997~Ay;C)ctC3`W)nNL>ipUsvv zp5aaeRY{FIIPGf9c+q;~3X=}=b8tax#z#X(&u3;81im?-gegpd*r6lo)#acaS8bhi z4TWG6md|O(Nk5KPr-}dFmc^E>es^s+MZpl+ zm!Q@*9=e6WTwYwvMFLiCnrXSqM`&{(7geID;jKpSFU2SKO>fD6mbNrAR7PP(Z{lrz zC9*~YnU~irAzDumV6QWMk@rLDJoZg%n~KfEN=mBaGN)^aaEE{{8p)oiL`iegYiD&M|TwE?81R}Td>7Jl1_RBag8QE|Q<}zjm zYVtkrnFkXFI~-WA1bA+1YuhFMD}>2>@ljH-GI!46l797kB?{$C&FGzDkjdxCw+HY6 zcS#&uq9GU3uPGb&Yk)pJpCNV%j(%rnU@l)SU;Fuo!CtT2O1iW2Q)U)de0)k^eeXZ5 zhcj-UOZqztG{n>1*NbN`y6FqGxOwO#^eDzw#gpg5I*BhU)zLRp7Ce(_dY={v1@>Ea z^-R;oNwYthMM?oZsKMRzMz7ch#)? zdCMfzK@+F@6h1Vdl#29N-tu`{2fLWQ5p*wSKmh} zJQUx-ym$U*`v}OGK+|WCU)D&M3{L5fwpdy46Me!6+0R&SkiHJzt4x|>cm7!)GjwmL z=lSR=iuZCFr{?rMsu15VX+cze3Y6Edrp!*e zk(SaQgY$L|R60Z>)HtdSv5I=>Utuj@pT!L>U(5fPRZ@lJ)I_B$KIW`EM@i2^N;$BX zdf&Y&XTkH{vR6*yUG_MKV~~z?O_PPkz6*gShkJhhOV~G$;Uo^xrp8ev=N>ls-m&i?qb&{;`%gti%de`68t-q5s z%{H41IGncrF?^|&k+YNSQs)$R{}gxg;^kh(CAW1b3_wmX<#_W_gVwv6bI)hE+>SC` z?((qRE`G2DE;ZnSV*QVklP0{@{S0@TcgP8*#5Zujgwl>{t*V(^PgS1~qJ7$mL`|0& zP8bG>G1uWj!oOd7OdG(t@?nH5bA(LdW7yx{_RN%@RxjQVE${pBJ#^fOn_DC}K1+SR z;`j_4o3kc6YXI4T`Xh9-0bD^%ABHPW+aV}{?UcS_>)`ahYBUU9BPtm_kicoAL3~%8 zE@%0k-xi0N#KGfD%a?wWZ1|M2pA8Z68T=|4qR*dB4xtTS!4JKm#2$h6+^-#|(t=h4 zUHbU3W3!+FoKq}6WV=icwBAk8>Uf^fTVWKuZNr1w1S<|ePF+0vTMUk z=^yZHr%OXhstU5#4MZByC2nw4wsxpkK)C=+^*~;$)#W&>c>dM_jUiMipl%m@D1F)X zM#^sKJnRN>md+G&x}vb0Ld=um8Ay8RPK3GQpXBV31wLt6UdXH|iFA6jH&I1fbt-05 zy?Cg7;m8PTAmD_XA$UD$B?_NR`xSLI4I17+KRzyN$9g_D?^8B_Xh4tN*?HYR)^|tw zp}2p#T=81HdFiyP6hziz3pKJWh7~f*m|?E;^OuuN|M#x&nBSqoTQg`ufdIJop_$Is|-+wDBKV$@9P=3t7a$-n`%71w10R&0idzp zr_|vfFulFMxU~<9$1{q^D;N4MU1;EYKqHpVfE|n&EL&f$U4MyLKPP+=YG^~v&YZY- zG&w~y4fu;Eq4caem0ceWCA*96ui|E}+!PIo!qdma$Eoc2w%pac0!@h;pjV%XP`M8^ zC$V&3!~|OeGS`=WN}K;K21PS)n1mSaQ6LF~-?|E%Dly~k9{UR`JH4wka(?6f&<@(L zi(xm9peMzyr)ek`7OJwHhIrfrS{xpsdS(J$&S?GOKQrBbUoqe=6!E{~y9NF?exJhs d=QICfZwmgM)HwBu2EGP^L{(7(U7%nZ^grXMm#hE) literal 0 HcmV?d00001 diff --git a/aweber/ecommerce-cancellation-webhooks.svg b/aweber/ecommerce-cancellation-webhooks.svg index 9ec0a53..863853c 100644 --- a/aweber/ecommerce-cancellation-webhooks.svg +++ b/aweber/ecommerce-cancellation-webhooks.svg @@ -1,4 +1,4 @@ -InternalStripe Payments (Unauthenticated)Stripe Payments (Unauthenticated)Core APICore APIStripeStripePOST /stripe/webhooks (customer.subscription.updated)Fetch product metadataRemove tags from subscriber or unsubscribe200 OKPayment succeededPayment failedPayment failedPayment FailedUnsubscribedPayment FailedPayment Failed - + - + OpenAPIError - -OpenAPIError + +OpenAPIError CastError - -CastError + +CastError OpenAPIError->CastError - - + + DeserializeError - -DeserializeError + +DeserializeError OpenAPIError->DeserializeError - - + + UnmarshalError - -UnmarshalError + +UnmarshalError OpenAPIError->UnmarshalError - - + + EmptyParameterValue - -EmptyParameterValue + +EmptyParameterValue DeserializeError->EmptyParameterValue - - + + ValidateError - -ValidateError + +ValidateError UnmarshalError->ValidateError - - + + UnmarshallerError - -UnmarshallerError + +UnmarshallerError UnmarshalError->UnmarshallerError - - + + InvalidSchemaValue - -InvalidSchemaValue + +InvalidSchemaValue ValidateError->InvalidSchemaValue - - + + InvalidSchemaFormatValue - -InvalidSchemaFormatValue + +InvalidSchemaFormatValue UnmarshallerError->InvalidSchemaFormatValue - - + + FormatterNotFoundError - -FormatterNotFoundError + +FormatterNotFoundError UnmarshallerError->FormatterNotFoundError - - + +