From c46bc865efedf52aebabea2a8e1e8624174126b3 Mon Sep 17 00:00:00 2001 From: Bartek Kryza Date: Sat, 22 May 2021 14:13:24 +0200 Subject: [PATCH] Updated example documentation --- docs/test_cases/t00002.md | 23 +++++++++++++++++++++++ docs/test_cases/t00002_class.png | Bin 15819 -> 21489 bytes docs/test_cases/t00003_class.png | Bin 14583 -> 14583 bytes docs/test_cases/t00004_class.png | Bin 10451 -> 10461 bytes docs/test_cases/t00005_class.png | Bin 30322 -> 30322 bytes docs/test_cases/t00006_class.png | Bin 63756 -> 63760 bytes docs/test_cases/t00007_class.png | Bin 8533 -> 8534 bytes docs/test_cases/t00008_class.png | Bin 18804 -> 18803 bytes docs/test_cases/t00009_class.png | Bin 16773 -> 16772 bytes docs/test_cases/t00010_class.png | Bin 15019 -> 15018 bytes docs/test_cases/t00011_class.png | Bin 9013 -> 9012 bytes docs/test_cases/t00012_class.png | Bin 34204 -> 34207 bytes docs/test_cases/t00013_class.png | Bin 46077 -> 46078 bytes docs/test_cases/t00014_class.png | Bin 26154 -> 26152 bytes docs/test_cases/t00015_class.png | Bin 11035 -> 11036 bytes docs/test_cases/t00016_class.png | Bin 13911 -> 13911 bytes docs/test_cases/t20001_sequence.png | Bin 14873 -> 14873 bytes docs/test_cases/t90000_class.png | Bin 16076 -> 16077 bytes 18 files changed, 23 insertions(+) diff --git a/docs/test_cases/t00002.md b/docs/test_cases/t00002.md index 0132702c..8d704b8c 100644 --- a/docs/test_cases/t00002.md +++ b/docs/test_cases/t00002.md @@ -52,6 +52,29 @@ public: a->foo_c(); } +private: + std::vector as; +}; + +// +// NOTE: libclang fails on: +// +// class D : public virtual B, public virtual C { +// +class E : virtual public B, virtual public C { +public: + void foo_a() override + { + for (auto a : as) + a->foo_a(); + } + + void foo_c() override + { + for (auto a : as) + a->foo_c(); + } + private: std::vector as; }; diff --git a/docs/test_cases/t00002_class.png b/docs/test_cases/t00002_class.png index 6f06077b8719b0cd8119bffcdd1695e2411fa677..3cc7eec7056ca7ee42c7d31697a927516a25c34e 100644 GIT binary patch literal 21489 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 GBl5rM>P{~J literal 15819 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 diff --git a/docs/test_cases/t00003_class.png b/docs/test_cases/t00003_class.png index 36c68afe15acbc155be437f682739c4d058cc628..94bc131359fe634ffd2c68d3525f7d0d287a2d0a 100644 GIT binary patch delta 447 zcmV;w0YLuuarbeMZ+~lV+AtLTZi)YJMWqTv6UCHvEZU|r+D&4xqEYyY9LF$Ai5>Y7 zt*W};KIZ{RgqAP4k8{sGK29FAAgBt)V~b1JN+w2laz-51pFrD!ld3Xf_x^ z2)X2OnQ&o%cPg{%Yv>k$N})}s`nN+95zXm7W#+exTlF`m)IV_g4x=h)Bivp$SQ0no zGHqyyHS%&MmNrV*-X*2@YKAv`ZPP)8se9xGI(bxJt4cw~4#Xzr%*Wv~;BjkR-IFZ= zK19?>?uF&WqW|?O_s@vRo;I$&fO>%ynjZy=A(8IXHMk?bt>lWzG$V?gJULiF4VU6m zBxTav-0(~1kZlH!oTKO*(NmMJ0UJkrJ6O5wr_5n|4|p149NuA=KfOTFAELqc^%AtS ziZY0KadVL^bPmyihw5g#3U56$nhk~! zLN0k+CR`ZcoyzR`8oC9bQfSku{_W62M02`NnfWc_R{hN>H9wrb!>9_{2)EY_mc&iD zOdDEajl7(RrHvA{cS$L}n&C}f+jLN2PCar1ojfYARi&U~2VxU*=Hu`g@VK?^)RQd% zK15V4_rmgG(f@jt`)5RDPaAi-fYSmiG(QR!Ln7U&PvDODwvsC<(~KxqdvdUX8ZO1B zNXn$Sx#5@2A=?ZdIY-esqIHw60UJmBVX$)9PnpB`4)8R@IK0I$e|mwUKSYD?>m_Ju z6=e|f;^rb-=p3R2$qD?j!tj)Z@SHKRc>GZp;7R0MNs%&P&|NXkrqyLblqdVI zK$DDcy%28M2b4m-Vq%7aM+N*EbaNSM-+ zt&FyS3L27vz<<B(=embMuFw%z*!z* zg@Cc=dl*;m+{MbGjO&~IU9)*TKR^~EiDo>7*;Z+qhY&GtKG1k}WHh|M^W9e6O)006 z#i&Qu#AMoribZ0*AuQ&PZW~2}r-r09{w70RVduzg2n>@5eFHMdzW*VrCI++E0sAIb C>A~y( delta 398 zcmV;90dfA_QPWY7S$}qER9JLyY+-J6b!}__0RR91c${^RT~ER=7=`bf>_5EW3PQH5 zlOgU31vJ4;2w#a;ri?P1Y%S@>lorP5Y`MRMRQ4z(h{*z-M%n|JPf zX;H@Y&3+GTU(atLi;+Y#p22jhG%X_gLEL;dxZ0g!NiZ=*02M)#KTAFjHn+EgHjNt3V`wRyIAOrxgBHgbqVX^Dxz zM6E{i-{+dlOdYGh0$=-lTpy6dT_#y7^L<<+LCmrYF77XYWzbtYf3JpHBmZI7gj9n) z6E-#2H(^VI0~2;MI5Z&Dg+?aSg&s_(3q6`p7aE&T7n&H*(}kXYO{fX!9~FMp$nS3v zEl16A)G9}vQbfx&Xt@S0*P!JZv|Ph0*YFCBn=IM$btEMCfOl72V-!7;)e)upS{+fkQFTP=zEws%rTeZ<;2js+;(tiyF%xn*o5GQ& zS(FHH?S|vFZI@onaP~7fLgNtmOt<<(88dV*`C{$0OJ##nUE2SbS!Z?|qm?BL5&yi?1F{+p`_3MXitvo<;%b z^Bv1$iBdr%vc+e8SiTIcHkmRJ<}5`0Lri)J?vsA{FrSh?Va$ii{^~$evycMfb8CbW AR{#J2 delta 562 zcmV-20?qyM>;dxZ0g!NiPvbBYM)#KbAFfy+C`uG3EiGA$pf8}0p`x_g%1zy3NS!Ki zD$r>D`&_3pgKLpw5nua!xju=k+-8cUD&NI562&ab;Oy=USO(pt_xGYVHS!;JEa+1M zc5N6KuxG=j0sA&=8E{}jQ|R7;fhqK0LsRI{hNjTahNjTShNjSevjrQ5koi&JSB?Ds z4*9ek1?8w&j#}lYTq7vg2+B2ra*d!|BPiEs6dG4qvg1o36@-9yV_~^Z@XpgCsDDGO z#7QLO8=i6*@gqD(#<0A@afM??ha)Vynyj(tL6pd>*hfFpKTb8>;B;`Vt1VXd#XhfC zJ=BX*VEI_r_zkOnAsmvJDG_tc-f?AAFFwG@i`O0J^vHz3tcc_MI6XQctg0gcMxyFS z6C>;DNDCvpQrFkIo60VM*4Yg5#W*Y0>~uf{Oy~9PU6|z|n*A{_467@DCp8&{yC{hkXT(HRvJ* zPITB&;IR%>p%WddLZ>=Zh0ZkSsX|j7szT>FRE0tvszNgzszP%O`l`_Ue-rI&(N9=) zipqj#=|hw;jwvJg;AW`D{kr%>kM|rUex-LQn^KPv{M7(|zC^wm^^M3yX4EkwvxaNd zaLpQ?S;I4HcxDaHtl^n8e6xmc*6__5exIyjT70ULjPNYbxtR+#34ur;ezV#OxH%T+=K^VVGc&4=2J7dNzN zS=-NF0I?Ratl{=^7{En+OJCl}+7|I#1~9H|5vL-6q&6ZR;cp{yN00R`a!1Sh7P+IR z+7?glh}O1vQun#OMe4rPw@BS2t+d(}Wb#`as(>zV|Z0EPE!)Vixpwh@%d%|Cu~jgjHQHeFuj|71iY?wL^-@Bxln<3v$vkRH?067 zWIHxO`+e(nA*xEtDXUiZw(zx`E)X?2=9Der^=rXN8o-dU@+Y{s{^)S+uI*TU$66Bc zlR+aeCXcvGxR8pnSbR5tw>QUD4}_R4OS}~Ns|1WPu}=OPz{?Q)1v)NCA{$mQsk0da F^Y!U%Oe+8Y delta 667 zcmV;M0%ZM=@&k1C77ln2RY}#p>3Pts`gd?ti~_%2}%2 zNlX~u=fkH@p(7p^9Ot}DlLm+qToiEUXb0i~4j-KNN9Ujc{=s7%x(XcX&{yC{hdl+3 zHRvJ*p6E~&n&?m!I@O^nbf!a9XsSU^6*||UDirEa6`JW#6`Jc%6`JeRe@9#N6IPv~ zvfx?z5M_*G%1GY78R&7hEwdQ11cZEIxPzXyhs zrkXm9_ z(yTI1n+(o#{MtX0t^pf=y-3opY*v`&{jfEwR$|2_!pl`c`t#OY{>=ya2k*nCWo_So z0mNFwvIg7tVE`BPEx!CD>sxvv64$nfQxQN?8xgngeofj0GE$fo_1^*dM&{r>(*TEr#npd*3E(opjNi^exF&f) zGX{~}c2L(w2fH)zYM!lO+k>bZAQXsiaX7w#lJ9}t$z=$Otjr?E=n#6_P`Xc zF}x}nrzr{G#fq@$=zKGPW45Mw#!|vKnBL7k0$#^DrW{_AT&Tdi*;~)un^pi3vKN&0x{)Zm%q5p`{%g=EVbV+oA*{L5B9%bAs!v)Tshtem+kLu* z>N$`WC4@Ez1lJFcc?F%^jzZ9>RS}0+Xrsj38W&JOeYR#Ww$g|tr!ZV`+3(%$HsD&W zg-Yd;ON08e!G7Spj=O)tz=SJT1!jY7&TLzY0wJF75pveX)47YX*thvwb$va*j$Djl zM#u$BHrntdg-}TQj)s$cM#HOnK5o|Vf=jMMgnImm*~GX~Q5w5%DNG-3a0`V@E-YKP u`l|#5sXIq)D2zh%1<8lRDVv2negFU;S4l)cRCr$PT?t$i<@>Yu0bU;rpT@TU delta 400 zcmV;B0dM}+Le)Z$SpkHRS|NX4iKfd646rdo7-)h+2ne^PY!w?vhdoS*@xNQ9$RX-( zn)Uhi_HA~h4O7N0(-MkPrZt?jPk?C%AN=p9NlNGkJI7ev!|)h`JsclnV~6{P!FvgP z{7TioDfpWj8#-q|L7Rk9E5(cD4=bZC+bsw4E$Anvcv3)T1MwDKIeULDw!>C&#zFQO z#)s`Gu%i)-TZgxxF#mrfa3k^NGFMzC#jio5lu0ukM38f(MJ9oG6`wRcQav5Gx4SHd zN*zd(5<&w4VecL`UPh-kqX=|nRm>p~+9)x%#s!p7pXCh3RvNM76oxA<``z2^2J~bu zR3?{P8q}W+b_4Yq?g)Pa6Runpm<_&iW?!`^5aRhBA?Fu(I(JbP`?gpsuCM3Ukc&~w z2)TgCS{uHk5D97D&~UQL2)vr-<3{ uze-Vca#r ziDE7#wGiqG-6WdOXars>H*t}rU?azghPM6po`g|u>+%vGpYN7)a-UmnY_ZN7B*}Q5 z!`0Ve+>YAgFltL>VK%w~p2PUX`}^F{2Km4)MPjuX#uuRO5$FMb1;@kD1*U(3L9_Nw z?gHo^0Vn6p!J&B^5`HzvP06!D0D~CM8;uUaRMj<>M!X3lR8qIU?6EmkxlI`>cOMpw zu!Fphdu|Nh)>&s&E79u>Hyoh|z>zh`pMS>b9^#x^#G}th{hDOOdXsT0UiOE|=|3#L zVqxp#%5{H_J{kRg@hEFUo~F%e^Rk6brIzVo1SeZMcNxI70!(fkDQgMqB@T4`gXBUB?SPKHrUVxGfCVrc9F-i4tBE zaP@5(c7yKB54utrSh`oh3z$7Rf1mNBMc%O+5t&R+!%NVFo`CLuP;fSNKVbT27&Pnd zRrq<%v(BFz(S#N**mJN<_> zs#(}NyRz*+?kA&vKOJRb$m6(OZ(erLsmf%09KqR^E?tIjZCU3@7}Uht>sF|^`N>F- zaAnrM2bIu;%oI?&=g_fD`)wbqWmZ9N1a!F1`oMVi}}yP1>CDj>P)3V8M4^;N5E)*VBJXrE1@w8Z2Y~>W*>_I zrM6>JdNZ-sPbgJdPT9PBnAdg&1Z8mZQf*u z@g8ithQB>@R`J3KV6f<+*AHn)pn0fOBIMubKM6Ev=}HG*l%`#2`bBBHn~VE3__6AB zgnOObuGCEOG+=eYd+ejcza9FC;S}R`QVhbg2P}+7?NB_cZu&Vf4aC|>nDbJo_3lSR zvw|zToMuo7ZDgr`fRcVhhlIw*Q-8ZJE9j>{hm2A-pfJ8!K)_GX@$D=FQ#zdsSj*ty z(OKW%1WkCw;g?fZZUuvfC!r?SckczbQI*uC+6raSWHsFr(ga^g3v;2p6CmC_THt%SYeJ;mGaIzV}O_1o<|a+pv}Si?L$MAd|{IJ)?*DzQ=$hB*N!0-UubM z%+a;@!(Cy$sk~f!EraFaCmy1VtBvCuZ~v)4h5C4IuJj`OM7moH@BLmTT+Qc?V@V zHwF$af6fL6zzq!lL~mce-$6B8D!a#^QQTk{yJXB*E!C>U?6#SIrO0fd8>*HpsmZSP zLAnF$uHjz?ot8Xz0vOCX=;Z^Nw;pI7YLp21Klmhp`Ydf}_nXqBEls{DrQ5l9yCMotg7kP#3T?aCt=PDp_bbp z5lwQg?0lR;DYTJ)g#t?Ai1rBW9*zC&z9=C+2ijwlvNH<9n;8WB7#;nZq+klCGXYB( zJUlw<8yuq%FFE{n%F4B1@bE0u==$!x05__Xx=?GOEE+AwJHmN_ucU>k(B29x##Nt1 zWs3o&BqEfa_VN7Dw{kdg+cWllNt7VpMspjsGTj&})(lcVsoY=mFx~YyBMFJ{j~K6n z5?W^HT0C)=TW=~WmR`$XKD)&|lybFleC6#w=V(~?cl3tABt@?tDgxvFB??fp6asKR DORd>D diff --git a/docs/test_cases/t00010_class.png b/docs/test_cases/t00010_class.png index 5393151d0f92d843a8cab17f3b5a1aee0ab6cb79..d2a4a194bd4a99ebb9b2d18b4dd9b27f0ca5b9e5 100644 GIT binary patch delta 415 zcmV;Q0bu^Cb*gocSplSxS|NY(Yt71r%*GfMKN1{5WN>TBR!Ni5nSKzB`rqxC3T(KW zu6@t@o~I|h)P^Zzmw5}NInx^2SLeye_@WI=L;u;YK0-(f?Nn%!QL2p+a?z*_w`#A? zlZGDb=t7!CMYL7XuZz8nxD5y&Ep+@Mlr}&iasQg9h0NS$+(KV_Jz;<8anjBa#-A7e z+vpV~fa_78Nj*1!BhTCIP2tDBw?WioiyCafUTd#nbA$cEtHxXp?A4*766()a zhF@}-tzQQk=S-UEFoqRZS`-op?)W6aBsdtl-D9zW&MA3Oh1T3{qJ^6VGP|( z*S_bx=joeXX~UGU%dCNtjA;$c>t1|1zH9>1(0}pEkN6i2v{#``N~tzV$VI)D1eMyG zUVNaFJzYq1P!U!t`gO6h6RUvm(Lk+Np|k-CvHRCN$z|#`;|BWrtA~FCMURvAjxheb z{O9J?J8Z_WG66TEo=M%8z=`MW&!+Ix{^x-3kS(mURg zI=3p}kcz^3ZjCcIMgxDgV(@IG5lc>C^v31j_VM=s?&M0STrRmZXfPY@3c|K`BMeNq zawsqxmOir*ivl6o$Aq*lyy@IoSg83UMhVO$l1YY2>AyEBt&W(NknELp zHtD368|#v|fHpBtQz#Bv^L7z<3jI}ZS+q(E=s)k?hqarqcOQn=@YV<41%xvmI{^&l z1@!X}tDUi()}^w?GA*}fGDoxs$<6a%tF<#ysBOFb&>EhsmAti*thj$abf4}Agn)57 z--&^TPv(xFasD|pjk&UmaRiw#sniN6sRp!3XstB%rw^S$wE?urC}kmq{%{Vbyo^e3 z(+E=S%tpXgrq;-{vtCd}Bc5^ibjr#^Fqj;K8V%n6E?}rKX|zg&vS_p%Ux7v)_oRiH zFun>b#~07?Qi}nlBp_UrR$lO8?Nts3?z~rhUlP=j*BEZ4+QaOaT9Gh_q;g+qGP^oL zQYQg^uHn5)$e1%wKU6MO^J2-~0N981=QEV~z}_5&8wG#jDQe L#biRW*#TT3K1;Oi delta 366 zcmV-!0g?W+MzuzeSpj#ES|oqQOErjiYYTR)QZKI(HA-M6kxVjFO8>o4X?4WBgk-O* zvq?9#+*p^y1+vB~E)3~S*uM{}*YMT{-vxv-9yM+i6`Ydo0s(dnR*4n~>Z*54PJoBZb;_IuEVYleLn!R+4`e_lMro{eUW9 z+{t%h;Ng?G>t~#Q4ozdO>|z{2CQK@|0!qSwHVLhk#{Tr7GYA_%n~YLcr!aV#!znML z(%UqGR6DZ~u$8Gba_y`al+lQ196p`0G7$_W2cbs8_rD8xQJFMaB|=#=T8^(kqlWv^ z!b})n1(xHBXL+f`fKpu&5K1d8yjXjc!+|^Rq3=tA8uA*$tyFuM9aAe329Z?m3r%KM zN1fD2fS*IW7fKkpK|`_QF1EhZMsNLF28;PCZlZ{*z2kdd{}7{r_H)dU!8Ag@tbnV_ MN0VaFv)BP#A<3w&4*&oF diff --git a/docs/test_cases/t00012_class.png b/docs/test_cases/t00012_class.png index 0a5bfd89e9e26b9e1afa1f7c0d72f3b6626750a5..7b498ee6ac5c7bec9f13efc1522b4556b7399e9c 100644 GIT binary patch delta 598 zcmV-c0;&C+ivpjE0+3mMJ84u{bZ~58Zgh2RYybfO004NLtyEoa+AtJ-x5R(A>Jw~< z6(^8{2%)yLo62BCCGa|#U{IvsAlpG@AOC$$5F-$vJj{NG?R(DgvF~;6rJ_P*tE7ga zgh~l_51r5mCC0dW2UJ4uhqY_O_G;)K>ai1Z1utiD?Gmo1)h;4`9a2I*@?Dg@o`juZc6 z=|U&1{vsRQ3knW@xu6i<$ZzI+9XeXV_;>e0-IbGCrM7OQx>c%Mp|;Oby(-nak?L2e z{wcNmBFafGu9*^j$(No<9=FfNizlJOvz)#!|9oy2^L?r7l_*F2x3WGxtOK7+^Emkd zP;wp9$}#qJjH@xT4|Kd7^MQ`9F;S6#d&cL*KM{=*%GG3lIDickGEO-VY+J;~#HkPU z?0dQa+XdnWgaj=Dz2^|}cmvhHjs_spOhgRkaeg_oOlg4z>eCH{w~VWJ#R7O;Gv0st zwqJl}zKKQ3SBxvvpAHWIw`o4c3dT%mD=;1Ibf!C70T6;MOvvZ9Ihkpx%(SxNYiqyQ zY9cKosL~log7H==whCYn^XwhHjt?3w+{BjYIp&gaCgKP^u?5W%rAe>uCA^%~H4k(><#t(r**;J{Xh$QH^B~Bi zi22f3Bq^1rjALJAW@(yK5a%ekW7r0%Xxt+WG0L~1@{Xof4!ol4eTsrbG8LVx-`k{J z^%#zRD}(q4gS?#<$-a2FHSnv3%z`F4g8;(accvODTMhj=OEpVM3AC=vMuni8?R4Uw zEM2HgtG{H8?j?tR_63LVHr}x{uS!Q<82|2GICqDeT1A~3QMZb^6|{L4^{S|MBkEUC zzk;^UqNH4AO4K4>x+c1ApRJcyLX~G4-yMJ5w#)YJsH>hxEB@QDKAkLqPo{ai`2kRJ zUE^qteO==!&FljoPisE#@s%bj@7F!!^YT9tjS|Y`WH^9-f{83nIS_1Hq=ku7AF9^( zv;f-&(h3L(JOaJv5OlqP>R(3#$kJRy4Cb+3oLMfFK?C(^LE$auGG4I&Ue}EGpT6xn z;F%Y(NcoC!iTcywUf{dtV=Q6Jgo*;w;nrumjTHbP*usQ-Zkv;tvdT>>FMn;77h5h; zHiAmELonV&WRk4{7{ok(N3Y|(hlgEknN8bVGR{OCp(nPWc_LM)D4i=dfJykpY@q?= h%bYG%{B?qQsTxOY0vHX@UrH~gG$FElg0r0h0)ul#A+-Pi diff --git a/docs/test_cases/t00013_class.png b/docs/test_cases/t00013_class.png index 71a64e61f0f3251f72a9d4c508b42258080e0c58..7bc2ee8cee02b6b01f1618d028f38a87de064fe1 100644 GIT binary patch delta 622 zcmV-!0+Idw=K}uc0+3mMQ)yIKbZ~58Zgh2RYybfO004NLjZ|BYqA(PGZ{mMAnFoVT zAXLChvoSNGvx%!a#@p+pLNz2>3>34I-Tm)d%D8fI*yRN{-{qXs_Vg(hG!n__*g)Qq z#xXoRkK8dKFJIQf2cR*yZ)Wyj+i9R1s|@yX;HV4^a-drR9h?Jy$7RsUfs<-Yj#Iz` zE-H+C?rU#%c->CHDHc8yTeM_}M^@dmylGpx<{XJw>6CBCGq1 zG*F~nEy=-(i=adD7VGRG-s*|Jg9}!i=z&<>S3oIuFq}PtJBMWqyV>dy?7J}d@Nde-kuou z)fJ2uN6N)!K7$L3;vnRJjgE=?2DY@h{QDkWpwk81Cm0hs=k8<;Dc(Zb*ToFtFo`?{ zevn%45+My*Xi6^>mI)WZi4k}`Gd>-Ey9QvwFF_RY6XOC+xAPmJYwM#xz=}n(6xhx) zpKVqa0gMe`)4=#~pl^24D$&hEy*sjA!?cmKiKs{q#p*p4>_lJ|@Z<-2UEMq!!!}I4 zXXyvVSrm9^%=R=n3R#pF`cg|^vwqS0Xh!)Vp$A$1`H0+5=84`3EN18ru+p%`g-7v1 Iv$O(9vE5HFaR2}S delta 621 zcmV-z0+Rjy=K}rb0+3mMQfX9JbZ~58Zgh2RYybfO004NLjZ|50;xG_?x5R%K^#KK{ zL~$S-)(W)*x)Oyg;(D!2Vo)S-P~xCgyZhhkIAzH})6Gkg`Hq>fJ${G;4MluB)R23i zQ3Q97LuW+D(~s5Q4rm0Ey-KwE0s|eZ|a99Mp8PF+${R}vNDu6c5fa7vab}NVb zT$C8u+?U>N@H%GBDH0wbkqCXhFEO(yTYK_+3NyJ0P&Cp}#jNwxUo;k=1=g z>MGKqB3_l7+Gq*vwL& zO3ham=(}jdb~HW+S(F=iQcGaHdeVDnO8Gvfds+VJfSf?)3Ev6Kr|1LGIIx7Z3lEL6 HwE{`8t>7fx diff --git a/docs/test_cases/t00014_class.png b/docs/test_cases/t00014_class.png index 6bbd48d245af8047d40a0169b287fa70f248754a..fb507cecc919bff1188f99f7fa38d8d11febdff2 100644 GIT binary patch delta 525 zcmV+o0`mQ;%mJv(0gzdLureN~Ru0P_D0qPJ+ZzxqdOT@Ovx-E8mm>hL~gw|4~C$;=G9#zcs zQ!1J6kwJ@mJWP5`vON_19-vDN6c*;(n{z%uuSZe0L`|v_vaCNh?<}c3an+?@Y0gcD z*0AsO^83B~5B3WBr9rRMJzDCOrMP^M+MV%wH6Pl+? z=;bVgf@dm`0*K|<#J7lhJ~OwUvH<4_h))TjBLb8A1(f*t-Id38F*uVoLBk;#}YA1!)On(rutiO8SPL)2)Dtf6IN&&69Vc$UQI zjz6(H)y7mTH>Q@ta`6@WC}d)rv#qhePtio0KG}=;?LzbhywN%*03F_5003jkNklJfs7!3TY(yM(+zs}BTS99o^OIVkizgLx z{gg{)j>yO%AG^U}6Lgz`pFMPGfWpF_dwb4%==W=AL`u|#T2G$$>*kFixgA$k4lFOY zt>85KR;}>3R`||Z(Q#_jO?CI{;}_`s%RB}x3zc%%WTnS- zVXVLfnz93f$3mEF$0+lI zC=lZL9wC=kc)7Mx1@?>T46I+zA0R8Em?@W*ylBIB6yi)2&*&j(G=|>5^Klg5Ef-v6 zDZ1lNtjLWumCB9HrLbIl#v>Fnu`Srv+TZ7BB5fV@Vt>0B{Q;_BIu<4DLLUGCW6DWH PK~#8N?41X*Qv%gvwBiXw diff --git a/docs/test_cases/t00015_class.png b/docs/test_cases/t00015_class.png index 00000fb5443b5d62e06eabe16eac16287dd4fc97..6a26f0bb00e58c317b7b3227fe93784e96fe4d25 100644 GIT binary patch delta 359 zcmV-t0hs=qR-9IlSpjg7S|oq*-mnL+8@P7Lyu6mESqZeM;y(Uj&CUX0K@Wdvq>CZ^-3-wT+CoXbq4OlUM+hbN%Za)w;Pf=OEi)?tye zE@~0L*!5hD?|f&qu~AmW@yu~=*uJjULN-QH%|#50ccocMAmGBhq1ob;(RN#|=X9G+ z%mkBsi^lAgnnc@D+iYjO1Xjxjr-uS6VnbtFf1jXHX5W$T1m*$y23{e`3q8C}%(Kw} FN-2g0vRMEC delta 358 zcmV-s0h#`sR-0CkSpjd6S|opIy*2E?>jti!GB2+ZHIqP1C6_YU_P;OM4Q~~emyn#_ zIXNF`D@~;~+oXh62~`TpLSaHWWuOXr3ol=|g-hs?5XxU<-XdIh1$1ytcSI_#q51_B z93u1FV!U~ccdv=?M4UH=&l37Bl!E(G{a3mOdi-*nI}@B2{g1U-XbpdFt<4+jam+Ro z>*KGXaYBWj#SvsoDxM0!u5T$92bI{KUegTx2H+OKnA9=!22(ibRaAK%N1#$8R}9u% zX~~yH+kh$>(u~5J5t?rqfzghMVgKdt0tO=EG8J1UG#bw16VRwRU9Mrmq^$z;IM12q zwFqGBdM?Hfp)*_BDC1Rl=D7Q|uj|#2jgeGyv4P26X|^R0abZ5tXmZM^yEWHyn!dAP zf=RwYefCaGqHU>Fy0%^dv+0x5LJ<`kLpQemEPHPcV0o|r%4DZGcsbZ=1NPxGTI6%Xh?GkuSRH|vH->#CWigz-whauoXbq4 zOlUM*jE+FF?teaT4O1p<6j+Q7p2ZJHwo%x p_8z$nU=pGqLX!3Y=M|Bs001;xNkl{I2#wXFaE delta 395 zcmV;60d)S?Y}ag%cYpqe53iKb(5UrLhRDN3$&@^P$t{{`=T;*v!b~P zNuKY?`-SwBrc#?UDWNE#Ncr7$UzJi70efhy=P-NPUqQbI*s^iJg&TQ6pfP&^iF z4TVLm;vz2eKeXmv$g;|^>}fafSweR?O$-Acm^GBpcYh&SFDCyG7=Lvyywz!g zS52*(Ot$|krX6vc$-8RuicLKx*88u6CJ7aK9tMyzsdy%UV0(WXlX@kztCuW?S`$dy zC&c#%^oKLpomWxiX%c|SjEoqpxzduajJAR*8qu7>s}Y)~%!l!YiP7NscLRnZ=Q0y1 z6B>;c;Sp#yoPP(dValY90*mnASsY^dKnQj*A$J{TzOpLgxMn}sY+md(kkv@4xrkx9 zRhp$f1YDR8G@c$E9&TXQY1N#ViQS(=1NKHuqHU-sTiaS6=CenqjRGoSLt`6%lc0WP p?~z*{CIR{Z^}hAo(Sfpd001;xNkl{CMvy+r^3 diff --git a/docs/test_cases/t20001_sequence.png b/docs/test_cases/t20001_sequence.png index 65779c1ccd49be538aa69c7605e15b2dc882f365..9a7894c9eecafa3ee92950aae2c473b3c3e5e8d2 100644 GIT binary patch delta 355 zcmV-p0i6DsbeVLJet+?6E*C?qZs6J}^W#=x8%v-~Bu%>Q-!HWj5yu$2%1Pemyywjs zm6|GTioAu|x}aP*ZX3KuXoqbe@UG}_N7J%{io`TTSKk8$a!8yP)ef`1}QJK z;(Jq@yJ$`;3U5YeUN8cSBNOxK%lQFjqT))5f(ec0+xP+udS1viteC1lu#Fp^Z4-+C z#(v;qeD~mO_E*-*c!4>c9h=t=ddS)+s=3Hu^;v3G5Qw-iA84_y!6DkpiL^PV?n zSZS)XDT@|r>ymQexNYzrp&hk>z`LS{EzPoyTNiQBa}RNes5DvKnAN4Di6m9VfB3S6M^Y2RtAclOBfgbOnv>BIkJ#LnVz$8DzZD zitkKg?xGp3DZCk>dC3UO4@}G^FXsoCikd4aN+vX#ZITPn?|Ko}uw<(Fz$Q8QY)-KV zVC)Az#&-|idRJ$yj2D>W8QQ#l&_&ipQO!jT%g;))l0eLb`9SmK#iQqU{lL2qy_^ZA zc#0-$Pwnz;s8nXQm%w`U81NqTBQUsgs80a8+0oN6BijM?nYE(C)kM*lyYs1k#-T`F>qHFRc$%8L^_2&Oz_q zm>x(6!{13F4%s$J20DWG=upc z?SPJiTG>75YGvHP@fPlm4*uG{Zo(~|HPoe>Gh8;~VW^rYxbra@^@GJFE_?NU0UAA(JgPsTp=Mhb-PB%xbh*QV)xydBy=f~C3{Z)e7|pj95`h=b-m! zOb?`k;Y*T;L$(dzJz{XC(L*iEpd$7!VqM|pZydu9Yvn%I&VNS?jaT5!4$P(-&0zjV zJD?+>R(21%+8OI5X|)UZ=S=T^+cR!TBfZ8gG?f-^^PWli^#1>-M|Yv?Tn+IByI&Z4d-c6EWc8 z{A5hg#MF>pf>an}LSz>Lh7WUS>Zk1F=QIarf-MxRX}Q&_;7Q<=jbtt1cR;TzmBG_a z;pqO?Aps9qYiqDl=-FsF{%W}F$9LMpOj$yK<+#&Xc32q*!4odT*>#hv0UA7wJcCR)vl%Ajpv!>Y$7W2n=z;cP(Ah(3SE7{P{9=p$AnzIkE*1oUX Ll*~u70s_lCWHion