RSRC LVINLBVW($д ($Д`€@Ф@ , €џџџџјNn’“ЏмЄ^c/’œ јNж“ЏмЄ^c/’œ дŒйВщ€ ˜ьјB~врљiтяэkŸn]пzК7&LVINROBOLAB New in 2.9.4.vi№ааP9 cL P d-` cpP"@P@flg@oRt@eofudfP0џџџџRootFolderName p0џџџџdfd P0џџџџtxd P0џџџџold P0џџџџext8 P@€@€@€0џџџџ cЄP"@P@flg@oRt@eofudf$P@џџџџ0џџџџFileDataStructurep@џџџџ0џџџџdfdP@џџџџ0џџџџtxdP@џџџџ0џџџџoldP@џџџџ0џџџџext8 P@€@€@€0џџџџ cЖP"@P@flg@oRt@eofudf&P@џџџџџџџџ0џџџџMasterPathListp@џџџџџџџџ0џџџџdfdP@џџџџџџџџ0џџџџtxdP@џџџџџџџџ0џџџџoldP@џџџџџџџџ0џџџџextnP"@P@flg@oRt@eofudfP0џџџџ FileLaunched x0џџџџdfd P0џџџџtxd P0џџџџold P0џџџџexth!Wait until done`0џџџџname or relative path`0џџџџ Control Name`0џџџџ Control Name`0џџџџ Control Name`0џџџџname or relative path`milliseconds to waith!Front Panel Window:Open`!Wait until done c$ƒ@0џџџџ FileLaunched p@@P @!status @code@0џџџџsourceerror in (no error)@milliseconds to wait@!Wait until done@!Auto Dispose Ref@0џџџџ Control Name @SValue@0џџџџ Control Name @SValue@0џџџџ Control Name @SValue@2џџџџ appended path@2џџџџ appended path@2џџџџpathƒ@0џџџџRootFolderName(ƒ$@@џџџџ0џџџџFileDataStructure*ƒ&@@џџџџџџџџ0џџџџMasterPathList cH c c< c<"b@Set Control Value Variant c@ c< c@ c< c@ c< c@ c  c c c@ˆ d‚P``` d<']x†@ЦP>џџџџЪџџџџРМ"мќROBOLAB New in 2.9.43Bud1 IlocblobDataIlocblob!џџџџџџDataicgoblobImagesIlocblobТ!џџџџџџImagesicgoblobMoviesIlocblobZ!џџџџџџMoviesicgoblobProgramsIlocblob}џџџџџџProgramsfwi0blobicnvProgramsfwswlongžProgramsicgoblobTempIlocblobТ}џџџџџџTempicgoblobTextIlocblobZ}џџџџџџTextfwi0blobicnvTextfwswlongŸTexticgoblob  @€ @€ @€ @ E DSDB `€ @€ @€ @ы RSRC LVINLBVWуœo у|`€@A<Р€џџџџ™ЖяшЪмЎЈ$z< ™ЖяњЪмЎЈ$z< дŒйВщ€ ˜ьјB~ј№Ёjo_’{ і›Щѓ$LVIN Autorun.viLVINBuildRoboPage.viџџџџ&№ p @!change?‚@@џџџџj@ёТIntro Playing with Controllers and the NXT

April 24th, 2007

Chris, Chris, and Yves Table of Contents

#contents StartUpАStartUp NXT/SysQuake Communication

To start with, we played a little with the new connection between SySQuake and the NXT using direct Bluetooth Commands. We did this by the following code:

use legonxt;

try

fd=nxtopen('/dev/cu.legway-DevB-1');

catch

fd = 3072;

end

// play a cos wave to check connection

for t = 0:0.01:6*pi

nxtplaytone(fd, 740 - 200 * cos(t), 0.1);

end

//nxtclose(fd); // close connection

First load the driver file, then open the NXT - after setting it up in the System Preferences on the Mac, and then sending out a cosine wave of frequencies. Note that if you closed the NXT it would close the connection before the music was played.

Next we started to play with a little LEGO car.

Open loop responsemOpen loop response Open Loop

The first step is to measure the open loop response. We did this in robolab - although the goal is to some day have it all run out of SysQuake. Below is a simple code that have the car move forward while measuring the angle every 10 msec. You can run it by clicking here - and then click on the graph to add new data to it. doggy.jpg DefaultProgram 1.viDataSet001.txt SysQuakeЭSysQuake Read in data file

file=fopen(getfile)

while ~feof(file)

a(end+1,:)= fscanf(file,'%f %f')';

end

extract columns and subset

time=a(:,1)

pos=a(:,2)

time2 = time(time > 0.2);

pos2 = pos(time > 0.2);

linear fit

Phi=[ones(size(time2)),time2]

theta = (Phi' * Phi) \ (Phi' * pos2)

plot both line and curve (theta is y0,slope)

clf

plot(time',pos')

line([theta(2),-1],-theta(1),'r')

Find difference and fit exponential

difference=pos-time*theta(2)-theta(1)

difference(difference<0)=0

plot (time,difference)

plot (time(1:end/4)',log(difference(1:end/4))')

and do a fit

theta = (Phi' * Phi) \ (Phi' * log(difference(1:end/4)))

define tau (response) and alpha (gain)

tau=-1/theta2(2)

alpha=theta(2)

and plot

clf

plot(time',(alpha*time+theta(1)*(1-exp(-time/tau)))')

plot(time',pos','r')

FitPlot.jpgNonlinearPart.jpgTotalFit.jpgexpPlotjpg.jpg Close LoopQClose Loop Thus we have the model and all that remains is to implement a controller а which we did with the PID_ct.sq, which resides in the Contents of SysQuake. It has a front panel that looks like:

The second portion of the work was to have SysQuake and Robolab talk. As a temporary solution, we wrote a quick code that talks over TCP/IP - the code is below - you have to enter the correct IP address before running the program - and then SysQuake will send a number - that is Kp - and a new program is loaded into the NXT. Then you can grab the data and when SysQuake sends "data" these data will be sent back to SysQuake and plotted next to the simulation results.PID.jpgYves.vi џџџўџџџў‚#define PageTitle[TITLE,FONT]=TITLEFONT
TITLE is in font FONT
NOT WORKING YETџџџџўџџџўввв2Пџџџў: џџџў. џџџўчџџџўџџџў StandAlone Loading...џdєpxЈџф4№јЄ0,џр<џ$6084|Ž8ž<x<xLМDœHЌXю t^Œ(|Ž@ЄВА@ЈжPФ|ŽTв<x<x^VIDS Autorun.viVIDSUndo.vi4PTH0VIDS ShowPage.vi8PTH0VIDS ReadBook.vi0PTH0VIDSGetPathtoFile.vi,PTH0VIDSBuildRoboPage.vi(PTH0VIDS_RB2Globals.vi$PTH07„3АPOWX4D 3 code rщ 7p9 ™Ђw> 3b1H’"\8bP”!џР|dx|CxbkA}hІN€!€A8!@,@‚H”,@‚HЈ€a|iІ8`N€ ”!џР8‚@|cx<2`$єA|ІN€!€A8!@,@‚KџџР‰Ђ}­t}­ky@‚H0‰Ђ}­t}­kyA‚Kџџ@9 ™Ђ$9 ™Ђ9 ™Ђ::"Hšššš š9 ™ЂD9 ™ЂD‚"№ЉБ}­kyA‚H"t:@,џџ@‚HР‚"h€q|@‚HЌ> 3b1’"\8bP”!џР|dx~C“x<`ШPA|ІN€!€A8!@€a|iІ8`N€ > 3b1 ’"\8bP”!џР|dx€b8<`ШPA|ІN€!€A8!@€a|iІ8`N€ 9 ‰Тv}Юt|h@‚KџџЄ9 ™ЂH”!џР9|8р8Рџџ8 8€L€b <W`sœA|ІN€!€A8!@9 ™ЂH‚"№ЉБ }­kyA‚H!ˆ‚"L‚1‚Q,џџ@‚HР‚"h€q|@‚HЌ> 3b1@’"\8bP”!џР|dx~C“x<`ШPA|ІN€!€A8!@€a|iІ8`N€ > 3b1 ’"\8bP”!џР|dx€b8<`ШPA|ІN€!€A8!@€a|iІ8`N€ 9 ‰Тv}Юt|h@‚KџџЄ9 ™ЂL”!џР€‚8€bд<` МA|ІN€!€A8!@9 ™ЂL‚"№ЉБ}­kyA‚H Є:@,џџ@‚HР‚"h€q|@‚HЌ> 3b1X’"\8bP”!џР|dx~C“x<`ШPA|ІN€!€A8!@€a|iІ8`N€ > 3b1 ’"\8bP”!џР|dx€b8<`ШPA|ІN€!€A8!@€a|iІ8`N€ 9 ‰Тv}Юt|h@‚KџџЄ9 ™ЂP9 ‘ЂИЂ8‘ЂМ9 џџ‘ЂЬ9 ‘ЂР9 ‘ЂФЂ ‘Ђа> 3b1и’"\”!џР8Р8 8‚ |Cx<`=4A|ІN€!€A8!@,@‚Hь9 ‰Тv}Юt|hA‚H(”!џР€bЄ<a`œЬA|ІN€!€A8!@€a|iІ8`N€ |І”!џР<a`A|ІN€!€A8!@b :"P’"Ј‚М”!џР€ЂЈ~ƒx€b <a`ŽдA|ІN€!€A8!@bЄ= Gea­tV‘ЂДa}iІ8!@N€ |І”!џР€bЄ<a`”ˆA|ІN€!€A8!@”!џР€b <a`ЌA|ІN€!€A8!@a}iІ8!@N€ |І”!џР€bЄ<a`œЬA|ІN€!€A8!@‚"А,@‚H0”!џР~#‹x<``A|ІN€!€A8!@9 ‘ЂА9 Тд|h@‚H0”!џР€bд<`‡ A|ІN€!€A8!@9 ‘Ђдa}iІ8!@N€ 9 ‰Тv}Юt|h@‚H(Ђд‘Ђ<€bи,A‚H@‚ а”!џР8 €‚д~ƒx<M`ъјA|ІN€!€A8!@8`9 ‘Ђд9 ™ЂP‚"№ЉБ}­kyA‚H$‚"L‚1‚Q,џџ@‚HР‚"h€q|@‚HЌ> 3b1’"\8bP”!џР|dx~C“x<`ШPA|ІN€!€A8!@€a|iІ8`N€ > 3b1 ’"\8bP”!џР|dx€b8<`ШPA|ІN€!€A8!@€a|iІ8`N€ 9 ‰Тv}Юt|h@‚KџџЄ9 ™ЂT9 ™Ђ\9 ™Ђ\”!џР€‚4€bL< `‡A|ІN€!€A8!@,A‚HP”!џР8 8€|Cxbk8A}hІN€!€A8!@,A‚H4‚"№ЉБ}­kyA‚Hє::"dšššš šš9 ™Ђ`9 ™Ђ`”!џР8‚€bD< `‡A|ІN€!€A8!@,A‚Hи”!џР8‚€bH< `‡A|ІN€!€A8!@,A‚HР‚"№ЉБ"}­kyA‚H„9 ™Ђd”!џР€‚ €bд<` МA|ІN€!€A8!@9 ™Ђd‚"№ЉБ&}­kyA‚Ht9 ™Ђh‚"$‚ё‚:~іЛx~аВ‰Ж}­t}­kyA‚H@”!џР9р8тP8Р8ЂX8€ ~уЛx<`6 A|ІN€!€A8!@H8”!џР8тр8ТP8ЂX8€ ~уЛx<`YTA|ІN€!€A8!@,A‚HЬ9 ™Ђh‚"№ЉБ*}­kyA‚Hф9 ™Ђl”!џР8 €‚€b <`š A|ІN€!€A8!@9 ™Ђl‚"№ЉБ.}­kyA‚Hа9 ™Ђp”!џР8‚Œ€b<b`hXA|ІN€!€A8!@,A‚H@9 ™Ђp‚"№ЉБ2}­kyA‚HД9 ‘Ђp> 3b1 ’"\9 ‘Ђф> 3b1 є’"а9 ‘Ђ> 3b1 Ш’"”!џР8Р8 8€џџ8bФ<2`8A|ІN€!€A8!@”!џР8ТP8 8€џџ8bє<2`8A|ІN€!€A8!@,@‚HHш€a|iІ8`N€ 9 ‰Тъ}Юt|h@‚Hp9 ™Ђt‚"№‰Б3}­t}­kyA‚Hќ‚т(: ‚ї‚їМ,@‚H ‚З:Е’ЂД,@‚H ‚З$:Е’ЂМ,@‚H ‚З4:Е’ЂЬ,@‚H ‚З<:Е’Ђд,@‚H ‚ЗD:Е’Ђм,@‚H ‚ЗL:Е’Ђф,@‚H ‚ЗT:Е’Ђь,@‚H ‚З\:Е’Ђє:"˜’"Ш> 3b1 ,’"а8bФ‚Ђ(€Ubk@}hІN€ 9 ‰Тъ}Юt|h@‚H9 ‰Тъ}Юt|h@‚H 9 ™Ђt‚"№ЉБ6}­kyA‚Hь”!џР8ТФ8 8€џџ8bP<2`8A|ІN€!€A8!@,@‚HHX€a|iІ8`N€ 9 ‰Т}Юt|h@‚Hр9 ™Ђx‚"№‰Б7}­t}­kyA‚H ‚т,: ‚ї‚їМ,@‚H ‚З:Е’Ђl,@‚H ‚З$:Е’Ђt:"P’"ј> 3b1p’"8bє‚Ђ,€Ubk@}hІN€ 9 ‰Т}Юt|h@‚H9 ‰Т}Юt|h@‚H 9 ™Ђx‚"№ЉБ:}­kyA‚H ”!џР8Тє8 8€џџ8bP<2`8A|ІN€!€A8!@,@‚HH€a|iІ8`N€ 9 ‰Тv}Юt|h@‚Hє‚"№‰Б;}­t}­kyA‚Hм::"€ššš9 ™Ђ|9 ™Ђ|Ђ|‘ЂЌ‚"№ЉБ>}­kyA‚Hи9 ™Ђ€‚т0: ‚ї‚їМ,@‚H ‚З$:Е’Ђ,@‚H ‚З<:ЕP’Ђ,‚ТЄ’Т4‚ТЈ’ТD:"№’"T> 3b1’"\8bP‚Ђ0€Ubk@}hІN€ 9 ‰Тv}Юt|h@‚H9 ‰Тv}Юt|h@‚Hф9 ™Ђ€‰Ђ$}­t}­kyA‚H9 ™ЂфH<”!џР8 8€|Cxbk8A}hІN€!€A8!@,A‚Hф‰Ђ$}­t}­kyA‚H9 ™ЂdH<”!џР8 8€|Cxbk8A}hІN€!€A8!@,A‚HЈ‚"№ЉБB}­kyA‚H9 ™Ђ„‚ТЈ’Тф:"И’"T> 3b1@’"\8bP‚Ђ4€Ubk@}hІN€ 9 ‰Тv}Юt|h@‚H9 ‰Тv}Юt|h@‚HЈ9 ™Ђ„‚"№ЉБF}­kyA‚H@:@,џџ@‚HР‚"h€q|@‚HЌ> 3b1@’"\8bP”!џР|dx~C“x<`ШPA|ІN€!€A8!@€a|iІ8`N€ > 3b1 ’"\8bP”!џР|dx€b8<`ШPA|ІN€!€A8!@€a|iІ8`N€ 9 ‰Тv}Юt|h@‚KџџЄ9 ™Ђˆ= TDa­PT‘ЂL‚"Є’"4:"А’"HЂЌ‘Ђl> 3b1ь’"\”!џР8Р8 8‚P|Cx<`=4A|ІN€!€A8!@,@‚H$9 ‰Тv}Юt|hA‚H(”!џР€bT<a`œЬA|ІN€!€A8!@€a|iІ8`N€ |І”!џР€bT<a`”ˆA|ІN€!€A8!@”!џР€bP<a`ЌA|ІN€!€A8!@a}iІ8!@N€ |І”!џР€bT<a`œЬA|ІN€!€A8!@‚"`,@‚H0”!џР~#‹x<``A|ІN€!€A8!@9 ‘Ђ`a}iІ8!@N€ |І”!џР<a`A|ІN€!€A8!@bP:"P’"X‚М”!џР€ЂX~ƒx€bP<a`ŽдA|ІN€!€A8!@bT= OAa­tr‘Ђd9 .‘Ђh9 ‘Ђx:"$’"|= йa­‘Ђ(9 ‘Ђ$‚"‚:В’,9 ‘Ђ0= 3a­ ‘Ђ<9 ‘Ђ8‚"‚:’@9 ‘ЂD9 ‘ЂŒa}iІ8!@N€ 9 ‰Тv}Юt|h@‚H ‚Bˆ€b€,A‚H€b„,A‚HH9 ™Ђˆ‚"№ЉБJ}­kyA‚HР‚"L‚1‚Q,џџ@‚HР‚"h€q|@‚HЌ> 3b1’"\8bP”!џР|dx~C“x<`ШPA|ІN€!€A8!@€a|iІ8`N€ > 3b1 ’"\8bP”!џР|dx€b8<`ШPA|ІN€!€A8!@€a|iІ8`N€ 9 ‰Тv}Юt|h@‚KџџЄК}­ky@‚H ::"š9 ™ЂŒ9 ™ЂŒ‚"№ЉБN}­kyA‚Hш9 ™Ђ|Wx”!џР98р8ТP8ЂP8€~уЛx<`TA|ІN€!€A8!@,A‚H 9 ™Ђ‚"№ЉБR}­kyA‚HИК}­ky@‚H ::"˜šš9 ™Ђ”9 ™Ђ”‚"№ЉБV}­kyA‚HА9 ‘Ђp9 ‘ЂД> 3b1’" ”!џР8Р8 8€8b”<2`8A|ІN€!€A8!@9 ‰Тv}Юt|h@‚HШ9 ™Ђ˜‚"№‰БW}­t}­kyA‚Hh‚т8: ‚ї‚їМ,@‚H ‚З,:Е’Ђl:"@’"T> 3b1ш’"\8bP‚Ђ8€Ubk@}hІN€ 9 ‰Тv}Юt|h@‚H9 ‰Тv}Юt|h@‚H 9 ™Ђ˜‚"№ЉБZ}­kyA‚H> 3b1И’"\”!џР8ТP8 8€џџ8bP<2`8A|ІN€!€A8!@,@‚HH<€a|iІ8`N€ 9 ‰ТК}Юt|h@‚Hд9 ™Ђœ‚"№‰Б[}­t}­kyA‚HЈ= TDa­PT‘ЂЄ:"T’" Ђ<‘ЂФ> 3b1’" ”!џР<Р€8 8‚Ј|Cx<`=4A|ІN€!€A8!@,@‚Hє9 ‰ТК}Юt|hA‚H(”!џР€bЌ<a`œЬA|ІN€!€A8!@€a|iІ8`N€ |І”!џР€bЌ<a`”ˆA|ІN€!€A8!@”!џР€bЈ<a`ЌA|ІN€!€A8!@a}iІ8!@N€ |І”!џР€bЌ<a`œЬA|ІN€!€A8!@‚"И,@‚H0”!џР~#‹x<``A|ІN€!€A8!@9 ‘ЂИa}iІ8!@N€ |І”!џР<a`A|ІN€!€A8!@bЈ:"”’"А‚М”!џР€ЂА~ƒx€bЈ<a`ŽдA|ІN€!€A8!@bЌ= VAa­tr‘ЂМ9 ‘ЂР9 ‘Ђа:"’"д9 ‘Ђ”9 ‘Ђ‚"‚:в’˜9 0С‘Ђœ9 ‘Ђфa}iІ8!@N€ 9 ‰ТК}Юt|h@‚HH‚Bр€bи,A‚H€bм,A‚HH9 ™Ђœ‚"№ЉБ^}­kyA‚H4”!џР8Т”8 8€џџ8bP<2`8A|ІN€!€A8!@€a|iІ8`N€ 9 ‰Тv}Юt|h@‚HH‚"№‰Б_}­t}­kyA‚H9 ™ЂT‚"№ЉБ}­kyA‚H :@,џџ@‚HР‚"h€q|@‚HЌ> 3b1И’"\8bP”!џР|dx~C“x<`ШPA|ІN€!€A8!@€a|iІ8`N€ > 3b1 ’"\8bP”!џР|dx€b8<`ШPA|ІN€!€A8!@€a|iІ8`N€ 9 ‰Тv}Юt|h@‚KџџЄ9 ™ЂXЂ<‘Ђ> 3b1и’"\”!џР<Р€8 8‚ш|Cx<`=4A|ІN€!€A8!@,@‚HД9 ‰Тv}Юt|hA‚H(”!џР€bь<a`œЬA|ІN€!€A8!@€a|iІ8`N€ |І”!џР<a`A|ІN€!€A8!@bш:"P’"№‚М”!џР€Ђ№~ƒx€bш<a`ŽдA|ІN€!€A8!@bь= Rea­lV‘Ђќ9 ‘Ђa}iІ8!@N€ |І”!џР€bь<a`”ˆA|ІN€!€A8!@”!џР€bш<a`ЌA|ІN€!€A8!@a}iІ8!@N€ |І”!џР€bь<a`œЬA|ІN€!€A8!@‚"ј,@‚H0”!џР~#‹x<``A|ІN€!€A8!@9 ‘Ђјa}iІ8!@N€ 9 ‰Тv}Юt|h@‚H(‚ а”!џР8 €‚<~ƒx<M`ъјA|ІN€!€A8!@€b9 ™ЂX‚"№ЉБ}­kyA‚H ‚"L‚1‚Q,џџ@‚HР‚"h€q|@‚HЌ> 3b1ќ’"\8bP”!џР|dx~C“x<`ШPA|ІN€!€A8!@€a|iІ8`N€ > 3b1 ’"\8bP”!џР|dx€b8<`ШPA|ІN€!€A8!@€a|iІ8`N€ 9 ‰Тv}Юt|h@‚KџџЄ‰Ђ}­t}­ky@‚H‰Ђ}­t}­kyA‚H|‰Ђ}­t}­kyA‚HмHф”!џР8b@<2`+TA|ІN€!€A8!@,@‚Kџр\,@‚H|qx‚Б €Q~ЈІN€ €a|iІ8`N€ 9  ™Ђw> 3b1 М’"\8bP”!џР|dx|CxbkA}hІN€!€A8!@,@‚KџџX,@‚KџџL,@‚Kџџ(,@‚Kџџ0Kџџ€9  ™ЂwKџџŒ9 ™ЂwKџџ€|rx|QxЕ~-Š’Б‚Б’UL9 ™Б'~#‹x”!џР|dx|CxbkA}hІN€!€A8!@,A‚H€a|iІ8`N€ |qx|Bx~(ІN€ Pєџџ№Ф>  3bЕ!МKџџlPєџџ№Ф>  3bЕ!иKџџPPє>  3bЕ!єKџџ4Pє Ф>  3bЕ"KџџPє;м>  3bЕ",KџўќPє8,>  3bЕ"HKџўрPєџџі0>  3bЕ"dKџўФPєџџњЬ>  3bЕ"€KџўЈPє P>  3bЕ"œKџўŒ€a|iІ<` 3`c"ЬN€ |qx9 ‰б&}Юt|hA‚KџѓHKџ§,€a|iІ<` 3`c#N€ |qx9 ‰б&}Юt|hA‚KџѓРKџќј|QxЕ~-Š’Б>  3bЕ#H’Б 9 ™Б'~#‹x”!џР|dx|CxbkA}hІN€!€A8!@,A‚H€a|iІ8`N€ |qx|Bx~(ІN€ P<є>  3bЕ#œKџџLPdє>  3bЕ#иKџџP„є>  3bЕ$KџўдP@є>  3bЕ$PKџў˜PЌє>  3bЕ$ŒKџў\P Xє >  3bЕ$ШKџў P Єє  >  3bЕ%Kџ§фP pє >  3bЕ%@Kџ§ЈP Рє  >  3bЕ%|Kџ§lP є  >  3bЕ%ИKџ§0Ф X ˜>  3bЕ%єKџќєФ X X  >  3bЕ&0KџќИє рœ  P>  3bЕ&lKџќ|єœœ>  3bЕ&ЈKџќ@Pє>  3bЕ&фKџќP\є №>  3bЕ' KџћШPрє И>  3bЕ'\KџћŒPlє>  3bЕ'˜KџћPP(є>  3bЕ'дKџћP<є>  3bЕ(KџњиPЈє>  3bЕ(LKџњœPьє>  3bЕ(ˆKџњ`Pp@>  3bЕ(ФKџњ$P>  3bЕ)Kџљш”ЈX>  3bЕ)  3bЕ)xKџљpPШє>  3bЕ)ДKџљ4Pфє>  3bЕ)№KџјјP є>  3bЕ*,KџјМyЌ}hІN€ ”!џРKџлЉ‚"(,@‚H8‚1”!џР8‚Ф~#‹xb(kkk A}hІN€!€A8!@‚",,@‚H8‚1”!џР8‚є~#‹xb,kkk A}hІN€!€A8!@‚"0,@‚H8‚1”!џР8‚P~#‹xb0kkk A}hІN€!€A8!@‚"4,@‚H8‚1”!џР8‚P~#‹xb4kkk A}hІN€!€A8!@”!џРKџчщ‚"8,@‚H8‚1”!џР8‚P~#‹xb8kkk A}hІN€!€A8!@”!џРKџэ§”!џРKџђ}H\|І=€ 3aŒ7ŒlЈ}hІN€!‚A”!џР8‚@~C“x<2`0иA|ІN€!€A8!@,A‚Kџў4yЌ}hІN€ ”!џРKџищ‚"Ф’":"р’"Ф‚"$,@‚H ‚1‚1 ’"= GPa­RF‘Ђ 9  ‘Ђ9 ‘ЂœЂ(}­ky@‚H‚"(‚1€q bœ=  ‘ЂИ=  ‘ЂР=  ‘Ђа= €‘Ђи= €‘Ђр= €‘Ђш= €‘Ђ№= €‘Ђј:Т’Тќ9 ‘Ђ= a­џџ‘ЂЄ9  ‘ЂЈ= PTa­AB‘ЂЌ‚"x’" :"˜’"x9 ‘ЂTЂ,}­ky@‚H‚",‚1€q bT=  ‘Ђp=  ‘Ђx:ТŒ’Т|9 ‘Ђ€:Т’Т„9 ‘Ђˆ= a­џџ‘Ђ\9 ‘Ђ`= PTa­AB‘Ђd‚"x’"X:"P’"x9 ‘ЂєЂ0}­ky@‚H‚"0‚1€q bє=  ‘Ђ=  ‘Ђ09 ‘Ђ8:ТА’Т<9 ‘Ђ@9 ‘ЂH= a­џџ‘Ђќ9 ‘Ђ= PTa­AB‘Ђ‚"x’"ј:"№’"x9 ‘ЂМЂ4}­ky@‚H‚"4‚1€q bМ9 ‘Ђш= a­џџ‘ЂФ9 ‘ЂШ= PTa­AB‘ЂЬ‚"x’"Р:"И’"x”!џРKџх=9 ‘ЂDЂ8}­ky@‚H‚"8‚1€q bD= @‘Ђp:Т|’Тt9 ‘Ђx= €@a­џџ‘ЂL9 ‘ЂP= PTa­AB‘ЂT‚"x’"H:"@’"x”!џРKџы%”!џРKџюA”!џР€b<D`л<A|ІN€!€A8!@8`Hd|І=€ 3aŒ7ŒlЈ}hІN€!8`‰Ђ#}­t}­kyA‚H,”!џР|Cx< `ЪАA|ІN€!€A8!@KџќyЌ}hІN€ ”!џРKџеэ”!џРKџу=”!џРKџщ•”!џРKџю8`HL|І=€ 3aŒ7ŒlЈ}hІN€!”!џР|Cx< `вьA|ІN€!€A8!@Kџџ”yЌ}hІN€ |І=€ 3aŒ7ŒlЈ}hІN€!‚Ё ‚С$H$|І”!ўрйСйс˜к к!ЈкAАкaИкРкЁШкСаксилрл!шлA№лaјллЁлСлсaЁ С$с(‘,‘!0‘A4‘a8‘<‘Ё@‘СD‘сH’L’!P’AT’aX’\’Ё`’Сd’сh“l“!p“At“ax|" x”!џМ‚"‚1,@‚H@‚1:1’"џш:1џќ‚’џє’џф:1џќ‚’џ№:Ђџф~ з’џфH9 ‘Ђџ№9 ‘Ђџє:"џ№’"џм‚" ‚1”!џР8Тџм€Ђ8€8qj<`З№A|ІN€!€A8!@,@‚HHј‚"‚1,@‚H ‚1:1’"џрЂџ№‘ЂџјHИЂџш‘ЂџьЂџє‘ЂџќHp”!џР€‚џр€bџь€c< `‡A|ІN€!€A8!@,@‚HH|9 Тџь}Эr‘Тџь9 Тџр}Эr‘Тџр9 Тџќ}ЭpQ‘ТџќЂџќ}­ky@Kџџˆ€bџф|mxТџш}Эr‘Тџш9 Тџј}ЭpQ‘ТџјЂџј}­ky@Kџџ@8`8!D€€Ё €С$€с(,!0A4a8<Ё@СDсH‚L‚!P‚AT‚aX‚\‚Ё`‚Сd‚сhƒlƒ!pƒAtƒaxЩСЩс˜Ъ Ъ!ЈЪAАЪaИЪРЪЁШЪСаЪсиЫрЫ!шЫA№ЫaјЫЫЁЫСЫс8! a}iІN€ ”!џР€Ђ8–8u=` 3ak0xA}hІN€!€A8!@yЌ}hІN€ |І=€ 3aŒ7ŒlЈ}hІN€!‚Ђ> 3b1+ь’5 > 3b1/ј’5> 3b1/d’5> 3b1Ј’5@> 3b13а’5D”!џР8€|Cx< `ЖHA|ІN€!€A8!@yЌ}hІN€ ”Ў|ГФГ,oЌГєГL—ФГ ГЈЖ№п(кdмАндлпDv„tќШˆГаГ8ш  l— єВ ,б ˆ– дЈ hА ˜А lАААЌГєГ„ЖЬпн,лhпœvмкмpГИГdРА4АфЖ,пhнŒлШпќv<кxмlА$ГlГрЖ(п`кœм№нлPп„vфШhГАГ <Б+ќД/ З/„Ф0Х1œ§24О 3 џџџџTЈи№ДиœP”+д/L/р043И#Ќ 4&@& H&И&|%%Œ* $и&є'0'ф(˜)Ф#ш)(д$œ( (\ќ)ˆ)L$`*<$$%Ш%P'Ј'l3д3р3ь3ј4(`Јˆl ф(МјdT ФРL œ!Ќ!Ш!ф"""8"T"p"Œ" "д#3ˆCODE rщ ІƒX§рД7p(`q7.0b71Oldest compatible LabVIEW.Œ?@ў>œў:єў<llpfPPRP@0џџџџ StyleSheet@@џџџџџџџџ0џџџџdata@Contents@0џџџџinfoџџ~NI.LV.ALL.VILastSavedTarget0џџџџMacNI.LV.ALL.goodSyntaxTargets%@џџџџ0џџџџMac€џџџџ€Пџџ  ­Ж9­Ж9 ЏџНЏџЅ­нНЊЊЕЋw­ЏџЕЏџН ЏЎ  ПџpС€1€ € 1€`pС€ € € € € €€џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ<DTHPD^9P884;Є~Єƒ@0џџџџFolder^ƒN№ p @!change?‚@@џџџџj@ёТќGя@ќFџџџSDё@ўlёBўkџџџUndo.viWD–СЃ–УЃџџџ ReadBook.vi%.0f%.0f%.0f%.0f%.0fFPHP Autorun.viмFPHPD^8дАлЄ~ш rщ t&^Œ^-4џXў>џ‘џFџ\ў"<:cЁXрˆXLl˜H wlђђђ\ p 4 шь7,Р  H||4Q4џоџE || Ј, xЌ@d\ ДџХўdџ1м. (џџџў ^Ј 1ў0Х||4 L џДўdџУў˜џїўPxд4 NФ џЯџEџмџuџїўPxф8hФBјАTХ4 2Ф №џтџI }џфњњњвввPx0 Ф №џоџEўd‘ГГГ< и Ј р P T „ И ш d œ €0ш Фdєџџd\" аџ’.јd„` ]џx|4 d џ’џЊЈџїўіt€@PldA џЊ~џЗH|< м  ”Фє $ T0 _ №џЊ~џЗџѕГГГГГГ8hBPШM@PldA џЙ~џЦx d а8р6 №џЊ~џЗџіџГГГГГГіbфіk@8 р6 №џЙ~џЦџіџГГГГГГіkHіk,0 _ №џЙ~џЦџѕГГГГГГ8 hBP<N | | | œд0 rd& 8–*фџїўГГГ0 sd №џЎ–фџф№№№0 sd, ф*єџѕГГГГГГ0 Ud №џЊ’.јўd‘ГГГ8 hdB ŒdRм |0 rd' ТџЎфєџїўГГГ0 ш !dф4џџ |ш4 0d џњџЉ(ГГГГГГіk0 | |8 р6 Ј №џХўPџдўbџіџГГГГГГіrаіrx@PlLA џХўPџдўb@+8h ЈBФАM|0 _ Ј №џХўPџдўbџѕГГГГГГ8р6 р №џдўPџуўbџіџГГГГГГіrАіrШ0 _ р №џдўPџуўbџѕГГГГГГ|$@PlLA џдўPџуўb*0 rL' ТџЩџџ-џїўГГГ0 zL& 8ўhџџїўГГГ8h рB \ HN0 UL №џХўdџ1ўd‘ГГГ8hLB ф Rо4 0L жўхзџšГГГГГГŒ 0 sL №џЩўhџџфААА№№№0 wL, џџ-џѕГГГГГГ0ш Ь)Lрџџ|4Q<џjў†џўъ@L|,lи  4 N ј џYў†џhўžџїўŒœ8h јB,œTЦ4 2 ј №џnўŠџ}ўцџфввввввŒА0  ј №џjў†џўъўd‘ГГГ0AшФM ј$6џџ,4 а Д<,< Д а4|< P ..^BDHP Autorun.viLVINBuildRoboPage.viаPTH0LVINGetPathtoFile.vi <PTH0LVIN ShowPage.viШPTH0LVIN ReadBook.viHHPTH0LVIN_RB2Globals.vi;мPTH0LVINUndo.viC\PTH0Lи BDHPD^&˜8M 9Ш yяРLзЄ~ш rщ 9˜9^*Ь^\#џ•–Kџёџиъc™ЁS№,€55H5Фџџџ0ш(Ш T | TH€ €D1€”Hы. (˜‘§4 &KаџыKџѕџџџX 8 € pи@Јxр аD€ аР 43ає ћ& "  а(43а\ ћ  аp43аФ ћ p аји43а, ѓ.ћ&їи а`@43а”ѓћї@ аШЈ43аќ&ы.ѓ*яЈ аP43аЈ &ћ. * а˜x43аЬыѓяx ар43а4ыѓя р,РtЈDœˆ @РHˆ4QH Ьлм,<p 4 €JЈ ќД л§•`џџџ]и4  2Ј № Якџѕџџџ]H0 Ј № Ьлџђџџџџ8hЈBьиз||4”4Є0ˆр43а0ы&ѓ"я  €   \ јpгяЯЯ   \D1€”„ РІјЦ,P?Є  < ( €  < є  4 &K <—јІOџѕџџџ] P43 < ІЖЎ43 <МЖЦО  <9H |8 43 < (ЖјЦО ј43 < АІјЖЎ  < ь Ф ј , @Р ь м ,4Q мЏ ѕ €, „ И  8| , ј,Р  LHЌ0  L №Џ ѕџђџџџџ8h LB p Ќз|4 J L €Юѕ§•`џџџXp4  2 L №ВŸєџѕџџџX(4” Р7€04/”DЕYеy’Ф  L t T40 €М`ЮrХiФ0@P6 4Kмт6ђVъF€4/”,Д„дЄŒН  и:Ph H ,  иLœ T40 иД”ФЄМœН40 и”Д„д”ФŒН40 иФ”дЄЬœН,  иа,4”€œ2  THЌLХiФŒФiL)€ш2MA] WGS3pЈГГГ,€H=œ<јBИџџџ0”Aи4єˆp0@ Д$lG|gtWT4 J$]Gl{§•`џџџ],P4 ”№j‹yЛ§•`џџзWѕШ4 є№r†Ѓ§•`џџзWђ84 ”№њ— р§•`џџзXt,€HL0L”E(џџџ0$2ј4 J Јв6сo§•`џџџX\4 BшЏО6§•`џџџXи0@P6l аJјОЮ<Ц,Д L4 $№puт§•`џџзіrˆ ˆ6дЈhd Œ!€$HЎBпўdдMulticolumnListbox (strict) v’ !h!t4! JˆŸBЎ”§•`џџџWєT,"htиаœ№ "ˆ(h"и0"Žˆь=ЎBЗOВH "ˆји0"Žˆ”?ЗBРOЛH0"Žˆ>ЎёЗўВї0"Žˆˆ@ЗёРўЛї"а "ˆ6l€Jј"œ "ˆXи "ˆ68Kt@"ˆPBЯBоўж 3 "№"€@"ˆМAРBЯўЧ й" "Ј(јX,"€H(œ(d1Hџџџ "B@№`ь0"є3$ " @L8"ЖшtИџАЁ.L яU`D#1Р€єp,—ЗŸ8I@/@ #Шф 4# &KШˆ—Хџѕџџџ§mL$ь$ь0$З`CџАЁ.˜џя4$ BџАџц§•`џџџPт %Аˆь4%3ШРF—ЇŸŸ— %Ш @0%*H $D”AJ˜E %BР`ь4%ш@p %BP6д`ь%ь %@@HА`ьH%А˜E˜џя\%№Ÿ‡˜E˜‡4%3ШXEЇЗŸЏ— %Ш %@ %Ш№l 4%3ШдH—ЇŸ‡4%3Ш8GЇЗЏ‡%L4%Lа0%$<%˜,%H 8Мџџџ %B˜`ь0%L24,%˜JxLМ%DјЌ%$ %@˜шШ$4%  2x №ЪЅйоџѕџџџ‹є№4&QШЩЂкпєK8&hxB(фз&|0& x №ЩЂкпџђџџџџ&|0&@˜ш<<Ыњлг l4& B<МњЫ§•`џџџXм'<$'шЌ'шг бРб ,'H(,((Hџџџ,'L”$|є 'Bє`ь0'|2Ь,'xфд  D'2| ш ДтSљt€ ' P"ш!"Ш4' K Pг[т™џѕџџџіTL( ”( ”4(g P ќNтSљtэc4(Q"œх<іK! O(|("Ш,(!Ь"8"l"4( J!D ж1хK§•`џџџі’X8)h!DB!xlз4)  2!D №ц?ѕJџѕџџџ] 0* !D №х<іKџђџџџџ,*є!ŒP!DPФ *@є"ш"œ"Ш4*|#'d0*"Ш ”d*Œ!€є#Ф #/W%x%ŒVIp uЋ€+#№+$,+#№$$t$”%( +#8-$D.t +#81$Д.t+$t0+Ž#8#œQ #0) +#8%H$t +#8$ф$t0+Ž#8#АR JWP0+Ž#8%TJWP+$” +#8),%Ќ'0+Ž#8$0S#0)+%Ќ +$D$Д%H$ф@+#8%ь#.W&=+%(<+O'8-&<9+&ф&Є&l+'8+h&Bж@+ 6&№-ј)Ёџџџј)Ёј* 4+ J&ާ•`џџџŒ#ф ,@@),'8',,@&X:&TвЌ,"шэCэc,є P,"Ш P,"ш,@Ш#8,'%(,,'#8МШ,$H,),&&=4,є(€(ф!4,/€ш)М$0JE,)ј,*<,)ј**€* +<++ј,t ,)`*L+< ,)`-t*Р*,*€4,0)`)”3($0 ,E ,)`+\*€ ,)`*є* 4,0)`)Ј2( 0,E4,0)`+(0  E,*  ,)`,,+<4,0)`*81$ E ,)`+А+4,0)`+ф-E ,+ ,)`5,м4Ш,+ј4,0)`,`/$ E,+< ,)`,”,t4,0)`,Ш( E ,,t4,0)`,, E 4,є.”.Аp0,*H.('A JE4,ш/ /(p ,B˜-D* ,BP-D* ,BР-D* ,Bє-D*,,-Ј-ш-Ш..T.t ,B@--D* ,@@H-t-D*,.T#№\,-)E),*.tH,-tE,4,/€ш/Ь'=KF,0,0$,00$0Œ,$3Ј ,/p0X0$ ,/p0Ќ0$,0Œ4,0/p/Є&5'=#9F ,/p1”0р*4,0/p/И%'%#!F4,0/p0D$% !F 4,є/ш4p,,1-),№ ,B˜1Ш*4,ш3Œ3Шp0,*H2 #   ,BР1Ш*, .t3P,,x$<-Ј1t ,BP1Ш* ,Bє1Ш*,,1t1ј2`2€3Ј3P,,д"Ш.2€,,ш Јф-Ш2`,, '.T3Ј ,@@H1”1Ш*,`-D1Ш,3P0Œ ,B@11Ш*H,1”  !\,1P  P4,/ш4Дџъ ’Ф,4Ш,4Ш ,4l54ш4Ш4,04l4 "џёџњФ,,4l/p)`$H,,4l)`H/p,4Ш+ј4,ш5t5№2,,51”-tАH,5џњ4,$LxEф4,$LРF0 4,$L\G<04,$77$p ,фh\,6дВH˜E˜HЌ, ь—вЎ—4,/”8ˆ­вЭђ5,8 ,8Р,8 8Р ,8,9H8р8  ,8,:P9 4,08,8`ИтУяНш4,08,8tИжУтНм4,”9|:„0 ,8  \<,6XFьK @ L <D(Bр№€ ьaC ;шi№џѕ 1 ;шi№џѕ , 8Р4,”:4;02 Ќ,9HОНшНЌ,:PНмМœМмD,2”LXю,-=и> ?„?ДAH@h<- =$;м8,№ˆ и , <ˆа4- J>L л*ъL§•`џџџŒS\@.P v>LB4ьћ5? YH.R=DъL=pX@Д\8.р v> №ь ћ5џѕџџџџџX XЌ@0 6>  @ьѓ џhџџџџџџhџh0|,0>”>Ь?ј@8?L80h> B? <АЎ00 W>L ъќ7џѕџџџџџ00 w>L №э:ўIџфГГГџџџ0|@0 6>  €ѓћ џgŽџџџџџџgŽџgŽ00 _> №ь ћ5џѕџџџ80h>LB@ ?ф0|40Q>L№э:ўI@шZ,0ABTBˆAx40 J@Д о:э§•`џџџPšМ01 U>L №ъ7Lџнџџџџџ81h@ДBAФAАз1|1|,1ˆ ,-ш1ј=$41”B8Bф01=$< 41 2@Д №ю=§HџѕџџџPЛд02 @Д №э:ўIџђџџџџ,2B:P9HL ьH2BѕAѕn1EH ;шi№џѕ D21$CєCРџ?_4^ИЊZ0 2C\DDC 42 &KC\№?џmџѕџџџ]&d3C D$Dx3C  3C\DЬD$433C\D[џO_W 3C\6 D˜Kм433C\E]џ?OG433C\E\?OG3D$3Dx,36 6д686l‘Gм ;шi№џѕ 1 ;шi№џѕ 1 ;шi№џѕ Ќ368ж йй ИмИЌ36lЧ Ц,Ч,АмА,Ќ36 ъFРмРјъјGјaLа ;шi№џѕ 1 ;шi№џѕ D31€$HшHДЄРФр0`№8!@3I3I€43 &KHH•РЄџѕџџџ]&04II€I J<JJјKtKм 4HHILI4I 443HHHŒ_ЄРДаЌШ 4HHIРI€ 4HHJ\I 443HHH <ДРФаМШ443HHJ(8ДаФиМд4J< 4HHIєJ<443HHI8;ЄаДиЌд 4HHK,J443HHJф6ЌиДрАм4Jј 4HH6lJАJј4Kt443HHK`7ЄиЌрЈм4J 4HH68KќKt443HHKШ4МиФрРм4Kм 4HH6 K”Kм443HHK5ДиМрИм,4HHC\4ˆ Јш4Kм ЈDx4Kt№,4PHHC\ˆ4Jјœш ( „о@о@?€ю ЯAAB Aо@?f8  чЬF яT яb€„€ чЬd „€ ЧЉ Lucida Grande Lucida Grande Lucida Grande00RSRC LVINLBVWуœo у| 4dRSIDTLVSRhBDPW|LIviCPTMЄDSTMИDFDSЬLIdsрVICDєversDLDRFPTD0CPMpDVITSXICONlicl8€DTHP”HOBJЈTRec(аSTRGLIfphFPHP|OMIdLIbdЬBDHPрHISTєPRT FTABЮаџџџџ x=pџџџџl оюџџџџШ^аџџџџИ p.аџџџџЬ ~ƒџџџџ нХ џџџџ&$G€џџџџ'ˆ sа џџџџ_?С@џџџџ_< нwаџџџџ_\ ~Оpџџџџ_Ь”Џџџџџ_д чЩ№џџџџ`X“Њ№џџџџ`м v@Аџџџџdр ylџџџџu •Ќџџџџu, {SАџџџџu8Рџџџџu…џџџџuьїџџџџv8 uiАџџџџvŒ }Йр џџџџvиAа џџџџw$ W№ џџџџwp фqџџџџwМ wљАџџџџx |ј€џџџџxT CЪ џџџџxЈ'Рџџџџxє”УАџџџџyT yк џџџџyЌ |+ џџџџyј @Љ№џџџџzXФф џџџџzА AААџџџџzќЩ]`џџџџ{HШI џџџџ{  wœрџџџџ{є }щ`џџџџ|TЋаџџџџ| ‘ѕP џџџџ|ь• А"џџџџ}P }^@$џџџџ}А ,%џџџџ~ —x&џџџџ~d нžp'џџџџ~АЮ(џџџџ~ќ wb`)џџџџXЪђ*џџџџЌ yГ`,џџџџј yh-џџџџ€` u4 .џџџџ€Р Zа/џџџџ |п1џџџџ`Є02џџџџМœ№а3џџџџ‚ фtр4џџџџ‚`8# џџџџ‚МЮn€ џџџџ‚ШžЅ џџџџ‚д лŒАџџџџ‚р цр0џџџџ‚ьžц`џџџџ‚ј }Ј0џџџџƒ ~€€!џџџџ’ј$#џџџџ“ЧЬа+џџџџ“ фЫ@џџџџ“oАџџџџ”€4ђРџџџџс\ ф™Pџџџџсˆ€џџџџт0І Autorun.viBud1‡s.txtIl Pages.txtIlocblobZ!џџџџџџ templates.txtIlocblob!џџџџџџ  @€ @€ @€ @ E‡DSDB ` @€ @€ @,ROBOLAB: 2.9.4 New What's new in ROBOLAB 2.9.4. ROBOLAB, 2.9.4, New, Manuals 0 RL_home.jpg Chapter 1 ROBOLAB 2.9.4 Contents Firmware Download (RCX) Sub-Routines Floating Point Numbers Evaluate Expression Block Vernier Sensor Support Vernier Sensor List NXT-to-NXT Communication NXT On-Screen Text NXT Text Placement Additional Resources TitleSimple.jpg What's New in ROBOLAB 2.9.4 #pagename URL=http://www.ceeo.tufts.edu Goto=#homepage Goto=#prevpage Goto=#nextpage Stop= PageNumber.jpg #thispage/#totalpages TitleSimpleCOM.jpg What's New in ROBOLAB 2.9.4 #pagename URL=http://www.ceeo.tufts.edu SelectCOM= Goto=#homepage Goto=#prevpage Goto=#nextpage Stop= PageNumber.jpg #thispage/#totalpages ROBOLAB 2.9.4
Welcome to ROBOLAB This book describes the new features incorporated into ROBOLAB (TM) 2.9.4. On each page is a description of the new programming abilities of this software release and many include sample code to get you going.

To get started, click the "next page" arrow in the top navigation to progress through the book. RL_laptop.jpg nav_background.jpg
    Navigation
nav_home.jpg Goto=#homepage Return Home nav_prev.jpg Goto=#prevpage Prev Page nav_next.jpg Goto=#nextpage Next Page nav_stop.jpg Stop= Close Bookprint_button.jpgPrint=Create web-page version for printing Contents
Below is a list of the new features covered in this book. Click on a specific one to jump to that page, or use the "next page" button at the top right of this page to progress through them sequentially.

* Improved firmware downloading (RCX)

* Faster sub-routines

* Update to floating point number comparison

* New math functions for the Evaluate Expression block

* Extensive Vernier Sensor support

* NXT-to-NXT mail communication

* More features for NXT on-screen text

The last page of the book has useful links for additional resources. EditImage001.jpg Program001.vi Program002.viRL_home.jpg Firmware Download (RCX)
Admin_firmware.jpg Run=Firmware.vi In ROBOLAB 2.9.4 there is increased reliability with downloading firmware to the RCX.

Click the download firmware button above to download the lastest firmware to your brick. (This is the same option found in the Administrator section of ROBOLAB.) Sub-Routines
In ROBOLAB 2.9.4 the sub-routines have been optimized to run faster. Additionally, there is a fix so that sub-routines can be called from within other sub-routines.

The program below defines two sub-routines, one of which calls the other.SubRoutine.viSubRoutineLocation.pngSub-routine icons can be found in the Structures menu found on the main Functions Palette. Floating Point Numbers
In ROBOLAB 2.9.4 it is now possible to properly compare two floating point numbers.

The program below defines two variables and sets them (using "Evaluate Expression"), and then it performs a comparison between the values. On the screen is displayed the relationship of the two values.FloatingPointCompare.viScreenCompare.jpgEvaluateExpressionLocation.pngEvaluate Expression can be found in the Containers menu on the main Functions Palette. Evaluate Expression Block
ROBOLAB 2.9.4 has more math functions than ever before. The Evaluate Expression block now supports sin, cos, tan, asin, acos, atan, sqrt, abs, mod (%), AND, OR, and NOT.

Below is a program that evaluates a lot of these functions.EvaluateExpression.viScreenEvaluate.jpgEvaluateExpressionLocation.pngEvaluate Expression can be found in the Containers menu on the main Functions Palette. Vernier Sensor Support
Vernier Sensors (http://www.vernier.com/probes/) are used around the world. Now ROBOLAB 2.9.4 has extensive support for a wide range of Vernier Sensors. With these sensors you can program forks, events, wait-fors, loops, and do datalogging.

The set of new Vernier icons can be found in the Vernier menu under "User Libraries" on the main Functions Palette.VernierLocation.pngSee the next page for the complete list of the 43 different Vernier Sensors you can now use with ROBOLAB. Vernier Sensor List
There are a total of 43 different Vernier sensors supported in ROBOLAB 2.9.4:

Accelerometer 5g (m/s^2), Accelerometer 25g (m/s^2), Barometer (kPa), Charge +/-0.5V (nC), Charge +/-2V (nC), Charge +/-10V (nC), Colorimeter (%T), Conductivity 200 (uS/cm), Conductivity 2000 (uS/cm), Conductivity 20k (mS/cm), Current (mA), Dissolved Oxygen (mg/I), Electrode Amplifier (mV), Flow Rate (mm/s), Force 10N (N), Force 50N (N), Force Plate 850 N (N), Force Plate 3500 N (N), Hand Dynamometer (N), Instr.Amp. +/-20mV (mV), Light 600 (lx), Light 6000 (lx), Light 150K (klx), TI Light (relative), Mag. Field 0.3 mT (uT), Mag. Field 6.4 mT (uT), ORP (mV), Oxygen Gas (ppt), pH (pHx10), Pressure (kPa), Relative Humidity (%), Salinity (ppt), Soil Moisture(New) (%), Soil Moisture(Old) (%), Sound Level Meter (dB), Temperature TMP (deg C), Temperature STS (deg C), Temperature EL (deg C), Thermocouple (deg C), Turbidity (NTU), UVA (mW/m^2), UVB (mW/m^2) NXT-to-NXT Communication
In ROBOLAB 2.9.4 it is now possible to have NXT-to-NXT communication. This is achieved by first pairing the two bricks with BlueTooth and then sending mail messages between them.

In the first program below, the sender will send mail when the touch sensor is clicked.

The second program, running on the receiver, will beep every time it receives a new mail message.

Don't forget to pair the devices prior to running the programs. This is done using the on-screen menu.MailSender.viMailReceiver.viSender:Receiver: NXT On-Screen Text
For writing text to the NXT screen, ROBOLAB 2.9.4 now supports both "centering the text" and "bigger fonts".

These are achieved through the [/center] and [/big] tags respectively.

Below are examples of these two options. The next page shows how to position the text exactly where you want it.TextCenteredBig.viScreenFont.jpg NXT Text Placement
In ROBOLAB 2.9.4 you can now position text on the screen at a specific (x,y) location.

Remember that the screen is 100 by 64 and the (0,0) location is in the lower left hand corner.TextPosition.viScreenLocation.jpgLocationLocation.pngNXT Formatted Text (X,Y) can be found in the NXT Commands menu on the main Functions Palette. Additional Resources
This concludes the overview of new features in ROBOLAB 2.9.4.

For more information regarding the software, and for further resources including programming guides, activities, and additional information, please visit the following websites:

* LEGO Engineering:

http://www.LEGOengineering.com

The LEGO Engineering site contains more detailed manuals on using the ROBOLAB software with both the RCX and NXT, as well as classroom activities.

* The Center for Engineering Educational Outreach (CEEO) at Tufts University:

http://www.ceeo.tufts.edu

* The LEGO Education Homepage:

http://www.LEGO.com/education

* MINDSTORMS at National Instruments:

http://www.ni.com/company/education/mindstorms.htmRL_laptop.jpgˆRuling on templates: All must have the same set of boxes in the same order. Boxes with location 0,0,0,0 will be hidden and not available to the user. All must have the same page dimensions and header. Also all boxes must be on a separate line. NEWpagename
Type Text Here NEWEditImage NEWProgram NEWProgram NEWpagename
Type Text Here NEWEditImage NEWProgram NEWProgram NEWpagename
Type Text Here NEWEditImage NEWProgram NEWProgram NEWpagename
Type Text Here NEWEditImage NEWProgram NEWProgram NEWpagename
Type Text Here NEWEditImage NEWProgram NEWProgram NEWpagename
Type Text Here NEWEditImage NEWProgram NEWProgram Bud1%  @€ @€ @€ @ E%DSDB`€ @€ @€ @{\rtf1\mac \f4\fs20 {\fonttbl {\f0\fswiss Helvetica;} {\f4\fswiss Helvetica;} } ${\footnote VernierForceSensor.vi} #{\footnote VernierForceSensor_vi} K{\footnote VernierForceSensor.vi} \b VernierForceSensor.vi\par \b0 \par \par \b Connector Pane\par \b0 \{BMC :tempc.bmp\}\par \par \b Front Panel\par \b0 \{BMC :tempp.bmp\}\par \par \b Block Diagram\par \b0 \{BMC :tempd.bmp\}\par \par \b \par \b0 } 6BM6 6(  џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџннџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3fџ3fџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3fџ3fџџџџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬџ™џ™ЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЛЛЛЬЬЬџ™џ™ЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЛЛЛЛЛЛЬЬЬџ™џ™ЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЛЛЛЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬннннннЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџBM6(ІаџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™ЬЬЬџџџ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™џџџ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™ЬЬЬ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™ЬЬЬџџџџџџџџџџџџџџџџџџ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™ЬЬЬџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџЬЬЬ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™џџџџџџџџџџџџ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ3™3™џџџџџџџџџџџџ3™3™џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџCџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ