RSRC LVINLBVW p!P<@1Y3{I0LȠ:C jE٬aُ B~0ُ B~хv/kM;zLLVINSerial Control 3.viPOLYVISA Configure Serial PortPTH07Instr _visa.llbVISA Configure Serial Port{'t LVIN%VISA Configure Serial Port (Instr).viPTH0BInstr _visa.llb%VISA Configure Serial Port (Instr).vi @pInstrVISA resource name@timeout (10sec)(@"termination char (0xA = '\n' = LF) @!Enable Termination Char (T)$@pInstrVISA resource name out@baud rate (9600)@ data bits (8)0@NoneOddEvenMarkSpaceparity (0:none) @!status @code@0source @P error in (no error)@stop bits (10: 1 bit)@flow control (0:none)@P error outL    LVINSimple Error Handler.viPTH06Utility error.llbSimple Error Handler.vi @!error?@code out@error code (no error:0)@0error source (" ")@0 source out @!status @code@0source@P error out@0message9DialogType.ctl!@type of dialog (OK msg:1) @Perror in (no error)4      @pInstrVISA resource name@ baud rate@ data bits @parity@ stop bits@ flow control8   cx d0` P c,@flg@oRt@eof@Pudf @!stop 2@!dfd@!txd@!old@!extP  c/ @!downP   @!rightP   @!leftP  @!upP   @!closeP   @!stopP   c+@ flow control@dfd@txd@old@extP  !" P$$$ @& @$ P'( c@ stop bitsP + !" @parityP - !"@ data bitsP / !"@ baud rate@dfd@txd@old@extP 12345 P&&& c @pInstrVISA resource name@pInstrdfd@pInstrtxd@pInstrold@pInstrextP 9:;<=0P ? @@P PAB@0 write bufferPEEF @G @?PHIB$@pInstrVISA resource name out@timeout (10sec) @!Enable Termination Char (T) ct c c8 d1(eventsource.ctl@Sourcelveventtype.ctl@;NullTimeoutApp Instance CloseApp Instance Close? Cell Edit Cell Edit? Cursor Grab Cursor Grab? Cursor MoveCursor Release Data ChangeDirection ChangeDisplay State Change Drag Ended Drag Enter Drag Leave Drag OverDrag Source Update Drag StartingDrag Starting?DropExec State ChangeKey Down Key Down? Key Repeat Key Repeat?Key UpListbox Double ClickMenu Activation?Menu Selection (App)Menu Selection? (App)Menu Selection (User) Mouse Down Mouse Down? Mouse Enter Mouse Leave Mouse MoveMouse UpNI Security User Change (App) Pane Size Panel Close Panel Close? Panel ResizePlot Attribute ChangeScale Range ChangeShortcut Menu Activation?Shortcut Menu Selection (App)Shortcut Menu Selection? (App)Shortcut Menu Selection (User)Tree Double Click Tree Drag Tree Drag? Tree Drop Tree Drop?Tree Item CloseTree Item Close?Tree Item OpenTree Item Open? Value ChangeType @Time!@pVCtlRef@ Horizontal@Vertical3LVPoint32TypeDef.ctl@PXYCoords @Button@! Double Click@!Menu Key@P\]Mods @!Shift @!Ctrl@!Alt@!Cmd@!Opt@P_`abcPlatMods"@PSTUWZ[^d Event Data@ return count@code out @!error?@error code (no error:0)@0error source (" ")9DialogType.ctl!@type of dialog (OK msg:1) c@0message @!status @code@0source@Popq error out@0 source out @Popqerror in (no error)(@"termination char (0xA = '\n' = LF)0@NoneOddEvenMarkSpaceparity (0:none)@PSTU Event Data+-/9 $@pEvent Registration Refnum c cl c cp c c  c0 c@`>PFF d d  dX#%0) *,%0) *.%0) *0%0*6708>C!&0D D D D D J &8K8L0M80NOPQ0ReOfeOfeOfeOfghiOjklmnrOseOftum9iviimwxyz{|VO}~itrmK19/-+&STWZ^d000i_ZxT9hUA䫉B%*.Q2`c#*XZ(6 Q ې"E ,B`"μΙ圙93w!j4(ю%v~B5';pEDgyBMSl?dn[B`kގ$p iXTd0:ЭlОtLYoRC~dz{,8:ù㠞(86Ùms֨\U\9€1.d2п1_pR^*}XW8Eq>!j~jJ޲T Q[5&S(+Tv [Z> ʈbvwYOav -NAr*6[ R+7zU~ͤ}MXϬնwWYm;ic«9포v jVtBïfYm'io!﷬v[Ҳ_#6\YF\pKyJ"tC&&Fz3Eja4$MR4mM/Yb22JyQӫdߤ&I8N /12 _M2ձ gG(;Dk. L 6@,+n"FY!OQcIp.0%J/ՒQ̒ 29/4ͣ< BHjn0KFt 6faB,(-#혽:vd]i[f+Ō'ɲ%KWHn>i'QԝtSLd6$lTLOqG ^ehydWr~;u$YraM5Հ!P -GZOM6~KO''|nضk߾]j;p[YxAhQۗz Ӎ^0׋<јωMbU}T.7^z=ly1*$g9<ى;TZ3m°.xH Sh!\f;|=raQ 3K%:8p [i"lgAf"zkrPA6%TDoHQH&3 ^)NYRl1L{W6f>wܝ thMsg0Յ9gv&> jsy&UOp?0UeRūYٰLs *ܪ1_ |uz&ٳBgRԢeR_i4~X-d0ob&9&3 2p¤CbsLP4dx$l ߞ$$Ka4LZS&m{g=3&'f,/lHjИ/Sļ.=23i䘴[ˤ0iZ&eWˤt$/$/ǤVII1U$8LA2I*eZ ˔aE٧1s%1oLϤ^IOg1鸖IOäj'-zL?1d&rL嘴Gf>)&2w&? 0Waһ&aRo&2iV&X8&-5ѳΌI LRN22]T Ps@c >"LYI9bqL1I2DZ&ht`b&L41̤J&ŤZ&ä$&(Lz0#I#i4I#L@;lR1+83&eN$Tƾ͌w<'O4|P7n @mDB2gv]|38oSPe ݉2BaX(`U5N> gXQFRp &ZnltpF:' Rm0g@oSjt38l#g+8l#U,Ѥ*­*ebqp%FFUbZ>q4ݡ2qwo>0Md>d e]*0p7.P3|UDkr$6P/5p{DJF'8 kـ|!3'm:^6xD尘ea`s)hP[z8vO$䵜/GH,\_{Gy4M䅌(.BbVl<>,= =ciKbFRވV^} F n^ r|3x& r%1T bL0)nYkVKM~y#Vd6od|d 2f{2߬"rg":i;ĤffD -CS˵<#7!rCNeH})E2q3\N$%v|iM;='y`\zw艝"}'kz/"} DWFLe_ƈKFѿh(|&c/\G߇K3,7}9˥u.y%+\KbbJ,5H~<"ُ<Lbar)FOGH?gXqjGF=J J%)D{hOQm 2ȏBՃ7Il0,[^"E>&yl'3!i!;ނ]nnG_Çc3"K.䒬RX|5?ZXTZ(3^S2R%],T2|2;2ߠpAU?Oq!oԲMXdž#E % XT$!)l/Dku(mf"U?/ Ĕckx 3Amk3,wLZk7>z\?'gɡqxxƫȥ\ﷹ4JmV +WG5x6kxױ4k-4ުB귭]H͵x;Tƻu|WL^*Jh<{4^A=TJʨ45BraچA2ȇA $/uX˅e+jWWTT`jwuSOSNF,}9k/]]Wtb +Z~`YdSqGٿ9uY15cu#uu՝ Yl_]tbj+WX.Y܅^/F  8.2 P@ baud rate @pInstrVISA resource name@ data bits @parity@ stop bits@ flow control @!stop @!close@!up @!left @!right @!down @!stop 2 P   P p The Basic Serial Read and Write example performs a Serial Port Read, a Serial Port Write, or a combination of these actions. The user selects the actions (read or write) on the front panel. If both are selected, the VI will write the data first, read data, and then close the VISA session that is opened to the port. This VI will wait until the specified number of bytes is received at the port. Only the number of bytes specified will be read. INSTRUCTIONS: 1) Select the serial resource and configuration parameters (baud rate, data bits, parity, stop bits, flow control). 2) Select the operations to be performed. 3) Connect the serial port to your device. If no device is available, perform a loopback test by doing one of the following. Short pins 2 and 3 on a RS-232 cable or short pin 4 to pin 8 and pin 5 to pin 9 on a RS-485/422 cable. 4) Run the VI to see the data read. (The "read string" will match the "string to write" if a loopback test was performed.) Note: The parameters set for the serial port must match the parameters of the connected instrument or device. In this example, the bytes to read parameter specifies the number of bytes that the serial port reads. If there were more bytes at the port than the number specified in bytes to read, those bytes would not be read. Also, if you specify to read more bytes than the number of bytes actually read, you might receive a timeout error message. On the block diagram, the Configure Serial Port VI sets the configuration parameters. The front panel displays the controls used to configure the basic parameters, such as baud rate, data bits, and parity. Constants configure the other parameters the user probably does not need set. After the VISA Configure Serial Port VI opens the VISA session and configures the port, the VI passes the VISA resource name to other VIs that perform operations on that VISA resource. The VISA Write function sends a command to the serial device and the VISA Read function returns data based on the command. The VISA Close function then closes the reference to the serial device. It is important to close the reference; otherwise communication through with that port through protocols other than VISA might not be possible.@gNPrPPwNPp ?* E @!stop 2@0 write buffer 7 @!Enable Termination Char (T) @pInstrVISA resource name @!down @!status @code@0source@P error out @!right @!left @!close$@pInstrVISA resource name out@0write buffer ("") @Perror in (no error)@ return count@ stop bits@flow control (0:none)@stop bits (10: 1 bit) @parity0@NoneOddEvenMarkSpaceparity (0:none)@timeout (10sec)(eventsource.ctl@Source@ data bits (8)@baud rate (9600)@ flow controllveventtype.ctl@;NullTimeoutApp Instance CloseApp Instance Close? Cell Edit Cell Edit? Cursor Grab Cursor Grab? Cursor MoveCursor Release Data ChangeDirection ChangeDisplay State Change Drag Ended Drag Enter Drag Leave Drag OverDrag Source Update Drag StartingDrag Starting?DropExec State ChangeKey Down Key Down? Key Repeat Key Repeat?Key UpListbox Double ClickMenu Activation?Menu Selection (App)Menu Selection? (App)Menu Selection (User) Mouse Down Mouse Down? Mouse Enter Mouse Leave Mouse MoveMouse UpNI Security User Change (App) Pane Size Panel Close Panel Close? Panel ResizePlot Attribute ChangeScale Range ChangeShortcut Menu Activation?Shortcut Menu Selection (App)Shortcut Menu Selection? (App)Shortcut Menu Selection (User)Tree Double Click Tree Drag Tree Drag? Tree Drop Tree Drop?Tree Item CloseTree Item Close?Tree Item OpenTree Item Open? Value ChangeType @Time!@pCtlRef@ Horizontal@Vertical3LVPoint32TypeDef.ctl@P !Coords @Button@! Double Click@!Menu Key@P$%Mods @!Shift @!Ctrl@!Alt@!Cmd@!Opt@P'()*+PlatMods"@P"#&, Event Data@ data bits9DialogType.ctl!@type of dialog (OK msg:1)@0message@0 source out@0error source (" ") @!Enable Termination Char (T)(@"termination char (0xA = '\n' = LF)@ baud rate{'t L43       P67@error code (no error:0)@code out @!error?4 ;: 921 0/  0 P=> 7 @!stop@!up$@pEvent Registration Refnum@P Event Data       -../0 1234-589 :;<5 -? @AA > -  BB CC>D->> ,"FPHPSerial Control 3.viRDhistop 2P$KbKb STOPPDhidownS$ REVERSEQDQQrightQ$K>brK?br RIGHTPDleftP$KbKb LEFTNDehtweitwupS$ FORWARDQD closeZ$77CLOSE COM PORTPDstop]$'' TERMINATE SESSIONXD.=.= flow controlHCRCPHCRCRUD stop bitsH,;,9H%%RDparityHHUD data bitsHUD baud rateH^DRaRaVISA resource nameHm| m| D/(```This VI is used for remote control of a robot using a Bluetooth module with serial port profile.Pt1t1PanezE(7(7 [5] "down": Mouse Up XD K J write bufferHDAJCIXDFE write bufferHD<E>DXD LK write bufferHDBKDJXD K J write bufferHDAJCIXD J I write bufferHD@IBHSE`o$`o$ False bDs5s4VISA resource name outHD(!'fD{}VISA Configure Serial PortcDSimple Error Handler.viHDHD)) HD HD[Dix ix timeout (10sec)HD{{gDKZIKiIEnable Termination Char (T)HD))HD=L=LHD&&5>&'5>HD||HDHDHD55HD / /HDHD(7(7! classString!0?*::(INSTR|SOCKET) displayFilter! typeClass!0Instr! classString!0?*::(INSTR|SOCKET) displayFilter! typeClass!0Instr (x{l[Ͻvku6 mWWi4 vhB_&#mGllҡ!!mcHS1:M44( 6m G`{s7vS߹vzm h=~ oaX5z8AgMgRBsGͭPl0^S}`KYo-3շ1YSg-jZUJ{+_-_ _jR~&>C(*O0ϰz7{J%^R2EΓr%.I&qRΒ';A[vm" QWP~Nxm!9{<3zF9XPdCԺ'6`2]YL$1bK=C,UOYaW<O5] [=-OFpASVivPr=Bh8G2qPO}Cpv9eW>5UX[ܚ.ipv,߮uSyS`tVci| w a7h:RuTŠ2!ý0F@Y&*C4D~P<\e|2àpοM&ΌM0\MWo9*e=%:W:Ct oe@ 5^f*-9JhY4r QΦr|i*G_ڪr|4_a1TVJ"oEv"DN\_%"aEvl"" U]6DUmCޠmsڮsλ-:.ƗEgtBZsTgjeU:͂Ѣ3zmu%scCP( 䆇n]MuT{- ԩSʋȭ^}VXދˊϊs+h.w=&V~)X^(EkǺAz wܡ@(?4XV:䂥+h(VeůC#KP\iXUߋTo!_/Pu#zTkt"j֣y4_BlbwnO+5زH07Ȗ[or*ɥd.53-sIK'eQb,9)'<1%h-zHLh[Ƚ ŔK)w 1Em<pݓx!&?-hZHYVŏ<^tV*`<&3cCdžm j#Pr|C } 6Zh#ʁgς(yx!C!8Q!JۂA`B0`*m ln UK% k2,W ki/բըƴT[АaWUF^G;e_F .a$CFIT\QFp2ÀErZOeX::"F I*΅cRxBLɤp+LQY%eO&RjaQm' '̤UUL-[f:dž6;6v|.ZL~3H3\d҈@@b!u"%y~s1C.I2J5.&!{Lpjps{XS>$yRLGR8..I|HWsQ1q~ ('d^e+%-hf+‚yeAK%y1$ILιT)N3#,N߭N#Luׁ]Y:tʣ:*ZsJQ|啴ngo >ytyn-$D44|9p|Mģې+ TlS55Sa [)l@uPQW")2qq+p2m;ZmmM(8m~Y~Qec[Y ؃}ڣCޯ76_gU+.Qp!_ .M˚J"kU\v.9bAҨ3iL}jl:k4f95.%.X )'b'Rs^OH՛Ǯ+2\7ؑYf "QIi3bsGEdSҦK֗DfgEd? _pvKyd~hE8 s\9i.,(1,4P%91!M!%xB ѵg*?prfb){X?gy{bBH<% Fۇ̵ś.n8b̘D<&>gxR'Pp@ereG`xDY)E@#i/n!*Wd4_=nی] i#bt:aOLzOȸ0 oCIϽ8>`!> 8ph[z\]]zdiߠEL2%G>fW&%mv(OM}eJҾfC,!35J1 STd ɒ-Kdϒ3ivuz"O?TϜA'!%q {BQ85ԝQc.֓C 6?wP)S9X99} /A_Pb: vo}M/tlOV_Qnt\>`89?K~*12$`q !ʚ=` MII}?2[?0=NY29R":?)"Z䑲+|m^R2 ~j-x7jsL\QG3A`WNYy ]6fZ.vm%BDHPSerial Control 3.viIUVISimple Error Handler.viPTH06Utility error.llbSimple Error Handler.viPTH0IUVI%VISA Configure Serial Port (Instr).viPTH0BInstr _visa.llb%VISA Configure Serial Port (Instr).viPTH0PUPVVISA Configure Serial PortPTH07Instr _visa.llbVISA Configure Serial PortPTH0\Lx͜ |սϙnxeCXȌ Q(`^ *₼,|PTTZP{GQ ]Vmm0PE9 Yn|;3s,!]qm~8qN;"4\ד81 7$T~.1;:MKJԲFbvfw*q2szNJ'=ZTͅ{צH޶)Tk-ܵ>%riMƯzK7zNυ$݆Ih[OĮ#486 Ťڒҕ>AxfG(_aGx7SpvosM>mZ7y| T qm9|c.2B4߲1i1#п a%%hٿ; n_Csk5Un@cPxfy$ƾZrLŦEc ύkSX1\\h71 Lg~M̍4>jO'6@-ቿ'u)Fu$يVinvb{)Eg¡,ٮT?؈ŪUw|:x_0$YiϪ}8T\dӪA7z@KUNlBE\=A[ B;1AYB=H,kL95ڽwwʒݠҸdwG2䔶 J;K;UbmQl┷ ;zx .z9bM▁X,h^$h]9v4J,МMƺv~VzJ z#E9m~nI|AϒvJo?GxWZ-tw'm./_.?~[>/[5@'0$ȃa^&'6'k;~vYڀ3}yMQ|j$-b5]/gI0 <e񻏆*['"ϬY5ܪ=#>&s! 33fʬ ,a"W/َ٨)$>8tW*sqaQotR ?f06]$h)ixdΑ5Zo+N `~ IzlGYD糖b@# _ށpw)14R?^: )dúwڤ;2q*h@"V01!EgR ˅4j$]ETWcI.zhB!'4 Ǽef1oD!ݘBM`0t~yq^e" e&8S;H(qJ')R$in}*|TƐfoԲ)bxb%v1dv.Ф--@ktt! %F_#AqePbyPb <;(㪳cP (y}T(d %Ŗ}J>*C(t>v2%u tvYw.$pfZ98CB+(V C:KUm8Z Fڌ\&+،t9ٔXOM) e 93@/+gh$F5u^6Xpfwd:D(vTt-̡ΡCC%r1<⑋Nl\5㴟L. 5b2vaӴ2*#\JJ@%^^Lf9 }9g콁{W>rO2'Ģ'w*0-a2Z/ԒgdE&pE}_6ZG~ܲX,Eݧ5.̂,ĢY,,!.{Օ=vq:t'^pSc0EFW ;Tk<H>$A]kiUt !B]CHX_k%! $(G‚Ku KuHH8b6r n-<_ZKdc<*,=&!TD@._Y{ԇ anSAp6b}[V +>%,ۭz=uevOyaYaY KcaALzQX{IBRл Z֋V8vvJ$·5|9d$< ;)T HxDEc kR!avZ$}Hx0   ekgzH:k$ S vQr@!.Xv؏l N0V y_IHhtH͙0CB[M $ HHhpHGDg;;U$#" a 'aZF 2EQ0'#|䗷ygrQH1$ 0LB€e$2C+3AB9g@²LLE6n\R_7.n3Ci ]K./8`༴2ߧ Òjq#sq6g1#"^էGcӛݫft{TNOvpNC1Q90er#x\yxIKHBO8ƐI5]KRY#xNGq$G 1)_7iҬh̕_^}pNiWk=tu\{PK7-( C8o4c~(=''XǓ Y^yvQui)pp[,&g|zFzD$T>u@'Z-yKj䇴4CյXol?ڢe=hH`Ed0ܡw lw~$V#_bfwz>}kvf[6U e7--hVuvJތ)o.iۃ~Ǘp9'bIhڊt2yhzX@S'_#bK>H#U~Si=yw;;Rݬ_, ],f?jVN +NCMAH7~;} KowS0$_lӔ e+iPe5z34_F"jWyFj+xWWӵ@NHk"~)~B-:AiuL9,}ʱ3FPF9B'aIUs A^a Nu$;uH;kuir촹ͷgt6˞,=K}- B89BA&k:R%gnhG~F_T *K,t0w@)v.$k Ƶ6+堵 /Kһ(d<|hVJ5xt=:<2vzYZԑo2h-UuP<'ГL0xt=:<:/rs(mGј! ~TGp?M (nЋf%<N[̭svU#͸_fLtEjX) %Ց\ʬl:]@<uYѪ%SGr?'>Aeto#>i#ON9I b]IXV~Z.VafCa{ʼс&3Ng>Wi+YPK@ w T7Le_Q>2wЫ R*_i}R %z;Ui?%jb~!Tt@0|T.ST~WY;P;Ai 1[j3|50wTr\w0*ϺTXtOVT^;cq饌**$PS)RjOY)@J[)=R=m:sP=9QMw',LWdqg@0yKI:Gb=SNSO%jI.aqɉ-!ҼF_o@Nj.b(>;}A7GnE\;>;-/SZZq9ZZX&6AĂr }L,KWo@ pZ @B҅[([ pi-栅 VQ,Jڕ(-z;{X W-SNvCj1J5).=B~\G\>u.qmX>P%RǕȥ\8 of_RvA4O?^uvAy\. _KNnw-fLmtlˈ6[7O:aw“4wN &.?js2YTߧih5ҙL. o5+b3Lyj}o0oOo\HOiK m/N+A\ǓF+/Ҟ In[@ҲwÛGCӥt:4E}-y%5ޡZ!m m<zrvߍTKlnj+9{a{&wc {HB8Kmd -r2x$e`/|2~F>.7p&cnםC i΃! X>;=xۊ\r뤀l0x_=eO_6-sb>9DnChr䱓$KUo1Q.n1/zccfCG;{ )otg=Ţw (0T%LX2[itS&Ţg|A &d3+߫> Crr] 5~QY߬u],xIՙd+nj+ sRT*[], instrument control,serial Hardware Input and Output\Serial NI.LV.ExampleFinder!@0xml textb Basic Serial Write and Read.vi The Basic Serial Read and Write example performs a Serial Port Read, a Serial Port Write, or a combination of these actions. The user selects the actions (read or write) on the front panel. If both are selected, the VI will write the data first, read data, and then close the VISA session that is opened to the port. This VI will wait until the specified number of bytes is received at the port. Only the number of bytes specified will be read. INSTRUCTIONS: 1) Select the serial resource and configuration parameters (baud rate, data bits, parity, stop bits, flow control). 2) Select the operations to be performed. 3) Connect the serial port to your device. If no device is available, perform a loopback test by doing one of the following. Short pins 2 and 3 on a RS-232 cable or short pin 4 to pin 8 and pin 5 to pin 9 on a RS-485/422 cable. 4) Run the VI to see the data read. (The "read string" will match the "string to write" if a loopback test was performed.) Note: The parameters set for the serial port must match the parameters of the connected instrument or device. In this example, the bytes to read parameter specifies the number of bytes that the serial port reads. If there were more bytes at the port than the number specified in bytes to read, those bytes would not be read. Also, if you specify to read more bytes than the number of bytes actually read, you might receive a timeout error message. On the block diagram, the Configure Serial Port VI sets the configuration parameters. The front panel displays the controls used to configure the basic parameters, such as baud rate, data bits, and parity. Constants configure the other parameters the user probably does not need set. After the VISA Configure Serial Port VI opens the VISA session and configures the port, the VI passes the VISA resource name to other VIs that perform operations on that VISA resource. The VISA Write function sends a command to the serial device and the VISA Read function returns data based on the command. The VISA Close function then closes the reference to the serial device. It is important to close the reference; otherwise communication through with that port through protocols other than VISA might not be possible. communication instrument serial transmitters receivers visa control write read RS-485 RS-232 basic 3113 4290 LabVIEW LabVIEW LabVIEW AllSerial PCI-232 PCI-8430 PCI-8432 PXI-8420 PXI-8422 PXI-8430 PXI-8432 PCMCIA-232 AT-232 USB-232 ENET-232 PCI-485 PCI-8431 PCI-8433 PXI-8421 PXI-8423 PXI-8431 PXI-8433 PCMCIA-485 AT-485 USB-485 ENET-485 NI.LV.ALL.VILastSavedTarget!0DfltNI.LV.ALL.goodSyntaxTargets!0 @Dflt Localized!&@0Localization Status (string)Localize(@UUAn *>>*>>@?)#%'X?Segoe UISegoe UISegoe UI020RSRC LVINLBVW 4LVSR`BDPWtLIviCONPTM80DFDSLIdsVICDversDLDRFPTD(CPMpUFtUFP`hUF9UFrUGD`UG>UGl8UH4hUH0UH$8UI8oUI?UI:U J4L=U!J4@U"K8lU#KX7U$L1U%L`U&LuU'MX=U(Md>U)MyU*N 7U+NXT8U,NU-OL1U.OX,EU/O3U1P 1U2Px|U3PT,U4Q,>U5Qx=U6QĴ>U7Rl2U8RpTU9R?U:S(zU;St7U<S?U=T pU>TX>U?T>U@TAUAU