ProHoster > Blog > Rêveberî > Xerîdar TON (Tora Vekirî ya Telegram) û zimanê nû yê Pênc ji bo peymanên jîr ceribandin
Xerîdar TON (Tora Vekirî ya Telegram) û zimanê nû yê Pênc ji bo peymanên jîr ceribandin
Zêdetirî salek berê, di derbarê plansaziya peyamnêra Telegram de hate zanîn ku tora xwe ya nenavendî azad bike. Telegram Tora Vekirî. Dûv re belgeyek teknîkî ya berfireh peyda bû, ku tê îddîakirin ku ji hêla Nikolai Durov ve hatî nivîsandin û avahiya tora pêşerojê diyar kir. Ji bo kesên ku ew ji bîr kirine, ez pêşniyar dikim ku hûn vegotina min a vê belgeyê bixwînin (beş 1, beş 2; beşê sêyem, mixabin, hîn jî tozê di pêşnumayan de berhev dike).
Ji hingê ve, heya çend roj berê di derbarê rewşa pêşkeftina TON de nûçeyek girîng tunebû (di yek ji kanalên nefermî) lînka rûpelê xuya nebû https://test.ton.org/download.html, li ku derê ne:
◦ ton-test-liteclient-full.tar.xz - çavkaniyên xerîdarek sivik ji bo tora ceribandina TON;
◦ ton-lite-client-test1.config.json - pelê veavakirinê ji bo girêdana bi tora ceribandinê;
◦ BIXWÎNE - agahdariya di derbarê avakirin û destpêkirina xerîdar de;
◦ ÇAWA - talîmatên gav-bi-gav li ser afirandina peymanek biaqil bi karanîna xerîdar;
◦ ton.pdf - Belgeya nûvekirî (dîrok 2ê Adar, 2019) bi nêrînek teknîkî ya tora TON;
◦ tvm.pdf - Danasîna teknîkî ya TVM (Ton Virtual Machine, TON virtual machine);
◦ tblkch.pdf - Danasîna teknîkî ya bloka TON;
◦ fifthbase.pdf - Danasîna zimanê nû ya Fift, ku ji bo afirandina peymanên biaqil di TON de hatî çêkirin.
Ez dubare dikim, ji hêla Telegramê ve tu piştrastkirina fermî ya rûpel û van hemî belgeyan tune bû, lê qebareya van materyalan wan pir maqûl dike. Muwekîlê weşandî dest pê bikin li ser rîska xwe.
Avakirina muwekîlê testê
Pêşîn, em hewl bidin ku xerîdarek ceribandinê ava bikin û bimeşînin - bextewar, BIXWÎNE vê pêvajoya hêsan bi berfirehî vedibêje. Ez ê vê yekê bi karanîna macOS 10.14.5 wekî mînak bikim; Ez nikarim serkeftina avakirina li ser pergalên din piştrast bikim.
Daxistin û vekin arşîva çavkaniyê. Girîng e ku guhertoya herî dawî dakêşin ji ber ku lihevhatina paşverû di vê qonaxê de ne garantî ye.
Piştrast bikin ku guhertoyên herî dawî yên make, cmake (guhertoya 3.0.2 an mezintir), OpenSSL (tevî pelên sernavê C), g++ an clang li ser pergalê hatine saz kirin. Ne hewce bû ku ez tiştek saz bikim, her tişt di cih de li hev hat.
Ka em bihesibînin ku çavkanî di peldankek de têne vekêşandin ~/lite-client. Ji wê veqetandî, ji bo projeya berhevkirî peldankek vala biafirînin (mînak, ~/liteclient-build), û ji wê (cd ~/liteclient-build) bangî fermanan bikin:
Ger her tişt rast hatî çêkirin, divê hûn tiştek mîna vî bibînin:
Wekî ku em dibînin, çend ferman hene:
◦ help - vê navnîşa fermanan nîşan bide;
◦ quit - çûna der;
◦ time - dema niha li ser serverê nîşan bide;
◦ status - girêdan û rewşa databasa herêmî nîşan bide;
◦ last - Rewşa zincîra blokê nûve bikin (bloka paşîn dakêşin). Girîng e ku hûn vê fermanê berî her daxwazekê bimeşînin da ku hûn pê ewle bin ku hûn rewşa heyî ya torê dibînin.
◦ sendfile<filename> - pelek herêmî li tora TON barkirin. Bi vî rengî danûstendina bi torê re çêdibe - ji bo nimûne, afirandina peymanên nû yên jîr û daxwazên veguhastina drav di navbera hesaban de;
◦ getaccount<address> - niha nîşan bide (di dema ku ferman hate bicîh kirin) last) rewşa hesabê bi navnîşana diyarkirî;
◦ privkey<filename> - mifteya taybet ji pelek herêmî bar bikin.
Heke, dema ku xerîdar dest pê dike, hûn peldankek bi karanîna vebijarkê veguhezînin -D, wê hingê ew ê bloka paşîn a masterchain lê zêde bike:
Naha em dikarin ber bi tiştên balkêştir ve biçin - zimanê Fift fêr bibin, biceribînin ku peymanek jîr berhev bikin (mînak, berîka ceribandinê biafirînin), wê li torê bar bikin û biceribînin ku drav di navbera hesaban de veguhezînin.
Ziman Pênc
Ji belgeyê fifthbase.pdf hûn dikarin fêr bibin ku tîmê Telegram zimanek stackek nû afirandiye da ku peymanên biaqil biafirîne Fift (xuya ye ji jimare pêncem, dişibihe Forth, zimanek ku bi pêncemîn re pir hevpar e).
Belge pir hejmûn e, 87 rûpel e, û ez ê di çarçoveya vê gotarê de naveroka wê bi hûrgulî venebêjim (qet nebe ji ber ku min bixwe xwendina wê neqedandiye :). Ez ê li ser xalên sereke bisekinim û bi vî zimanî çend nimûneyên kodê bidim.
Di astek bingehîn de, hevoksaziya Fift pir hêsan e: koda wê ji wan pêk tê gotinên, bi gelemperî ji hêla valahiyan an veqetandina rêzan ve têne veqetandin (rewşa taybetî: hin peyvan li dû xwe veqetandek hewce nakin). Herçiyek gotina rêzikek hesas a tîpan e ku bi diyardeyekê re têkildar e biryardariyê (bi qasê, dema ku wergêr bi vê peyvê re rû bi rû bimîne divê çi bike). Ger pênaseya peyvê tune be, wergêr hewl dide wê wekî jimare parsek bike û bixe stêkê. Bi awayê, jimarên li vir - ji nişka ve - jimareyên 257-bit in, û qet perçe tune ne - bi rastî, ew tavilê vediguherin cotek jimaran, jimarvan û navdêrê perçeyek rasyonel pêk tînin.
Peyv mêl dikin ku bi nirxên li jorê stikê re têkilî daynin. Cûreyek peyvên cuda - pêşkîte - ne stikê, lê tîpên paşîn ên pelê çavkaniyê bikar tîne. Mînakî, bi vî rengî peyvên rêzikê têne bicîh kirin - karaktera quote (") peyveke pêşgir e ku li peyva paşîn (girtinê) digere, û rêzika di navbera wan de dixe ser stikê. Yek-liner bi heman rengî tevdigerin (//) û piralî (/*) şiroveyan.
Li vir hema hema tevahiya avahiya navxweyî ya ziman bi dawî dibe. Her tiştê din (tevlî avahiyên kontrolê) wekî peyvan têne pênase kirin (yan hundurîn, wekî karûbarên hejmarî û pênaseya peyvên nû; an jî di "pirtûkxaneya standard" de têne destnîşankirin. Fift.fif, ku di peldankê de ye crypto/fift di çavkaniyan de).
Bernameyek mînakek hêsan di Fift de:
{ dup =: x dup * =: y } : setxy
3 setxy x . y . x y + .
7 setxy x . y . x y + .
Rêza yekem peyva nû diyar dike setxy (bala pêşgir {, ku berî ya girtina blokek diafirîne } û pêşgir :, ku bi rastî peyvê diyar dike). setxy jimareyek ji jorê stikê digire, wê wekî gerdûnî pênase dike (an jî ji nû ve pênase dike). çikyayîx, û çargoşeya vê hejmarê wekî sabit y (Ji ber ku nirxên domdar dikarin ji nû ve werin pênase kirin, ez ê ji wan re guhêrbar bi nav bikim, lê ez di ziman de peymana navkirinê dişopînim).
Du rêzên din jimareyek danî ser stûyê û gazî kirin setxy, wê hingê nirxên domdar têne xuyang kirin x, y (Peyva ji bo derketinê tê bikaranîn .), her du domdar li ser stikê têne danîn, têne kurt kirin, û encam jî tê çap kirin. Di encamê de em ê bibînin:
3 9 12 ok
7 49 56 ok
(Rêza "ok" ji hêla wergêr ve tê çap kirin dema ku ew hilberandina xeta heyî di moda têketina înteraktîf de diqedîne)
Ev pelê tirsnak ji bo afirandina peymanek hişmend e - ew ê di pelê de were danîn new-wallet-query.boc piştî darvekirinê. Ji kerema xwe ji bîr mekin ku zimanekî din ê meclîsê li vir ji bo Makîneya Virtual TON tê bikar anîn (ez ê bi hûrgulî li ser nesekinim), rêwerzên ku dê li ser zincîra blokê were danîn.
Bi vî rengî, komker ji bo TVM-ê di Fift-ê de hatî nivîsandin - çavkaniyên vê berhevokê di pelê de ne crypto/fift/Asm.fif û di destpêka koda jorîn de têne girêdan.
Ez dikarim çi bibêjim, xuya ye Nikolai Durov tenê ji afirandina zimanên bernamesaziyê yên nû hez dike :)
Afirandina peymanek biaqil û bi TON re têkilî daynin
Ji ber vê yekê, em bihesibînin ku me muwekîlê TON û wergêra Pêncşemê wekî ku li jor hatî destnîşan kirin berhev kiriye û bi ziman re nas kiriye. Meriv çawa nuha peymanek biaqil biafirîne? Ev di dosyayê de hatiye diyarkirin ÇAWA, bi çavkaniyan ve girêdayî ye.
Hesabên li TON
Wekî ku min tê de diyar kir TON review, di vê torê de bêtir ji yek blokek heye - yek hevpar heye, bi navê. "zincîra sereke", û her weha hejmarek kêfî ya "zincîrên kar" ên din, ku bi hejmarek 32-bit têne nas kirin. Di zincîra masterê de nasnameyek -1 heye, ji bilî wê, zincîra xebatê ya "bingeh" bi nasnavê 0 jî dikare were bikar anîn. Her zincîra kar dikare konfigurasyona xwe hebe. Di hundurê de, her zincîra xebatê di nav zincîran de tê dabeş kirin, lê ev hûrguliyek pêkanînê ye ku ne hewce ye ku li ber çavan were girtin.
Di nav yek zincîra xebatê de, gelek hesabên ku nasnameyên xwe yên account_id hene têne hilanîn. Ji bo zincîra master û zincîra kar sifir, ew 256 bit dirêj in. Bi vî rengî, nasnavê hesabê, wek nimûne, bi vî rengî tête nivîsandin:
Ev forma "raw" e: pêşî nasnameya zincîra xebatê, dûv re kolonek, û nasnameya hesabê bi nîşana hexadecimal.
Wekî din, formek kurtkirî heye - jimareya zincîra xebatê û navnîşana hesabê di forma binary de têne kod kirin, kontrolek li wan tê zêdekirin, û ev hemî di Base64 de têne kod kirin:
Ef+BVndbeTJeXWLnQtm5bDC2UVpc0vH2TF2ksZPAPwcODSkb
Bi zanîna vê formata tomarê, em dikarin bi karanîna fermanê bi xerîdarek ceribandinê rewşa heyî ya hesabek daxwaz bikin
[ 3][t 2][1558746708.815218925][test-lite-client.cpp:631][!testnode] requesting account state for -1:8156775B79325E5D62E742D9B96C30B6515A5CD2F1F64C5DA4B193C03F070E0D
[ 3][t 2][1558746708.858564138][test-lite-client.cpp:652][!testnode] got account state for -1:8156775B79325E5D62E742D9B96C30B6515A5CD2F1F64C5DA4B193C03F070E0D with respect to blocks (-1,8000000000000000,72355):F566005749C1B97F18EDE013EBA7A054B9014961BC1AD91F475B9082919A2296:1BD5DE54333164025EE39D389ECE2E93DA2871DA616D488253953E52B50DC03F and (-1,8000000000000000,72355):F566005749C1B97F18EDE013EBA7A054B9014961BC1AD91F475B9082919A2296:1BD5DE54333164025EE39D389ECE2E93DA2871DA616D488253953E52B50DC03F
account state is (account
addr:(addr_std
anycast:nothing workchain_id:-1 address:x8156775B79325E5D62E742D9B96C30B6515A5CD2F1F64C5DA4B193C03F070E0D)
storage_stat:(storage_info
used:(storage_used
cells:(var_uint len:1 value:3)
bits:(var_uint len:2 value:539)
public_cells:(var_uint len:0 value:0)) last_paid:0
due_payment:nothing)
storage:(account_storage last_trans_lt:74208000003
balance:(currencies
grams:(nanograms
amount:(var_uint len:7 value:999928362430000))
other:(extra_currencies
dict:hme_empty))
state:(account_active
(
split_depth:nothing
special:nothing
code:(just
value:(raw@^Cell
x{}
x{FF0020DDA4F260D31F01ED44D0D31FD166BAF2A1F80001D307D4D1821804A817C80073FB0201FB00A4C8CB1FC9ED54}
))
data:(just
value:(raw@^Cell
x{}
x{0000000D}
))
library:hme_empty))))
x{CFF8156775B79325E5D62E742D9B96C30B6515A5CD2F1F64C5DA4B193C03F070E0D2068086C000000000000000451C90E00DC0E35B7DB5FB8C134_}
x{FF0020DDA4F260D31F01ED44D0D31FD166BAF2A1F80001D307D4D1821804A817C80073FB0201FB00A4C8CB1FC9ED54}
x{0000000D}
Em avahiya ku di DHT ya zincîra xebatê ya diyarkirî de hatî hilanîn dibînin. Ji bo nimûne, li zeviyê storage.balance bîlançoya hesabê heyî ye, li storage.state.code - koda peymana jîr, û di storage.state.data - Daneyên wê yên heyî. Ji kerema xwe bala xwe bidin ku hilanîna daneya TON - Hucre, hucre - mîna darê ye, her şaneyek dikare hem daneya xwe û hem jî hucreyên zarokan hebin. Ev di rêzên paşîn de wekî vekêşanê tê nîşandan.
Avakirina peymanek jîr
Naha em bi xwe avahiyek wusa biafirînin (bi navê BOC - çenteyê hucreyan) bikaranîna zimanê Pênc. Xwezî, hûn ne hewce ne ku hûn bixwe peymanek jîr binivîsin - di peldankê de crypto/block pelek ji arşîva çavkanî heye new-wallet.fif, ku dê alîkariya me bike ku walletek nû çêbikin. Werin em wê li peldanka bi muwekîlê berhevkirî re kopî bikin (~/liteclient-build, heke we rêwerzên jorîn şopand). Min naveroka wê li jor wekî mînakek kodê li ser Fift destnîşan kir.
Ev e <source-directory> divê bi riya çavkaniyên nepakkirî ve were guheztin (mixabin, sembola "~" li vir nayê bikar anîn, riya tevahî hewce ye). Li şûna bikaranîna key -I hûn dikarin guhêrbarek jîngehê diyar bikin FIFTPATH û vê rêyê têxe nav wê.
Ji ber ku me Pênc bi navê pelê dest pê kir new-wallet.fif, wê îcra bike û derkeve. Heke hûn navê pelê ji bîr nekin, hûn dikarin bi werger bi înteraktîf bilîzin.
Piştî darvekirinê, tiştek wusa divê di konsolê de were xuyang kirin:
StateInit: x{34_}
x{FF0020DDA4F260810200D71820D70B1FED44D0D31FD3FFD15112BAF2A122F901541044F910F2A2F80001D31F3120D74A96D307D402FB00DED1A4C8CB1FCBFFC9ED54}
x{0000000055375F730EDC2292E8CB15C42E8036EE9C25AA958EE002D2DE48A205E3A3426B}
new wallet address = -1 : 4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2
0f9PzVILj8yglrVn1zS-NSjtxr7QBfaTCp7JrBqnFPIR8nhZ
signing message: x{00000000}
External message for initialization is x{89FEE120E20C7E953E31546F64C23CD654002C1AA919ADD24DB12DDF85C6F3B58AE41198A28AD8DAF3B9588E7A629252BA3DB88F030D00BC1016110B2073359EAC3C13823C53245B65D056F2C070B940CDA09789585935C7ABA4D2AD4BED139281CFA1200000001_}
x{FF0020DDA4F260810200D71820D70B1FED44D0D31FD3FFD15112BAF2A122F901541044F910F2A2F80001D31F3120D74A96D307D402FB00DED1A4C8CB1FCBFFC9ED54}
x{0000000055375F730EDC2292E8CB15C42E8036EE9C25AA958EE002D2DE48A205E3A3426B}
B5EE9C724104030100000000D60002CF89FEE120E20C7E953E31546F64C23CD654002C1AA919ADD24DB12DDF85C6F3B58AE41198A28AD8DAF3B9588E7A629252BA3DB88F030D00BC1016110B2073359EAC3C13823C53245B65D056F2C070B940CDA09789585935C7ABA4D2AD4BED139281CFA1200000001001020084FF0020DDA4F260810200D71820D70B1FED44D0D31FD3FFD15112BAF2A122F901541044F910F2A2F80001D31F3120D74A96D307D402FB00DED1A4C8CB1FCBFFC9ED5400480000000055375F730EDC2292E8CB15C42E8036EE9C25AA958EE002D2DE48A205E3A3426B6290698B
(Saved to file new-wallet-query.boc)
Ev tê wê wateyê ku berîka bi ID -1:4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2 (an jî heman çi ye, 0f9PzVILj8yglrVn1zS-NSjtxr7QBfaTCp7JrBqnFPIR8nhZ) bi serkeftî hate afirandin. Koda têkildar dê di pelê de be new-wallet-query.boc, navnîşana wî tê de ye new-wallet.addr, û mifteya taybet tê de ye new-wallet.pk (hişyar bin - ji nû ve vekirina skrîptê dê van pelan binivîsîne).
Bê guman, tora TON hîna li ser vê walletê nizane; ew tenê di forma van pelan de tê hilanîn. Niha pêdivî ye ku ew li torê were barkirin. Lêbelê, pirsgirêk ev e ku ji bo afirandina peymanek biaqil hûn hewce ne ku komîsyonek bidin, û balansa hesabê we hîn jî sifir e.
Di moda xebatê de, ev pirsgirêk dê bi kirîna gramên li ser danûstendinê (an veguheztina ji berîka din) were çareser kirin. Welê, di moda ceribandinê ya heyî de, peymanek hişmend a taybetî hate afirandin, ku hûn dikarin ji 20 gramên wusa bixwazin.
Hilberîna daxwazek ji peymana biaqil a kesek din re
Em daxwazek ji peymanek biaqil dikin ku gramên bi vî rengî çep û rast belav dike. Di heman peldankê de crypto/block pelê bibînin testgiver.fif:
// "testgiver.addr" file>B 256 B>u@
0x8156775b79325e5d62e742d9b96c30b6515a5cd2f1f64c5da4b193c03f070e0d
dup constant wallet_addr ."Test giver address = " x. cr
0x4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2
constant dest_addr
-1 constant wc
0x00000011 constant seqno
1000000000 constant Gram
{ Gram swap */ } : Gram*/
6.666 Gram*/ constant amount
// b x --> b' ( serializes a Gram amount )
{ -1 { 1+ 2dup 8 * ufits } until
rot over 4 u, -rot 8 * u, } : Gram,
// create a message (NB: 01b00.., b = bounce)
<b b{010000100} s, wc 8 i, dest_addr 256 u, amount Gram, 0 9 64 32 + + 1+ 1+ u, "GIFT" $, b>
<b seqno 32 u, 1 8 u, swap ref, b>
dup ."enveloping message: " <s csr. cr
<b b{1000100} s, wc 8 i, wallet_addr 256 u, 0 Gram, b{00} s,
swap <s s, b>
dup ."resulting external message: " <s csr. cr
2 boc+>B dup Bx. cr
"wallet-query.boc" B>file
Em ê wê di peldanka bi xerîdar a berhevkirî re jî hilînin, lê em ê rêza pêncemîn rast bikin - berî rêzê "constant dest_addr". Ka em wê bi navnîşana berîka ku we berê afirandiye (temam, ne kurtkirî) biguhezînin. Ne hewce ye ku di destpêkê de "-1:" were nivîsandin, li şûna wê "0x" li destpêkê were nivîsandin.
Hûn dikarin rêzê jî biguherînin 6.666 Gram*/ constant amount - ev mîqdara bi gram e ku hûn daxwaz dikin (ji 20 ne zêdetir). Ger hûn jimarek tevahî diyar bikin jî, xala dehiyê bihêlin.
Di dawiyê de, hûn hewce ne ku rêzê rast bikin 0x00000011 constant seqno. Hejmara yekem li vir jimareya rêza heyî ye, ku di gramên jimareya hesabê de tê hilanîn. Ez dikarim ji ku bistînim? Wekî ku li jor hatî destnîşan kirin, xerîdar dest pê bikin û bimeşînin:
last
getaccount -1:8156775b79325e5d62e742d9b96c30b6515a5cd2f1f64c5da4b193c03f070e0d
Hejmara 0000000D (ya we dê mezintir be) ew jimareya rêzê ye ku divê tê de were guheztin. testgiver.fif.
Ew e, pelê hilînin û bişopînin (./crypto/fift testgiver.fif). Hilber dê pelek be wallet-query.boc. Ya ku pêk tê ev e peyam ji peymana hişmend a kesek din re - daxwazek "ewqas gram veguhezîne hesabek wusa û wusa."
Bi karanîna xerîdar, em wê li torê bar dikin:
> sendfile wallet-query.boc
[ 1][t 1][1558747399.456575155][test-lite-client.cpp:577][!testnode] sending query from file wallet-query.boc
[ 3][t 2][1558747399.500236034][test-lite-client.cpp:587][!query] external message status is 1
Ger hûn niha telefon bikin last, û dûv re dîsa rewşa hesabê ku me gram jê xwestiye bixwaze, wê hingê divê em bibînin ku hejmara rêza wê yek zêde bûye - ev tê vê wateyê ku wê ji hesabê me re drav şandiye.
Pêngava paşîn dimîne - koda berîka me dakêşin (balansa wê jixwe hatî nûve kirin, lê bêyî koda peymana hişmend em ê nikaribin wê birêve bibin). Em pêk tînin sendfile new-wallet-query.boc - û ew e, di tora TON-ê de berîka xweya we heye (tevî ku ew ji bo nuha tenê ceribandinek be).
Afirandina danûstandinên derketinê
Ji bo veguheztina drav ji bîlançoya hesabê hatî afirandin, pelek heye crypto/block/wallet.fif, ku di heman demê de pêdivî ye ku di peldanka bi muwekîlê berhevkirî de were danîn.
Mîna gavên berê, hûn hewce ne ku mîqdara ku hûn vediguhezînin, navnîşana wergir (dest_addr), û seqnoya berîka xwe biguhezînin (ew piştî destpêkirina berîka xwe wekî 1 ye û piştî her danûstendina derketinê 1-ê zêde dibe - hûn dikarin bi daxwaza rewşa hesabê xwe wê bibînin). Ji bo ceribandinan, hûn dikarin, mînakî, berîka min bikar bînin - 0x4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2.
Di destpêkê de (./crypto/fift wallet.fif) skrîpt dê navnîşana berîka we (ji cihê ku hûn veguhezînin) û mifteya wê ya taybet ji pelan bigire new-wallet.addr и new-wallet.pk, û peyama wergirtî dê were nivîsandin new-wallet-query.boc.
Mîna berê, ji bo ku rasterast danûstendinê pêk bînin, bang bikin sendfile new-wallet-query.boc li muwekîlê. Piştî vê yekê, ji bîr nekin ku hûn rewşa blokê nûve bikin (last) û kontrol bikin ku hevseng û seqnoya berîka me guheriye (getaccount <account_id>).
Ew hemî ye, naha em dikarin di TON-ê de peymanên biaqil biafirînin û daxwazan ji wan re bişînin. Wekî ku hûn dikarin bibînin, fonksiyona heyî jixwe têra xwe dike ku, mînakî, bi navgînek grafîkî re walletek hevaltir çêbike (lêbelê, tê çaverê kirin ku ew ê berê wekî beşek peyamberê peyda bibe).
Tenê bikarhênerên qeydkirî dikarin beşdarî anketê bibin. Têketinji kerema xwe.
Ma hûn dixwazin gotarên bi analîzên TON, TVM, Fift berdewam bikin?
Erê, ez li benda temamkirina rêze gotaran bi nêrînek giştî ya TON im
Erê, balkêş e ku meriv li ser zimanê pêncan bêtir bixwînin
Erê, ez dixwazim di derbarê TON Virtual Machine û berhevkarê wê de bêtir fêr bibim
Na, yek ji van ne balkêş e
39 bikarhêneran deng dan. 12 bikarhêner jî betal bûn.
Hûn li ser planên Telegram ji bo destpêkirina TON çi difikirin?
Hêviya min bi vê projeyê heye
Ez tenê pêşveçûna wê bi balkêşî dişopînim.
Ez bi şik û gumana serkeftina wê me.
Ez meyldar im ku vê însiyatîfê ji bo girseyên berfireh wekî têkçûn û nepêwist bibînim
47 bikarhêneran deng dan. 12 bikarhêner jî betal bûn.