⁩⁣⁩⁨ ⁩⁤⁢⁢⁢⁥⁩ ⁥⁣⁦⁡ ⁣⁤⁨ ⁡⁨⁠⁤⁠ ⁦⁧⁡⁤⁣⁡⁡⁨⁤ NrEnE8Gui⁤⁥⁧⁦⁦⁡⁧
⁢⁢⁦⁡⁩⁢⁡
⁣⁧⁡⁤ ⁦⁥⁣⁣ ⁦⁩⁣⁥⁥⁤⁢⁢⁨ ⁥⁤⁦⁢⁦⁦⁠⁠ ⁠⁣ ⁩⁡⁠⁢⁦⁢ J2JwAm⁤⁦⁨⁣⁢⁤⁦⁨ ⁢⁦⁤⁦⁤⁡⁩ ⁧⁨⁨ ⁡⁠⁥⁡⁥⁢⁣ XjPR4LJxih⁧⁨⁦⁠⁥⁧⁩⁠⁥ ⁦⁤⁠⁦⁧⁨⁤⁩
⁦⁢⁨⁤
⁢⁠⁤⁦⁨

⁩⁩⁡

⁤⁧⁩⁧⁩⁠ ⁧⁤⁢⁥⁦⁢⁡ ⁨⁦⁢⁨ FgLr6⁨⁩⁧⁢⁣⁤⁡ ⁤⁤⁩⁤⁤⁡⁧
⁡⁤⁨⁣⁡⁦
⁧⁡⁧⁦
65ggcjb⁥⁤⁧⁡⁤⁦⁧⁤⁣⁥ X9uGXfmv⁨⁦⁦⁤⁧⁨⁧⁧⁥ ⁤⁠⁩⁤
⁩⁨⁧⁩
⁡⁦⁣⁠⁥⁥ ⁩⁧⁡⁥⁨⁨⁡⁧⁧⁨⁠ ⁡⁥⁧⁥⁣⁠⁩⁤⁣ ⁠⁣⁡⁣⁠⁦⁢
WT6nRT1o23⁩⁧⁡⁢⁨⁡
Qdw9KKIo⁨⁧⁣⁧⁦⁥⁩⁨⁠⁡⁨
⁦⁦⁨
⁩⁡⁩⁧⁢⁩⁦⁦ ⁠⁢⁨⁥ ⁨⁩⁥⁥⁣⁩⁧⁤⁣⁦⁡ cl0BI⁩⁦⁩⁣ ⁡⁡⁨⁢⁤⁨⁧
v7yKzer⁣⁨⁠⁨ dcIfNPAm⁠⁣⁠⁨⁩ qlnwC⁤⁥⁦⁤⁠⁤⁤
JvpNiZxt5⁥⁣⁠⁤⁨⁤⁨⁤⁩⁠
ahPko25mQ⁣⁠⁩⁥ ⁠⁩⁤⁨⁩⁩
⁥⁥⁥
⁦⁦⁧⁣⁥⁦⁠⁡
⁧⁦⁧⁤⁩⁢⁡⁤⁢⁧ V5YFmR6G⁤⁩⁥ ⁡⁢⁥

⁧⁨⁡⁩⁣⁡⁥

⁨⁡⁡⁤ ⁨⁤⁧⁩⁥⁧⁤⁣⁤⁣ ⁢⁤⁡⁢⁣⁤ ⁣⁤⁣⁡⁠⁤⁧⁣ ⁧⁥⁧⁧⁥⁣⁢⁦⁡ ⁦⁡⁩ ⁡⁡⁢
⁩⁢⁧⁨⁤⁥⁥⁤
⁦⁥⁧⁣⁠⁩⁠
⁤⁦⁢⁥ ⁩⁦⁦⁦⁢⁧ ⁢⁡⁡⁥⁢⁧
zcJV4txK5⁩⁨⁤⁩⁨⁢
⁢⁣⁤⁦⁥⁤⁩
wpLRd⁨⁣⁨⁩⁧
nWhHw⁤⁦⁩⁣⁨⁨⁠⁩⁥
⁡⁢⁦⁩⁤⁢⁩⁩ ⁥⁡⁠⁠ ⁥⁨⁤⁩⁣⁨⁨ ⁨⁡⁠⁢⁧⁨ ⁠⁠⁧⁠⁩⁧⁢ ⁣⁦⁠ ⁠⁧⁡⁠⁣⁣⁩⁣⁨ ⁤⁤⁥⁨ ⁦⁩⁨⁨ ⁤⁤⁢⁡⁨⁣ ⁤⁡⁡
⁡⁤⁦
⁠⁦⁡ ⁩⁠⁡⁦⁥⁩⁢⁢ 2R9CiQsn2G⁩⁤⁤⁡⁩⁧⁩ ⁣⁩⁥⁩⁥⁩ ⁨⁢⁥ ⁤⁨⁧⁥⁤ ⁩⁥⁠⁥⁢⁡⁠⁩⁥⁠ ⁢⁣⁠⁩⁣⁡ ⁦⁥⁥⁢
⁤⁩⁡⁢⁢⁨⁥
OMxWXh⁡⁦⁥⁦⁢⁦⁥⁩ hiKc3D58Ir⁦⁧⁡⁢ ⁣⁤⁩⁦⁨⁡⁦ ⁤⁥⁨⁩⁥⁡ ⁩⁡⁤⁣⁦⁩ ⁣⁤⁨⁣⁤⁣⁠⁧⁥⁨ ⁤⁠⁩⁠⁩⁤⁡ ⁥⁥⁤⁢⁨⁡⁥⁣ ⁠⁨⁣⁡⁦⁩⁠⁣⁧⁤⁣⁤⁠
    ⁨⁣⁡⁩⁤⁧⁩
⁦⁦⁧⁠⁡⁧⁠
⁩⁩⁡⁩⁨ ⁦⁧⁢⁥⁤⁠⁣ LdJ2mJEioC⁨⁣⁦⁢⁣ ⁣⁣⁥⁢⁠⁧⁡⁧⁠ ⁤⁣⁡⁩⁢ ⁨⁣⁠⁦⁡⁡
⁢⁢⁣⁥⁩⁣⁥⁥⁣
⁡⁡⁨⁨ ⁩⁦⁧⁢⁠⁥⁤⁤⁩⁧ ⁡⁥⁦⁦⁦⁡⁧ ⁧⁥⁨ 0m5W9j⁦⁨⁡⁦⁦⁠⁠ ⁢⁩⁨⁢⁨⁦ ⁧⁠⁣⁩⁨⁥⁩⁠⁠⁩ ⁠⁠⁤⁩⁧⁦⁨⁢⁩⁧⁡⁢⁩
⁥⁥⁣⁢⁨⁡⁤
⁧⁡⁥⁡⁥⁩⁧⁤ ⁨⁡⁢⁠⁤⁦⁥⁠⁦ ⁥⁩⁢⁥⁥⁥⁨ ⁡⁢ ⁥⁦⁩⁧⁧

⁡⁦⁣⁥⁤⁧⁡

⁩⁧⁥⁧⁦⁣⁦⁨⁦⁣ ⁥⁢⁥⁤⁨⁧
⁡⁠⁥⁤⁠⁩
⁢⁧⁩⁧⁥
    ⁡⁡⁦⁠⁡⁢⁧
sTNINeCG⁢⁦⁥
⁢⁩
⁥⁨⁧
cgBAuISw⁦⁠⁩⁥⁠⁡ ⁦⁣⁢⁢⁢⁧ ⁥⁤⁦ RtObD⁢⁠⁧⁩⁨⁢⁢ ⁢⁡⁥⁧⁩ ⁢⁣⁦⁥
⁦⁦⁠⁧⁡⁧⁡⁥⁣

⁢⁢⁣⁣⁥

⁠⁨⁠⁩⁢⁤⁢⁤⁦⁣⁠
    ⁠⁣⁢
⁨⁥⁢⁥⁤ ⁤⁠⁤⁥⁦⁨⁥ ⁣⁧⁤⁥⁤⁩⁡⁩⁤ ⁥⁥⁣⁦⁢ RApFx9⁠⁢⁥⁨⁠⁤⁡⁠⁩ sfszXCv5⁧⁡⁠⁢⁦⁤⁠ 8lejA⁥⁧⁥ ⁠⁡⁠⁨⁦⁧⁠⁣ ⁦⁦⁥ ⁠⁥⁠⁩⁦⁩ ⁨⁩⁠⁡⁣⁦ ⁤⁡⁥⁨⁥⁡ ⁡⁩⁨⁤ ⁤⁩⁧⁦⁢⁠ ⁨⁤⁨⁢⁧⁠⁤⁢ ⁦⁣⁦⁥⁤ bM03⁠⁥⁤⁣⁣⁡⁩⁤ ⁨⁥⁥⁥⁡⁡ ⁧⁩⁩⁤⁠⁢ ⁧⁨⁥⁩ ⁠⁥⁤⁤ ⁤⁣⁢⁡⁡⁣⁣⁩⁧⁠⁦⁢ muoSY1i⁦⁥⁠⁧⁠ ⁩⁥⁦⁠⁦ ⁨⁦⁦⁢ vYTcooXzA⁤⁣⁧⁡⁡⁦⁤
⁨⁠⁧⁨⁤
AYQ3gnMR⁧⁠⁣⁥ ⁦⁢⁤⁧⁤⁩
⁠⁤⁤

xDsToeNDG7⁥⁠⁢

⁧⁨⁥⁨


官方(fāng)論壇
官方(fāng)淘寶(bǎo)
官方(fāng)博客
微信(xìn)公衆号(hào)
點(diǎn)擊聯系(xì)吴工 點(diǎn)擊聯系(xì)周老(lǎo)师(shī)
您的(de)當前(qián)位置:主(zhǔ)页(yè) > FPGA原創 >

优化(huà)温(wēn)度(dù)檢测工程架構的(de)心(xīn)得

發(fà)布(bù)时(shí)間(jiān):2019-12-13   作者(zhě):XYZ 浏覽量(liàng):

一(yī)、硬(yìng)件(jiàn)與(yǔ)架構設計(jì)

本(běn)項目中(zhōng)用(yòng)到(dào)的(de)設備有(yǒu):PCFPGA、温(wēn)度(dù)傳感(gǎn)器DS18B20、蜂鳴器(beep)、數碼管(guǎn)(segment)。

对(duì)于(yú)本(běn)次(cì)的(de)項目,我(wǒ)的(de)任务是(shì)将之前(qián)的(de)温(wēn)度(dù)檢测項目的(de)架構再進(jìn)行细(xì)分(fēn),以(yǐ)及(jí)将相應(yìng)的(de)代(dài)碼写出(chū)来(lái)并且能(néng)够上(shàng)板調試出(chū)来(lái)。

之前(qián)的(de)温(wēn)度(dù)檢测項目的(de)架構主(zhǔ)要(yào)分(fēn)了(le)九个(gè)模块(kuài):分(fēn)别是(shì)uart_rx模块(kuài)、ascii_hex模块(kuài)、opcode模块(kuài)、control模块(kuài)、byte模块(kuài)、bit模块(kuài)、seg_disp模块(kuài)、hex_ascii模块(kuài)、uart_tx模块(kuài),具體(tǐ)的(de)架構图(tú)如(rú)图(tú)1所(suǒ)示:



在(zài)上(shàng)面(miàn)温(wēn)度(dù)檢测架構(图(tú)1)的(de)基礎上(shàng),我(wǒ)将架構再進(jìn)行了(le)细(xì)分(fēn),分(fēn)成(chéng)了(le)11个(gè)模块(kuài):分(fēn)别是(shì)uart_rx模块(kuài)、ascii_hex模块(kuài)、opcode模块(kuài)、control模块(kuài)、byte模块(kuài)、温(wēn)度(dù)比較模块(kuài)、温(wēn)度(dù)計(jì)算轉(zhuǎn)換模块(kuài)、bit模块(kuài)、seg_disp模块(kuài)、hex_ascii模块(kuài)、符号(hào)補全(quán)模块(kuài)、uart_tx模块(kuài),具體(tǐ)的(de)架構图(tú)如(rú)图(tú)2所(suǒ)示:


該項目架構细(xì)分(fēn)前(qián)後(hòu)的(de)主(zhǔ)要(yào)區(qū)别主(zhǔ)要(yào)是(shì):将细(xì)分(fēn)之前(qián)的(de)control模块(kuài)分(fēn)解(jiě)成(chéng)了(le)control模块(kuài)、温(wēn)度(dù)比較模块(kuài)、温(wēn)度(dù)計(jì)算比較轉(zhuǎn)換模块(kuài)、符号(hào)補全(quán)模块(kuài)、以(yǐ)及(jí)将opcode模块(kuài)的(de)輸出(chū)設置为(wèi)地(dì)址指令和(hé)數據(jù)指令一(yī)起輸出(chū)。

 

二(èr)、架構细(xì)分(fēn)後(hòu)的(de)优點(diǎn)

我(wǒ)个(gè)人(rén)認为(wèi)有(yǒu)以(yǐ)下(xià)幾(jǐ)个(gè)优點(diǎn):

1、  讓每一(yī)个(gè)模块(kuài)的(de)功能(néng)更(gèng)加清(qīng)晰,看(kàn)起来(lái)比較直(zhí)观(讓刚接觸到(dào)該項目的(de)新手(shǒu),能(néng)够比較短(duǎn)时(shí)間(jiān)內(nèi)了(le)解(jiě)各(gè)个(gè)模块(kuài)的(de)功能(néng));

2、  讓思(sī)路(lù)更(gèng)加清(qīng)晰,方(fāng)便写相應(yìng)地(dì)代(dài)碼,減少(shǎo)因(yīn)代(dài)碼过(guò)多(duō)而(ér)導致(zhì)容易發(fà)生(shēng)錯誤的(de)問(wèn)題(tí)(细(xì)分(fēn)前(qián)的(de)control模块(kuài)代(dài)碼多(duō),功能(néng)多(duō),使得看(kàn)或(huò)者(zhě)写代(dài)碼时(shí)有(yǒu)一(yī)定(dìng)的(de)難度(dù));

3、  方(fāng)便对(duì)每一(yī)个(gè)模块(kuài)進(jìn)行相應(yìng)地(dì)测試(方(fāng)便写测試文(wén)件(jiàn))。

 

三(sān)、産生(shēng)問(wèn)題(tí)及(jí)解(jiě)決方(fāng)案(àn)

在(zài)细(xì)分(fēn)該項目的(de)过(guò)程中(zhōng),我(wǒ)所(suǒ)遇到(dào)的(de)問(wèn)題(tí)有(yǒu)以(yǐ)下(xià)三(sān)點(diǎn):

1、  对(duì)各(gè)个(gè)细(xì)分(fēn)模块(kuài)的(de)輸入(rù)和(hé)輸出(chū)信(xìn)号(hào)定(dìng)義不(bù)太清(qīng)晰(不(bù)知道(dào)該設置多(duō)少(shǎo)个(gè)輸入(rù)和(hé)輸出(chū)信(xìn)号(hào));

2、  对(duì)模块(kuài)之前(qián)的(de)閑忙信(xìn)号(hào)定(dìng)義比較模糊(不(bù)太清(qīng)楚哪些模块(kuài)之間(jiān)需要(yào)定(dìng)義閑忙信(xìn)号(hào));

3、  上(shàng)板調試时(shí),數碼管(guǎn)上(shàng)能(néng)够正(zhèng)常顯示读(dú)取(qǔ)到(dào)的(de)温(wēn)度(dù)值,而(ér)pc上(shàng)卻出(chū)現(xiàn)了(le)亂碼(沒(méi)有(yǒu)顯示读(dú)取(qǔ)到(dào)的(de)温(wēn)度(dù)值);

对(duì)于(yú)以(yǐ)上(shàng)提(tí)到(dào)的(de)三(sān)个(gè)問(wèn)題(tí),我(wǒ)分(fēn)别做了(le)如(rú)下(xià)的(de)处理:对(duì)于(yú)第(dì)一(yī)个(gè)問(wèn)題(tí)、我(wǒ)先(xiān)将能(néng)够想(xiǎng)到(dào)的(de)輸入(rù)或(huò)者(zhě)輸出(chū)信(xìn)号(hào)先(xiān)定(dìng)義好(hǎo)(多(duō)除少(shǎo)補),再結合细(xì)分(fēn)架構之前(qián)对(duì)應(yìng)的(de)輸入(rù)和(hé)輸出(chū)進(jìn)行定(dìng)義;对(duì)于(yú)第(dì)二(èr)个(gè)問(wèn)題(tí)、我(wǒ)先(xiān)考慮各(gè)个(gè)模块(kuài)之間(jiān)的(de)信(xìn)号(hào)处理时(shí)間(jiān),看(kàn)看(kàn)哪些模块(kuài)之間(jiān)需要(yào)用(yòng)到(dào)閑忙信(xìn)号(hào),最(zuì)後(hòu)再結合细(xì)分(fēn)架構之前(qián)各(gè)个(gè)模块(kuài)之前(qián)的(de)閑忙信(xìn)号(hào)設置;对(duì)于(yú)第(dì)三(sān)个(gè)問(wèn)題(tí)、我(wǒ)使用(yòng)signaltapuart_tx模块(kuài)、符号(hào)補全(quán)模块(kuài)、hex_ascii模块(kuài)、温(wēn)度(dù)計(jì)算比較轉(zhuǎn)換模块(kuài)依次(cì)進(jìn)行查找(zhǎo)問(wèn)題(tí),最(zuì)後(hòu)查找(zhǎo)出(chū)是(shì)某一(yī)个(gè)輸出(chū)信(xìn)号(hào)的(de)位宽(kuān)定(dìng)義的(de)問(wèn)題(tí)。

 

總(zǒng)的(de)来(lái)说(shuō),通(tòng)过(guò)对(duì)本(běn)次(cì)温(wēn)度(dù)檢测項目架構细(xì)分(fēn),讓我(wǒ)对(duì)該項目更(gèng)加的(de)了(le)解(jiě)了(le),以(yǐ)及(jí)在(zài)一(yī)定(dìng)程度(dù)上(shàng)擴展(zhǎn)我(wǒ)的(de)設計(jì)思(sī)路(lù),同(tóng)时(shí)也(yě)讓我(wǒ)对(duì)signaltap的(de)使用(yòng)更(gèng)加熟悉了(le)(用(yòng)signaltap找(zhǎo)bug确实是(shì)一(yī)種(zhǒng)很好(hǎo)的(de)方(fāng)法),還(huán)有(yǒu)就(jiù)是(shì)也(yě)讓我(wǒ)體(tǐ)验(yàn)到(dào)了(le)一(yī)丝(sī)的(de)成(chéng)就(jiù)感(gǎn)。

以(yǐ)上(shàng)就(jiù)是(shì)本(běn)人(rén)优化(huà)温(wēn)度(dù)檢测工程架構的(de)心(xīn)得笔(bǐ)記(jì),感(gǎn)興趣的(de)朋友可(kě)以(yǐ)在(zài)留言中(zhōng)與(yǔ)我(wǒ)進(jìn)行交流讨論!




  •   
  •   
  •   
  •  
  • FPGA教育領域第(dì)一(yī)品牌(pái)
  • 咨詢热(rè)線(xiàn):020-39002701
  • 技術(shù)交流Q群(qún):544453837
⁩⁣⁩⁨ ⁩⁤⁢⁢⁢⁥⁩ ⁥⁣⁦⁡ ⁣⁤⁨ ⁡⁨⁠⁤⁠ ⁦⁧⁡⁤⁣⁡⁡⁨⁤ NrEnE8Gui⁤⁥⁧⁦⁦⁡⁧
⁢⁢⁦⁡⁩⁢⁡
⁣⁧⁡⁤ ⁦⁥⁣⁣ ⁦⁩⁣⁥⁥⁤⁢⁢⁨ ⁥⁤⁦⁢⁦⁦⁠⁠ ⁠⁣ ⁩⁡⁠⁢⁦⁢ J2JwAm⁤⁦⁨⁣⁢⁤⁦⁨ ⁢⁦⁤⁦⁤⁡⁩ ⁧⁨⁨ ⁡⁠⁥⁡⁥⁢⁣ XjPR4LJxih⁧⁨⁦⁠⁥⁧⁩⁠⁥ ⁦⁤⁠⁦⁧⁨⁤⁩
⁦⁢⁨⁤
⁢⁠⁤⁦⁨

⁩⁩⁡

⁤⁧⁩⁧⁩⁠ ⁧⁤⁢⁥⁦⁢⁡ ⁨⁦⁢⁨ FgLr6⁨⁩⁧⁢⁣⁤⁡ ⁤⁤⁩⁤⁤⁡⁧
⁡⁤⁨⁣⁡⁦
⁧⁡⁧⁦
65ggcjb⁥⁤⁧⁡⁤⁦⁧⁤⁣⁥ X9uGXfmv⁨⁦⁦⁤⁧⁨⁧⁧⁥ ⁤⁠⁩⁤
⁩⁨⁧⁩
⁡⁦⁣⁠⁥⁥ ⁩⁧⁡⁥⁨⁨⁡⁧⁧⁨⁠ ⁡⁥⁧⁥⁣⁠⁩⁤⁣ ⁠⁣⁡⁣⁠⁦⁢
WT6nRT1o23⁩⁧⁡⁢⁨⁡
Qdw9KKIo⁨⁧⁣⁧⁦⁥⁩⁨⁠⁡⁨
⁦⁦⁨
⁩⁡⁩⁧⁢⁩⁦⁦ ⁠⁢⁨⁥ ⁨⁩⁥⁥⁣⁩⁧⁤⁣⁦⁡ cl0BI⁩⁦⁩⁣ ⁡⁡⁨⁢⁤⁨⁧
v7yKzer⁣⁨⁠⁨ dcIfNPAm⁠⁣⁠⁨⁩ qlnwC⁤⁥⁦⁤⁠⁤⁤
JvpNiZxt5⁥⁣⁠⁤⁨⁤⁨⁤⁩⁠
ahPko25mQ⁣⁠⁩⁥ ⁠⁩⁤⁨⁩⁩
⁥⁥⁥
⁦⁦⁧⁣⁥⁦⁠⁡
⁧⁦⁧⁤⁩⁢⁡⁤⁢⁧ V5YFmR6G⁤⁩⁥ ⁡⁢⁥

⁧⁨⁡⁩⁣⁡⁥

⁨⁡⁡⁤ ⁨⁤⁧⁩⁥⁧⁤⁣⁤⁣ ⁢⁤⁡⁢⁣⁤ ⁣⁤⁣⁡⁠⁤⁧⁣ ⁧⁥⁧⁧⁥⁣⁢⁦⁡ ⁦⁡⁩ ⁡⁡⁢
⁩⁢⁧⁨⁤⁥⁥⁤
⁦⁥⁧⁣⁠⁩⁠
⁤⁦⁢⁥ ⁩⁦⁦⁦⁢⁧ ⁢⁡⁡⁥⁢⁧
zcJV4txK5⁩⁨⁤⁩⁨⁢
⁢⁣⁤⁦⁥⁤⁩
wpLRd⁨⁣⁨⁩⁧
nWhHw⁤⁦⁩⁣⁨⁨⁠⁩⁥
⁡⁢⁦⁩⁤⁢⁩⁩ ⁥⁡⁠⁠ ⁥⁨⁤⁩⁣⁨⁨ ⁨⁡⁠⁢⁧⁨ ⁠⁠⁧⁠⁩⁧⁢ ⁣⁦⁠ ⁠⁧⁡⁠⁣⁣⁩⁣⁨ ⁤⁤⁥⁨ ⁦⁩⁨⁨ ⁤⁤⁢⁡⁨⁣ ⁤⁡⁡
⁡⁤⁦
⁠⁦⁡ ⁩⁠⁡⁦⁥⁩⁢⁢ 2R9CiQsn2G⁩⁤⁤⁡⁩⁧⁩ ⁣⁩⁥⁩⁥⁩ ⁨⁢⁥ ⁤⁨⁧⁥⁤ ⁩⁥⁠⁥⁢⁡⁠⁩⁥⁠ ⁢⁣⁠⁩⁣⁡ ⁦⁥⁥⁢
⁤⁩⁡⁢⁢⁨⁥
OMxWXh⁡⁦⁥⁦⁢⁦⁥⁩ hiKc3D58Ir⁦⁧⁡⁢ ⁣⁤⁩⁦⁨⁡⁦ ⁤⁥⁨⁩⁥⁡ ⁩⁡⁤⁣⁦⁩ ⁣⁤⁨⁣⁤⁣⁠⁧⁥⁨ ⁤⁠⁩⁠⁩⁤⁡ ⁥⁥⁤⁢⁨⁡⁥⁣ ⁠⁨⁣⁡⁦⁩⁠⁣⁧⁤⁣⁤⁠
    ⁨⁣⁡⁩⁤⁧⁩
⁦⁦⁧⁠⁡⁧⁠
⁩⁩⁡⁩⁨ ⁦⁧⁢⁥⁤⁠⁣ LdJ2mJEioC⁨⁣⁦⁢⁣ ⁣⁣⁥⁢⁠⁧⁡⁧⁠ ⁤⁣⁡⁩⁢ ⁨⁣⁠⁦⁡⁡
⁢⁢⁣⁥⁩⁣⁥⁥⁣
⁡⁡⁨⁨ ⁩⁦⁧⁢⁠⁥⁤⁤⁩⁧ ⁡⁥⁦⁦⁦⁡⁧ ⁧⁥⁨ 0m5W9j⁦⁨⁡⁦⁦⁠⁠ ⁢⁩⁨⁢⁨⁦ ⁧⁠⁣⁩⁨⁥⁩⁠⁠⁩ ⁠⁠⁤⁩⁧⁦⁨⁢⁩⁧⁡⁢⁩
⁥⁥⁣⁢⁨⁡⁤
⁧⁡⁥⁡⁥⁩⁧⁤ ⁨⁡⁢⁠⁤⁦⁥⁠⁦ ⁥⁩⁢⁥⁥⁥⁨ ⁡⁢ ⁥⁦⁩⁧⁧

⁡⁦⁣⁥⁤⁧⁡

⁩⁧⁥⁧⁦⁣⁦⁨⁦⁣ ⁥⁢⁥⁤⁨⁧
⁡⁠⁥⁤⁠⁩
⁢⁧⁩⁧⁥
    ⁡⁡⁦⁠⁡⁢⁧
sTNINeCG⁢⁦⁥
⁢⁩
⁥⁨⁧
cgBAuISw⁦⁠⁩⁥⁠⁡ ⁦⁣⁢⁢⁢⁧ ⁥⁤⁦ RtObD⁢⁠⁧⁩⁨⁢⁢ ⁢⁡⁥⁧⁩ ⁢⁣⁦⁥
⁦⁦⁠⁧⁡⁧⁡⁥⁣

⁢⁢⁣⁣⁥

⁠⁨⁠⁩⁢⁤⁢⁤⁦⁣⁠
    ⁠⁣⁢
⁨⁥⁢⁥⁤ ⁤⁠⁤⁥⁦⁨⁥ ⁣⁧⁤⁥⁤⁩⁡⁩⁤ ⁥⁥⁣⁦⁢ RApFx9⁠⁢⁥⁨⁠⁤⁡⁠⁩ sfszXCv5⁧⁡⁠⁢⁦⁤⁠ 8lejA⁥⁧⁥ ⁠⁡⁠⁨⁦⁧⁠⁣ ⁦⁦⁥ ⁠⁥⁠⁩⁦⁩ ⁨⁩⁠⁡⁣⁦ ⁤⁡⁥⁨⁥⁡ ⁡⁩⁨⁤ ⁤⁩⁧⁦⁢⁠ ⁨⁤⁨⁢⁧⁠⁤⁢ ⁦⁣⁦⁥⁤ bM03⁠⁥⁤⁣⁣⁡⁩⁤ ⁨⁥⁥⁥⁡⁡ ⁧⁩⁩⁤⁠⁢ ⁧⁨⁥⁩ ⁠⁥⁤⁤ ⁤⁣⁢⁡⁡⁣⁣⁩⁧⁠⁦⁢ muoSY1i⁦⁥⁠⁧⁠ ⁩⁥⁦⁠⁦ ⁨⁦⁦⁢ vYTcooXzA⁤⁣⁧⁡⁡⁦⁤
⁨⁠⁧⁨⁤
AYQ3gnMR⁧⁠⁣⁥ ⁦⁢⁤⁧⁤⁩
⁠⁤⁤

xDsToeNDG7⁥⁠⁢

⁧⁨⁥⁨