From 86e84c8ca64881240a6a7ca57c4eff674fb8612a Mon Sep 17 00:00:00 2001 From: klayoutmatthias Date: Sun, 2 Jun 2024 20:12:18 +0200 Subject: [PATCH] Updating further golden data files with MacOS variants --- testdata/drc/drcSimpleTests_au56.gds.4 | Bin 0 -> 26018 bytes testdata/drc/drcSimpleTests_au70.gds.5 | Bin 0 -> 71406 bytes ...m_resistors.cir => custom_resistors.cir.1} | 0 testdata/lvs/custom_resistors.cir.2 | 18 ++ testdata/lvs/custom_resistors.l2n.3 | 103 +++++++++ testdata/lvs/res_combine1.cir.3 | 7 + testdata/lvs/res_combine1.lvsdb.6 | 197 ++++++++++++++++++ testdata/lvs/res_combine2.cir.1 | 2 +- testdata/lvs/res_combine2.lvsdb.6 | 193 +++++++++++++++++ testdata/lvs/res_combine3.cir.3 | 7 + testdata/lvs/res_combine3.lvsdb.6 | 196 +++++++++++++++++ 11 files changed, 722 insertions(+), 1 deletion(-) create mode 100644 testdata/drc/drcSimpleTests_au56.gds.4 create mode 100644 testdata/drc/drcSimpleTests_au70.gds.5 rename testdata/lvs/{custom_resistors.cir => custom_resistors.cir.1} (100%) create mode 100644 testdata/lvs/custom_resistors.cir.2 create mode 100644 testdata/lvs/custom_resistors.l2n.3 create mode 100644 testdata/lvs/res_combine1.cir.3 create mode 100644 testdata/lvs/res_combine1.lvsdb.6 create mode 100644 testdata/lvs/res_combine2.lvsdb.6 create mode 100644 testdata/lvs/res_combine3.cir.3 create mode 100644 testdata/lvs/res_combine3.lvsdb.6 diff --git a/testdata/drc/drcSimpleTests_au56.gds.4 b/testdata/drc/drcSimpleTests_au56.gds.4 new file mode 100644 index 0000000000000000000000000000000000000000..4922db8045be61556a87c58a22eff8279ce162bd GIT binary patch literal 26018 zcmbW8eax3-6~_+`_<)coh+x75M8cLPYH2!fh@h|x1ZjZ*f4@*SVhi`rg-l*xdE(zV6R` zz1-J*&i9<(kp^jCU@grUH8A!K;=gGMji*WJ-!yJu@Q&q+iKdJ`=jK}u-|+sQJoE1x zmz=)($>Vpgp&91@Zg6nT$~%e1j3XL6Z-7S8;KTtUy5oY;L=#T)U-6&(ec@-r^_h!^ zrmrP(?Ys+!+;!Kw``mT+FEV2$jePzR_xwe3hKK+ATcY_-6OF$+v{RQ5-8h@*(jO5m z-x1nXJfmsX5V_VpGjdJOeUE$YCg#STA=?iFQ64`r~~~ z&*AkC55GB?XyM-B;eUOOXz~9-d)JZS;kO>=XP@9Xzbmxof17CCR3g_d`xGzsYk>1Lk|(X`)@=?juYMb6{2H2zuT`Tdh{Zqcwf_V{QKYbAkp>TB3l0fum7IVt{z9^ zuDfeHmxY#xAa~uh?ml#TKU>4DqS9spv3D0ru!Fjy? z-w-`;GTa}zrsw+g5AidOzK>|*#YD%a@H}`gpF2VH$@xU5J`&n5^F8rC|D1Ef`QIGR z|KRKa{?5joKbn`sUzIymO{b=v%FcG>SlJg)NoC(jCFK^FeBG6lBW5n@*?>wavlNw7 zlRatQ`RvqIj+LG5N-FyTDygRLq-|ZfH44_Hoyu%h&mQKqA<;6GRHk?; zsZ1ADQMvk5cE0$QM`+Zlu|_D_N=ob9x*7J=tEk@EvG^P&+PIR+6m%t(>C#Hd+4)4h zR#NUnB^tMq$`o-WmBj^>R2D^4Qd!JVNo5gACDjzqwA;fhN~jzwizzCpECQ*doL?@) zDO<~a8N?}o0$vYLAi8Ox3ceChASMD7@UVaakyHzn=O^Mh1QhVgfO39WNcPX^iE5z= z-W*VFoI2%FQxHij}(o;z}?U&>MgP(P#@*P$_@{F)W~fwgD7~d|Rj_ zQ&joBK)hTW3+gC9>6~BP_XX7#7z@PaMG9&*K!J$9h3aQE>vp3#587@Iv#e<4*~oIJ z9jJn;1iJxp4uAq$6i^^j(Lxn66@UV|7f>L-(Lxo}GN3?K1W-U@0}5ztK!FSlpn!q} z6v*2QmGvRW+W-pWZ2$%GHh=~P#{hL6o^v*1>%%@ z%I6S79Do9OHb8+W08k*$1}IVGQK6@v2vF|sf-(mb(Aa06v(py3TOa80Sy2s z;LW#{?IG~XfC7FQP{1z(3ixF}fqWF8KxPS0AV&l!knI6fwC}EQmOK5H0R?g?fC5<& zK!N-Qpg^VqP$1_3D3Cn>6vzVnHo))ZXe>T|N%c_WSRjT4 zV}WS2g(^g&fC6zPpg@EOC=j&)3Pc=$0ucwGK*Rwk5ODwsL>zzu5eJ|^!~rM}`LM+i-~M5dYNYV}FtN9+SuS+-tFZ@$X!>wwGw)bFmWbmEduj#@{{^=I`ct z$&o(4ljq~s75kgUzr0uJ#`k%Zz~jogqnVi#npSRel+$M`T0+AR&^cMp>jKQ zY2ci{UisDjb?z_nw_VKRzZ`j9w^t)P{))$m&iw#U>@V`^`rW!0{-?kGG4F_VuV>5S zPdGiy|ADzsPUlvv$)lt_kH@ zRhQj&U+Fro?|o=gsI`dwMc&;ny!+L|-7ma6kNXRJjO6yPr+?Jd>&6WE6YPz-hIHLj z=`ZmyUmf{gY!~@n_Ipnw@4uU#|DF`a^V)&=aJ_}&aeG?h$}oS=HIL`Nx2b#B#_;}5 zjWjFa!> zaU*}KEHQfzmIL1d*B(O&+vP2t-Buki@et_E7)G{;(dFQYqoDA z`VybrTc6}Q@lVJ4@D=6vcOCnqM>cYuInTq@nG3h{DXup^LKORp<9lvD*QfuL??1uz zo_`$rBD1&O!1d`|w;lV7{8Ik54)5dpt|Iz8k0;OZJlD6!{wCgkuQHBsGXHqJiSy@P z_D#42{QVu}eUx!ye~};JcYT!CxN%yjPrsjQ;Gdnx_VSugpC0>*{H7gT7c#TYdv1N; zPx3Qke-rQ5E#rFa#d|2@#_LU-U$?t29oKzdr{cKMa(|Kk_+>(7o%;)X@Qo9m5AB7A z`Tuv}Z$(OoJ?FN4DV@~#4xxNti zJMZUK27k5dgTYToI~1>TTbMulmqR=r`zzNz{3`p)oBOR?NB&Cet!odly>H|Pz; z8}x?a<@|Qg3yL@R9mN~`hvE(PJK>d$?b+=X`l8%7j?7WiZ|Hrgg4o5#T)E* z!pAtHoBdY2!G0@V&VL8{{nONbi~a487gD?-FQj-wUP$o<|08_YypV8SH_E`bP1of3MUxiZ|#R#T)dE;tl#n@#*?2^^M{U`bO~veWQ4T zzEQkE-z2-r%PdZ^)x5-jGL2cvBuN;Z1oo#T)WyiZ|rZ65f7R;tg@6;tg@6;thU6c)#Br>I;NZ`_{p~DBci9D&F9q zg!k+2P+uUNU$?=pDc%rAD&7!B{vx$&X&h4-$0^1P#h@RN#9$FKBr!gsZ^Be^;|E1chNgPl~o!A>gP zU?&xCuycwx*g3@;?3Cig&UA=_6mN)w6mN)w6mPJz!u#{yAr2DGpIh0t4snp;4RMg- z4RMh0e%&47AmRMF4RMg-4RMg-4RMg-4f(}{H{}---jrWdydl4+ctd_M;Z6BP#T)XA z32(|TD&CM^RJ_>R4*A7jr@G8={u17F{u17F{uFOGe~LGpzl1lPKgAo)U&5QtpW+SY PPw`#O-&hX2$I$-)vPaS> literal 0 HcmV?d00001 diff --git a/testdata/drc/drcSimpleTests_au70.gds.5 b/testdata/drc/drcSimpleTests_au70.gds.5 new file mode 100644 index 0000000000000000000000000000000000000000..5c6ce599612ac56526b481c1b682322092d9eeac GIT binary patch literal 71406 zcmcItORR25RsPTGKj$|6fOjGXK{Unz z0zzW2O-yX#q@x%oM%zRaqi7r`f-kOsim^clCSHjH6R#s5xW20Ts@B@It7_FgKO`sL zrRrbbUawlUs{VaW@AkXn<7aoTIyyeTyOV$KE_c^+n`CybgeTK;K zzWmX1@pI4}KjOoL9Pi8TJ|&(=Kajunt|$-WxM0(MeCGHQ@w3HuNryBp^G$ik@(1$p z1CirB`O_DpJP>k-0}=9RzWMz9$D=$Da>xTBnRKiTab{mFtH7i`Ku_;8dDcyG6R*OgZ=mC_5Vt&|NYk-?JjorhbkaX z7BBC=ZZFGc@L5{S%>A zyt$W5z`rHeZtkB>H9y6r;-&u?4G{FM8!p4&^JVmYacE0;DM!G4!yKp zl{}wG9f%wk?8?)B^e2(y3%@?NLI3PmR^YVODlY0w8;BeibaPRE+C${HV2kUarHzy! z2a)4~+Q*f=BgR>mMebEx^aXuG8y{VA!N=f&&%s6Hxc2>s3poKU)FW^aIWFkdi?+}I;51qj{XJ0i!uI)Vc_0^u`o5jn1XC%NXif} z?;_U5r-%#m0y4%#j&IQye9#y8&ryJs?_l=5+ zdBZ#+a=epIh70~<92gfO#~1PG>IL7yR>WddBNlbA(u;9qT!|bP)bVZV1smZPApA60 zBd+T>A}_!N1lRs{L5>S*U5q?@gUEZnbo%0*~pmV@*ZODNp*M^+$a$R9v8yh#op{W=AHJRH@F2r#%@0wiD3;qJK{t`JZ zsB^8!1-&2x?9}8I*K2jI!uQ|;f(vVa$ZWNT&0`HDa$MKKo?ftVCZ~IP!A3kE2z?N5BFDXY!N!^OvC!)Yorg|;={zvyOCs#X2enb8k`3?DF8L%Mt(#7JbA_ZG4dPo$H;HU zA0xjZe~kQw{4w$y^2f+;$R8uWA%BeghWvTM74yf)Z^$1bzaf8&{D%B7@*DEU$ZyCW zBflYkjQocDG4dPo=iNGgobPtyOeoFO&Hb}C<9p)jU2nsu-iHqFSVKR)Gp**_e0+m% zfNnnLyXbB{=ey}{KIgmYZa(L`=b7)u>q3Bazh~lm`eJ;S8;D*V`A<~ulDqkw@0J(7 z*Z1{vzH9F0bG|!X_@3i*Q|2R>&#b@MsvY2>T>(@Hs?dcS>KxS&U)6Ach;|_yt7_)NW`JDB}&F8E?Za!x{>hb-^f#YlV4iI0% zcYydBz5~S9@Est&hVKCJ{gjR`>JRRZSch;QhkpY(E~wYPk;mVTK>ZAOC;m+i!~}II zkK4aRVdSxY;WyP~l&*46X?`e~ZTW4|d}(8U(x-?Z@9T;l7aOo6pBQ z_9-CtEyxi$zSzIa^TYmeH{O?G9|jK*aY*yc=ZF1Y^yNMTdBziVr1_>iVh2Bm7(N;Q z4gX_|<30ateepL~V1LHTY)|v~=%4Ux_E9>V;vBof0}Q~!#`MWKozeL z2aXGN~6Hvt~jB&i@ztd;pI>Fz70tcQK zk>maKv%eibx4#|b5I@NCd(bqm_5ZZ4pHBbh{q{zEo;7^VdXV{6?&A%g&PT+hQJ*s3 zjrzXA@WEcLORjSw#{~;teZOG%5M#!jc~9iHVBxF3k2HMFe8_ww|2gxc$M@&Ud|_Rr z--sL+%zQWM^Sj}5)~~`>-!B+G=Xx%Db-oxr=*N13dW8C#@gmoo!Z*+le2)EYijVsZ z{15#yUXS|8eBm3!L*;D9YhB+}t{1-g{>b=G%X3{2@vJoO=EM4BU0?1O92YEnb-gnB zrT%EtKNUVlzD&i#kuS89eGQT0fs7sf7<;GvH(0;mV;yE)CURV`_-~-!bp0FT-|367 zUjibYx?UspX};)J@0XST7)Mup2lh_atAT###b6gu|v)hthoEbJVM; z{b=An=Xt`d-_qVje_r?o@z62AzjeG-?a6#A{guf-C6nt^w_XkOo86B_`pvGl5#MZl zM|`vEV}dv=&G13Lsr5V1?*Qw==y!nq&G1d{ zzXN*@aNaWd&HC@)@vZB#(GUL1ecIhk=LN$zUH=^U%zg#?dgDH;tdB$6JII&md>-fr zzVkc7`>$ee-Cvn_%+}|X`x3*4eBrr(=L90h&3R#gCUy_c(*wTQ{cYua8)Glx zG1X5F^qb}zA2KFA{KHJ3O0Qa$mZ+88T{5QLQtnkTS?q~EOPX&! zpWn*>Ax|D4o}cEM^3Lz`oAUf#iT{le)GO!##Pid9Q{MUge^Z{{3j^_7)FUFEpXQtL zI)5NX9&i5W_~CgaAAIrC{#WsmxJCIi-_&3GPx)K?9_7<~Q$F}e?kT7{e83#UStHFi zp|63)d{y-l6YQQ^D{+!5h`+i6zk3Jdl=$r9;BF6=r{)dnF z1HWPY5INrSANp(f35e%9{#!GZ{x~l}fAnF{KO@Jl8~y)kL;cU^o0a{<@FCy%gSDW4 zI4@kDJfAAG!H-zAz6Xn*GVmr{fErl0Rm@a`WkUfUm^c>|bs^aG-8Q8)Hs$ z?QvW%^R1j8Og(V!Z*D&4epmSF^PJJox&OKOP>1urcQ4lCmHn{r)%OWTKk(sP9k9JW zPVqVR%feURpH%vBpX9zt`sk?xRGGoBXTqD~*26{k7;<-**_ku+Lr}?ze^S zR`vVaf35dl@S$G;!e7|Gi5wTy{fCi94TfKU@DtV>k>i3*dG_h7!{}eI_E}fbd{Z8J z^F4y){SU_loATH%p(p!R_Mu#tX}&4XeTQ|A=O)(KG~blxzREg`=fQr~{WP!TKcnLp z`Yp)^_Fc#~^j`rvZu>7I4?9EbQXh`~2L525ljgh6N4>%G;qQ>|M2_43+dMzyv*-(4 z#t(L+`R?sO?j20!ESvYrgFO}AM}1{ef{vBSg{CYas5S5rQ28s2 zaa>S8|Fg^blkL6}^H%nYkiU7{o_~$}hWH!#6yKmP<4#oeH1*#QfAjoMcUfoeM!N^~ z*T`?!e~kQw`fcPl?7v1H_Os5i?h-k^sK1r`X(tfYW>>KznSN6 z=-)o4>!;KIrJt|QLx#_}o-^OdeVXBO+UMqT*1OEN@_n+=5B}pmo%^WNH*s9B@YUyC z!>87KUPpR8rTM~Fe?MsWocWdcR^svbWxlX4UfRoX!OXYv`xS=I*}oOO`h05mob{;i z)#qo!2mKuTL*X0f=dAac&l3;kS*L%@e4cpZxJv)nI1d!QfxU;$zghpSyuWs}_}1&U z;>&Sp_hZF>_5Fz9Th;^EztUe8K1V)J#rM$m4)R6U)9lCkJXGu*=;!Qj3SWI+YT}{$ zjb*>WK18ta)%&I4bM~)pKCPcR|Ac;OtA3eB`ZUx7^ko4r;yF|1-TIxr7|(k^#V?D`nldw}zd z(QkG?TG8)s58RI%z612*hHrX()cuR$J3v2f_-6Y_Pdu*Jj~o49Z{F9o_2Y)`0R6b( zoAuvHKW_M@<6G~)6<_WnxAo(OZ@T_D@_8!0hqkxg&yBt4ho9M}u}uGo(oduRKDm43tU!Cv;=Ij`sX@rsY< zmTdP$_5D_f#~}Y^`>RpCpY1meo_~Y&dw}~+6ORM*<5%OW`$@w$-ER!|X7gpVK4#b3 zDF3GSqk+8#=*LYwX4l8a-UIaGM!(tpV@1Ee)BQN^MQ~pX#J=HppV`R6U*V2V5a(yd z`{+g<^%wgT5YNYcLFBlg{yxpf^SvRgbL1A@3yNso&uq%$xv0|t@1*-7BFF9b@#gu? z_g95)(-`{^d;Z|r zsAoiu3wEE6{KNCnx8b=NId0#FGS7z``sILkqdfL=@Z@p(K9`Y4eS@Ar=#4xga=fQM zK8rX3;dj0V2IP1zept_V4iFrOBa!31=i?dp9G|6gfa5)Roxg$W*~rDZmFAoA<9mmQ zJD%Nmzq~2W_W&u!bqs_)X}&4Hza2jZ#PhihfRIn~O?kb3=);J<^`q;LdY(MjSAX~( zCw~u%eguLq%{TSe{>SHwKjZV$yq5oaUH_fyr}V40s`q0JpVJ?iZ)JZne4#F|4%}QtlNXTFvD z6QiHA|0sO*`N8moH8ZYSgp_WB+mUIrk$sA7aZN#8>}tT+q#j{B!iXnQv5I zbUlS`+{YIEL*^UBL+>BpORTFT|OB#4>-=d{Z9!=X+LJ zN6=r^OT>$qk22qs$Mdj8xLy!{=)-*=%{S$j>kqQXUm$)~)}QgeUOy^d@;NxoH=hst zSufBh!hRyh1)K8VciewBX(t@Pbj{De$e6Q=c10se<*r>NdBFWM4a$KvxpT$XWP3oxg|Ub9}SwcjUj>{X_Ffx!gZ+y!&G6$M=sP?~ZpD51ojG zvT-~t$kQQCd2&iDtKwGaGR7?7OfF}tbT%(6s+NpdctenG1PY7lxW_Eef$uxWy;NbD z(uF6jbV|)EbKVVJy`H>$UFkCIUEJWnGC8qkU2aTS#QU#wp35wA7Nywm_9L_CE^-{B zaHnuj_HxNOiB(}ydxeihy$MiQro4+t^GDA0g=H%1UdmO zeNMVhEV`(DYs`{#2;P-jslqa45%0#pW-7x}ql zLFOatfD-Y-GPMGNKQ3eLO64ppQ+`=|GhA4va+mjf>E3T63$hNkjw$;J%T(6!4jgD| z-4qM*1d&cRl2_0LOt45Wv&>~37~q$rQ)ba!?l|lC-BS9lC9}-w!f)8pjq64heqWT{ zGuz05Y=ciwe+Sf3<_JtM`CqwU?UmF05It zFH>0ui&i`MDT|Q1tNrd&qyvlen8-fyPmZ*HuP#;0j&~uQ*Yq95Qui+%mR6No=@~jK z&7NUO7qH;_!GN1BLX|?!EO)h){itJ6v#*=72$6_v$osMRfg8CHWz7F zw0aJhS^**R@5Xb0x$~Iv3*To+C!Dg5>h7=;Y2?XjUpK|l>@n-UuA>X8Hgrk5Td`=0 zrFEK^TLJJ3vM%lVS(mx20|S4=vdl843*R(?U$*a!eBTQBvYn-M%9`^_%GvNc3F4pZ zmlc+OYIldtb#$w`JM6GvO=E8iHBX<_rdXQQyRHlaUGlD`E9MkSa~;(^Lr0gC`C$c^ z+?`^9UsijmDT@#zXV=`Z2rF@|JDkh9RGql4H|8!ZLU$N)Sa(5FSqJItmwRO$>31el zFV*o2Vzk;FPRGc34(RAIaZB7`nK(^!SXz-@IZbp}T3I*8(p&*`&(P7Oxf-WfLhiDE z*_^x3#d$vJSj62GxV=hEoU%H)z%Q#SV9LAA)i}+v>fPxz?L6^y{L-vaQx-KV<}{1* zTZMr|d7ti|)jBM#E@gu^lEh85On;~I`Pf*brbgt z9bH=Iqq#Lbaa+;RrMViX_kh*PFwL@h%9_fT&@JC}-JEp%GV#4yhXvIew-u?1=X1bZ zq?`sEgx!*bd9YeO-s8wUf;GrM0Wg zv9vnXIhIz}tXZT?&?n+L+lx|$g9unTh$>VZ6{lu|E@4lOReTUNG%RAa* zsh=WV_U{v0eECM`wP}wdUhm%&wfK&{9OcvNJ>vs_y`aur*Rq^Hc1RwNMw}3$}+-5+(Jg)D@9r{5I`sG^@o;x@`!8e^R4*igS z&@bO{Ft0hTZ?^_~&`+IxgWu3M!+#tXEcra(gIe1`AjC*pTeK=iGP-e{NR zi+<{!e{Fp%I<(#C??+xB_VhIG=F@$^@h78x8HF#+Pw^dnILe_@fxQ_y{$Ul5fxTKk z_z$`f)tpvzO={N2&-$KRc7wjKE{&Aa`# z=*4#@AB(&vAB)dP^KQQVQ&DdJROH#;CUQKWn{Uyd@6O*B`Oe=L`O>_bFLde>$3@2; z|K1P?+Kt^=?spyf<#XxX z>--z=rF@O?U>*~NFU^;HcJNKDw*lX5z1R2XYxx)U zp%44_qY>Zie(B*u-{{@XJ$&dV!H4t0#jh0PxL}E|`UYXmf9KyP{ebWR!MFH6BaF}R z>G*|3V)w@eTM~)UVf%kNBqT zRrlj-`c21Uz^DC(I1JDG1HS3|hyhhYyP1Bg04i43l_e1{DOYC!-O0VJctRA<1>8du^|Tp z4{RiIe1=b=82Es&^}g2>1RwsV`Re;M;0%{ArmT-I^cbt1sQVei2c7u?Kf)d&#{~;t_5Ik9;d9of!Z*+l zdFEIzh3{7Rt*;9S?*qqHKWF|HzPf)i_Ud}TJR-t>X}<8){hQ%~evl9NiMT#lAM?2G zSL^=Q@F5J7&Qi+%(DshkMBjrw2s2KnNw$Az!D&#>_gc1nE>dAO)g&^65$ zzCr%s^YoL;e*-?9FIZ>LiMX0C1OGuk?wdJJQr>V}u-NO!7t}=XvacX=T(IyB)<@uZ zGV<}9L`3aR^M!BVziGaKe$(~9;Xmft-jja=zUh2%)EDRnyO;T#$NT4ZQ(va*)u6tl z{Xg^pSa-|)G0m5J8Po$^U$D-Q!$hpNH1Fn<)n@kprG9BX^R1j;jsK?g8^m|1AAHCk z*t^uPzOS4O~Pum+f8QyQTXV6hEMq@`>pH0y51W;=*K$Dx=iG_V6k_gU#J5!^`KtAM!y5Zx8j3c;9b_! zJg)7n^TqJ#dWu{I2NAJy^lOF>dO<#5+IMr_a9sCSb-g!yh%fkn%lgc5!4ls=Jaqm+ z9yOk*<_g~+|8%_q57rwIe2#ir**mpg4)S^0e*-?9FIczGmAINO1OGw4srur`7vwN_ zSqF$57cB7|tdGDWF$J50T@7Zv75j??YXgsV|OrOy%={Z#w_#{=mco z_CmjaymumUyx;#-d|3bP`ZuUoI=6=Wbo$w*yv|?NF`_4bwf%@AbRj}M%{QN)>IWdmL6$#| w$NvP~^2_?ZBL6MAe!y?YlYq}R&yV`~Mqbws_zhe{=%40;y!_{APEU9L4}?f(7XSbN literal 0 HcmV?d00001 diff --git a/testdata/lvs/custom_resistors.cir b/testdata/lvs/custom_resistors.cir.1 similarity index 100% rename from testdata/lvs/custom_resistors.cir rename to testdata/lvs/custom_resistors.cir.1 diff --git a/testdata/lvs/custom_resistors.cir.2 b/testdata/lvs/custom_resistors.cir.2 new file mode 100644 index 000000000..da72185a9 --- /dev/null +++ b/testdata/lvs/custom_resistors.cir.2 @@ -0,0 +1,18 @@ + +* cell TOP +.SUBCKT TOP +* cell instance $1 r180 *1 2,2.6 +X$1 6 1 A +* cell instance $2 r0 *1 2.2,1 +X$2 6 5 A +* device instance $1 r0 *1 0.8,0.75 RPP1 +R$1 1 2 0.555555555556 RPP1 +.ENDS TOP + +* cell A +* pin +* pin +.SUBCKT A 1 2 +* device instance $1 r0 *1 -0.2,0.4 RPP1 +R$1 2 1 1.25 RPP1 +.ENDS A diff --git a/testdata/lvs/custom_resistors.l2n.3 b/testdata/lvs/custom_resistors.l2n.3 new file mode 100644 index 000000000..01f44b800 --- /dev/null +++ b/testdata/lvs/custom_resistors.l2n.3 @@ -0,0 +1,103 @@ +#%l2n-klayout +W(TOP) +U(0.001) +L(l4 '15/0') +L(l3 '16/0') +L(l1) +C(l4 l4 l3 l1) +C(l3 l4 l3) +C(l1 l4 l1) +H(E B('Resistor shape does not touch marker border in exactly two places') C(TOP) X('device-extract') Q('(0.8,0.75;0.8,1.15;1,1.15;1,0.75)')) +H(E B('Resistor shape does not touch marker border in exactly two places') C(TOP) X('device-extract') Q('(0,0.75;0,1.15;0.2,1.15;0.2,0.75)')) +H(E B('Resistor shape does not touch marker border in exactly two places') C(A) X('device-extract') Q('(0.85,-0.4;0.85,-0.2;1.25,-0.2;1.25,-0.4)')) +K(RPP1 RES) +D(D$RPP1 RPP1 + T(A + R(l1 (0 1200) (200 250)) + ) + T(B + R(l1 (0 400) (200 300)) + ) +) +D(D$RPP1$1 RPP1 + T(A + R(l1 (750 0) (250 200)) + ) + T(B + R(l1 (0 0) (250 200)) + ) +) +X(A + R((-200 -450) (1750 1350)) + N(1 + R(l4 (-150 450) (100 100)) + R(l3 (-150 -150) (200 500)) + R(l1 (-200 -500) (250 200)) + ) + N(2 + R(l4 (650 450) (100 100)) + R(l4 (-100 -900) (100 100)) + R(l3 (-150 200) (200 650)) + R(l3 (-200 -1000) (200 500)) + R(l1 (-250 300) (250 200)) + R(l1 (-200 -1000) (250 200)) + ) + N(3 + R(l4 (1450 -350) (100 100)) + ) + P(1) + P(2) + D(1 D$RPP1$1 + Y(-200 400) + E(R 1.25) + E(L 0.5) + E(W 0.2) + E(A 0.1) + E(P 1.4) + T(A 2) + T(B 1) + ) +) +X(TOP + R((-50 450) (3800 2600)) + N(1 + R(l4 (850 2050) (100 100)) + R(l3 (-150 -150) (500 200)) + R(l1 (-500 -250) (200 250)) + ) + N(2 + R(l4 (850 1250) (100 100)) + R(l4 (-100 -100) (100 100)) + R(l4 (-900 -100) (100 100)) + R(l3 (200 -150) (650 200)) + R(l3 (-1000 -200) (500 200)) + R(l1 (300 -250) (200 300)) + R(l1 (-1000 -300) (200 250)) + ) + N(3 + R(l4 (50 450) (100 100)) + ) + N(4 + R(l4 (850 450) (100 100)) + ) + N(5) + N(6) + D(1 D$RPP1 + Y(800 750) + E(R 0.555555555556) + E(L 0.333333333333) + E(W 0.3) + E(A 0.1) + E(P 1.26666666667) + T(A 1) + T(B 2) + ) + X(1 A O(180) Y(2000 2600) + P(0 6) + P(1 1) + ) + X(2 A Y(2200 1000) + P(0 6) + P(1 5) + ) +) diff --git a/testdata/lvs/res_combine1.cir.3 b/testdata/lvs/res_combine1.cir.3 new file mode 100644 index 000000000..aa8016e4d --- /dev/null +++ b/testdata/lvs/res_combine1.cir.3 @@ -0,0 +1,7 @@ +* Extracted by KLayout + +* cell Res2 +.SUBCKT Res2 +* device instance $1 r0 *1 110.14,51.795 RPP1 +R$1 2 1 95 RPP1 L=420U W=2.21052631579U +.ENDS Res2 diff --git a/testdata/lvs/res_combine1.lvsdb.6 b/testdata/lvs/res_combine1.lvsdb.6 new file mode 100644 index 000000000..856312de7 --- /dev/null +++ b/testdata/lvs/res_combine1.lvsdb.6 @@ -0,0 +1,197 @@ +#%lvsdb-klayout + +# Layout +layout( + top(Res2) + unit(0.001) + + # Layer section + # This section lists the mask layers (drawing or derived) and their connections. + + # Mask layers + layer(l4 '15/0') + layer(l3 '16/0') + layer(l1) + + # Mask layer connectivity + connect(l4 l4 l3 l1) + connect(l3 l4 l3) + connect(l1 l4 l1) + + # Device class section + class(RPP1 RES + param(R 0 0) + param(L 1 0) + param(W 1 0) + ) + + # Device abstracts section + # Device abstracts list the pin shapes of the devices. + device(D$RPP1 RPP1 + terminal(A + rect(l1 (10540 0) (540 2000)) + ) + terminal(B + rect(l1 (0 0) (540 2000)) + ) + ) + + # Circuit section + # Circuits are the hierarchical building blocks of the netlist. + circuit(Res2 + + # Circuit boundary + rect((8285 720) (117975 57350)) + + # Nets with their geometries + net(1 + rect(l4 (120580 32490) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l4 (-22355 1390) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l4 (-21520 1755) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l3 (0 -4795) (1065 5850)) + rect(l3 (-5155 -6930) (52985 1475)) + rect(l3 (-27585 -395) (1065 5850)) + rect(l3 (20990 -5850) (1065 5850)) + rect(l3 (-1275 -1760) (340 1920)) + rect(l3 (-22475 -1890) (340 1920)) + rect(l3 (-21640 -1525) (340 1920)) + rect(l1 (42935 -2385) (540 2000)) + rect(l1 (-22675 -1970) (540 2000)) + rect(l1 (-21840 -1605) (540 2000)) + ) + net(2 + rect(l4 (19795 5575) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l3 (-195 -995) (2395 2500)) + rect(l3 (-2480 -1785) (340 1920)) + rect(l1 (-500 -1960) (540 2000)) + ) + + # Devices and their connections + device(1 D$RPP1 + device(D$RPP1 location(-65 -8175)) + device(D$RPP1 location(-205 -12595)) + device(D$RPP1 location(-320 -20985)) + device(D$RPP1 location(-225 -16825)) + device(D$RPP1 location(30 -3970)) + device(D$RPP1 location(-22135 30)) + device(D$RPP1 location(-22200 -8145)) + device(D$RPP1 location(-22340 -12565)) + device(D$RPP1 location(-22455 -20955)) + device(D$RPP1 location(-22360 -16795)) + device(D$RPP1 location(-22105 -3940)) + device(D$RPP1 location(-43435 425)) + device(D$RPP1 location(-43500 -7750)) + device(D$RPP1 location(-43640 -12170)) + device(D$RPP1 location(-43755 -20560)) + device(D$RPP1 location(-43660 -16400)) + device(D$RPP1 location(-43405 -3545)) + device(D$RPP1 location(-100465 855)) + device(D$RPP1 location(-81950 425)) + device(D$RPP1 location(-100530 -7320)) + device(D$RPP1 location(-100670 -11740)) + device(D$RPP1 location(-100785 -20130)) + device(D$RPP1 location(-100785 -26915)) + device(D$RPP1 location(-100690 -15970)) + device(D$RPP1 location(-100435 -3115)) + device(D$RPP1 location(-82015 -7750)) + device(D$RPP1 location(-82155 -12170)) + device(D$RPP1 location(-82175 -16400)) + device(D$RPP1 location(-63435 640)) + device(D$RPP1 location(-63500 -7535)) + device(D$RPP1 location(-63640 -11955)) + device(D$RPP1 location(-63755 -20345)) + device(D$RPP1 location(-63865 -26810)) + device(D$RPP1 location(-63660 -16185)) + device(D$RPP1 location(-63405 -3330)) + device(D$RPP1 location(-63930 -34985)) + device(D$RPP1 location(-64070 -39405)) + device(D$RPP1 location(-64090 -43635)) + device(D$RPP1 location(-82380 -26810)) + device(D$RPP1 location(-82270 -20560)) + device(D$RPP1 location(-82445 -34985)) + device(D$RPP1 location(-82585 -39405)) + device(D$RPP1 location(-82700 -47795)) + device(D$RPP1 location(-64185 -47795)) + device(D$RPP1 location(-82605 -43635)) + device(D$RPP1 location(-82350 -30780)) + device(D$RPP1 location(-63835 -30780)) + device(D$RPP1 location(-81920 -3545)) + device(D$RPP1 location(-100850 -35090)) + device(D$RPP1 location(-100990 -39510)) + device(D$RPP1 location(-101105 -47900)) + device(D$RPP1 location(-101010 -43740)) + device(D$RPP1 location(-100755 -30885)) + connect(51 A A) + connect(3 B A) + connect(9 B A) + connect(15 B A) + location(110140 51795) + param(R 95) + param(L 420) + param(W 2.21052631579) + param(A 1080) + param(P 1296) + terminal(A 2) + terminal(B 1) + ) + + ) +) + +# Reference netlist +reference( + + # Device class section + class(RPP1 RES) + + # Circuit section + # Circuits are the hierarchical building blocks of the netlist. + circuit(RES2 + + # Nets + net(1 name(GND)) + net(2 name(VDD)) + + # Outgoing pins and their connections to nets + pin(1 name(GND)) + pin(2 name(VDD)) + + # Devices and their connections + device(1 RPP1 + name(I0.I106.R0) + param(R 59475.7) + param(L 420) + param(W 2.21052631579) + param(A 0) + param(P 0) + terminal(A 2) + terminal(B 1) + ) + + ) +) + +# Cross reference +xref( + circuit(Res2 RES2 match + xref( + net(1 1 warning) + net(2 2 warning) + pin(() 0 match) + pin(() 1 match) + device(1 1 match) + ) + ) +) diff --git a/testdata/lvs/res_combine2.cir.1 b/testdata/lvs/res_combine2.cir.1 index 650763fba..e440a8095 100644 --- a/testdata/lvs/res_combine2.cir.1 +++ b/testdata/lvs/res_combine2.cir.1 @@ -3,5 +3,5 @@ * cell Res2 .SUBCKT Res2 * device instance $1 r0 *1 110.14,51.795 RPP1 -R$1 1 2 95 RPP1 +R$1 2 1 95 RPP1 .ENDS Res2 diff --git a/testdata/lvs/res_combine2.lvsdb.6 b/testdata/lvs/res_combine2.lvsdb.6 new file mode 100644 index 000000000..89c533976 --- /dev/null +++ b/testdata/lvs/res_combine2.lvsdb.6 @@ -0,0 +1,193 @@ +#%lvsdb-klayout + +# Layout +layout( + top(Res2) + unit(0.001) + + # Layer section + # This section lists the mask layers (drawing or derived) and their connections. + + # Mask layers + layer(l4 '15/0') + layer(l3 '16/0') + layer(l1) + + # Mask layer connectivity + connect(l4 l4 l3 l1) + connect(l3 l4 l3) + connect(l1 l4 l1) + + # Device class section + class(RPP1 RES) + + # Device abstracts section + # Device abstracts list the pin shapes of the devices. + device(D$RPP1 RPP1 + terminal(A + rect(l1 (10540 0) (540 2000)) + ) + terminal(B + rect(l1 (0 0) (540 2000)) + ) + ) + + # Circuit section + # Circuits are the hierarchical building blocks of the netlist. + circuit(Res2 + + # Circuit boundary + rect((8285 720) (117975 57350)) + + # Nets with their geometries + net(1 + rect(l4 (120580 32490) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l4 (-22355 1390) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l4 (-21520 1755) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l3 (0 -4795) (1065 5850)) + rect(l3 (-5155 -6930) (52985 1475)) + rect(l3 (-27585 -395) (1065 5850)) + rect(l3 (20990 -5850) (1065 5850)) + rect(l3 (-1275 -1760) (340 1920)) + rect(l3 (-22475 -1890) (340 1920)) + rect(l3 (-21640 -1525) (340 1920)) + rect(l1 (42935 -2385) (540 2000)) + rect(l1 (-22675 -1970) (540 2000)) + rect(l1 (-21840 -1605) (540 2000)) + ) + net(2 + rect(l4 (19795 5575) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l3 (-195 -995) (2395 2500)) + rect(l3 (-2480 -1785) (340 1920)) + rect(l1 (-500 -1960) (540 2000)) + ) + + # Devices and their connections + device(1 D$RPP1 + device(D$RPP1 location(-65 -8175)) + device(D$RPP1 location(-205 -12595)) + device(D$RPP1 location(-320 -20985)) + device(D$RPP1 location(-225 -16825)) + device(D$RPP1 location(30 -3970)) + device(D$RPP1 location(-22135 30)) + device(D$RPP1 location(-22200 -8145)) + device(D$RPP1 location(-22340 -12565)) + device(D$RPP1 location(-22455 -20955)) + device(D$RPP1 location(-22360 -16795)) + device(D$RPP1 location(-22105 -3940)) + device(D$RPP1 location(-43435 425)) + device(D$RPP1 location(-43500 -7750)) + device(D$RPP1 location(-43640 -12170)) + device(D$RPP1 location(-43755 -20560)) + device(D$RPP1 location(-43660 -16400)) + device(D$RPP1 location(-43405 -3545)) + device(D$RPP1 location(-100465 855)) + device(D$RPP1 location(-81950 425)) + device(D$RPP1 location(-100530 -7320)) + device(D$RPP1 location(-100670 -11740)) + device(D$RPP1 location(-100785 -20130)) + device(D$RPP1 location(-100785 -26915)) + device(D$RPP1 location(-100690 -15970)) + device(D$RPP1 location(-100435 -3115)) + device(D$RPP1 location(-82015 -7750)) + device(D$RPP1 location(-82155 -12170)) + device(D$RPP1 location(-82175 -16400)) + device(D$RPP1 location(-63435 640)) + device(D$RPP1 location(-63500 -7535)) + device(D$RPP1 location(-63640 -11955)) + device(D$RPP1 location(-63755 -20345)) + device(D$RPP1 location(-63865 -26810)) + device(D$RPP1 location(-63660 -16185)) + device(D$RPP1 location(-63405 -3330)) + device(D$RPP1 location(-63930 -34985)) + device(D$RPP1 location(-64070 -39405)) + device(D$RPP1 location(-64090 -43635)) + device(D$RPP1 location(-82380 -26810)) + device(D$RPP1 location(-82270 -20560)) + device(D$RPP1 location(-82445 -34985)) + device(D$RPP1 location(-82585 -39405)) + device(D$RPP1 location(-82700 -47795)) + device(D$RPP1 location(-64185 -47795)) + device(D$RPP1 location(-82605 -43635)) + device(D$RPP1 location(-82350 -30780)) + device(D$RPP1 location(-63835 -30780)) + device(D$RPP1 location(-81920 -3545)) + device(D$RPP1 location(-100850 -35090)) + device(D$RPP1 location(-100990 -39510)) + device(D$RPP1 location(-101105 -47900)) + device(D$RPP1 location(-101010 -43740)) + device(D$RPP1 location(-100755 -30885)) + connect(51 A A) + connect(3 B A) + connect(9 B A) + connect(15 B A) + location(110140 51795) + param(R 95) + param(L 420) + param(W 2.21052631579) + param(A 1080) + param(P 1296) + terminal(A 2) + terminal(B 1) + ) + + ) +) + +# Reference netlist +reference( + + # Device class section + class(RPP1 RES) + + # Circuit section + # Circuits are the hierarchical building blocks of the netlist. + circuit(RES2 + + # Nets + net(1 name(GND)) + net(2 name(VDD)) + + # Outgoing pins and their connections to nets + pin(1 name(GND)) + pin(2 name(VDD)) + + # Devices and their connections + device(1 RPP1 + name(I0.I106.R0) + param(R 59475.7) + param(L 420) + param(W 2.21052631579) + param(A 0) + param(P 0) + terminal(A 2) + terminal(B 1) + ) + + ) +) + +# Cross reference +xref( + circuit(Res2 RES2 match + xref( + net(1 1 warning) + net(2 2 warning) + pin(() 0 match) + pin(() 1 match) + device(1 1 match) + ) + ) +) diff --git a/testdata/lvs/res_combine3.cir.3 b/testdata/lvs/res_combine3.cir.3 new file mode 100644 index 000000000..e440a8095 --- /dev/null +++ b/testdata/lvs/res_combine3.cir.3 @@ -0,0 +1,7 @@ +* Extracted by KLayout + +* cell Res2 +.SUBCKT Res2 +* device instance $1 r0 *1 110.14,51.795 RPP1 +R$1 2 1 95 RPP1 +.ENDS Res2 diff --git a/testdata/lvs/res_combine3.lvsdb.6 b/testdata/lvs/res_combine3.lvsdb.6 new file mode 100644 index 000000000..1bb644fbe --- /dev/null +++ b/testdata/lvs/res_combine3.lvsdb.6 @@ -0,0 +1,196 @@ +#%lvsdb-klayout + +# Layout +layout( + top(Res2) + unit(0.001) + + # Layer section + # This section lists the mask layers (drawing or derived) and their connections. + + # Mask layers + layer(l4 '15/0') + layer(l3 '16/0') + layer(l1) + + # Mask layer connectivity + connect(l4 l4 l3 l1) + connect(l3 l4 l3) + connect(l1 l4 l1) + + # Device class section + class(RPP1 RES) + + # Device abstracts section + # Device abstracts list the pin shapes of the devices. + device(D$RPP1 RPP1 + terminal(A + rect(l1 (10540 0) (540 2000)) + ) + terminal(B + rect(l1 (0 0) (540 2000)) + ) + ) + + # Circuit section + # Circuits are the hierarchical building blocks of the netlist. + circuit(Res2 + + # Circuit boundary + rect((8285 720) (117975 57350)) + + # Nets with their geometries + net(1 + rect(l4 (120580 32490) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l4 (-22355 1390) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l4 (-21520 1755) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l3 (0 -4795) (1065 5850)) + rect(l3 (-5155 -6930) (52985 1475)) + rect(l3 (-27585 -395) (1065 5850)) + rect(l3 (20990 -5850) (1065 5850)) + rect(l3 (-1275 -1760) (340 1920)) + rect(l3 (-22475 -1890) (340 1920)) + rect(l3 (-21640 -1525) (340 1920)) + rect(l1 (42935 -2385) (540 2000)) + rect(l1 (-22675 -1970) (540 2000)) + rect(l1 (-21840 -1605) (540 2000)) + ) + net(2 + rect(l4 (19795 5575) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -745) (220 220)) + rect(l4 (-220 -750) (220 220)) + rect(l3 (-195 -995) (2395 2500)) + rect(l3 (-2480 -1785) (340 1920)) + rect(l1 (-500 -1960) (540 2000)) + ) + + # Devices and their connections + device(1 D$RPP1 + device(D$RPP1 location(-65 -8175)) + device(D$RPP1 location(-205 -12595)) + device(D$RPP1 location(-320 -20985)) + device(D$RPP1 location(-225 -16825)) + device(D$RPP1 location(30 -3970)) + device(D$RPP1 location(-22135 30)) + device(D$RPP1 location(-22200 -8145)) + device(D$RPP1 location(-22340 -12565)) + device(D$RPP1 location(-22455 -20955)) + device(D$RPP1 location(-22360 -16795)) + device(D$RPP1 location(-22105 -3940)) + device(D$RPP1 location(-43435 425)) + device(D$RPP1 location(-43500 -7750)) + device(D$RPP1 location(-43640 -12170)) + device(D$RPP1 location(-43755 -20560)) + device(D$RPP1 location(-43660 -16400)) + device(D$RPP1 location(-43405 -3545)) + device(D$RPP1 location(-100465 855)) + device(D$RPP1 location(-81950 425)) + device(D$RPP1 location(-100530 -7320)) + device(D$RPP1 location(-100670 -11740)) + device(D$RPP1 location(-100785 -20130)) + device(D$RPP1 location(-100785 -26915)) + device(D$RPP1 location(-100690 -15970)) + device(D$RPP1 location(-100435 -3115)) + device(D$RPP1 location(-82015 -7750)) + device(D$RPP1 location(-82155 -12170)) + device(D$RPP1 location(-82175 -16400)) + device(D$RPP1 location(-63435 640)) + device(D$RPP1 location(-63500 -7535)) + device(D$RPP1 location(-63640 -11955)) + device(D$RPP1 location(-63755 -20345)) + device(D$RPP1 location(-63865 -26810)) + device(D$RPP1 location(-63660 -16185)) + device(D$RPP1 location(-63405 -3330)) + device(D$RPP1 location(-63930 -34985)) + device(D$RPP1 location(-64070 -39405)) + device(D$RPP1 location(-64090 -43635)) + device(D$RPP1 location(-82380 -26810)) + device(D$RPP1 location(-82270 -20560)) + device(D$RPP1 location(-82445 -34985)) + device(D$RPP1 location(-82585 -39405)) + device(D$RPP1 location(-82700 -47795)) + device(D$RPP1 location(-64185 -47795)) + device(D$RPP1 location(-82605 -43635)) + device(D$RPP1 location(-82350 -30780)) + device(D$RPP1 location(-63835 -30780)) + device(D$RPP1 location(-81920 -3545)) + device(D$RPP1 location(-100850 -35090)) + device(D$RPP1 location(-100990 -39510)) + device(D$RPP1 location(-101105 -47900)) + device(D$RPP1 location(-101010 -43740)) + device(D$RPP1 location(-100755 -30885)) + connect(51 A A) + connect(3 B A) + connect(9 B A) + connect(15 B A) + location(110140 51795) + param(R 95) + param(L 420) + param(W 2.21052631579) + param(A 1080) + param(P 1296) + terminal(A 2) + terminal(B 1) + ) + + ) +) + +# Reference netlist +reference( + + # Device class section + class(RPP1 RES) + + # Circuit section + # Circuits are the hierarchical building blocks of the netlist. + circuit(RES2 + + # Nets + net(1 name(GND)) + net(2 name(VDD)) + + # Outgoing pins and their connections to nets + pin(1 name(GND)) + pin(2 name(VDD)) + + # Devices and their connections + device(1 RPP1 + name(I0.I106.R0) + param(R 59475.7) + param(L 420) + param(W 2.21052631579) + param(A 0) + param(P 0) + terminal(A 2) + terminal(B 1) + ) + + ) +) + +# Cross reference +xref( + circuit(Res2 RES2 nomatch + xref( + net(() 1 mismatch) + net(() 2 mismatch) + net(1 () mismatch) + net(2 () mismatch) + pin(() 0 match) + pin(() 1 match) + device(() 1 mismatch) + device(1 () mismatch) + ) + ) +)