From 84a78eafc4ab44327c97372093c5e30d267175ba Mon Sep 17 00:00:00 2001 From: Greg Hysz Date: Sat, 28 Nov 2020 11:21:35 -0800 Subject: [PATCH] minor doc improvements (#57) --- docs/_drawio/plp_sandbox.drawio | 2 +- docs/_static/img/plp_sandbox.png | Bin 20875 -> 21341 bytes docs/additional/releases.rst | 2 +- docs/architecture/plp_sandbox.rst | 2 +- docs/architecture/transformer_deployer.rst | 6 +++--- docs/basics/functions.rst | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/_drawio/plp_sandbox.drawio b/docs/_drawio/plp_sandbox.drawio index bface5dc87..d3d372c98f 100644 --- a/docs/_drawio/plp_sandbox.drawio +++ b/docs/_drawio/plp_sandbox.drawio @@ -1 +1 @@ -3Vhbc6IwFP41PLYDhCh9rJfuPtgZZ+1028cIATIicUOs2F+/CYS7KO1qL6sP5nxJDsm5fOeIBsbr5AdDm+CeujjUTN1NNDDRTNMwLCB+JLLPEd3IEJ8RN8P0EliQV6wW5uiWuDhWWAZxSkNONnXQoVGEHV7DEGN0V1/m0dCtARvk4xawcFDYRn8TlwcZakO9xH9i4ge8uJ+aWSJn5TO6jdTzNBN4jvxm02uU61Lr4wC5dFeBwFQDY0Ypz0brZIxDady62e46ZotzMxzxPhvch8enRyMk+iy5u4X+L/95NbxSWl5QuFX2mJE/wiOE7+eMvgjXsDuM+JZhdQm+zw2XXh1L5boGRruAcLzYIEfO7kSsCCzg61BIhhh6JAzHNKQs3QtchG1hKDCKOaMrXJkZODZeemJGHQwzjpPOGxuFHUWAYrrGnO3FknzDQJlexSbIXbErHV2sCSpOvlEYUrHlF6pL+4qBMvEbzG22zN0yK47cWxnWQnJCFMfEqVtS3J3tn5TVU+FZCtcmzOVJUp2d7JXkojhI3WUoYY44xyxKEVM3Cptjt5UxDYuLFEXMx/zITcFhz1QsDw8YPscYDhEnL/VjHPKGesKcEnHAwvGFo3PHWw2HxnTLHKx2VXOmoWigNxWBuqLMDi1FaXAU135/vFiteDGuhfzAUBR7mMkhWmW/Io2iuB1NwpcztBSkXQsiFBJfOt4RfhXbwUjmGRGkeKsm1sR1pY4RwzF5RctUn4yijbxqenk40uDkWKIqxlabSyKshlN3lnRm9ZV+behDs+YX4yxhY8Ca0qubugLqeTG+iJtBy83z2VwABReLcU7HZ+VhD8rvQR5OP3IHjXgFzz7n4eeB9U5+ti/Fz/B/LodWg8wK+dPMPThDOUwIf6qMs2I4hEosa6EU8lIoWXGhnkEZD6hPIxROS3RU92b/upgVltMN18n6CT+zfjYjBTYjoG/9tGBDEWgo6qifwuVoX1mmqk53wW92erZ99FzN9ZZV653FIDvBWVl++O/R3qOH6+oPh6f6w8OZ9GUTCfZMpE9tRL9dIsHjiXGyQX7remB/QOLZrcQzZRc9TbCz5Tjrp912Rf/qvfOJam83LD0c9I7evKtuxNjlGuCbD6bGa1glR+MUM55kuZw7S74s9HZy58WYEfRkxo74+RhmHJqHiePLMmPzwBAeZzrTOrr+MkyXZ2yT6iovDO6/9wuDt5EebEZVj78uQixfymaOKV99g+lf \ No newline at end of file +1Vhbc6IwFP41zOw+1AFClD7WS7sP7YyzdrrtY4QAGZG4IVbsr98Ewl3UdrW1+mDOl+SEnMt3jmhgtEzuGFoFD9TFoWbqbqKBsWaahmEB8SORbYbYOeAz4maQXgIz8obVzhxdExfHCssgTmnIyaoOOjSKsMNrGGKMburLPBq6NWCFfNwCZg4K2+gf4vJA3QLqJf4LEz/ITzZ0NTNHzsJndB2p8zQTeI78ZtNLlOtS6+MAuXRTgcBEAyNGKc9Gy2SEQ2nbutluO2aL52Y44sdscB+fnp+MkOj3ye0N9H/7L4vBldLyisK1ssc9+Ss8Qvh2yuircA27xYivGdbMfijOGc6ZGPly9GN6P/2p7sa3uT1Ti2B5pi7WbALC8WyFHDm7EREksIAvQyEZYuiRMBzRkLJ0L3ARtoX9wDDmjC5wZabv2HjuiZn2rfMrYMZxUoGUFe4wXWLOtmJJPttXHlERC3IPbUr/F2uCiu+vFYZUyPmF6tLsYqAs/w4vmC0vtMyKI/dGRruQnBDFMXHqlhTmYNtnZfVUeJFCz4S5PE6qs+OtklwUB6m7DCVMEeeYRSli6sY+m3PEfMz3XExRAXZrOdj2TMXycIfhc4zhEHHyWs/cXd5QJ0wpEU9cOL5wdO54q+HQmK6Zg9Wuaio1FPX1piJQV5QZpqUoDY7i2h+PF6sVL0ZPyI8MRbGHmRyiRfYr0iiK29EkHHKP5oLKa0GEQuJLxzvC0WI7GMqkIoIrb9TEkriu1DFkOCZvaJ7qk1G0kldNLw+HGhzvDJq9od/M3oLw1SE10tyV1Vd6z9AHZs0vxknCxoA1pVfXdQXU82J8FjeDbnIWcM7PJ2VgD8rvTgZOP3IHjXgFzz6nYea+9UFmts/FzPBwfZyhyJ3T5BsWQqtBY4X8Zebun6AQJoQ/V8ZZGRxAJZZVUAp5EZR8OFNnUMYD6tMIhZMSHda92Wn8rIIcbrgOVk54UZWzGSmwGQHHVk4LNhSBhqKOyilcjraVZaredJf6Zo9n23ufq7nesmrNtBhkT3BSfh/8f7Qf0b11dYaDQ53h7ky6lESCRybSZbWg3y6R4P7EONgav3c9sD8h8exW4pmyf54k2FlznHXSLm4n41d0zV1V/d0NsmU3LD3oHx29eT/diLHztb7Xn0yNPVglR+MQMx5kuZw7S74s9HZy56mYERzJjMZFMePA3E0cF8uMzQeGcD/Tmdbe9edhujxjm1RXeVXwcIGvCs5GerAZVUf8dRFi+ZY2c0z5KhxM/gE= \ No newline at end of file diff --git a/docs/_static/img/plp_sandbox.png b/docs/_static/img/plp_sandbox.png index bbff0250b696b0083ad6116677524663020ca8aa..12a62144b26d39f84fda0e91a15ce955a2b9b5f6 100644 GIT binary patch literal 21341 zcmeFZXH-;8w=OEs2(2U=6$wgga%?h4&fVmkV>dbHjDQj(XHjyH97K{56-9yyA{hk) z5lI3fIi2cP-}l@58+)I9&p2b;`{z2ad-bZdR#nZKb5_mgnYCgy)s=`ZQC+%l;R3OW zvb^?%3%KFnc$4rV_)I{Mv|YGx@u|0hp|^{_t%Eb>0-Rs&_YoYyYwzae4d<7KBM?^Z z?%ZexD?3js7cXvCj5jz1%3a*h4z>;$^zUmBya-+{K0Yplh%TQ9oL@!|`yn90EyT}f z{QG(wZxvT>j5GKKr@^O&4)`zx|M_?=_yjG4 z*ubHTySp>S0Ar1E0BukdoML|cE3+M z@*=ct^)#HF1PxXF6c9q{R@%P5ukj9W$Natqjq!D`0ktCF{0cy(e}o4raQGuGWd$L$ zy{4L|I|dME@~c^T;Vx~XCe3_SSx zRM2`tejfTpa()JAb#()bgFn(wR?S-(qhuqD_EeRzw-#2lF;KEsm(^93=hYDvHUI+k z&=GO4)$;b@)AX>_QqyqLRCnSPRSQ62)I{u!MZFbV12F-58glN|fl8uC4?S;RT_JS` zHBp4TwtkhA}CiQ)j)e;Cw*Z%d0u%1XD>|^8yBRzji;xBjlGTsueGfr7)4o>u&rlIBUrmQAv6sQaoL>APe=%ipM zz(b&ZtlbZr9y44q}2F!G)P zYP!xg!bW^nLOy&>TI%Yeq8`d+k-I(0 z(8*s%U(>@|Pf3>#oYNK7^!Kzg)O7H)S5;C3W})Z=&RU5GV}ykboty%7QJMzo9!7df z3NlDxCnYa0KNP>Ctgw)dvWmQ)f}@rSxEiY+B1*2lb~3Ig0}U-+KLuL@7h8;sy`!xS zN>0zv*-y|$7-egvCoF6vWUc3E?X2u$j}FuibW>7Bsd+jm>!~~I*zwA1==lf-2#Gp7 zYa3}|9QpCRv5yicx7PNy(=wKq(-uT1+Xp)9 zdN}!7`O4Y(%R1YO%KIZ7f!LfCgbn0WtiV%!kbz1zNM2!O8y$C7FIhiVZ4G@PJ7*nR zKm7nTsDZ)YEGcYi-Upb?6)7=)`H_*V81bX8Z7 zl@CN4I_WE`^J&O}v$C4n8aB2L#x@2bng~H%6a8N`>|_Kk zbF{Hl@=*i6&cVq_gVz~}L@VnHDq0&W>*xrni>et3dute>4fJ@`Jry*7pI3C%=XG}E zx6@SsZPRt~F|ak%6}3mWBGqL;VW6Imnl~uWaQ5`|!+HuwD@8wb0eKB84G(7nO;KY5 zO$R%0+R4Ts&{jkqI8N~6Z{PWsBL%^*7(h#ZSNbW;#kL zhpDv<{KJo)|3T&K;pcbVkC+=L0)JvYd|o}Gt?ll4d&bPp5VzAu!NFfY+I`+jWPM(# zd%jvRJu`G#S;-$;vfqKqwf&Y;lSLlfaAFCo#y)&;K}4KmLRO*+_bnt zcOc5$3fN=Zp&4ylQG#ljJ23kM4`~kBdzUb|z4h>L+4-I2p>S;;4nZYQlt^8iBX=iT zdf6S#MFsAo+RCA!(q-CO`B(-Mbkt?ppOvUAh8R2Lu!WCPk@`6i!-qdBeu_9Pg&5mu z5R894>2Uk`wI8$Cn~=(^ zMpbisbX67VEv8*_i7njt;6}B|9auRu`O6V#@ext39v+kX{*TWM=zdtXpi^efZ7@~Y zyk}KjNd!K@bTO;qbme1YG6zZMlXUBD`PM@DQrFMUN_eeaL=lFus=4I%o zdaKA1wMY7Eo$1nLi(Y~Ez!xLt9tl|iMC?Lb)(}=Wav1#WxuE?Y8Nr7?`^&Y8nRFhjYL_Cf z^*`V%<}_(ml?*vzvU!u3F_6JA2pWRd_op`atm%se zAJqH%`}Z|DO_VrKHLT{54Z+|@<$IT|jW)IB?|ZIK^7Uu)m(e|q@%;9dl6J=VqL=q@IKiyssZi>T9i(7tvwsaR$JrD)*7abFsys~MOU)+s z>O!O{;{u&*pS17Bv|j)F2YfcVoIfV240vc~HqCHRS=<{oGj!obPi-@*4C)5|Q>B%R;|0xx<0wa;)sk z0?Qp1BY!akJNWjFI$OXYb#;C)izh>#{!vuvd%w-u{uD-~bcn3y{c9YLB_n^)$r*G8 z2V~$o4;O@=94saw&$hhU{kKP#4M$#UZ~R*MsCP=ns=QdCQdK#~*QU>zHc#MnmH_4FX4m6(PH;8SNp*`nRM)Ie}qn(JT+; z*CC==fr099CUf0`EKF~G>8WxWud}E-qvq72K$8>E_rHZ0FK-fa6$0mQ`%{fzy0jm) z$K|~&n0>B{M>B-s(PW#S+n5ZxTC>uiu6A#s#=K*iIs7sOcRCPW6~+wxf-Ydvi7@*` z1JB)ylntCl4UD9j6Q9&e2+37kfZQ z$Z>PES(`qFREr{WIUCyeevTSGY;5x-v8E96e6if5dI+c^QH%wQ5GUMQS|pf#b{}Fb zI+-j@sC$?2%GZ;_9rohrrJ+ay(j)fpD=lx~*T|zlMxT@wh4Mnq#^0=(QN+0cg8ns||`Z z{D;Wu^)-H=MR*HlxE|$r(ZZT^%so-WX~2zwMvCMNSLm?piZYQ6=1yiskJOrp!?u}dE9MHdMalZ}Y4Fx>TF zrZIWBWceN^3swMmepSki1nVQ-Ms|l931o_;+?3ZRr4&Jz*OR_)i3kZHyWKS_9J8cr zLpjy5G-Mq^k$wl<=9$)Wq%Dm|Sd95czzI&sv_=O%;05 zy!fIm01js2_`hdjpzZX8zreM4H=krtTOQ**ShR|(A)Un}!wy{DMEVs&JV^}Wft_39 zz5JGZ0Vl{sAAT9R$gNfkc|NH8G#~V7 z7P@tfFNeIANgC=651BQ&QULK}0PSz(06wuTv0d;;4cgc%((1#(8ty7_vVI%dDhNtU zNV^8bHK5*yWc4`d((iG=^2ra3gZD&Ai((g8ncN^~am9xZ*F@*%vf#8ZgOar`egVsD zzn4U?K2d30rukYRxgTOb$G;21hp86l$7_Iw?QT8YVVWNYC7?F$&D-$dCAsd4Kp_ag zO72qz7&tSfS*lZ#2H3&jM;7Qcu|`2wvElm#)2;;1zi*YMOGl^hfh8B+12ErTObaI} z`aGQ3O&w;D0SnL`e9xE#mnkYS=T)WRS9bk;V4|p=<8&#>V%tbZKBIJPuP^NlY3a_; z?$Ug=xaaY>l;`RzEjFFPhjsg4(yKuuVIKyUDW85#ez^NkB_Z&gYSYIcP3h@e=8(r1 z=GNvrb4Tg}E9z>M+6>%8ug(Xq^L%P{s3}p;(t^QNT-j%{WzwbXM$l$J>N2qx;JmB} z`ddy_ADP_Wd_kr1dLVf2x_)lurj=~ZLbHuLU|2S2rw{iaXG&i);8w|8e}-8eCq^{7 zvB;PNbAX90<*f>1|F3&aaIa?5pDT+>Q)kD4l#|7|&QoE%-XzeIzQw{LY+yZ##=SCxbrZ_Sf0ZGuoY=YT37a>#OIs z%Yu)7X*~`g$;!i1MD?sn4ZI7h?N3^&QZ7#}EU|n-Tk2S&SUD>=NI{5jj8xRnfwelH zn)hdNy=E+mLIf7oQ4f!VS>-A z&4ny5nwxVSHJR-xQ+FZetvfH`AXH(3onw(hcB(Y=Yx-O%8u?NxA7GeLldhBq)uqvG zIk@^K2;!wzqG?y4R-RN)WeM3*)-#>2?;cHzH2T<8XmNLqI*cN}sorGKS+2{ZWspxV z3=tdnBDF_&G~6^qsFKAOH%`k7*St&{sRD+B7pF>jeq*Mk6fBn-f)71osfBAPihxb0 zwfSu#>&!b;Q}#GIfgBJ4KhXhu>)AxNZX1r*n6QAUI1MbKQ6GvF@PfO*im4BT5H1sM z;wg0o(%BeySI5%8B7&gx)*Sb3-}MJIA+vQdkCJXlu**deedru&sio6|yDxkXkEot3 zSJ^3bE>ukwP++h4Tu}Npe}yf`&s7VyKYw;}<>RxAb&2hk)#D!Br-1L>-0&b)A9jkAcKrJ) zPle3VA@41=+tBZ_4Q4w+ifcDMmS#B5`Wfd*25|bYUrS-?*HPKY7e|ff9F{m2#*dUM z5U?3Md#p++EN|ZK|2VT~@Y;LMjLNZ;%#EPF8R0s(S3_Te{W}uTV9S=8xy~kW#p=ma z9-H8bxyG9GT1`D$wOd?3gvoFxzrjXm5Bek~6iM``WrO)V^sJi6{nuA~^Rs-#a0d9& z$1;u1aj%sV%BJ|+{%^fwY2cNOZu&YG6CSd&X_sZ#`mnQ7*3Gmw!P?6-ZuJj)@L#Lq zlMC!$GvFy5O5RQtlJSR!s+stuUVJyLviPtRuKksDq+QJbKE}_SkZwakTQQf-l`j4C z>kTDbCbChep&D)$mkIOsLV%f7#D&n41K>lD=u0gY+fk5SuxJOfI6WB7EIa~|z7mx* zhzry{9Af)E#|XQ&lhrh6^W7)`K1;jS^w}N##Wf!ui_XTTB$&NY_ayoEkDm4P9=Ufq~$dgaFF84lHk_}k=7DMWKi8Uz8$x!(R%V)-*3Z`-!xZ}JEHVZ7P6~M?jXYbd9ZEc02cM8U7=>Z@s!1(QQh>%QO+<#KpX{6=9ix6 zD*6|j2Gxdz4R*7O5)u+i;FNZ|zel!ISm)bZaRazO=;0DY_}juxalaqRUtZoDVXUn zgXW}xTG^l789wkH4XU{H9ji@L(}&H^uPDqDq!zk29re*K~*VHciv|YKQaWY1aB=gL`XE zw>B*`3~26Ff%(ng8W!skWkjgIg;Cp2ii~%14kMMtT`>D8s%)hIopvzDEp9Iuab$wpjJ2H?hvg+ zAXBkYQs!8dLDdye|E+>ldgZK;U=YnS$wWZd#akT5*x_*ppA1QQJq1FOo@>p`b_6ZG ziX}&22Ev90L9~zDTc5&4@@pt&Ef+f1RBjyHSe!R#$d`&^lGnNgo>`x`_G%JgU+~?V*4c(lo>5^_leuu4TUi|PZ-5PcAuqTYUTV+g-@KSQ5DD7i-N z1PC3oCKTDNTwj9cn7?XU_ z6HSVms5Qe3W^%3aUquVHd9M^9f^Lwbc~Wv;ozg{--nw0{GCy1>r+4n5ag~w7s4FzY zM+z;iMXEnI9HpKsrZQTtl>w0zSbUS@mhG@60L?iZ42-4bDXg*iVAGol-zlrYd>Fqa zF{aH@8%}0D^k}&p2f0vx^?qspYbQUI`??OLu1nTG&rZd8U@;wz&qjJP-*-eQk4-0F z1}5ndUO&t0n8=QyL4g8krz~!)Mgn(<6A%qXiOBh>k1Qp#8n4lN3&g1sexW|nUw^)S z+8oK*_l=%9y40BQql0n*@VVYH<-=}hCi>90Wi=far8(S(P=Qx(%L0vsD~rr$KDs?9 zyK&k*+e`BKVxI=w3;FKoU8#QL^#=blfu@pn%caeqCx`sIMxPaHx>BV%DVNnLl%DTX zvk^aRNy7_jM#TkQ!z||MH23h?+6uvki3EE=gaIMIl~KX<`u4UWQzqrJtW0l>ateba za{lb}cr2V0c%4j6BLEt}C3|ORiMBgg$cmuhcX>FC8~d&Uoao8ur4`w5Z_0@1F*#*A zYjPI#YNqSiQk+9n__EQR(wZx&*If^6a3MHDK2s^DrV!B)vM%a%ZL0m<|BjrO0;8X zV0@leA0=lD38;>$4Lf!lUXtF)!X>@2fT;Ac<%nh_aTG4 z_SYzID~k-NB8Zr*H6qp{K=|B?%hE!>jLKF6jw2TFI8yOqE`L*Aq_6$U)#y zW%#5>4fhG{@Bz`_OT&?-ENS$Y+qZ9{frYFlGpgg*)a6=aOUH8|!uklU!z?RxD@Icr z_ZL3qNiR~#;ii1((cZHNJ1qsMK=yT?1<|Btt2)Na5WDv|71L26q2IkS*!9|#>3-l> zRO@ea`N3=)4ggTh?nL+nFLJZ0nj9Oz*ihX=`Azvzp z;R=JI{(0|taghIcZQy2sn=|n(5opLx?;K3r^>!?cXr)m}vk0<4NLC+2x@7X$1)WkN z4cimz*9{-yuX8;-0T`I023@B3lW39&>BMBCNBnk)sUo+9>orJIA26xFe1;c*+c9S% zgXtE^;=gD>?5$85DQv=GPVX`*#%mgh+|IAhuhl9(H{Z8K?|1`5seLkyU~lqK%tRZ} z4PI$3oW;;yn81&4q51jf5N5K$4v|mccr4!;UtNzz*1w8BD>O%6y@EF-FXi!kasxgb zI^2#bczPcCcySacvS?)MzS z0Mhg%OFAdM7s1{T%qo&WBjjv2b_T4My-?uNU5bU^)loKN!D;uqJTXOfgE}5Q>t2%d zE&)!8&Cg8=?79^-nIcBjD8R3LequEU!d%>}J9Ko)4L1!)ScnbkKWS^cYA<5C-b$#r*2k5?p_WvWF{xu0lUccWq{R9Z@&spWiRy{TrZ{mn(t&V zYEV0sWnDUeD$cx>$`W>E7uU9(Zu;Q4`0<*f9%o7C_> zp&n~H*~;)>B=BkJ_&VJN`Sw;vnX1XYE-}xdD^O)spS!a2QA=Ph^GKDA*9#77Dj_#o z({CyIQmj}aNflVjU8p8*~OY2h4U|+h|MZ!7n`*5$6aBlST2E zZ8fG)6-y9&ceG0l`CHI-20-SJBef31yAnMji9db-`tAq+ol_Q^eJnIJ_oPL3h%Nk_ z`reH2d1jHQPM^huMfvHSC`exWk!r{W&1{{p(@*=|0m{A^x2miIw(!Ht8OgRT&&yB4 z{LRz`k1|S@?|jfMHs^oQa_{Tljk&=fSPd_w>DWbNK~>*QCvcRtSfFc{uyy|wTTfVU zo8m+>vCCjv6l7Y1l=DlVH!aiauxdId1J0j1xEuSBqC~L-W0f~~kuE$2y+N>TV)`Za z3GYqH7&k+s1`Xy$p6`1!gjm_10!Z|;+uNE^8|3`CqRn=DMT703?99X<K>88?U9HZ*#a>MqNgcW{GuocS5OJLEP>*M2Cp{VGh7HNxaE0n7ajlH1}@?as0}G z9dv0KcG_pE-k3VCQY~MjbgSt+WcrJ7ZLC|I9rOshCBfRne)Ysrqrd_tQg0As)Eruu<&e&*f^aacia&sd zi#X(n8lk5`P9DCB%kSGLqlXV~lwH6{zB7Y;;>NHE7Qj3w#+$wJfK5eys{WWqC4;$x z=2MGK2g@)IbbY*Y+aR)ay(I+U=*>BxXvQmCU$B&fl3B?qF4|> z4WkQpQ@=2$5m$G6XJf60HGD2u*=Sl_QS))RG1TQvDR61r03zC zA6q;6@c`B&A7@<(3bDYw!XQr;Jj8jcSt4lf1bLAy{Dt3or0fuDxNq^VtuwOr?VZ`8@z^C1Jd*jdS8Czf4TAm-$3Q@d9kJ z&O+)*NV4-=rEN9rFYBoF+Z z3t%PJpTUt;C-EFmLrlua^HoDA;L=Q5T#0pI?KyoIXLf9=##Vr z_?C8^xkT97R;WywdM=Yu1A3&{#ROT<^DCIdy$SNuyFTq=>KNn_AbtxhF{O!ECRmo^ zyIGs%3*7CktzG+SwJ~F3v<;YZc@l`Q3vlg6%TvDgrzsgX z9c^;Zp0bN<9G)C{`Sho=>7YRjiACmicd&C9$psN(*6>8w&Uv5#YQEKDu_R#UTd+pK zx!h|GQ)wVX-0$tB24Fszmtdq4u%`o2dtvzriPqC7-b|VcnPRpVUm2>yuAXd97qY92qCz z`pJ-8znT>Uks0xn{FTJV2NH;MwMRl3*hSQJ9`owyPc3d1Mj$)DQiI~m?3pKqb|(H~ zuDI`dGBLGK`H)4sKRq0oo_y&VdmjjD(Ex}T=?n?VAXeC`2VtgmN1)H{G{BUj2<1h! ziq1PF${oil*~!1_gn{e=SUU@f?$`S<*msMpgZnqm3AcB;0mVS1`n+0P8mkB|ucCPZ zkN0Y@RK7daPY^q$3cHy<^I6M$l|(zI0hQl_@F|81FrX%il}G`r{WS29+q@1ZHV9Co zB^vqWr?Y<%z2$RymAWdJm0KWae;r4W1xRuw&#!&-Ky6Y0tvMJ=&XR7JClzKM%a&P5 z?+h4a{lUrPCm_DRgx*^nt8#oc9<#9mRo6E)GCpX}j!INcpUeLK}9v^@z(L&+p&fq`nGlF!CiU{*KVN z)1)qPc`v{%L+|;I)sOe|zgRxLDRLvC`c{K?GP`s7n}#a4*M=l{k|EDim5Q&jYD!~H z>q~MZf_z2&e&noAH=*udWh;8+aCUOY&L7j@`dKWNf+ugFwj=D^9CND4ZQfoUnh!^1 zg1|4ru8StVnzkXLoED$54Pa5ntrJ7S&~~ro#8(N_2C*x75<$9;=+h_p4}LD8^jIXR z`M-6!k-p@RLuPSv^&K3J<^x3G0VQrrA|PI|49pp@5zqUrId{h3WTaPamm9skB7KpB zvKG6*11S)}?=Da^{RPMH)`pMLoA`mn*Az$)kS2Ko8uBpYF%e}O2$n038G>SP*?Kx( z5>X;1ncR=}Hn4Pj#?sR)X-;8matX+Ca99(`jCpc*z2ks6oK`9{9cV%o+<}wNrjC9Z z|HWO1H5(bF6k0&b@pr-q1&!Etg_H7^EwX!K3j1-1|OPdRODSvbRMWiE?l2V5ACgWw{z+d)FG;wk?WVHZIKxHE^qr1sn0En;X2uzkHydd9b;_i3}A*UI%4`{#Q+_x&*`=(7wf z)4o+I{Ad-;ty{v!5%Kh)c8%1i zzL-ef)vM^U zsXT35E^z^MhshR@+9NReGD8#hCM^xJVDasZFOtBw{NNwY++c$bH^?ofM`_{aMri5D zLcMd~@L>{RMA9+4dqVs zkh#3sI2!3p^f`~oozNRcD}dg1XoW+5ZW<)f7r!H~Kbor>gAd;hP>i_n#vtsLChjg} z!$o3T{jivMj-IWX_4q@^nFF`8Wd9;Xvj@tE62@o2d(#t|eZf3xEVlmrkPr^D-NlbW@&rEhB+ZsExnmj{jh;8)!vn=V&Cec!mW?sa&+eB&R+FUQ z!%T8$902#yVe{&MW4Rw4P4G0F*~nNl9%jGv!D_}-4H(Vp75B|!9o*eF`7ry4!jS93 zgmyy1kUlyxStt>1$l3}}L7vP#{ z^elzU(s9u`xLlIb&Uq*hOPbxE+i-ioTz7W00OE-F$}|eG-*!h9ye5cw=fwtQ5!80u z>AS;|v3$@&wWyrC4=-@tQinDkTzC?|jg1`HLR-2-^Sh38K#pU7a+)T2!RsEj@awd6 zLPMpXb=s48kq})u!}>IpQ|@i@=8$@Lqj;mJTFadhq$|TkzSc2B?ZzPF+^* z&UMl;E!mrw5xJ!GilG;2}HyB*4!8&=ChF!U*9rsXU} zhb0l2eQ7MXV-Doo!F6DDAwv(~(WBK9s*a;hww1ZFk+>s21XlP(z3X1@JRVpG__#Ds z>cw6wzjA-1bck0alOaKF_rQ0%^s-%PaLQZHm06aRxsHTaF_b3LJ}b-V&u>L+pVO@6`XRbhRhaTJ+t<^QWUOUY!x^p!>Zh5HhZp!Ib0FyTa4$_ys^+#HE z^ZpFW$LnP)H-8Og3DJM)zh4ssL~~k!yQ^?)9xrIMteE%rd4-F)Y~dVPZ!?rgf2cSm znR^~Chyr#v<92(PMrfs$MIx;z-D$K&Djq-fI1sl2e3LXH_H z=yo_|@+3zd`wkR*_?QmiHt8~GSQ;pk#EV<6C_-h;%E6rygAwn%9>8AtR9zo*6W8cV zoC`~PA{TTy(|YGREBk4bhOUPTl|kB-JTEwA)q8dM%W0c(4hZaJUnw_-9*?^!(=}u= zUi8(2nbg~}tq9sz%g0ig>GM3QLzM4t&g!FPjl905+`9R2;6ofK-1BSssyUW1S6kCZ z&b$v98{%h9O!leD>?<3}FR=#%cg>vg>&NP)4BAyPm$QXKA^-@kZrrrVJ+>yK$7do` zok^L;$b>G}Ol^_o%N7kt=ORB?@3#p!*viY1+R3`gp=Z8Jx!)Oh*iQ6)Rv$}_rI%b3&>Hf@!Si(Hs9RgI}Ouej7! zg8fb9{P#8J&DbuzAYZpRrpTb6a_78|;O$QpOezgmwQJPLjd-1kQWaiN555pjGEcep zlzHGJn;f$@lF;Dt5$sB`%u1C=7t4ra{opYEI4-sOkRvp!T6AZit;KD$Ddc%$>bqn0 z!H+CS86t3%JmkakPeu*j-m-w!q$_fXDL)$!#0<33|6F*@-*nZi*4?&3wLmJXX8Gyr}d` z$9l5eML3pRxHEkqOTVeYI%7JO-;Ev~)!W&PS{_pFSuI6xJy?N>B6S_+svi?k3F=+C z%2j%Fzco}&0<&|Jfvnaz-$CAzXy;MzV#>nii$tkTp}!XVV1H`QNx);qD<|enU66U8 zMD(4#bl{Y!gCHpl_Dly=*+^O96P?%Kwy!UE9h>h(F_b@$bogA3;W{novD9Y`?tAFnO#n+&9y6ppcU-wW z)$UsQsVxW<8bhXaMEZy|!)erD>e=#8Ud1|GG7@r~O>3OF{jz~u*6qW%K9H`1Klt5n zPts#OIn{$#<`DDaD&=TZq#Eu}zNo|6&cfkG^xI_f1yQGLfhsd~b<=>#A4w5M7nAas zm%=LH{K+47X$nJ=INg?3cWLsLcd3LjMxK$2)9iEM9qk_P1;M*8=bsMEf!j`!{ClYq zb&Q%fvHLp%Lob{DDreW@Sc-8a=%-Fhhp~Rs5QJez&}ra?$?ZLX#|gCWHK4CT=pMR= z?Pey^%MR!cePN%SBo_%ivVIXxmhQhzuJWDNYP5?!{N0+qW>MtAhoa_JiPRQ>Bs9gL zLL`~hQ-Sgfit$YFoyS^6Z#{aBl&dGVN3Dn%BUcRC3^?zV*(=UD`KeUUUv__Z$yQXLL<|tyZZ@6oLxez5b+P;jaFt zZ>rQBR~QviLVIrO<%XRG$X8~)vrCiiYX+bzSf`sg>2WgQDXM2$d{fO(3(}Z+m@t>c zZJ~!j5;uD+FxU6jbftZm!Pg&xh)vU)(>4-rf#r|+-+D^|G+Z6@FX2 zY*9Jg^?k@R-VS%T&KuH<9lLYwpsQN-zl;IOEb6t`WSm%IES5CjZv_q7Xtqh^wz>WY zax~_;{${3S&F^q&BDd0vr%7AplH~nKLD-o6FH;bx(Ks-ID>a&&Rh;H+DD4s? zhYtsZ4#ACexcm3k>{JdH=ao-RF}gLM4IjtfEF$6a&yrqeSzq~}x|iQxi2gt(Byj2Y zG__21tsasm5hA;Ks;g?tGfOw+wQN8j&uwwrNxaXRv)FnrH)TcO>qMQejfQ!eF-Es5 zCFSk`SDvt1)6I~lLlA3Pi%oT|(Up1A!%J0owEQdy+6}Ssm^b=9W3v+I-S|BQ{)r+p z;ig|3X@E^R(nIw%;&&lefh*Km3-q)c@_hu6y)@w}UWq92$Jh9fx>Vv&rJl;~!nrc* zR-#+?QJ!S|Gxts7(M%hPTkL#qsv>&TjumRnp0Q5q#9)^Dw2DN3QK&$@2`PAd5!lsZ z_}{BXbZb7OH-VZ3P?Ua0LAV`rjsIoRz}Oc&<)M|dH|ejwpk1CmU&^>+nNO)cw{VR$ z3PQErN5(J{74fm0VklQXT2eEAJFlBy|A%rZOq9v`E2|JaM}}0cakHR#sWs>FQ6}`& zn&I#*8&ShtZK}{3p4#YK(Y+ZW7RZsvBq+E zm)ijkdCWeEHQTJn4bN|Ni;nS{!{g6T!WDA2{4Kt8=WSfOj6O-ut=4aQB2a5&jNyNB zP6kVo>8I!)v#wR>{$TJ*#FJn7<>|5CXlm&bPKS1$%`cHb zFu0>Y)B1`@z|q%~_TX*PjwCWl`TR?rySPPmG^Pg?X!VMT#)J($zQo3fGvmJ5wFw@$ z*1}hkFr8S7joy)i;%HJPkCCs<5@DT9+lM=4p2xjXFexqTnJVjerzbpQF7f%ivDT4+ zDff0ZO{D6pX@pGuV<|b_8?@Ye`{kO{HjHWS5d0q0N6Cm0gaj`!o!7)N%46A2Ui$*p3}Zj z{S(uIoBpe3*y8SP^O1iiimL9p4H^;P8$SwmPGZrdw*V=5XlEynApadyW5uS4+qA`J zmn=^QdRKYI}}+~j0|t;piEVK3ZSQ# zs3UXa0lM+KUy@;JRy(j)OP0S83d&k=N%_5`7Y~6D9$vuy9J1gFW`FP>l<>cjCagRu zY4F8=-wH)0{y!)K!ZZ$y1IR)b1mYIN!T!weGCp_!9eo1^o&QDy$shS^=Y#72xb|mw z_`{FZb%}HCs^j)MssbSO;mck+7A%JQyI(^VI+N`X4^hM4KuwerC<4-{X9gq2EDe6n z?-*Rpzx4QjFU?}e>f)kj{eRnv+$;V6mx>AcC@HRo$5QxPjab7U*YowM0Ac^`*Zj`J zRUsZ3QfT@2WW_|8}gvS2y$^bgsgePKK?Hy|CChrj>{hJ{&{O6u|9w3NQg|D0VrX+h5DRUI=0Al?2rq9a$ zjSeFIP3FLh3mj94KywGvnm`5@w!_lWpykwL$WV)(f2@S%cYkrnu^tl#G%my*c-<`e zzXgG#1l+()_}=dBzZ~6vRteDd=w8(VFUkg?KLzes_*2UocsBAKePBu-QyOId6m4Yz z1v_K-xsS_Da2(gSd07OYx`=x2mgEZ;h}5v}1^BmaxY7T!Q200b!!>Cih5$WyztsP? ziqO%4UJw()yXvf%{~*FqX}|k^2MSc=;T_OWNuZ9ogUNpjzoLDLOy_I|;jT7=)7*2?lQ;AB!vh zo9aAlA^T?v{x|u<%1PgK0zLS%^$@EHWMrV_7w@LdO#l%6FC3b#=Wo6LA8aKgMB@L{ zByRwTad7sE9RWsQpIonH$xZh`DrH(#FF7)TBvd&)J^{}GBSC9aGDu0=;69OMLK0b<=G z%1qM*@Hyp)G&96NnO27Y+4Gx{AZj7PQJx3Mo7lGpcrL%cSz+Gs9AvG_F(@Uj+fZk5 zo3VpjhwbgBSRy=?NhN1i_@rZZbIziPADkzd0Q=Yo`!l&7(MW}Ux*oJP&IR&s3r8#U zP{S;9*ewo!zc?a#(+Tpa)k6-(qP}i(Qlt=9V%`yG5%Mkm_-GugM^_5b1^9o3`-K0P zJLm>k2}q{E?@G1-y?Z>JWXA)qqoCC;LzQg1WIJs0I7h|1$#o?~= zGY+uv(O?_A;UT3XXnz3gdmI~*I@yW@v;x3mMmu=m!@rXGhF@YQcP!=nFWJRt{rL1O zqeMD$yxNGd#-t?^P)NA?us&U`D2>i=nBcL$*&OIUnu+?sKb7yI= z48jlULwJ5w4mde@vOd$IQ46wkWlW2LgisVzkW^*Liw}b%#^E}wHiUs6)&FOaokW61{ z_{6$Wf;D*->>5FW{V00OWTzl^rm>P@;vLA6hf*Otllgv?fz2z({3E;;N= z7m(8o3ip}%ep*#fWWNA|emJ8Da-T6D!H{qiI!!lL9BF_ZFzIjA0E>`#OQI5eS!%IM z*kzi@F!SD9nM?F{42$l4l_{We3jzB}Jqai|4eJY1We6z{$!2Z7dY+L(4R%AdOoXZU zu}|m3V*)`2bE%|w&|dY)&X824dfyUgXu32#bxX*xFFe3!Z9IcE>_lt2(V-aa48(}M zm7KTh<2ExN6t(17LU_WAYy zB0WVnc?dZE@A3zZ$p)+MtoXQytM=!or8&2^`KJDu@Udx$EN~;yNxl|Np|+;#yt}(X zQ%_7#b+PuEqM-;p!a#5f|LKD#u1Qw^Ugkf4-6P=Im*pv+fcw$Bm=xPjlvL_>>;~=) zyCq)n;(}tS{uV>vMo_Kl_FaL;LFMyKI0~fnZGEVnf8NYv@P&h~N(^FHY-e>}@HvD%sr!FrQ90q(yVZflm?L8luDZ_4B z$#5BdyYTb6$9xq5Bc`2>2REs3@y!M;jSO2Kmpj=Z<1}KS#Uz-*3$&&2nZ4Id%wdN{e{s z$|i8A<@e&+HkL5p3Nu;0gGQE{rksdyy77kpgo^hxpOaH-|Nour(D4MgLNCYr@Pq)4 z4T_D7d-aWWN;s#41x{!@JIi$St<}JA%8lGzw)RxiBL0YH>1r4D&pdm6Eok8V??pu0 z`n14-A|1akz{OxupnZC`SUGvb_2$e0u3P*2=JrC4{h&olN-iA>UL80YmGYlY&gR8( z7A5U#tHbrTw(umjtVsNM=>*Fn*%K+C<1P+a=rsMUKk{Gj98OxuLynVzTHfX4y=^Ktup zqdbv4*9JWG1Gs&1XO^VoZ}Gql{rtc0DKt(v#Kg)~ zb2Y?6*M<9gi-F^h4NJNw@0#GSg_AwJ!2e2jYVeldz)g8tvonFGVz4`Z*d?x0_?Y4N zrqt6@Oq7~CeWdvg{7`Q^5w_^;v4a9KT#h_5Ks%#r+xFIcTi@~V{k{zT9TKHx+1Gqh znG}}`Tn}FExAKhIrnxuFB`)}^PgT>Dc48_6RRi<+kSnUjznfkFm%pxbRtGH~t=h_C z6m-JqSD3>56MjnFPjA0YD_FpEdbfaT`aT<}ruMzHD?S6482;P$iS1IyYlU2^r@&KT zvhFJybuv~S?OXi4HRkb=jfF|Gs+mgNx;L&<12(??0mn#SBN?e2EZbP3mMzZd=mj1* zHCa(Z7}$5N{{rs_+%W>SXs1bb!F<}P(LaGIFvB}${ze@sC#t$ WlJTFeqrhV`89ZJ6T-G@yGywpAR!w^V literal 20875 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. +- Upgrade any features that transfer user funds to use allowances on the Proxy contract. Transfers will still fallback to the Allowance Target, but integrators will get reduced transaction costs from setting their allowance on the Proxy.. See more on the `Allowances Page <../basics/allowances.html>`_. - Deploy `LiquidityProviderFeature <../architecture/features.html>`_. - Deploy `NativeLiquidityFeature <../architecture/features.html>`_. - Deploy updated `FillQuoteTransformer <../architecture/transformers.html>`_, which can fill `V4 Orders <../basics/orders.html>`_. This transformer will no longer call Exchange V3. diff --git a/docs/architecture/plp_sandbox.rst b/docs/architecture/plp_sandbox.rst index fe3da899fb..6258989495 100644 --- a/docs/architecture/plp_sandbox.rst +++ b/docs/architecture/plp_sandbox.rst @@ -2,7 +2,7 @@ PLP Sandbox ############################### -`PLP <../advanced/plp.html>`_ are external, closed-source contracts that provide liquidity to the 0x Protocol. We want to limit the contracts called from the context of the `Proxy <./proxy.html>` contract because this contract has access to user funds. We must mitigate the attack vector where an ERC20 Token (or some other trusted contract) is passed in place of a legitimate PLP liquidity provider. We do this by routing trades through the PLP Sandbox. +`PLP <../advanced/plp.html>`_ are external, closed-source contracts that provide liquidity to the 0x Protocol. We want to limit the contracts called from the context of the `Proxy <./proxy.html>`_ contract because this contract has access to user funds. We must mitigate the attack vector where an ERC20 Token (or some other trusted contract) is passed in place of a legitimate PLP liquidity provider. We do this by routing trades through the PLP Sandbox. The diagram below illustrates this workflow. diff --git a/docs/architecture/transformer_deployer.rst b/docs/architecture/transformer_deployer.rst index dc6b006b76..58123c02cc 100644 --- a/docs/architecture/transformer_deployer.rst +++ b/docs/architecture/transformer_deployer.rst @@ -25,13 +25,13 @@ The deployer implements two functions: ``deploy()`` and ``kill()``. The former i public onlyAuthorized; -View the code for the Transformer Deployer `here `_. +View the code for the Transformer Deployer `here `__. Permissionless Transfomer Deployer =================================== -A permissionless deployer has been developed and can be seen `here `_. This serves a similar function to the current delployer, only it is capable of validating the Transformer's bytecode before deploying. It does this by tracing the bytecode in search of reachable opcodes that could post a threat to the Flash Wallet. +A permissionless deployer has been developed and can be seen `here `__. This serves a similar function to the current delployer, only it is capable of validating the Transformer's bytecode before deploying. It does this by tracing the bytecode in search of reachable opcodes that could post a threat to the Flash Wallet. The ``isDelegateCallSafe`` function performs this check. It will return ``false`` if any of the following opcodes are reachable: ``callcode``, ``delegatecall``, ``selfdestruct``, ``create``, ``create2``, ``sload``, ``sstore``. @@ -61,4 +61,4 @@ Note that there is no ``kill`` function in this deployer. View the code for the Permissionless Transformer Deployer `here `_. -There is some overhead to switching over to this deployer, as the ``Flash Wallet <./flash_wallet.html>``_ would need to be redeployed and some integrators would need to update their code. Therefore, this will be put into production once there is community-demand for permissionless transformers. Reach out to us on `Discord `_ if you'd like to deploy a Transformer! \ No newline at end of file +There is some overhead to switching over to this deployer, as the `Flash Wallet <./flash_wallet.html>`_ would need to be redeployed and some integrators would need to update their code. Therefore, this will be put into production once there is community-demand for permissionless transformers. Reach out to us on `Discord `_ if you'd like to deploy a Transformer! \ No newline at end of file diff --git a/docs/basics/functions.rst b/docs/basics/functions.rst index a3a2374603..5626e29586 100644 --- a/docs/basics/functions.rst +++ b/docs/basics/functions.rst @@ -56,7 +56,7 @@ Below is a catalog of basic Exchange functionality. For more advanced usage, lik Limit Orders ============ -These are the basic functions for using a `Limit Order <../basics/orders.html#limit-orders>`_. +These are the basic functions for using a `Limit Order <../basics/orders.html#limit-orders>`__. fillLimitOrder -------------- @@ -552,7 +552,7 @@ This function emits a `RfqOrderOriginsAllowed <../basics/events.html#rfqorderori Protocol Fees ============= -There is a fixed protocol fee paid by the Taker each time they fill a `Limit Order `_. Learn more in the `Protocol Fees Section <./protocol_fees.html>`_. Also check out our research in the `Tokenomics Section <../tokenomics/research.html>`_. +There is a fixed protocol fee paid by the Taker each time they fill a `Limit Order `__. Learn more in the `Protocol Fees Section <./protocol_fees.html>`_. Also check out our research in the `Tokenomics Section <../tokenomics/research.html>`_. getProtocolFeeMultiplier ------------------------