From 9768ba98c27aa7c73e4825be67a34776340ef13a Mon Sep 17 00:00:00 2001 From: Joseph Henry Date: Tue, 5 Jul 2016 15:52:23 -0500 Subject: [PATCH] OSX SDK demo app update --- .../UserInterfaceState.xcuserstate | Bin 59502 -> 59329 bytes .../UserInterfaceState.xcuserstate | Bin 38328 -> 38999 bytes .../Base.lproj/Main.storyboard | 38 ++++++++++++++++++ .../Example_OSX_App-Bridging-Header.h | 4 +- .../Example_OSX_App/ViewController.swift | 38 ++++++++++++++++++ src/SDK_LWIPStack.hpp | 4 +- src/SDK_XcodeWrapper.cpp | 14 +++---- 7 files changed, 86 insertions(+), 12 deletions(-) diff --git a/integrations/apple/ZeroTierSDK_Apple/ZeroTierSDK_Apple.xcodeproj/project.xcworkspace/xcuserdata/Joseph.xcuserdatad/UserInterfaceState.xcuserstate b/integrations/apple/ZeroTierSDK_Apple/ZeroTierSDK_Apple.xcodeproj/project.xcworkspace/xcuserdata/Joseph.xcuserdatad/UserInterfaceState.xcuserstate index 4c636313429cf3f659b2f11b7198e409e0271c7d..bf2c8bb92122e20404c5893b81b1d021b5241baf 100644 GIT binary patch delta 28208 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 delta 28335 zcmaf52V4}#_rEQ7yL)$A00F7e<>RCWX6JV2&}r<~GuSK(>}&4S zY%2}2WOjV4Wu>e}Hc>W7)*@?_O_NQR&5+HM39|XK7q#iCks72HsY50r^+*GvLwKYE znU2grW+JnY1;|3=17s<(3R#V;K{g?qkuAtpT!JGuk?6y1sLLU*J4(1X}1>@4;Tb_u(RUB_->cd+}|1MFw)A@&&i9eako z#Qw$+9LEV+SlyiwjF2l95gu1h{eK3zUbF39K07s?mQ zm&sSk*T~n&H^?{2x5&54cgpw3_sI{+56i!lAD5q$pO&AKUyxsxUz2|)za_sb|6cy1 z{1^En`4jmc^5^ouVq#csu3#R0|ViX)0+iW7=cinEGu6qgiN z71tFv6?YW(6%Q0YD;_GID4r62L=X{7gcG_5B8rG6;)w(znMfhhi3}o}$RP$1gNdQU zFrt_kL5w6u5o3vQL?tnSs3q!%Nkk)|BY2{n=pZH&Q-~SFOhO>$5(|ih#1djDv65It zd`PS#J|;dPwh&v1Pl=txXT)CO7;&8Via0@>B)%q25vPf3#J9wC9q}D;gSbiDB5o7E z5)X+-#Bao7;tBDT_?<*Zl*CA!l#>dQAW5O+_nMC#@bI4qBAel!FA_tTCWC1yn97T>M%gI`@j+{u=lkH>&*-3Vh0y&qQN9tCP zE6G*lYH~BVh1^Q+Cl8PZ$wTDVeDS zYf45T6iqP{OL3GfWk=al9+W5LMR`-PID0DO7(dj~YY`rt+yWY9uv^8co$u zwNxE7k=jIUqqgg)UDR%BAGM$QoH|S$rH)Z2sjsQC)H&)Rb&0x0eM{Y>Zc+EB`_zxr zPt-%|5%rY%oqA5ap#G*_D={UmB$bqsRx(OcrJ2%F*;8q&v{O1Nos@3M-bzoUm(ow^ zuMAa&DI=8$%0y*{7m`oUWX$oTpr*T&7&3 z+@Snexmo$Ca+h+y@^j@eZt03>Xhmm)n(OpsvD|%st2lvsz<6nR4>#rHKNAVN;RYIp|)1r zsBP7LYJYWrI#3;?4pxV#L)BsGaCL;bk2+G_S3N{ss4h~Ms>{^n>M`mHwN_oNu2I*k z8`RC}7Imw-P2Ht_PpzA#p01v)o}-?xeqX&vy;!|ky+*xO{h@lDdb4_qdbfIy`g8SH z>J#eo>TBvd>bvTD>R;5qt6$M_T0t{3OLMd}ZA07AcC;()OZ(CObO0Sl2hqWFG#x|7 z(s6Veola-anRGr~Ko6mZ(-pLquB0c>RdgNQpra?zjkJ!QM$e*W)AQ*0^au1JdKtZ( zUQMr|chbA)-Si&%GkPz*kKRuopbyhm=&STK`dj)s{T+RSzDeJrZ`04{=kyEuCH)uu zivF8^&Bz#pp%^p9j+Q<$mDG-f(8gPF<9Viq$?n5E1zW(~7}*~DyPb~3w|z05x55c4^6 ziaE`kVa_t=nD3Yy%uVJNbDQ~r`GxtN`GfhBdB!|v5f)`JmSUAG!}eg!S!>pbb!J^y zFV^1gV_B#6=dxO2n-ePaFci6k^kL*wE zL-q;#2m6vkI5|ghDvsuKrkp+3i*w){IVaAY({SFL59iAza!Fi2E}2W=`g5sV8kf#x za09qpZZJ2DE8|9TqqxyrIX8i8=2|!%$8&(|;AV64x%asR+#+rZRwpK?37 zUED$L5cfIv6?cL=Inbq|cHFr0GD@bDsbp%IFq85{whITS4lWL0i2%z1SQo(70c`!Y zTqTL%_W-(PTahXgMI409w5#CD#tD{;lQ4npHF$!odWEctcjTSV>FH`^b<26DbFyq% zj;vnRFgznCy|$)!#JIB9s;c6KRZuowmM0ZA%9@70Db6XYStVI1Y-aKi zPgvb}i&L_$t1dZ{nNzRl-Bd zAc1%C6xR3j6>!rY!Y@v#!ZJ5&OGD6*Nl25-eFf6U*Q`LA`C5UrvGoM9x|K*P(#F^E zlXxeiW+yUPX1WsTLf+#i^7Si`DYA2XgD}%H#lxsE8=3pIhU^A1pO51k`55PzX+<*e zA7P1`twtYSWRYy_3S=?g!rOm?L?bastW1S0LzW{ekVGEvJg?)&2!-4jKj+we9$yi| zKk8$wWi9fN%zYKoA4x^l^Cf&K-?|FffP9R6!ng75e24Jb#$K4~)?2u2OXrqn=18?| z6KmVfck=c|nw`jgnfqE~7qT1KgM5bUMfUMs{CoUlehNR8pSBh`fE+{)>HmDePv>Xw zv-N-G@Gim+cCJD~@3F#Hb`HX(-Y&g4M5^PItZoHznx82S8WnO5IgfmkpONEJT~k$F zF^ZohY;g$J!NG)FL@pI_Z1;H4m#>22%d)(|aLDK}CzD98$?7(79P%x49r+Hqf!suH zA-9n`$X(bavD9OXe5PfZLN9x`E9RjOR4+%Vj;AXg&1YSarAK~P!SNofvRmfQ)Y2_7T zVZ)l5GINs?vkTJ_lG0-P!Eoz|Q3P77i*V4Jqc{X-B0TlxDDf}ztn9?Jl#JBEf0!$w z#g)ijk~s}QhJyic5b)7KQi&M^TO1-JU;)AGtR6yhnx$axXekM;pzvXexzLi1YPOo!=qcavoef5FPw>nd}By0B6=t zab`_9qn}wumxrTeqRWM75n7CnKuge4emB2||BT#^|I>ayt9$G5rv6DEHnyqDF07E8`>@j@*4fT z9Q>LkmiOSyLnrfJzBSL$Y3Oux2At=|`D6T1eoP@Zc4YauGQr#;NLZ|P79u%LNOCjj zC7|ycW;!}wKhwWjg)TrBq95=l_>=tChMAt2x?HSc1%K+z)oZJ`mQ~MJ9uW@qEM(l*;ZdO7}Z`?*|#vVAi z(a-pc#+h^;J)j?Z;X1hVpoicrH9=J9=jdVd3-k#3C3+M+h8{=1LQkM4(XY`{=xOu} zdKNv0o=3kyFQ6CEOXy|v3VId2hJK4)N54aFpf}N5=xy{4dKbNi-bcSje?T9gKcYXO zKcl~(zoHM(N9b?pWAq976#X6j1N{?yhCWAMpf45ZU+63J?`?zJ7bEWcW&R3(mA}S+ z%U|ce<8Sac`CI&L{tkbazsKL_zvqA8AMii&KW!WDaTcZDv;{i@+tTIj>M71|?7TQZ z&5_uulF{WgWhFJWRb|ypO|jYW$;R1@U4;6Vyrr~(U4h^)Z;gI>Vc$aF?c*qc8xZ9A zcuU|m1XFziBybOcBR&S3A0YU{Csdy}u%E=*J%#5!cEUhk6G{75s8Hc6B>?O<2mq>{5ZL$`{CNdIf?u${1eZYo{3Pda41!PnlB5y^ z1h~JHVsHwA82>P-L=6G&?@K=Df@N)nuQM%{_PWp!8y~T#w2(JSyg_uA>Qt*HZnSnkM@P?ox(BOa{ z1lt1*eg;BtJ5b8xcnAbhK|KYZAVV$TdVzyfOQcwfy$~A&6K0TFpRe&~QPu-VD61T& zZ5UrxQPb3vkdvF8nVD<5o}(10S}9U1 zLM=n{60>tsGBb>(^5&?om;Z_p$dW%dJ~alqDqf$mCS6|oWi7(v^N?nA)|4VfUo&i6yCK- zz}GA+LijGKrxc(^(DLsngC9>I@Q!wt zX#NnjtwnA2?Y?~ub>OZ`()ml&an>_lh~^~5*LnpjVNr}y;9^YligMJbXk`u^Dojp% zYYNEa(4rtlN<4B>)O3K94l0A+auqD!93#zMIRnAn7-=HNO(3v}m3ma(1A>%TDOPez z2%2K0Ss}NEV12BVGURp;oQ{=-gxmoFB+fwX3_)<5lttxk5R8qJx=yZvV1AsTQZEQj z#2M=Gh2ZZvg9iZ+_{2*&M;;78VZ6bEFbJl_$LS*^?*qX_BZz{)A;C#1iG`qlf}x%S z2y_Y3jFtC;V0nVH_{jT1a5KR}3T?U=Fqo+mtp(piLgLAS3Q>s$7jqz(kSHwy@;p7T z6ZR%b`+j-8(Y!~`l#G6bIr%xciRs434;2d?MQ+o$fhlR-X-i%Rd9w0*2$4xKQk5g1 z;B1nouqnw}5|rr$i4qtMfw&_-(9cAO?`J1@K2~H87Ph3gS;J){B|f(>HZ3JK2fAUb zzXF=gOm!8`^pjG&d;%2QEEaj}1X#!2mAG~O2~)FJ0-p_BeO6oCEmz0 z(ZI7g*}yZ&z_TpbQovKB?Tfq_3eP5qwc$c`iml`%FFNTVIQDZA7Nw}93frLK#*}ag zbVBejB~sF!ENaI>ZFgaKe*?obQRXW)Q`pd7Eg8*(MhE&wNnj2HQgF-#pHxGK&x69u zR6~a^fM8~7lBB)}0^_5Oe5t|q?MEH?3MhR0QAfU7Z_-1!naK#J)1;{{|4`IQ3zbMe zg1{%;P~9gGRHO$;P1-EF?=ASJ_Y%HJm$qT@ZBU_Tki;j?u$L4+mD(vP{+dbjfIZqT zJ2vahR#Cni8i{>(Gt*p{ogppr^1W|_jBqtW%3$&XB2%coN{>t%iT!g?=B1ZuGdW3i zq+1WxC~VH`AvNY0B;Dd5)?^s=u+KFKi?Yy!zk_&f4<#4@nQ??;9-WO$k-VmJ2Hj`TW022IGBog!#ta1!v z`DZAM%1M&g9*UMx(9&1fpJOUnJ%$QrlSC^Ic2Ht$s?p8gp4SnZgqaZj?wtNGy<&zQP9z zwFRkCoBc(X`sthXyujd6ke)`25-V^+Nnz*^b4fY0I|iGFNb^JyA+<@2%jO}Bc}C(O zc&1|9nJM~;rLkg*tzvU>Qu<{SCT0vYrh7%qTYN(eeDR_zM(>bv7%R0aN$*gBW}J4EL90nW8LRPc(P9lo}P;qD*S-!{LV34us^t6@?2)h0=yX zF&GN`M)VS5hFJ^m7fOR(F+{HwB|IurN%X@-D#_1?B7>jBP-#F>e@UUVTj8ovVU(UF zMQYU;2yPa;2qTMKB#ZHqMRA_3@Vb~04irnNSy8E1OqQ&wA@CcKCV@H##7urLUjy5l(d>4h$;0FPL-*Ip(TbPrh~#8C6U6Ck(6+_L`r0eR=qG^GV9Qr z4UoWl`jSxLOsVu(sF*5+^6UtWFs_sme9NRPub2T9Gs{vXtJx6zR@6%O$mfib&ejx5AaAcx20xcW031W4{e@x` zL0Bv9E)WrPwQaY)|;gIt5}dB za$4jiWoD-uPWTj$6u(Iadg8JDNTc+3!c^wIiL+Jwq4-nrOz~XtLh(}Zm*SP;Z^dgu zMj!-AU<6Lc2?aqABta2MLPe+vnqUZ);0P0d+y}@H0QnIhKLg}ffII@oV}Lvb$R7ZC zCY-Dc(Lr{?jOam_6BdLe(UY(utO*;!marr2iC%;Q;Yc_U&V&o$O1Kfd33oz6co3e1 z7vW9#0Ms6!ZUBXU2?1ynK;r<~AD|fk9RSdLfDQv_F+j@zIvSwk0ICIOH9#i~<7;Y)4Q#B@oh>K4+%!KDmE%#jLcVZyRRig;f_tZ=G6OSM=6CgS`T z9U9tTN3M`$W&&s!NUoKDx$s@X0CIx_ETL(nP(7&!xmgle2{R`}sdh-fMocdvm#Wc% z+#|{CU`*44^gkIA`-snF?yHIY!~xwWm0MrwpUeFGp-q3Kl zA908HK{UEc+#~K2-viVapnd@L2WY@*;sNm^H2N8!fdCEC8wCro&Cuu%;-zTxC-IDU zPP_nUC_uvi8V=Bi)x=-KD`@l@pnU)usW<8?n6xbOrAX$#T1B!XM;swd0U8a^7`;ub zaHGY`wsFh2onBq z^6qGnF=VXNHJKzpvmi6N>t zwe_7(E)q@NHD<`grHJM@6G|%{cNHc^n#@0B8+BYxPETLZ5aI zKk_VjQ8aqjbR#d3m!Z*BfYt-FL2ooknAh&+N8Tjwi7mQC-X`ymcLCZ2&}M+P093b{ zyia})jUE7$2Pn`RwZg&BqD#1V+_q0aV|bXCLx8`ZUvojDe}F$6mI2-4@(KCuKO69z zd;w|y0%$uxJM^@jh5>IacXAxs=pPg+G6x0+!T}!;9Psvlr%;OU5}DuCZ4^mS#1Tpb z(Dwj3SE`1@1^%Z^5EU#{BLH-+RL!hTJKsnu_CHPHsCZZnOfK^Q`o6xJ1;V$TZoa8h zmT2>?!9fk6vY`!}%O3!Ak=|yp;NRupTR;{5XFWw!F|>iRX(>SAkaq>>a$!nWZ{KpN z;y>%rQkBrA3ZN?ix=L@eTDaNeRZvd};@jjZ_oWOtnxtil+e8O0`k#R0q{b zby4q8lc_1xRB9SEoti<-q-IgGDY%zd3($1{{Rp5R19T%mHv@DlK(_<*Q-JOglHc=# zTOMm_E;WyuPrXkqpcYaeP>ZO=)DmhbwTxO$t)Ny?tEkn~8fq=|A+?TLPklsfpgyKP z0Vo{#w*d;5lOF;48$h1|^f^HP1{ex31;8kPsR70U%nV=_0J8#^J-{3R<^r(Z0P_Ht zH^2e_7Gevq2!KWZW1~ZDl@`no1^>yhc=X)!4EtFU)+PhsOUUy6Dn6&w=oiv`bwj43^ZnCYchVZ!vDLdh&IlK^E9d{00Lm;Y-k zl)(V~R#-mEB`F;KvaO5&=yl%y0(`L|M%fpMRYobJW$DBzWt=j;kmJhgD~l^ibE}Fg zs!OWMD{J!0D@x1ivx;j*1N0UzBLVuIkTs)+U_aYUm89$kSxzdGl_^5zY)`+N`q!6~ zsmin=896CNyOqjxS>D?MNh?#CC44m71{7RTn~DIK(mRi@(^Xh9EmWs}E>i`oLc0mW0M^4u*heIc1ep1|ynFJ7 z4?Wa9{Z)yoe%(z?2AHLhEL9{+16a>)vXO7nEA_0qt%u)g>p<0@Zr26_%-YB%WDLte3F@G54vo0CRXp1xoZy z1?W*&fw7zGRr=H?^-LqcoQz~GG96@tW77FuY(#e?kG~bk_f%85BRLgdu12;QqH8k& z=JqZ!b$1})-rks`RJsMK54zbF0nFXVwp3(W1~ARL*i5?FzJ7~soeDm`7>D2nfO#6p zHi~4M0Os{?GM%`FT6Bl)^jl%urP|Z&8k{yhMz;MT+W~<2{+mrCvr&C%ObcfL=4Z%q zs$(jcD6~f_W}Jr=Lt*CX79GTBXl)Qcs-&SfH^=G1IAFrVDyUm8x&wbQBgW zPN8uhM8>Obs&03Ce+OWpMymTF)%O4kdl%I&Zvu;j>vs&VKk!Ua{ib@-&Gi&ueT-ax zid@eC7Wpo&zg4ddk-+)_EDG*-LUo35w(ZfQ|+bpmN@_{gQvx3 z0xT0?SpXXVux#Oj#ZPrn>NJ`AC+cW*j5<~wr;b-As1wym>VE2Eb&9&b8uH}=EDvBX zUlafgCW+wyD+1UEfRzGlB)~=kYz)B0eWFfRXQ(sPS?U4mY;}%0S3OXjryisptj-5m z1;DBSRtvC+0ILVsB!I#B+ypTF90nKwSS!HV|FMHt57%!vv4P#kaJH%vNj9ikCLYbP z_ z89diaq100)Gzy+$CQ|BI5-NvhqdAm%o`lB2W6fAf{egtW!&B7=NBy#(UZP$OUxQUI zRm0?<1z6=u^$PV$fK32cl~A%$qg${3_dR|*_^NEX{!Lk#VaBPqs(1X4HeAjj zTb-!g$-Vtzt@<mY(K@E*Y!EqTJo^XdN%iUf(f${wO8t%c z(*G#EansnAZ`C(srWXGQ%}wfiow zY2yq*Ub&K1(QxW_0IXBgp1MG<4ZkDs`-hncZ4TcM zrcG%xx(C4C1K4DMO<6@-(3Uiu{BVW(5Mc9pmqJe1wR&uty{v8x-HUdh9cd@p8DP@@ zCIIYxfWgIQ*_#)!X*b$KB<)SR(;9$H2iOdN&0Ix$(q1%tTAl^4*#Mg(XxD7fh0qc2 z((FS=iq+2r*gSpp&M|tYWwHSd1LJDT$CVm-jgF_`&g6eX z(omFTM>xPQ2MWrnw7KPFRXM`4wMeCgb{4$+15NcieBY<)33g4WQbbeTQ|%K^3mh5=x3%&b~Vdm;zu za(WE>N&+s1vv?S!)c{)y-=&@|ELp!&S1nV~HFT}`KvYvcz6_rEdPVwmhT8#bjsCHS zo=DeAPe5fW>4~yD_#B(7EiGI%#A?<^x27COK+69e@K5w zucOz~AJH4=kLgbU1|L8^1sI&Ly8yNuV0!@e*@yHddNaL6#?b4<^#x#i0k#id`*}D& zcIp?HRr^0ibXJXxfx+-idT+mGF9&!K85Zp2;O`d@+AO_UPalNqBfVZUF@DrSe?gy; zxv!^>&|lI=>0|V9`YZYbeUknfV6dAG0_+gLJ_p!gfPDclSnrnrJG!1eEptE)(dX#% z^f$y2`XYS^V8?ix519>cH-LKse73mc;fnx#P1HqPO%qGYYqV9dRb|Dn-yqHzt(}-r zTvtA-7>b1f8*LD8;q*o;Va>*R-4IxwTRbAIctn};LoNCa{fp@3UHTq$ zNdH9t46x$>`wCzu0Co~!(CJeEgS)ab06V*${*`_x`UyRKLO-Q{7sCd3N%x_n@XH*4 zD*$c_a69NJ?@}EvZ}iBk}~*FS#70H zNo6HR>1Pw;&G-m^?C*uGWPF9E`<=WEr2fbu24=8tVSKQwIgr3uTZmNfoxVUg`-P1q zF`bE&!3Sd%z;5y~i8Y#u5jGvL#F&Z;k+yI!I{gX!STuvFuuIKR6!OqppfgWA1XJGDAgI-(z2CIwwMjx z2!&}!D1yml;10&ws7S74@Hj)`5GhM}uVn#FN0Q(7Ga3ub+iWv)|G#+5Tio**REcTWZ zGu2`fY5?}|&6Hy%GCDZxnR=#ynZz_QO-wV>0TK>^*49>)lo_3y&CHjXzWZkk=6z-XafJB* zV9x>eLccG430F&)Y!fbiMZzC1-t{}i+hcY)vqBoP07n7#N*b@j_}Nl_trZ9Chs-(# z<`{UO{2Ji!u*Eop^aJ+I_%urYG2)EE?fTJ%BX33<^Uu*He5uk%$(|7(ub2Y>m-F`U zee_1@J0dap`31n_7akVgZ2WzYIm{e`XZXw)%n{~G<|x1kfRg~H0Ipok9B00Qb)E#c z3gDdBeefZDa9Y{On!NI|iGuy1o{0r%`V^54hg^Pk`KZzQ5@X2EGnYl`Z(=Mirlb&i=`uV1r`e!XB`{mb%i z2KGu%fLrk~-OX^0X;}WY9gDN#$q_3DxXlXq!P9Kv1GxPP z7Wxbi9tt^=guL9G%5mlT0HxHFjjz@Z4%Py;jf%Tk7T4z z*VtguyAU=M;O+qT?Dj5#?fX`JIv9L5ij4-i2H+liOcvar>*nX zC2mXm{!=@h&4J(MvKee9o5c=bvjOe{a9@D?0o)(p0c+S?b|9O_4q^ubJP_a+aIlsE zyaM1_VgF87!Et2Eu%&DnI}+eQ01pOu2*6=`!T=t=mL1KOvtx)O z>^Qg#;t>E(0(d|DA`K7GU4@@ETM2br9EI#HE&{$K!cp*b24<;C)xHJiw#iXK-h~FxN>Zg={+ue}G=ccCejn7yBMNnek_*veN(# z!xjVZSb)a?JRYtx08apTqNwrV5E$?#6|l?MmEG-H1@L6!1DT3l%ZexAhPJH-c#8OZtlzG& zAG2_~wu148uCHJ>0la^A(N=c5XtfRCsVi7r2Xvly86qyg`oZW^Vx-v3e%4*_UVx`} zSA2jy_|MsOn1x%jkJvBRBkY&#QT7;noc)SD!JcHl26!gGvj9E-;Bd&~06Z7q0|A}~ z@Ie3{{E;tv8ac$Ch5w#szY#Y;G6(iD!1KktHdOpiA;62pO%U8U;w7-}?05KM;_B$Q z!$NT0{t9t{e=`?eZe!mJgnR7wqTeuE6|7)?0QeAbAcV3%vv6Og|NfJGBvY}!v5((; zjtuZ&03U96NsonZ3uozxoP8lY-w~u^|AMBk*uUA=oDAOQbFv^K zCrw*YTvM*CfZxbx7gvlbi`Ujx)IjRAvWihPqd5h@i}Y+9%3)Alzx9E8oRu6d%X|=nB=yryKFAry(V_(73=6J3LXUy-Y!tvp1H2sOc;X0W!`X@xO5FI40r+?r*2taqg56F>pdd*qxNxIiw53+6(&P%exM2Y97E0ZagR6~LOt4%5Hw56#0B?PhV7cL3F-(|TAy))&m{4>pxe;6m zz+qMad`xzEX|}GW;eV(7fKkQ>j^W1t%f5os0=y02Gv3TCu8Nx|_FXks!_{&y4DA4i zbF>rSU8}izu7R7x!8X4K@TmZYd1|_T87tM6)QTT3>WqW2ddNt4cSL$wb#?KmvfP@6 z%Ch|G+7ac|)wN~P634Z|%?Jl;p3K`{MPj*5u8Vt*gFjnwQ;-;LDmP7*&duOvz`Lrh za5K3X5`r7`>YC!J8u(#+ymnme_==3$@gvHr3OUoVic(Ri`-jw|WOQ*=aY;>Cm40Ht z2?3u~#u=tdVnvBow1FbY7=CeI_J+?`&D+9%(`n&ZpV@1}KLDQscj5u!eHPpt4&JR` z377WVvih0?LuibVS;fue=7}3@gMu*1QlpC%Kld-IawyS`9}j5%gP+eE9wlb(ZJ7@Vk;}hl{usrmyGt#bTAOQ zk1N$UBvw^vtE6GKP$pixF`!&ROALc>1bl$tmg|9WsI21Fz$C5zvYuND@HvLHpIa}h zTg83EZQwozxB&3^0AJWWJ~we&|GA)Z+qmrjp9}DL!rI-ggSp+@-hV0VwS@7+URq*YPP1F{6AVwJve`!ilrYSR(*~(nySa>thJa`+?N#$#miONgm z4R05U7k?yErKnQj{X%)F!Kxwfj-eve6xA21U(}ZHh+G3tz`b?wcAy}5Gf)^j+fG;K z!#jb7!CQgOtG`u$uYRQdL;aG*X%l!7XAV!_y6Cy^=A9+*?wu9zIOHRE6tWQ>d7P!6 zGUo6WonG)M*n32Y0^;BWYeLhWu{|H$C*}`R+=`Owwkt^cA8E#oo+hQ zbhha-)2*f#O>da~VET*c3)9zTh#6)^nkmiHW{eqY*3-<@EXpj#EY2*!EXgd{tiM^B zS%z7bS+-fOS)Q3zczD!Cx6|yL*)KiF9{xSjdW`DP+G9zNT|LhC__fEMJzn(qtH3c=I&#eDebHA?Cx($C!^bA7@@+-e}%r-fXTj zpJqPYe1`cf^Cjj>&6k<4FyCmt$$YcRFc z>1^p@>1OF`nQ574S!X%Ta;@by%l(!IEkC#X!tzVYW0vPFFIZl(ykdFH^19`Xo@~#E zp5;9k^gPz{ZqMI(KJEEO&*wc~_IzcfGqJL^>Sg6<inXD#j|#D#0qr zD%Wb1)l{nmR!gjwS*@^IYqiemBdd?Cc37RYx@vXZ>W0-VtH)MPt^TljX7$3l)Ox)2 zBx_*ZX5C@kWj(`smh~L#xz_WoKeN7M{lNOM_3zeyT0gf@*qGUv+gRFI+1S|F+4QpU z(%Jaf_}K*51lfexgxN&c6xuY}th701^Mfs8%h_7l+S=ONI@oG#18swC$Jy4}cG=Fb zecyJW?MmAtwnuG`+n%uf+V-^VS=;lr7i=%tUa`Gqd)@Yi?Je6ow)bqmw|!*$*v`t% z$`&Ui>ZRyK_KNP6+^c`D$-UaoXdw*J;1gL8s51zHs`|>Acegr%O&(oUS=tce>$p z%jqv?59dVZBIicu)y`X-w>ocg-r>C8`GE5w=Tpw7ozFPy&N<(3zUh3+`Hu4==ii(k zJ3n=P>4LiuE|iPP#n#2%#lgkN#l>Zg%OaO`E}LAoxNLLT;j-6dzso_F&t1N7dEhE{ z?d9t3>gnq3>gyWmn&O)3n(mtEI>0r@b)f4A*HYJ!uA^PYxQ=tJaIJKm=eou9vg_Y& zE^Y~K>26tW*>1Tyw_$FDZu8xix$k!W%zdBx0rx}hhux33A9X+Oe!~50_tWlY-OsyU zaKGe!#r>N5b@vdoG z&`=t+hSivA%r!kVHX3`4qsB$kTjQbe*7#`xH6faCO{6ATql?odYLYdnnhebVO|E8; zra&`HQ=}=;jMS8C#%Z*gDow4XUel;)(Ev@mrb{zLGhH)FBWUJp7HSr2mT6XM)@asg zHfT0#wrI9%c53!$_Gu1k4r{*D9M_!GoYtJvT+m$BT+@7~xuvN)%@fTZ zn&+CoG_OZ^pdNA$(nICJc$j$f@UZl-_OSDC@No8U^U!#BdH8w+cm#WddGzs!@`&|F z@aX5!-y_{4%Ol4l&m-Sss7Im42#+$4(H>(xDm*55)ObwvnB>vy!F#lMbb3tonC3Cl zV~*f^@{n%3=RVH^p0_-I^!(Wi_oBU6FO64#SCChMSBY1dSDV)~uNhvuybgIC_Im8~ z((9GCv$vPGkM{`gvEJjo7kRJtUhDn2_X+Q>y&rf#_I~PP>*MOv+b7v)fKQIk1fNMh zO+FiacKYo0x#RP*&#%7zz7f8WzTkl_5aL&pZ_iY zAN_w0U;}yvSO>%hqy=OIj18y>s0$DR76&X1I1q3w;H!XJ0Y3)(97qP51eyi*2}}q~ z3akj67}yZFK2WzcaC_jHz$<~*0$&Eh z2+0bm4*?-%Gi-L)=CIvipM_lr`!4Ke*sE|wI2rC2 z9vu5a;b+4CjF3g35xpb)A_5`?MHEGhi0F)%88JIzYs6;} z`ywty+>E&0N70AvqciE_-6y0^Sf9atiu;uG;rmSPGqumAKD+wt>2tBqjXt*`(MVM! z9T^-M6&VvbA#ze=Q{=+Pm659>k4Bz}JQw*m@@3?!zMg%9`iAr^=v&gatZzr(8GUE< z{iN@weRuVJ(D!lQr%~2X&QY#Wc~ON?#Zg^Rv!doiZHn3zwI}L&)cvR*bkQc!*3q`n zNzs|n1ETAqb#bZ$#gU{wqcvL&W&RgvNx&jEETZ{zU?oAWv{h z@J;Yf7??0Tp(tTX!k&b^34bRNiBw{0Vs2ty;=IJAiOUl&C*DfDljN46h29uwQY%RsBBhx3S-~es}xbPqs~VP41mslw6)XHhGgSc~|nD z;%CkosNf%``5}D$OQsa9VL%N!q-$rD@C4?xp>j_9#6# zJt{pWeNuW`dPn;9^nK|E(w}Fb8F)sY3|&G-Qbu(~Q$|b1{*0p;$1}-HlT5SBIUo{@cDo* zvgO%KHkX~9JtTWr_6OOkve#rk&p~tWoPIf3IoUarbLQmC&AFI!Bj;AGZ*Ev_MDEnw zxw_o>x%YB^&3!a5aA4%XsDaZ5&L6m7;Dv$T4ZNA>p68zzn5WBoFKG_%YYx6hdZz+%! zPz9=jK?OwxBMR0QY%16?L^gyPq8gGhWYCcOA)ANn9-{kfXs@B}Lp_F087d5&H}u}n zUxz*#7BMV-SmLm$!{!c~KkUY^ABO!n+;4dJ@IJ#^hIb90Jp9b?E5ol9+86dN)D&t9 z>kB6p9wJjE6 zEJutVQ8%J~#FryZk2tF<>0RPi5>V1q(oxb?a=PSl$<ufAuaCSjs@Ev@Q68fvjG8p6 zY1E-nUyV9B+Ge!NXt&XIqjjUf=)I$lj6OR0?{cD?D$gh%RGweHqWq)skIQv`k0HiT zV{*m}9W#8)nlT&4Y##G+EIw8-He>9dvH4?HkNsrqrm?Tbk>ix(^2Qa8D;~FZ+>vod z$J>o}8}B~8aeVvu&hZz=-xz#q&chU&Bt+P>NtZM-%~o1#tAW@@vw1GR&-f_A=kp?0x$ znRcaijdq=OgLb2Ki*~zqr*@BapZ1{ku=Y#saqUU%Y3(`f1?^?+HSKrWTiUzY@3jxK ze`ud+Uua)d23E#Y##JU%_N&xYPOF?zIjd5rJYRXU@^++}-L3k* z+OFE8+N;{9+P}J`dTRCb>Y3GZs=unfRDGrTTJ?7|=`{s4Lu-cD6xXb-*;2EuW=GAg z+TOK6wIQ`(wS8(os@++;yY{o%{k1RZ2wfdjr>bM>GV6xc4X-PzE2&#ux20}d-Hy6l zb&u;_PedkS6BQHtPaHHcf8vmd!zZqpxOL+8iJwl~U60nY^(OUZ^%nI*>POd)sUKIb zt>0FEu>SMO`SAj((FldCoP$@eA22(YbULrv|-Yh zlYW`>veCKGt1+xGt}(N5aO051;f=+OrH$hoD;ujD>lzyx8yn|0?rS{J_@wc#CbG%2 zsaKPGlV_7plYdiCQ{SeTrue3$rj(}Crjbq4n-(=4)-|1My4ZBH>6fNInw~fP)%3a< zZB{ii%_hw~nk}2Hnw^^cn)@^-HxFpeZ64HI&^)YpWOI4*xMpp0RdY@A%;ry}G4%2z)!gNKta$TK{ z*G<>W*Dcg7)-BVm)NRmh)NRpi*X`8p)_tx!t-GSTuY0I_tovQ}O!tz6z^ev# z!g~Vu^84Y9d}rY8arfa(aX<49`N#ZA{%?T513Usyz!ca5HxLLSK{SX1i69va0J&fg zC;&sja4-r~f@aVOCWC2UCYS>jfu&#tSPeb|>%ms=8TbO61y_OYI=Bh$fcxMfcnp3A z&%jIYs#Vcy)@tAC*&5Uu+8WW?w>73Ur8TWJvo*VQVC$gPqSi63HLaj^O6&C2S*=3r z{MKcyD_hsJu4~=U`bq1t)`zXH+FaXw+QQos+6J^0v<+)3YAb0Q*`{r)YO8IlZ)UOr>wB5Yj zzTL6irM-8%rronWs6DDZwLQ0ePx1VVLrv1D2pW2_c|JnYc{Z)sogX++!;SVIH9p)XD9S$8H z9f2J&9Vs1Y9hn{39RoXtcNBM&c8uy6(=o22wxhLUTF1hUl^tt3)^%*?*x0eNV^7Dv zj)NVCJC1am>bTr-yW?TUvyPV?e|I9CcqiS-b((crbXs-Vbh>l~boTA+-w8U~JG(lk zbWZP_)hTq&?_AiqSl79%b7kk6&UKv|IyZK1>D=DAvvW`9zRrW4hdaOQJl=V-^K_S@ zi|SH$v0bKJ=3PCzY`W~b9J^e)dUttrd3X7B1$KpWg?B}EMR&z@C3YourFLa>4d}}4 z%IhlWD(f26HKuD>*T?@?vw43wnar z(4W%(WN2@A+0et#)9{*Mo?)3`g<+Lpt-)bn4V)oph#0OK>J9fahWmzx#-YYB#vv({`dXU)~-8uKahPv&#xU(EL{%`7b~&sf@6 zdRc~9KCpaf(Tuf>vrM#1vFx&FEp|)D60yWADa(H>$1UeAmn=;{OQ0w44lov&089p^ z0W*POU>&dp_y*Vx>;x^>l!Aam$a5ty}ZJ+~mgC39rW1t8o z!2);!{2BZmyb0b0>%er+u7&Ty_u+?d6Ve&!szF{tx*V%@OrSP!fh)*G9TEyq@2Td;4i?bt5tJ8Tc8!;F{(1F?gcAFIGP zEQCd|43@`K>@ao|tHyrPVCS%3vEQ(ItO0Ap9$-z_Q@jKIJl+L=5q}x)f%nDx;{)+G z@p1S>d@?=-pN`MMKgB=Cm*C6sRrnfw6aF>64d0HNZ~%vJ7{_oceh~NL93H}>cnnYB zS-gO&_<8&S{yTmVzl2}K>+uHs0p5f^C7KhOcEoc;C!z~6fEYx)MGPi}5yOdb!~|k8 zF^%|$m`^MqRuOB7FNlrAX5wpNH=!ZECw?HTgq?5_E`lb?iSxuY;s$YxxI@$v_lPIf z=GIo$XRNPSU$yqO_ObS}4zPZ1U1!~3{mQz<`i-^Jy2rZDdcdl+I;?Iht+9Hn2d#eV zZ`NAtE$bcYW3n09l6;12OSUJwlHJH2WKZ&K@?CNS`9App`5`%jEGA3Hx#Y*>0&+FE zo!n1iq?NRjE|Mn8Ngr832FVPWCo9QAsY%j6Tu`jVNv#+qPwtMX{d)zMBWqXsOt)so;IY%c)iDQvtiDQ{# zr2}(#9OVwLgLPbX{MS+MxaVkePIQ(y=Q!tSoS!&hr`t(88K>8I&3V_^;B0h0a*c9L zaZPj0a231CT!;&E5iXnSlIxDE&UM#y-#ysUn(sB_dW)Me@x^^kf>x1d|o?da#|PIMRgHM$=?fF48-rQf07qu-||(bMT! z^lW+_{fUPDjQ*TnM{lGz(_85s^ln;1@1^xLPTOf0P19bQr2}+`mgpRPoIXSUO#edv zMqi$sqma; zS};SH_n9JQ4zq+=&8%ZKFkdm6ZOjg4H=|+pGJ3|yK#Yqy$oLtK2{Cad!6;0I$uUQm zYUX$5CR5KeFb|lf@|NY#l(#MKP~Ne;TluTy1H4AB#cTKay_`4Xjd}&IX-iUteFbuhh54r}cq8#OLraKEF@V_|m>Zz9YV4zT>{LzMH<=zB=DM zU!(7l?}@*;zm@-4e>;B%e|P^Y{$Bpx{$>7+{!RWZ{%`yNf6}k`)BYUWobAYVV!N;} zvLCUF*`@4qb`^`W49l}|Ho+=vhRw4odzd}To@Xzx7ui4AE9^D)278lzRPkDcW@&|` zB2rOZah+?$J;!z8Uf^EjUgzH9MslOMB5pi4iJQvJ;EK5tZUwiRTg$EIzT`G>Uvt~I z9o%m2JI=_tIElN?Jqip8d>EJ&SP)nh*dEvw_%5(F@I#<1pbwY=KmZOL4EO_FAQ%V- zq5&Zw1>`_FkPRHw1TF{af^CCcgM)&_!DYd%!Tmup7z_RwJQ+M4JR3Y8tPeJYT85qv zy%Q=5jSEc-O$kj8Ee>rC?Fqr5P$(J_LQ+T$r9!tujiIOE7U9<6HsN;RZsFI%Z-n0r z4+*~=o)(@Fo*Uj0E)8R0PxxTi7p@40!b&(3&V@CV;h)1-!q>yK;alN`NQX%0$biVO z$im3dh#|s6yb*tdiv%NLBpFFXGLgfPy2$-#pXi`yNpya6S5zA{M9on!ibSz!I(jsE zJbEH}I(jyGF8W)vHd+_G7j29_;#=^o`DgiddA~oE06hN z6|rC}660e^>`?4v>{{$b>{jeftUh)x_C#ncv=Q119feLpFQK>4SLiPc7e)vph0($^ zVWvN-#8KjCak}`qMqDLs6nBYx#C_rc(IA>dP=rN?cu?fUxR?+X zF)e1r)8ZfEpW-F)idZM!6C1@x;uEQv)K%&wy)OMrdP5o{y)TWC#!3^UsnQIoSeh+; zDlM13lD0~v(oRVueJ|~o$|S2qOCc#L#UxQmN{XaPMXyWWVHq8r`~%M8v;&y-{~WcFsDj3dKl z_>7Q|GP%sL%!$menJby=ncB?VOhe{=wpq4iwnMgec0hJ?c1m_`_VetL?DFiY?Aq++ z?AB~)c4zk6tR`#AD%s=N3)vglTiH9=`fNkCG1o5FE%$P+d+wFo@Z86_6}fG>9l6~( zO-}QDZhuajGvv%UFvsM)IW`x_g>!r^o=fDETqc*x{hGUzZLhiF zI$JGK=cr56VCCMMO3S5S6wQje(F_Ol~Xh7VfBo9UcI1R zRIjMl)mrtI`lzZ^Rp+Xgs=8P8tm;$MuWCTmz^XA-+p0`et}3RA{U^6<(c&L>I`NPH I$13js0Po#3NdN!< diff --git a/integrations/apple/example_app/Example_OSX_App.xcodeproj/project.xcworkspace/xcuserdata/Joseph.xcuserdatad/UserInterfaceState.xcuserstate b/integrations/apple/example_app/Example_OSX_App.xcodeproj/project.xcworkspace/xcuserdata/Joseph.xcuserdatad/UserInterfaceState.xcuserstate index 27fd567e0a57402d05c6063c8a81cdc24494d843..0db74a7eacc2b568bb27a77d8917f81d62245a66 100644 GIT binary patch literal 38999 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 S;RiDC5}jkB8Jacx*vTe~}jR^EQM z8@+_mQ9R{Ac~V|fBo#$PQzNNSR19UHVyQSPp0ZG>R5evY)ly@ranyKf0yUAEL`|lq zP*bUCR1;;TW>XzhC)GuDQ}d}s6rq+=mr++xH&8cHH&N@To2l*89n=nLC$)>Zle&xA zO+7$8NOJZs>T~J~>Kyeuq7XtD(TG7T@<5)*3wfhq z$OjEafoKE@LSZNhnUEQ!qAZk+@=-A=K^3SP)u3850Zl}cP&=B3I#4I-LfvRST7VX! zMQACy1T9CGp)1g}=mxYA-HL8QThTVO9o>WOMfagc(4*)v^f)?>UPmX;8|Wl@6TOAr zM(?0^(R=6=`WStJzC>T4U(i|fEBXy1?14S87xu=(un!)NeX$>o#8EgJkHn*J3^w3c zY{3aQ4QJvkoQLyqF)qQScnq$_b3*Lyg z<2&#Ud=GvIKZYO2PvEEVGx%A&AHRTK!AI~>{3t;7{@Q_-9(8 zhtWRtaN3s+q9f>$bS!P6&9sG1rc>w)dNiF!m(aEJ1bQ|-pI$&Or2j>)ps%2>p;yyu z=C+Roo)AR@Q zhx8fxEBb5t2l^cSJ3}!%BQPT4&iFGSOcWEt#4{Eqfk|XinM@{+DQ3!B(QF=@&la9vV=rYdW3ObdW7o3l*<08x>>cb5_Ad5r z_I`FZ`xLvEeVToSeU^QWeUUxLzQmqj-(XL&Z?bQ(Z?o^PAFv;?AF&^^pRqr&KeNBE zXW3ub-#D6MI6ddaxpN+zC+EfaasFHY7s!Qhv0NM%&lx!rm&~Pb`CI{4$Q5zLTnSgj zjp3@f8g4u{m8<6(xE5|M*UGhVo!oqG0k@1J+;Z*;?n-VIx0btsyOG<#J;6QAJ;OcE z?dJ}1FLAGMN4VFx33$U9v7km#Qn!73zv~#k#S&ak}xkMqQK6s+*yk zshg#1)^+RV>lWxP)veI2)~(T9uUo6zq`O_$qwCf6={D=O=b}!`&m$i5G|%u(yq-e?&4gAggdj3}aHhvd>Cw~`zH-8U*FaIF_5dS#;9KVl$p5M>Ez`w#D;g9ks z`8WBu__z5}{D=H!{O9}^{15z({7?MP{4f0P0ww4LH^E)-5IhAh!CM$61PFmbs4z;1 z5e!1C5GN!F$wG>dA>;_TLY`0|R0>tX7@=AiC(ICL3bTY}VYVmYQS}m=SZjm-hw@SB3+oe0C9nwze0cnr)u=Ij-KzdO+ zD7_@TBE2ddlU|eFkUo+=l|GZclD?L{mwu3bkZfQA636w}lloRDjxsR`? ziJfCz)HwcX&&x3;8FLId1^GsU zCEu85NH!)H7!r&|Q=T!~l8~66RHyeW&dVR))-k8Ey}r?!*VfoQ*V@`;>)D$Mq$0La z!zdqWIOR+EQT|kb%*vdslX+Q?MOoTLji7?4U_im23ZuehC)rt6kP&6QoFzxs>4z)u zn_HXO7Sy)2wKUXs6nBnm?rd&ou}&L!Q_xXA*IK6!h6j}$P1X);(*Q=b^$odgtz8{$ zEiGU%)ahgF(beD%z8~A#Jg?hY+yoSb@9ms zrX*v&#ZZu#lxVP|dnl-Yr>Th>r;} z#4n2pT4GEzC&dIA<4sA+mK{+UYoyFQlt0kQ^$3+fB~nRL@+6I?tw4|o+K<*wV10H+ zNByE+Xpl0YqNY+cnQS~tqY9{q9aK7%L5-#|sVpj+%As9*skW5=B`EA z9oG69Fb=!MHCq>G;08b`@6O}116%T}oy{{_9Ux3mz~osQx@XQ*m~O*P>#W(@smwHh zQPA9Ct*Y;uH5Go<2BbjIQ+0aR^7`i1*iIP8qK3BmjwTyz>!^AvqKBF;2lh}6@(6_{ zZh7Ns2T(8Wvd-<)csYY=?xki@v*aK-LXNTlm_xNv?!8nCHCGOnLwcz;s$CA1!{qR( z0LFfz>fv`~6y^0ZTbsMOo2*r#Sy%W_%75D2SU@eDQc;uF43oL7wY~!;!vZSB*3DvS z*?HYu0^LN);h|Y`vh09dO0AeyQB&UCRS)u~&Z$1?Qe{?YeXOJ|uhV-BG#Koxk6LNp z-Idg}RK#ZLD(Y(L8fuk1N{*2Ya_na6I%+kwhPqyklMCf$dA35Xpb3p_P1abTcxiK2 z>;RKvYq~nR8@swYK|3Y2f2JeZWONDemm-wszX6vYxt~ir7kR zpl+cyQnymKQJds=*(jT2vuu$Qwo*M*FU}Iar?C;Gz7tORUr1$L+Qgd)VryBDfb@g9yzIpx=&74^uN+{Tzw1B zBfHbS=^pAKWlldRr}R({%c;s}UGo>#&uwq9)>YO_sLO6|w?TcJ+Dk?BQBP1$QcuZg za=M(+M?Izdku%gkLwq`+s-vw5INMoe19E^mIDpzqa;6+^dvTb0g^IZSb~%~{dM{Z5 zdQw%BCSyWOP>R{KY?-a$Yt-ul5KhRsgAm@N-X0jrJ93^JZTsRBby|7xgq+qxeIVx# zzWA6rqrCV;F6dE5p^V@nvi~LZgED)*qQ0iSp}wWQqrR7mO~d>Q%^4(89bz;|c)VFpv1MijD zVTF}#SYA%yz}!;SGfEbIW29Cb5y)8l^nAPzZE5nGTB@kl@-lH@9Rj9e|($hBLLGjf3yVgz!N$I9biU2u{oDPxKR z(D@6kjopg=$#0$C+|kymm!Lcnmu-j+0#c_Bw>{5p0kzw-NI|r< zpsl0Ax}d7QyVKgFQld_8gmy*s^R3082%GC$S{B*hxTJrlxpRVvQ8UZ5tMaGZ7~;CroqRGJq0>xVdV_lw}bCwN}ejul&8oufQADK(t!}M zLvb*#P3c3!*+Q8&qXd+Ql2EcdO|F+4MXrOnKfO-x z9v{@SsHLfHMtxU(OP#f&qpd@uRSwDpEe{;ZRzp0B_S2?|`gv7-b4M@Aqf-8)jSYzc z1qr!9>2pHuEM+DI8ExLaU$VrY7kVkHE1YBCuFIy>k*9*_38iiiCq8s2uD?X3L{wXVm1Rqj?#`S=wTs$8gDEQE z0?F+EbO4;v6rL##gSIMO*u6Wv8)#qH(bnA#AK0%QDh1=s{RTE#i~??#Cu&oBncdGa z)qJ}gr9HpY?)ggfXB%m+L{}?|g<}1oYvjdpwD!SuRC6C%jn<&+ohtk|Rj+Fda_!7@_~GYBxMULM+ndL2IQL!0GGWEo6F_;k=*4b8gA zqJC)m?hdre;k!H0UGj4IQd_43MzGdtyJimBKE5CAp(1+GZuEeBnY^->0>!VYd{Fp) zDhHJ{r+Q%TWsxU>jKBDvuRFT zGptWDJ5;IZjH_=4^CQmMZ-&5cap#F;TuyzbHMXU_qiuHF&*cjOVVOIKUV>2fg9w#@VB45TmFe4CxU_r3L$8eA{}~VAa<>x}yDmM#?` z4V$3;M^y^gPQ{FH)KQAu+3+9mWG1z!uAQBsh~7sZ!1PC_*WpdEq&+*V8l=IMj-r? z%KVLX=uTbgYrx}dovHpf;GTeo2P(#~ZNH6t{_{d>+gxi`$0ALV&w>AqewS~B6;2aE zjIjs-4@_eQvzWs=%ws{mP2MEmF89d2a-Y0;8c&IHR^MYn$hS#RI<=^|$(r5LqAeRRzs~!}wq`hf6`K8cO#UYCqd^lDr@>-MPFOZhb06#s zEgXmAQ5-g5v;2^J57} zMFevo1B{UZ`968Np6fR`s3$;~WP-o68yOE*oj(hvi3Ph*`AFfSHyW7x&*%v#L3SYj7>-9SBy~SZ=djd+}Js z@)_zCD9H0vc2Ja}&OxC>4Ddq<4`||IgB)Aa*4@!)%>`|E6i)=QOhN`c1y?AM&<6N? zGW^?NZGjbJz7=fWC*+4U6zlMGFvEdny|_+^Y(NMVH-Mz$M)@h(6*R)2uW7WHj4?q; ziSYx@CZ36B!-|M!;b!@1`I%lk2e-)2%FoHsQ&nAA)z%4KNn7h*)rBFM5vw-XB&!2= zE3i9pm%LAYz8BBO3*`OshjR49Y$a~c3XY(?io{E?e7=grget_B$}hk?IxUB5gIfuX z2EJTAFkpz_tMK)Is>ash8}N*W{agYwJr5%}|%{Jx^d2MN&FNvJ0`y-Pag+OV2s!0)TQr?9sCU5uYE{Fb{Z40{62q<2#}3SJ2R+`eaRxe8 zmJP+{n^aj7Gy#Idu|}f}mDlj=u#Dp4@;g2Fg#4}?JqeWNK!iJF0KOtYnuU=I6KN)> z_SkY2Q=3wGTTv?VDNTJmWK$n@r0eWgkFZ|E^~Vf4Pzi_(c9({@!LE^fQ%qqTPlPBifzz zpu%Y{`HcK2h|y;d!BrN!4#}Uk?b8{o*ym($)Wnj#K628%0k3>cVAPqD<)!A?j8lFhO0- zT`ks(kn^nikf7$Kj1c35E<@2oLwC-CkkJ~>sX%x-P5$vu)is?-XDh$uBAhDnM^jHOlaq_PN%%>;Pup97a z#v$EEH_=w=6MCj<9R5ZSMG!9+5F{w}p^g7@==LG`KacKE)#y3-cRMxOxBQ7aRsNfe ziAfG@Uqmlf*}jY*9YIK8JVBgB#Y+^<%QT^v6NCw(31a>(^H(X%Cy4zg+`s6epXi{n zF1qL|!PEMV=1vGVs=H6xpw=sF*+3v>`DaTxeH+~e+Z6OB`gXd9?j^{XAQysM3DR$- zH`80tVR{=uZUhaJcM~*Rj-F6vouTeXO{{L7IZOR%lIH3Rx?uwj(}2TebZf3Ny?bJWE(c{KmoHlvo(-hguh??sRqi0xe=+ zr}uSy+wacQG=d_A;E=;h_4Bq4Z~;3TJDS^-eL7Hp4oy_(ibtZ+@CnL%`{1Kn@?EcWBn~*X?5(^jq}14j;WopCV`kK|yl(Aa6pmuDrtG ztB>f9wG9OuuAkDMDF)YIo6iv`b#cfiyW^5j~7M5vNKc-$~B*uwxrXdf`+CGF9#S60eBNuaIC%1JdI~r{!M+w7&U!m z`uqCIfhJ5EP{o&;0>H9si`dp+KC=*{ z&CX68!tPW(GzM~1v<;;JhudL?-*LA0GRqamQrUm{E6ueYRxp><=|lg*C%w!{1^QoU zY8&Sj%o-|UJ98y-6>~Ln4YP{5mbs2uO%N>cg#;B5R7_9_LBQxTg37m3Bbc?!4a|+q zP0TvxW@f$YL{J5x4TO#-^k_m?61t7h?TTvh%z<#?oc1;djdrS8D`3Y%6w$Xopr^^S z8cphieKYWIJEv&LEj5j^tctVYsr?F@gs>RE&YvoYuwCu|KsCQ>nipI9Vbtm4%j!G3 zl;yU?3LOrH^)#@GtKOsnhRh8JCBjkzD$M4kYpE}=;`nGmdksn3TLniO-8M6K!A=FU zh1tq%W41GQ&@-8x%r53mf+`8BB4`Xj)dbamp+rzEL1PITcL#Gfa}RSbb02d*vzvK< z*~2_Y(0GEbA?PK7juZ4A!KDP(5 z^iidxJZnVI_AwY#JtQLW?o^AFh>cRMNkJp3kd=nRwn3Df-WZr z@{jBsJ?3@A(IaSLo!+$2uu$1cFaYup{mMzqF=xl8m<@^9$!3EE>|@B$%Fj0BS`zck zCR4VtAjM=4=q(M<Qww?zl*_e=$l5H{@QnHhP*txm!hLq&QY(r9_IWI3h2N2G&*e2>ZmV)(( z`JJHV9u^U#<|hreg_v!M!4}Wd(z;j{)@&9`w>h%wF(op~3b>3FSqUtIqpS-HK8W6` z<_W3!9IE|25t0F|3zc9FLGxsaC#Z#>xfh`Rmu4>O&U#Q1VpvbsOW7u<>EAN%npI|P zovEYOU?=#`Q7KSR0efJ{P^g?@D{QDtC1|OFN)^nmJa&x2X1yKV zRew;=0&+HNYT0pv(-_vmfAxD{>?EZ}7}+I5_4pAB2CFvsI+%?%U`_0d!J*A0h}eM5 zR)EbRX!%gUJ{v?I=G#&mur7A~Aj^QBD{R0PE5MczblFhAzGj!(Fl!`ekroxti zVXtH_cX005tJrG>ds{`&mA2kiE4{5D=>5JImf|>kWo`^+0b5w8wwLWAXe~k833}9FiDI{FI_ld0{?3e@reyEbuvlHE@3aMY|MoWg zc|p3rvlTzMPs84)VRHRH!$gTnTQBJOe9RQn^beB)*az50AS%P|VIO24Vjm{x27+!R z=q7^JZKn6IkFk%lU{-h&1hZm2K^q+;yWBdr!P+qx;a4`!wdDdffWT6k4{>-%Hx4b% z8Qe%6*f~_9GKy!eWv(kqFekUZb$-1X?XiC`tT?B#yQ`(S)#~_(O{(^>`;~eAJV6_J z*cS-8Ma5CE*h^a>fzIyR@y$(LvqH1l-?fiKu!q>A3I$$f53{eZM+mx=pxX$7S$+Fv z_Eq*6`x<+kpdNyH34*D;4Yn61wYAMHsBZ*|cXBSc^VW_k#Up{JgJMTon`+zI%alEV ze)8l2S;Dlukm9`BwgJSn(c1RQ%In)hGr!WJ9MhHA?V9dDYC#R%g|#1ihwADJA*1uBxoKrnW9Wuei3d zx~?X_EI+rlxU!DJM z<*Wc~6xYod*t=Cj+HsR0$FCN0{9q?oIZrUu-fs5!jck}+%3Y>lx`LpSJ={uy-gJ=I zpd3 z+sNI@-G<$`+qoXDm+Rv;b6dEr+%|4IcL%qFgSGM$L8l4i{((;Yn4mKReMZn11bs!& zHw1l05GDY z48cwW>k0NGco@Nf1P2owN^m5>u>>0lHWQpia4x}xj`MV{Hc#J&Gkbq+o_2OL#woK< z4O@-xfXQm@h;4-9ErV7nw@(B5L7l$iuK@*1= zPY4i`r1}O^@;{momKnxmYZ4?q*)!xP4W*y!^mG3)J?s>ka#ZjF7yZvB#cvu8Xa5-v z(BoeS3;YQVI!LQjb`yT9)6f6Mboe7%@;n;-q2kx+G-Q6aiyJAU?9XQWlaxH=Onu`l z$g1ye*T2yhyAZth{x@;mogHx4qOk=I6~{G>8WlI+7}wm^Ib(tCl(SCMxq_Q1cUBhrHONrXv{>Oev6#W=>WQZ}wYpy5Tyg8n9XCtMk+O z>jDU73FZja5zKGajnD-F%n*VFf<*8fs5$r{IfBdPZHeHOyL?yX18FJDG@wq{_Ucu)^-A%f6x|<1( zA~>4hkpz$0tlOZwMH^TQ!G`}mW7wm=?XA}cYBUZIbgORXkObMKyHi6xj^Ow~uH^lC z?9Oc$0NJg3SfRp@)AJDoFi379!AYBS z&+GOBXATgYOyGnEa3=MCs+0Tzo{YTiZEZ%xCmCTzB$`e3GvZa<31uwDbg$`->s}`~ zo!|_DM-!a6S@(wSB#h-Pf?*ih%2?EL2LCht>L-TR9Dh~irX|S&Lop^=?1%D^4vvUj zWU2UE_XP~)D*~BRIA0k`LBH6(?6>7R6{MoFCoX}lJP!#_Jg2DVGWqddUf@N7D+nIr z;HUDg>Vl5T|Ep%Vc7Ba_=e;3jg@fSiR)D+%PHt`M!{NLSKU}_(;7Wq4;H-(FIE{*` zQB+s{RZs17?iUh1kPijQU0?|CVLX({P!^JEf@=mPHNW?vv+gQ5H7(f&C5DfMAP#RJ zcx(?3vOV6BJQj^SaH{&h6v*R~__QI2lEIHwh%$lTi8i9dC-)QO+L7g>Y{SXr^OfPi zB%IvC7Z5zvaX6*gaHiDht^W~QQcc$B1cOd-u)8|rY-m;R5I^0@SMpW-7`~dX;UNiX z8o_l0PbavZ;0A&lxANoo@%#jSB0q_rOmGvyR)S{`Je%M-1kN>q<)v@3cGWkxIBZCD z_GcR_iTe(_U;0k(Yq@We& z6zBHm998ze8thaJZ}L|A)7ShgezrpQW`bw-@PO_t1zlGy*+MJIQk~es)fQJ-CrR0c>ic9#Vjt?&3SAYocGEeyB{G|l965LL32fgDJtkUK}Tb+L9Kb{NrK?lv-x!?&*21tNvSB^s4d3XHv zTJQ7f^bP-@_rK&>4fbr`@j9(z*a!TNNc3Q*4#VB3_1gW1iz~&z57? zpAM)=P#H*6Y$teqU5d=q>1)&goMTfhj%ijELT&xbP7Ofa1=GXf36wbCqIsHbUOV?^dMyeu9_v z@DC6SSuC)-K6Gk6|1hNH^N;Y45_}24D+W^Y`6u|jkYvw4$v;J~Ofc!?pXQ$-csYR+ zl7C)d3kom|5`W-ahojO9&1#x%znjh<;9okg%R~Ij1Ybt*N;w>AcCFg)(EL^YxMDLL z<6k2f6vvgl^dA0%vU!BBQUr3|`5N z|2?Ip*c}-)VQcoh}zCn&2rwx0YHkDw-(uiU| zVO{NI03x;OLcpKpf3;N#vkB4#+bR5S{5fSiMJp(Fv1UW>rwoBg|9}J}fT_4uzyd8W z0xNI=1V3&jcs;=z2)>2jjRfDiRS*PGkOU{eS#TlvHi9=1dMPdyn8paL*qo7GVS^79mK04X9p%w+$#3Axww_DHp

@|fDFPI&>oli-KwD9(Rf?-M8L-2zHKSc1u1V6G>s1v3`y*K!S4igMZ z(Mxc~Ncpo{nP8ywCY!9LjcoGGTPJD21ThlVh2Q{)?BI?_H~6;p-pHP<_R4_r_d#I3-g5q!a`w@ zuvl0kEESd!{20Mc5d0*;uoCYj_-TS+9e$SJ=Lp_M@bd)kC-?<|4-ot!fg|-$dPx#w zfe6bdLVj|mT04&5$KkX*(#TiYt`u45T)H&73KA=Fv(;RR{0X)BTGB*zRdHQqMHys4 zK-pAbg#d?rAP?GBjZFpD2an-s50p!VlswQiwjQrk`w2&R*7laRMM?#`rAy1RbCqm{ zy!@)N%8BLq6}5G>+0}*lwYG1-fCJnj9lj~9Dypo=udKQFSFo!DK0Cnome+6zgo#Qu?+~; zB0y~fI{%xo)z!-A&ua|}7PJl8Lr+)x7)_SN97o;T41LFsq*W_nc=N8q$Xo?2lgW(PE(~;vh z`4e)>#=_CcI!K!t3j-dP51BXvAJ^54&B-fPGHNQTiw9BNrh*!&`aeNsW#h_&l46ZP zhM+PiP}2?hB1@MR=H}Mb6v24w@+-!c58wa`HQ+Gmq8|bbkhX3(;Jb8bZdrCkVO@4v zS>^b;3ds5?ugn`;mR(&}T%lrI13%c2Qhhs!At-L>DD7`_)DNI8du(lGS#d?FjV<@6 zkVgLzBrTH@N~#3q+R)Cg$c9v;y2_lA+&ZA94H($&3R*SFwr`MfdJOiMJ7CaC!ImH> zL}As6do5jBGrqW>7DiZ83k1->6y;|_l{ZbtJOFhY1W>kz2GznND(LX@*gN!;uq`l; z2~Q{s|KkK7?h!x}y`t!4dqwAHbQGwiTEXa^IFP_(gY>NMoI_AR*e@JXy*}Xp-zOaG z_xfH{UA|+A*C)Iz92Q;?jtCGE07L&I!Dk2t1NKJ+g;7HoarU-Q)htM29Zpm>O_F0t^w@ZouG%+rd21D+EYI5w!C3SXSp z=#cQ0YLdL6m?W!KI~XwE3BOVi+l23hAA}!;pM;-!mI3rBqIdJ^NetADBBnxp9IA{lg)!)7f;t*33hDZrT}#!!E+63(ZE2xT6)aWD=+XW2*-z=7_nDlq?X7K+?oQg1_$( ziwXWg!R0S#nF$U3$zPC0e-X57lcG|D$nF-gN*p6ri!~zHsy`F_3&9{wzY_f07IB<7 zUYsCK6ekgUj^N)3ts^u~Xtg@wQ2N6bjOjP6|Nr4K{;4M@Hi}k-RZWDZdc+xoMhdGg z5@Hf(gQ67Yh%JQ1gysemrPwBRfDRPf#d(B=N-9jR*a?b~X8(PjppET|MWu$jT~GE7 z;Kltu@ls{ht{}8vFU*&VSBO`FFw;(imIy8WW52Kd@5M<~zc1iWXVty7VO=XiDKgdX z6Ct#t`hB!>pSV`MLA;UBE`)X^wEmBU$WEmHw!bIdqL61Jq1^_BdXu;n{5|n@u}AC` z`^3%S7DBrd+Jn%Zg!Uq|H=&1ZMTf=hn!hLRl6Mo@M|1ZG?R!457jdBMjtKs*-Mzo! zooXsjvBktagdRR%i-~{77Sn({raFz{1IdPx(ytrR{K|CP7 zC>|uVAEEsT9YE+nLXRMH5TSz!9YW|(LWdDLoX`=3jwEyxp+VwC4q^oUHyECO+f`IO zP7zEr`1o)6edCHPXq%WKK#%7 zf8vj7NB;)@PXsFhQ2zJ$f8uW%TK@*hgvIw0@=rls76FLKa51-hj?t8)EgGtSu`7O;e zmHUq1EQVmQy>UAmo4>ceK^>dqB zz|-)u2cX3GU`Jmm6m?#Yu;bp?0X1GG&#iB4>s+W-Xaw`MX?|CeiW3yoXsmBBK+WLx zZaDXus{T5wt+Q*~!sNudL`&5)sQj1%wM<~mGn!&-B`T#j$pX9PQatm#WP9-z+6aiBgi3Oz2!f7ZJLI&}9yr=2C{bk4tC$4-lZl zDz!=Ngsvj=7(!R~NgYzB)J5nTLbnonnqp7I!*M3Z5<~svh#(4F(>+(IF|A2*jdi9H zvjv$^E?IH>q(5k^o%wQnRjZVrRIL+fG1a_9S|Tl#mP!ATE+KR+p(hi%j?j&So-ttf zOUtE|3hI|iE2PT^J(kcwm+^hl<m4u!^=!t}$q@W&g0Ui#RLPhJg4%mZ-K+qpI z%z;p8jTP#yDfekX?ejlwt@WWs{zJ2PjZckKP&lT7F0SmZmu?zrOzWhZ6?RM^^i-7{ zp;;O{YD~~rHCke0=O(FdsP8vRTcoXo28pjHbOR*RW$85l)v14g%r5DkA%L;3O7}@{ zTDgbN;J8`k=>9>e1x=&}+2NILxV}L>rwRAUB1|(ZmzMt5?vuS!$Ghr%{rtniM;R?i z{depMqU7Z4GO$h1f2SVY?ULOE`vwi520LX8I-Q7d2;we2XivZ4KwjtST8VSEABs$(UmY_ULPJuPajxum#kFvGW zn>upH=jx^m1j4LMTEReT$1545Yn6J2GNO3O4Q><+r3{n_E+EUNO5q;g$y5W}kT#F% zgxh*Afh)(ZrPjmEUAIxUQ+;qr*EYDR_a5pYxRYu>+#K~f+{k;H`jGkWY8T2rBcydahK#bJT1O%0_8a)3r#kHU6ZfQmJ2Uc|qK2aT*5JqVBIrN2H@LuN2t5(h((FLSNg~RKF;wzAMO-YB2^?mFv%F zy7f4?kCZdWi*~n)bdqY`f!AX<-oR~^-sQGRr=<6#)6xe}VjSZ1W0j+%G@NJtj?kTi z?k4mCLN5XpJa|4+I-{-39d&MKmhH5mdeF?E%b7vwtW=Bl?NdG$+H(*6V+&8H*X3 zO=nO;JO;Z~_VoW!qd!#t_`e*wbv!{TeWwAP|9=DOc#>E8Sp&N8|Aj+c(m4&8#sB34 zsY7U7C+tLzRTIoqr8}GofeX|Vs8lKwE>F(XmFa4Ab#Pts9Nk=9o30D4OJ1Z~0@ouy ztlI|%436tg=uYb1g3FNKgNu;AfeVm-(EX(QMfa=j98bYT$bq~8vX5oRg?yhs2iFh# z!d1f&kSjA%FhlA|AzUt8D@=t8g)f1v{!4|+;6mXmg{$F8;p>DoaH;TiVTZ5_t`fdS zxDPH9-UHVOKO(>`9$X`QM)*OD5L4jt-);zGt`oP2+r)<N*=^>|=oz6K2IA=RoIX5`BId?dBIWKTt#F0L-_E}kyl zE}<@AF5xbbE>SL-E@dv2E@ND3UBnh|8reD_yQ|xyogo z%LbQ?E}L9>T>4xdaCzG0WtUf6j=CIkIqq`8<)q8UE@xambNRyME0=FvzH|A()y;L3 zYrgAr*EZMdT-UhX=6Z+gPS-nK?{>Y{^?uhUT%U4%+Vxr2eXjdm54e7(chXz*v-DT$ zZ`Swdx9Yd+cj$NNpU@xEzpejN|Be19H{`~+ac;a@fLpv3+5QD);N$A8>!d{dxCq+<){4@ksHQ;?eA})ZABnU0nZ0LpY?p+^99d?o`*aSd!F!o*YlL;Y0nQm zKlc3I^B2!wJa*QvhtGpP`+WBM9Pl~lbI9kg&k>(ject!^z~>{M zPkcW0`P}DApRaws9Zn5*8Xh@3ZTR@%-NVW7yM{kH{Mq6AhVLJKVEDn|$A%vteq#8^ z;cpFpXZSC^!M<_6<9(<5&i0+>yVCax->ZDD@x9h}weQouFZv$webx6h-`9QL@cqd5 z6W>pLKllC8_gCL@ev}{fWBlCwJp8=;hWSPNnfx;SO8v(AjrW`AH`(tczt{Xe^ZVLg z=O5%>>_5(bn*VJ77XMcNcK=2Gm-w&nU**5r|9bx${CD|3?Ei%SQ~po;Kkxs7|BL=F z`JW7+1NZ>10N()rfWUyzfbf9Gfam~oKypBSKv_UVKvh6>z{G&b0aF9&0_p>12h0s< z3z!%1uYgqn*9EKzSQ~I-z`B6-0k;I~2-p>HSHL|1_XX?@*c0$jz#{<%15N~-3OF6` zVZg@$X9B(r_&(srfS&`-2K*Mt1$qQV1&$1i35*Sl4>Sd)1r`Jr1(pPs1y%%B1y%>v z1=a^P23i9b1TG3(8F)qDRe{$8t_{2~us3jX;MTzHf%gYK75H4>^MNk}9tu1hcqH)E zz|TkE5#|x2N0g4J7*RE%X2jSL<3}`%xO~J7BW@aT^N0;WV}lxknu2Bo%?g?q)D<*8 zXkpNrpxc7B1Z@ktBWP#PeL=f}_5?i?^hnS%LHmOC2OS7H9`s?*$3bU;J`4IH=&PV_ zg1!r;gV|tRun;T-I|sW4y9Ij$2L(q5j|w&f#|0aMQ-jlkM+avG=LF{kmj{mzo*vvC zydZc{@RHzV!IuPI5qw?nn&7p;HwLc@-Wr4t_NF@!$i&2ZIj<9}Yeh z{Aut{!M_Cm8hkFq9FiWA8Im268!|a$R>+)?xgqT#9U)yIBxFU%%8)BVt`1ohvLU1= zq%UMk$hMHXLhcET2M}-aew8H-)Va>kZoywmob|*qvc_hdmVbbl6K_AB24q zb~fx>I0|RNb>aGO_i)efVd2BW{lZhi$AvEnzdrny@QvZOh3^c%EBxN@-Qjz}9|}Jh zej@zM@VCR?3qKwHVfdHf--Z7e{!93;5kiDZgg(MOVpxQ4L_oxdh^Po-#OR3Ji2R7c zh_Z;vi0X*ih-ncsBf28GBj!gejJPb~iioQtu8mj|u{L5`#61xYL_8GnXvE_Y2O?gM zcqQU!#Oo0!Bi@d9H{wjhw~x#FB3&ZgB0VF$BcmdXkvWm$Bj-h46M0?a^^rG5 z-W+*vDIfMWsZgM`cFkMCC<|iK>Yj z8#O+vDQZU4tf<*h3!)ZBEsgqD)at19QCp+7N9~B(74=-y{-^^{FGal^^?KA>QSU~* zAN4`hxo8y4MC+o3X!mHZXrE}`XmfNzbaHfB^yuiC=yA~#qbEmCjjoHH72O# zkw1+*JM!EpG>RGJHEP%>-%$ahf<}doiWn6=DrQvdsQgh4quNHT9JO`SiBX@%a4{Y+ z5i!v*F)?v5rkI47agW43 z7WZV_ckw8mj%VZf_>B0H__Fwl_%ZP-ue=z<~{QL1g z7%3xdWR09rFgh8tjTOcQW0!G(ak24IjN6TO8}}HWG`?s&Y<$!Bf$^M) zH3ga=H^-D`Dm0at%1xD~Ii@bt0@GsCQqvmK4W^q+>r5L=x0-gC?lj$Fdf4=s=}FT; z)61qKremhpO>dZfF#T@EX4b4T`&E5K>Nqds^ zCcTvOQL;<&u;hs3xa7p-l;rf}%;fCkvgGl}4asfE?aA|!JCo()E0eEDzApLtbTVLsS{IYq_(AY zq;{t+OkI+?BK7jrt5R2`u1>u^^{&*XQ$J2aX)bAQX`X4r(tOkW(~{Hj(<;)&q}8U4 zPn(q1m^LG=IjtqFEp1-f(zGkmdedG=dp+&Fw2#w1P5UD4>$Gpv&ZP_Kp6S8qA?cy% z;pwLIg!JU}wDi&GS?T5JmFZ*BYt#3nKa+kS{iXE7=||JwNPjE+-Sqd^(Uf7$n3-`&#x)t&Wn7x;}CBHZ&t!g{rO)!n^3EEb<)1YoD9BXaqvx{>fGkIKbU2#isckzPaMa4^s zmldxpzOwk5;%kdn7hhj|OY!F7dy5|_e!Tdp;%AEY6~A13r1)6z@!}K3CyRe52`Cv= zQd2Ueq^V?H$>Ne_C34B7B`Zs=E4jYp#*%d<>q~Aa*<5mG$s;AtlRCFh)VI{XbVO-z>Bv$`X+~*DX-(<4(ut*0 zO6y8zmCh+`Ep0FDDD5h}u5?f7v!$PveqVa7Oe*s%^Dgr#^DXl)3onZ*8&zf~iz_ph zrIzKERh3OFn^IO+)=*|GYb~2s)>SsYY+>2rvP;WWm#r_`ShlIGw`@z z_HfywWv`X}RxXvB%hSsX$}7vKlv~SZmCq?}EuUAuxO`c;T)w>gvhvHzd&^%aKVJTO z1z+J-;ad?|5no}hNUTVyNUzARD5@x}D6gohsIHh?(Nxh|v7}-}#pM-ORjjI5U9rAm zW5uS5o{G&CTPyCac&uVy#nFn_D^6CtRdK4~gNlzU&Q$zZ@pHx5igT5-D;HG$t5U99 zUb&+3>dIA>t1H)5-dMS*a(m?il}}VYRrz$~vz7ZQU#>h-d93ny<%!CZm8UDes61PF zt_oE#Rk|vn%Dc*^%C{<@>XNE!s@7KBShcQdebwz%y;WPPwpZ<_+FkW{)q$#)st#8j zt$MBM^{Nl5KC1ep>a#JmW9rAWj+r;6Ys`W%i^nV*Bac}%X7!l0V{RI=e$2)(o5u8v z**)ganD@qfKIUw-P#s-usy0_AROeLZR~J>6R##M4RX0@6scxxmt6o^Wta@ej<<(bK z-&DP>`sV5l)!VAKSKm>+v-+Xxz17cFKVN;I`lagEs!vqES^ZA+sp`|!Usr!y{eAUM zH4QawHS=mZYv$LStogX+OwDICU)GMPomM-&wxQNqd!Y7s?Wx)iYCo?1wD$k2+U}pC zI1d1hBT|!8G#ZTt9V`tE@2KD#h%br7h+;>J-oD@7-M;VM-rckN>~3z4JEJjCF(}Fm z<6DShq9#}(BMng$mDp$wQBxX2NwJ^=qp1!lG=>NP+nM&4{vDt1w{K(r#-BGnal|@) z;dt6H-Z85(QW8H^ay$s{Qy0IeuPcOlCW$n7h8bkVN0=>vEO1Vv9;I+Ou&NJ7VHT2Ar{5D zuzqY5ACFJOC*xD`>G%vh5zoN0@wxasd?B8XFTt1Le*6F)#RrL0Vm+Y}HW4OXC*C05 zBDNEUh@(UeQA^Yjr-%#0pNK0&3vq*JBW@DyL@zN&&Ln?B=8y}?d~yl-3Ry_5B3F|o zq(}l1k`@^x%gA!Ff~+K~$YCmunoPYw&7@{gzoyctOlmfjL(QWKC^w~3yQzKDL8_WM zOx042R1ZQJ=?mH(sGn~J7zUJKLY;s<9-giE5_Bs2V zKR5@SL(UO8h8|0gqo1MU>1XNZ=;!Gd=oxe}olVcBJ+wlH>8*4*T}AJwo9Pz%8vP^v z#1-pGbLF_^yPPh;CA;>z4!Wvc7hO?Tt82hD>>72?a;Lg8+$C<(O}nez$K5sVc6YbC z$Ftm1ieO7<{& zl>LA`!Pc?$Yy*3m{fup4ud!dSH`%|ke`9a4ci91M3>U{e#r=|-z)j+&aMQS#xHK-4 zo6Y5L^SOmwK3BjYoW_-NXSuJqQ9glB;ZylEK7(Jx=kfV`0bj(g=GX9Rc?Xa2B=6(_ zAK^Fguk%~@-FyYVhp*%h@$d3S`1kpb`P2Ma{yg6-yeMP}dBSpGg|Jd664nVNfXXOFFUh&`B6+dAR9+#kl#ApwvP+ia|BNy+khjQh%G>3g@-F#b^3TdM$|Plq zGEGTPl9Xg6MM+mOmGugvY*Mx>JC$8Zh4PM4qtq&OO1;vcoKemxQRS*~UHL+3Q@&K% zl@4XZo8W!fD|okgYrPHLGv0IF^WH1o7H_|INKI6e)MPb9O;@wjIcl!DK+RJN)Me@` zYN5JHU8DX^U8iCysg|o%>VCCZZBehOKdMiBvA#54j&Hut=@WdiZ?Es5uiAIf7xlIJ z27JT5QU5G|sz1YD;wSyIzuJG?U*m80cl&z+%L7G$;y_uTGEfz04|E55KoZCXbHO~Y z5afdb;08Vb00b7WK`AH$hroxR5j25|;1akDqM#Mr0BxWL+y(c*ciWq5hW8+gJYP1?Rj5edg=rp>FJH|I=yt&vE%z$Z`JIpHc9rLjHo_Wly zHS5fJv%x%VHk+5ssQHz7%j`CL%)918^Lul^d}Iz`>Ne$x7**@59}Z8LHn^i9EuAigl2{kLrJ0JP)aC0logs2$_*_DEeaKeUJVt6 zic3$IepY&=G+Npkjt?hh>iWP OddA27pMJ(f_WT=Ibu?B0 diff --git a/integrations/apple/example_app/Example_OSX_App/Base.lproj/Main.storyboard b/integrations/apple/example_app/Example_OSX_App/Base.lproj/Main.storyboard index 2e8d50d..0a00bd1 100644 --- a/integrations/apple/example_app/Example_OSX_App/Base.lproj/Main.storyboard +++ b/integrations/apple/example_app/Example_OSX_App/Base.lproj/Main.storyboard @@ -685,6 +685,9 @@ + + + @@ -729,6 +735,9 @@ + + + @@ -786,6 +801,9 @@ + + + @@ -841,6 +859,9 @@ + + + @@ -917,6 +938,23 @@ + + + + + + + + + + + + + + + + + diff --git a/integrations/apple/example_app/Example_OSX_App/Example_OSX_App-Bridging-Header.h b/integrations/apple/example_app/Example_OSX_App/Example_OSX_App-Bridging-Header.h index 811b2ff..d2012ca 100644 --- a/integrations/apple/example_app/Example_OSX_App/Example_OSX_App-Bridging-Header.h +++ b/integrations/apple/example_app/Example_OSX_App/Example_OSX_App-Bridging-Header.h @@ -6,8 +6,8 @@ #define Example_OSX_Bridging_Header_h int start_intercept(); -int start_service(const char * path); -int join_network(const char * nwid); +void start_service(const char * path); +void join_network(const char * nwid); void disable_intercept(); void enable_intercept(); diff --git a/integrations/apple/example_app/Example_OSX_App/ViewController.swift b/integrations/apple/example_app/Example_OSX_App/ViewController.swift index 54fa09b..723aeb5 100644 --- a/integrations/apple/example_app/Example_OSX_App/ViewController.swift +++ b/integrations/apple/example_app/Example_OSX_App/ViewController.swift @@ -10,6 +10,44 @@ import Cocoa class ViewController: NSViewController { + @IBOutlet weak var btnJoinNetwork: NSButton! + @IBOutlet weak var btnLeaveNetwork: NSButton! + @IBOutlet weak var txtNWID: NSTextField! + @IBOutlet weak var segmentAPISelector: NSSegmentedCell! + @IBOutlet weak var segmentProtocolSelector: NSSegmentedCell! + @IBOutlet weak var txtAddr: NSTextField! + @IBOutlet weak var txtPort: NSTextField! + @IBOutlet weak var btnConnect: NSButton! + @IBOutlet weak var btnBind: NSButton! + @IBOutlet weak var txtTX: NSScrollView! + @IBOutlet weak var txtRX: NSScrollView! + @IBOutlet weak var btnSend: NSButton! + + + @IBAction func UI_JoinNetwork(sender: AnyObject) { + zt_join_network(txtNWID.stringValue); + } + + @IBAction func UI_LeaveNetwork(sender: AnyObject) { + zt_leave_network(txtNWID.stringValue); + } + + @IBAction func UI_SelectAPI(sender: AnyObject) { + } + + @IBAction func UI_SelectProtocol(sender: AnyObject) { + } + + @IBAction func UI_Connect(sender: AnyObject) { + } + + @IBAction func UI_Bind(sender: AnyObject) { + } + + @IBAction func UI_SendData(sender: AnyObject) { + } + + var service_thread : NSThread! func ztnc_start_service() { diff --git a/src/SDK_LWIPStack.hpp b/src/SDK_LWIPStack.hpp index e0bd4be..1672586 100644 --- a/src/SDK_LWIPStack.hpp +++ b/src/SDK_LWIPStack.hpp @@ -180,12 +180,12 @@ namespace ZeroTier { #define __STATIC_LWIP__ // iOS Simulator or iOS device // Do nothing, symbols are statically-linked - #elif TARGET_OS_MAC + #elif TARGET_OS_MAC && !defined(SDK_BUNDLED) #define __DYNAMIC_LWIP__ // Dynamically load liblwip.so _libref = dlopen(path, RTLD_NOW); #else - error "Unknown Apple platform" + #define __STATIC_LWIP__ #endif #endif diff --git a/src/SDK_XcodeWrapper.cpp b/src/SDK_XcodeWrapper.cpp index 7603f90..9b06bfd 100755 --- a/src/SDK_XcodeWrapper.cpp +++ b/src/SDK_XcodeWrapper.cpp @@ -16,25 +16,23 @@ #include "SDK_ServiceSetup.hpp" -// Starts a service at the specified path -extern "C" int start_service(const char * path) { +// Starts a ZeroTier service at the specified path +extern "C" void start_service(const char * path) { init_service(INTERCEPT_DISABLED, path); - return 1; } -// Joins a network +// Joins a ZeroTier virtual network extern "C" void zt_join_network(const char * nwid){ - join_network(nwid); // Instruct ZeroTier service to join network - // zt_init_rpc(nwid); // Tells the RPC code where to contact the ZeroTier service + join_network(nwid); } -// Leaves a network +// Leaves a ZeroTier virtual network extern "C" void zt_leave_network(const char * nwid){ leave_network(nwid); } // Explicit ZT API wrappers -extern "C" int zts_socket(SOCKET_SIG) { +extern "C" int zt_socket(SOCKET_SIG) { return zt_socket(socket_family, socket_type, protocol); } extern "C" int zts_connect(CONNECT_SIG) {