From 4337fb1c270f1183e201baeca6fcedd0971fdd77 Mon Sep 17 00:00:00 2001 From: Yeol <136407746+13m0n4de@users.noreply.github.com> Date: Fri, 1 Nov 2024 03:13:07 +0800 Subject: [PATCH] =?UTF-8?q?docs(readme):=20=E6=B7=BB=E5=8A=A0=E9=A2=98?= =?UTF-8?q?=E8=A7=A3=E5=8F=8A=E7=9B=B8=E5=85=B3=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- challenges/misc/wireworld_level1/README.md | 99 +++++++++++++++++- .../misc/wireworld_level1/writeup/diode.png | Bin 0 -> 40289 bytes .../writeup/diode_left_to_right_0.png | Bin 0 -> 9693 bytes .../writeup/diode_left_to_right_1.png | Bin 0 -> 9707 bytes .../writeup/diode_left_to_right_2.png | Bin 0 -> 9698 bytes .../writeup/diode_left_to_right_3.png | Bin 0 -> 9698 bytes .../writeup/diode_left_to_right_4.png | Bin 0 -> 9690 bytes .../writeup/diode_right_to_left_0.png | Bin 0 -> 9690 bytes .../writeup/diode_right_to_left_1.png | Bin 0 -> 9697 bytes .../writeup/diode_right_to_left_2.png | Bin 0 -> 9697 bytes .../writeup/diode_right_to_left_3.png | Bin 0 -> 9698 bytes .../writeup/diode_right_to_left_4.png | Bin 0 -> 9663 bytes 12 files changed, 94 insertions(+), 5 deletions(-) create mode 100644 challenges/misc/wireworld_level1/writeup/diode.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_left_to_right_0.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_left_to_right_1.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_left_to_right_2.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_left_to_right_3.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_left_to_right_4.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_right_to_left_0.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_right_to_left_1.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_right_to_left_2.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_right_to_left_3.png create mode 100644 challenges/misc/wireworld_level1/writeup/diode_right_to_left_4.png diff --git a/challenges/misc/wireworld_level1/README.md b/challenges/misc/wireworld_level1/README.md index c2a894f..b3ced56 100644 --- a/challenges/misc/wireworld_level1/README.md +++ b/challenges/misc/wireworld_level1/README.md @@ -1,11 +1,11 @@ --- title: Wireworld - LEVEL 1 author: 13m0n4de -difficulty: Baby/Trivial/Easy/Normal/Medium/Hard/Expert/Insane +difficulty: Trivial category: Misc -image: +image: ghcr.io/svuctf/svuctf-helloworld-2024/wireworld_level0:latest port: 80 -writeup_author: +writeup_author: 13m0n4de tags: reference: name: Hackergame 2020 / 超简单的世界模拟器 @@ -16,8 +16,97 @@ reference: ## 题目描述 - +你知道 [Wireworld](https://en.wikipedia.org/wiki/Wireworld) 吗?它是一种特殊的[元胞自动机](https://en.wikipedia.org/wiki/Cellular_automaton),用于模拟电子电路。 + +你的任务是使用不同类型的细胞(空白、导体、电子头、电子尾),在给定的网格中设计一个电路,使其满足特定的条件。 + +> 元胞自动机 (cellular automaton),简单但强大的计算模型: +> +> - 由网格中的许多小单元(称为细胞)组成 +> - 每个细胞有有限的状态(如开 / 关) +> - 细胞根据简单的规则更新自己的状态 +> - 这些规则通常基于周围细胞的状态 +> - 虽然规则简单,却可以产生复杂的行为 + +> Hint: 页面显示「Loading...」请等待几秒后刷新网页 ## 题目解析 - +请先查看 [LEVEL 0 中关于元胞自动机的简介](../wireworld_level0/README.md#%E4%BB%80%E4%B9%88%E6%98%AF%E5%85%83%E8%83%9E%E8%87%AA%E5%8A%A8%E6%9C%BA)。 + +挑战描述: + +> 还记得你在 LEVEL 0 制作的电路吗,它现在被整合成一个组件——时钟发生器。 +> +> 左右两侧的时钟发生器会先后射出电子,你需要让右侧检测器收到左侧传来的电子,而左侧检测器收不到右侧传来的电子。 + +上关制作的电路其实叫做时钟发生器 (Clock generator),这种装置在现实世界的数字电路里非常重要,它可以不断产生固定频率的脉冲信号,用于同步电路操作。 + +现在它被整合成为一个组件,应用在关卡里,用时钟图标表示。悬浮在组件上可以看到它的属性,比如时钟发生器的周期、哪一步启动、哪一步结束。 + +同样的,悬浮在检测器上可以查看它的检测状态。 + +这关左右两边的时钟发生器会先后运行,周期为 4 地产生电子,要让右侧检测器受到左侧传来的电子,而左侧检测器收不到右侧传来的电子。 + +简单的画条导线连接左右是不行的,这不满足「电流能通向右边,但不能通向左边」。 + +这种单向的通道可以让人联想到现实中的「二极管 (Diode)」,它也是只允许电流单向流动的元件。 + +那么如何在 Wireworld 中构造一个二极管呢? + +回顾细胞规则: + +- 导体只有在周围有 1-2 个电子头时才会变成电子头 +- 当周围有 3 个或更多电子头时,导体不会被激发 + +这个规则给了我们一个关键的启发:我们可以利用“过量”的电子头来阻止信号传播。 + +- 正向传输(左到右): + - 当左边的时钟发生器发出电子时,电子沿着导线传播到右边 + - 由于这时右边没有其他电子干扰,电子可以顺利到达右侧检测器 +- 反向阻断(右到左): + - 当右边的时钟发生器发出电子时,我们可以设计一个特殊的"交汇结构" + - 在交汇点安排额外的导线,引入更多电子 + - 当右侧电子到达交汇点时,周围会同时出现 3 个或更多电子头 + - 根据规则,导体不会被激发,信号就被“掐死”了 + - 这样电子就无法继续向左传播 + +以下几张图是这种特殊“交汇结构”的示例,观察从左到右和从右到左传输过程中的细胞变化: + +从左到右: + +![diode_left_to_right_0](./writeup/diode_left_to_right_0.png) + +![diode_left_to_right_1](./writeup/diode_left_to_right_1.png) + +![diode_left_to_right_2](./writeup/diode_left_to_right_2.png) + +![diode_left_to_right_3](./writeup/diode_left_to_right_3.png) + +![diode_left_to_right_4](./writeup/diode_left_to_right_4.png) + +从右到左: + +![diode_right_to_left_0](./writeup/diode_right_to_left_0.png) + +![diode_right_to_left_1](./writeup/diode_right_to_left_1.png) + +![diode_right_to_left_2](./writeup/diode_right_to_left_2.png) + +![diode_right_to_left_3](./writeup/diode_right_to_left_3.png) + +![diode_right_to_left_4](./writeup/diode_right_to_left_4.png) + +可以发现,从右到左同时出现了 3 个电子头,于是左侧的导体不会被激发。 + +于是最终的电路为: + +![diode](./writeup/diode.png) + +## 其他 + +其实本来这题有 LEVEL 3 的,阅读源码的话也能看见我把二极管也制作为了一个组件。 + +目的是为了 LEVEL 3 中更复杂的关卡,预期是需要组合各种门电路,利用各种组件。 + +但因为比赛时间等种种原因,没来得及制作,有点可惜。 diff --git a/challenges/misc/wireworld_level1/writeup/diode.png b/challenges/misc/wireworld_level1/writeup/diode.png new file mode 100644 index 0000000000000000000000000000000000000000..a39e371f57d50b025912742fcce8dcf883bb44ae GIT binary patch literal 40289 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 literal 0 HcmV?d00001 diff --git a/challenges/misc/wireworld_level1/writeup/diode_left_to_right_0.png b/challenges/misc/wireworld_level1/writeup/diode_left_to_right_0.png new file mode 100644 index 0000000000000000000000000000000000000000..05edc58b7ea87f9f0536a468f360c61bec9c81c3 GIT binary patch literal 9693 zcmeAS@N?(olHy`uVBq!ia0y~yU~^z#VA;UI1QgLp7CZo?I14-?iy0XBj({-ZRBb+K z1_lKNPZ!6KiaBrY8uo>xOSN6Rt-M@rBO804M>^9j?F^OW#?=|qoZlXt9JMISL9il7 zi9L>aRwRS)6gAiRyBEIu96opQqGxqg3%y?m#=LtcFSp%vZ~gag%dh8u+n2<+{Bh## zZKd@K^-qQsZ=1FG>YTODa!k`#TSlL~nRO0HX#44~`khY>1D(k5;JnZV5bYs6Fx2mN zmhpf7-Mu|OZvW4yAF8ztVr44}X{E@Bj0?zbR~wBq$izYR{G@tew#Ud7K=S-){cq-(1!1p9;`;?_LI*Ew*Dx^LMh%!Ruu!E$Ot>9!=HsE=ttYZ_X& zFkQRZ<(aXwnGwhh3*-Tslcob?GVI%xcfe}$Mi4VE#x`N@$p{eBJiE7{R4o~#_|Af< zOk!ZM7rXcJ{}8UL`kVG%7$mS`iz(Bz5>_CqVDl?R?_Hqeyrb}LgK8{D-v-n8NB=Ir zHa~rJ^;14z$TLK^zRm{*TO%ac5)`L4Y)xW=y6@>5`3+%b93X+RVTCR8wJynwqq9Ng zOxxyvAj*(=ZG|zAb3k-Q2@>z>ju<4~)SWI!ywG3U7_*P^z@p&|Fd9USVX?4xJ(7I| z%KOrgH2VIuLegmdVkd%E!0mVZu-^IFkDq|#-^b78%PZe~-~V^h>EiisB7w?;zP!zg zE93<_^u><)iaW0_J}=nzm~r}-Gff+*pN)3^{`2$mJ#(A8KyXhTXeR`izj^oXVc~n} zc`r(A)>Qvdo!i%*dppN85i@He=l0vF+V2m5B2dA1lo}0!!J7)eiM(Rf?%(al_vTkD zy8Lm&yN}aLtmL-kZob-rqYi^6^t|b7{|GyQ47kJsF8fBQ(U2IFi2Ym4;lDZ@zj*FS?Q)TxVxOs_s#WVKfK^V-Ua-ddyNX zOY}X=+(1JbOc+P0(I6PKsQ{kN8P;98`}go;V6*+=%ZiBaKfJAE`EPH#nRN)>{1x@fA9S&QZ3s*)gSTBnq08Vo;eh|H zzjx*5?|bNa{pX*1kMF;WvOXz(!-> zshpwi(%bj{ethB8-*xW!ce($5*MHjd9S-A;ew(v(^VM@<*4P+!o2JT-7W14Dw!eGt zGBB_gTe~DWM4fJ2JM# literal 0 HcmV?d00001 diff --git a/challenges/misc/wireworld_level1/writeup/diode_left_to_right_1.png b/challenges/misc/wireworld_level1/writeup/diode_left_to_right_1.png new file mode 100644 index 0000000000000000000000000000000000000000..71a10094db1933284e2db682c78d05b37afeca7f GIT binary patch literal 9707 zcmeAS@N?(olHy`uVBq!ia0y~yU~^z#VA;UI1QgLp7CZo?I14-?iy0XBj({-ZRBb+K z1_lKNPZ!6KiaBrY8uo>}lx(|r``VJ^jciOxLDmb>S$kcw-Y<;g+uB~(<+8RxNn*JR z%NoX;+y@*_YW`Z*xa)j;tzXxJx~jnG7Z$%eefI6$zuT65e}C`Kw@+X1h3h;hvB|l; z?OpsA)tg!8!iu-e+I)4++GjbY>8mZH&ms$z-F&4#y+#7)LWVz)OkyB9bAYJ*HRto| z{=Yk$uOI(^MX=uE=Xd}7yE{Ao&#NM5Mh1oht#kX@-Rlmd*8KhT_4mJqeAWs1KjxWz zie=3HUB5MQ^|>__#z4p0ux&5@E?)P@GOG6Hk4J~j*M9nQcw4Uj{kmNritYDTZOgq~ z|Nq~4Zu{@o?d$%}yZpnalM?c*8lk#T&NRGGDt1w@7Sj{Q;|JL(a8eZyqSpVtk!*RAtMfvp`2M zaA&fv*(^HwLJ>PNkhf-$1kju_5g?gA1$P@t)sjI@wJG`vXGUeStTC4428uoqjM7X1 zNq^w@yXiY){UKoRzpn+QT!!h}+zw1y2V%*st%9+3=0RCEX6YCHfBW?H(^pqv)_#?Z z&`yH}V}yrl!rB>)kWfpo{LQ{b)c8V|ImmrFS?3$JCb30*OapQnmcA9<5O&4^650i< zda_77Q$2AcUaFoT5^ri<-hn7XW@vbb{*GkKKFR|PkMQ@$k?gY(vNuAwopvC(z)G&H^4;X;@<8%=_<10?zW&d?)5Y>{b~9b;Qho9K?w&_dKxbbltS;Yw zeewB+ImemxURrY>(~JK5bP_+vdkyy92SDMc;7b|x_Sx&}>#Og7C@?oSubvMy5CUwH z%z;T9DDJTQapK*_`Y%CQJ#957YQ9F#>UZ>_E7=D$dk;{lGHUHWmFHxJJSdePaK3xz z-re`Lhnazeerf;yC6_;L$eq1b4Lwz()oHtPp1N~@$}$h(4IpDisnH-9l&JueIKkk7 z7P$#s7F@kA;T)w#gJAHc0$4g{D43d;_x|1YeGeP`jvwB2JpR(liW}R`h6&^DnSjdr zow3_K@#%mJxx_L`jRwKsO$G3TzQc<^^V~ZB>zB97_wq*`0QN7o<^KNk@#wvFod+jB z^Uq#?P;!1aa%X)s{g3ATp;7J;k^bjy|Amy+*QT9|{`)-t|Bc@hSpR&z|Nqvuw=Zw| zSIci|IKO^guHEhQnr-KQ=FH!G^-iVs{BYrackRGqS8q2>Ee8)*Oi&x8MuTARrUH0| zI1svP=ic4-f48w)$@0IJtM>#B+uSyb_Pqfcn7vcEdU?M6+u9RMcHjZZ>HYfO>{1y0 z=hfe+;XU_b56al>X!-{R?BI>{QJ29Yhxqi5Hi!f55tQ9LWj#8GGvvpy{#`#OE21gD z;3yDNGM9PH0(R}!3AJ-u`Q!owW^$?hitJ~kc$}QVVRo8phv$Tb`6a)1+uPM1?q2u# z=icM{FPGZ&Ki+WlP?&Y}+nlYNub#ug*xjG=badQ)hz((nNawbSTjXrrfVD)27WVIyqklHC0*!E()i6qp2Em|B z1@KhPVE^)4d40{VHu2c!pR4=pm%px&JD#|@6?=&eE$roQp5h-GBUor-%l{a;bK+wa SUkTQO0>IPN&t;ucLK6TbK&-C- literal 0 HcmV?d00001 diff --git a/challenges/misc/wireworld_level1/writeup/diode_left_to_right_2.png b/challenges/misc/wireworld_level1/writeup/diode_left_to_right_2.png new file mode 100644 index 0000000000000000000000000000000000000000..efd85fd073238fe33e62faaea7d4a2c072b017b1 GIT binary patch literal 9698 zcmeAS@N?(olHy`uVBq!ia0y~yU~^z#VA;UI1QgLp7CZo?I14-?iy0XBj({-ZRBb+K z1_lKNPZ!6KiaBrY8urDcO0`|QtsEqftx(`{ip4}b!`pAB?Uw0}Z!s_NSSPxJLqS#P zgOtE#2LFIrSAM0G=fkJ3_ri4^l-T6l z-u5p3i|Wm+b795XW^KMYXYI2b)AZGr(Pxo`%5J`jpI##YbRxr_U?wpTojE{Myv=j- z{nfvpwNGDfe^qn($Det1-@l!8uPfcT5a_B0hy0Eo?v*c)l((y?xF`Q%Bf}@b^O?%$ zxgu`=Uwt;JH0|hYMxZLOJN7nlKRTahe7!DzKmNzg`1;?kx8>gd^XYl({NMkscIV#y z_xt_-7@)+zZeWE$Y5ypD-8hsszia4W-+XgrYvC0hKniZehB1 zv&%DMXEQJi7{UU1faav>0GSMSJM#`$P2LD%=Ec}1%sm+aVwz|7Hk7I*gB0IcFclKt z<}bSU^8aA3tN2;9_1jNZFI$$3ZN-3HZIkiHG3@sIu;K7IZ4 z)zwe=!0vT@ZM`Avj042y8zy)ih%#heTVV`Td!XnWe}s100;tEX%wxtpO_I{8eMVeh0|2 zCBS6%?(2(Ui`yR?ysOd<-bh_tANwg0D8ulsJ+32k$aRH4T8a%3P4F5 z0@ht3GojyW1l7w9vl>RJ(I6PKsQ{MDfz9NX@BTe31h!^gl-R7P{-Zj#uRZs6j%gx# zcLcSEaywP~{Q*$3Q^9wX8V!QMn+o6wyz?|rNuNzE9)CvZt^=Diqb2=lEjRcpdUyuFUDAV6{@;&(K`H-re*N7X)8y4? znW1Le`5!s+KUV@rsem$e>(&13t_2TXjn)IBb>NU_2EenyXgx66EFZMZavD~s@C<;v z9zdIb7;W(n%d-7J{o6Z^6PXwVSPr^gw>-dAwP6$Awd;{D9x$>_T$!+F{?{49e2@;2 z6Y4I#egE&r7he5c=bnF;`|o%Cr%m7CFz)ELIa@bhJr`z;jbXQGsytO@5h$F57}ZYc zG|n&&L3lF%FgdUO`|;)Z6&FkG_J99T4ovKYGTWkVWTmg3yS8lGt(#aF-zTp9Gtvik zYQuK|*8;G1fYt(xj&luxp+0zuZzW;KmUH{_^R}Wz?(IJKX z?*5#o>;t;WVt^KRj9NQT%WB9Bd3ZAav*h;uzaL*p$Cb=I|K9fB+;yKTW!l$@VK334 mg?(*`w*3Z>2_C{ji~7y(Xd54UaYLs9$n~DCelF{r5}E+&k}|yj literal 0 HcmV?d00001 diff --git a/challenges/misc/wireworld_level1/writeup/diode_left_to_right_3.png b/challenges/misc/wireworld_level1/writeup/diode_left_to_right_3.png new file mode 100644 index 0000000000000000000000000000000000000000..560cff779634b64296b0d05fcd8d12cf777b725a GIT binary patch literal 9698 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 literal 0 HcmV?d00001 diff --git a/challenges/misc/wireworld_level1/writeup/diode_right_to_left_0.png b/challenges/misc/wireworld_level1/writeup/diode_right_to_left_0.png new file mode 100644 index 0000000000000000000000000000000000000000..4c7cc48f98fbd9c9ea3945231f3870d168cb0e27 GIT binary patch literal 9690 zcmeHNdr%Wc7{3q*MMUZ&bx?UYRjUTImRc&%L@bU{EjW&iyaXR(Xd%1`F(8CQ2kJBUB_I(JjS$BeqEOHfAV4N!L|&qV@Ce-t7}F_Er}77}US{sT{q}CZ z-Tn5r-|hZ3$F>J-c9^kX1_VJ4{#*QZKoD*N1X*+6vjREp`)7-Qu#4XkoCra)ZXp-u zG-1|42y%n`{d{*O=RIv+8ynW)^uv9r2*$!UG6^OAix1h%YyC`tEmsDWYn~iDp^XcJqg%OI>lGjS%w;%La%IInyH=>2kfSM^!PZ zeUV#CyK^8-kgF1=4rfN}j$IC#RmQFBi&xu*Rd>kQY@Kb|3Rc>U#Kzk^tA>HGC>}XK zxQ~LoWutSnK7=te_~fRX(f3Tuk0Ff=4QH~4C2~@%azG^<>%S=IS4L=Da`JWxxXD`8c`~8(p>JrK;%^-eSB`+e1g!WDu79hL1y>R(43Wa!)?| zYX6u{A7C(lK+Dka*2py}rbM*^GlL>c z6$Sliz;seg&5&NUF5=-&-OKXCf_L2u@!T5nwvAHfnLy)a?L+MB$AENiJq_D%?k8ki z;mHUlj zP%R$GJKl+N*CJ47!TLEmcDOM3O86@J$H=3VA*#bA`*0II&)jL%kmdAkRW8zsGd!j! zWG!~0V;4Zj2$X_x2L?3~G0{~sC!D>jwbooye{Zfmnq#hMmAE3j$AkmIeviX*$#*vp zS`Y`szo<+%tMB+=j#)uZO{ev%f=vY-ugr*6foUV~(N#&2dp4Wdq`9UV8<4J+GpzXAo|@?D?(dMN zs(O>?bo%&!0HYAp#1#x5l~lwfU#RQjcK4l4@^azF@ai*OJHw5WKK3kp9g7S%>r)IW zP#0J%3XB+Uz1-dH>Y}S`I~E`jmrEjQwaE|pGV)xr@7Cm>vS%M=AO;HUf>43Fz+zEg z1UYhxKmDdapXH8}ueC-6>H^C}0fJHEuk0&2SeJv-a$!nMsD43SZ_3|x z=gI?wo~dmfrnvV&i%)g;_HKC41baYqAPkhwArS0G8@@1{1Pgb53_pik-;}}$bdBg@ z+_nn8KEhQ*RU`D1cbtaDXdh7+#KpoM@W?Qzm&7Oy{iV#Oh&I&2j3E|N(!ynW`mm9^ zDwUF34o@dJHBFotTJ3bPk#FdE(~N+2X}bYO)U)vX<0PM=)RCq6CyvG_sq6NdSlAAj z$Ve;EEw)bv93_QwuAf|q`v_p(oT5FbxZ`bP=eEp61?mFJMS%(Ttt*?GNj}{S@mv6S zTDGtd(3CN`@UqvOKfGM-3#b}rl(Dc_#^S#*Y9qz@-phBmK}X!m9(&ma`8tvtZVY+Z zJNp#4eS+WioaX{~@}HOOK~4t#f5J2qM1kd_&93aqwoMQ8BQ0u`){8Akco?;plMf%{ zH!7kcCrLDK=08JudW&VJ(bJQc2S_HAL+Q0$J%+*O4r|J5I&>~$0T1*(C&Xm?&@O5T zufB%tJz0Wy^|UJ*?TyjiUHIi<2(n=z{{=t~E-d-%#svA^Q?X2)9o^ zCoJNJJe)M5PXv42FYpLT>AV}P$Xm@FnNZGRCk+coM27gsEB*QkiLj1F%vN*jZ%!W3 i$Ai5fo2q#`3Hvdzd&F)ce3yju-+xnp-<6Gfj{F6QQM^|G literal 0 HcmV?d00001 diff --git a/challenges/misc/wireworld_level1/writeup/diode_right_to_left_1.png b/challenges/misc/wireworld_level1/writeup/diode_right_to_left_1.png new file mode 100644 index 0000000000000000000000000000000000000000..4f726c4534b90105112faa2d040dc18c4256423a GIT binary patch literal 9697 zcmeAS@N?(olHy`uVBq!ia0y~yU~^z#VA;UI1QgLp7CZo?I14-?iy0XBj({-ZRBb+K z1_lKNPZ!6KiaBrY8uo>}lx(|r``VJ^jcuGA9&a1cSbJTv-Y<;g+uB}eCA5{PD`Ae1 z?*XX^dl_V=%vqGbYvH@k;qxae?U)~TMfJ;y-$ljM<@?vZJp8+Secb-Lzq?rH^tI>S zzV^3!pGx%En_1_=inq<$e09#+XE~+9?Le>3kBb=ddNF!xCy zWA^X*t&ywGt*I~usYhvOnA{Wxh7EhZV#;auv=@Su42VT#61*v_U;%X#+_5fbf^g z_t^h%f)fx6P=G-%x3@tx7G#P|nx-@t@$lm{9*;qQ^{vk|;+jBv{X&!2WkO8qY+GhgeH%s4t5 z=+Ot77P9=iZNA^^?gx^eXFms$&+pgYeY%tX+X|qYIe!(JuipWR_mVsJ?!N!}qS)g0 z#|H1Jl!G@?SMQJcln9hz_>j&S0iu^sNZqaZ`>XW5wA{OA&(hutgG>a02K6`3zP+mh zioYnaSyTN-buK8U=a?pEGq<_$vLfR94{s}3{@dGbW*x%WF##9s+fRqx zYXmh;9cF>ssH4KEB6kJ6YkIF;=K-*@F?;<%$@$^P zJ@uWj+dlDudT9)oSVpPQAQ-%<0G;HVrfswexeB-EH-A^WXmedE5S*T?%9U-|zd);+u`_)<3I>JNvWz z_h>yZTI3JPA|Gp81fC5TM(csmYHI{m+3*a2yB;7g9Z|_XI&d*)2QG*oSo@#-oUcoS zqd|c~Z`V1-unWyoOE>I0=fuvh(c!}?{CCZ9N{7cO99^fmc6d(sFgdUO`|;)Z6&FkG z_J99TzU$ocLYZw*H?q=K&s|%#?bb~!jPDcI{uv#vr)(s7XpVmmF;~M=dBgmY-@EPY zY7cj>`}}k7@%@)e?fM^YxOyneI{IzS*3DPXVPWj<&v`oHOZ!^!?)wZ3tnHw+0HYHZ zLtyR(p5*^5xqbid$CuJ^C3DZexBWMF-RDY~_O)WzOLS;qUz?(BzX4=|hwvyh8U%wk z6~I&Z1NFQA-u3(6|FGzFP2KyC?}3T^u|>|-4OmNbXkq_OIr`_29Jjw^pY9VMTjn9d P4)VXJtDnm{r-UW|XGpbO literal 0 HcmV?d00001 diff --git a/challenges/misc/wireworld_level1/writeup/diode_right_to_left_2.png b/challenges/misc/wireworld_level1/writeup/diode_right_to_left_2.png new file mode 100644 index 0000000000000000000000000000000000000000..9d3c8bb83ada406d4a6fde4e4f87b89e543275f4 GIT binary patch literal 9697 zcmeAS@N?(olHy`uVBq!ia0y~yU~^z#VA;UI1QgLp7CZo?I14-?iy0XBj({-ZRBb+K z1_lKNPZ!6KiaBrY8uo>xOSN6Rt-O5O9yTVW@ z+TY@}p4(<^zB*^^vmDd()t1p`Z)TkfD@GF98N2P*byaybpc5JXPibHUQVz2QhPq`Q z|7rI9{neizJ$-%L>Z#GbduQL@-~02-dOdRyptE9bysW5r#2#~Ox&QoqZ}@-2F#PP% z&s2^V*|6<@`0TB(&UBeGGcX(oE~qZAf2clh@zwbHegTrH|9`*N>;1WtU;qE9cir#De>ffjgU#;$Uw23CdptmkKCsw6v)&Nq;{@d{vH9nH zCmhaosagBKwcx1AmPcoSiW$P+XS1%^EIRoD*m{PTjq9a1oP%pFn5rj;%uUr3N9LO9 z$s%)Ezi~#SYpX33%?HIt#I1RZuXErQb>Fg2n7ejHOV}Pspk#vO)P~Y+NkUN{(}28& z)-6oeZgzQQ>}+NPa>D|7faav>0GSMOvE~VLPey>4{xP<2<~1qC*FMKU3ACaqj0-Gn z<9Po~?E(7_z~JBO4^sc&(lw5VOQJy5fytr#P?qp@UI>dJ`m^dg{kVN`>*93F4M2*t zqV6|tO=5#NDTL`-mt@A#*&r89+gyJj%8+?&g)vCsqHjDA+Gz`5-n3)PKFR|N&Igx} zd5?>bdC!E9c`skHtr0awguCd5urm&jI4k%nXP>ZkMk6Gw9&}cmX+Stk{b?bR%jPZ6 z=Y>0_Vflj+n>U~Cys!U}JN%V3rAC8b@TLNILT^}Ig1>pb^K;nwdv!N{PhhP9_AhR4+h6~u^1ZXzhr9Co z^Y*c&*TkXp(aUb0vfcnP+(USj8V!QMn+o6=;DOfNJNNFsuRY8REaFT1_b<8paYOFx zwQ4!0<@a8#x39kiO8LM+nb~X8z(O}~^HHVdd;@;KlcDftnO55&kq;= zch?R)YBkz<1qScn?Xr!!3>G=?TyP+C*Ur7W@BeON2Xf1G&REZX-5Z2a|3 ztw$NL-JSDP7CcC|gmaV{4T8a& z3g8)_U}|38`*+{>J!}MyPwqM%f9Yk#jcsScgpuYR5Y2q}3*r)eGzAzO1!79(GOt;{uKhZpc5W-5T!6q#F125g{hq_TH3!cL57h7ed)M!O z|HGo!HFfVlzAu@3{;@^Q)(uzBg;__x&Dpvc3*((~^v}@&9x?|VhS(U%kajLSl{47C z{8nCH^Q%of_W9@P{`%#wYvhh6u5Mjhw(Zu5!v6tx3!v6P(u)5Lt*U|ac zLEmMDr}6{-yZ+vlpTF;+>-C?1?mfQ$(rW(k!W&tM*h_RsVSm?s+b8CsIQ_V#z9Ke0 UcBz8kH<155UHx3vIVCg!0B9c^i~s-t literal 0 HcmV?d00001 diff --git a/challenges/misc/wireworld_level1/writeup/diode_right_to_left_3.png b/challenges/misc/wireworld_level1/writeup/diode_right_to_left_3.png new file mode 100644 index 0000000000000000000000000000000000000000..a4544994c4939f580e6dd9277f7886c6ef25fdea GIT binary patch literal 9698 zcmeAS@N?(olHy`uVBq!ia0y~yU~^z#VA;UI1QgLp7CZo?I14-?iy0XBj({-ZRBb+K z1_lKNPZ!6KiaBrY8uo>xOSN6RJuNtTO(K)~l6ei^xTH?5Oy@saw8HkrOOGpD8cf!z zvkqiC%wsih%nbUnbN9;Mf37}X!trjocqymtt9^Iw+`F5fUG@LnTmSX<-_#yu@;iQb zTkh+BuJM!BKFcvpUu_wE_GZ?(u;OjAHea2CB$PLO?Y^B)4g;OY@Zi1B1`zEbJTTPn zZ-)DS{@uOZesA69kmWJQuI~o%;(uIy+6D~C25xIv{_}qtPXGAx^Yi0>4f?DT^ecR% zD?<+4`WK&jZI!Y1JszOr&mVky_iyX`ioUSw?Er2u&@66x6}9QMYcRT3-bT@3&H!CvyZC4xTh}fKT?a} z9=ZN2o+I4H31VNt*L`6JtfCD$*H#z<^&SxYy^Ha64qSEkOCc2QvmzAk<4Y*qg!v7n z+meK$KBfVUYFPSKa>KbWm_-{_{AIp&v&%E%=xj!y?6hFch;(hWg`)XvKwgB0cEa4X zGg_uuO8|KZqDMjI90R4l2PaFJug&aX1u{RJxe90ItQFjFE=30@+K`^Hv;ic2!1&AC zd+dLBfx*A|J10hRODprGH-b*(&M z?Tp5-J(56Pg5uPMtx0T9zdU^-zai|510>8gtgvOi)+Gt^$u|E3QHIR0@Y_*>#Jjp9 z28lOyrwbA<^w%!N?4vx;SPFlW&ALX^_(GRCGsxw8m-9zxr!9blPKDY$BZR{qL{`p1 za#{L|jR<2t$js?$kDd4X(Nhrl{Ji~}Pj}we{V$#V-0sF=rfXfQFJ9l>^GFJ4!-c}? z^8MErpMRKhoLTSXMAl^L=cC;}fhql-xy_xkXV2bK2ige%=Wm<^CUKzng_ji(-+y>p z$@1Ucb~Eb`X5L25?%Pj?-D?Czv%@TKY>!f-Au%Wu12~a?2r%DX{=NGC2Z!a46YoCO ze_3Lab31J{Cyq)Cn$Yj)MgJ6Z0vT|L1yr<+QlmjII8y;Aae~1PFESH)CA%2NfJ~-Q zYBUH2Zz_PKav&MAboTAtzxU=>EV%q}!@G~uORVI!iVqn+!J1;-5h`(n0ZxVPUYTK+0SMOA= zMoQ~9vyO!oKVSRr*T?C5`6CZ}um7{{XU_bOH|?H(28~laUt1IB`=k6fc&uu)^9l^! z(H{HY4+3~DU5R01hb8j#2U;oW6g;77Q z?nVvoxgUE_#%bSfnp&O!8upu@HcE{K!Qf2=@C%42G=D7>v#M}# zOwpS0BHdPPn78KOIiX>G$?x6vcD0AQ*M0uE_xS$HrFQ*~H(WgwW*z-DXY1yx=ddt# z_vbtv9pD+f!y2P5gN;1Gllh+|x9|V`_)-hX@# zO!$v2a<*>3TB1V>`*+IGKS!rwN2j0%eP(V>OC{LNGRLvjZ8ALEa|@v$n;yz)Q+;OXk;vd$@?2>@0(`VIg9 literal 0 HcmV?d00001 diff --git a/challenges/misc/wireworld_level1/writeup/diode_right_to_left_4.png b/challenges/misc/wireworld_level1/writeup/diode_right_to_left_4.png new file mode 100644 index 0000000000000000000000000000000000000000..910178f1900ecc942614e4592354461f56b8c96c GIT binary patch literal 9663 zcmeAS@N?(olHy`uVBq!ia0y~yU~^z#VA;UI1QgLp7CZo?I14-?iy0XBj({-ZRBb+K z1_lKNPZ!6KiaBrY8s>#$O0`{l9kyI|V;iTH(maOEOvB5Uyqx}@BgI>O{d#(~b^h;HU!UjR{`c|y|Ck>;>;HfJy)F0u-{<@F z{@l6$@7HI`{eM&IT0UGp&VT>^zr_ng^Vxt#>~Pfo$+t#y@`WyQW+3;@lp$ zj?QKTa`TRy{}s;>?&G9=j|XJm*SfF+R?&u>Yb%U_+ykP&cQU@tIjXV+>>7sfmqIAq zXGJL7$CpsJ3G*9Dw#fr2f<^|keeurm&jaM>`y>p+wtGc;6+zVSzBr$NIv;>tY6?4vx;5c0mQp0IXC zW7r-^kVRZER!F?87(FE3sTd_Bp4Q(x4O^4gpkbx`Z8OugE=gz{t-E)ceT}FwECM^G z^B`>Bp{Xy7aAraCJZS`P`-2jjH=pi=ueX2y>CXQDKWe8x|M%_s{M|O+PtFtF5T@g3 z|Nfcib)Y*N`hK?`-z!(kmu@Xr;CWt0Vt3Bh)2i~IU|_KKIsghE1z*ajx9@Im&#%7! zp`^ULym~&!U@*9|VK>O?{E9`FKW=#Uae9fB+_v1!S6gu8ZfJ(jo4$4rGbpwjOc+P0 z(I6PKsQ{eDAFO-_EX2R>d)VoB{P3>h@t0m!+}L(DOc-A^mcDvt?6yzJEg%Dya7K($ zqd_oeQvo=UgNTBuTV;0)uq4k3RT=0G{$0)?K>$_weI;<~A2!Rz!UN;cX?$e|y`_tV8f2)^pLde?O(Y zcNY5q9Ev;}X8e3@4X@viJt#x6Z#PXXPXLWBPEZ@AMuTARrUH1nKM=ZWcYVd3-)-u^ z1pivD-V-$6U>5Cr17&gnwLK4>)f#4UZsb_`kK7-Ia^QL4ZX(_Bn(0 zi-V`EBI45*HnWSkENkklyOs=0G{dhw1eukUp1fY(@b>3MT?QL+fhY4nOK#u)`|+i8T*=(??`{9hUH7?C zrhTp0wp%x|(pS%2TZWBMo1$$$TFetH<`)`&GGbt0O$Dt5U>L0!2RI1eDgJ@_-GA@; z{qKKR^tz_*{m1vfg#XwgXX^&6B|5aQf2SP%vk^2=?l7xilo}0!L7NKTshq+7<+t+s znqO_e#@pxW{`%#wYvhh6u5QI%qC*RN`J1QshvW>@KgLbc@v+)H8b?6^;OXk;vd$@? F2>@Q(f;s>I literal 0 HcmV?d00001