аЯрЁБс>ўџ .ўџџџўџџџ+,-џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџn№>BjMFsŽХ(ѓ5mРžL aџ‰PNG  IHDRM\Vэа PLTE??џџџџџАkзtRNSџџзЪ AbKGDˆH cmPPJCmp0712OmЗЅЈIDATHЧm“;nф0 †Й*‚@GиjЪя#VЕЭ,vx aЪєWB $ž2ЄЖ<ћ ?J@§ЩЦД7;\1лW(d}…2žрŠГќиF[ƒќГЁX>ŸŒЖХŒа љmзVaўЫ-Jh>`d€Џа[Vј -2мЮ0пхыВЦXс!)ў§S нNc |RщДэpѓ;<\’D_4eŒи (ѕ"Ў4Р-“87XǘйS‹ ”žл3Z“m>C?›%b<Уе^шJg(=В9 ‹йцlY? ЙY‘3]њД>bЦ}ЬЬМO–‡й‘пЭ§ŽоŸрŠЦмhЖƒuќocЬœ§#goЃЩЂ­]Ÿу:d[Ы‚Г?m“ч[neёи;ЏрѓЖˆђztЫБa+жyEdУтK”н!;nєУё6hbI}žюбj ЬgэOp-3т .љvКЅзќ"ЪщЃtj‹Т@5˜`Šш7–я.2уыљfЙѕ;ш™@BўqN L*Рфcўѓ 9N8УРЕс7ЗxзщтBшO˜H9)Х5Ae)ЇшAЄ&%QoМ"н щ‰‡‘ГэTъœоф§˜вє‘šxVœq "˜tшГK›КД4=њь0еCа`Кш~Œ8™ъьфІJqršluщг?ƒЈWD__iъ&‡І!) IяЮзG•ю==Ј’WЮn№књИ’ю0ЈR„Ѓ`гjъВЎ}я­ ]ѕ!;M­§4ЎЦScc:РU 0ш4fаBƒоaМїЇT шn~“й“ж4>ЉРI МВћ=SыхЈ/ЧУiМwніц ёŠгV}дЎ яйЁпЇ)ьИ;ŸЊўz‰^‡§Іэ­юќIК1? IENDЎB`‚n№Ž;гŸEB_ўРа•7юЩNЉьџ‰PNG  IHDR€aљЎ<ЉgAMAБŽ|ћQ“ pHYsТТnаu>;IDATxкэЭo,Y–аo8,‡AЦсЂ$Ц –УEKS›‘ШЂx$ЫсЂz3RѓАШR`ИЉ[XŽШЪЂм#Zх‘и0bдoЫБщнЌ,Ъƒ„цѕ’ХˆŽlѕ@bTз§ЄЉxѓЂтr>юWDFІ§К ‰Щ*љй™ПИчž{ЮЙчоњWќќ рџзРЏ~•РJр+~њЋ ћЪ~5@)^‡ј0АСыW$^Пќщлё—"/х_~M~Y  K%Qщ‡Оp$DоСgПPuxдХ/"ъПё@+ЎЊЅn­jХѕ—Ых)hХЕ@еЏ№#ŠИігСвШѕE\Д…iш‡эоz иVІ,*!Ž-Xй•Єзкж’8іda;МЖCёuЕщт6aџйkЂ_ X™Њ5Y“ЪЈm‰Г_иZЁЎѓ6еMЂ+лtЭКбВшzЁ*tЈЫшVі#ЉXЇZЙŠЊ5§МШ5Оƒђh}ЃЋLЋдЗFњњ@ЎqгWn H-зRЁузV42АTа`ЯДЬtMР&Ѓ:П>АŒ5ЫpK=р€6ЋgАЅK<А зГЄЩыkЊq#A`ќš……dFEЏ ЌИ8C@ёН@ї<XІЬю$ыgJPАю3ќlЅрЌ’\(&Ьi=PфЊX#8+оЇЬЈ–€u†UШ_ ˆMKЋ8 lRnƒзR6`ю- aП!w ` їJєjIJ l:Иў} 7ы!`KЕ-ѓЧ[ї{ж#лМєK•>hЄЦ!Н д \бˆƒ@ьС&G \^лNQ(ь/т@†IЄ.:@.!ќlMcцтWaЌ4X№[`Fšш‘@Њ и!Pы6Ц0ЁaљH Z^E‹РЛЕA b`L=еVƒ?ˆЗF{?ЅFЌV‰іа›0шW` З™жLLё ˜­ш•! 5š+%U@@™›‰АLh&| МІТ…@QaіЪћgаˆ7дЛ„*V™bП—Т Ј\’ЛRЄз„&e`ю€8UЙ!џ АЄ’,*‘м’NІЊ h@I=_{ЊЌ§9б( Pћ’>…ёA@ЄЫќ1@ь˜яxо G:pb Xd†4и2ћф€-9Žd$Е› ЭР€7Ш–УаXYAЋЁ##c‹ДЛ 'ч‰FиDRrm•jђКэD mPEn| ћѕ, љ`иLl%Єz80Џ,Q•€™кРІн‹№~*tЃџTтэЫўU#ܘэ^у$k€ƒo іh™'”ьЋЛa ›—€ u 12‚ С6Eшц% кš7дБUя шРfы*–Ј§ˆУЁпьи EвCЙ(њхšzДь]kКњ<ФNfр-}=э_ iNА@•>DЃАЂпц4йw>Утд‘г^цыы81ЌУІTІчБŸŸкш! Ž i:”лЦФНєЎјТиMы€Ј3ЙыюЙ§7… Ќ•ЙUўво| {еƒWЦ`#_^Rкbрoж!/н{ *ЭPфЫJЛЄFюЩфPИ(-аZЧY_–€ v[<^Д™-)Ъ$Л@ŒŽ,ЩMH‚Ъз5˜тnШYta ж^u–,ЫMьу%<~ АђЂ№/•›žbCLwУМЈг:РZ`8ƒO•›ЁЭъPсші>FUвЂЙЩР ђиUЇf„XээьУCƒ@6М˜З;to%ŽEfЉ:aСБa6дœ><4d ы@ђO2%€bTНКр—J—фІ d!Рj3‚з1ј0Ѕ ˆ  Б˜ЌТбˆn6ќЊ4œ`dЃЦдSFњUДˆЉ‚&і6Х@Шs-raэ6u)vЉвЖсЄ0qœU@( гp}›Мвшь}pHЬTЙDуИXDѕСІ yэmV ДюьјЊЎ а*JБ™їхFєџhЁ`WKgЂ^`ШBЅ3MѓоPьf}Йщa`Жщ”"}эЏaˆГŸk2]^šnaЁyв—›ЊжфwЄ ъЬˆчy[+Љ% l„ЊLћrгBеjЊIТЪK ,,>;№P33†P5вЮ"жŠьŠи‰ƒ€'ђ%ћѓTUЃжK“&{)ИmHEЛХ}_ О‘Ћ Rз Т0U“HбвХгX6ƒ^іэ›А,иєыћXšO“ˆ]f/* X­ Ж6аFH}k.І1[Š3нФиЂдpяaУл›м„АŸsmаЫP„€ЛхјMŠ9 ЃЉивЕыgœFЇК'ˆ!Фд ~™f5Ч|яšяa—aД0‡шЕю b„тЩд[„ЖK­№o PеШ­Vd_/UЮН2aУтŠу7~хІ‚1b„4Н3ЪЭ3HwХ/PѓЎ–h№9н>ђ@mf34т'ГШпpb8€Нуњ(ливКŽЪію‡ѓэм—A6аq%+ˆJ\Xq˜ЙH~f.К Ымьœ ŠPх"7@W‘7—f5ŽEЛР9кўВgŠ@”јVŠ\ѕ€Sg{и2SяАw%;*юк T@у—L07+0"Л’iіУќ†9&&B•ї@єв4Yђб ^„пb›!Z ЌB йdxO†вжТЧlлФЯєІ]kqBСмЋДЃb`Љ-&=qсІM_ЬŽ/ЯyуIGВрЇ<Х%lФiw  “чуСAЎЁFЈ’TFџИ2'VВ[—зX!TкЁЮ€1z1Ј4 7ZЅмК+qпђBnе*0Amˆт_uMюЕ|И@ TЈ3T<.BРYw9Е щ4*ЖчTб&ƒРŒТ–%iФА„u`Вu€Ец@gЁUо&5}3Y М š—x^`YдфZ MИˆ@ћ—s њ1РЩP –C‰+˜ZNB``іz`ќR 7,‡€%;cЕ8ЮЕШ‚ё>;Ѕ0KВ Kф ‚=МёГ”`юegŠ=Јмё0fЎQoхJш€wAQRуй#0_ЖvŒ‹˜L臈-5ЉН`Јx еB"YМяЩГ—У@>ЌчЫtM•C`b‚ї ЦžжH !P@еЂD—ЙЦžЊЬфrTyП„z5Aигё2FлP еРКз†Љ!`бplЋвn’sЅђРТ_™ВТ%б™,eQslk Пcў„РЦPюR(™­Й ,бФš‚Џwт^ѕ0PюS<™члj8Сlу›ўЊgиЫo _C йЅОJы…MйщE†У[1)ђ>$inГžњ@_Тќcd‹˜dУЯ{pJ3„ŒыЅ*7[=р ™_Ё‰hЏ…С3Ѕ9l”АŽ $`M@?іœытМЬц§ъ*зQк^гTЏƒБч\ ќ˜TЕВЪ*тзfœe– sлЬЌЊ+6uМ n„Ы-œА—щ%`…@гЭ*^ц[ ЮѕW4Мnœmы€’цBшц\џЏ6щэ$UХзСћМ ’‘8лжiјHq SXёЌtQŒ4Œl?—šзъšиf œ№ъ 8ЬЛЊFwЂŽ35?С@і‰ ы`FзfБ”ь†1Ћї‚hЁoжgеВI e+XИъƒ03-љСl€hоЖч,sђ8H‘ЪЗќћ‰ЫўЬ f LиА*Ѓ•@ђžф;інЈq@TѕuF4aЊ˜y˜?Ї™7qй[уB‹Гq-c И>mxыmilЖ{ulЧя[ ;Йѓї АޘQг,?mУZCm0[+Іd* TЭўљ•Љr)§`Ж.’тO‘Ю;ўeCЋn2C`Нo­p@Јё2SЅ˜ЩЮМ†З(иьX xс…j ш€И „Y™Г sжђт§.PF5ьмъ–в%х{hіІn€є[M.‚<Ўz@ @UщГІxŽї͘‚ЂtвDjђх^`’"АТшЧ(C /П FМuъЦйеyI&пчЂ^f<К,А.юЁx9@8wъЦ'fn`Ыт6jђ˜"АрбU9 Ž}pН^bf”Яj‡h–8руљ№H˜х%ЋL РоЏ)~ c8ЛгЮPрyD{@rg~yр™иЭЁ@іN&†™шOЭК"!Kˆў}…їЕ/aM@Т<г‘ћРŸ”<2 Xu–xХРHлЖ€сУ@ ^І VнИ(ыЩs(Жс]U„@p8Ўоіт€ш•гB7$СDІџ2)і|Ўђыa`nлтSrѓ №frkŒ0ЫЫW’УЛf ˜Ђ–Š…б!МŠ™ЧŽыюш}u€$bм+8RxЛ ,)TРз5тG?.oЫœ6LXuc€ˆ’"љ†ЭžЛ6 ЇЫkŠт‰UьК9?М*ЎЉf…И§š‚hзd†#0№СЬ@`+єuŸОО8Н,ИYиXБѓ,Œ4T ё} ,–€`M aК% љ^З[8lЇ!ц}Иб[<мzкЪЋ ƒReRšb}Г{ ЂO:@њYBЩiUuЁчї] Ў@т‡2х‚€оas‚VCз` gЫ@шŽvPР9Q#NJ#§ЦIЉMјS†@...›““pVQXяЃF,GТЃ†п˜hqh,nквB€кNLЈЙЭлU#йїЦ.–€(ўX/)<”ўo„y{Вкњџ*КpВЊp˜ыЉхаьIџ ›jšwBфt27kч 7Ює„В`XfіНфGЇ‰šХ c1амXхœ™SѕEотз›S Tз?:С‹TdтdЕП:РкdQ№ВœšqЇШЋљ/ё-6м и„@ѓНкфy№ЄŒУХ$Ц DЅEБ–Ци2 ДъeAM8•lВЈr,›mѓ;ХZšмє,љ{6-oзЖ‰Б'№ЫИ4„C#uM'їІЋ€™md~}‘”)Чоb˜я)u%vIyКю`.Њ.АIn P™ TXƒŽЅЭ=oГf7^7ЉЉƒ?PKaзqЈš.Аb ињЅЖ!0i23Pэу.b @Tђ(ј!ƒddeР,жh{­šДqc|ы5пд%пZY NЛ@•нdѕјla;OyššyрŒgjLкݘVy8ЏЊ”п2;wzР‰&јF,fЋ€<&+Lq•8хЈєПN[1rНвІВ`•ўвNЎS56ž3A[ОъIѓжЙ]ћ›„Р&ГРњ=L`Ы мѓ~ДкeэIІXВYрї˜]зуи$c№Т1љ…‚=€3(i/ю y%FЮ™jђˆ­А&дД‰Љ>Мu#9\х07сT;›М:#чЈOc3N]и1…ы•Ox.ь)Ис'&u(іœяЃ.ccЋљрЬ‘ШН9%yЛoL5mіжЬIої`хi“Zh5Як20`ŒНЯJэ–њ>XfТљш•иЁ€Y);БEж#ёР&kshФќЮхъaœЯ,Х1ЮЕ_B@ ЭЃ#`Ъg m tОюl6j•uчДk*sMRЛфFR7ЪИЙ™вMу;+зU.l7ЫˆЄЗN-А v]“Йф-Ф›бvьвaKБWX!‘МќЏ7хєAТ†ЪЈh#Й[ЊЭHмUdUxc~G/о: щї":Ќ /јНЬuь“ЎlЦЪ–~„ЦZXынЪЙ#ˆЃЉё}Иг\ё€1ФуlІЪЭVш4YрЙiЖъћuфd| ;пš“I‰лSва E9jbџюЈ1РИ ГЂкп~у.ЂNБ]яЕ‰bD†€з<iQЩмйg_Чдnј“@8БІŒAtЕHXРЪ/ЇMК@*ЯЂЬњ@Й фИJ3Зо атлlЎ\лV&А+Дг›СZIU а{IЈ;Ы ,жr'^Я‘Є@1і†;іпmє2Ъ{‰ZЬo’hSvМ­stэœНJЗМіРЏЎ'rbF * 4Rџв‡и› CnСјЙЕЦщчИГ2bё3@^аv‹ Ушd}œ”YАv —>‡њVУЄЄ/§BJBСŒє‰k‚X”Eрn=№Р“,9')XЁ" Н [гs,ж#нiуМЬЧ4xрŒ6U\л6EЭфт$ЛЇQо&”Рф€)jзЈЌhѕgZњЛŽщю~Ј8l]1И; Icѓ@UрT6Зp…ЦFKаmЙ—(кўТKЅЕ6 ,ТЅ0‚ЁnА,|sЫЦ웈ДЫ2ГРжL‹иЄ •Хм­eИП%:›{psd˜5&EпЏЕ m˜Дžб6эўVb'N~Ѓр§ EЌ3–› 5 6 @7f…БŠэсAъ’мl!9з`ЉœЭ‰ ЉgMTеЬ-J“JQždnё=|akРхфU ѓёТХЛ+3ЯmцѕпиE{WЕЛьUvSЇъ}Зg"mВ›+‘w€œо•ХŽ@J–kйеdіAЅМ|№/­јј\“&в l T9ZЗ`h‡Л0ёYŒХв&Бy9ЮМ&ІўJљЧ3,(ƒqЂ;ЛэK”ЮНЂЗhv‰§йbШч}—€ЄнnУїŠQкю$ћ )Ф‰ш$pыт*Ц­VХœa^л˜у+нЦ<4-ўшgАС­цH%МябгРё(ƒмНLOqЕ‚ІЕtXјвчf§М*ЏQјлЈяЃ)™UуgA‚Щ$<ЇмкoXОhЅNНШ0’LќЗX‘ймж!№•`УЗIќЁJ•тŒЗа†РŒ™c”ƒ@>џ ЃПчAT5пхКDС–1Š\l :9LmŸ`тюdцЖМлт›(;ЩраЃœK@ЗУ™Є&лHЮьћ2ЦPЌHz)Їп †\• ЭjЭKяm&_sŠ(Шb#ЦcыЃТ„€— _„ЙЅ&UЧsнйЙНА FтBŒGv@ЃFрNƒ_oЯ;Р4Nи€ ѓ›>041Ѓ}sјЩG)6Шюk\чgvа: ­щљиz#оГ[ЦЁ@ЧлЙi‹ne tЎ ЦгјŽ3Ф% Fф|ZСс9й1{Ёл4УЅ“] t3Ђ[?rРFDш’šoАJ p7х @У@wюІ5ЧVм…н—f€SrEб3З>5gМD\хгиь њƒМн/ФжVТР-ы>WEDРињЋX}‡€Д#LˆЋxТI;yЛw%вObjэ&ЕSь0бци1у˜щъCšƒЅ@1W‘фМŠЂС}gŸ њД>nжYSY |abє:ЦХy‰ E“ЈНlЮКІОXJ”ЄK-prЯ…=ЪmD+З0йЉTeвDъkkвUhY_жgОф9у'xB;ƒ$(хBхЦ Yд­ыC,,А&ƒгукдІ<"р!hХt&фїKfІыюю­v0GRlл 2wyнЫTЙM|…З§<еэІˆфЪxdЗ‰Э_МВЁ ŒcЫrђ\Eч[™pzкЋ‰ГKJьfИЃ<ƒVхЦNМН[хдђˆlвпœ’Z qyL"€Ф~dVЙє'qfP'TЎЪІM-ц’gчЌIi? )х|U{‚яў(А!1QєY­mфЋ˜€Зц РxІ мLDАnUѓ”ЫРTw_ ŒКЩ-›Ш%Š@Щчі0cрV*‚м%lтBшбйš‹м[оё€э#xGeQ"АнLЫ`НЂ ­_BуbK™GTД[Š’€@€Džд1MŒидЭf63Р–rЁ`цzЪ'œТXС!ЗЩ&UWт82veН™i'\9ЯтШіЃнž0QХ$b`чtЦД>%љч­| ЧMн0гЈ„ЙP•K@й;1GЯLО I ў“MЋpС%ёР;XђR—ТїчdЋ‹ЏЌ c ЬЏфbFЫ@ ђЎЪvЙ?З#щЖ,ЬdK:мбD;УhА•яЂ(`RздЙ [BуЯ›Dlѓ[д_f‹ёўљ§ЎфИG‰ГгЯп›9 ~ГЩ`цид/јЈйч%˜X…iіжLБfЏL/sВBKТијиь ќQŸм0EРŒ€c™‡РœФЄЭXЃ••њNСw_р-ыЫи sQSœшЏq*Ж+РEKПєFlА!юi§МVaЬидЖG”к3жHoЃR{I [s8иK8вбfŸСu7ї•OъѓкФњЭ9PЊ—hžЪŒfSŠzŠ}px"jЮ&ћ ўI_ШмОа„Р;'5C„* е%meb ц@ЃзцUБЩnSжЛ2ѓnsгЋr,K(фŠи')їbiіšˆ\uРш‰žмєЊœ›*Q>ЈdЇX`J kWЗ[оsJйО…:D|™Ь{@е‚}љёnNЇ‹˜Fй9oTср<ЗЦЪЬШac€/ЯСд§\џїнSвфFƒжѓBяЩ*?/сЬгa o†>:EгѓГ`…+р"Г7 l,ƒўєЧoЉєЂQЋ€Њ™=‘Ф3ЃЦm2МЦ"ЋAo§H =Й X5И1Гч I Ф^ОСtc'ф З>hј.—ёu‡У]lСc:Kp›Z‰Jј}пк-Фц Ъ_ˆD­Њ&—cцHžЁ’Z`JJ$lѓtјйИрCžќц =wŠ™ѕ–€šИN)т*kОu3”„iњ*зЭіg,6Є€#T{С(б §оŒЋTэЫ§c’$ИŸRш`#œa{@юeљЮгіАИ/у€CUFеНСѓŒƒ0Дй u[X›й^ЯZV—% KФЛќ‡uˆ'є€t;Л*‰LžФ+€g‚ТiЉноkі>2АВ@$ју3y8Ќ'e.ќќoE—B—€Dтf;о ЪЖŠeр‹ЙОQ›!№% ‡а§*гЋŠџpNЛHDєtФ2№'b7H Єkrу н7Љ‘še ХЪЛ@ ъјз.60/5ек[GgќЎхИєmлdТЕксд6lН+ <СТyƒо-x§№w5Оітa b b/йМшT‘/] нЮIЦБчєзBЛ№ь2Аb ьƒmё[шчќewдt“Яš†žЩTT‹cSByF%”'F5ž9#-зСЂяPчѕSЖтDЋ7№4nGrМ—ˆ&‘MŒРзAК,К@4Ѕd]Ÿа7_в&žМвЈкfr/™€nЛaљо‰ЌИ@сD‰/ƒЦС­„œT%вхqR№ќКЇTat~еЛ:<Т”аi‘3ИwР:­‹‰L'zк$ѓ&“ЇЉŽsќЏвЬжгР$cно PSЮT2mr,с[hG‹ђ‰ЦѓУжЭљ№кqcб@ g?KR­Цп#0cЗ)ZžЦ] юД! ›аЏ'ˆmXЬЊПРtŽ–qЦ7ЅГTЂ&zоsЎчL-№ЎЪ xлwаЎДpƒРV˜хЩb0Џ wNIЋ №bГ4RЄHЊq-ŸŽхGJ5|dњOvNА'SћE™?W0)ўf=EРЃEЫкХЏђ)1†\ЖNrьnPйЗMЖР“ћE{T$Њˆе9АуЇTЂwрНY I<Ц#k7NsZ!iђi“UшO P$U1­pR‹лЎ9'Л@)MЄВњjуєэš•4пPрpх‚ЧL3гF~>]WBКA#ђgѕСЈМuє{zћЭпш[лQ_7wŸ“fЋJИ Ё:qы№lk|†ъzшЕy@ЩЩзј‚bм0ы5Oђц`ф№М*Х№kk‡ќG0кЉ }ъЯ:Иh/зуMjУJ„R€8]е[ЇE›Е и‹йЧ+€‘ЖтsZƒv@^ЃїЫp˜^o2НРйє“U@Б)О]каЇ~јх`гы‡иЅњш№rMЖvі†gC•П7Е@Jišє€иЭЏ#№єj,Ђ-1bР†ˆŸмƒŠYрРнђЮ<+ZqхJH1ђiˆQop„@рРD…УMl&RER%тФяЋqбˆ+з†Д :мкУ*Ÿ~чЎм@1Мˆ`ж“лБа ИSN №віr@RAYT‡Ї' љ_^юˆГQ$Ю@ј№ъUY оŸмtKHй LђLЋггЋEѕ‘‚sгпнКzGKв.ОЁ7кЅЧpbЌB/УьxšЗяп{рйї pїЂrчН­ЋяМ”gЄхХѕЕbAwЖ—ЗŽ`ђ<ЬnЃмФД"‚БtЭЗплНњ№О<Ыj!l„ыю+Ÿxрv;З.œќ№ўЃ§ё–82uц\–ёэіќ№ЊxQђ] p.E˜ђ9шд"А§№ўnq#Nрoё9]њэфА‰яВлУТЯпœмЙ D•Ё8к‹РCЈдн“Л]qšЈ|ТР$jВч]  рШ39™RpЏЂZШУУќе ~*`Щ'2ЮГлЬ'U№#№˜WŸ.8ЃžuHЏУЭBПxўу?н+ткcоцЗOлБДzзZСG€јъЩЈHT8Ч™gœwъx 8%IwMѓžжЯŸм?щK8іРєVїіЦ…еОY"ѕХ‘‰пRЊ›…г^etšЦ‹›Š€|q„@™ЬUtћщї­‘=.hIЕОˆњ@ЮJ”ц{Iѕжѕ­;@bs–ЬЪшіњо~ёмƒ,S№йXЙ-aђѓшњFiх€ћбэЭb#њ] z'РnМђF6І"JИsј&LПŸŠ“Hэ:рб&јц1ъАmo РёЈ№зp;Й і2м€Лб')LєЧQЕхдБиˆ~€›1”pTј%г% ДЁ<‰6у}‚р&3Юуp&\˜Pї$ш›кph›иЏ`5Švтэ-Ц4н9 M#0х‰iДwувY$F„*РэxZ‚Š‹#SТБsv’ОэБFьнŽBчЃЊИ’м'рN<§XTw‹ђв7cyœ?ХЪїкѓРvX№€{‰иоŠёXНBЕЙмI$Ьzы5PlЙ^k:ЏЈ—ЁSЖ7тŸъџђѕ ~сЁs&†_0ЕРрhSшe(ЫЕЎ§Jwц&№{ ™GПБiњњІgJю “ПOЛмt).HЋ№Юœnœcw И}™уО0“€Yn€а~рЄгъ Y* ™T№ ЮAЬ;ЫkUЕUлЉ6Ÿ­Ђ И “YtЛ Є˜ƒЦеЋюУЄЪqН,ф_2УчrAЧ1wЪ‚Яќ0=лœBЄ CчQŒЋддФfСћИТC‡&ШgO‰фїё+yb”‚`'rФ <гŸЯMј#i•ŽЅЗЌп“уdњћќ$lЃ2‹ШЉвФ1CNИУФѓрXpђ *Э/UпAYлс,б}Во8ляГ` žџ1еІNrнИƒЫ9}лќn№P ё.._›c%Ec­%NQК†ЯЦG\@дЭeЬ†'’q{К пlW\`чM• w“,кGXР”г•0%NїnсI)ИЧІКH x з&3h4x:•80@ЛMЖЄючMжБйB„‰ŸДйБСЋГ›WфќXрјіќu\zђvЊ1’ s6‡1П №+LAъьps{ћЪїŽ,PегupТЎіж +Г›еМЊ гІ8ќсg(b!Э•8_реЉлsУзt…Яь„1YнтЉО"›џ,Ћь€яWlВе!P‡@UјЇ_тFОIЇ‘чwМ1ьоžЊё‚“ЦB ьsї`aŒ"/ЪgяТœ„лB…ї‚Њѓ9GnУ*wO§­sЗаŽР{мбYŠ+{Д.Ѕ=$Мƒ€5>дЈ2@ЛAМ{.1mbсEvA§чВ<ЄЄ1Зmч“ъ™N PšЊMћР$+CeГRьp•JбІl^в.3SэИ„ј,jмН€1sœёФЉИѓ&Rщs~ўž€Ю4тбТЧdbТ4Ы@ ŸэКЕSmЮŸХг7дIvЧћЬЯtsjŽћKњ@211ЗЏǘ}я8`сКѓ8ЭgД+gHsœНГг…“ЇŒЧ АМЋ ˜˜h\?Œхa>С™"/MЏ4= нy'xРOюёёЫХФ<`ДьЏ"Мgˆ{cБїOAŸX /гЭjfЅђ;<ИЂzЂюМ7лњ†`ф Й0iož$вŠMёчПSrЇ,xЩGс vZш‚~v;€bZЉD3q7Y$ЅuMЊ цS5‰8ИрёxЦЕц ћ@Лg Зсс<‰ˆч7в•зЏZж›B(7C‚"Ѓ<‡ўсљќ7LД)ЯšY9ЙО•{&ГАѕк ;Qe€ЄWЩЗБЪЦYпЊдб8NnчЊ )JЎjБѓѓ(˜БелђŒР„ьЮz *>ПГћЯYУF” )ЯЗ7увЬсšŸ=Ѕƒј™Н$ЃкPz3JїYРЙ{јw эo‘bџ‹Ф<ь!Ђ›N„/м–"FЙ‚OЎ'цœФxI‡СЦ<т Š5ки‚ЊM ђdТo€uНѓљи”,5x‚4к“авKТhy3}Qѓ™Nz •4œР1‡ьITИRŽфqLжUЎyJ†–ѕ>|TxМ^ЪYsZoЌY8ЬTю;)FеyB-”iž1Њ|y4ЖТќб„-ЊY‹v>Щл )bХGу*MёЈЮTГЪPљРуNp6†auл"въ €;‡рЛ:bє>мВMLN2)хƒS8ЃшЮŽй3[дљоЙШш”йY›џ‘ѕtqѓ4K,’вг&Ћ% Є4Л ЗhвЃZЄŸцFd­сƒOKуЗаШ АŒ7*Vt$БнШ ѓОЈEdшИЈ7БљмHw.@ы: л;)zиKЬ•&СaЇР?’[ЫsЪЃ(_ ЬMеЩяЅАЉqTћф7Еў“”ŽƒŒ(ђeMоЬ{=[ЇаБ@ИСП?Нр‰VЙДОHА<с“b‹v›gлœoјЧ'$b/KkKpчрLp%єэ?ђ<іЯ36ёсЗ_žффZM0yу•жЯЁAЗGЈЬbгЄ г^Ы@zD!Ж-EСKЁЋKtž=G™Т™­Ž§M‹Ј2{\ж mЎрУБЌ…о#›5‘ЖіЭоxGf‹ћЅ›žХоІцРu‘Р†Ђ,лqkN{л„їaфЦ|,# ‡џŽ#Д XВ№ §ј™ІгЕ-№R; Qaa мq|ЃсЎ№Й!d…зB‘ПлŠƒ„Я]‚/-ижЬ˜˜цZк0ТЂЁФ4x$хulrœ;„€РсЏ… 2hм§9ћЅМ”†Ь3[eѓ0LЏp^ГE`€ЈmўYC *EћQщм&|`ЦŠ˜šwnŽA+Q0 OЎ7љз’|л˜kчсСKИ ч—ˆтF1wƒ G“уУРrhZvТэтѓyžн”ЫнIТ"ГLЙя+ѓpž8”Р‡F1{\0%cнAЈ„+ЄkŸ/Э9CebЃS]ўgьFu"bф ЎxдЏн§Э5—‰qЫ л%Ю1Zˆђ.юsІУР8V‰ P Z("ЊВ<ыГ…Kq[кЇa№ЇъдЊwTД…$`ХЇ1ЗvЛ4%*ЎPЎCр„Ккє6ОWPёУNўЇѕєЫшš4E1 Dёt1§&т)6>[:хм<Л=uЯЮJfК+з!%[КgaРF” •pT№y2IiZЄ”ЂКˆт"S+T”ЖЪЮђxдК0@ќф EP*н•ыXї\‰РŒќ"ФЃїYЉвщЪнpgLБЪюrK•Oѕ ]—#јЈЕ5Ќ=1 xЇ2w ‡ ФнЈGмП‹ўQЦ.Мv—ЇУЅqT~Y`8RЫЕxё‡`Їпi{іyХOy1[S=1ь'˜5ШЫNЁжЬG-ƒ+Њ{цмВв+L†ъЕ ,XХќ {,’1к#нlˆ3<ЈXЦї31EOj:@˜(ŸŸmžOЩеWќє$qЖ›bбш(§}ЖBНЇЧw€`&нё3˜)їЙ†~.,0жкЎEtЊ“yК№]O ;@ь{ђ–EЦ‡RЊѕйч PБ)ИёZsˆвsнКПƒ ЊKZKс'ЉˆЗ-2Ё‘LЅЦ„3Qрлўi!4oНЧƒ`y‚@ЩgЎ‚{'ђƒЌJЌMШ јКŸ%ёєф9˜sю+Ћ4 hD ѕєБi3>0рК'† F“BАЋ8Š€ілhи€G> 9ШX!YчЉт}`ЩЯ„ЗЇ{†_eуЏєŒ•i3.iоyz( В1h§ИCŽЦrТž`Є€Ц„оŸоррNLMH™6Йпrd|Г№Јр% ЩтU‰­‡8`az@žЅџ-к#Фk€цЬR,AAЈђЗЯ„0Ч8†@OжЖ†Jš8_еаYE˜’lN%ѓ›fЙ'|вћ* >щХt]ƒќьПјO nЇ*lЛЁв“š^•Ж)§Й5Y“у0NИ—Ј"td е“š?­Гжs*т&K3_†U@.?žЂцЪ\ъOšŒзБУъ`aћRгвMёЉhЎ/ЕІ8,;К”њЇ/5= 9-7 ŸЭЫp‹Рx~™†JяИы>а•SQФRг1m= ŠО^–šаШM,УŠЄЯОЉ“†Ђг№ЫЕИгў`Зa ™pь хц+‚ЯŸэ.&"pО,5} 5 Tн“вiš]ЪЁыНСrг=c§ЃКƒЂНi˜-KMШ#ЋћЄкkЌЋТЉ&IЛзцЫRгВM.Qj~LO№Єk џ‰UРЦЌЋ} т/ЖЛРЩ€д,5*'єt'†ŸŸх€2сhЕ›йЇЫКfXт‰Чн1ЛаВGLииOS­;UТ|9эЄ_сђЅ '’цмТLС!ДдЩK@озiEGXФ|ЭГcšЁN^жшo›ћZ.hхЄФLџцdl0ТМў^ lbяЁДvёgџЪARŸ›љn`$  UьМ–уTUsоt}ўNатm~6bр_%лЁА [‰ћ•WМхoк ~ђЁ9rѕдЋШ—Gђаoйi0Йџђ[шяВ:”т-л&ё#€~tж#ѓlF=ŠЭiS'їўцk€^Дъ ›эёBП€Q§=ОзЕГРzЙЃ+šU@nOŽ@gVй\ЛияђРКnЎŸЏCaЌ†ыидДшф ?Kl№•ф7Ћуи,ЩфIПuжэѓХ0ъР@:ўBЂџ”™Ў0ЗxC@_ T?јoЋёидЇ,p`р Дn˜+йЪ>sћ(>Юz­НшŸGŸ˜D :КйњБІ•ћdшzХFSМУФj/Їїћdh=НkЪJжЭGтЭwЛп[žёVkлˆ.†HЋf=ыpEŸшAй4Uѓн”щ?|щz гd§\D=ЧxHw­КчT0:ѕѕIвK,ЏуG—ДЦцŽ7.гѕпZ Ќћ•Ajд›\‡ц“UРхЩš€ЃaXЌWmје9зъ<ыЎі:@ћ6wq†‡uUќР~#ЖщTіхКгЕРІЏлmЎHјVёРЅF,СЭћЇ:ЎjТРўt†™ћКkу%ЏT}=P(ё:64ƒЎіQ™@š{ЕЋšpАпˆсЃ'з7с*`яaPMRшq\%…+uЏJI/2КJ W;ЯY‚Wєчiшкж+›pА_gйез*вЏ ьx$:ЎЦђCОіGЅa ГэЉЦЧлžoœvvŠЏЎёJ`ПЮ1\-4k€НŽььчь‰Ру€Кы‡ЊZ-4ы€Uч#џК~ѓ>иuыƒNnжєё: .У‚ГМXг%krјГЖyx<АОВZз%kС’pчŠ5R§P Щ[ЕЖKж‡ гŠѕ5^Ќ–;ДZп%лЅ"ЖbнА{’г+bЕ^жЂћљУ|ш‚?ŽїPЖљ]<дХѕyс еНВ%хњЫн/ь$4>Ь{А~-о#€к#=j ћЃю:ЧЧ™ўє1п|$P<љ—>њѕРџџЊІЙiIZвIENDЎB`‚шфAщ(`рŸ8   Е зЈгнК”http://java.sun.com/products/jdk/1.2/docs/api/java.lang.reflect.Array.htmlзЈгьК”http://java.sun.com/products/jdk/1.2/docs/api/java.lang.reflect.Field.htmlзЊгёК–http://java.sun.com/products/jdk/1.2/docs/api/java.lang.reflect.Method.htmlђЂ/Ш 0веШЗDTimes New RomanЬбœк„кvЧ 0œк(н 0\ЗDWingdingsRomanЬбœк„кvЧ 0œк(н 0\ ЗDSymbolgsRomanЬбœк„кvЧ 0œк(н 0\0ЗDComic Sans MSnЬбœк„кvЧ 0œк(н 0\B@ЗDLucida ConsoleЬбœк„кvЧ 0œк(н 0\1PЗDArial Unicode MSбœк„кvЧ 0œк(н 0Є €bџџџџ ЅВ).oиЉ  @Ѓnџ§?" dd@џџяџџџџџџ  @@``€€ Ъ№Т№h0 L6     0   ЙŠay yЮ^ub  vИ V   $|МСѓ     '    (]36"Н%’t7GXe—ORЯ8kфшZ H`    \  %     e@nlp       !ЅѕfІЂ ’,ђкд№€РkbOwJ uMi  =Ÿ   b%-Ћ       :8‰W"   =+FFF_№м№$џ№$џ№$џb№$BjMFsŽХ(ѓ5mРžL aџFb№$гŸEB_ўРа•7юЩNЉьџ–;F №0e‚˜Вƒ0e„˜В…‡ˆ‰П є   €‚ƒ„… †A‡Сˆ‰Š‹ŒŽ‘’“”•–—С˜™š›œ@П РСТџџџУ ФХAЦСЧШЩЪЫ5%ЬЭЮЯСзџЫЫЫ 8c8c     ?€‚ƒœ1„…№љ†‡їˆ ПРСТdУФХЦЧШЩЪ0uЫаЬ0эьџЭ@T‰Ю€Я€џџаyџб2в NгPУде'жp”зА<џџий'кp”џAЈ)BCD|ОE„|О…†|О‡S"ё‘’П‚‚€ё џ3РsPџfџџџЬџf™џњм˜ѕзU@ёџџџџџџџџї№ѓ€а;ЂЪš;mNЭЩЪš;њgў§4TdTdvЧ 0к2џџџЦџџџpћppћ0 <§4!d!d`ѓ 0LоЭб<§4dddd`ѓ 0LоЭбџ <§4BdBdМкйє 0LоˆИŠАК___PPT9‹’{€йЏo20}rКVC:\Silvano\DIDATTICA\PROGR_OGGETTI\OOP1.htm| 20?й к Oй к=№s#ѓЩuŸЈJCL: Reflection API (1)ЊŸЈїRepresents (reflects) the classes, interfaces, and objects in the current Java Virtual Machine Used for writing development tools such as debuggers, class browsers, and GUI builders Determine the class of an object. Get information about a class's modifiers, fields, methods, constructors, and superclasses. Find out what constants and method declarations belong to an interface. Create an instance of a class whose name is not known until runtime. Get and set the value of an object's field, even if the field name is unknown to your program until runtime. Invoke a method on an object, even if the method is not known until runtime. Create a new array, whose size and component type are not known until runtime, and then modify the array's components.ЁfЖZBZŠ  BЊš IО ХѓШtŸЈJCL: Reflection API (2)ЊѓЭyŸ 4JCL: Class Class  MethodsЊ" ѓц‘Ÿ TJCL: Reflection  retrieving Class objectsЊ*ŸЈ%If an instance of the class is available invoke the Object.getClass method Class c = mystery.getClass(); To retrieve the Class object for the superclass that another Class object reflects invoke the getSuperclass method JTextField t = new JTextField(); Class c = t.getClass(); Class s = c.getSuperclass(); If the class name is known at compile time append .class to its name Class c = java.awt.JButton.class; If the class name is unknown at compile time, but available at runtime use the forName method Class c = Class.forName("java.awt.JButton");ЁІ)Z"ZZSZ ZXZ+ZZ"ZGZZ-Z) џ3ўS   џ3ўX+џ3ў "  G$$((((џ3ў((-,,ЊF( # #      FѓЪvŸ FJCL: Reflection  examining classesЊ#ѓш’Ÿ ZJCL: Reflection  discovering class modifiersЊ-ѓуŽŸ 4JCL: Field Class  MethodsЊ" ѓо‰Ÿ TJCL: Reflection  identifying class fieldsЊ*ѓфŸ @JCL: Constructor Class  MethodsЊ" ѓр‹Ÿ `JCL: Reflection  discovering class constructorsЊ0ѓхŸ 6JCL: Method Class  MethodsЊ" ѓпŠŸ \JCL: Reflection  obtaining method informationЊ.ѓЫwŸ DJCL: Reflection  creating objectsЊ"ŸЈШUsing no-argument constructors invoke the newInstance method on a Class object the newInstance method throws a NoSuchMethodException if the class does not have a no-argument constructor. Using constructors that have arguments invoke the newInstance method on a Constructor object Create a Class object for the object you want to create. Create a Constructor object by invoking getConstructor on the Class object. Create the object by invoking newInstance on the Constructor object. Object newInstance (Object[] initargs) Uses the constructor represented by this Constructor object to create and initialize a new instance of the constructor's declaring class, with the specified initialization parameters.Ёjž'6Ы(М  џ3ў џ3ўˆЛў  џ3ўџ3ў8'  џ3ў  џ3ўˆЛў    џ3ў4    џ3ў    џ3ў    џ3ў'    џ3ў    џ3ў   + џ3ў…ЊJ   7    8'   J B ђѓ!0пBIђѓ!0пђѓџ!0пхыђѓџ!0пьїђѓџ!0пљџѓЯ{Ÿ pJCL: Reflection  creating objects (no-arg constructors)Њ"7ѓа|Ÿ jJCL: Reflection  creating objects (arg constructors)Њ"4ѓб}Ÿ jJCL: Reflection  creating objects (arg constructors)Њ"4ѓсŒŸ LJCL: Reflection  getting field valuesЊ&ѓтŸ LJCL: Reflection  setting field valuesЊ&ѓЬxŸ LJCL: Reflection  invoking methods (1)Њ&ŸЈ!Create a Method object by invoking getMethod on the Class object. Invoke the method by calling invoke on the Method object. Object invoke (Object obj, Object[] args) Invokes the underlying method represented by this Method object, on the specified object with the specified parameters.Ё.~+y џ3ўˆЛў џ3ўџ3ў'џ3ўџ3ў3џ3ў@Њъ  :,Kђѓ!0п ђѓ!0п~„ђѓ!0п…‹ђѓ!0п“ђѓ!0п™ŸѓЮzŸ LJCL: Reflection  invoking methods (2)Њ&ъј[ я `№ џџџџџџџ™џџџ–––`№ џџџ€€€Ь™33ЬЬЬџВВВ`№ џџџ333ннн€€€MMMъъъ`№ џџЬff3€€3™3€3ЬџЬf`№ џџџ€€€џЬfџЬЬРРР`№ џџџ€€€РРРfџџ™`№ џџџ€€€3™џ™џЬЬЬВВВЃ>џ§?" dd@џџяџџџџџџџ3ўЃ’џ§?иddи@џџяџџџџџџ €Їд В" а@0№`АЛ€ Ѓnџ§?" dd@џџяџџџџџџ   @@``€€PЃR    @ ` €`Ѓ pЃ>€Ѓ> q №i № № №( № №№х № ƒ №0€Tб‡џџ™ПРџ №Аhр№У б №mŸЈ9Fare clic per modificare lo stile del titolo dello schemaЂ:Њ :№9 № ƒ №0€4бƒПРџ №№р˜№У б №СŸЈuFare clic per modificare gli stili del testo dello schema Secondo livello Terzo livello Quarto livello Quinto livelloЂ:Њ v№ж № ƒ №0€P•бƒПРџЬЬџ №Рд №У б №^Ÿ *ЁиЊ№A № г №N€ќ™бЋg‚жГƒЋg„жГПƒПРџ?"ёП№Р@аЇ №ЕŸЈADipartimento di Automatica e Informatica - Politecnico di Torino ЁB BЊ6   №% №  г №N€ьбЋg‚жГƒЋg„жГПƒПРџ?"ёП№Р@pЇ №™ŸЈг Silvano Rivoira, 2004Ё* Њ4 №~B №  У №H…‡ПРЫœ1вгдеџ?"ёП№Р@ŸР№ШВ № C №’AСxУhttp://java.sun.com/docs/white/langenv/HotJava.doc.anc2.gif"ёП№№`Q№ZB № c №$DПРџfџ"ёП№рА€р№эЂ № ƒ №0€ЄЕбПƒПРџ"ёП№рњ №ŸЈOOPЁB 2џўЊ№ В № Ѓ №j€€AС.џџџ?џџПРџџ™џC:\Silvano\IM\POLI.TIF"ёП№П0@Ж№B № s №*Ьџџ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВ К*Struttura predefinita№ыё€0 Ћ№ЃР№№;№( № №№ № г №N€ќKбYh‚-ДƒYh„-ДПƒПРџ №46№У  б №nŸ *Ё љЊ ІёE##EEhhŠŠ№ № г №N€шVбYh‚-ДƒYh„-ДПƒПРџ №k Ÿ6№У б №pŸ *Ё јЊ ІёE##EEhhŠŠ№d № c №$‡Пџ ?№бСпц №У б№W № г №N€ бYh‚-ДƒYh„-ДПƒПРџ № 7hg№У б №СŸЈuFare clic per modificare gli stili del testo dello schema Secondo livello Terzo livello Quarto livello Quinto livelloЂ:Њ v№  № у №T€ˆбYh‚-ДƒYh„-Д‡ПƒПРџ №48№У  б №nŸ *Ё њЊ ІёE##EEhhŠŠ№  № у №T€tбYh‚-ДƒYh„-Д‡ПƒПРџ №k Ÿ8№У б №pŸ *Ё иЊ ІёE##EEhhŠŠ№H № ƒ №0ƒ“Ы*g”H–Пџ ?№ џџџ€€€Ь™33ЬЬЬџВВВЩ0 №ја№№№( № №№  № г №N€нбYh‚-ДƒYh„-ДПƒПРџ №46№У  б №vŸ *Ё љЊІёE##EEhhŠŠ№ № г №N€ФбYh‚-ДƒYh„-ДПƒПРџ №k Ÿ6№У б №xŸ *Ё јЊІёE##EEhhŠŠ№ № у №T€УбYh‚-ДƒYh„-Д‡ПƒПРџ №48№У  б №vŸ *Ё њЊІёE##EEhhŠŠ№ № у №T€ФДбYh‚-ДƒYh„-Д‡ПƒПРџ №k Ÿ8№У б №xŸ *Ё иЊІёE##EEhhŠŠ№H № ƒ №0ƒ“Ы*g”H–Пџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюфя € ”№Œ€№D№$№( № №D№r №D S №€Ьsw6Пџ№Аhр№У  w6 № ž№r №D S №€ˆtw6Пџ№pр˜0№У w6 № ž№H №D ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюХ/я € u/№m/№BL@0ё №ё.№( № №@№r №@ S №€аz6Пџ№Аhр№У  z6 № ž№?.№8 №А2 №L@№@`0№н№l №ў  №)@c №$€ннн‚€Пˆ№€ђ№г №@ у №T€јz6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№ў  №9ŸЈClassЁ№† №(@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№ў №у№l №ўa  №+@c №$€ннн‚€Пˆ№€Ађ№й №@ у №T€ z6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№ўa  №?ŸЈ DescriptionЁ  №† №*@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№ўa №д№l №т5` №-@c №$€ннн‚€Пˆ№У€В№Ъ№f №5U №@S №€ннн‚€П№т55№: №@ у №T€hz6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№5  № ŸЈ ArrayЁ*ˆЛўџ3ўЊђѓ!0п№ №@ г №N€Аz6Пњм˜‚€П Рџ?Пџ"ёП‚‚№bU №~ŸЈ ЁЊђѓн!0﹆ №,@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№ 4`№№l №4 —` №/@c №$€ннн‚€Пˆ№€ђАВ№  № @ у №T€`Їv6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№4 —` №qŸЈAProvides static methods to dynamically create and access arrays. ЁBB№† №.@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№4 —`№№l №"  №1@c №$€ннн‚€Пˆ№‚€q№†№f №bЕ № @S №€ннн‚€П№"u№: № @ у №T€xКv6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№b № ŸЈ ClassЁ*ˆЛўџ3ўЊђѓ!0п№Ю № @ г №N€Мv6Пњм˜‚€П Рџ?Пџ"ёП‚‚№ТЕ №:ŸЁЊ №† №0@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№` №№l №`w  №3@c №$€ннн‚€Пˆ№€ВАq№ћ №@ у №T€№Pt6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№`w  №aŸЈ1Represents, or reflects, classes and interfaces. Ё22№† №2@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№`w №–№l №_ўр №5@c №$€ннн‚€Пˆ№?€1№Œ№f №Пў  №@S №€ннн‚€П№_ўВ№@ №@ у №T€л ‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№Пў^  №ІŸЈ ConstructorЁ* ˆЛў џ3ўЊ ђѓ!0п №Ю №@ г №N€Lл Пњм˜‚€П Рџ?Пџ"ёП‚‚№   №:ŸЁЊ №† №4@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№ ўр№J№l №ў aр №7@c №$€ннн‚€Пˆ№€qА1№@ №@ у №T€иz6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№ў aр №ІŸЈvProvides information about, and access to, a constructor for a class. Allows you to instantiate a class dynamically. Ёww№† №6@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№ў aр№г№l №Ёџ  №9@c №$€ннн‚€Пˆ№€ё №Щ№f № џY №@S №€ннн‚€П№Ёџѓ №: №@ у №T€'z6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№ џІ № ŸЈ FieldЁ*ˆЛўџ3ўЊђѓ!0п№ №@ г №N€€)z6Пњм˜‚€П Рџ?Пџ"ёП‚‚№dY №}ŸЈ ЁЊђѓь!0﹆ №8@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№рў №,№l №ўрa  №;@c №$€ннн‚€Пˆ№€1Аё №" №@ у №T€Œ-z6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№ўрa  №ˆŸЈXProvides information about, and dynamic access to, a field of a class or an interface. ЁYY№† №:@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№ўрa №д№l №с Щ`  №=@c №$€ннн‚€Пˆ№С €Б №Ъ№f №MЩž №@S №€ннн‚€П№с Щ2 №; №@ у №T€€4z6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№MЩь №ЁŸЈ MethodЁ*ˆЛўџ3ўЊђѓ!0п№ №@ г №N€є6z6Пњм˜‚€П Рџ?Пџ"ёП‚‚№Љž №}ŸЈ ЁЊђѓё!0﹆ №<@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№ Щ` №V№l №Щ ,`  №?@c №$€ннн‚€Пˆ№€№ АА №L №@ у №T€”:z6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№Щ ,`  №ВŸЈ‚Provides information about, and access to, a single method on a class or interface. Allows you to invoke the method dynamically. Ёƒƒ№† №>@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№Щ ,` №“№l №   №A@c №$€ннн‚€Пˆ№€ €p №‰№f №’ч №!@S №€ннн‚€П№ u№= №@ у №T€LBz6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№’1 №ЃŸЈ ModifierЁ* ˆЛў џ3ўЊђѓ!0п №Ю №@ г №N€lEz6Пњм˜‚€П Рџ?Пџ"ёП‚‚№ђч №:ŸЁЊ №† №@@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№`  №T№l №`   №C@c №$€ннн‚€Пˆ№€Б Аp №J №"@ у №T€Hz6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№`   №АŸЈ€Provides static methods and constants that allow you to get information about the access modifiers of a class and its members. Ё№† №B@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№`  №‘№l №џџџџ`sр №E@c №$€ннн‚€Пˆ№? €0№‡№f №џџџџиs* №&@S №€ннн‚€П№џџџџ`sВ№; №#@ у №T€ Oz6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№иsv №ЁŸЈ ObjectЁ*ˆЛўџ3ўЊђѓ!0п№Ю №$@ г №N€Rz6Пњм˜‚€П Рџ?Пџ"ёП‚‚№џџџџ5* №:ŸЁЊ №† №D@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№ sр№,№l №s жр №G@c №$€ннн‚€Пˆ№€p А0№" №'@ у №T€ŒTz6‡Пњм˜‚€П Рџ?Пџ"ёП‚‚№s жр №ˆŸЈProvides the getClass method. Ё,  Њ  №† №F@ У №HПњм˜‚€П Р   Ыџ?Пџ"ёП‚‚№s жр№Œ №I@ г №NПњм˜‚€П Р   ЫЮџ?Пџˆ"ёП‚‚№А2№H №@ ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВю4я € Ч3№П3 №-h\№W3№( № №\№r №\ S №€P\z6Пџ№Аhр№У  z6 № ž№Ѕ2№Š №@€ №h\ №#"ёBŸ У6 rrrrrrrrrrr№ppАq№7 №\ г №N€^z6Пннн‚€ПРџ?Пџ"ёП‚‚№  €/ №ЃŸЈ[Returns the Class object associated with the class or interface with the given string name.Ё\\ Іј @`€№Q №\ г №N€„sz6Пннн‚€ПРџ?Пџ"ёП‚‚№@  / №НŸЈ'static Class forName (String className)Ёp( џ3ў     Њ\ ђѓ!0п ђѓ!0п ђѓ!0пІј @`€№V №\ г №N€kz6Пннн‚€ПРџ?Пџ"ёП‚‚№  /€N №ТŸЈzReturns a Constructor object that reflects the specified public constructor of the class represented by this Class object.Ё{{ Іј @`€№5 №\ г №N€,‰z6Пннн‚€ПРџ?Пџ"ёП‚‚№@/  N №ЁŸЈ3Constructor getConstructor (Class[] parameterTypes)ЁP4     ЊT ђѓ!0п ђѓ!0п ђѓ!0п!Іј @`€№^ №\ г №N€\z6Пннн‚€ПРџ?Пџ"ёП‚‚№  N€m №ЪŸЈ‚Returns a Field object that reflects the specified public member field of the class or interface represented by this Class object.Ёƒƒ Іј @`€№  № \ г №N€PŸz6Пннн‚€ПРџ?Пџ"ёП‚‚№@N  m №xŸЈField getField (String name)ЁP     ЊBђѓ!0пђѓ!0пђѓ!0пІј @`€№7 № \ г №N€ДЇz6Пннн‚€ПРџ?Пџ"ёП‚‚№  m€Œ №ЃŸЈ[Determines the interfaces implemented by the class or interface represented by this object.Ё\\ Іј @`€№а № \ г №N€ќВz6Пннн‚€ПРџ?Пџ"ёП‚‚№@m  Œ №<ŸЈClass[] getInterfaces ()ЁP    Њ: ђѓ!0пђѓ!0пІј @`€№b № \ г №N€@Мz6Пннн‚€ПРџ?Пџ"ёП‚‚№  Ъ€щ  №ЮŸЈ†Returns the name of the entity (class, interface, array class, primitive type, or void) represented by this Class object, as a String.Ё‡‡ Іј @`€№П № \ г №N€МЧz6Пннн‚€ПРџ?Пџ"ёП‚‚№@Ъ  щ  №+ŸЈString getName ()ЁN    Њ2ђѓ!0пђѓ!0пІј @`€№3 №\ г №N€ аz6Пннн‚€ПРџ?Пџ"ёП‚‚№  Ћ€Ъ №ŸŸЈWReturns the Java language modifiers for this class or interface, encoded in an integer.ЁXX Іј @`€№Џ №\ г №N€Ќмz6Пннн‚€ПРџ?Пџ"ёП‚‚№@Ћ  Ъ №ŸЈint getModifiers ()Ё^      Њ@ ђѓ!0пІј @`€№– №\ г №N€Фхz6Пннн‚€ПРџ?Пџ"ёП‚‚№   € №ŸЈ–Creates a new instance of the class represented by this Class object. The class is instantiated as if by a new expression with an empty argument list.Ё—— Њ•Іј @`€№Ц №\ г №N€dёz6Пннн‚€ПРџ?Пџ"ёП‚‚№@    №2ŸЈObject newInstance () ЁP     Њ2 ђѓ!0пђѓ!0пІј @`€№" №\ г №N€мљz6Пннн‚€ПРџ?Пџ"ёП‚‚№  г €  №ŽŸЈFDetermines if the specified Class object represents an interface type.ЁGG Іј @`€№Є №\ г №N€p{6Пннн‚€ПРџ?Пџ"ёП‚‚№@г     №ŸЈboolean isInterface ()ЁP     Њ@ ђѓ!0пІј @`€№B №\ г №N€р {6Пннн‚€ПРџ?Пџ"ёП‚‚№  Д €г  №ЎŸЈfDetermines if the specified Object is assignment-compatible with the object represented by this Class.Ёgg Іј @`€№ №\ г №N€м{6Пннн‚€ПРџ?Пџ"ёП‚‚№@Д   г  №oŸЈboolean isInstance (Object obj)ЁP       Њf ђѓ!0пђѓ!0пІј @`€№ №\ г №N€М {6Пннн‚€ПРџ?Пџ"ёП‚‚№  • €Д  №ыŸЈReturns the Class representing the superclass of the entity (class, interface, primitive type or void) represented by this Class.Ё‚‚ Њ" UІј @`€№д №\ г №N€а0{6Пннн‚€ПРџ?Пџ"ёП‚‚№@•   Д  №@ŸЈClass getSuperclass ()Ё^     Њ2 ђѓ!0пђѓ!0пІј @`€№џ №\ г №N€D9{6Пннн‚€ПРџ?Пџ"ёП‚‚№  щ €•  №kŸЈ#Finds a resource with a given name.Ё$$ Іј @`€№ №\ г №N€РD{6Пннн‚€ПРџ?Пџ"ёП‚‚№@щ   •  №…ŸЈURL getResource (String name)ЁP     ЊN ђѓ!0пђѓ!0пђѓ!0пІј @`€№` №\ г №N€€*{6Пннн‚€ПРџ?Пџ"ёП‚‚№  Œ€Ћ №ЬŸЈ„Returns a Method object that reflects the specified public member method of the class or interface represented by this Class object.Ё…… Іј @`€№t №\ г №N€`V{6Пннн‚€ПРџ?Пџ"ёП‚‚№@Œ  Ћ №рŸЈ6Method getMethod (String name, Class[] parameterTypes)Ё@7   & Њp ђѓ!0пђѓ!0пђѓ!0пђѓ!0п$Іј @`€№ŒB №\ г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№@€№†B №\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№@Ћ€Ћ№†B № \ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№@• €• №†B №!\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№@Д €Д №†B №"\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№@г €г №†B №#\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№@ € №ŒB №%\ г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№@€№†B №&\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№    m№†B №'\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№@Ъ€Ъ№†B №(\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№@щ €щ №†B №+\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№@N€N№†B №,\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№@/€/№ŒB №.\ г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№@@№ŒB №1\ г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№€€№ŒB №*\ г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№@m€m№†B №@\ У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№  Œ  №ŒB №)\ г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№@Œ€Œ№ŒB №?\ г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№  m  Œ№H №\ ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюdя € № А№ Ш№Є№( № №Ш№x№8 №№@` № Ш№№а`№† № Ш У №H…‡Пњм˜ПРџ?Пџ"ёП‚‚№ @`№† № Ш У №H…‡Пњм˜ПРџ?Пџ"ёП‚‚№p € №† №Ш У №H…‡Пњм˜ПРџ?Пџ"ёП‚‚№PР №† №Ш У №H…‡Пњм˜ПРџ?Пџ"ёП‚‚№№0А№r №Ш S №€№a{6Пџ№аP№У {6 № ž№r №Ш S №€e{6Пџ№Аhр№У  {6 № ž№H №Ш ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВю+я € л№гР№H0ё №W№( № №H№r №H S №€\y{6Пџ№Аhр№У  {6 № ž№Ѕ №8 №№@O №H№@№O№€ Ђ № H У №H€t–{6Пњх˜ПРџ?Пџˆ"ёП‚‚№№@O №ђŸЈи import java.lang.reflect.*; import javax.swing.*; public class SampleName { public static void main( String[] args ) { JButton b = new JButton(); printName( b ); } static void printName( Object o ) { Class c = o.getClass(); Class s = c.getSuperclass(); String str = c.getName(); System.out.println( str ); while (s != null) { str = s.getName(); System.out.println( str ); c = s; s = c.getSuperclass(); } } }ЁкйВ0иZ g џў g џў g џўg ўg џў g џў g џў g џў+ g џў( g џў g џў g џў  r Њ                     № Ђ №H У №H€”—{6ППРџ?Пџˆ"ёП‚‚№р А @c  №ŸЈjavax.swing.JButtonЁ$В o2 Њ$№ŒB №H г №NПDПРбџ?Пџˆ"ёП‚‚№` € р  №ŒB №H г №NПDПРбџ?Пџˆ"ёП‚‚№P   P №˜Ђ №H У №H€З{6ППРџ?Пџˆ"ёП‚‚№    № ŸЈhjavax.swing.AbstractButton javax.swing.JComponent java.awt.Container java.awt.Component java.lang.ObjectЁ$iВ o2i ЊZ №H №H ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюT я €  №ќа№аё№ˆ№( № №а№r №а S №€П{6Пџ№Аhр№У  {6 № ž№ж№8 №` шp №а№ `шp№ №а У №H€Фе{6Пњм˜ПРџ?Пџ"ёП‚‚№`  а №„ŸЈ№import java.lang.reflect.*; import java.awt.*; public class SampleModifier { public static void main(String[] args) { String s = new String(); printModifiers(s); } public static void printModifiers(Object o) { Class c = o.getClass(); int m = c.getModifiers(); if (Modifier.isPublic(m)) System.out.println( "public" ); if (Modifier.isAbstract(m)) System.out.println( "abstract" ); if (Modifier.isFinal(m)) System.out.println( "final" ); } }ЁЖёВ o2       (  -  @    ,  Ьџў   .  Ьџў   +  Ьџў  ЊК('"        №р №а г №N€Јп{6ППРџ?Пџˆ"ёП‚‚№`шp №LŸЈ public finalЁ$ В o2  №ŒB №а г №NПDПРбџ?Пџˆ"ёП‚‚№0№ А№H №а ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюЯя € №wр№aМ№№( № №М№r №М S №€ х{6Пџ№Аhр№У  {6 № ž№]№r №а0 w  №aМ №#"ё*Ÿ Уrrђ“rr№€№@Ч №. №М г №N€Œю{6Пннн‚€ПРџ?Пџ"ёП‚‚№ 0 O №šŸЈRReturns the value of the field represented by this Field, on the specified object.ЁSS Іј @`€№ №М г №N€дљ{6Пннн‚€ПРџ?Пџ"ёП‚‚№а0 O №†ŸЈObject get(Object obj)ЁP     ЊVђѓ!0пђѓ!0п ђѓ!0п Іј @`€№R №М г №N€|6Пннн‚€ПРџ?Пџ"ёП‚‚№ O n №ОŸЈvReturns the Class object representing the class or interface that declares the field represented by this Field object.Ёww Іј @`€№О №М г №N€Ь|6Пннн‚€ПРџ?Пџ"ёП‚‚№аO n №*ŸЈClass getDeclaringClass() ЁP    Њ&ђѓ!0пђѓ!0пІј @`€№> №М г №N€$ |6Пннн‚€ПРџ?Пџ"ёП‚‚№ n   №ЊŸЈbReturns the Java language modifiers for the field represented by this Field object, as an integer.Ёcc Іј @`€№‘ № М г №N€Є"|6Пннн‚€ПРџ?Пџ"ёП‚‚№аn   №§ŸЈ int getModifiers()ЁP     Њ0 ђѓ!0пІј @`€№ № М г №N€D+|6Пннн‚€ПРџ?Пџ"ёП‚‚№  9  №‡ŸЈ?Returns the name of the field represented by this Field object.Ё@@ Іј @`€№В № М г №N€№6|6Пннн‚€ПРџ?Пџ"ёП‚‚№а  9  №ŸЈString getName()ЁN    Њ&ђѓ!0пђѓ!0пІј @`€№^ №М г №N€A|6Пннн‚€ПРџ?Пџ"ёП‚‚№ X w  №ЪŸЈlSets the field represented by this Field object on the specified object argument to the specified new value.Ё,m#  E Іј @`€№> №М г №N€N|6Пннн‚€ПРџ?Пџ"ёП‚‚№аX  w  №ЊŸЈ"void set(Object obj, Object value)ЁN#    Њpђѓ!0пђѓ!0п ђѓ!0пІј @`€№p №М г №N€ЌY|6Пннн‚€ПРџ?Пџ"ёП‚‚№ 9 X  №мŸЈhReturns a Class object that identifies the declared type for the field represented by this Field object.ЁBi   L   Іј @`€№Б №М г №N€Шd|6Пннн‚€ПРџ?Пџ"ёП‚‚№а9  X  №ŸЈClass getType()ЁN    Њ&ђѓ!0пђѓ!0п Іј @`€№ŒB №М г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№а0 0№†B №М У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№аX X №ŒB №"М г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№аw w №†B №#М У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№ 0  №†B №&М У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№аn n№†B №'М У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№аO O№ŒB №(М г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№а0аw №ŒB №)М г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№ 0 w №ŒB №*М г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№а  №†B №+М У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№ 9  w №ŒB №,М г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№а9 9 №ŒB №-М г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№   9 №H №М ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюЌ я € \ №T №№ Ј@ё№д №( № №Ј№r №Ј S №€Ш0|6Пџ№Аhр№У  |6 № ž№" №8 № ` № Ј№ `№8 №Ј г №N€ u|6Пњм˜ПРџ?Пџˆ"ёП‚‚№ ` №ЄŸЈ~import java.lang.reflect.*; import java.awt.*; public class SampleField { public static void main(String[] args) { GridBagConstraints g = new GridBagConstraints(); printFieldNames(g); } static void printFieldNames(Object o) { Class c = o.getClass(); Field[] publicFields = c.getFields(); for (int i = 0; i < publicFields.length; i++) { String fieldName = publicFields[i].getName(); Class typeClass = publicFields[i].getType(); String fieldType = typeClass.getName(); System.out.println( "Name: " + fieldName + ", Type: " + fieldType); } } }ЁФВ0oZ2 џў  џў   џў g џў g џў g џў4  :  џўm  џў  џў  3™џўн  3™џў  3™џў Њ>(               № №Ј г №N€ |6ППРџ?Пџˆ"ёП‚‚№ `  №rŸЈœName: RELATIVE, Type: int Name: REMAINDER, Type: int Name: NONE, Type: int Name: BOTH, Type: int Name: HORIZONTAL, Type: int Name: VERTICAL, Type: int . . .Ё&В0oZ2 ЊŒ№ŒB №ЈB г №NПDПРаџ?Пџˆ"ёП‚‚№€ ` № №H №Ј ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюя € Ю№Ц№$Р№^№( № №Р№r №Р S №€Dš|6Пџ№Аhр№У  |6 № ž№Ќ№r №№€@  №$Р №#"ё*Ÿ Уrrђ“rr№€№@ №} №Р г №N€єЅ|6Пннн‚€ПРџ?Пџ"ёП‚‚№P €@Ÿ №щŸЈuReturns the Class object representing the class that declares the constructor represented by this Constructor object.ЁBv   Q   Іј @`€№Н №Р г №N€Ÿ|6Пннн‚€ПРџ?Пџ"ёП‚‚№№€P Ÿ №)ŸЈClass getDeclaringClass()ЁP    Њ&ђѓ!0пђѓ!0пІј @`€№Џ №Р г №N€ќМ|6Пннн‚€ПРџ?Пџ"ёП‚‚№P Ÿ@1 №ŸЈЇReturns an array of Class objects that represent the types of of exceptions declared to be thrown by the underlying constructor represented by this Constructor object.ЁBЈ  {   Іј @`€№Ч №Р г №N€\Ж|6Пннн‚€ПРџ?Пџ"ёП‚‚№№ŸP 1 №3ŸЈClass[] getExceptionTypes()ЁP    Њ.ђѓ!0пђѓ!0пІј @`€№` №Р г №N€ С|6Пннн‚€ПРџ?Пџ"ёП‚‚№P 1@P №ЬŸЈnReturns the Java language modifiers for the constructor represented by this Constructor object, as an integer.Ё,oL   Іј @`€№‘ № Р г №N€8н|6Пннн‚€ПРџ?Пџ"ёП‚‚№№1P P №§ŸЈ int getModifiers()ЁP     Њ0 ђѓџ!0пІј @`€№< № Р г №N€”ц|6Пннн‚€ПРџ?Пџ"ёП‚‚№P P@ќ №ЈŸЈ2Returns the name of this constructor, as a String.Ё33 Њ&+Іј @`€№В № Р г №N€xђ|6Пннн‚€ПРџ?Пџ"ёП‚‚№№PP ќ №ŸЈString getName()ЁN    Њ&ђѓџ!0пђѓџ!0пІј @`€№н № Р г №N€$}6Пннн‚€ПРџ?Пџ"ёП‚‚№P Ž @  №IŸЈЗUses the constructor represented by this Constructor object to create and initialize a new instance of the constructor's declaring class, with the specified initialization parameters.Ё,И)  „ Њ,I H Іј @`€№( № Р г №N€<§|6Пннн‚€ПРџ?Пџ"ёП‚‚№№Ž P  №”ŸЈ&Object newInstance (Object[] initargs)ЁP'     ЊT  ђѓ!0пђѓ!0пђѓ!0пІј @`€№Ѕ №Р г №N€}6Пннн‚€ПРџ?Пџ"ёП‚‚№P ќ@Ž  №ŸЈReturns an array of Class objects that represent the formal parameter types, in declaration order, of the constructor represented by this Constructor object.ЁBž  q   Іј @`€№Ч №Р г №N€М"}6Пннн‚€ПРџ?Пџ"ёП‚‚№№ќP Ž  №3ŸЈClass[] getParameterTypes()ЁP    Њ.ђѓ!0пђѓ!0пІј @`€№ŒB №Р г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№€@€№†B №Р У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№№Ž @Ž №ŒB №Р г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№ @ №†B №Р У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№P €P P№†B №Р У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№№1@1№†B №Р У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№№Ÿ@Ÿ№ŒB №Р г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№€№ №ŒB №Р г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№@€@ №ŒB №Р г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№P@P№†B №Р У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№P ќP №ŒB №Р г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№ќ@ќ№ŒB №Р г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№P PP ќ№H №Р ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВю я € Н №Е №Аё№A №( № №А№r №А S №€”%}6Пџ№Аhр№У  }6 № ž№Ѓ №А г №N€T}6Пњм˜ПРџ?Пџˆ"ёП‚‚№pp~ №ŸЈсimport java.lang.reflect.*; import java.awt.*; public class SampleConstructor { public static void main(String[] args) { Rectangle r = new Rectangle(); showConstructors(r); } static void showConstructors(Object o) { Class c = o.getClass(); Constructor[] theConstructors = c.getConstructors(); for (int i = 0; i < theConstructors.length; i++) { System.out.print( "( " ); Class[] parameterTypes = theConstructors[i].getParameterTypes(); for (int k = 0; k < parameterTypes.length; k ++) { String parameterString = parameterTypes[k].getName(); System.out.print(parameterString + " " ); } System.out.println( ")" ); } } }ЁјтВ0oF2 џў  џў  џў  џў+  2  џў}  џў  џў  3™џў@  3™џўW  џў  џў  3™џў–  3™џў,  3™џў Њ('( * #!" №ф №А г №N€ь_}6ППРџ?Пџˆ"ёП‚‚№0А Аё №XŸЈŠ( ) ( int int ) ( int int int int ) ( java.awt.Dimension ) ( java.awt.Point ) ( java.awt.Point java.awt.Dimension ) ( java.awt.Rectangle )Ё$‹В o2‹ Њ†   №H №А ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюЅ я € U №M №,Ф№х№( № №Ф№r №Ф S №€ќg}6Пџ№Аhр№У  }6 № ž№3№v №№€@% №,Ф №#"ё.Ÿ У"rrђ“rrr№ №@Х №v №#Ф г №N€t}6Пннн‚€ПРџ?Пџ"ёП‚‚№p t @“  №тŸЈnReturns a Class object that represents the formal return type of the method represented by this Method object.ЁBo   Q   Іј @`€№Љ №!Ф г №N€Ќl}6Пннн‚€ПРџ?Пџ"ёП‚‚№№t p “  №ŸЈClass getReturnType()Ё@    Њ& ђѓџ!0пђѓџ!0пІј @`€№€ №Ф г №N€ x}6Пннн‚€ПРџ?Пџ"ёП‚‚№p €@ №ьŸЈxReturns the Class object representing the class or interface that declares the method represented by this Method object.ЁBy   Y   Іј @`€№Н №Ф г №N€ •}6Пннн‚€ПРџ?Пџ"ёП‚‚№№€p  №)ŸЈClass getDeclaringClass()ЁP    Њ&ђѓџ!0пђѓџ!0пІј @`€№І №Ф г №N€И }6Пннн‚€ПРџ?Пџ"ёП‚‚№p @Є №ŸЈžReturns an array of Class objects that represent the types of the exceptions declared to be thrown by the underlying method represented by this Method object.ЁBŸ  w   Іј @`€№Ч №Ф г №N€­}6Пннн‚€ПРџ?Пџ"ёП‚‚№№p Є №3ŸЈClass[] getExceptionTypes()ЁP    Њ.ђѓџ!0пђѓџ!0пІј @`€№V №Ф г №N€ШЖ}6Пннн‚€ПРџ?Пџ"ёП‚‚№p Є@У №ТŸЈdReturns the Java language modifiers for the method represented by this Method object, as an integer.Ё,eG   Іј @`€№‘ № Ф г №N€РС}6Пннн‚€ПРџ?Пџ"ёП‚‚№№Єp У №§ŸЈ int getModifiers()ЁP     Њ0 ђѓџ!0пІј @`€№V № Ф г №N€№Ь}6Пннн‚€ПРџ?Пџ"ёП‚‚№p У@т  №ТŸЈNReturns the name of the method represented by this Method object, as a String.ЁBO3     Іј @`€№В № Ф г №N€№и}6Пннн‚€ПРџ?Пџ"ёП‚‚№№Уp т  №ŸЈString getName()ЁN    Њ&ђѓџ!0пђѓџ!0пІј @`€№i № Ф г №N€ьт}6Пннн‚€ПРџ?Пџ"ёП‚‚№p “ @% №еŸЈwInvokes the underlying method represented by this Method object, on the specified object with the specified parameters.Ё,x2  @ Іј @`€№n № Ф г №N€Ќъ}6Пннн‚€ПРџ?Пџ"ёП‚‚№№“ p % №кŸЈ(Object invoke(Object obj, Object[] args)ЁP)    Њhђѓ!0пђѓ!0п ђѓ!0пђѓ!0п Іј @`€№› №Ф г №N€”ћ}6Пннн‚€ПРџ?Пџ"ёП‚‚№p т @t  №ŸЈ“Returns an array of Class objects that represent the formal parameter types, in declaration order, of the method represented by this Method object.ЁB”  l   Іј @`€№Ч №Ф г №N€d ~6Пннн‚€ПРџ?Пџ"ёП‚‚№№т p t  №3ŸЈClass[] getParameterTypes()ЁP    Њ.ђѓџ!0пђѓџ!0пІј @`€№ŒB №Ф г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№€@€№†B №Ф У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№№t @t №ŒB №Ф г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№%@%№†B №Ф У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№p €p У№†B №Ф У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№№Є@Є№†B №Ф У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№№@№ŒB №Ф г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№€№%№ŒB №Ф г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№@€@%№ŒB №Ф г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№У@У№†B №Ф У №HПннн‚€ПРџ3Ыœ1џ ?Пџ"ёП‚‚№p т p %№ŒB №Ф г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№№т @т №ŒB №Ф г №NПннн‚€ПРџ3Ыœ1зџ ?Пџ"ёП‚‚№p Уp т №zB №"Ф Ѓ №<ППРџ3Ыœ1џ ?Пџ"ёП‚‚№№“ @“ №H №Ф ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюA я € ё №щ 0№Ќ ё№q №( № №Ќ№r №Ќ S №€  ~6Пџ№Аhр№У  ~6 № ž№П №8 №@рЉ №Ќ№@рЉ№L  №Ќ г №N€|M~6Пњм˜ПРџ?Пџˆ"ёП‚‚№@№Љ №ИŸЈЖimport java.lang.reflect.*; import java.awt.*; public class SampleMethod { public static void main(String[] args) { Polygon p = new Polygon(); showMethods(p); } static void showMethods(Object o) { Class c = o.getClass(); Method[] theMethods = c.getMethods(); for (int i = 0; i < theMethods.length; i++) { String methodString = theMethods[i].getName(); System.out.println( "Name: " + methodString); String returnString = theMethods[i].getReturnType().getName(); System.out.println( " Return Type: " + returnString); Class[] parameterTypes = theMethods[i].getParameterTypes(); System.out.print( " Parameter Types: " ); for (int k = 0; k < parameterTypes.length; k ++) { String parameterString = parameterTypes[k].getName(); System.out.print( " " + parameterString); } System.out.println(); } } }ЁЗВ0oF2 џў  џў   џў  џў)  *  џўi  џў  џў  3™џўu  3™џўw  3™џўr  3™џў   џў  џў  3™џў…  3™џўN ЊА( &$             #!"Іј @`€ №# №Ќ г №N€#~6ППРџ?Пџˆ"ёП‚‚№ @рR №ŸЈѕName: intersects Return Type: boolean Parameter Types: double double double double Name: intersects Return Type: boolean Parameter Types: java.awt.geom.Rectangle2D Name: translate Return Type: void Parameter Types: int int. . .Ё&іВ0o<2і ЊP M J №H №Ќ ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюфя € ”№Œ@№L№$№( № №L№r №L S №€X,~6Пџ№Аhр№У  ~6 № ž№r №L S №€-~6Пџ№ р˜а№У ~6 № ž№H №L ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюq я € ! № P№ l0ё № №( № №l№r №l S №€Иh~6Пџ№€ар№У  ~6 № ž№ы №8 №p@š № l№p@š№ыЂ №l У №H€0Ђ~6Пњх˜ПРџ?Пџˆ"ёП‚‚№pРš №]ŸЈsimport java.lang.reflect.*; import java.awt.*; public class SampleNoArg { public static void main( String[] args ) throws InstantiationException, IllegalAccessException, ClassNotFoundException { Rectangle r = ( Rectangle ) createObject( "java.awt.Rectangle" ); System.out.println( r.toString() ); } static Object createObject( String className ) throws InstantiationException, IllegalAccessException, ClassNotFoundException { Object object = null; Class classDefinition = Class.forName( className ); object = classDefinition.newInstance(); return object; } }ЁђtВ o2g џў g џў g џўg ўg џў g џў g џў g џў g џў} g ™џў6 g џў. g џўc g џўp g џў Њд                          №Ђ №l У №H€PЃ~6ППРџ?Пџˆ"ёП‚‚№Р  @S  №ŽŸЈ,java.awt.Rectangle[x=0,y=0,width=0,height=0]Ё$-В o2- Њ%№ŒB №l г №NПDПРбџ?Пџˆ"ёП‚‚№  Р №H №l ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюY я €  № `№pё№ №( № №p№r №p S №€l…~6Пџ№Аhр№У  ~6 № ž№л Ђ №p У №H€”It Пњх˜ПРџ?Пџˆ"ёП‚‚№ААƒ №U ŸЈѕimport java.lang.reflect.*; import java.awt.*; public class SampleConstructor { public static void main( String[] args ) throws ClassNotFoundException, NoSuchMethodException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException { Class[] intArgsClass = new Class[] { int.class, int.class }; Integer height = new Integer( 12 ); Integer width = new Integer( 34 ); Object[] intArgs = new Object[] { height, width }; Class rectangleDefinition = Class.forName( "java.awt.Rectangle" ); Constructor intArgsConstructor = rectangleDefinition.getConstructor( intArgsClass ); Rectangle rectangle = ( Rectangle ) createObject( intArgsConstructor, intArgs ); }ЁиіВ o2g џў g џў g џўg ўg џў g џў g џў g џў g џўЙ g џў   џў g   џў g g џў g џў  g ™џў g џў  g ™џў g џўN g ™џўЛ Њd                                 №H №p ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюНя € m№ep№t ё№э№( № №t№r №t S №€pEл Пџ№Аhр№У  л  № ž№;№8 №@р@  №t№@р@ №ЫЂ №t У №H€№к~6Пњх˜ПРџ?Пџˆ"ёП‚‚№@+  №=ŸЈo static Object createObject( Constructor constructor, Object[] arguments ) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException { Object object = constructor.newInstance( arguments ); System.out.println( "Constructor: " + constructor + "\nObject: " + object ); return object; } }ЁЪpВ o2 g џўI g џўТ g ™џў g ™џў g џў Њр   3        №ŒЂ №t У №H€мч~6ППРџ?Пџˆ"ёП‚‚№№ р р@  №ўŸЈfConstructor: public java.awt.Rectangle(int,int) Object: java.awt.Rectangle[x=0,y=0,width=12,height=34]Ё$gВ o2g ЊP '№ŒB №t г №NПDПРбџ?Пџˆ"ёП‚‚№€0 №   №H №t ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВю) я € й №б €№Д№i №( № №Д№r №Д S №€Ью~6Пџ№Аhр№У  ~6 № ž№З№8 №0ј{ №Д№0ј{№є №Д У №H€T€6Пњм˜ПРџ?Пџ"ёП‚‚№0x{ №fŸЈжimport java.lang.reflect.*; import java.awt.*; public class SampleGet { public static void main(String[] args) { Rectangle r = new Rectangle(100, 325); printHeight(r); } static void printHeight(Rectangle r) { Field heightField; Integer heightValue; Class c = r.getClass(); try { heightField = c.getField( "height" ); heightValue = (Integer) heightField.get(r); System.out.println( "Height: " + heightValue.toString()); } catch (NoSuchFieldException e) { System.out.println(e); } catch (SecurityException e) { System.out.println(e); } catch (IllegalAccessException e) { System.out.println(e); } } }Ё˜зВ0o<2 џў  џў   џў  џў+  6  џўt  џў%  3™џўT  3™џў$  џўE  џўB  џўN Њд( '0      №х №Д у №T€p€6…‡ППРџ?Пџ"ёП‚‚№0 ју  №KŸЈ Height: 325Ё$ В o  №†B №Д У №HПDПРбџ?Пџ"ёП‚‚№№   №H №Д ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюш я € ˜ № №И№( №( № №И№r №И S №€€6Пџ№Аhр№У  €6 № ž№v №8 №ˆЉ №И№ˆЉ№# №И У №H€$€6Пњм˜ПРџ?Пџ"ёП‚‚№Љ №•ŸЈбimport java.lang.reflect.*; import java.awt.*; public class SampleSet { public static void main(String[] args) { Rectangle r = new Rectangle(100, 20); System.out.println( "original: " + r.toString()); modifyWidth(r, new Integer(300)); System.out.println( "modified: " + r.toString()); } static void modifyWidth(Rectangle r, Integer widthParam ) { Field widthField; Integer widthValue; Class c = r.getClass(); try { widthField = c.getField( "width" ); widthField.set(r, widthParam); } catch (NoSuchFieldException e) { System.out.println(e); } catch (IllegalAccessException e) { System.out.println(e); } } }ЁИвВ0oF2 џў  џў   џў  џў+  /  3™џў'  *  3™џў  џў‡  џў$  3™џў3  џўE  џўN Њш( 'A(      №u №И У №H€”A€6ППРџ?Пџ"ёП‚‚№ ˆ`  №чŸЈsoriginal: java.awt.Rectangle[x=0,y=0,width=100,height=20] modified: java.awt.Rectangle[x=0,y=0,width=300,height=20]Ё$tВ o2t Њ,7(№†B №И У №HПDПРбџ?Пџ"ёП‚‚№№0` №H №И ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюњя € Њ№Ђ №P№:№( № №P№r №P S №€рG€6Пџ№Аhр№У  €6 № ž№ˆ №P S №€hM€6Пџ№№р˜№У €6 №"žІј€p`Pp№H №P ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВюля € ‹№ƒА№hё№№( № №h№r №h S №€`a€6Пџ№Аhр№У  €6 № ž№] №8 №p€š №h№p€š№› Ђ №h У №H€DЄt Пњх˜ПРџ?Пџˆ"ёП‚‚№p š № ŸЈ5import java.lang.reflect.*; public class SampleInvoke { public static void main( String[] args ) throws NoSuchMethodException, IllegalAccessException, InvocationTargetException { String firstWord = "Hello "; String secondWord = "everybody."; String bothWords = append( firstWord, secondWord ); System.out.println( bothWords ); } public static String append( String firstWord, String secondWord ) throws NoSuchMethodException, IllegalAccessException, InvocationTargetException { Class c = String.class; Class[] parameterTypes = new Class[] { String.class }; Object[] arguments = new Object[] { secondWord } ; Method concatMethod = c.getMethod( "concat", parameterTypes ); return ( String ) concatMethod.invoke( firstWord, arguments ); } }ЁІ6В o2g џў g џўg ўg џў g џў g џў g џў g џўh g ™џў g ™џўk g џў g џў; g џўf g џў! g џў g џў g џўD g ™џў g џўA Њ                                          №оЂ №h У №H€ €€6ППРџ?Пџˆ"ёП‚‚№а€У №PŸЈHello everybody.Ё$В o2 №ŒB №h г №NПDПРбџ?Пџˆ"ёП‚‚№p раp№H №h ƒ №0ƒ“@—”оНhПџ ?№ џџџ€€€Ь™33ЬЬЬџВВВrxьA OOBVШ f]z[ОХ \Е”3З–ѕ]njЯvо$њРNў"”Х‰Mои.RСшёдѕœ šЅE ўџр…ŸђљOhЋ‘+'Гй00L `hŒЄ МШ ш є  фPresentazione di PowerPointSilvano RivoiraSilvano Rivoira210Microsoft PowerPointrPo@аzƒх@аЁбќАС@РЉO7‚§Ф GKџџџџ; *  ‚%б$&џџџџ &џџџџ&#џџџџTNPPЌИ2џџOMiр & TNPPє &џџџџ&TNPP    џџџ б$A Ьo ( o`E€€€€€€€€€РРРРмР№ЪІ """)))UUUMMMBBB999€|џPPџ“жџьЬЦжяжччЉ­3f™Ь3333f3™3Ь3џff3fff™fЬfџ™™3™f™™™Ь™џЬЬ3ЬfЬ™ЬЬЬџџfџ™џЬ3333f3™3Ь3џ3333333f33™33Ь33џ3f3f33ff3f™3fЬ3fџ3™3™33™f3™™3™Ь3™џ3Ь3Ь33Ьf3Ь™3ЬЬ3Ьџ3џ33џf3џ™3џЬ3џџff3fff™fЬfџf3f33f3ff3™f3Ьf3џffff3fffff™ffЬf™f™3f™ff™™f™Ьf™џfЬfЬ3fЬ™fЬЬfЬџfџfџ3fџ™fџЬЬџџЬ™™™3™™™™Ь™™33™f™3Ь™џ™f™f3™3f™f™™fЬ™3џ™™3™™f™™™™™Ь™™џ™Ь™Ь3fЬf™Ь™™ЬЬ™Ьџ™џ™џ3™Ьf™џ™™џЬ™џџЬ™3ЬfЬ™ЬЬ™3Ь33Ь3fЬ3™Ь3ЬЬ3џЬfЬf3™ffЬf™ЬfЬ™fџЬ™Ь™3Ь™fЬ™™Ь™ЬЬ™џЬЬЬЬ3ЬЬfЬЬ™ЬЬЬЬЬџЬџЬџ3™џfЬџ™ЬџЬЬџџЬ3џfџ™Ь3џ33џ3fџ3™џ3Ьџ3џџfџf3Ьffџf™џfЬЬfџџ™џ™3џ™fџ™™џ™Ьџ™џџЬџЬ3џЬfџЬ™џЬЬџЬџџџ3Ьџfџџ™џџЬffџfџffџџџffџfџџџf!Ѕ___www†††–––ЫЫЫВВВзззнннуууъъъёёёјјј№ћџЄ  €€€џџџџџџџџџџџџттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттыттттттттттятттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттяттттттттттттттттттттятяmтт’ттттяятяяяятяяяяяяяяяяяяятяяяяятяяяяяяяяятяяяяттяятяяяяяяяяяяятяяяяттттятяяяяяяяяяяяяяяятяяятятяяяяяяяятяяятяяяяттятяяяятяятяттяяяяяттяяяяяятятттттттттттmттmяттяттятяяяяятяяяяяяяяяяяяятяяяяятяяяяяяяяятяяяяттяятяяяяяяяяяяятяяяяттятяяяяяяяяяяяяяяяяятяяятятяяяяяяяятятятятяяяяятяяяятяятяяяяяяяятттяяяяяяятттттттттттъттmттыытттяятяттттттяттттттттттттяятяттттттттттттятттттттятттяттттттттяттттттяяттяятттттттятттттяятяятттятттттяяттяяяятттттттттяятяттттяттттяттттттяттттттттттэытъттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттыт’ттmытттяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяятттттттттт’тытттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттэттттэттятттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттятттттттттяттттяттятттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттяттттттттттятттттттятттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттятттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇЇтЇтЇЇттЇЇЇтЇЇЇтЇтттЇЇЇЇтЇЇттЇЇЇттЇЇЇттЇЇЇЇтЇЇЇЇтЇЇЇтЇтттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇЇтЇтЇЇтЇттЇЇЇЇЇтЇЇттЇЇЇЇтЇЇттЇтЇттЇЇЇттЇЇЇттЇЇЇЇтЇЇЇтЇЇтттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇттЇЇЇттЇЇЇттттттттттЇттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇЇтттттттттттттттЇтттттттттттттттттттттттттттттттттттттттттттттттттЇЇтЇЇтттттттЇттттттттттттттттттттттттттттттттттттттттттттЇттттЇЇЇтЇЇЇЇЇЇттЇтЇЇЇттттЇтЇтЇЇЇЇЇтЇтттЇЇтЇЇтЇтЇЇЇЇЇЇЇтЇЇЇЇЇЇЇЇтЇтЇЇЇтЇЇтЇЇЇтЇЇЇЇтЇЇЇттЇЇЇЇтЇЇтЇЇЇЇтЇЇЇттЇттЇЇЇтЇтттЇЇЇЇЇтЇтЇтттттттттттттттттттттттттттттттттттЇтттЇтЇтЇтЇЇЇЇттЇтЇЇЇттЇЇЇтЇтЇЇЇЇЇтЇЇттЇЇтЇЇЇттЇЇЇЇЇЇЇтЇЇЇЇЇЇЇЇтЇтЇЇЇтЇЇтЇЇттЇтЇЇтЇЇЇттЇЇЇттЇЇтЇЇЇЇтЇтЇЇтЇЇтЇЇЇтЇЇттЇЇЇЇЇтЇЇЇЇттттттттттттттттттттттттттттттттттЇтттЇтЇттттттЇттЇтттттттттттттЇтттттттттЇттттттттЇттттттттттттттЇтЇттттттЇтттттттттЇтттттттттЇтттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇЇЇЇтЇтЇтЇЇЇЇтЇтЇтЇЇтЇтЇЇтттттЇЇтЇЇЇтЇЇЇтЇтЇЇЇЇЇЇЇЇтЇЇЇтЇЇттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇтЇЇтЇтЇтЇЇЇЇтЇтЇтЇЇЇттЇЇттЇЇтЇЇтЇЇЇтЇЇЇттЇтЇЇЇЇтЇЇтЇЇЇтЇЇттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇтЇтттттттттЇтЇттттЇтттттЇтЇттЇттттЇтттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇтттттттттттттттттЇтттттттттттттттЇтттттттттттттттттттттттЇтттттттттттттттттттттЇттттттттттттттттЇттттттттттттттттттттттттттттттттттттттттттттттттттттЇттттЇЇЇЇЇЇЇтЇтЇЇЇЇЇЇЇЇтЇЇЇтЇтЇтЇЇЇтЇЇЇЇЇЇЇЇЇттЇЇЇтЇЇтЇЇЇтЇЇЇЇЇЇЇЇЇЇтттЇЇЇтЇЇЇЇтЇтЇЇЇЇЇЇЇЇттЇЇЇЇтЇЇттЇЇтЇЇтЇЇЇЇЇЇЇЇтЇЇЇттЇЇЇтЇЇттттттттттттттттттттттттттттттттттЇттттЇтЇЇЇЇтЇтЇЇЇтЇЇЇЇтЇЇттЇтЇтЇЇЇтЇЇЇЇтЇЇтЇттЇЇЇтЇЇтЇтЇтЇЇЇтЇтЇЇЇттттЇЇЇтЇЇЇЇтЇтЇЇЇтЇЇЇтттЇЇЇЇтЇЇттЇЇтЇЇтЇЇЇЇтЇЇттЇЇЇттЇЇЇтЇЇттттттттттттттттттттттттттттттттттЇтттЇЇЇттттттттттттттттЇтттЇтттттЇтЇттттЇттЇттЇЇтттттттЇттттттттттттттттттЇттттЇтттттттттттттттттЇтттттЇтттттттЇттттттттЇЇтттттттттттттттттттттттттттттттттттттЇттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттжтжтнттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттцжтттттddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddтттттттттттттттжтнтттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЖтнтжтттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттт&тттт&тттттттттттттттттттттттттттттттттттттттттттттттттттттттттутттттттттттттттттттттттттттттттттттттттттттттт&&&&&т&&&тт&тт&т&&&т&т&&&т&&т&&т&&&&т&т&тт&&тт&ттт&тт&тт&тттттттттттттттттттттттттттттттттттттттттттттттттттттттт”т”ттттттттттттттттттттттттттттттттттттттттттттт&&ттт&ттттттт&&&&тт&т&&тт&тт&&т&т&&т&тт&&т&&т&ттт&тт&тт&ттттттттттттттттттттттттттттттттттттттттттттттттттттттттНттттттттттттттттттттттттттттттттттттттттттттттт&&ттт&тттт&тт&т&&&т&&&&&т&&т&&т&&т&&ттт&&т&т&&ттт&тт&тт&тттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттт&&&&&&ттттттт&&&ттт&&&тттттттттттттттттттт&&&&ттт&тт&т&ттттттттттттттттттттттттттттттттттттттттттттттттттттттЇЇљљтттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇЇљЇттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇтЇљтЇЇтттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттЇЇтљЇЇттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттњ-ќ-&TNPP &џџџџўџеЭеœ.“—+,љЎDеЭеœ.“—+,љЎР|ˆЈШаир ш №ј   фA4 (21x29,7 cm)Politecnico di Torino.хЃэ Times New Roman WingdingsSymbolComic Sans MSLucida ConsoleArial Unicode MSStruttura predefinitaJCL: Reflection API (1)JCL: Reflection API (2)JCL: Class Class – Methods+JCL: Reflection – retrieving Class objects$JCL: Reflection – examining classes.JCL: Reflection – discovering class modifiersJCL: Field Class – Methods+JCL: Reflection – identifying class fields!JCL: Constructor Class – Methods1JCL: Reflection – discovering class constructorsJCL: Method Class – Methods/JCL: Reflection – obtaining method information#JCL: Reflection – creating objects9JCL: Reflection – creating objects (no-arg constructors)6JCL: Reflection – creating objects (arg constructors)6JCL: Reflection – creating objects (arg constructors)'JCL: Reflection – getting field values'JCL: Reflection – setting field values'JCL: Reflection – invoking methods (1)'JCL: Reflection – invoking methods (2) Caratteri utilizzatiModello strutturaTitoli diapositiveА 8@ _PID_HLINKSфAhKhttp://java.sun.com/products/jdk/1.2/docs/api/java.lang.reflect.Array.htmlKhttp://java.sun.com/products/jdk/1.2/docs/api/java.lang.reflect.Field.htmlLhttp://java.sun.com/products/jdk/1.2/docs/api/java.lang.reflect.Method.htmlі'_Р‘уІєбSilvano RivoiraSilvano Rivoira ўџџџ!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂЃЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђѓўџџџѕіїјљњћќ§ўџ     ўџџџ !"ўџџџ$%&'()*ўџџџ§џџџ§џџџ§џџџ/ўџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџRoot Entryџџџџџџџџd›OЯ†ъЊЙ)шўџџџPicturesџџџџџџџџџџџџм>Current Userџџџџџџџџ#SummaryInformation(џџџџє`LPowerPoint Document(џџџџџџџџџџџџ >ІDocumentSummaryInformation8џџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџџ