Ctopblcs lo AoJtolJ

Sasken CommunlcaLlons 1echnoloales | 1

What |s Andro|d?
ndrold ls more Lhan [usL an operaLlna svsLemŦ Cooale savs ºAoJtolJ ls o softwote stock fot moblle
Jevlcesţ tbot locloJes oo opetotloo svstemţ mlJJlewoteţ ooJ kev oppllcotloos# (Source)Ŧ
ndrold ls LaraeLed aL a wlde ranae of devlces lncludlna (buL noL llmlLed Lo) moblle phonesţ 1ableLsŦ
Pere are Lhe ma[or componenLs of ndroldţ whlch ls commonlv referred Lo as ºAoJtolJ 5tock#

ndrold rchlLecLure (Source)
brlef descrlpLlon of Lhe componenLs of androld sLack ls alven beowť
O lnux kernel Ŷ kernel aver based on sLandard lnux kernel acLs as an operaLlna svsLem
kernel laverŦ
O lbrarles Ŵ ndrold lncludes a seL of llbrarlesţ aenerallv used bv oLher componenLs of
Lhe sLackŦ lbrarles are wrlLLen ln C/C++Ŧ
O ndrold 8unLlme Ŷ ndrold lncludes seL of core llbrarles provldlna mosL of Lhe
funcLlonallLv of !I proarammlna lanauaaeţ and a uelvlk IlrLual Machlneţ whlch
lnsLanLlaLes lLself for each processŦ
Ctopblcs lo AoJtolJ

Sasken CommunlcaLlons 1echnoloales | 2

O ppllcaLlon lramework Ŷ ndrold offers compleLe access Lo Lhe appllcaLlon framework
(9)ţ LhaL was avallable Lo Lhe core appllcaLlons (below)ţ enabllna developers Lo wrlLe
Lhelr own appllcaLlonsŦ
O ppllcaLlons Ŷ ndrold comes wlLh few baslc appllcaLlons LhaL are necessarv for moblle
devlcesţ lncludlna an emall cllenLţ SMS proaramţ calenderţ mapsţ browserţ conLacLsŦ
ppllcaLlons are (and need Lo be) wrlLLen ln !I proarammlna lanauaaeŦ
8eader ls advlced Lo ao Lhrouah Lhe ndrold's lnLroducLlon aL Lhe offlcal webslLe here
1he followlna vldeos from Cooale provlde a decenL undersLandlna of ndrold Lo a newbleŦ
Ierv hlahŴlevel overvlew of ndrold ls alven ln Lhe followlna vldeosť
1Ŧ ndroldoloav Ŵ 9arL 1 of 3 Ŵ rchlLecLure Cvervlew (lnk)
2Ŧ ndroldoloav Ŷ 9arL 2 of 3 Ŷ ppllcaLlon lfe Cvcle (lnk)
3Ŧ ndroldoloav Ŷ 9arL 3 of 3 Ŷ 9s (lnk)
More ueLalled vldeo presenLaLlons from aooale on ndroldť
1Ŧ Cooale /C 2008 Ŷ n nLroducLlon Lo ndrold (lnk)
2Ŧ Cooale /C 2008 Ŷ nslde ndrold ppllcaLlon lramework (lnk)
3Ŧ Cooale /C 2008 Ŷ naLomv and 9hvsloloav of ndrold (lnk)
4Ŧ Cooale /C 2008 Ŷ ualvlk IlrLual Machlne nLernals (lnk)
3Ŧ Cooale /C 2008 Ŷ 8ulldlna an ndrold ppllcaLlon (lnk)
Andro|d Vs 5tandard L|nux
ndrold ls based on lnux kernel 2Ŧ6ţ buL LhaL doesn'L make Lhem ldenLlcalŦ Pere are Lhe few areas ţ
where andrdold dlffers wlLh sLandard llnux kernelŦ
(ln Lhe below dlscusslon lnlx Ŷ SLandard lnux kernelţ and ndrold Ŷ lnux kernel Modlfled for ndrold)
aŦ Pardware SupporLť lnux supporLs a wlde varleLv of hardwareţ howeverţ ndrold currenLlv
supporLs onlv x86ţ and 8M plaLformsŦ
bŦ lew componenLsţ whlch are added ln ndroldť
O larm urlver Ŷ 9rovldes Llmers Lo wake up devlcesŦ
O SPMLM Ŷ SPMLM ls an acronvm for ndrold Shared MemorvŦ SPMLM allows
appllcaLlons Lo share memorvţ and manaaes Lhe sharlna ln kernel levelsŦ
O 8lnder urlver Ŷ laclllaLes lnLerŴprocess comunlcaLlonŦ uaLa can be shared bv mulLlple
appllcaLlonsţ uslna shared memorvţ and Lhusţ a coŴordlnaLlon mechanlsm ls necessarvŦ
servlce realsLered as an 9C sever don'L have Lo worrv abouL dlfferenL Lhreads
because blnder wlll handleţ monlLorţ and manaae LhemŦ 8lnder also Lakes care of
svnchronlzaLlon beLween processesŦ
Ctopblcs lo AoJtolJ

Sasken CommunlcaLlons 1echnoloales | 3

O 9ower ManaaemenL Ŷ SLandard lnux 9ower manaaemenL (9M) ls modlfled Lo manaae
and save power more efflclenLlvŦ 1hls ls verv much neededţ slnce Lhe LaraeL devlces for
ndrold are predomlnenLlv baLLervŴoperaLedŦ
fLer allţ androld kernel ls based on Lhe sLandard llnux kernelŦ Poweverţ Lhev boLh are dlfferenL ln manv
wavsŦ lor lnsLanceţ deskLop varlanLs of lnux use Lhe xŴwlndowlna svsLem for Craphlcs supporLţ whereas
ndrold lnLroduces a new componenL (some sav lL ls a namlna [araon ) 5otfoce lllooetŦ 8ecause of lLs
complexlLvţ surface fllnaer ralses loLs of quesLlons amona Lhe androld developers aroupţ from boLh
newblesţ and experlenced developersŦ
raph|cs |n Andro|d
Clven belowţ ls a verv hlahŴlevel overvlew of Lhe araphlcs funcLlonallLv ln ndrold envlronmenLŦ more
deLalled descrlpLlon followsŦ












llaure ť Craplcs ln ndrold Ŷ Plah level CvevlewŦ
8elow flaure explalns Lhe componenLs of araphlcs subŴsvsLem ln a areaLer deLallŦ



ppllcaLlon
(2u/3u)
LC Wraper
Craphlcs urlver
(user Space)
Craphlcs urlver
(kernel Space)
lrame 8uffer
nardware (MDÞ/ÞU)
Ctopblcs lo AoJtolJ

Sasken CommunlcaLlons 1echnoloales | 4

























App||cat|onsť
2D App||cat|on 3D App||cat|on
5kIA 5urface I||nger
ra||oc
LL Wraper
raph|cs Drv|er (U5)
5/W raph|cs L|brary
Irame 8uffer ÞMLM / A5nMLM raph|cs Dr|ver (k5)
MDÞ raph|cs Þrocessor (ÞU)
kerne| 5pace Components
Irom oog|e Ŷ User 5pace (C/C++)
App||cat|ons (IAVA)
Vendor Custom|zab|e (C/C++)
Ctopblcs lo AoJtolJ

Sasken CommunlcaLlons 1echnoloales | 3

1he ulLlmaLe purpose of ndrld (or anv CperaLlna SvsLem) ls Lo run ppllcaLlonsŦ n ndroldţ
ppllcaLlons can be dlvlded lnLo Lwo Lvpesť
aŦ u appllcaLlonsŦ (Can onlv be wrlLLen ln !I) (eŦaŦ MosL of ndrold appsţ llke LŴMall)
bŦ ppllcaLlonsţ LhaL are run Lhrouah command llneŦ (eŦaŦ CLS conformance sulL)
CurrenLlv appllcaLlons lnvolvlna user lnLerfaceţ can onlv be wrlLLen ln !I proarammlna lanauaaueŦ
Poweverţ Lhe appllcaLlonsţ can alwavs lnLeracL wlLh LC (C/C++ lbrarv)ţ as lona as LC ls lnsLanLlaLed
from !IŦ
LL/L Wraper L|brar|esť
Cenerallv svsLem llbrarles (ln /svsLem/llb/ fodler on LaraeL) are dvnamlcallv llnked (u)Ŧ LC/C
llbrarles provlde CpenC LS supporL Lo apllcaLlonsţ even lf Lhe hardware doesn'L have supporL for
CpenC LSŦ LC/C lwaper llbrarles enable CLS xŦx appllcaLlons Lo run on hardware plaLformsţ LhaL
doesn'L supporL CLS xŦxŦ
Whenver appllcaLlons call CLS xŦx 9sţ LC/C wraper llbrrles choose Lhe mosL relevanL
lmplemenLaLlon for LhaL parLlcular 9 (lŦe SofLware /Pardware lmplemenLaLlon)ţ Lo peform Lhe
operaLlons needed bv Lhe appllcaLlonŦ
1he LC wrapper llbrarv (llbLCŦso) ls llnked dlrecLlv bv appllcaLlonsţ and ls used Lo querv Lhe avallable
conflauraLlons and creaLe a renderlna conLexLŦ L wlll querv all LC lmplemenLaLlons LhaL are presenL on
Lhe vendor's devlce (Lvplcallv one hardware and one sofLware) and wlll concaLenaLe Lhe llsLs of
LCConflas reLurned and presenL Lhose Lo Lhe appllcaLlonŦ When Lhe appllcaLlon chooses one of Lhose
LCConflasţ all C drlver calls are senL Lo Lhe chosen drlverŦ
8esldes Lhe appllcaLlon expllclLlv requesLlna a hardware rendererţ Lhere mav be a number of oLher
crlLerla LhaL ao lnLo Lhls selecLlon processť
O 8equesLed cllenL 9 (eŦaŦ CpenC LS 2Ŧ0 ls onlv supporLed ln hardware)
O Speclflc LCConfla (some conflauraLlons are noL avallable ln all renderers)
O vallable memorv (Lhe C9u mav run ouL of memorv)
O 9ower mode (Lhe C9u mav be Lurned off Lo save power)
O -umber of cllenLs (some devlces do noL supporL mulLlple hardware conLexLs)
Ctopblcs lo AoJtolJ

Sasken CommunlcaLlons 1echnoloales | 6


lla ť ndrold 3u Craphlcs sLack Ŵ Source
LL conf|gurat|onť
LC conflauraLlon flle ls presenL ln Ƽndrold_rooLƽ/devlce/Ƽvendorƽ/ƼproducLƽ/ folderŦ L looksţ slmllar
Lo Lhe screenshoL belowť

Ctopblcs lo AoJtolJ

Sasken CommunlcaLlons 1echnoloales | 7

1he purpose of Lhe conflauraLlon flle ls Lo speclfv Lhe llbrarles choosen bv LC for SofLwareţ and
Pardware lmplemenLaLlon of 9sŦ
-oLlce Lhe lasL Lwo llnes ln Lhe above screnshoLŦ
0 0 ondroid
s menLloned ln Lhe screenshoL lLselfţ Lhe svnLax ls
ƼDI5ÞLA¥ƽ ƼIMÞLLMLN1A1ICNƽ Ƽ1Aƽ
So 0 0 ondroid meansţ we have a llbrarv llbCLS_androldŦso LhaL ls lmplemenLed ln sofLwareţ and ls
avallable for dlsplavŴ0Ŧ ulsplavŴ0 ls Lhe defaulL dlsplavŦ ulfferenL dlsplav numbers are used ln Lhe conLexL
of devlces havlna mulLlple dlsplav unlLs aLLachedŦ
Slmllarlvţ 0 1 odreno200 lmpllesţ llbLC_adreno200Ŧso provldes hardware lmplemenLaLlon for Lhe C LS
9 for dlsplavŴ0Ŧ
ndrold lnlLlallzes all renderes aL Lhe sLarL of an CpenC LS appllcaLlonţ however lL uses hardware
renders ln preference Lo Lhe sofLware rendersŦ 1he wrapLer llbrarv uses sofLware renderlnaţ lf anv of Lhe
followlna condlLlons fall durlna lnlLlallzaLlonŦ
O ealCeLulsplavť fallure means a connecLlon Lo Lhe C9u or dlsplav wasnƌL posslbleŦ
O ealnlLlallzeť fallure means Lhe C9u or dlsplav could noL be lnlLlallzedŦ
O ealChooseConflať fallure means a sulLable conflauraLlon could noL be foundŦ
O ealCreaLe*Surfaceť fallure means a sulLable renderlna surface cound noL be allocaLedŦ
O ealMakeCurrenLť fallure means renderlna Lo Lhe surface was noL posslble due Lo memorv
exhausLlon or a C9u problemŦ
UserŴ5pace raph|cs dr|verť
user mode araphlcs drlvers lmplmenL Lhe araphlcs funcLlonallLv aL Lhe user sldeŦ 1hese musL lnLeracL
wlLh Lhe araphlcs drlver slLLlna ln kernel spaceţ for hardware supporLŦ Craphlcs drlvers musL provlde Lhe
baslc funcLlonallLv supporLed bv LC xŦxţ CLS xŦxţ and mav lnclude supporL for addlLlonal exLenLlonsŦ
Cne such example for exLenLlons lsţ lf Lhe drlver supporLs mulLlple renderlna conLexLsţ lL musL compose
all of Lhem onLo a slmple lmaae before drawlnaŦ 1he composlLlon procedure can be acceleraLed Lhrouah
a sepearaLe exLenLlonŦ
5urface I||ngerť
unllke mosL of Lhe u-x/lnux flavoursţ whlch use Lhe ºx wlndow svsLem# (henceforLh x11)ţ ndrold
lnLroduces a new componenL for lLs wlndow manaemenLŦ lŦeŦ Surface lllnaerŦ Surface fllnaer was
lnLrodcued ln ndrold 1Ŧ0ţ and keeps evolvlna Lhrouah dlfferenL ndrold flavoursŦ Surface lllnaer ln
lrovo ls hardware lndependenLţ and supporLs araphlcs acceleraLlonŦ
Ctopblcs lo AoJtolJ

Sasken CommunlcaLlons 1echnoloales | 8

Surfcae fllnaer runs as a server procesţ and lL can lnLeraL wlLh manv cllenLs (appllcaLlons) slmulLaneouslvŦ
CllenLţ and Lhe server lnLeraL Lhrouah blnder mechanlsm (9C)Ŧ ppllcaLlon processes llnk Lo surface
fllnaer cllenL llbrarv (llbul)ţ Lo be able Lo communlcaLe wlLh Lhe Sl server processŦ

llaure Ŷ Surface lllnaer lnLeraLlonŦ
5urface f||nger funct|ona||tyť










Cnce cllenL ls doneţ uslna Lhe buffersţ cllenL reLurns Lhem Lo Sl bv calllna oeoe8offet()Ŧ

CllenL requesLs buffer lŦe calls
Jeoe8offet()
Sl requesLs aralloc for buffersţ
and reLurns Lo cllenLŦ
CllenL locks Lhe buffer for
renderlnaŦ lŦeŦ calls lock8offet()
Cnce doneţ cllenL marks Lhe end of
renderlna Lhrouah unlock8offet()
Ctopblcs lo AoJtolJ

Sasken CommunlcaLlons 1echnoloales | 9

5urface compos|t|on
1he above flowcharL ls shown for a slnale cllenL processŦ L ls surface fllnaer's responslblllLv Lo compose a
flnal lmaae LhaL ls dlsplaved on Lhe screenţ uslna dlfferenL surfaces for dlfferenL wlndowsŦ 1here are
dlfferenL composlLlon mechanlmsţ (Mu9ţ C9uţ C2u eLcŦŦ) surface fllnaer composlLlon Lechnlques wlll be
deLalled ln a separaLe documenLŦ
raph|cs Dr|ver (kerne| 5pace)ť
kernel space araphlcs drlver works wlLh Lhe user space drlverţ and faclllaLes hardware access Lo Lhe
userspace drlverŦ 1hls componenL ls aaaln vendor speclflcŦ
ra||ocť
O Cralloc ls ºCraphlcs (memorv) allocaLor#
O 9rlor Lo ndrold Lclalr araphlcs memorv manaaemenL ls a vendor speclflc componenLŦ
O lrom ndrold Lclalrţ aralloc was lnLroducedŦ
O Cralloc deflnes baslc funcLlonallLv for memorv allocaLlonţ and frame buffer absLracLlonŦ
(manaaes 9MLM/SPMLM)
O Iendors are allowed Lo lmplemenL Lhelr own lmplemenLaLlon of CrallocŦ
raph|cs nardwareť
Craphlcs hardware conslsLs of Mu9 (Moblle ulsplav 9rocessor)ţ and C9u (Craphlcs 9roesslna unlL)Ŧ
C9u ls responslble for drawlna flnal lmaae ln a buffer (LhaL ls allocaLed bv Sl)Ŧ
Mu9 ls responslble for posLŴrenderlna operaLlons on buffersŦ lŦeŦ once Lhe C9u ls done renderlna Lhe
lmaaes onLo a bufferţ cerLaln operaLlons llke roLaLlonţ scallnaţ fllpţ and blendlna are acceleraLed ln
hardware Lhrouah Mu9Ŧ

keferencesť
O hLLpť//wwwŦvlvanLecorpŦcom/khronosŦpdf
O hLLpť//peopleŦdeblanŦoraŦLw/Ƌolv/surfacefllnaer/surfacefllnaerŦpdf
O 9aLenL documenL ť 9osLŴrender roLaLlon ln Mu9 (lree realsLraLlon requlred Lo vlew)

$.

fn° n °¾f°f ¾¾ €€ fn½n ¾¾  f¾ °.++  O °  °¯  °  °n ¾¾ €n  f ¾½ °–¯¾€  €°n°f€I½–f¯¯°–f°–f– f° f If.

¯¯°nf°¾@ n°– ¾$   .

f½n¾°°    O ½½nf°f¯  °  €€ ¾n¯½  fnn ¾¾ f½½nf°€f¯  %9% ff¾fff   n f½½nf°¾% %  °f °–  ½ ¾   °f½½nf°¾  O ½½nf°¾ °  n¯ ¾€  f¾nf½½nf°¾ff ° n ¾¾f€¯   n ¾ °n °–f° ¯fn ° .½–f¯ nf °  ¯f½¾  ¾  n°fn¾  ½½nf°¾f %f° °  % °°I½–f¯¯°–f°–f–   f ¾f n –– °  #¾° n°f €€nf ¾    @ €°– ¾€¯– ½ f n °° ¾f° °–€°  f°    I –     €°  ¾– °° €°– ¾    °  – 9f€ n n   %°%   °  – 9f€ ½½nf°€ .

. € €°  % f  f f ½½ °¾½½¾f f €f f    °  n ° ¾½½¾°O f° ..¾f°fn°¯€°  f .f¾ f½½nf°¾¾f ¯ ¯ f° ¯f°f– ¾ ¾f°–° °   ¾  O °   fnf ¾°  ½n ¾¾n¯°nf° ffnf° ¾f  ¯½  f½½nf°¾ ¾°–¾f ¯ ¯ f° ¾ fn  °f°¯ nf°¾¯¾° n ¾¾f  ¾ n  –¾  f¾f°9. .fn° ° °f¾%°%    °–f°°  ½½nf°%°% °  I¾f° f ° °  ¾ f¾ °° °    f  ¾°#¯f  ¯ °nf   f  € f f¾    f°    €€ ¾¾f° f ° °   %°   ¾n¾¾°° f° f ° °  f° °   ° ° .½f€¯¾    n¯½° °¾ nf f °°   O f¯  9 ¾¯ ¾f ½ n ¾  O .n %°%   °  – 9f€ 9¾%°% . ¯ ..  f  ½ ¾ °f°¾€¯–– °°        – $ – $ – $ – $ – $ °° n°°  %°% °¾ °  ½½nf°f¯ %°% °f¯f° 9¾–€°  %°% fIf.

¾   °#f f  €€  ° f ¾ nf¾  ° f°  ¯° f° ¯f°f–  ¯  ° f¾f ¾nf € ¾°n°f°  °½n ¾¾ ¾  f¾ °.

¯¯°nf°¾@ n°– ¾$   .

f°f– ¯ ° f° f °9 ¯f°f– ¯ °%9.%¾¯ € ¯f°f–  f° ¾f ½ ¯  €€n ° @¾¾ ¯n° ¾°n  f–  n ¾€ °  f ½ ¯° ° f  ½ f  € f f°   ° ¾ f¾ ° ¾f° f ° °       f  €€  °°¯f° f¾ °¾f°n  ¾½ff°¾€°¾  O ° °–¾¾ ¯€f½n¾¾½½   f¾ °  ° n ¾f° n¯½° °%¾¯ ¾f¾f°f¯°–©f–° %€fn °–   nf¾ €¾ n¯½  ¾€fn €°– f¾ ¾¾€ ¾°¾f¯°– f°    ½ ¾–½ €¯  °   ¾ f°  ½  °n   ½ ¾  f½n¾°°    °  ¾f –     € –f½n¾€°n°f°°   °°¯ ° ¯  f  ¾n½°€¾              f¯  €€  –  f½n¾°°   –      €–  ½f°¾ n¯½° °¾€–f½n¾¾ ¾¾ ¯°f– f  f     f f %.9$9D% f¾ °.f½n¾°°    O 9 .

¯¯°nf°¾@ n°– ¾$   f½n¾  % ° ½fn % f½n¾  %D¾ ½fn % Jf½  ½½nf° %$% .

.9  f½n¾9n ¾¾%9D% f¯  €€  9..f½n¾°°                            ½½nf°¾  .$. f½n¾ %% fn f½n¾ %D% $Jf½n¾ f Jf½   €fn °–  ½½nf° ½½nf° I ° .

¾¯f  %.

$.

++% ¯–  D¾ ½fn %.

$.

++%  ° ½fn .

¯½° °¾ ½½nf°¾%I% f¾ °.

¯¯°nf°¾@ n°– ¾$   .

f½n¾°°    @ ¯f ½½¾ €°  %f°½ f°–¾ ¯%¾°½½nf°¾ °°   ½½nf°¾nf°   °½ ¾  f  Df½½nf°¾ %.

f°°  °°I%% – .¾€°  f½½¾   .f%  ½½nf°¾ ff °–n¯¯f° ° % – n°€¯f°n ¾% .

 °f½½nf°¾°°–¾ ° €fn nf°°  °°I½–f¯¯°–f°–f–      f½½nf°¾ nf°ff¾° fn%.

$.

++ f% f¾°–f¾¾°¾f°f  €¯I  $Jf½  f ¾   ° f¾¾ ¯ f ¾%°$¾¾ ¯$ $€  °f– %f  °f¯nf° %% $  f ¾½ ½ °¾½½f½nf°¾   °€ f f   ¾°#f ¾½½€ ½ ° $f½  f ¾ °f   f½½nf°¾°°f f ½f€¯¾ f  ¾°#¾½½   J ° f½½nf°¾nf 9¾ $f½   ¾n¾  ¯¾  f° ¯½ ¯ °f°€f½fnf9% €f $f f ¯½ ¯ °f°% ½ €¯  ½ f°¾°   f½½nf°  @ f½½  f%  ¾%¾°   n f½½nf°¾ f° ¾¾   fff   n°€–f°¾f° n f f ° °–n°   f¯½ ¯ °f°¾ff ½ ¾ °°   ° #¾ n %½nf° f f f° ° ¾€f %f° n°nf °f  ¾¾€ .

°€–¾ ° f° ½ ¾ °¾  f½½nf° J ° f½½nf°n¾ ¾° €¾  .

°€–¾ f  nf¾f ¾ ° n¾ °    ¾ ¾ f½½nf° ½n  ¾°–ff f  °     ¯f f°¯ €  n ff–°¾¾  n°½n ¾¾  O O O O O   ¾ n °9% – ½ ° ¾°¾½½ °f f % ½ n€n.

°€–%¾¯ n°€–f°¾f °fff  °f °  ¾% ff  ¯ ¯% 9D¯f°€¯ ¯% 9 ¯ % 9D¯f ° €€¾f ½ % -¯ €n °¾%¾¯  n ¾ °¾½½¯½ f f n° ¾% f¾ °.

¯¯°nf°¾@ n°– ¾$   .

f½n¾°°     – °  f½n¾¾fn n  n°€–f°  n°€–f°€ ¾½ ¾ °° °  % $ n $  °  $ ½ n $€  ¾ ¾¯f  ¾n °¾    f¾ °.

¯¯°nf°¾@ n°– ¾$   .

f½n¾°°    @ ½½¾ € n°€–f°€ ¾¾½ n€  f ¾n¾ ° €€f f°  f f ¯½ ¯ °f°€9¾  -n  f¾° ¾° f  ¾n °¾  f°   ¾¯ °° ° ¾n °¾¾ €  ¾°f¾ 9  .-@@. @  f°  ¯ f°¾  f f f %f°  ¾f¾¯½ ¯ ° °¾€f f° ¾ fff  € ¾½f  ¾½f ¾  €f ¾½f €€  ° ¾½f°¯ ¾f ¾ ° n°  € n ¾f°–¯½  ¾½f°¾ffn  ¯f f  °¯½ ¾  %f  ° ¾½ ¾f f ¯½ ¯ °f°€  9€ ¾½f   °  °f ¾f °  ¾f ¾f€f°½ °f½½nf°   ¾ ¾f f   ° ¾°½ €  °n  ¾€f  ° ¾ @ f½  f¾ ¾¾€f  ° °– €f°€  €°–n° °¾€f °–°ff°  O O O O O – ¾½f €f ¯ f°¾fn°° n° 9D ¾½ff¾° ½¾¾   –°f €f ¯ f°¾ 9D ¾½fn ° °f  –.9.

¾ .

°€– €f ¯ f°¾f¾f  n°€–f°n ° €°  –.

 f &€fn €f ¯ f°¾f¾f   ° °–¾€fn n° ° fnf  –.f .

 ° €f ¯ f°¾ ° °– ¾€fn f¾°½¾¾    ¯ ¯ f¾°f9D½  ¯  D¾  ½fn f½n¾    D¾ ¯ –f½n¾  ¾¯½¯ ° –f½n¾€°n°ff ¾ ¾ @ ¾ ¯¾° fn  –f½n¾  ¾°–° ° ¾½fn €f f ¾½½ f½n¾  ¾¯¾½   f¾n€°n°f¾½½      f° ¯f°n ¾½½€f °f  °°¾  ° ¾n f¯½ €  °°¾¾ €   ¾½½¾¯½  ° °–n° ¾ ¯¾n¯½¾  f€ ¯°f¾¯½ ¯f–  €  f°– @ n¯½¾°½n  nf° fnn  f – f¾ ½ ff   °°  €fn °–   D° ¯¾€ D-O$°€f¾ n¾  #O° ¾¾ ¯#% °n €O% °   ° n ¾f° n¯½° °€¾° ¯f°– ¯ °  €fn °–  €fn €°– f¾ ° n °°    f°  ½¾ °–– €€  °°  €f¾ €fn °– ° ¾f f ° ½ ° ° f° ¾½½¾–f½n¾fnn  f°  f¾ °.

¯¯°nf°¾@ n°– ¾$   .

f½n¾°°    €nf €°– °¾f¾f¾  ½n ¾ f° nf°° f¯f°n °¾%f½½nf°¾%¾¯f° ¾  .

 ° f°  ¾  ° f– ° ¯ nf°¾¯%9.

% ½½nf°½n ¾¾ ¾°¾€fn  €°– n ° f% %  f  n¯¯°nf  ¾  ½n ¾¾   –  €fn °– ° f°  €fn €°– €°n°f            .

 °  ¾¾ €€  nf¾  €€ %%   ¾¾–fn€ €€ ¾  f°  °¾n °  .

 °n¾  €€ €  ° °–  nf¾n €€ %% °n  ° n °¯f¾  ° €  ° °––°n €€ %% °n n °¾ ° ¾°–  €€ ¾ n ° °¾ ¯ nf°–  €€ %%   f¾ °.

¯¯°nf°¾@ n°– ¾$   .

9 9D .f½n¾°°    €fn n¯½¾° @ f  €nf¾¾°€f¾°– n °½n ¾¾ ¾¾€fn €°– #¾ ¾½°¾ n¯½¾ f €°f¯f– f¾ ¾½f ° ¾n ° ¾°– €€  °¾€fn ¾€ €€  °° ¾ @  f  €€  °n¯½¾°¯ nf°¯¾ %.

. n %¾€fn €°– n¯½¾° n° ¾  f °f¾ ½ff  n¯ °  f½n¾ % ° ½fn %   ° ¾½fn –f½n¾  ¾ ¾ ¾½fn    f° €fnf ¾f f fnn ¾¾  ¾ ¾½fn    @¾n¯½° °¾f–f° ° ¾½ n€n  fn  O O O O fn¾#f½n¾%¯ ¯%fnf# 9°  nf–f½n¾¯ ¯¯f°f– ¯ °¾f ° ¾½ n€nn¯½° °  ¯°  nf –fnf¾° n  fn €° ¾ f¾n€°n°f€¯ ¯fnf° f° €f¯  €€ f ¾fn°  %¯f°f– ¾9.  ¾½f9n ¾¾% f° 9D%f½n¾9 ¾¾°–D°%  9D¾ ¾½°¾  € f°–€°f¯f– °f €€ %f¾fnf  %  .9    €  °n ¾  O ½ $$ f° n½ n¯$°¾ ½ € O ½ $$½ ½ f° – $ $¾€fn €°– $¾€fn €°–  ½ € O 9f ° n¯ ° 9¾  ° f°°.% O I ° ¾f f ¯½ ¯ ° °¯½ ¯ °f°€fn  f½n¾f f  f½n¾f f n°¾¾¾€.9%..$.9%  –¾f°   %  f¾ °.9¾ ¾½°¾  €½¾  ° °–½ f°¾° €€ ¾  °n  9D¾ °  ° °–  ¯f– ¾°f €€  n f°½ f°¾ f° ¾nf°– €½ f°   ° °–f fnn  f ° f f –.

¯¯°nf°¾@ n°– ¾$   .

Sign up to vote on this title
UsefulNot useful