From 062225eeb1045fedf4333a918588bb959109e8f9 Mon Sep 17 00:00:00 2001 From: "maria.shaukat" Date: Fri, 8 Jul 2022 08:21:41 -0700 Subject: [PATCH 1/7] Adding a script to visualize placement from protobuf and .plc files --- .vscode/configurationCache.log | 1 + .vscode/dryrun.log | 6 + .vscode/settings.json | 3 + .vscode/targets.log | 236 + Utilities/placement_viewer/README.md | 24 + .../placement_viewer.cpython-36.pyc | Bin 0 -> 2047 bytes .../placement_viewer.cpython-38.pyc | Bin 0 -> 2646 bytes .../placement_viewer_test.cpython-38.pyc | Bin 0 -> 1250 bytes .../__pycache__/test.cpython-38.pyc | Bin 0 -> 1575 bytes .../placement_viewer/placement_viewer.py | 79 + .../placement_viewer/placement_viewer_test.py | 32 + .../ariane/ariane_final_placement.png | Bin 0 -> 39816 bytes .../ariane/ariane_initial_placement.png | Bin 0 -> 37764 bytes .../test_data/ariane/netlist.pb.txt | 997324 +++++++++++++++ .../test_data/ariane/rl_opt_placement.plc | 2194 + .../test_data/ariane/test_final_placement.png | Bin 0 -> 39816 bytes .../ariane/test_initial_placement.png | Bin 0 -> 37764 bytes 17 files changed, 999899 insertions(+) create mode 100644 .vscode/configurationCache.log create mode 100644 .vscode/dryrun.log create mode 100644 .vscode/settings.json create mode 100644 .vscode/targets.log create mode 100644 Utilities/placement_viewer/README.md create mode 100644 Utilities/placement_viewer/__pycache__/placement_viewer.cpython-36.pyc create mode 100644 Utilities/placement_viewer/__pycache__/placement_viewer.cpython-38.pyc create mode 100644 Utilities/placement_viewer/__pycache__/placement_viewer_test.cpython-38.pyc create mode 100644 Utilities/placement_viewer/__pycache__/test.cpython-38.pyc create mode 100644 Utilities/placement_viewer/placement_viewer.py create mode 100644 Utilities/placement_viewer/placement_viewer_test.py create mode 100644 Utilities/placement_viewer/test_data/ariane/ariane_final_placement.png create mode 100644 Utilities/placement_viewer/test_data/ariane/ariane_initial_placement.png create mode 100644 Utilities/placement_viewer/test_data/ariane/netlist.pb.txt create mode 100644 Utilities/placement_viewer/test_data/ariane/rl_opt_placement.plc create mode 100644 Utilities/placement_viewer/test_data/ariane/test_final_placement.png create mode 100644 Utilities/placement_viewer/test_data/ariane/test_initial_placement.png diff --git a/.vscode/configurationCache.log b/.vscode/configurationCache.log new file mode 100644 index 00000000..bab9054b --- /dev/null +++ b/.vscode/configurationCache.log @@ -0,0 +1 @@ +{"buildTargets":[],"launchTargets":[],"customConfigurationProvider":{"workspaceBrowse":{"browsePath":[],"compilerArgs":[]},"fileIndex":[]}} \ No newline at end of file diff --git a/.vscode/dryrun.log b/.vscode/dryrun.log new file mode 100644 index 00000000..9ef994d8 --- /dev/null +++ b/.vscode/dryrun.log @@ -0,0 +1,6 @@ +make --dry-run --always-make --keep-going --print-directory +make: Entering directory '/lab/aipg-ra-stor-03/mariasha/code/MacroPlacement' +make: Leaving directory '/lab/aipg-ra-stor-03/mariasha/code/MacroPlacement' + +make: *** No targets specified and no makefile found. Stop. + diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..65e1ec07 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "makefile.extensionOutputFolder": "./.vscode" +} \ No newline at end of file diff --git a/.vscode/targets.log b/.vscode/targets.log new file mode 100644 index 00000000..90ac811c --- /dev/null +++ b/.vscode/targets.log @@ -0,0 +1,236 @@ +make all --print-data-base --no-builtin-variables --no-builtin-rules --question +make: *** No rule to make target 'all'. Stop. + +# GNU Make 4.1 +# Built for x86_64-pc-linux-gnu +# Copyright (C) 1988-2014 Free Software Foundation, Inc. +# License GPLv3+: GNU GPL version 3 or later +# This is free software: you are free to change and redistribute it. +# There is NO WARRANTY, to the extent permitted by law. + +# Make data base, printed on Sat Jun 25 19:52:19 2022 + +# Variables + +# automatic +<&_{fP#_@3PMptfJiNn)#L8*^sHZL_ss4_ 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 literal 0 HcmV?d00001 diff --git a/Utilities/placement_viewer/__pycache__/placement_viewer_test.cpython-38.pyc b/Utilities/placement_viewer/__pycache__/placement_viewer_test.cpython-38.pyc new file mode 100644 index 0000000000000000000000000000000000000000..78341c139370c26f51f06b7a4c0b48ca274bd128 GIT binary patch literal 1250 zcma)6%We}f6t(B!OdibxP=!PnWf>uoA3z9H0UOj!i;%proUt1mJdb*uLZcQTm2Y6h zqFM4Ie8g-K3x0tOTu;&{O1i+2ukUNlefT`h$)rO& zvNh>~-V@O`Eb5~1C7?ZdM>OAi=0f(akh2}3erxvNSQfU}KgrB~u6ZmInOb(HSqb@d=2)m&l?CzVf#(<_Tepqt zrU>V_I>{Vgc`I#gsf`v|fuJAt!&$E?L~zT8+$f&P;jEoXt5snK`DkE2+Sxs$S(aP2 zDslj=C?l1OS;`YRd%Oj)Kw>IYR&l-lVLF~Y+H$WH|LeTOK2hlwa{qSZTU`6C(#wi6 z$hm!229r#s#@!8VElX!7N=sUIIaREQz-owdA&Y6DOa@f5;X!y#Nc-d3#oz8uuyrh>U}gZ#Yg zRB_#)E|Tm(v|U1_A+8Dfdm-q-z{s5i7aN!)WJe~3Aee< zU?fHm!*P@>PSbMsfR74YwXY=hJckmDd-Zg0v$BCq&y>kh_vQ@zSs=Q*+()=nS_{r8 zKJ+uBWAFWkd_Zn{&8fdopiPIAEhwvm#0)v)%y6Fkxz~#jjCb_yMGzqL-V(dR2jVe6 z{Rf~FF_hwzD9o^12_tUxa-Rj*-gzp_JFJsaMjh>|ZXU77?E`g?$1HaHQ1$XY>$`nN zJ;(=afYDDVrD^vTrCmv`4&QieD38+U1<|*1_y({tHlw zUt@!=@QU0(jMwBf*-{=*-j?!#@(o&fX>dbMQ5v428xPhFto|ulV~lRl$~VC(+{(~3 zS>umRy7uG+S#{Q*mWcKw4nCGh5jYy3EgvPBP8ONrMvJV-ipyC$fHN20R2VT6IunJQ zE&GKuDyz-3x|o{Z&GJ|)URH*0MW>J<7H-&=zgE}gd09LfP4ZFuHDGMzzkM*;9h1r3 z%Y2?GIa>BclL=UD?#S4Z`6Vwz4wnx%?{mwL3AJloak>1;x%HX5JIQ%g?8$xUvB7-uA2w$ZQECyHtgHF{tgf# zKJL32V)B6y@}C2b{7V4B-~~gnJx?ab7}h-u#-I&_a*7j zUVgK8+0KOSSUze)_(VXlSU>fVMV|{rL%-hy?+5!a)hB>_Oku`&fMXKF8hgVdivI_7 C(#L%O literal 0 HcmV?d00001 diff --git a/Utilities/placement_viewer/placement_viewer.py b/Utilities/placement_viewer/placement_viewer.py new file mode 100644 index 00000000..ce011fb8 --- /dev/null +++ b/Utilities/placement_viewer/placement_viewer.py @@ -0,0 +1,79 @@ +import matplotlib. pyplot as plt +from matplotlib.patches import Rectangle +from absl import app +from absl import flags +from typing import Sequence, Tuple + +from circuit_training.environment import plc_client + +flags.DEFINE_string("netlist_file", None, "Path to the input netlist file.") +flags.DEFINE_string("init_file", None, "Path to the init file.") +flags.DEFINE_string("img_name", None, "Path to/Prefix of the name of output image file.") + +flags.mark_flags_as_required([ + "netlist_file", + "init_file", + "img_name", +]) + +FLAGS = flags.FLAGS + + +def _draw_placement(plc: plc_client.PlacementCost, img_name: str) -> None: + plt.figure() + fig, ax = plt.subplots() + cm=['blue','red'] + plt.xlim(0, plc.get_canvas_width_height()[0]) + plt.ylim(0, plc.get_canvas_width_height()[1]) + + for i in plc.get_macro_indices(): + x = plc.get_node_location(i)[0]-(plc.get_node_width_height(i)[0]/2) + y = plc.get_node_location(i)[1]-(plc.get_node_width_height(i)[1]/2) + w = plc.get_node_width_height(i)[0] + h = plc.get_node_width_height(i)[1] + orient = plc.get_macro_orientation(i) + if orient in [ 'E', 'FE', 'W', 'FW']: + h = plc.get_node_width_height(i)[0] + w = plc.get_node_width_height(i)[1] + + ax.add_patch(Rectangle((x, y), + w,h , + facecolor = cm[plc.is_node_soft_macro(i)], + edgecolor ='black', + linewidth = 1, + linestyle="solid")) + plt.savefig(img_name) + + +def _get_final_canvas_dims(plc: plc_client.PlacementCost) -> Tuple[float, float, int, int]: + with open(FLAGS.init_file) as f: + lines = f.readlines() + + cols= int(lines[4].split(':')[1].split(' ')[1]) + rows = int(lines[4].split(':')[2].split(' ')[1]) + width = float(lines[5].split(':')[1].split(' ')[1]) + height = float(lines[5].split(':')[2].split(' ')[1]) + return (width, height, cols, rows) + + +def viewer(argv: Sequence[str]) -> None: + if len(argv) > 3: + raise app.UsageError("Too many command-line arguments.") + + plc = plc_client.PlacementCost(netlist_file=FLAGS.netlist_file) + + # draw the initial placement based on the netlist protobuf file + _draw_placement(plc, img_name=FLAGS.img_name+'_initial_placement') + print('Initial dimensions of the canvas:', plc.get_canvas_width_height()) + + # draw the final placement based on the init file + width, height, cols, rows = _get_final_canvas_dims(plc) + plc.set_canvas_size(width, height) # set canvas size from the init file + plc.set_placement_grid(cols, rows) # set grid from the init file + print('Init status: ', plc.restore_placement(FLAGS.init_file)) # restore placement from the init file + print('Final dimensions of the canvas:', plc.get_canvas_width_height()) + _draw_placement(plc, img_name=FLAGS.img_name+'_final_placement') + + +if __name__ == "__main__": + app.run(viewer) diff --git a/Utilities/placement_viewer/placement_viewer_test.py b/Utilities/placement_viewer/placement_viewer_test.py new file mode 100644 index 00000000..11278e3b --- /dev/null +++ b/Utilities/placement_viewer/placement_viewer_test.py @@ -0,0 +1,32 @@ +"""Tests for placement_viewer.""" +import os +import unittest +import matplotlib.pyplot as plt +from absl import app, flags +from typing import Sequence + +from circuit_training.environment import plc_client +from placement_viewer import placement_viewer + + +class TestPlacementViewer(unittest.TestCase): + def test_plc_viewer(self): + + test_dir = "circuit_training/placement_viewer/test_data/ariane/" + netlist_file = os.path.join(test_dir, "netlist.pb.txt") + init_file = os.path.join(test_dir, "rl_opt_placement.plc") + img_name = os.path.join(test_dir, "ariane") + os.system( "python3 -m circuit_training.placement_viewer.placement_viewer \ + --netlist_file "+ netlist_file+ + " --init_file " + init_file+ + " --img_name " + img_name ) + + self.assertTrue((plt.imread(os.path.join(test_dir, "ariane_initial_placement.png")) == + plt.imread(os.path.join(test_dir, "test_initial_placement.png"))).all()) + + self.assertTrue((plt.imread(os.path.join(test_dir, "ariane_final_placement.png")) == + plt.imread(os.path.join(test_dir, "test_final_placement.png"))).all()) + + +if __name__ == '__main__': + TestPlacementViewer().test_plc_viewer() \ No newline at end of file diff --git a/Utilities/placement_viewer/test_data/ariane/ariane_final_placement.png b/Utilities/placement_viewer/test_data/ariane/ariane_final_placement.png new file mode 100644 index 0000000000000000000000000000000000000000..3c48941800b372c1a7c8f51072e176706c357544 GIT binary patch literal 39816 zcmeFZbyQZ}+b+5Q2?0Smq(woH7U__b5JizLK}xzC9zdj1It3(@?k?%>?(Xj1^LgL* zw}0PvzVD1P_8EJOef~I%!GNdMGuK>m-uHE1*L5$ycXE;s&`HrD2zns(TI@XpA;KUC zVIBZAxkLJ2t3JcBd%=o!Cc?Q z{*#p+Wcta*!o=Lh#7KwAPS48P$lQ#BnT?tKIhCP}jRh|Y%fDY|Hn%chc@mH!4M9|p zl-Mf;hlK4JcN>M1M4?*)5&d1-m!DxcXxI1|I~>isE*m>AF)+?1ypqLOwp<|b{4 zen#~jikFCU8DIZ+U#O^FmSGWfLd0O|VUnxL#H@25BcSzW@^ML63lh5xxm#ctEmdsn z*Y2~B__O8S#4G2g9B2ATA=Xw@vCamw)@!}fV>PpTXImOk(&_K1XlQ6s!{s%%Q6A#p z;K+YsgJ{7s3~ZQ?pRcd4G$xWT{0+EGP$+nq)y(?;zx@A|Y55?(jp8uT&;SYE9Dh(y zQcBCo$r!i22%H!_oTIwPL7n4y5{%wutVZYi6@ zUpd}GkB$Q4$;!(^p-L7`lMG?DG6pBu?w^!IAsfs7#Fd;yJP8w;nw;z(9sTxJ@Zuh1 zF`*Z|kbHNMTxhW%0yU7^PkXE-IWy}f8|PJ`?A4xWUY?23cyJnz&aXskNtm0nm{n~& z<-a)|DyzHiYc@BKCdmO`M29i&De6`_g7-SU(=GW3T~iC5&m+0)H=@RHnN!qVj^rKB2bl ziQ*ymxoUfs))2}NZC2k$W)%n_{D)}ZAvUzWzAmh#MQK)dv3h*^{plMKUERm0dvp1Z zpr^R^X>t9I_XGq4pk+2#XMMFiJw75NmNr0B-mFZIFQTDA{%4_pZW7&LErxd`a_kSr z+5;^N`-4g6n6?-0v{DRqc>XLa@|14ppEgqin5BbAIT=2F`0(9nr*v$v+;px^;AAs9 zKLd-5JJe|MRq{<9BMg9xeHhZd)*qQ!+W9T{m97w^Hw;I>Oz{ zgF*PH=5`{c#%E@B)^E6R9bO`F>$YNEFJQY1KPPPJP2@Y+F?WBoS963_cbv|WUTur; zqp%Q1NyC;PLoU&OOw;*601?Y*ZJz>z9ygWE&Sa@_t&{DgJzD^M*gA5-17T6Yq)FCw z5t;%1b9ei44hr+uu*Z@QLy~=_rZ&@cNrNQF^^#HtvgkB1%oDg=n5J9Q_C8Szxx6nc zwsCw39bes4EQiZL5c~^g-S1raPli8?*Em{_mX(&4#_-xQU{MNULNVNyG~pezy$L*C zY`U#K%lT|K@$+g=RcG2FXgjD(r=fZ2w!Tb@nnAe+KGPFvKI?__we|EeUhrovvdk$x z5oSNR8EF^A{I(ZyG+a8}rftFXbi#n!?V9_Gu`vQvtl#6=x7M^fQ#~{#MuS7f@6i8u z93{QaAB#|PcY6ijN?^Mo8}uc$obF5&+V5%B9JD^-w%;XFRZ}bc+<`khI=cA%tzhHL z*<8pw`mY%oPa)wqZyxN{9LY^v_X!YlnUS>ylLvrpr@h)88zbcI7M4s7cKX2n;b+L< za9PS_OKnbs7WWnSP~G(k%Tf^6Y=b8NrU&!{*moe&7fj_${@j~R$w|wtvhYf*l z-8ij7+v;)Wz1unRzdAr^45DUAPs-wlN`j*N_~*rb$nb)Xuj z2+b#G-UCM)n3SHZv7$cva}gEtBQA?Jy}fXEcNZTPLHjWSs<@O4XZR3~Pw&Ln?FKgL zFbH_)m%J2wcFzgW6bNoA)p%ZBo$Z~;s$K9p-Ekg^s9E!j)mZd8Y?MMZ*10%iJK$LS z?zoPq956?!kjLXFKT^iu3=E_bhb-*cwJ!DeN~9t8P>83=H!rO%c?&#uUcpzxczJMx<#)AqP7cZH(29MwrV5g&O$sksFMI%31&O;*o}){k?eT@fp^2zll)aL;UF5HsfxxxwR!Q zq*xa`QFBV_l#*MSV64e)0PWQf!tC=n|8LgNc&#&+ToS*^_A2r3{QNee`g3uyGUegs9He&a3Bcuq1=YNWMj_yvJzgJZF_W|W`JWdU-NP(tc+4L-;;_hqy(^#0LMgO-_LUad ze>OPGX7=^_299J-{tW(%7Be45zLl4D_V#?2&nfPYBPXC*kvcwtebeC*mn2#|&GFEZwtJ7O^d5sY4rrmGjr8C&9vLq&iPUDo%(vF z2t0UM04PNFHYt$ucHifG-U}O`6-w>d8prcZrTRFm!>e@K z9=}(2+DLa;4wKyXW^q9P(24>8yO(CuzNi!q5XhSn09PbA@A4!Fxl^#z9^*nks;eKV zm7BHTz2*0~I9glsXUuCTGo7-SZ$PLy8C4T^vxCRnrmpV@KL))qhzeY<>|Aay)?x&l zUj|bM_~X&Z&9BCr%b7ox!ZoW{K-r$Fr-b?k20ZHO>HjQWe+lo|BUk zyBj>N*R&QR%zGfA{x!sK+J(I8T@hzzK6tiYX!gT{mPv)A@t(@Qp0itQzJGq>7D&P& zVgHC}Yb;;#&6_uu1^|*ex+(rOtUhog@bW$YgMXc@Vve$hx%<`B`B3t0L|tu8&U4)> z5PVO#IEzh3^E3iL^g8Z4SZcF&#)W@ge0~Dz-#c3hmtk)FsHEY2vNg7J*u~QJ;jMtT zA08c|u;SCb;a?v%a^}If!epOXu6C2mn3lW_k4SQS{y)#^CqAhCdHKQ?Fm`)l*^+F*ip% z`(Saptzt4)NA7&K+w#b~#-pf+Jx8?^Jw))5KI3h2@WxQ)(tsqT_{Wa~br(J6h|rfW zUo6%V?H9r2Y^<GdjC{VQ8r+e^Wue`oXcot>69Tr*z{ zl3fYYB!U=5hd{EXVL*F}0t4%Zvj$8yW^Qh-p{eP}%+rTx+Cv#{#!HMoB&kV)iC#8) ztd9xL+Bhoz4`ty}hf2fl@W*Ww;&!E}=}WSa9V=r#kFYycDAx2yny=K&9*<(^dWo$^ zD4$|zuo+^-ru_wysdZueCwh>W|4GFnRPVeUrfd7y{>s(0TT}M~ug4HW=kSC(@%AwC z6S%_hp?9m7x|?UH{bOUO^+K@EgEOWl7uQf{|Jd5D-64OE&_&gZ+O|IaM-_m9394~4 zM}~&H;^IgF6np3=mO9?UhL7(3PDyFa;m(3P(C|fE8{tZ{gPWN-9qXYM2DAZ^C)K|w+5ySuIH18D&>38~sB1z#OjnwmOLHC~W1om+QthCWXHb8z9}uzk?RQM3mS z+7AO-*vo9=Qs@pN@OegOW)cxY!+&<-LrQlb$l~o_-uwL?gy6Txh#$qx10u^n#?Se& zHVx80zoiN7FZL%=9;xNJw29`Lj@VZ>9>W}c{NE3+X6`PXS7HwN$%E}WO}BS} z;#rYmP!G91O(9bM8GLdL{{!M(GXwtFz{iroR3I|5lyH&;5x&464w4YCG;yd~iMJ0n zVxPcF?(_M~j#XYh!q^tEW>jZe=@zI%4N_!03Zz6>jYH@FFmd^$s-Y&&OHCuX`NV&N zWW-scY^6z+DrMCFbA$rCat6h6SRB3ABI%d=cc^N`Vm5c?)}$Q zz!mmiQ=>Q#Fv%fnfGxQy@ywP#bVyoFcA42_vg7do{X9}S-G2rxe{*94j>+xzW`n@i zCamW91|S3i1XB7lE1AHNu`%7#?TPc5J-4;kGF}2KADkcw(>)?Tv4;T@9X8x}m?-jU zYFq0Eo{dxx{?Ek4gM<>!=(Y8)4*Yb@(GTd>WU0MHs6n!gt@E+po%TCDwVOJt2i1nU z^G+#=dq9iM`0?*PK?ORotm^eEM_mxpD#YZ?Fo+ zl~Y~KhfMWED)JeWcN_MzGXjnQu!@s~e=wA~-`y%uz594vrfjqYRwP*>Ut2J_^^NuM zBmlu>t5&@Zenh?Id_sE6+~zeFZb+}C0B#r)gMNW=yaB7Yq0R(^hSw~d+ zIajV(=REi|@51}64fx#cvtem~tc-EU3;r<8J4y}{*%XCaUlm_aS> zBOXAw@W&g&+l3dNFp*a}B86uimVyH3k{wq`0x5+k$jQkoZZEfn+@opl12iyP6SBK& zW-?Pnz*4i1xZ0PD4ULzXKFW}d^(>!t!YH4%>e?4TfKLm};b)Y0xd47ZAa#ug*6+|zsZ{3)2OV=n%<8^GS}r)wr`wHicyl)API^UilzDv+ps^mAfkY4h&UA5qp$UQk&_NR`yVxDeK{A!dYl{wGP=5`!R5+{C z@p>R7JmKaad`5wv=}KoL92w5mI9yxQg<6LKR1Bn1RhDb{aXJNk6CJEL4> z^9%yj=KOr4*LcCFrh>9$UwSgE$D~2LlU#oloy>hqsfz)axAe9M5I}Ts2hJIjjg&N7 zpj4lAJ)3dZNRQs{(z?Y3OL2qE8I-SCIXTUML+hWM^auO?M_CymsQK^j*5A2(6`_8? z$(deWd(_Kk*(Y$OJzZf*3`)z<92Kuv4ucE>WIUV)J|J6uBjK|40SP6ZIj! z7t9@x!2i=xMn^73$%mUAdKh62z(K5N>ZrmqTLg&xDzMYo zgU!;67mn4|{Fs%4m%(_4{6^l`9{T z2gC5#*kb@(_;+v1K$$o*C5~Xl1n4_z28QePJ^MZD<3ZzvGt_;sgVV?wAXV9NrSE6O zxAvK5biE`4CsTlXLOt8FOL^D+aV_X#E6cT)+x6zCXAfKZaJggu3hDLJo#Z)hS}6ob zFRy;IeQak|hbt`$T<@wL5OX~LN+~4&T}l}*Udv4_KLM-Lx8=B42)t3^1!)gy+efg3 z!8I_Mts%h{_&JmK9iwBdNjF5ujM!yW6yQ}_sXxKwLR|b<(gTM0LKSD4%~zKuLYnDw zA<5UrnH5)g)&23ZlapMrfx07|k;IUR!AKRA{cqE$vIh?yh&tQZ+NM-i@|d5YVg}7v z^PaLSSyoNQwmj@BB;H#veBr-0=gfkO)honQhgduIHIdIgwYFAZYp>%o+1y31J?5F| zmoI<9pU8a6Hi~jw`B!%O@fR@@p~4$vbMhB?+ln_w`>igrvO3X2nBa8V5d(w@Nq)Dw z@gB=%P_u~{8)uuLu;Th@OMUph6rhk&gj>lk$NcI8^D83Ara@CN7q8)Yd&@$8jg?_v zZ?9Z;94DjsS#)7g)0N_Ey&A!l!1i$s6Vm)>K*}6t!)lMIa-9ouxRk+?1cqK#dB@F; zEUnYP%#216fj|sGHxf^l6?cNUplHD(eVuhLb zrltx3pKTbj#`f}EsHIfCF2q!(+k$E?$kvkF@L?`Nl}g?d6FOks4|aI-hibvUqxCR1RV?G&Jn*IV2`Q z$29liOHP}vH9RA*Fv$Gr%)_H8dR1|8LtRlBbm*+SI(n8u$VK_#$=}QwEe%5f$V71blsUQk)=JxK4yQ-Z3Z+U2AR|uuCni@!5Tr&AX4{RV9kje8b7bg*5&R zp&McT6qi+OSs(uP7u+3#&*-Sy8{=$81NgXLjg&Ym{s>g^NyH;JA0BmL*?M$wuSCyS z+B!{*jf|vh^;35}QA>yl!ZF>KvoxR~y$>kF6~E#t_nvunIZ>ONzt<(5bDw4tKf4_}MP0X?h}FRjY`l5~D`SF741Mpl6+0My80^x>nfHQq9`f$a9&^O4cA~{BQ0QCoM z1B*7(3qq2bHVXG?E5f${kA6p0raTZ+AO&X>_D$7MLt{jmF6?!)jmG?E_WSj7AwZBx zO;2w*RHf5##lz_z`J>6IkaeQkv#dBB>zl<2{}}U%G~I#)v2|WG)|x3H%jqB~MrC_x zg*8FLV6T`0D;P$5IM`Q52Nf$)gf!pR2o#GfB&N8T9zACN`KmqbvinrOEY$bV1MsjD zi>H=f1hmQ1lUwTUTMfE7A>4yrC8(MzX7q+u#=U-JYJZu0F%G9=zfrP-` zj`tL&KdFZdVc!<2C7q(Xyn0~3-o=sbHGlC+tWpPh9f7(@(+|EyORI*sHbdoyhL@12 z|A%F+!0rJ9E6q2R?A`+m1QH2$9ls5z9^sI1R5vEG8)uiBD=886wk?qq$F>COJ$5RN z<)cP*m%~s*YAr7C^Ucxz=fGf=^;TBIO~S}OMd+fSgeEQws>c5LB246wfMCsz^An6U zfyWwB#@Gb%%Y4?<$6<<+RPhPH_O?c8-#kIhMf>uQblTLgAi$DVIGSlj_ukD&?7iQR zXf@@C$Kfr(SGS9-LFhVqb+qsTc886$UR>kz9oDNQ@9}_FcM48P)txWq)FTKt1(G;! zIeo+<;mnNX&fcca=TsOKu4b#;R0 zE`o5a%;Bhqi?jR(HX~g5`jt2u8Bmi)5v;%0l7PDaLOx>U8O!(*va3+)dO_uWCrM8*l)llYJz9d$Q zgBGGka%2U6q<@7j*j*kQkqNpG!|_aSvQV<68c1HAjXzf1z)A-1Zv*u>oBJ$(LP#4q zDu(`*ZG$Fk^uBhK_f3vjW_dEfM-Qk9i@cNjEzskRx-)1Oi1_R$HLWKvV-ynGyl>Jk z01;>CY)hDHQlJsfW!@Uaq-IqWB3(}zf44LDZdaSwXJjpO%Q%&+PWxrROrH9r;xno9 zzVf+mv{H^nCH;pw|MCKKS%m#pjv!Rs;Nozl;&L z&^djVnwn5(xEOSi8`UejdLq}g*b-oQb20|-^ki!@4x? zD(Um4x}o=S%Xl*#_FEzw?*rQ`?D>`s^vQUvKC_-%+pEpk%W{e4F~&Rth-4sDyvn&J zk&kQXOf|;-#2X=p{JK6-HYD-Dj+#4JT>ZY|rRRi#-$|&Ka&9<>1ahMDcc~uTO?u^# z%KU|jdXaD>g7O-!5}TC#KGVHVOd9KZ=B>vYLjsnvKCNce)rn@5Y07Ar&`~R+IQidl zp{)#`8tPr?SndtTJxIjpB@_zN-;?OKM~bWm6V*^FjU8~hjS&H<^xWu+Nb1|9o@u^{ zWP-@>uRPYPhIa9-Om^}9Yiq}{?}S<{X0#S6S86}C{+r_l*@=|x3$>4#&h>y1w1;Ha zSY^A#3TlX++Gbo`8p8sP!0BDdnwbMTZ+b_UPudUw+U=y7bm&?{i|iR^#ByzPhl4U= z`XKlQ(bKpT*D+gCf2AUNYZva#;A8jd3zH&8c<0J^xU1_ojSNN40_Kr=#f_b4864Bx zUGvNx>nd!VN=hW*R2%~iST{Q_6Vs~gl2}0@rYMh?fSs3TRio?a1HoYV=)9N$D(TNt zDt0|zR=YZ_OlV%0kbaGv8h;smgXkt?w;djhJxrRGHFl%1THp#JtC@<|eJf_x289|n zt6I5G6>v$fM@%1KT~r^&HwUs9-5 zQrP5)|H)-nHAR7dpkQk}NJ1bBRD<%N?_PG?hS3W03l+B%I0Pv0Nn-kjz|BI38_@Cs zsR4KfK& z3Zquza>sXhMa7Kj9>9Aa?5UNfy0h|`d`zu(w@62~4-$WpN(~aeG;ByEMUhSmjbLTP zuwt8?jN5{0>m_6M*q6v3g>iZj+U9}rLu}4YU8&DF5-sCP&m+2=j0Q015tf|1EBQ0R zhjgaBW82<{$-z}>4Mpbb&cmS_uO}b3aq-@kSZUjNmas#D$=KDCQ`Qt-bXAojZ4HJi zxO7hzhL+GdPXi!j#4Cg++BI(Z1G-;K+ltu59%BO=(V*VSpE-0M2M)%UHHa`PQt5{c zF^zWtBpEoE1O+&;LTPzR^w7$pH5>Hy_+-OQBb)9EF+sHAAjV}0_k*aC)2(}cOw^6jEX|m#wcDfbmmLb+}+dp1AQo?SwV}?v7!Ttkf zYY>Qf`ZJ2)9{`&F4uTo(L~xF7=T8spVzNc9*xw1cJU8m#Q%0!aGJq~(JS4%EpDUk} zbE&JUs*>4KBMJXqPqU+QZAE^S$DLX0!K&&5xD4PS$zm5-U={&ySap~_y>SY$`uyuX zfD@4soSc3VgrLp_`bt}#M)f`r8B&UhaDmZ+iNblCtviP8aqSz1$Umak0$+jqV;&r= zVl~cq|9kTFy=V`a0%^aYu%tvm7BK#ImH6bUx3&Tj5!Ti@@f7T z_LhZ%2h=)I(#f>&Jd@ZtR#rf$(AmGc$oaKSAG5vH1dbzH&Z*jg99j%h z(lol31r#0P%aB4U0~xQfvo4{+7pZYpvsJTVWH;`|s$qFzNIH%Owf^{RSlE z8V5FLzH%+8323kTgEB0iK$?fE1EaZW2Y)bFv~RC3pylUHKtkFFnRFpa&FtCv5lyFt zU0IWK^a{w>Lwf|dmL{sDhhl_XQWg;A8yANM6EZEoNC zvvBFaff$|5DmUNYms_&bj&SkPQ%$XEZ6T_l^vis@|;#l&*;S*j1G8AM7~(e1*AJZeLC@G!fc_^eX9X zwdvH$dtR?*%-S@n?LLj=X;hstv=%(8#(x}!=2mDNy}|ub7>i*~tyrIxKJ*uz;58oX z7wMH7%6vlajRa&uu3m&CETJ}xkmS^@@tm-W{vH#%KNAYVTjpYyqgae$(mZ-3@sqf2 z#Q+(;&i5Hw21jWhv4l_xFq)3s1RmT>AIi7fX-S@5DOa*CSl}kRJCz6$iL3csS@$xR zyD|TUv;O~uij;sF0Ivr@fXr(jxBK(;J~xo+oF0K%4OoXhn?62OlA*-~aCKwO*~tll z!WI0){=8`#DVBN<3CA){{i0A7Qjln_N${Qh;gacfva|n>OjW1*d-)9YAtnk=KnoyH zRI7e4vPc0EJFB$-0Wb{lg?e3txib&Ip2h5nW}$S-X_Osm;`NA*9DC0wYIs7%I`vnf zAap6;`dq6NYyx$wjweuw!DU>}AvtrW@W8J0lcvOUGN(XVe`}kFoJeL;EIsHwVcF27 z`t#XELKU<>6k=-Zqo_$8+SovY&raRU>z~?JREAG(a&jGTF*}XoU&0dwm)t0i{_d6r{$b`|F<#0<= zE^F65;^ZDr?T|ab{R-?CInZ(1d#rp9xXPCGtl0qRS<4<8*w+HRw&~aQL1K z*j*4}b61!CBT?-2>_Y~KI#U{VZ*G7qLDJvsB4KR}CnuQ!{o!rgPAYKRZKS02cWI$SC1fIrN5|13wn5_e~3XS~|p ze3YxrXei^;VzVFItddtDl2jcn`}ClfZ*RV^jRFY*3>gL-64>vx4yMZ>w9iptQ}Fvf zc=XaxFppL$l=j)y-l5;_PcpNVe-s^ecMc$g3ld)w)a4>&ELna{DYOLyA=o*fqO6Kd z&dXy4m6>f@<$cwq8BL^p=fs^U%-yY5&>Tm_OyJT=TUCi@kh*lT3weWNfzZbW>4xm? zS^sWzL4!;5P0I*S0X4Dm*`Duz;y>JPTCcaDUfNTv{(jQRILQ>hgbb+5wWWgu|8Szs zqt;1-K&!~Dw+JPlTKowNjg7qqHphRZhTK2y1+FHIVQ+X&0)~xN8J60wTDOPMz$_~l zGLil3*DF1}C!L+01z$!O_%GMfVgy}z;o`m|r7Ql&j~~y0@E$vR3Z|%8;B4B>>SbArtJxA&*|IbQ9uMGcokvQA$`HfP;lyj%IbP~ zd_0#x7)jA zOMM2D7(MjMr=2Ccis-vRjD4#_1y*&jRYe}nVWWOL_1H_B>&KD(CfM0eyeFMAF1qZ_)o90or`7fHPT04FR0DKgLFHQzL% z!Ez6{Z;yoT@Irv!NF`k}LcDM!UAx&dby$vB7tP~3sJ3_#h3{1nuP(8l*uIzZ9x}MNv^vIT$}D z78MThzjqhPZ?eg&o*YB-pmbKz%@l)y;Xi*P+^=h^1XVNztf!bRv-J(7GAMJ~)nYmpn6 zVvlh^#i6$Oqefj52;Ehjd(e;KVmu}$CLRNJu%^;uTPyp!q|wX#8IAGZ+VN(WVhZO= ztajx544(9X+z^jq$K_&d(^NI`mAg$I_%sE#(IB>d=Zk15-9d4O*%c@SdX8RHxwAx8 zQ+LvVIcBELh=%+{>U8Xuw8>u;&l__F*73wo>V zQ|)onr8-wDk0^H}R;1Cb6F(SV^x~xAs1)HaLRBQDp_#E{TjNEOf;1o}R0vz3Z6+=~ zP799g6e3T4?Kz_glKm?V=B!Ft=68LqBXJ6;ku#QY17TES5ktmD1C8#Hjpq{WOH(;T zoOJ`AYnRmhtbgDgTG~`SEmkQQM{%AgvTD~@w_feGtg(^?I%B$Pi|T+~aiY#3jsZ4a ztS%q`0zKQc4px#yoss3`*(DAyLf5y3rj=p^tVn$kVv8*iE)Z))KRze!?;VZNvl(vu zi6)0j%urx5a)z+|wRmMeQ1J^v<0@z?NE)eS36_y7hOtHP^pqBqP0*60#rAFLQuP*6 z3ZBL+#Ero&&P9s}1R-r8Q;iq3+!~I;{oU#~U)w=*hFFyMyWj?Gr7(de6&IChcmCLt z2qu5%ocQql(INX$!{3Zg|K($+rI`}_r7r`Uo(fU9Y+E$ll1jfzdk3j$Sj)l*hJF(n z>RnSnP3-*oON-kD>{1fhn6eK0=9>puP?5f!F&pn#Vgz;3hu0wDlS4}PsEa(|mv_Pz z>S-1A%ZZ*ie{xc!W~cAs-=Yy; zd#}E~geG2@I%$c&5wn$eKRjp6t9FqLxgcB?!yb{67KmoHzYJ9|R2vR;As3wxX6#eT z&K7i?($;2*dW0z=7@zk0Ca5*-i+r$B35TM5KVQC8qChW>tJo!23=@k(*V&2(dbQ8v z2s%fe?-Eu4=X(*jBaZ05~@*ljt;o}c+X_{hKfK$zOZRg}?lZmmY(N^>U4_?E zBqC8#^*d7IyM#=KlptlCZR>l|va!9kw{Djord`K0GKxb{Lq*?+1$8GWzWiXEqe+X~ zp}eJRY$O!sXyfTY8fFjZ2KG{f!(l+CXr23bU0(f> zVp0n)y-Wj{8zd&gbGKuxtbDXzbcn_xSAj+gS%V$K3GayL7o0}D{JY*avDK=_!LWNg zO<6w^PM%fK?l2S4>9=m~oKeG)kI$C;=#mO7^Vv^~cN`)y5|3yovvVNP#^M@JoI}`4 zDk(zK1qdK9Tao?DYLhj3v-_~S>UcYt=iV~&Mv>K$iwg5AkAdyJdqoCa3|=~gVzJ*> z7CV`?qh$&Rz7|6m{aDv6u4~4T1loq_k!Y|vQ3{_du3r)WoWk2WAZ_4VRnh3`+!@Bx zt~+mGSp-hgvFX`OF^23Z#rnN zyZno9kBNaUv%c;?>G!pIEDWErRWW-Xo2!;r>mRk-=1lD`g+nPMu4`_|SRREMSZ0-r zKHrC>RGDu+kF99<)uxolWBs(&)Yg_0s^mNPME6}RwARyWq=P(;b9T{kd#ap8*CbYD zrVilgW<0;+z`XtR8WhH3Ma4Xs7B$XVveqIf7S(11nQX@*Z~rQ}2D`iuQIO zMoBeU{6OcE&cj!pqhBf5BovLE(?M;|^P4RuzmMXv)69i_a)3VifL){M7^%QteGrBJ zbXBbUv=4xe|L(m)#isZS8GZ*|lZKjWzX_k}kDvvtb`nMoY(Q`Z2Xl{WZmAGRF5f_W z70h<=nO*k9S~u`K9wjRqqTtX!8RJFhM%)LjP&yl0cbvUyF=1cQP4#zdFI{Mpu|ouI zxq;G^IzV6NzE@j?Tpq-2njC3|-DdnmGtne@cas_;FS=IbXi z@1MZ%aqnMIhI-?pDFEXabDPYY2XuTyB$+c+sxu}j@6Z6r6@{@*s^MVDPPo@oF0Bp-8(}ZkF=4SZIrkTJ6oHd(Mwy~+s(jDOqQH)wswYE;As5_7*sugNj7;w zRHI?H{^?WP+9%{t5e7FlTt-oE`?rj;nsZ2Zp{;lEtagx!hH+wK#QW%gdspmK{0Jko z`mqqwK2<`9K=EKt#u<~)KQ!!wNO}6mfsR~TWUPilmo|TgxG|?6SbnruSDby?#g-O2 zOnP+r0kdD@pFp_a%oW=nPHHDnegRzT36qNwjhvf->es z48hK|;3z@`Q=23uv&QSE@e4;6C|*ML?%$kORF_WK{Jk3>R`Z(o2whA&!`0o?#z7yS z&}lSO+F&D0%owY2ma(bjNhdz@mq?2$VpCm_-M&Y@S@==s30ijPbwV)X6tJ~HpKa7I z)q?s!vMRSVmJ zbo!vu&|6KgsRvkP;bb;Jhkkq0c`=FJHwu^iS0!a-lTJVXmhE?Tg|yc_bCnoG@9FC= z(TD&3kvqsjn~X6QUt%MpV#-63F{5@9XQJi#J|lY* zyWr6{-gQ)@NH-x>n_$0zbKYDQB+uDsPxf)Xyu~ggZGJXAj3Ok-6f$H@zk8E2({k%U zY9p5k@9w;}5b!nt77{NaYuNc+ADf@Q^%>Du`F8V@4@m<4R(@Ze=`gz5kdJIpCT|M`jj5C6blDg_Kxw~-$jkL&Oa zZ!``s-l0(Cu~mxQth~w{+-q|RI&hWl?AGXA;bmVy&KEC!qS~wJz06j!asA~tVY#@NZj10hq|TSV8e4om)R@j^ByU_@xw79_ z4HbX6CRH`+*k)ylrB4wBh|Kv;a*1y0>|FH2V z=+M(ub>~t5MiE>2t|g zagj?W>`AEX#vFiS4(civ^7Pr34a& zuLQ{LFKB$Jg!*xB!5b8ey7U|5=6!WG**cQZ4mccbA-jfLXH zqldmD%l%N7{EqyxF*)|M(Y>@NxH7Nrk(c9s3a8*3o|kW?!-u%JQ9Y8iISm!^r+=J~ z4aA1!nO%8?EZFH_n0E*-bV%b zy5g{tabR#T+|q;a2}eoB8rmXao>BqOtTyd%R^JEoNq>1VNAoW)08t7^ETH{>`F^TfaN{l%?ifcx8MIJompphia|_S)9@qY7t@KxfPg15f{) zZkhgFCpUbU)utroA!gqYWG9UEJUcskNOuE-z+1f~iDQk59~U)|!zVbAjb)0^MoIS@ zk{nb!yC}*giNVYe7W`^|W7$ERg9WB*90 z1wKWL5KXf96g?984sxXF6m7?fKn`=Q#%s_LVIH!QD}BSYJby&C%xs=bUfr4V8z@z% zptsf^{UYrJVL-Z8fTHTk`L&7Rs z7~w-~xt%*Inlbc3#L%EGEs8gn+BTw{lRS=w$0qa`k*B{ney4cSG|Rr;03pGXY&^lo z^0Iqo2KsC zMH)QIV-3&e3CV)q0CDQhah-ZdWL|aq-lfjBk|L}$;<2YsX(u*FM;PpXmPe@HJAA%L zxIP9Ar*cM(?q0o@`kf{G=MTG&Q;8xm>1F)+*ySX(m?jX}C4K^dkx%bd5O2eJVZJR}G;iUsYy^w2yT?`qvUWP2m z^GTHt6Msow?uwz2_bj*)-kKC1Zi;=%zfB5PxgdM2DpN3VQS|xrdRyO5%f~JD5o5Qf z4G(>Ym$A>gU%(BJMEDOHoTvlFpxMddHp^&*bQ-im+z4c^SMVNb5LL%ZWtdCCS!2e- zvi%ROfQy;SSkdb3TWomex%z|3rY)NGVrv%Cnpz;giSAx@m9v(}MEb&1^A-H6U_~Q- zybbRpI0*x&1!JC7BgVc8b1DiLl!usZZuWyny$LbC%MTxq9*$rHJEaJe^%+IUZ`I|D ze&Y`zi{cxe7&CenqaN^5?f&2jCe;{L%3uQ&Dy{fM8@dAoqOP(KW_x%0v*OpaFFhX$ z_o{L-sf1(Q9=;MFStNk!Nw3}S8lYLXE7KX*xv`6@FYS$CXwZ(jLy-U5cmhw9V>*v> z1_m;scXC;pnS`J7^l_2*T|eh7Ws93XEt1cWIlSmEbL3#IzqW!J^6t(%c1G^u%iGj+QW#H4mVMxW8z!x)Q;xk&coCwya*oSv2|}Me8I`rBUo;z8(#<;S|DxZ=x#B^My!~$i}$VZMWAxj1mw^sR~DQSm7UJ_ zd0G3^um=a+N$$6fvhgn;faM1YYck)iqgD@$7?V@*Y!i#13F{eVm`d0ghXLf9;hTboQPAOz0PyVRi z84}B+34syM@K-t$cFheWB_&7EA62gZT`}|{7*p=$vTDjV`af-tWoF7maQWKp+3rJC z&%QY?`ivM;2N()SGzL2_tw=&FFJFL)3fx5DJC1_yAqz|WF)lNA3>D&MgMFP)Bzl2V z+Tg18qlN}y#g||Dk_5iZj5@&^F4SF5MnI%Rg!oG>A73&Bj#*bx6wuc&dFFs-0C2M! za0e4Ic)J3rdn%d($j!ue20l)TWrWpzO-7KRk9>75KOGYSFr_E*J&3j~W`D%1E9ASj z`mIkQH{VC`xmV4%w}p;ds!0FpV6u$=Knw1NLWL*{zZbx#7e&9$LDQiyy5HBE4y=Eb zXk7$Xx!usHs^o|vXr1FbcY_#Hgm_+=YHLGXx3_z5#t`jD9iT})oxo9n-gM1`ck-IS z^_QDU2a}BXR2$kfVui$!!#Hc+ygxn$r#-(Xv9RY`n)we|8a zUbs}~Er`?rh=4`$%$ezPqhX?1wbt?A6++BPR;2gR|D{^{tI^TVSchgnZ4iN~8g?{4 zqNLRbI!^*-FhxNl8UzD%yq>G}>}^x}t&AT?1^Rswu6rlT~k1!R4@nE@~=c#hm)B7(&9D=vNN~ zbV~PYHs~|5$6rQZcjfAz-u0fRmz|wXFgb$@|KLyAc+7&H(}{6Ozp~}0RT$&-BgDJL ziG;1SDB&&8=|F%r%Vf6yNjrL?=-wCrM7}+yT#-II<(qINOfYtM6S97H%z|H^MZ?Wl z9BAXwZuCTMF_Vx7_igYJ4=_7xC?_{}VJ!ZRfWLLKTFn0~>bEe}%*gLLDiXcfh!SSI z%I?q-QhtUmOQ?0_e~|XpK~=VI`|kooT3WihOFBfPL69!#lu{BHa1+ zJu?33B<#M9MM&O)WWyVk;A$i;*2H%>FR{JvugcBQxQZbT0XE%fry^Zut``OkXahU8 zGksyTK!bho)Kn8q+D50vxoG2fct}Inndy8xc-9;_k_zi{PqwIo@sIXjVS^JHr*9<< z_U+=Ab(X*c6%3BM`nO_UMn^|K1K5xHrlu_$!{561H!v6tP^7#Y5SxGJf&si-9apEo z0A({*@pXiw3;N$Km;3z^F0Tu-<>R=I%pNfwvb617>@?&KjqO%#+M3`5#`{p;`m_OF zs3!j_FksiVzRhyqNv3HM@^Swt!&2o*woNIKW%!-sZ^JWZO2 z${3d?+Zu9nud-c!nSWcPtK96>+&6cNvYuk%f%X%lna&ikV<=t79VlMxhparZ(8~x2 zQt0XGIupm|4(=rs!yGjBcLoH8XGeaEPUDq1Q5UiOJgpIE~r$0*2#51RzMA76Hu_a`PE{yj+ga9$>~7ZZg? zvFo0Kiz`Hh6fm#vK?V_oWIpwJ)ZsdrdVg;Gy;wKHt`)8u50V4VX-LcApXi2+c&*!> z&*BDNJDn$B_L|B6@9(u`gEqlOfo~!|HyxCOH2TFf#oj|(?fUIPe)nArThc7c{n{9U zI07r3HsB6z@Ws=@2IJ{XZh)h3I9KVp5kkP}|K|hbLLe1L0M;v;e)O<4t;FB*sr?D* zH6G33pHLx)%Yue}V}-kbcrze+^;=`*y=Bz@aC7_ZgprFm1Z^p|o5#+}2hcdQIQ z>kC7%3ulqEEyyIq{mDyy$a4+f`-36m{^+&JSf#o2Zpy{An=XRtXL#1ilDH9} z70E;rFe%kM`i~J$hLf-l-24GDC;%h@o?=VL9(GGKTzwgO zx8k?0Ex*8{++)UV?phNpuNTDqx2GNa1$>68rmH%Y*fN^%YHfiD&4et25v6HtA;l}o zzp4^usU(Z#ex+^_+OITY+nlyxjyJ-a1obl9wm*9AV*jYEbeS_&%XAXm2QdnApNI1b_AXF$ z{`unva2yqIzooAy5|3lVJ11@Q)hnOK9z3RR*t#KCDw;5Ccbk9>@NVzScr`8CJHdW5 zf{r0!sKS^ss5UvL+GSS>ECK~pT@=b9=fNA7-#1^Zt9xMBm>-$M@`NdM-Pr<@)K?=; z)8>yq?t691{%QS?fOj9LJQzcrCQD05FD^|Ps8pPw-ymlsYj@K3e}TEY`Jk+v)9paL z{btDq=*wzO{QlV%?^&Y17{Mh% zJ<=zMemTltcKA}S>s-#Y#>MdKG-nehNMaH4WF?>FN(m+;!zc2nD8LCo9u+Y;6Zdh` z`sU-ZLKH2D+FGaRXbnz4 z!2#+1A7Dcolyx2WD;@ zn+}cWnMMuSsosL@ZjEm^5Rw4);a1-xt?_lFVbb+9^HAO&Uodlv?t)tBSHNwtuUD|2 z@Y=-goi-&3s#^9!Yo&(QyYkyfAD?NlU~lbL;E5?+U8h;t9<$Hxz7VfV7sOj8tVF1g z`fy&OD!zJ9$VmB{w;`SA=cc)2zZwqQI^ZjO0=HYqOIpjZbVT5qUv2X!K}!O1Zy0%i zgwJ-egF-HzQcm^NlE}q=mHy)7q>&GkfVs5dAzulL5u;5KY{6(b5t2zzf?AK3*7+Tr z0Ct43DNx}N1zG~Q8Vr(AR>llebbTgVBO^J2X&uW!qb3WW^N6tCR@aGj}ufMv1UWDDGg!57}#N5Vo345M�wlv1%pQ)>V-Fk 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 Jvd$@?2>>!?(Xj1^LgL* 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�wlv1%pQ)>V-Fk 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 Jvd$@?2>>! Date: Fri, 8 Jul 2022 08:34:59 -0700 Subject: [PATCH 2/7] updated readme --- Utilities/placement_viewer/README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Utilities/placement_viewer/README.md b/Utilities/placement_viewer/README.md index 7d0ccd05..7487e5cc 100644 --- a/Utilities/placement_viewer/README.md +++ b/Utilities/placement_viewer/README.md @@ -1,22 +1,22 @@ -### Utility function to visualize placement in image format by using plc_client from Google Circuit Training +# Utility function to visualize placement in image format by using plc_client from Google Circuit Training -## Install Google Circuit Training plc_wrapper_main library. +### Install Google Circuit Training plc_wrapper_main library -# Installs TF-Agents with nightly versions of Reverb and TensorFlow 2.x +#### Installs TF-Agents with nightly versions of Reverb and TensorFlow 2.x $ pip install tf-agents-nightly[reverb] -# Copies the placement cost binary to /usr/local/bin and makes it executable. +#### Copies the placement cost binary to /usr/local/bin and makes it executable. $ sudo curl https://storage.googleapis.com/rl-infra-public/circuit-training/placement_cost/plc_wrapper_main \ -o /usr/local/bin/plc_wrapper_main $ sudo chmod 555 /usr/local/bin/plc_wrapper_main -# Clones the circuit-training repo. +#### Clones the circuit-training repo. $ git clone https://github.com/google-research/circuit-training.git ## Place the placement_viewer in circuit_training/circuit_training/ -# Testing: +## Testing: $ python3 -m circuit_training.placement_viewer.placement_viewer_test -# Execution: +## Execution: $ python3 -m circuit_training.placement_viewer.placement_viewer \ --img_name: Prefix of the name of output image file. --init_file: Path to the init file. From 671dcfff79fa43cb59cdeae307cbc4f8057220c3 Mon Sep 17 00:00:00 2001 From: "maria.shaukat" Date: Fri, 8 Jul 2022 08:36:34 -0700 Subject: [PATCH 3/7] updated readme --- Utilities/placement_viewer/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Utilities/placement_viewer/README.md b/Utilities/placement_viewer/README.md index 7487e5cc..963cc732 100644 --- a/Utilities/placement_viewer/README.md +++ b/Utilities/placement_viewer/README.md @@ -11,7 +11,7 @@ $ sudo chmod 555 /usr/local/bin/plc_wrapper_main #### Clones the circuit-training repo. $ git clone https://github.com/google-research/circuit-training.git -## Place the placement_viewer in circuit_training/circuit_training/ +#### Place the placement_viewer in circuit_training/circuit_training/ ## Testing: $ python3 -m circuit_training.placement_viewer.placement_viewer_test From bc90e6deaceca15ff0ce846f7c441eddc3f44034 Mon Sep 17 00:00:00 2001 From: Maria Shaukat Date: Fri, 8 Jul 2022 10:45:13 -0500 Subject: [PATCH 4/7] Update README.md --- Utilities/placement_viewer/README.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/Utilities/placement_viewer/README.md b/Utilities/placement_viewer/README.md index 963cc732..553dc544 100644 --- a/Utilities/placement_viewer/README.md +++ b/Utilities/placement_viewer/README.md @@ -1,17 +1,19 @@ -# Utility function to visualize placement in image format by using plc_client from Google Circuit Training +# Utility function to visualize placement in image format using plc_client from Google Circuit Training -### Install Google Circuit Training plc_wrapper_main library +This utlity script uses the plc_client binary provided with the Google Circuit Training to plot the placement of macros and standard cells in an image format. -#### Installs TF-Agents with nightly versions of Reverb and TensorFlow 2.x +### Install Google Circuit Training plc_wrapper_main library +``` +# Install TF-Agents with nightly versions of Reverb and TensorFlow 2.x $ pip install tf-agents-nightly[reverb] -#### Copies the placement cost binary to /usr/local/bin and makes it executable. +# Copy the placement cost binary to /usr/local/bin and makes it executable. $ sudo curl https://storage.googleapis.com/rl-infra-public/circuit-training/placement_cost/plc_wrapper_main \ -o /usr/local/bin/plc_wrapper_main $ sudo chmod 555 /usr/local/bin/plc_wrapper_main -#### Clones the circuit-training repo. +$ Clone the circuit-training repo. $ git clone https://github.com/google-research/circuit-training.git - -#### Place the placement_viewer in circuit_training/circuit_training/ +``` +### Place the placement_viewer in circuit_training/circuit_training/ ## Testing: $ python3 -m circuit_training.placement_viewer.placement_viewer_test From b802d5ee1e8b0c17a63c202cb23bd53fdbc10184 Mon Sep 17 00:00:00 2001 From: Maria Shaukat Date: Fri, 8 Jul 2022 10:54:42 -0500 Subject: [PATCH 5/7] Update README.md --- Utilities/placement_viewer/README.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Utilities/placement_viewer/README.md b/Utilities/placement_viewer/README.md index 553dc544..0bde6c4b 100644 --- a/Utilities/placement_viewer/README.md +++ b/Utilities/placement_viewer/README.md @@ -1,6 +1,6 @@ -# Utility function to visualize placement in image format using plc_client from Google Circuit Training +# Utility function to visualize placement in image format -This utlity script uses the plc_client binary provided with the Google Circuit Training to plot the placement of macros and standard cells in an image format. +This utlity script uses the plc_client binary provided with the Google Circuit Training to plot the placement of macros and standard cells in an image format. The input to the placement viewer is the placement files in prototxt and .plc format ### Install Google Circuit Training plc_wrapper_main library ``` @@ -23,4 +23,8 @@ $ python3 -m circuit_training.placement_viewer.placement_viewer \ --img_name: Prefix of the name of output image file. --init_file: Path to the init file. --netlist_file: Path to the input netlist file. - + + +#### Example plot: Ariane RISC-V placement done by Circuit Training after training from scratch i.e. Full Scale Ariane example + +![picture alt](https://github.com/Maria-UET/MacroPlacement/blob/bc90e6deaceca15ff0ce846f7c441eddc3f44034/Utilities/placement_viewer/test_data/ariane/ariane_final_placement.png "Ariane RISC-V placement done by Circuit Training after training from scratch i.e. Full Scale Ariane example") From ce1a309167582c4f49ad2750326efc3f8e1bebfc Mon Sep 17 00:00:00 2001 From: Maria Shaukat Date: Fri, 8 Jul 2022 10:57:45 -0500 Subject: [PATCH 6/7] Delete .vscode directory --- .vscode/configurationCache.log | 1 - .vscode/dryrun.log | 6 - .vscode/settings.json | 3 - .vscode/targets.log | 236 --------------------------------- 4 files changed, 246 deletions(-) delete mode 100644 .vscode/configurationCache.log delete mode 100644 .vscode/dryrun.log delete mode 100644 .vscode/settings.json delete mode 100644 .vscode/targets.log diff --git a/.vscode/configurationCache.log b/.vscode/configurationCache.log deleted file mode 100644 index bab9054b..00000000 --- a/.vscode/configurationCache.log +++ /dev/null @@ -1 +0,0 @@ -{"buildTargets":[],"launchTargets":[],"customConfigurationProvider":{"workspaceBrowse":{"browsePath":[],"compilerArgs":[]},"fileIndex":[]}} \ No newline at end of file diff --git a/.vscode/dryrun.log b/.vscode/dryrun.log deleted file mode 100644 index 9ef994d8..00000000 --- a/.vscode/dryrun.log +++ /dev/null @@ -1,6 +0,0 @@ -make --dry-run --always-make --keep-going --print-directory -make: Entering directory '/lab/aipg-ra-stor-03/mariasha/code/MacroPlacement' -make: Leaving directory '/lab/aipg-ra-stor-03/mariasha/code/MacroPlacement' - -make: *** No targets specified and no makefile found. Stop. - diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 65e1ec07..00000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "makefile.extensionOutputFolder": "./.vscode" -} \ No newline at end of file diff --git a/.vscode/targets.log b/.vscode/targets.log deleted file mode 100644 index 90ac811c..00000000 --- a/.vscode/targets.log +++ /dev/null @@ -1,236 +0,0 @@ -make all --print-data-base --no-builtin-variables --no-builtin-rules --question -make: *** No rule to make target 'all'. Stop. - -# GNU Make 4.1 -# Built for x86_64-pc-linux-gnu -# Copyright (C) 1988-2014 Free Software Foundation, Inc. -# License GPLv3+: GNU GPL version 3 or later -# This is free software: you are free to change and redistribute it. -# There is NO WARRANTY, to the extent permitted by law. - -# Make data base, printed on Sat Jun 25 19:52:19 2022 - -# Variables - -# automatic - Date: Fri, 8 Jul 2022 11:04:10 -0500 Subject: [PATCH 7/7] Update README.md --- Utilities/placement_viewer/README.md | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Utilities/placement_viewer/README.md b/Utilities/placement_viewer/README.md index 0bde6c4b..eebf8784 100644 --- a/Utilities/placement_viewer/README.md +++ b/Utilities/placement_viewer/README.md @@ -16,15 +16,18 @@ $ git clone https://github.com/google-research/circuit-training.git ### Place the placement_viewer in circuit_training/circuit_training/ ## Testing: +``` $ python3 -m circuit_training.placement_viewer.placement_viewer_test +``` ## Execution: -$ python3 -m circuit_training.placement_viewer.placement_viewer \ - --img_name: Prefix of the name of output image file. - --init_file: Path to the init file. - --netlist_file: Path to the input netlist file. - - -#### Example plot: Ariane RISC-V placement done by Circuit Training after training from scratch i.e. Full Scale Ariane example +``` +$ python3 -m circuit_training.placement_viewer.placement_viewer + --init_file: Path to the init file. + --netlist_file: Path to the input netlist file. + --img_name: Path to/Prefix of the name of output image file. +``` -![picture alt](https://github.com/Maria-UET/MacroPlacement/blob/bc90e6deaceca15ff0ce846f7c441eddc3f44034/Utilities/placement_viewer/test_data/ariane/ariane_final_placement.png "Ariane RISC-V placement done by Circuit Training after training from scratch i.e. Full Scale Ariane example") +#### Example plot: Ariane RISC-V placement done by Circuit Training after training from scratch i.e. [Full Scale Ariane example](https://github.com/google-research/circuit_training/blob/main/docs/ARIANE.md "Full Scale Ariane example") + +![picture alt](https://github.com/Maria-UET/MacroPlacement/blob/bc90e6deaceca15ff0ce846f7c441eddc3f44034/Utilities/placement_viewer/test_data/ariane/ariane_final_placement.png "Ariane RISC-V placement done by Circuit Training after training from scratch")