From ee288cd6dadd55707a6ce7fca8abd50e332fec5d Mon Sep 17 00:00:00 2001 From: raysonkoh Date: Tue, 9 Feb 2021 02:35:49 +0800 Subject: [PATCH 1/9] Add initial modifications - Add logic for detecting circleci - Extract reposlug using circleci environmental variables --- packages/core/src/Site/index.js | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/packages/core/src/Site/index.js b/packages/core/src/Site/index.js index 81fac27d33..461a08032d 100644 --- a/packages/core/src/Site/index.js +++ b/packages/core/src/Site/index.js @@ -1153,38 +1153,36 @@ class Site { let repoSlug; if (process.env.TRAVIS) { - if (options.repo) { - repoSlug = Site.extractRepoSlug(options.repo); - } else { - repoSlug = process.env.TRAVIS_REPO_SLUG; - } + repoSlug = Site.extractRepoSlug(options.repo, process.env.TRAVIS_REPO_SLUG); options.user = { name: 'Deployment Bot', email: 'deploy@travis-ci.org', }; } else if (process.env.APPVEYOR) { - if (options.repo) { - repoSlug = Site.extractRepoSlug(options.repo); - } else { - repoSlug = process.env.APPVEYOR_REPO_NAME; - } + repoSlug = Site.extractRepoSlug(options.repo, process.env.APPVEYOR_REPO_NAME); options.user = { name: 'AppVeyorBot', email: 'deploy@appveyor.com', }; } else if (process.env.GITHUB_ACTIONS) { - if (options.repo) { - repoSlug = Site.extractRepoSlug(options.repo); - } else { - repoSlug = process.env.GITHUB_REPOSITORY; - } + repoSlug = Site.extractRepoSlug(options.repo, process.env.GITHUB_REPOSITORY); options.user = { name: 'github-actions', email: 'github-actions@github.com', }; + } else if (process.env.CIRCLECI) { + repoSlug = Site.extractRepoSlug( + options.repo, + `${process.env.CIRCLE_PROJECT_USERNAME}/${process.env.CIRCLE_PROJECT_REPONAME}`, + ); + + options.user = { + name: 'circleci-bot', + email: 'deploy@circleci.com', + }; } else { throw new Error('-c/--ci should only be run in CI environments.'); } @@ -1199,7 +1197,10 @@ class Site { /** * Extract repo slug from user-specified repo URL so that we can include the access token */ - static extractRepoSlug(repo) { + static extractRepoSlug(repo, ciRepoSlug) { + if (!repo) { + return ciRepoSlug; + } const repoSlugRegex = /github\.com[:/]([\w-]+\/[\w-.]+)\.git$/; const repoSlugMatch = repoSlugRegex.exec(repo); if (!repoSlugMatch) { From 18d503286885c90fc04e81281aab7c2677d14b64 Mon Sep 17 00:00:00 2001 From: raysonkoh Date: Tue, 9 Feb 2021 10:29:19 +0800 Subject: [PATCH 2/9] Update CI tests to include CircleCI --- packages/core/test/unit/Site.test.js | 56 ++++++++++++++++++++-------- 1 file changed, 41 insertions(+), 15 deletions(-) diff --git a/packages/core/test/unit/Site.test.js b/packages/core/test/unit/Site.test.js index 047cf87dd5..e677bd4646 100644 --- a/packages/core/test/unit/Site.test.js +++ b/packages/core/test/unit/Site.test.js @@ -289,6 +289,9 @@ describe('Site deploy with various CI environments', () => { delete process.env.APPVEYOR_REPO_NAME; delete process.env.GITHUB_ACTIONS; delete process.env.GITHUB_REPOSITORY; + delete process.env.CIRCLECI; + delete process.env.CIRCLE_PROJECT_USERNAME; + delete process.env.CIRCLE_PROJECT_REPONAME; }); afterAll(() => { @@ -296,15 +299,24 @@ describe('Site deploy with various CI environments', () => { process.env = { ...OLD_ENV }; }); + /* eslint-disable max-len */ test.each([ - ['TRAVIS', 'TRAVIS_REPO_SLUG', { name: 'Deployment Bot', email: 'deploy@travis-ci.org' }], - ['APPVEYOR', 'APPVEYOR_REPO_NAME', { name: 'AppVeyorBot', email: 'deploy@appveyor.com' }], - ['GITHUB_ACTIONS', 'GITHUB_REPOSITORY', { name: 'github-actions', email: 'github-actions@github.com' }], + ['TRAVIS', { reposlug: 'TRAVIS_REPO_SLUG' }, { name: 'Deployment Bot', email: 'deploy@travis-ci.org' }], + ['APPVEYOR', { reposlug: 'APPVEYOR_REPO_NAME' }, { name: 'AppVeyorBot', email: 'deploy@appveyor.com' }], + ['GITHUB_ACTIONS', { reposlug: 'GITHUB_REPOSITORY' }, { name: 'github-actions', email: 'github-actions@github.com' }], + ['CIRCLECI', { username: 'CIRCLE_PROJECT_USERNAME', reponame: 'CIRCLE_PROJECT_REPONAME' }, { name: 'circleci-bot', email: 'deploy@circleci.com' }], ])('Site deploy -c/--ci deploys with default settings', + /* eslint-enable max-len */ async (ciIdentifier, repoSlugIdentifier, deployBotUser) => { process.env[ciIdentifier] = true; - process.env[repoSlugIdentifier] = 'GENERIC_USER/GENERIC_REPO'; process.env.GITHUB_TOKEN = 'githubToken'; + const genericRepoSlug = 'GENERIC_USER/GENERIC_REPO'; + if (repoSlugIdentifier.reposlug) { + process.env[repoSlugIdentifier.reposlug] = genericRepoSlug; + } else { + process.env[repoSlugIdentifier.username] = 'GENERIC_USER'; + process.env[repoSlugIdentifier.reponame] = 'GENERIC_REPO'; + } const json = { ...PAGE_NJK, @@ -315,20 +327,25 @@ describe('Site deploy with various CI environments', () => { const site = new Site('./', '_site'); await site.deploy(true); expect(ghpages.options.repo) - // eslint-disable-next-line max-len - .toEqual(`https://x-access-token:${process.env.GITHUB_TOKEN}@github.com/${process.env[repoSlugIdentifier]}.git`); + .toEqual(`https://x-access-token:${process.env.GITHUB_TOKEN}@github.com/${genericRepoSlug}.git`); expect(ghpages.options.user).toEqual(deployBotUser); }); test.each([ - ['TRAVIS', 'TRAVIS_REPO_SLUG'], - ['APPVEYOR', 'APPVEYOR_REPO_NAME'], - ['GITHUB_ACTIONS', 'GITHUB_REPOSITORY'], + ['TRAVIS', { reposlug: 'TRAVIS_REPO_SLUG' }], + ['APPVEYOR', { reposlug: 'APPVEYOR_REPO_NAME' }], + ['GITHUB_ACTIONS', { reposlug: 'GITHUB_REPOSITORY' }], + ['CIRCLECI', { username: 'CIRCLE_PROJECT_USERNAME', reponame: 'CIRCLE_PROJECT_REPONAME' }], ])('Site deploy -c/--ci deploys with custom GitHub repo', async (ciIdentifier, repoSlugIdentifier) => { process.env[ciIdentifier] = true; - process.env[repoSlugIdentifier] = 'GENERIC_USER/GENERIC_REPO'; process.env.GITHUB_TOKEN = 'githubToken'; + if (repoSlugIdentifier.reposlug) { + process.env[repoSlugIdentifier.reposlug] = 'GENERIC_USER/GENERIC_REPO'; + } else { + process.env[repoSlugIdentifier.username] = 'GENERIC_USER'; + process.env[repoSlugIdentifier.reponame] = 'GENERIC_REPO'; + } const customRepoConfig = JSON.parse(SITE_JSON_DEFAULT); customRepoConfig.deploy.repo = 'https://github.com/USER/REPO.git'; @@ -345,14 +362,21 @@ describe('Site deploy with various CI environments', () => { }); test.each([ - ['TRAVIS', 'TRAVIS_REPO_SLUG'], - ['APPVEYOR', 'APPVEYOR_REPO_NAME'], - ['GITHUB_ACTIONS', 'GITHUB_REPOSITORY'], + ['TRAVIS', { reposlug: 'TRAVIS_REPO_SLUG' }], + ['APPVEYOR', { reposlug: 'APPVEYOR_REPO_NAME' }], + ['GITHUB_ACTIONS', { reposlug: 'GITHUB_REPOSITORY' }], + ['CIRCLECI', { username: 'CIRCLE_PROJECT_USERNAME', reponame: 'CIRCLE_PROJECT_REPONAME' }], ])('Site deploy -c/--ci deploys to correct repo when .git is in repo name', async (ciIdentifier, repoSlugIdentifier) => { process.env[ciIdentifier] = true; - process.env[repoSlugIdentifier] = 'GENERIC_USER/GENERIC_REPO.github.io'; process.env.GITHUB_TOKEN = 'githubToken'; + const genericRepoSlug = 'GENERIC_USER/GENERIC_REPO.github.io'; + if (repoSlugIdentifier.reposlug) { + process.env[repoSlugIdentifier.reposlug] = 'GENERIC_USER/GENERIC_REPO.github.io'; + } else { + process.env[repoSlugIdentifier.username] = 'GENERIC_USER'; + process.env[repoSlugIdentifier.reponame] = 'GENERIC_REPO.github.io'; + } const json = { ...PAGE_NJK, @@ -364,7 +388,7 @@ describe('Site deploy with various CI environments', () => { await site.deploy(true); expect(ghpages.options.repo) // eslint-disable-next-line max-len - .toEqual(`https://x-access-token:${process.env.GITHUB_TOKEN}@github.com/${process.env[repoSlugIdentifier]}.git`); + .toEqual(`https://x-access-token:${process.env.GITHUB_TOKEN}@github.com/${genericRepoSlug}.git`); }); test('Site deploy -c/--ci should not deploy if not in CI environment', async () => { @@ -386,6 +410,7 @@ describe('Site deploy with various CI environments', () => { ['TRAVIS'], ['APPVEYOR'], ['GITHUB_ACTIONS'], + ['CIRCLECI'], ])('Site deploy -c/--ci should not deploy without authentication token', async (ciIdentifier) => { process.env[ciIdentifier] = true; @@ -405,6 +430,7 @@ describe('Site deploy with various CI environments', () => { ['TRAVIS'], ['APPVEYOR'], ['GITHUB_ACTIONS'], + ['CIRCLECI'], ])('Site deploy -c/--ci should not deploy if custom repository is not on GitHub', async (ciIdentifier) => { process.env[ciIdentifier] = true; process.env.GITHUB_TOKEN = 'githubToken'; From c588fa32fc7df777ca08e20c502c48448b4b3da9 Mon Sep 17 00:00:00 2001 From: raysonkoh Date: Tue, 9 Feb 2021 12:48:26 +0800 Subject: [PATCH 3/9] Skip CI when pushing to gh-pages branch --- packages/core/src/Site/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/Site/index.js b/packages/core/src/Site/index.js index 461a08032d..61dedc6abf 100644 --- a/packages/core/src/Site/index.js +++ b/packages/core/src/Site/index.js @@ -1112,7 +1112,7 @@ class Site { deploy(ciTokenVar) { const defaultDeployConfig = { branch: 'gh-pages', - message: 'Site Update.', + message: 'Site Update. [ci skip]', repo: '', remote: 'origin', }; From 6a06639114b4069f2edbffa828b0a88ada8102c1 Mon Sep 17 00:00:00 2001 From: raysonkoh Date: Tue, 9 Feb 2021 13:37:25 +0800 Subject: [PATCH 4/9] Update userGuide --- docs/images/circleCiGithubToken.png | Bin 0 -> 71711 bytes docs/images/circleCiSetUpProject.png | Bin 0 -> 38524 bytes docs/userGuide/deployingTheSite.md | 56 ++++++++++++++++++++++++--- 3 files changed, 51 insertions(+), 5 deletions(-) create mode 100644 docs/images/circleCiGithubToken.png create mode 100644 docs/images/circleCiSetUpProject.png diff --git a/docs/images/circleCiGithubToken.png b/docs/images/circleCiGithubToken.png new file mode 100644 index 0000000000000000000000000000000000000000..649c95442770810569fe3b424ba2a8e30beb15a5 GIT binary patch literal 71711 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

-4)Lm#8OrzxxOpiFAI07v_brk<#aWIexVSZucm?XzO#Om47$cAzuG<_ zm7|N7%S9+;Z-~SYgIJ}x)mw=S-yG9j^Kh$s30G$_-W3QAYx3NT{)0_usgAp&y+T#p z<11^VbXgr2Bg4yr07;Xn@9~#^P*s|4y*2iuXbTDcA$@#nqMV<}7wdX`JTY=xcGWzC z6~TdCe|US`jlL6TOSd|Kt9D8c^Z;5{w*xQRo{Iky;%@}Z)?SD*FJdKc-P zkyud&!~_17+$I$?*C{&cR*Z{NgnT7-c&a^PAxX$IYn8-bDa60bOX%a;CY;-gEEuhr zs#G8jJgtqgw(Ihf)?ht4Ts8~U1LLnq%K(g{LdJJV`b81uvjST7G^+ZqZ~>{z(rL2? z+NUzJG(~A&d6Er1BKU4xSPC$4ItY{}&}O$l|4qVbvb6C;JyIorECZ$y&b3ox*pe;< zm{F6L3-3wqEq?%5Cmb?!5jsAngK5Dg=*x+hY=ZVBU5wn{IhTK@cVO4>M+E@XLewUA z@ga68glKzeOjY5a$ami#`knSh{Y)xfMR@qMK^y+m|Cby~8!{`V*geLEz1CMzf~~Gk zUaa~_AEL3`*Sx1%VNXx^7^ zY%@jhB*M>HA#ofJ29A>J#|*o_bH#sqyf91nqr|WNpEdjtNV8ysBv+8&x2M|{&>1*) zdfHe3dWh*<{Zh3W1dxYWHilDu4}6gj&dT=vIGOzVfqsFScMH$FC^G8Z0?CNvUeed^ zhaEUNSzR8cZQJdk=7SI6^&xWdLyv z0H6SGKO~;Ld|-gunRF#^dHxz)rtSUz?Pb!#19a4XPY?EbPaGF$vbnD4n$8yV#??$7 z!wk`o$>*+joE7p)fFg&D`{=uX-rldT>zW*7FujI7x>~5u%%N2#33v-?9VES8Na$|Z zJq5|2LBkyl-dtG;q6T6<`Mb|~p8o6!F@{tiK=*6|xeg$@vKe-NusI%63G_wfeW@Fo zUJURctCt7eq$8H#;>Xz3{%0l-V!M29UZ<%bGr$xea2@~&w9m8Nk{C~Z)|&_2MH%9K z?q%j-y2?>`J&2D03U@mg$VNnJK5lk5zN?nN?o9?dd>=307ya+ps7{H7JqDv<|`S6e2066ab>?ZnBh9}Bk2 zlK!24^D&0&W<4+UzAl`46Y;x^{EtCH8rcFH3dwRcK98J4vpR;jl>D5;0wx=WlM|Q? z1wIaAOq$9-Asu2Jzj6tobZ9Ug@0d1H^ zCim!i)Cc&OBrqAHn*V~`X-u%lTx=K)HQ(}b#7@7rtYB%8vA#dRA6^FSYf zOy|^Eh;Mz?^ehnHPSj23?9&^?J}|QqGT=0AJFwPo;~==*b-CJn0w{cvYqWt#csn@! z;4nEEqoDsys`rg+{F|JFR>(!+GiXtV9hht}K7I)@smmpag5O>@;N3JwG7!dZ`uO%(@$(att8Sn5Kh;^zo=o1`<#p)eB zn`*Rp08k_x54Iw^{eYPrUWqnwp5K-+Ev8~`_p<0X*DZbfAckrs#eL^9fXPn9!u`U9 z@&j$NrZPS{J#Jn}G?!PMf?N^6J&dpJ6V3s#45anP##Yt!$@&246{0EGYY{|Z)7sm7 zxsin5iBTkwxpu7@gwU0V&N|M#YXRm6*Z@c>vH|Q_w&-0@Oq_+!z6C6j9}rFQ0(h+% z0i>J}L1S7Z(5XQ&s47UqRK``89o)X z%Csz7P3;MUD*=2%0zywJOh-WHxM=J~%|3iZ6z$A>s|!brs(;h(q=@I|c6shz=4B@_ zz&__eZEalMp$l!18_o@!7nw)xN#BW5-3_a2OZ!ntFKaI^t~a`FySH*v&g!#DZ@&#q zT+W^R5yHH>CI6nwt$D#Htns_#)3WwTckO$+9#|Psh&=XQvq+-#nufg?7u6;yPKo${ z51DrmZ><5e8+#?eBn72|8WzD1x+Vk#=@r4eJ6_ToC2 z<^d6g*putVT~Ed_uoEsi<(&c~3$gl#okToPNwp@Lm*57V5~Z|elvE6h6ZFar5;*^O z!V3Uz%(BhjNKqgQ5MmoZT-3e!Y8O!0Z@jtKyt@m>&wc&t5g$As@DT{vw62*CctwaX z-BXS>uo1|2rPtec3PwITX*UE*!grkjQ;Fu960b)_TqKI{=kLA~Ev*Pp%dBD8ofLzW zMK72-C$IT=!{tu>JY-4&Hc!c4Dcq#zaDASyVR_2O6>gmuPg@s&Mn}B!E~df~F+MPP zq3QH|iHb4Z65lKD7iar4$-numgE6>3ws(QvB`tuGeMS&R0`Y?Xb}^ zwt&#=F~n?yaO$1{Ebv7mBZP*adY-81#-1Jy@)5ziR|5+4QNy=#H02Omd-LaH z(qLprA1^WuzHnjv znz-NP?sKX%5Sy^6+my|iz<2_*GNaYY96r4oW6{UWUAu&#jjZEM|^} zAZHgSE_vRJc7kG{LaVpMA_DDlZ@hHew=3HK*)TmHr94N_;I297A?os~m3gfB{@xOA zKTm_Vjm2nO@d^fan))|X0z7;^CWbZZi@Oi|AG^->7-@X-sYRYKz8~%OmziJzlsOF+Y-V8#fgN&rAO? zil|~tu2TyQ&62qsNj$Fz=_{}YIMHtC;S24)e;xokWUdyn1ph04`3tsya`vW+a0>g% z*ZdAy*7d}^w+tJQid=q9&_Khss2All#8pn1Dsflh_Hb6v$Wb35g08|A)D}fgjeZO@ ztq~}Mh@WU?wS8R8C@BL`17ZH{OKhx(Hy*3|ZH?>AYhv=6@_fS78eVbKFoA_JeZq`| z#DVZ)Q`vl>($weSxF&!hlD529&n*>NlrCV!Qww&s0tuPaCD<19Y?~X(AyVix@RVVN zhPotIdRAp6E{_gCk}Lpn(r&82ejHzE`drE~jlSVFv@(yFv3H4J`sridO2D8p5{b`% zM5s>q>4!YJ5+MUgGgSLWKQe~dlNVJ|LSQBh3PUy@2gVLd)KM)>N(>|qcbM3PmYoZt zy;fZNc8%(J^|^;1RfKT(xl-YIn;!|0&c8JHSR3^Pt!*iLHwf~1p_<*P_jR}9nS1bU z_U=Vg-T9mGxb2l_&|T246ev5<{8jvOX#?Yq6UzV+-f$-cQeaXU+5vH5=OPeb5!y0+y zbo669SemSv&~99Y)yv@(mZ!)}umC$Ah;!-fB}W+|f)UC#kqi|+`vUEhBdfyARX~xd ze)N6Kra+5FDdmfR|Ni}8X=KYIsgI8cU5KgI7B_Z1sBq^poL{Bqm9TU!m|bQ42&auy z;GwdXtIJ&LN1O$cXa?N!1+y*1hej;ozbqQ4o@!F<0id4s_z~hJo$azGUZ9bX`;oEO z@`1~@-VOlr^6DtNpD)LaI5N*k+lDgZHwprb%6S@BGlNn@ZtRH&zMQX-am&kB2!twD zxh(iyqVF>5Bh$8wC0A^FFa77|WxOvGXi!*ZBiEP}H3#Y=V{h?`h%&d48MJUUxG9A{ zuMNpoECL8m>iTJ0J66}PZ#AamNA!dEjVHnSp;|Q}r2z{t1C&fn>=WjrWoB5T{IE+Y zJHzq;EH(kDe94v0%`{5@mfmZxpxKx*9UC@P>(Sq+*k_Q4wCSo+9B9(tTL1M>I3mFz zZ}yjbb_CPX$FP1CZC4{R@1xG1>h;e&Ky(=WC1sT#W)53U82mspM{xer{1`=Xy^rQl zEc2Y?Ma2eigMd!bMLiqQ2Eh zW!F;{Xo!~hUeg#9h+l4Wd1rbRwBq|}9TgP|m3EIRuH5I1o13~YS=*W;Kb|*B?xx1hEo!ZBW^SRR-@+fJ9LpG^p_zwZP7e2O&7C;#&{Y>+TUM0Ln0Ge^Y z2Wh{AUUZeZTpQl=M308vs^sqbv{-66+E2jx2Mw&tf3d|32 zts6$Z&GOW=g{%qz(}qOMURpO;*5J^6N`KyvfWYUE(3--|qir0G(wjHi6k-QeiYf7o zgZo_A;WtIjI)uR>bn)WH-}hxY70&k5m1ILdd!o#|N~*8T`|Is}bcNPmO6NP>$5n2R zs74AH3kN9AwUw%tW#0|8B(%yHS1GNwTwKOnHujzs9+Vsq3i*5MHudtmM;gyXC%c~Z z+Uu9_Sr>-pmsBuL=*(6bNW(X;JxOTQMyJ3c@uQv-`1UeplX18DLL*(Xd z>we3x*O1`)=ZA6JzOwzU+I%-bNQ;4R=qQ#iawvB&KiIyomp4soZ((}Zj>YySv;9uY|w_ZD;Y)d9GC1hpet#Td5DQj1W=aDK!M)$av+)@ zH@F)tZa4FR&zGBwYNHTwkU(XJa#`aXZ^u6}J+_^RUk~i}GPU;I^lu|s++I}HWzDP} zsPdEaT|ThxaIAlt))*53cTQPl+ipu%p z@bQ@OwTM+PyO=VfRI(x;^Bi15iy<+s6#fdt;yXyfYTBeqfDMPm?f6j%6O3I(gw9?$lo%>F=CInSEpJUox(xBU8V+ zzTw&MXT64r1qcUm6Dk`2a#FkwzatKVV~lls-GjL}NtrE;OpdMJ6!-S@VPQ%+n0Ls* zu_-Z7#!P-HtQWMO!~Q@36)`eClgwtWY}A_}byMb&=Qy;eU&K}B-GSRz^Q?rJE>-QH zL~VJFRD^B1*@G^o#GxXX-4Fw=5Os>gP(w^!6ftiVMafSyx`N~QVYF7eMx{ySy7npo z>!ulCnNj-5WQQ<~G80vXkxv@4jH>CQB2Tm#!$O&2zRI@O_i_cv-5D&VbBSnAV(57r z-1YF`IB+4MXp{F!wVx`O83?Bj<#%BlJLMy^EK;)-BICMcfom^xXSgs+;E5Xl@LikWN_F^0&o%mwZb#d3VsG$Ax7 z?$n8Oj@|8q)fH>4!z2X zSCe_}ZZL*&XhgO0tq6*BQXsRbxui0cwKu@t^zFxoP^VhebQ~^$qVtvwN&v95yxF7k z8>2=V3^GAY|5EpC*~{9QXA#SvSvZ6R`bs7;(V& zr+G-$P|Hc0oS*AO*aRds3N>BAr{)tPusW!f@pgj09|0Y*m(;gPGL)?a76MO|61cs3 z4_W=0(C5|s_j7xlMcRV7Tt9DkL=_gZNcRed#v_rr9x@rDsVXPjKfK1XEDVKqe?p;S zPgyVar$6g+XB(Xig5907J!`)$dzp15$)>v0j+PT!EOdXc(Y4*YK1Qn_d=IgNU~4~UnynfraU3V3xL0H10`CqbnlJ)+??;$ zMh|QXnFI7K0tuW%3)lB)^zrpPI6(Fu70KX^mF|%&n+V7@iT2HAeMQ zHkh>e=D1XWfpFusSg-8~wMb2t(>ok^S6L>sNClEUP@~0`wK=T<^=XEneMp9H7r00G zq0JcBsF=B$PlxFRGr2A^`Fvh%?6QBqFEGcv6DiD*^imoH*KR&d(i>EmqQ3Z;4DRZw zbYiFHmCfHX;v@M8StG_Yzh`q6b|FGL5PI$&aB;x|(^qT>A*R@te#miwn>igRLa3(G za2BfaWDrRMWF$G04*s!7+5iqLBhN85ITe$QDfivRHlVutbWrqt1+wFQn6o47bG@=KfQp3X4^n+H~7 z=UGEn-?wr+a`o;k)v8*wI3vs>M;6%Yme+A;8~u^r;B=R_dHBgCINvG7C2LMy7g$%3 zX>{N2#H`*Dzr=&Gn$WwU$yYq~Ao`}n_A?+Ql4nIBC;K_Q-8+ZBosz5Z_(1<3Xl9G( zGf1}TbHesJUOYm*=XYNKp%c+El#(o%;`9~i*EJuONB&gHvM1=X@6j}=be_aGQVqx@ zmEB8yC40M|4nYUj0-03z0!&af` z?MsiAi3&ZLzdtFVrbWtsBydNsL3TQl>wf9IPV>w?^_VULpF>c_vwC8Oy!crBrE<|o z+!1ppjq)z*$7uvYhSAr&NE;%1WzP&%8Uv;4>+0;hfQO@$@T-OgOdh&NuX{X!Jwjy> zioqSvrdhX5M=FujuWO*nCcXHm4R-xDP1B0(sm15lb&Q>~vjWHk%bExv|Ii$4+*j8R z*OSDk3T`qtJhL1v@d#z^{vjwGf06X8Rx*>`9#`0xb>Jmw7*a!?Ds==&PArpj!fkJg zK)=0f)56RCc#(L6Pqvm05d))b?oa{OUkFF*Ic|{43Fx!t%2mFht4Lg26KH)u|3c_; zpQY8N=ZDVDrrmPGQ&>B*`hFA8(M6YiEda|+ZPU({N`egDH`K75AZECSP$AHb0onA3 z-kw3;5ye8$`CPSrUu9X#$jfkmd)^OY7`Eb$B%njPp6^`R>pmBI@?s;Grr#9@s3j|p zZde8lEatVgE!V+dQA)|Jp0T|CbLrVZhmn?;o#_Zq?2IoR12_C;%D1g(DsGS$M@x0= z9g>f-bo#ol!9GFXm1Ern$9Ny}0hM|pf;I}3WWo4UQObcWH?i!y$fZOM{N3OS!HMOA zm`nn#o(Eqmf0U|ug&uecAM?%iGkwBTPq9u#fAe3*U=l)PIdnZ=| zT)_#Y_Jh%oFC}ypI3%mGN_zPF+(jok!0kDtPdENCQ^!~BSyvD>MVm;QJVp;oe4sFU zTXrguX}4@()A9ZL#?L>ZbtW^%I7$P*rfoW+PQ+bwgAc2lB}~S;qd!;k)lqj*=dTK8 zOSOoeJbav~f9?J=7|F7Qi*l7BpHXAEKJzBA#G`~I_4y~FjomJ;sMQ?fIoEG1Ef;m_ zo>uHP1r3FMHilQ#i6T!c)BjlA3uw2^$7QzTG2|adWDSJQ30rX5hpz5!{4pI_w?7yC zBY)F11V$7rEN|Qy5sqv@q2U5ByWGH0X#yc8cD~W8-0H_2a!is`)h}UzNa^LOW8NT% zBae8X{F%lx`jt1X!S-4@S-bgLSp`3h4Fn^PdUrSNe{ZP2(xGHh*0E08{ulR$HPN?N z9ezU36p?$9)EvWFKkZTDX>gVuC=6l{cn25#@$R= zSE=7?;60Ux3mRG;r0;&T+==Q>qM6UiP^ zI=2DaUM6{gk>_S1U4Lt&ACW`1FK<1GjS#92J__4Da&iC1n)RO+5@~bjYhEjDUYBcZ z|J!*HN60<_9GapH1t3rHjA&`ckoj?nXB6_cU;mxNK%G6}wfP0&zdMHf*%1EgQvTmL zu40bu9^_jeZ=Cq1Rf_%Rk)^vss>;6)5^z`FV*rqmW6J$6)(>}lfZ(3`2T&xouEE_+ zaJ=_X=--CJU4&2yU=9&VL9lM{*Yoq4eP#pP`~pGiyRy1~h<-D6%50EGY#?4=v4DfoG`-bDczV!2#(%Zb#vXtGfshj+E)xoH zvVALufC3ZF%T?2m=Gv}+w&e%Y{c~}EcSVKL&^BP`i2a9+C;&B_;gzbu4N_#HoEF9n z^4)R+O&-NOWJ{?EY&%*d7#lGmGjg~cfI^vPEdbv^$%ojXq7bjZf(R%b3q8<@k$ji~ zR1&;e5$TUgkmxI9uPujH0i{maHo($H7d`#{?k0QlxfG!Nc!tlFk(u#c=nE6k{Ks2y z!(hsqT>II~oBVrbB@^3#x_{u9vIadato!Re)ZcRz)SaY43U&!)c2WFg>toUj{8CgH z&xYzJIAm-OF+_$))t@Y>|C$2IK2@JoPfknF^s zez$K5LVi8y_yG}oTR|F;1VBlV2_R2=_u6Q6c@1CWrUsCKXv$s?N)bZ1R)r25{;%ti zB6=7hL?qaNsLLNZqQIYQ2K3zTJxo8H^X9{i+aq)ZgJ{H(@9dZFTbzDS(bJdqZ~_HoQ(NgxiyB znS8xQ!|(P)*bFM2_Fmd0Q;n7X67yjf^9+xsF|s3YN&odio{jC-PksVF99k~2#pTFG zHK_ObHdl%bUhgxp-#8!zq6<+VZ6@SgdOrZZL6C`C_Z1A7b1Nix5Fz6w$0}QX<$Ab? ztj(pir~CCY|0I2bJUp{7{0q4I*p`~032DENqS2tR_uS_N$v17!0tyi z@?GHg6}ytj_LJT+W$0Dr*xya2}lfqRdl_0p(|z*$n8itlP3RiP=yn4J&U3PtB4X!E%I z{P5|)n{ht;TmsN65kovx*4YK_f|2~4u@PC7bvir2Y@Z^c^E>g^$B*H z9oKL5;_t-_gfJpNrE zrFWxoOF_=eF*6SU3v8R%1D2!YP-4(~(X9*rZUz%}0!`+eYk}sW@YJg%N~q#Tl)eE- z8e=~LeAPGEvG+)Zx}W$44nbbDOF_Q2RQ7nd$WPe@{(iIs87R8~d#`dWgSOwV50(H2 zvYKLufy~X?flmFXd%?j48HPVe^x4m%^Q(MTp{fSffaT`X#$9s8$Dt@tKbSYE)%zP{ zN^_)a`?&+!6Qk`ueF)_Z9BVZdn8oB~GbJTtcJYLcpb(OBu`m?ixBYCDn}8#x^<{x{ zn_>|0VHW;CNc0}rbDS~|G-Nvsvo*->k-eet<8SLO1IrTDLu|XR6&Ta6&zSf-=KZ7n zozTLIwRgZl0fvTCz_Y0pc#C}SVrseu_EC?aQ&DnZP9N1gHLiZYs=tD->yVb)+li^> zX-o6JB9d1T=q(|B9`umePRm<JWHA|i+esQR&@@Zn9BfK5YfgV0GXak zeW$JUXrlO%W-^$+Z(82vkd|S!dA%zWwvOX4}$Ej9aMv%tsy-SvguG$?Ey1p ziGDN)sK&K(pR!{K+<$v0;Q1(e+*9Ju^Hp5Yqw+e7ng-i{469GR)ds+l`pCCiPn$uk zz#R$M{BB~9We=M^uoV3A^YUbSGjjs&L#qy%l#K5N`N)zK@@iyJ^kCUQamvvsS>OeA zPYg^Y`e_-^ISi^-npJi)Al7G4zBU3ZQ7GSaohUhC?-icPGa&zOf!-3`F5Hq2NyJ0{ zIq_)_lUSh3FWvnD5X{7=654*HGHqVRC`)4o+J-o(L(j!aF$p!c1Q$&@mQ%2 z-|pNi5dT&zU3^nSZ<91um(ix}S=7h<$8h=Q$f4o&Vd~^`2H00RySzlS?<0u@ouT`bFOS>>+qg(wwCq zGEKVCv3DFv_!4|QQ%RJr~>zl6fgZZ;@0Uq`cU1RipdwRz*#^JOff#kcy>GvsKs5IsR$d36mq2{+SfpSPz@seQBLQb2EpymtiQ)r zALHHYlp27K{cKwS$%K~IYn!G2n2&GZV`_h8OwLbHtY9JXGj|?mr8X#F=7{$wD(Tqv z83kYR*e(dp0FTlULgs@aSr#=O>ik?1gMO6TK!dUK&`*6a5IJ3uU3(9kb3fag zPl<6{>W<85FAT0^C`D7_UBu;d$g9rx!VGM1-kl{>7Z9@|KLb1+>W&YK`-#O22v02l z`*>2dNOXJ&?%y5RAxL(kSvU-@Nllw{8VsM4!=*}byTX_20NBgq>!BXR4#H<44~Wfs zrcAFRN!mnU)Co&!l7UQJjc zTK7IJeD2yL9VdEW7IRu`puEQ7I;;DS2kKKs{JqZ6{PtVac{A0N3YaIyaTCjc1?vO2 zGt%u`*lO2-8NG)?HJ3bkxaJWi7`Z-3Sb~j?4T5nX1BL5IK!FXa;i;N@axT zx3F7Get$q-NogezfE=Wx=@1Fa^fd7LSR-c;@lKp>q}~sM;1cAamJl;PErd_U{EB++Z=^7+9d--6jE=;zyXB9`uJW#cBIdw8i_Po$SS6y7SHJzegM$7u zTVXNRXbw$GcF*aGH|uVID6g96``9LQFD6{CszwZe5yY2CC!h*C~;+35;K2$tba|kS4I?{`PGP$_=O;g;`KO+Nmi+MeFCUF zOZ+}nVo4u*d<7_E9=mdi7JUeOPiJ))OXs~L^=x107&BNRod(lR!XQ$X^vP@fw|3tQ z)l2r<-3}5Xzk|HT*@X*l0@yac0SeH%RoTdH(!1#*5rj=4?GYe-=<4zYxYaaRh}K(! zxrHDGezK@}6JhXjw|Pzo9&2rK*^^Xn9&9p)oIp;Lh(rQt^`KId8#z_xDKK0&ckxmi zlnjUJg<6B!v88_X)r&q05k%j=22-Zd>MC=;Ph<7%eUxrI-)rz997_p!vJ32U?TdJK zYgY+RD}uJyw6wV(2<<|1^9b;~?b)VC~Ke!he=hy0jWpdy*1lK5eF97ZX*u-W4C#lY;P*aE@{qk#@ z619ceuw5AC_)u1pAVz{91_DyA#39IqXZn_|NlG!vOXH|9<62$wZ$T11*tgV3@(BP)Pm~BL^({R9pr^^dC$@}LH(p0V1H9Q;sBReaT&UU z=_bLURiIS3GRtXZAFHHnYYmy3s|BJEcqCnrmd1hAm%A~gHq9W4GNd)L$6YAB6`Yjk zgrl`|{R}n56uoIlEsG7SKvL7e%F!bM`vIxz&=!a~Z#G79BSN_J8^A1fOFf{u0Bf?A zWYk`U#|uQhfY*NpKmXj#{u-fo;67seu;6Ht*-!~PKX;WgO!T{xa8M=)ZK8pG!%c|E z+4yAW>V}CPaVoxoF`8Aw;yVu6ZnG;BFN}ZicdKmH(W|EzEHIk95^f8_gY8!g043Pvo~c1*JaczG|}Ac6zBsMGHta#Pi3J+O*g$Lp!+mRtrx zz7NF>2facCRP70pvy6xs6OHc9?qJ22T2PK-(30fvp02jmF(gv{m$&qvAB}|4`X9uR z6V$Xy_s|MxQ=wCm&0=y!mIxlP_^(7w_`!Yjy1sBt;HC$Qn*!NZf;H8ijP1Ly*07$= zZ~}9Xq@}KU4%J0XfJvL8-rtwu+#QO`Dqh5xz5%G^s+;RecT>hM5{OEOi{vvv`K9$f z(nK8dl|CQ2(}A=9469&CL2p{G} zR2VPO;u@S9E;o_E35j7}0fjo&}3_w59y?MBADaB=pR2l%nLj~3q3(`>L&P7#D}(o7A~H@J_s1_)=q-z zTA3S63!Ed8a+m{F=0 z(m!L1X`|bF#Z=e}{opkjz*k_1Tlw~hF?zmF!sO~~f7Uxay?)^>$h9oXjlY$3hCS`d z=7Oa$zb_WA(pb<{ci`fBUC=plmILp+>pQS7;gJ6;q5S)| z^`B53e$dB4dX(w^-_{_Iefnd(vY}4Gb^o1+{_QXQH3y!-p=k#H(tYsvjO1@i0;cqx zuh}-nTX+A*JNd_73`PS#`_32Zf4YM|e^>V9UAVZ`gfEZ&+dd4wOT`a<79QoluT^Mo zU(JKNKs4zj{BHvQTzMKi_}OPKRek>d!~5rh|J%dsZ`2q5?FH~ZzU(x3A2Xrx8|^n> zj92OR{%x@Q=a?%)YiT1#!u)%Z`1dcqB7xpxx{%iYGJHPx-+3p2O@;YiLl5FRKK!5@ zgUKIK_rDAaVk9su=wzwh{WUBS;Buss&7vt~2I!3cOq~CH0)g?1!vOc!W$v;2+`a#B z5)?KR{kpm%Nw+~)q7t0kF$XnHp3Qt*=>^pi`2bQNRHIuV<8|dk>!B0ja^G-*-nt>yyIcJ`GxnnoE1& z1Pg>{v=Jz#00PTk3ynnD#2;2;1!KcoW&IZyV0YgFa&smrw76_f5C%Abs_G|-gfGLS zOqSEn`MiOn-4bASj3*1n}o|wY@xw`oTOMvxcA%#mA<%IGqdUmPkR}^JB*g z4duCP1B$^aZ@#g)oPk91?Qv6moUPiD?M7RqLZ!xnW5So6J1*{~Z}h~f50@yL>nOjy z-)9{*%KoxkhSN9S*lr?{2D*5sEQStTwt_@{M$#gaYPiqPpKY;g8 z{xn``1%gadQ1(v-hdjSom+DnI1eMGwP!-;kIqoYIUX)T7>l&$dwpN(@oEgs9>#T4M zkke7G+iPbH&@)Zm290Q4aO&8{u@bGBONBGCFIe{eg2T6&IZ~e}>W}d`K{=_ST!cvQ)ovk9C-HZ(W~!c+@LhZ&Jub10XU-mGH$Epd7AYVP)Cbv4bX@8f#V zp3nV97gdm6dZ07IpLUy%$~bvjd(xT3#!^oBo8DH zL{qqQX!OmJ3Dp#+@EA^ehPHZo|lmEct!^IsKfT!WfsV%c*m)-+Sypn*YP}o zAwSgTkT_M*(xkB z9YMr5%NKZ2GV~(zFs|>&_4}Da(@}DfV?vFvLPC?ovD(dkibTos4? zN>+1VMQKyq5$=chRLmpCD^UA)27z{Ea)straJ}*It@uP)xL&ItLWsvL*^CUs>IK6$ zZsTMw&r{k8ecM~qXv;Z5ZuKS@?+}~C*!L7}Tk{!<%Fe2;hqN;~hd7feq!bAavf-A^ zb;YvT!MkkS@5wxypPG9%JvA`M>92Z`I0j}54q}wA0IY1{VR#h+uq8`V72xsZj|@5*62%p^d)O`qIt%-S>_Api$eAC z3#8I69Dym5Hi}7|bm`4bq~=d<9>?{bguSEVmwY#Gh;E^f`ghSeDr>kCEz`z{l(5l zK@`99Ns(RBA$z*gJnjPYdoVj^&u6{YQ7dMtB49w}ii#tTiRP2Jg);^7+jL$Ti|Zf*T@E<_O#4 z9GdYyg{!RQO2jenR;e<&5M^z4_=5#zri-|wfXH=~^=4Ao1NEIa&HER;3|bg?0`V>~ z5AOC9wjZY36CP}30mPwMF@DK0;LGDMIn8QN1!bIYN9&gd#rPnlE6oj<40n2CV z*_>zxMc-7!=<0m%Forkb(rK{ZB9FWhkjS+jk?*5q1f1ds7CVf*ZaLf(>%yl9yS{=W zX|LXF2rlo0+W5Jk?!C2qt|?RJ)j|KB%gdvV(6MNLT2_DtiO_g}@x2Q*LGz@)td5uV zk?RbAZ#+F-Z|yf7Q%Z{Gf>R=&-fpe4<_!jvBoN!U5G1pE3ZDSlrD$~pT6B0Ob7H2MpulCHy zi}%n{qzgLpK8JsY`t~YV3Qe)0x!*pwHL4^os>Iv+g52E7FR-etOtgbZo>G#-S@+TL+Pwd@;;|)E7o>sD znvEC;>@3;u*mXkbpXwqx^@>uz9p=sN;=|K69GRppmp^U1EN`Y5)O68) zw>Iyn#MgAPcA{;zg?-9*@O98* zPR;w91i?*9u27YE^C}foO`TUhaatBH-bHSywOz;4e4VaAQOmhXok-8I zn})P@hg*F^@$L4TquHIrYWe$K*Q@oF-9F{_{)}T@WfP}S_A)^s8_3lBk?!6@Q=LU1 zdl1+C%+F&#=x0sJIboFgjEMJ zIEEyC$_j74)8zC$w_g&m;@r6jq=q&UHbxzwGo3?gmpvJZ5crC}rxzoL! z^U3O|1Ta{ZC><-R=&B4JUie6wt%5?NA5;@9G%k~7O85J*Q(aE0U zK27;70hV$z#sTJe4A{e>h1YB;-G$Uv2 zI{IRJy6?x5LMWm$*DoSXVF{0{;rU7cPBB!tWIy}vG+svloy%?t>RP^&`9bIk88c`* zfHrK+OSI}oyAP~cT^L>Dic)(R4-XTpxj0pZ9EvwIZ@~#8`x*WAaf8S5!^cFI!Mo?0 zo1Ce2;ft;lCKaGH@+Oid<-RK~AyZ{>%j<`&5kKeeOkA>TAo9)5Mwr?}UvtR*Z%y4=wL^Dv3IoV)HLucwKeA zX7+9xAu^y(laEvIxnDGA?M6{yer#u$c~N-c5L!2GcwzN1uO38pXKrHNWu9@yTq{vG zL==~i#9!89t!rRIr}f^z5H-2x>N<~_LDRxUEp;@uu}S85G^;1<$iP8&pIR^a+{*}49tq^Gt=#k&!-L(c-QMX=)HKI=TTpR zEcs+~LVNX0r1`rsw2eV&oR7G;Zu+g|vi*S_yy^r5*$yPmuB~2n?NlLiCs3`mOBdZNlcOPD2`YS z^xTqR{7+*I5plCWE6w-pJG`Xy??6mpA(R%Gw=?v|mq8QbK8k346&q7ZE?Jzit;wqRY*%GzES(5Tzj$8HyzKWNv^ z`7Hh#t?ZZ4!X{!W4mT>Dq@6oFoxgy>Swp{l>e4Eg@l{WCGI4*_>1bua;26kxKQTx! zEZH|MxnFlVNz{#FSxMHuIr@n^Sl@~r9LdWrCgIifKn5RGC-=jfp#=^lmoGNWJKO85 z8Jn+CnbpvQc^=6itK@iMmPs(G?UC)rb~fL_4aOds$O_>Jpp|kf8W!cEd3>!W zFS)qA=Sg^!5RNT~f{L26Z_MgBxPF*=RkVKV-zu1Ax56BEbjvg~9?EgZEg08prcCRlz7UO8B9UG{ZlOF_GHrc-#=2bDX=rxS&0Z(q zgCXKFmXuzn^v>s;?W!AbrxxtuhO>})jE0EE>TK}y4cI4@W+R+c7r~C6_5AO8ZW<5O ztIQ{NWA>WVCwVtZ&rclTC34Voadyl1>Q^FB1Ksn=u{Ot!yef2NVmCE>)yFDLr8dWy zj!DgDb@lT4h=gUntk1hxa~fi}UtXa&U4MOg>GaR|jRS$MfwUm0t5fc;f`|_bWm*uw z)D^9XIDF#*hB`@B#OmV@dl_OZ%O|4h@c)OftB#9u-MWgXfB_O>k~4Hji&BC#NJ)2z zbjOfVBHaujok|bg5&{D%Al)IIGIW2>obPas_j>NVf5C5l6Yu*zwfEXdp`#w}TDC1iuR(P|^3?Ejp^E56M`C0rYnOU~Gty=bij(w&NtSjp z022;65|Je~h*s%C_~`unsH&l?uV*wCD)7|D9JbvEd4v%T(O~CY+|mACRy>YtoY7$mk9pl=LuE?);L4dj_I$-*8(zAM=*e}sX z#O=1%LM*@yzS^xG2CdZOvFBHw`Nf^E=V*?bC>EMDZnZ>hWjwymZW3TQVG!+MlS4Zx zS(@A?9U3^zlTDm&(LPR*z~R`)?|WA=o$9N^HBMqX(%9mDsZqnxg5kcA{GOKjJDfd( zGGoTUc1K!ab6vwVh5GRA{eh?r;lcsw<)QG=f>)wuTQc7&7;5A&&qIgH)NiKb8)e9v z&+A$`!vx*E?c~I7s9z5%G=m;>zPJ+p@8^0_Fx$ixn4jW^m804GD#8#4? zNCtjifiF9$ni!Vs@t*cz=2OW;_Z@>G#13TTKtt5}%(Wm}rGjB1{SM_iDnwjuEQUe- zyP>p}AI~#B>q7A@v^n6oLHp5kCjg?dsGXG0P}ga;w~8v)#C!r4D0y=lh*4EqICZCB zpGv<#uA7S2`#35}OHXlaq^!4Q`Kg4I{`Z40{m+60BYf>u@K#~bF?$eV8)zxeTWXT0!77}qFh?pE9Geovjy z3CA$IRj^W=_-yVZ{fvP8ILV_>>^+@y=g!$9b<*4`7xfk^jX77l?h12u=FVpE3DvH8 z>X%=~UL}5^4)KjER(O@YXRJ{n;#}43dk=df{t~CIrG z<&B#M&7UI;#=p!Zj&PPZGOg;=H9XWWyne_0#3RvwYn#N3AiJx$#Osdt`4%F}jZL^w zqs|=~m;N^{nkgZm1x2ZJw?rp>QGOTyI$k9jE3!0ff0*}*9u_04wq4L2-(!%}*MP2t zP)(fR4eGgE@@6J=WuQwM|88oS5&p$(Lig{4yJ7^*o9-+gxhE|4Jeh$G!N5$B==Wtqp)CDJ*kEK6 zMUuzq0g0ES?sX0a?5V@+OGk==d*C(~CLD2&s901eaxjDT1lt=lZu4f(IFwQM+Q)Pf zVzA7vBWToelj=(#SLRUb->ny)YIw<`sulTBL3BQvsCY${wlMX!s?Hi=44ZbO0gi(5 zJLu?_GHn1@uuw#7!xWn$^!6`L>V0QNMUi{5-~Y zB8kOE)!FFwc^H=S5}^Ea{Y$et=dY;T#$@;Zh@_X^HAaXZ+)eu`ARW+NnZ&-y~B9z~DN0+YXO zOkq0ECvVyyX>1=ZBE{(Sssi0NKM+kYRG=Lm20^ z54l~DRK0UZyojzNj`Rm)9d)T)s`XjousMyM4EJrO_VU8o;1(?k4f*#GgTD2+Kp(>m zAQ8COgjEOfRw2@C%`k@O`#0d~G*2-M3JxbKbE#2Zd?U=BCa+|6uQX(sYI>#DD?l_l z2*gqmfTw9poU2z5K6~c}LeSs17T*v;;XjF{3e6ya`uInGX+y1Ii$F3_-F94Lh5xtk z@|F031y%FK5@;w#Tx(+IETb(zY7Q5)V3vXuF1>q_ubfI|PjQghz%CS$ws_csD9F~B zzV%snuoK8yNCu0GGV9X^edj_wZD>ElDZc6H&$pjEoIdVwCjuPaTY z(YLbknmS8#31IwmK-O}7HgTXd11|B3G;U?>^tPDnWwj&8GFNS`H-;ZKuPqx6$OC>G7Kv$qaoH*;Ow%2x;DI6w}7lG6X!0JEHOM64a;ldqG%q+vpg-xUZqLFniU$ zz%B&gd(iPfNJIHCYp^iIn-O`wo5lSZPG7e0SEwc(M~tb7yX%iplKc~Z?lmj~M5&lG z!7F6D%yLBlc24?1k-#OL2Vdb$UZEYV&y-`*l^C1=&S1-fLA8;fa-hh6^`M+t=6a&3 zo0k1)09&Gr?@nZeB)ha7KahYW9f{5X6@07*=iC|v3z;^3#zRdwK4$rd2|clf-I^rc zw^s)m%)VM@AV2P)PQ!Nhzk}ND<%@Uv28Fa1)0-vm4IU;D3At5F0N9IUM#g>?o5EU> zgl28DqJoBS`B>bicattCw!kP6cZZQh+I+Ew9F7zcOY=D#*b5nv7i-j*7FK)Rc=+_|{AC$wXllbo4r5+( z_1C(OfLw8%ghIWrr*Hn7wvLcjSn7jE3-)HFZ5y$PhO3lYCpl{)LnHM4TeXarL|^QF zP2@B-=JNB|WxU^CZmnQ6O59BC^txF6=6GMckCow|-yxWC*TTASM}X zj_0(;%2K~DSj{N}4!b6wv|#A&WePoygDXunMxLVoI}T;u7B}r?(^sXMFwS)6Q@4hk$pQU#NCtbeGne= z(q?NE+JiIsMo+2v;r5cd?Y+*KBha_n&1MEP0kt7sQX!e_FHd^aIaW}-)K;GKgl=h` zw*2!`OuDBRdF}ImUcU23F`Dp&zyz6dn(Aa`)y(0Fv66I?u^{08lm^cn5p#vZO(#_f zCb{uB5p(;qf|yM%(%GfuX+lV%Q8-7zU2v) zZad7O5X~<9=eOHt!_yoh_Go;|DRD2maS`qvbY*{a9qlnv(ak}v6=t9}TmEEI&E(6l zZo-Hntsr)#IU8d@ih5x%1JQ*HE(q(6v$xV1%$kUKCDblQb&2f|-Oj6YFDXlRQB|E^ z&=T~+#Df*vt&df;7mSEbI##tR>3e$NU`6OT8Ujo~#5K+v)6lW!cyoCq=!v z03knpnUeH90`2BFlIUIRLRA%8J*qYw!x4qMjy2fp*952IF(y5(0njqaYNhKQJZ>e{9Ju(;kf5u7-DF%*jZ@Ia; z$A}s(Ovg}20Qcu&>Rp&nUk3GxQqpe8<_P)5Dqy}dq%D7!P^&H>WHx=K zD_nzfm-+m%44>(29vf`k@sGf!Q?jzdRaOZCjcMBmuF;7nOIddqwmq;75)LKy-Txjc z^V#(jNY!{O@|Ec_`O&~^o48`_h^E7ErdTe%6HqF#c{GXr2vc`l8OY~_r8I@oYFSD# zT)2Fs3ysEWDoYl#y83!Dr71VBAa zD!*D__7^Q)(}|EfC1sL4+`e(11H;H=UwL%`VUHP5Z2BzuW$`IibocuJwb88 z&QA8~LTZH(&?_%lg|W%vvi8RhVrORPz6_JNtWIyl9kp*|$|Upcg5r8LaUdp<@5f3| zypg5|k0E*s+&*gULE|Ax1qwlb23BA3-bnbes1~Edn;ezOI6e7S4S7O;@}mBgWb#*m zZWB97^(I`JbGStq+xKeZ<6=;|R|WbQ%~CNvg)wvJ6Z2t2CaBaalE9CEm~HQv8R^XS z>dQ}uJ|z?fXbf*q_P(=&K%v4yb8-)my45l!fa+WkVh}6nC3buOIMltm&5*R`o}x*Q z&~@`rbu*2mSmq|Nr8n0|nw>l~|EH zii8f5%yXtyfYrPP%mhk-RHLg-i=qRR4P&(cwWb{O@J0fcYO4D@PDOr@z~b)FQe%By zm))S6j7d_bsf#r;0rcNjs%|>~9khbVqd8q}Amy$#2d6RZ`yt@p&C6+7jz%ja=L!k~tBO~|NU+bU&DoglJpYsLqA0BiSc9g$gAga7w z-(b1#gRwJ^qgL?(F$a?x&Gd&q>h~J7#SxhCfQmD)Rpkn11;B^jR2utF&WZN|CM@m= zv@kZ1shVayOVEe*dTf(7+EOsE7ScpRz5)W^MUp4?;4RU2UP#?Qx`^l^fqT%^y*@co zAUO=(Ss7#=$G!H?PxbuOmoG33DJqXaJ-}f$Tyz9z^0a;8pWpB&K^cVe0yaEJIX&%{ z93JPm7H2wj`A8iK1q%K-UAa3YfJ4bSz6#Wi3)9Wp_2~Xf+Bo->(nW3*X5;DO&}W^X zEuYcm{k=!@4@LkbXK{iNIGw-SS?p?t+`Gz5)?fO1}pmWA-D z&8ninpo|P^d#qtEmeqn{(^Ex%)(%G-AP|P>InVKg3y?q42O6aE{ECTcsYS=7@1N@w zn5t&+@3X%S+e3F(7zNajHIPnOcio$V$(=?6%!G&cEt*sXX>VtvUK&rs>6o+uUcsZF zBs1Mv=d$O(9GgKCY4Psz`EhohU!Diz|G&!U07Lth#`8tAyntLd2?8MMng#YA6iB9C zp$!in>eV=`@xTLk^uBQ~JQxMc+f_g;E{S1OSKC`3&j*Zp!z=0s8j$O>$(^Ofy=I`O zXydsEG$PwP%s>`easq-P2f%$IzUy79LFmO0AY!dwVKJVEj?0J4K-CIN=)qwi?lUub zZ!MD7^z?r$s3?Kxut$7~18rH|Iw%9V$Hf}uI*k~(gZ;HI+gzSSOjkf&Rcdf| z%T+Czr#R6B<2caZ;j!1QYM@WkZ7l`TS-`P~F=sQxqZ!1U-OLPg{{Nus*FpSy4a><5mKs4@JGYOgUZPv+!l)D+un!Z5Kc{koIa#-zPU)V%|Fq{qu_Y z^VOUv%npVO6~pw*_l!?hi@g0vKmq-PZgkq3=bxt2-&ewL(K8cY-VD1{*}}mMh=O<^ zBLHzzwPH}PtFO#DYbZFr#YRDQh_Bh_2vq{KP%Z`EJBL37MFFwU0UW^JdKXd zIGw-PfDDQln^!doUPz84neum#|31hx5-F7~s~SxbW7LDYX}nRP9GGyFHOZaJ=MPXa zT;RATX4tU6rk~zI{ngWdI_ts`1+v~m)J}dI%er04s}9>8fSc2Lbt2|u{-Uun7-Aqv zZHiZ1JN4Y^j7F)e5)IFv<1ee+>{c;k%l!#$R*N~3mE|Sul`702a7vz}3rGJP#7vRG zY9X~iwniEv4f~NAGV5@SZxvcLq#)S&_xTeYEg=7Zc0EaTCt~!6J6&LBxLi4+GQYN# zvN8(J*7*4RhgFs_Blwq5s^2(1&DK{f%burCzf7V}{Fo7Xl7z|;X%aRE$#orj_+F9+ zeEdN-&&!qa6k)UhEj#-K7Be=kGBHrU@UbKYqu+$0Aeix3FQg2l$!Xcq*odPDT5pIv zdR4GsVx$^PS;;_;+CJx+f0CyRqYXp9>z>Md`QsrKl0n!x!2kF95=e2vsD{75p+=5~ zheKo95VJ00N*e0L-w@8CR;o&~OT_0FXedag@W_7!T4!2R{EhYQF(e>ZI+?P7#2z8h3)jn_4dRzKp+9mpLE15hbkG&*e zJoG`>=XVVNZ~pb!VTxj5nZ7^OkpD7E7#?EaE6&tau73sRmaHzRmxk^VSvv7wzgM)4 z{d^wd$Z-J(x55%q;FUB&k-t} z4|p^i{M|7)m`~1M`g=yaynsQpM3VG?iD=48@7?)NNAX=e(UGi|Xt=8O4|`*ZEJhrL zq;PfU$0%;8%|+j5zke#`qGy0>Xvh=-^vtO~zv`4@yqtFa*$!M` zk#p|M-^-MS7lUX=>tSQ&cELrpzvisht(+YGDY`qa-kz_mUp^5lAY5xCYDK%xUUKPt z%Oi>t5I$~H3Wu>d{528IC+epN{2ZD+6c&@DbJj5F`82bUNl80?M88LNm+bsY{(6Qw zcL`{^_V%%uI`?N%T+Y8R=7uNg_>%cBUaIo>OMk6IfddNJp7rrt8Xbc>&9Bd2R>8rf z8^JBleB;A({?gxZ(OiUpaJ3(}4>%mp`~1%To)o`6+!Tsi0N)fd3M~G82l(}iWtp&F zs^3dL1U)v)L8}u7Kn-R3K0b?#%(tAZ7w!NgS2Msa3dsj7ws>hGiU_k9Ab2<@#L{F&rTi4XbjzuGPLA<+P*3kWUDdZoD-hEG@tZloh6j*4)#Us+Izq zG^7@wSx1tU0KJ+jz!+wzJm6v(`e(p$*Bn?m*)hkdJZp-oRYwa2RSbYQbBDzh$SP0m z3TnL}Hp0Cuv}0-@amWLl@O2iuPZzH;;3wr*y6dag{vP1{I*hVW0&&ijVrKh*V{Qcc zh!ugv$(@8M54Z^ki^_gc141;kDCBcryJh4^IN4#WDvRbU3P5#NVM22u-UhkauhT40D3?%z%bAp^3oWj4Cufx1hSimk1lm z%F^wQFPMf_Of$`(JAX~UF_XbkBe&SK(nSlmEqhh=hV*ealwoEDKwwg0F#rOd_i@hcd=-L5*np^*FFuW;>Xwb5n<*&-$uj}xaJybA7 z>M|U3JZb};LAb;k_c%;u(*&$_KSxjol8^!8O+`fIlp%;2fLKQAgx)WZM|pOWB6SvB z_7BrX3BbTcF(w3cNI9A9p|FeqV&6x%Yr@Da!$B*LMiP%>>-(H$u{&#{gTOFH-34$A zd0pdC?X&nXA|Vfq0p}#mPa^UY;MFl{Ry!5M50@CZ@PiSkStty53?8Wk?E_Zj%Cqk8JTyZ85g z{GJhqYX>sksx_7 z&JAiRmgnY+P+THt9-PJoG$W~|NtM+>VQ_=}q?cQE_90MF5)hNme2RLkq2E;stYtVf zGpr2zKPuWj`v9~IS`$UOLZh$Kg9A#VC&(GtEyjl0HUVli63e3RsxVlf=@wKR3?z{? z6+t|&3~+F%QbnX#rAY+v^#~oLQilxiwOiBf#ocxu<8mvkG zDIED_%pcLSH5!7=jHKEGXa=@0HzZI6-C7(beO6uJQu`xW$8^rf^x0HD5*yqopy=l) zF)3c@@W&q=c0XEM18EIIKMzluRA!B(?v6q7+w+G)IzF^(mz3MH;J|_fQO%u zlc7FpG82%L4EYFs&mxA{fouz{dRhb4LJ0bT$|kIdOi!P+(3CeMlY7c1pttE zUSL6%bWN07jn(`s$Dkc<0(uFxX9457N#0jz196JEDkbpEVeYnNLfpRvIlqJ&IxvVV zl~-Vs!;QPFEnDwsYL!rBV7IHj>W3L;sN12QHpT!1+a*9FGz7HfD@l}eozYSC>}?-- zXrJtMGSz$mrbN^p=$2(vGDN;yy}O_!G{^*8vT%Jlowr}RfRS;-GR-S)r4ag{m>Yxc zinxA@vhX3STFe!_#jFCbQlll%DE!JP6HV!)#@hdWsQyzF&z>QtqrD*sw5c`E-vW~e zqfw14!;a{*2XufsWV;c825)&^gn&9O@Z?+TD7EBZl8Fa2_;0*wK#y;U!%T(VnerXh zM%JS#n91gpxk2L!9^?r)5OhHOr-W8Rjq@ppm!t}Tx~Y4%(H5xhs)y{s0c4b$R3@c? zv&LmAMEGALvKS!@Mft{<<{!I4N+EY)KJ6t2sbe5gqDwK>sjlGhonQup>Op% zD{wVcGRaAZMl9=pq?7!&d6I&_r-=mM4$U)PIM%FL+|0#jzIxKmL!qAiM8rGK@p}AMoE# zGkE*3CT)kkY=YGUmJ;*%vCDzIm`4IB^0#sn+%Aun3Nt=+8_gb;j~W45)>RT0N# zGy=qM4ABzN5((_`+}JNc*a|#LUZKN5@K@=ZH-o6Cub(9Mle^b1|Iml(s|@ZCQQV)%e8xm*|n&8$3LD>M}uys1OpUB_h{|yR4XifjyyEn)GcU~h z!UQAtC)w+s4cJkwMwlD7nX*4aKb4hK&Y~u98=)Rbedh`6-%IP)xpo0V6`QQm;Ikn4 z|C(&cV0N75`~UxFO)uK^S+8KP^x|7)^& zfblsfNu&B-cOe0m4E=4KzlKrZ0Md=tB!kV}9Q5oJzVg^{U4wbB9N0$?4Y%T8l7*3a zPB;5y^NRxIq=rE@I@+w*Tk16mHy_3U5-T%wiUdwQMj$}`BREe19Lrh}&8OD6RON!v ztBFyiyhmD+S|b@R6myeIWhEz$ZF&Ujuiqc|xI75h-zG+L@{I4VYEnMU*Wy}nz=3OH z0Op^O*3~l*r49qX3PXVYe^v89$0=^W99FeLL4_NP*voHQ9e=U5WyP^U8%J&j(2ZCX zM5BKszv=H;^xwiwM*-yCJI4S9$M;sZkys&s{fUO<(&j-E*V)m-ofTz+`}BW2+af!x z_to|UE@z-&)sK-K2>`ZVV+!`3iqN#CwK(cY;6SnUbgIkWjqXm?@w5;^vie zykySz)4N-gtH88UL+d8|hYt{T6oG7K6l9CbZiW*E9^fqH1d+?+AE-n0W;ga96Y5w< z;05_n!Qdx$x&|4QKZU%NRhod%vyoEi5n2b1^l8q5* z(;)@F(sEt|md@7gjMd(7wtPeHWPL3)`|U@{ zD9?h-eoO0ke85A01CO-D*UxB(-TT@ZO@Rxqm+ed61nx|FL~Q*I7~ zw@WBj;sGGKh}pv&RS^qUW@9MdCj8&ZK_kl#`4`_4c%%``yP_-(w585j9jYgSF2W}imRqz{q zDG?zjRH{)lQSUtLHxmXe`IDar>&>SoADAlU>W$_rwYlFrgWD>(SN8ne{qlgoauP^77)lJ?9#zMpcX~Ngeg5~o^nwAWG zwW2SiO+G(-*b7VnMu8hBg9R}gHZ|%=xB$g7eK2yiQN{e@3N$Ubd7vO_+;sxX-n-|! zk{jAL^3aKukb@gQ6VNclp*z|xK{|UN^gdN#O}3`3J!*P`JhnH&hRX(j=%t zgC^3+^*@&y(aeP8ZD%mOrMal9Z&iVv#0`!vn7aw3WB9WJ9#e7fUAEQ=e$dv?0Z`G0 z(G=GeP;f3s8@z2}s+OX?@3a64)jRYE>*Y%f9O+b3O@fQ~gwV8h;B9=vW6)u|c7;kq zhF`+Ue*pM@B&#@q_&v|0U${A!rY*vv6*%0tlun^$0-58r(Cw(ztf~O}VHLnuL0=DR zFu$VLl-S)rw)hxojKqO_%SfZHih_+(W8P4e{$1>qP*)Dx;HlNMgpuh4c2<}GP0-M> zPfCge)Le!us;!ATwUB#DUWplt$kzK!ng%&O2h-})0SMm%BEbkZ;^%>rURbF+XFhm( z<9rV`1mDKYakG(OiQ-cdYMCy-KVU*^<9bOYE-S81Us6{+iB~i~)V?OA_ikDH=o={? zV&*XBXUc9{*LzY_ORP({n7|@2k2pld_zTV%$7~n3!}gi`-tMd?>h)sbGpq&<%5BHP za>ca*8R{X0OH`vu&xW3O_z_8y4-j@pdbO*L=D%+9af7~jy^8qiEx=-GVREZcxQ#~6 zY=L9B$|!W%nb*LN4~KiaFDLE3??V(^0DHPZY~z@!(V_j z&+ICDAcQzgUMpV0_2niAb>U0Uk=ahJwbGv{EFT}Q$~3?CJZmT$GsV`K`Iz^8j@lA2 zQO62Uc2oc(kRcGJ9y^A*-$y6$Sz+q{}pjPd!9C^R5B^v)f0JcxiKthoGX(an6|=KyaF|9~81fcv0u581xoX- zHW9*2cUof?CQkUq_pzj#acabp@4%q!!|eez7XNfsO6vp+*B)#j7

V2zl*&E~_atK=E=P`%VfDW4SE(eJHnlJh0}iELN)F*0zTF zIsBvN*0*PA!I+`F+IN5GyG@VMQiTf&2Cjb8OiME+D6&BrgB!f7suaU(II9k+f+Z6d}V=UJYzxM&5DfpOW z)9FXHFAt}wYUkT4mT(VVuJ5NitL;;btm8L_QarEmd}NL!gL*FVTQaR$>Mk`k9IW!& z9X}Xd3%@mR@Zr8>l3R(idKn2_SVS`-__K{#weSPmgl=PuB6_Aok$F! zmDH=g#9Bol0+_6`i^Tph_bd&9Li;G&FLpPgDSgcLZeWby?9W4Cg zyU;6CQ_sf74CK*1Fh|&{Wk%XCE|hpId`nD>B(aM88L?84;yx(8-Ltt;k?wB0Od_ep zd~a`m^T!(K*Wq|e61Q5s^d5`e^Z76p<^{~tgI$J&ONLIrt1ZTBJFLbpQ5f}5c#|jlx>GpF1GSIS3qoQXbk2O%kC?iaOaz+pilnyqUu0_;^6&y7}jPMU;My_`LrM(#$jjj z+98w)j&bJCW_p6B>0e?Py$+~$VvQye0z~p?@8oivFj1=Fp{xbGAy#~tgvfK(}`%15%lLE z8U?nvC!Up3g-Kr=RGB@{Q;yCcf7+zX-=PXWPb|$N|OoBLG4}rFL@7EVu zOCl0k*&S)0!^AeHSa19?Wp$Pf|}lhe>v2BQT0w7?+M?#tN1ceSLfm^PZ=nPG1F{+kE zIkWX{v;PN1SfbdcFdB-U99eoh58gY}o1%ge-=j)|8*ULHRHqHnX+wi+wW7L&wFE}8 ztV~g-!+@bF6@FvJO?Av~4?r~iL&s_N>hV!yK*9NGBZFLjKVfs(E*lC3F z?#7M-X630tngxnTUmX?<{J^T8`{l{Ju^VS&9a^xwqBk zmX9w9>61nOt@#A1Z;sen1Y90Pf>@;GvMEC;uzWi&*qpV$()V4J!qSP!>t3D6wRoq~ z$g0MYnQ`6WW`Dz7E|X;q+zM#u``6a0sYMc_kok6@g$lBt56)(C?6&aTUQSTG6VBAd zSNV3mN;PD>w%BE@T^~9Up1_GPZp@t@B1xCZgM6f=mZ}FU;YreK)M9u=VAFTQksPw2 zvK!L_FI}1qMIJEpNv8gzP^Gs8t2+v2B?{lNeE}D)^CYK{oX? zK8SUN?F6YLPF7z9r4aEsM>!SN;Ue8;)M;JJ#woHk25rnMc43n%(ed6XIPtFr@}x&o zQpN8oR_#XaXJ~jWDQ|c7MJz%|0WM-RN4uu2Eui|= zJ-|y2WTcC1r?7s`MU2pp$v$XpN!H+c8DPx-QtndPRXJCADVX-`-8autSnnv++q$lMEl#_bp}VB1Yt^Qs~`&$K^Y0fQmfw`JprgeYUWxGXw9P+hnpAv1!&TEv)n(zl$A&l1RAT+XB^f`(okbtK(lf z37_&L(DGH*>Q1=rX*Ns`@Ua0VWB0im-!YihZK?kD z0WH!>&*ZGQkXm&MPhxGE%4{<}C5VkKZ=G z$xs`ZgUGldSmS8bf^3qXM=rdxk?vqS zKsRD}?}GmZ60|s79KkSo5L17>Z6zC0@;foZTA3(0-06gjsEnmRo z>EGx3(7`Hb9H#(O8ucwYvg{d7C)AT}+RqI+nKEaycpV4W%$j4wLjuLSBx=k@&PLnL>)iEpocnj=%MJDj#(%Go zc#an2COG12yT4ZIIW3@)XbZ33B?k9D|+JT19HD>J?5vay}WQcvD z)Xl*jy_?j-F9+tBPc@yG!VQFwSMww0I&D-N47a-n(efVh;_ayb%s?rHN(Nu@5ZwT_ z3M2Jo(8%HJn_9%=Gf*?6k0@kS=l>iXUD~kTvwievzJZ~D(O=a0!i(u{R_VQ5=hsZh z4y=1$9W|$IJ4UeA25Y@tOL^hS^gntbyWG%t7kwo?$g;DI`*CK#fY~66UO0nDS%#C z;@I{h83u10fZ3Lxk)SzVx-zdN!>@;q0qJl&4H+w6621tsJ)n{uz6_r`T8%kNXI|o3 zMDTe9FjX?pvBi+f@t$N-H>V*J>8r=v5KuSxN^C^yDG=;Pj=ZcI)sBSXOx|j~8C7$U zmF&Fi(gF1ZCe$^f?yA>c$Yhtj?!hR|WSIK?%9kvq>rK)p`W8Yx%H;dw09YU|C&Y;P zf2Z4@XKUlvYAy8>`G2;Zgh|SY+X)KVg$GFr8or}wjvGB+Q-dwo&>px#a z$Q1kyrEmLxLNFE0q+DR_a=h*J#Y?0)4AE`Yv30z_?{OzUAshM_kcd`lzX9%&IAd>Q z(sl-_H~G}=^_RC866F8zwdf!EgokyVVJf03ge`LjT~Z)9Xcry0AavWsZKO9zi8%g? zS6-ppnkl_p7WvUUSA*(;Ho6x;Cm^BmnN|l8BJE3ZR>85LNgOQgUiIR(We0^qoEJl5 z41-48<=5!0WiqqjmxF+~C89cPwV7nM2o+?+lg>mkN=O!{k_1Xoa{z~>yGG2!0B}T) zho4J+gglKA<(auP*QtGKqq#`)EE15=8qf_J4FRH(f9(~zMdsX9{{3gjnF?ANw$*iz z>Bh%8GkT_|TU2E}aGLU*1Eml;VhyWjNQ#$n_aL+iIc|G3lZ=!5tz0HmXaUOda1^tt zjq8f~Bv5v;x04DP1}39YCp}~^=)XVyKL^B?aB(F{Zw)~;h05ZpGo~oA0@RU# zy)Ng0lI0cP;i!e{F<3L9h;|vgMThp!=k=l-C39jU^cm=M$d5(__$DlHuwDD*_`= zW?}MzM?vLGz>^!Q7%#A`=G@A)cM)*u2m0RsIywKIuCWQ9K8aM?(eHw?h>~cD0XZ`0 z#ldzqzoz$fK;^LFg$A}Z{CK#LV~bG$y6}xNl?H0+gKy>D zW4NY+DsnL)W5^&8F2!FC!rp#2YzANwt2GB&Us}7JP3+ZIxc>Ae%}du;QZvr1?mGMX zj{j|?N-{qxy2Uge@Sfu({;XK_hTDd^r~zas;zJ4R*P&+8)1Oa-l|@V##GNO$lDGh) zOZ%i>I~sJtsk-7&tx1_K%POrbQUu<={pl)Sk-?J!sh;TV=t9@byrL!?`rNkMmG+jz1Dpy^tyUxyv*w-TQmW^!9*4N57;n6fvbf@|jQ(~Ez)sL^1?zUBcyVVIQ zm0Fje+*IkDF`SH`rUs>aiXXce!pOQF8_S<80b++lLtX)L|Z!w$e+ByrYwN3-R!+HpvuTF`ZfyPM)&3qlTZf%Mred z=#Ib4yW(Cr*bZMfp?5aN7WgVcrrOzcRGT5aUeKMx&YmCyGM*N=m>@G6WZY4aW!K}r zGpy7y7VWcxWB0Up{pJWsrel~oSa;m1+Wp7xNKPH8N^lZOPGHVT8 z&Y}8Nz5FqEIi3ORgztyAdRzDE_v)&1+yLk|Me^Mow$%{4`7)WPf znx3MmWf2V-wNyoYH<`e;rpb1jSs~g`Ixg=+#9#*KWhM>Ns*y^(njxiqvaC$K_Ckk_ zQW-H2^!(qB7re#nPq&`tDa@x|_2BPhV8%GXZ*K@bz8_~QLA^Tc0OU_v-$+S4U5(;1 z*;=!enw2AyFg4KlcJ)p4{-%DqqkUFpAh*XbTMusHMV>Y5{Q%&pTuBo1dAbm+bQ=(y z^~sSB4|5~*IR_KgV?jh%d*vM{8jPS4CXcgXc7R<>p=oOEPQE20dfU^Kc?DX7(W~0= zEq%I#%K#|mGj@l2QZgvVCW*UFv*L;4=g! z);TNf1{qy1mlO+~6%!*?*DO6;9`;8VcTen=S45ka4`=ag`pdjuCOrCW0q_!ltsuHn z6r`Fw?$ah1%)AN?({co2DbO=2lqKbv$b3BOmh`I$WCS(_vu*!_v#qU%NJr>ooU3ET z1kSd>4LB%wq`B@llNLOS0nF@*0iE<#&0u$j-R?`w{S_T4q5~ycv zhSaG2e4NpM{YyX@&qj36<@U+ZPoC~pWS{WY0B6O@D-tjG4rWm?6}6cmQAnDkz8z}* z194T$x}9ZyFDdR_Ph8iO_rS}3PL%(!N3VYza7{b!8oig(+KL~H!pvN^O+JbO?k81O zeB^KY|NE}rZRvTO;@YIOvh!5^;Fd}jCaM|s#8eU!>pJ|CjmKU8;_ck7t~92*#o_kq z_zZE9hoHZV<~mTd%iM2|?c7PQMK{tO5RiB}LY%g$4b01H3Z6xFDbxqeqv?O>rU4v3 zXd=-a7z-};O3@EQrJgv023>u^MfjfYnb4qghm`J^anIqM=lkb4bVAI;Z-{zwX(d;e?f-#p|ZuNKGIQcxy z510h=_sozxtnnG7R=CdH-nZ|oMZ2;sLp;+RB=BAXV4oJ4!rLQZT;p~M+)Eje%fxyh z60jhBGUrghrC9`}hRX9Q6hYgdLy@Vv`2P~g{c;)I9-c{3v;$`**QwetB|&^sg8;?Y z!5%1JkGkBbHTYOGj46Ia!K4cR-%gpoHk&QR?k(ES^EIEEo$AoyTMf|I&=AyU8C4rz zHF{lcR*^EKc$EHz_VX)<4H!L2NVgPa3Hmj8kU zhwZBs0Bs7o*Y0~i`YO!-bPtaLFd~VecR$~wVf#;S5zzUBfx&dC{vv|0no_8jmKMl2zbK< zDUca%zQuR5wcf8#tV?3<3@*H)4j;wryL9B%8%*$K?0F6`wqr*RXHRQv)|)n6^jjI|hEw z7hEsepM89-42D5&D#i2{0%C$~W(N}DC1$U-^z*mNt0?Bn9&p2hxySoAezQ7mq)m_r z?}$14viovyxcTcrg-qtvpKM%r#Fdzs@Js^@u^Ycw?H30txZz95gR5tLHB3AI06qOr z6p)1f7oxCy_2qH!TBQ(ghk1#eYHu?r71(3^rAOfO`$s>=d-j;+Ev=<&>c2q7sy1RX zl=L=>2F$i3)gK^!zU>M!>_>q@83psBYKpNhp~$x=0A-#5(@`;|FhJB<0c_N*4n5$r zf->#;?_x_dF}i86iOq+Qo1lQ-j4N$^wPXev?X;vNM$*2{dGP-YZ%{p55#9STMEYMyVnrwz?|q}4T%sTX!`h_K{#@OI zMQBs02gI2f@%t;WC}^j41aWiJx5}&u&op-q{GQPOdV3)eRP|;(I`@jEO`?Ld3Stku z-(0DO0H9(3IU>=}A4o6?go=1P9h_Y0xvE*;fvWFkOXq0~69E$vfaXf@5@q$SRTexy z4q42M&Srlj$UdcYfAW9EEjtz%dg{iN|bDjCu`=953Z8y_HNneXFA7Rn^^Y>0r$7kGr0K`RH9*Ab%u^$Ios21oj0f*0m zGhSV_ce>pNVnkCH$3C|Zu-1#fjJiNvTKLrA3;9gEqRqBHBc7iEwPk3ybh%WSC&Wci z4b+SA`V{e8F({2pd#om(IaCtoRE8#>Y>X?c;{I|+t@Vl%K;7e&A6z3k4%Xe7YF%<( znsGiLtn79;_ooJK6Dfy5kyCYUDz>*FBTQC6C9!}O=d7RjjnKbu)Py8(YTkKq*!gOn zKwA@@iq^Yf3K{?PRSR8J9+4#=GGY9McT=wlD^F$>9gVzUC~2DGqmpJSKtx& z2jpxub0ngeu1o^Fxv9nHpaXBlnZ5yW8SgUB1~GR7K()-p(@#MH z5xgFlFJEgga*vm40_N48m^IC{rYoH1{!ZE&1r3i43J)@`*gu!VB+HG0{4toXYM33O zCCP~aRde0BQAZTzhPLA81H)V=frk$D;RD|x6-Ib~{~v$$@3>?P*xYy&O0Z^#=&^WR z+$DV1^4gr73xn)u@3t(9^GjyLFRu@Fc%D_=Q`NuASxC(1-95p2SK!ALbto>d0beyw z4fi|~!FI<476{uKLuagb-pmw|N{c z@%C6XgNCoF*usvyZ{(vp{K!9Z`Vp(&Wd z#q#<15xMj&rsTw0ls8MzP*s07s+j-%7ie)E5Id|z=1i^3EA|Gh?06tY?!>|%hKm{oj}-1ITZ zADlVhN8~?w7n$27c(fA|ZCC@ozc@y_icfWW=|;KKO-bvf6(#)y1{fPN-m13YQ=@{T z;hVG~P&ZG=7;))h5}D1}wwZu>iVa}EzSHhrsQ6nUzDXtQ;cqM|gk!^q^mu)wE1!Xx zb-4x$hxL#ajGblM&{xowG9x`;HhnnkuZ{-+^Mg`-Vfp-lPx%p-20-jp_7GPcpQ0u~ zu1=O(cjrNf!t^7L@|d!ttcw|Li|4Fy+CE0Zn8l$8y&RK~`T5Fkm7kte6CiH$kju-x zQhUfI#d0N}fO#7gqFWBTAQQA;n$T`EAwb*wro88CPE$kMH&FZe@?;DnRm?9VYD^-D zq1~vc*hH|ii$E@z`G={CHNk6XeCla%jRzN23^tBzCCc8IoUiwteXrE1KO|`L%u+gt z#i2%MRqLI_xPk^h5RaIZpvR^X+dK_Ohg=ar>=ZRdN}KDWdaP&LD*XF4^F$-dv1~qH z?p-q9Y&`Z|q78S|An`q=w8v+n&2#Xa+Tk{eL&Q(1Gr?MRSaUsv>!WUp8Zeuc>Bva? z?N*o!QEG;XGA1GT@kzws#rYuUu+#m8lEkY!J{Tuj|+rRqHosOF4n zthP?OcED5MlG=f;MAoM!kh>%>L0E1Lu~z~*ET<*Cvw_X)arZv_R#_@etWr`UC^hDH zkrs>%DrdMN*Ow~%HRK`oDq6pwTjt`0cCe9Xi#EDQRHmt+9VOaKBFG1&F}S8V@>B+A z*R+DpCiSDs2y%3%As2uGx|HL_Z-Jp25#c$B&TabK(NAmJN;DqQ2g)&cAae6%D z*-N8fh0smST*ng-Ek4xuw*Ft5n(@oXeO{JX@=Qr zw782Flp6Us4%gg_%8=+DFk@gMIXlUtH>g47`2}MhI9_)_yG-)4faN&&kK)^;V zzC5OIPVIn~=MXxyZq|>}s#UkN2k7dXnH)+}qxwK0ix)s$WxM+bn=6j2f_8vlln!9P zG?hBO&t8MgaV$vcR{7E=gd6t`yoXu7&^+LqF68(5>idY=PDWjO)?FMAf)@?8m?P_t zI;2~3JrUtbIy>I-;xq7J$+;IVjkyc09uiT~6F6%Hy7sfk#Ji=-4_N>5c{*AE$T3D|8ovjvMip?_*-M|5U8AY(MOLq!e_Rg`MB>9YN%E zqSBcNaw*@vwq_}t`;l-CltGY!o5tAC!=^(STB>5l`k=VvCTe&@Q)3ZXgTEzPCo=pJ zjR@lV1t}TmBmwn^t#R4{QAO7%uNys(Fj>B5U1*5^24^tM60aQE5BoMcSV*9KKCIt{ zc;D(I%k$~qDDV0*!y2Nb2NU(KZIra&>?B*jr7$6I1#*f@CJs?b^B!(;BC3E8{@By* zAhAOZ-D#vm9%N6v9H9DgsDBB>nZ&=x^Xde#a4v)wou_^NVD2`MEaPMi*NMolbxfP7 zW#1pd?PFh19_oXJi9+y8!?`92AW@tC=eNH`%YAId*}9^WdPNOx1QgS6D(%02Eghu) zs#p~I0#WmoUDC^ToA@o*nA}5Mw#lYrEWC2xt66hWb!7RNLKxdh2q)UK{U~Ybadx7J ziF8TjJ_*$6$uw;jAFw59XKP5{Cq^iYxZ}pS39!CAp@OVrODcH+bNZp$uZkCDy6^xv zmwRqP0YpH1N5DO-26%0X;Md(FIq`9RP;v1J1iQ)(+bXU#AO%_6b2`IW<1$jkDyPYR zjbwmSY!Z?%d6O3c28IH>;d@WSNFPnP2%UG71^N}2>l}+JIt%T*v}#uWJi-Mk#4#Q? zb>C=aL@iib!xLa8oXDmmDGPFn1l`)M66dLTU7$J++KxP~MQYngC!xVsmb;@dJ$@`9 z#sbIk(ORV!N9`3RY8+I9`0u=n zi9J_jaGxC=s$&-kyj!b6NsTCfdL%N{vFov4H`dm>HHEva=REjr0qQtv~e} z<}GfC^mtUNF~xFHSH-O|hrR|5ap+;1EVbGl>n^3SI|PY#Z;`;J*N(Pj9%I6b$AjQw z4+2EoorlO_iZZeb)R6pmdE$fS9)i6sfNT+XQmIy;fmuv^}2l=5|6z2i%o* z^M!2BmrxY5$&5}Ul*bIkg%ZLQcWSwX}ZzToObido9V71reP^ zTkU*a4#zj0wK*W$xqBJxS_;AQiR!9V(r%31Wq+_3S)Yh%Dw=8nZi%La?)t!txroDs z^3fwNy8}l8Jg742PZnq~8F{`#Oa#qSY>;MgjeI2JkUr!9O!5D?zYrao&^S>JcwJYB zveZ>7km)(OW$kWQj|7Bs>{O=K3 zhWzCU$ay0K7EFr{PlIybM$a^y&cZ$wjhYBgP1%#XW70(Uj9eEutYr;aZQ)uHR0mY? z2Y~(sl<9FebSHE!N;xtNj(;<$jV_E&)&@z#?<=4{tFPq|SJ;N?%21Q7t@3lodYNnD zXas!9!U>`4T5r5P`#oLl{ZnfL#LC#0FoVR~S(I~%DJE=|=(NjDnhCw{>Df`b4l zTuozcWX}RlekvE|_$Ti1{~2ENc{T=VIs{P;4&s9##Y?71`Xv7LNWpGxJ599+0$dJh z`aP!E*S1cm-zmWm)tuBgSGZ3PR0KqAFJr0a&jle#sX1+AxLMgnVWvlLEC{N2Km!Je z@8x%MNedtCY=GaP>BqtsyJfR0fN^K+7*N2MV#{_bw)tIqV^QTA)=^vm)*W;r!z!_W z?T*IV)G@=;3Q{~tvC}rU8opm|d?GmZaJI>dSU^y-^^vw^*MmuqAz~1(`C&Kri$Aw{ z>!q{^-}WY5sho-8=yk9=d?5w-JherLsvBs@k+!w5HmuMYsc(<=;jkIfR;|>IWIJ7F z>aP`n%)ek4k^1mpz8m&BXZ}GXX@H|2spM<2N^klIi;we}!_9r>7NTk6jFU%|tDwrQ zs8_Gt@73vgGs&_{t1FRG)$&BO0!d2nSY9opb8*edKIEPc+%`VIjEgLcNYjkT^Z=)n ziQ{~8QNIED(1xnpY_7+IkGX$nl||$@hdIYuGHs*zbZ_M|d0|hVN8kh}RKA?JWA#l` z&+$%Fsjr#lfQYg*WRBu#3lcuHb~jqb6j>Sr#xt0zE41}jw}|Hha+~kQ1bh5ijJ>uU zj{V@BtxEURufFWRs4#3cV5Vz(P|Uw%;e*ctQq*|rmg`3P>_OmF+Aue!H7s$7{mkaG)2U&* zmgkRMwA4A;V5jv_lRCj6qW*wD%x+xdrOE0_IdLb%lWdCPGXW99$) zz;({?+|cKHm*)rlg!r3X1&o}miIopl<_E@Q4@ab(Hxu6FdvV6*<>%xX!cxeVW|{Re z8;+T=c_bl)f*mE;&j)nhEl)vA=??7W%}!HAp3Ljl4)F?D%51i1AF`qsA;7mh0cZKe zGk29Le5noop@08eOzT+UlHLJ1%t$@lyZjDs^)MM+_6Cy^b}>U|*NZLr{FTd_Hf`Ud zp>oD>n@9r5uzA{G(yR=eZ=1kG>4T%ke>wG$B6$NybFcF&t8SDP#%hAOU}x|4)lXKp zf_*S=3+E*rUvbz$uy&Gk^i@{Ci9a*kY`CMPZS}_Grj&Bws$-lMq|^(&u#OdnwP4L; zbh1>gPCt#vCKY#)lL@K#6~@033~_Mx|Cpz*jc6W-*c%$;TNaGb@A zab4Eo%gN{f-n07tb6vgC&TA3CKT`E$ua)plY>aDVeCYY;Y>|Fr*g16UTUMY})hnvn zvgCFqC~={)a*00Bi3gMh{oX@SWv_eeEA6bTpsx*ioBO=?H$zVgIT?mDoBhr1M)Kfl zS5rj8RLvw*O1*Uw@++Tj7si1a>2`lV#QSYLQ-5oQk;}5P)=I3SJ0{}%box^1MbA=W zy4sk{hlfWTS0q`>Ocswj{wKMo*D>Ad8F0pK=aL$c%`=H8&uD2(8r;XzVe z-4)of$~JD@npBcvo+M?KaYzxscL#~q`Ihl&+4Z9idQDDv za!+hHGdFIBqmts%GXv(LI~_;3CI{2XhLgXstnC;_v=Y}}}I<-Z!Mg!+WlPxZlWj{YMZos6G3x%OB9Qee!In0U8@=c$xbne?ur z*`iCN)JtUA%Af}8C!U)4CwlrdV z1rko5wKTEkonh7&-0&`M;88pUvyXSLd&b%=D)|#=*zXwr$gl1YcLFyIdaAXBtXJEg z4;d{F4Aknavr%8auC7jW_%>`DfNCY(=e};(gMPm2tSE0E*~^u44bEJHu|UIvf&i&G zc^UfseCp2^_-DL`JGPZfCzuESeCYaHNhK@*sC6Aa&$C|Lf41|VD1Hp!f1>zL6h9>J f64D@2(hW+3AdL(qDLHfvIn>$n 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

t(;uD-uoc8)$CpHVCb{C?8KrCc;RZ()3# zr6qnqX9fSHbe + +With the exception of Github Actions, a Github Personal Access Token with **repo** permissions is required for deploying your MarkBind site to Github Pages via CI tools. + +You may refer to Github's documentation on [how to generate a Github Personal Access Token](https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/#creating-a-token). Ensure that you have enabled **repo** permissions as shown from the screenshot below. Take note of the generated token - you will not be able to see it again once you navigate away from the page. + + + To instruct [Github Actions](https://docs.github.com/en/actions) to build and deploy the site when you push to the repository, add a Github Actions workflow file in your project repo at the location `/.github/workflows/deploy.yml` A sample workflow file is provided below: @@ -92,7 +100,7 @@ jobs: -The sample `deploy.yml` workflow above uses the [default Github Token secret](https://docs.github.com/en/actions/reference/authentication-in-a-workflow) that is generated automatically for each Github Actions workflow. You may also use a Github Personal Access Token in place of the default Github Token. For steps on setting up your Github Personal Access Token, you may refer to the [setup instructions for Travis CI](#configuring-your-repository-in-travis-ci). +The sample `deploy.yml` workflow above uses the [default Github Token secret](https://docs.github.com/en/actions/reference/authentication-in-a-workflow) that is generated automatically for each Github Actions workflow. You may also use a [Github Personal Access Token](#generating-a-github-personal-access-token) in place of the default Github Token. Once you have created the file, commit and push the file to your repo. Github Actions should start to build and deploy your markbind site. You can verify this by visiting `www.github.com///actions`. @@ -137,8 +145,6 @@ Since May 2018, Travis CI has been [undergoing migration to `travis-ci.com`](htt ##### Configuring your repository in Travis CI -1. [Generate a GitHub personal access token](https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/#creating-a-token) with **repo** permissions. Take note of the generated token - you will not be able to see it again once you navigate away from the page. - 1. [Add an environment variable in Travis CI](https://docs.travis-ci.com/user/environment-variables/#defining-variables-in-repository-settings) named `GITHUB_TOKEN`, with the value set to the personal access token generated in the previous step. ==Ensure that _Display value in the build log_ is set to _Off_.== 1. Add a `.travis.yml` file to instruct Travis CI to build and deploy the site when you push to the repository. An example `.travis.yml` file that can accomplish this is given below: @@ -207,8 +213,7 @@ The `repo` value can be changed to your specific repository as desired. ##### Configuring your repository in AppVeyor CI -1. [Generate a Github personal access token](https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/#creating-a-token) with **repo permissions**. - +1. Ensure that you have generated a [Github Personal Access token with **repo** permissions](#generating-a-github-personal-access-token). 1. Navigate to the project settings page of your repository in AppVeyor CI. 1. On the left menu, click on __Environment__. 1. Under the heading __Environment variables__, add a custom environment variable named `GITHUB_TOKEN`, with the value set to the personal access token that was generated in the first step. ==Ensure that you toggle variable encryption by clicking on the padlock.== @@ -236,6 +241,47 @@ build: off Commit and push `appveyor.yml` to your github repository. Thereafter, AppVeyor CI should begin to run the build script. You are able to view the current build status by clicking on your repository in the [AppVeyor projects page](https://ci.appveyor.com/projects). Once the build succeeds, you should be able to view your Markbind site, after a few seconds, at `http://.github.io/` e.g., http://se-edu.github.io/se-book. + + + + +##### Adding your repository to Circle CI +1. Ensure that you have generated a [Github Personal Access Token with **repo** permissions](#generating-a-github-personal-access-token). +1. Sign in to [Circle CI](https://circleci.com/) using your Github account. +1. In the projects dashboard, click on the `Set Up Project` button beside the repo containing your Markbind site. + + +##### Configuring your repository in Circle CI +1. Once you have set up your project, click on the `Project Settings` button. +2. On the left, click on the `Environment Variables` tab and add a custom Environment Variable, `GITHUB_TOKEN`, which contains the value of your Github Personal Access Token. + +3. Commit and push a `config.yml` file to the repo containg your Markbind Site that instructs Circle CI to build and deploy your Markbind site to Github Pages whenever you push to your repository. Ensure that the `config.yml` file is located in the `/.circleci/` directory. A sample `config.yml` file is shown below: +``` +jobs: + Build-And-Deploy: + docker: + - image: 'cimg/base:stable' + steps: + - checkout + - node/install: + node-version: "10" + npm-version: "6" + install-yarn: false + - run: node --version + - run: npm i -g markbind-cli + - run: markbind build + - run: markbind deploy --ci +version: 2.1 +orbs: + node: circleci/node@4.1.0 +workflows: + Deploy-Markbind-Site: + jobs: + - Build-And-Deploy +``` +After you have pushed the `config.yml` file to your remote repo, you should see Circle CI starting to run the Deploy job in your projects dashboard. Once it is successful, you should be able to view your Markbind site at `http://.github.io/`. + +For more information on customizing your build script, you may refer to [Circle CI Config Reference Document](https://circleci.com/docs/2.0/configuration-reference/#section=configuration).


From 8c1f98a7d3e53a56dcf489b313f17f51812dc4d3 Mon Sep 17 00:00:00 2001 From: raysonkoh Date: Tue, 9 Feb 2021 13:58:17 +0800 Subject: [PATCH 5/9] Fix skip ci commit message --- packages/core/src/Site/index.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/core/src/Site/index.js b/packages/core/src/Site/index.js index 61dedc6abf..19e6c06942 100644 --- a/packages/core/src/Site/index.js +++ b/packages/core/src/Site/index.js @@ -1112,7 +1112,7 @@ class Site { deploy(ciTokenVar) { const defaultDeployConfig = { branch: 'gh-pages', - message: 'Site Update. [ci skip]', + message: 'Site Update.', repo: '', remote: 'origin', }; @@ -1142,6 +1142,7 @@ class Site { const options = {}; options.branch = this.siteConfig.deploy.branch || defaultDeployConfig.branch; options.message = this.siteConfig.deploy.message || defaultDeployConfig.message; + options.message = options.message.concat(' [skip ci]'); options.repo = this.siteConfig.deploy.repo || defaultDeployConfig.repo; if (ciTokenVar) { From d0410fa080babd599f0f1c6035a131f025435adf Mon Sep 17 00:00:00 2001 From: raysonkoh Date: Tue, 9 Feb 2021 15:16:24 +0800 Subject: [PATCH 6/9] Fix failing tests --- packages/core/test/unit/Site.test.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/core/test/unit/Site.test.js b/packages/core/test/unit/Site.test.js index e677bd4646..ec7f2a3b63 100644 --- a/packages/core/test/unit/Site.test.js +++ b/packages/core/test/unit/Site.test.js @@ -231,7 +231,7 @@ test('Site deploys with default settings', async () => { expect(ghpages.options) .toEqual({ branch: 'gh-pages', - message: 'Site Update.', + message: 'Site Update. [skip ci]', repo: '', remote: 'origin', }); @@ -256,7 +256,7 @@ test('Site deploys with custom settings', async () => { expect(ghpages.options) .toEqual({ branch: 'master', - message: 'Custom Site Update.', + message: 'Custom Site Update. [skip ci]', repo: 'https://github.com/USER/REPO.git', remote: 'origin', }); From 68c0738f855971afdb48d5a8df076274f1214989 Mon Sep 17 00:00:00 2001 From: raysonkoh Date: Thu, 11 Feb 2021 10:39:57 +0800 Subject: [PATCH 7/9] Update userGuide - Link Travis CI first deploy step to the section on generating github personal access token --- docs/userGuide/deployingTheSite.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/userGuide/deployingTheSite.md b/docs/userGuide/deployingTheSite.md index 55074f9125..1a5bc954ed 100644 --- a/docs/userGuide/deployingTheSite.md +++ b/docs/userGuide/deployingTheSite.md @@ -145,7 +145,7 @@ Since May 2018, Travis CI has been [undergoing migration to `travis-ci.com`](htt ##### Configuring your repository in Travis CI -1. [Add an environment variable in Travis CI](https://docs.travis-ci.com/user/environment-variables/#defining-variables-in-repository-settings) named `GITHUB_TOKEN`, with the value set to the personal access token generated in the previous step. ==Ensure that _Display value in the build log_ is set to _Off_.== +1. [Add an environment variable in Travis CI](https://docs.travis-ci.com/user/environment-variables/#defining-variables-in-repository-settings) named `GITHUB_TOKEN`, which contains the value of your [generated Github Personal Access Token](#generating-a-github-personal-access-token). ==Ensure that _Display value in the build log_ is set to _Off_.== 1. Add a `.travis.yml` file to instruct Travis CI to build and deploy the site when you push to the repository. An example `.travis.yml` file that can accomplish this is given below: ```yaml From 6d5d58b0c7b43f8fe40a86b2a9387a0d2428f20c Mon Sep 17 00:00:00 2001 From: raysonkoh Date: Thu, 11 Feb 2021 10:41:51 +0800 Subject: [PATCH 8/9] Fix grammer in userGuide --- docs/userGuide/deployingTheSite.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/userGuide/deployingTheSite.md b/docs/userGuide/deployingTheSite.md index 1a5bc954ed..e95ee80909 100644 --- a/docs/userGuide/deployingTheSite.md +++ b/docs/userGuide/deployingTheSite.md @@ -145,7 +145,7 @@ Since May 2018, Travis CI has been [undergoing migration to `travis-ci.com`](htt ##### Configuring your repository in Travis CI -1. [Add an environment variable in Travis CI](https://docs.travis-ci.com/user/environment-variables/#defining-variables-in-repository-settings) named `GITHUB_TOKEN`, which contains the value of your [generated Github Personal Access Token](#generating-a-github-personal-access-token). ==Ensure that _Display value in the build log_ is set to _Off_.== +1. [Add an environment variable in Travis CI](https://docs.travis-ci.com/user/environment-variables/#defining-variables-in-repository-settings) named `GITHUB_TOKEN`, with the value set to your [generated Github Personal Access Token](#generating-a-github-personal-access-token). ==Ensure that _Display value in the build log_ is set to _Off_.== 1. Add a `.travis.yml` file to instruct Travis CI to build and deploy the site when you push to the repository. An example `.travis.yml` file that can accomplish this is given below: ```yaml From 7b0a536db4e4171d4d2919b417bf4d6a305c92c9 Mon Sep 17 00:00:00 2001 From: raysonkoh Date: Sat, 13 Feb 2021 12:54:38 +0800 Subject: [PATCH 9/9] Update test according to PR comment --- packages/core/test/unit/Site.test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/test/unit/Site.test.js b/packages/core/test/unit/Site.test.js index ec7f2a3b63..22d7ae2622 100644 --- a/packages/core/test/unit/Site.test.js +++ b/packages/core/test/unit/Site.test.js @@ -372,7 +372,7 @@ describe('Site deploy with various CI environments', () => { process.env.GITHUB_TOKEN = 'githubToken'; const genericRepoSlug = 'GENERIC_USER/GENERIC_REPO.github.io'; if (repoSlugIdentifier.reposlug) { - process.env[repoSlugIdentifier.reposlug] = 'GENERIC_USER/GENERIC_REPO.github.io'; + process.env[repoSlugIdentifier.reposlug] = genericRepoSlug; } else { process.env[repoSlugIdentifier.username] = 'GENERIC_USER'; process.env[repoSlugIdentifier.reponame] = 'GENERIC_REPO.github.io';