Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SOLID and Composition Root

SOLID and Composition Root

Cc8ec9594b83b5dc3c7eef345c05dc8d?s=128

sztk1209@gmail.com

April 23, 2021
Tweet

Transcript

  1. "QSJMTIJ[ )PXDPNQPTFDPEFT  40-*%BOE$PNQPTJUJPO3PPU

  2. 8IFOXSJUFDPEFʜ XFOFFEUPDPOTJEFSNBOZNBOZUIJOHT w*TJUFBTZGPSPUIFSQFPQMFUPVOEFSTUBOE $BOUIFZDIBOHFJU XJUIPVUGFBSXIFOFWFSUIFZOFFE  w*TJUFBTZUPXSJUFUFTUTXJUIPVUUPPNBOZTFUVQ  fl BLJOFTT

     %PFTUIFUFTUSFQSFTFOUUIFTQFDBOEWBMJEBUFJUQSPQFSMZ  w8IFOUIFTQFDJTDIBOHFE JTJUFBTZUPBQQMZDIBOHFXJUIPVU DIBOHJOHNBOZDPEFTBMMPWFSUIFQMBDF IJEEFOTJEFF ff FDUT  w5ISFBENBOBHFNFOU 0CKFDU-JGFDZDMF 1FSGPSNBODF BOETP POʜ w$PO fl JDUT 4DIFEVMF%FBEMJOF BOETPPOʜ
  3. 5PTPNFFYUFOU XFOFFEUP DPOTJEFSUIFN#VUDBOXF FBTFUIFTFXPSSJFT GFBST  QBJOT

  4. -FU`TDPOTJEFSJUTUFQCZTUFQ

  5. 8FBSFDSFBUJOHOFXBQQ

  6. 4QFD w4IPXJUFNMJTU w'FUDIEBUBGSPNSFNPUFTFSWFS w *GQSFNJVNVTFS DBDIFEBUBPOMPDBMTUPSBHFBOETIPX JUJGGBJMUPGFUDIEBUBGSPNSFNPUFTFSWFS w *GOPUQSFNJVNVTFS TIPXFSSPSJGGBJMUPGFUDIEBUB

    GSPNSFNPUFTFSWFS w#VUʜJGGBJMUPGFUDIEBUBGSPNSFNPUFTFSWFSGPSUIF fi STU UJNF SFUSZUPGFUDIEBUBGSPNSFNPUFTFSWFSPODFBHBJO
  7. 0,

  8. GFUDIGSPNSFNPUFTFSWFS *GQSFNJVNVTFS DBDIFEBUB *GGBJM SFUSZPODFBHBJO *GQSFNJVNVTFS DBDIFEBUB *GQSFNJVNVTFS MPBEEBUBGSPNDBDIF *GGBJMUPMPBEDBDIF

    TIPXFSSPS TIPXFSSPS
  9. %POF🎉

  10. ʜ

  11. 8IBU`TXSPOH

  12. 4UBUFGVM4JOHMFUPO 5ISFBENBOBHFNFOU -PDBM4UPSBHF

  13. 8IBU`TXSPOH w*U`TRVJUFEJ ffi DVMUUPVOEFSTUBOE "UMFBTU *DBOOPUTFFXIBU`MMIBQQFO JNNFEJBUFMZ  w5IFSFBSFNBOZIJEEFOEFQFOEFODJFT EJSFDUVTFPGTIBSFEJOTUBODF

    XIJDIBSF IBSEUPDIBOHF w*U`TRVJUFIBSEUPUFTU 
 6TFDPODSFUFSFNPUFEBUBMPBEFS 
 /FFEUPTFUVQBOEDMFBSMPDBMTUPSBHFTXIJDIDPVMEDBVTFQSPCMFNTXIFO UFTUJOHJOQBSBMMFM w*GUIFSFNPUFTFSWFSTQFDJTDIBOHFE OFFEUPDIBOHF6*DPEFFWFOUIPVHIJU`T OPUSFMBUFEUPJUTTQFD w5ISFBEIBOEMJOHNBLFTUFTUTVODPOUSPMMBCMF w.BOZDPO fl JDUTDPVMEIBQQFOCZDIBOHJOHUIFTBNF fi MF
  14. -FU`TJNQSPWFJU

  15. GFUDIGSPNSFNPUFTFSWFS *GGBJM SFUSZPODFBHBJO *GQSFNJVNVTFS DBDIFEBUB *GQSFNJVNVTFS MPBEEBUBGSPNDBDIF MPBEDBDIF *GGBJMUPMPBEDBDIF TIPXFSSPS

    "MJUUMFCJUFBTJFSUPVOEFSTUBOEʜ
  16. 4UJMMʜ w)JEEFOEFQFOEFODJFT w%J ffi DVMUUPXSJUFUFTUTXJUIPVUUPPNBOZTFUVQ  fl BLJOFTT w8IFOUIFTQFDJTDIBOHFE OFFEUPDIBOHF

    VOSFMBUFEDPEFT w5ISFBENBOBHFNFOU w$PO fl JDUT 4DIFEVMFEFBEMJOF BOETPPOʜ
  17. -FU`TDPOTJEFSNPSF

  18. 0CKFDUPSJFOUFEBQQSPBDI

  19. 'PS7JFX 7JFX 1MFBTFHJWFNFEBUB UIFO*TIPXJU 
 *EPO`UDBSFBCPVUUIFXBZUPEPJU😁

  20. (FUEBUBJOTPNFXBZ

  21. 4QFD -PBEEBUBPOMPDBMTUPSBHFJGGBJMUPGFUDI EBUBGSPNSFNPUFTFSWFS 🤔

  22. $PNQPTJUF1BUUFSO IUUQTFOXJLJQFEJBPSHXJLJ$PNQPTJUF@QBUUFSO 5IFDPNQPTJUFQBUUFSOEFTDSJCFTBHSPVQPG PCKFDUTUIBUBSFUSFBUFEUIFTBNFXBZBTB TJOHMFJOTUBODFPGUIFTBNFUZQFPGPCKFDU

  23. $PNQPTJUF1BUUFSO IUUQTFOXJLJQFEJBPSHXJLJ$PNQPTJUF@QBUUFSO

  24. (FUEBUBJOTPNFXBZ (FUEBUBGSPNSFNPUFTFSWFS ˞UIFSFBSFTUJMMNBOZDPODFSOTCVUJHOPSFUIFNGPSOPX

  25. (FUEBUBJOTPNFXBZ *GGBJMUPGFUDIEBUBGSPNSFNPUFTFSWFS USZUPMPBEEBUBGSPNMPDBMTUPSBHF 5IFSFJTOPDIBOHFPO7JFX

  26. 4QFD $BDIFEBUBPOMPDBMTUPSBHFBGUFSGFUDIJOH EBUBGSPNSFNPUFTFSWFS 🤔

  27. %FDPSBUPS1BUUFSO BMMPXTCFIBWJPSUPCFBEEFEUPBOJOEJWJEVBM PCKFDU EZOBNJDBMMZ XJUIPVUBGGFDUJOHUIF CFIBWJPSPGPUIFSPCKFDUTGSPNUIFTBNF DMBTT IUUQTFOXJLJQFEJBPSHXJLJ%FDPSBUPS@QBUUFSO

  28. 4BWFEBUBUPTPNFXIFSF

  29. %FDPSBUPS1BUUFSO

  30. 4BWFEBUBUPTPNFXIFSF 4BWFEBUBUPMPDBMTUPSBHF ˞UIFSFBSFTUJMMNBOZDPODFSOTCVUJHOPSFUIFNGPSOPX

  31. 1VSTVJUSFBEBCJMJUZ

  32. %JTQBUDI2VFVF %PFT7JFXOFFEUPDBSFBCPVUJU

  33. %FDPSBUPS1BUUFSO "GUFSMPBEJOHEBUBBTZODISPOPVTMZ DBMMCBDLPOUIFNBJOUISFBE

  34. 'VODUJPOBM"QQSPBDI *GXFVTF$PNCJOF 3Y4XJGU XFDBOSFQMBDFEFTJHOQBUUFSOMJLF EFDPSBUPSXJUIGSBNFXPSLGVODUJPOT

  35. "EEJOHPUIFSTQFDT

  36. 4JOHMF3FTQPOTJCJMJUZ1SJODJQMF ItemsServiceWithFallback ItemsServiceMainQueueDispatcher CachableItemService RemoteItemsLoader LocalItemsLoader &BDIDMBTTIBTPOFSFTQPOTJCJMJUZ POFDIBOHFSFBTPO

  37. 0QFO$MPTF1SJODJQMF *NQMFNFOUBUJPO View 1SPUPDPM *OUFSGBDF *NQMFNFOUBUJPO *NQMFNFOUBUJPO

  38. -JTLPWTVCTUJUVUJPO*OUFSGBDF TFHSFHBUJPOQSJODJQMF ItemsService CacheStore /POFFEFYUSBJNQMFNFOUBUJPO -JTLPWTVCTUJUVUJPOWJPMBUJPO

  39. %FQFOEFODZ*OWFSTJPO *NQMFNFOUBUJPO View 1SPUPDPM *OUFSGBDF *NQMFNFOUBUJPO *NQMFNFOUBUJPO

  40. &BTZUPXSJUFUFTUTGPSFBDIDPNQPOFOU

  41. -FU`TMPPLJOUPCSPBEFSBTQFDUT

  42. .PEVMBSJ[BUJPO $PNQPTBCJMJUZ FYUFOTJCJMJUZ SFVTBCJMJUZ  UFTUBCJMJUZ 0SEFS -PHJO 4FUUJOH 6*

    6* 6* $BDIF $BDIF $BDIF "1* "1* "1*
  43. 5IFOʜ 8IBU8IFO8IFSF)PXEPXFDPNQPTF UIFN 🤔

  44. $PNQPTJUJPO3PPU

  45. IUUQTXXXNBOOJOHDPNCPPLTEFQFOEFODZJOKFDUJPOQSJODJQMFTQSBDUJDFTQBUUFSOT IUUQTTQFBLFSEFDLDPNTIJ[EFQFOEFODZJOKFDUJPO 3FBEJOHNFNP

  46. $PNQPTJUJPO3PPU l8IFOZPVXSJUFMPPTFMZDPVQMFEDPEF ZPVDSFBUFNBOZDMBTTFTUPDSFBUFBO BQQMJDBUJPO*UDBOCFUFNQUJOHUPDPNQPTFUIFTFDMBTTFTBUNBOZEJGGFSFOU MPDBUJPOTJOPSEFSUPDSFBUFTNBMMTVCTZTUFNT CVUUIBUMJNJUTZPVSBCJMJUZUP JOUFSDFQUUIPTFTZTUFNTUPNPEJGZUIFJSCFIBWJPS*OTUFBE ZPVTIPVMEDPNQPTF DMBTTFTJOPOFTJOHMFBSFBPGZPVSBQQMJDBUJPO 8IFOZPVMPPLBU$POTUSVDUPS*OKFDUJPOJOJTPMBUJPO

    ZPVNBZXPOEFS EPFTO`UJU EFGFSUIFEFDJTJPOBCPVUTFMFDUJOHB%FQFOEFODZUPBOPUIFSQMBDF :FT JUEPFT  BOEUIBU`TBHPPEUIJOH5IJTNFBOTUIBUZPVHFUBDFOUSBMQMBDFXIFSFZPVDBO DPOOFDUDPMMBCPSBUJOHDMBTTFT 5IF$PNQPTJUJPO3PPUBDUTBTBUIJSEQBSUZUIBUDPOOFDUTDPOTVNFSTXJUIUIFJS TFSWJDFT5IFMPOHFSZPVEFGFSUIFEFDJTJPOPOIPXUPDPOOFDUDMBTTFT UIFNPSF ZPVLFFQZPVSPQUJPOTPQFO5IVT UIF$PNQPTJUJPO3PPUTIPVMECFQMBDFEBT DMPTFUPUIFBQQMJDBUJPO`TFOUSZQPJOUBTQPTTJCMFz
  47. $PNQPTJUJPO3PPU w "DFOUSBMJ[FEQMBDFGPSJOTUBOUJBUJOHBOEXJSJOHDPNQPTJOHBMM PUIFSNPEVMFT DPNQPOFOUT  w 4IPVMEMJWFBTDMPTFBTQPTTJCMFUPUIFBQQ`TFOUSZQPJOU PSBT BMTPLOPXO

    l.BJOz w *TUIFNPTUDPODSFUFQMBDFJOUIFBQQBTJUJOTUBOUJBUFTUIF DPODSFUFDPNQPOFOUTGPSUIFBQQ`TDPNQPTJUJPO5IF $PNQPTJUJPO3PPUJTBOBQQMJDBUJPOEFUBJM5IVT POMZBQQMJDBUJPOT TIPVMEIBWFB$PNQPTJUJPO3PPU w .PEVMFTFYDFQU.BJOTIPVMEO`UOFFE$PNQPTJUJPO3PPUT BTUIFZ TIPVMEO`UIPMEPSEFQFOEPOBQQMJDBUJPOTQFDJGJDEFUBJMT
  48. $PNQPTJUJPO3PPU 5IFJOEFQFOEFOUNPEVMFTPGPVSBQQMJDBUJPOBSF SFGFSFODFEPOMZCZUIF.BJONPEVMF

  49. $PNQPTJUJPO3PPU "WPJENJTVOEFSTUBOEJOH w JTOUBNFUIPEPSBDMBTT JUTDPODFQU *UDBOCFQBSUPGUIF .BJONFUIPE PSJUDBOTQBONVMUJQMFDMBTTFT BTMPOHBT UIFZBMMSFTJEFJOBTJOHMFNPEVMF

  50. $PNQPTJUJPO3PPU.FSJU 1BSBMMFM%FWFMPQNFOU w5IFNPEVMFTBSFJOEFQFOEFOUPGFBDIPUIFS 4P UIFZEPO`UOFFEUPCFDPODFSOFEBCPVU PUIFSNPEVMFT w5IFEFQFOEFODJFTDBOCFFBTJMZJOKFDUFEBOE SFQMBDFEXJUIPVUCSFBLJOHFYJTUJOHDPEF  QSPNPUJOHDPNQPTBCJMJUZBOEFYUFOTJCJMJUZ

  51. $PNQPTJUJPO3PPU.FSJU 5FTUBCJMJUZ w&BDIGFBUVSFNPEVMFDBOCFUFTUFEJOEFQFOEFOUMZ w$BOEPVOJUUFTUTGPSFBDIPGUIFNXJUIPVUFYUSB DFSFNPOJFT MJLFBTZODIBOEMJOH  w"MTPDBOEPJOUFHSBUJPOUFTUTBOEBDDFQUBODF UFTUTTJODFXFDBOFBTJMZSFQMBDFEFQFOEFODJFT XJUINPDLT

    DMBTTFT GVODUJPOT CZDPNQPTJOH NPEVMFTJO$PNQPTJUJPO3PPU
  52. $PNQPTJUJPO3PPU.FSJU $POUSPMMBCMF0CKFDU-JGFUJNFNBOBHFNFOU w0OMZDPNQPTJUJPOSPPULOPXTXIFOBOEIPX JOTUBODFTBSFDSFBUFEBOESFMFBTFE w.PEVMFTTIPVMEOPULOPXXIFUIFSMJGFDZDMFTPGPUIFS NPEVMFTJOTUBODFT TJOHMFUPO USBOTJFOU BOETPPO 

    w*UTIPVMEDPOUSPMGSBNFXPSLTQFDJ fi DUIJOHT 6*NVTU CFIBOEMFEPONBJOUISFBE BEEAXFBLAUPBWPJE SFUBJODZDMF BOETPPO 
  53. $PNQPTJUJPO3PPU.FSJU 3FBEBCJMJUZ w$PNQPTJUJPOSPPUJTUIFTJOHMFQPJOUXIJDIDSFBUF JOTUBODFTBOEDPNQPTFUIFN TPXFDBOTFFBMM EFQFOEFODJFT NPEVMFSFMBUJPOTIJQTGSPNUIF DPNQPTJUJPOSPPUFYQMJDJUMZ &YQMJDJUPCKFDUHSBQI 

    w&BTJMZVOEFSTUBOEBCMFTUSVDUVSFFOBCMFTBOZ EFWFMPQFSUPDIBOHFJU BWPJEQFSTPOBMJ[FEUBTLT  TJOHMFGBJMVSFQPJOU
  54. $PNQPTJUJPO3PPU.FSJU "QQMZ$SPTT$VUUJOHDPODFSOTXJUIPVUUSBWFSTBMDPEFDIBOHFT wFHMPHHJOH BOBMZUJDT w&BDINPEVMFTEPFTOU TIPVMEOU OFFEUP LOPXUIFTFDPODFSOT w0ODPNQPTJOHQSPDFTT DPNQPTJUJPOSPPU

    JOKFDUDSPTTDVUUJOHDPODFSOT w4PDBMMFE"TQFDUPSJFOUFEQSPHSBNNJOH "01
  55. $PNQPTJUJPO3PPU *UEPFTO`ULOPXBOZPUIFSNPEVMFT *UFNT6*.PEVMF

  56. 4Pʜ )PXDBOJUCFDPOOFDUFEXJUIPUIFS NPEVMFT 🤔

  57. "EBQUFSQBUUFSO IUUQTFOXJLJQFEJBPSHXJLJ"EBQUFS@QBUUFSO BMMPXTUIFJOUFSGBDFPGBOFYJTUJOHDMBTTUPCF VTFEBTBOPUIFSJOUFSGBDF

  58. "EBQUFSQBUUFSO $POWFSU"1*SFTVMUJOUP7JFX ˞*ONPSFDPNQMFYDBTF DPVMEOFFENBQ"1*SFTVMUUP7JFXEJTQMBZNPEFM .BJO.PEVMF

  59. "EBQUFSQBUUFSO .BJO.PEVMF

  60. "EBQUFSQBUUFSO

  61. /BWJHBUJPO $PVQMFXJUIDPODSFUFEFUBJM *U`TXPSTFJGUIJTDPNQPOFOUIBTPUIFSEFQFOEFODJFT *UFNT6*.PEVMF

  62. /BWJHBUJPO .BJO.PEVMF *UFNT6*.PEVMF

  63. -PHHJOH )BWFUPJNQPSUMPHNPEVMFBMMPWFSUIFQMBDF

  64. -PHHJOH .BJO.PEVMF *UFNT6*.PEVMF

  65. $PNQPTJUJPO3PPU%FNFSJU w/FFEEJTDJQMJOFUPLFFQDMFBOBSDIJUFDUVSF #SFBLJOH UIFEJTDJQMJOFMFBETUPNPSFDPNQMJDBUFESFTVMUUIBO CFGPSF  w5BLFBMPOHUJNFUPBQQMZJUUPUIFFYJTUJOHQSPKFDU w*ODSFBTJOHDMBTTFT  fi

    MFT *UNJHIUJODSFBTFDPNQMFYJUZ  w4PNFUJNFTOFFEQSPQFSUZJOKFDUJPO XFBLJGZCFDBVTF PGDZDMJDEFQFOEFODJFT
  66. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w-JOFTPGDPEFQFS fi MF 
 *OEJDBUJOHBQPUFOUJBMQSPCMFNXJUI NPEVMBSJUZBOEPQFODMPTFDBQBDJUZJOUIF DPEFCBTF 
 *OEJDBUJOHXIFUIFSUIFQSPKFDUTJTXFMM

    PSHBOJ[FE 
 ˞"IJHISBUJPDBOJOEJDBUFQPUFOUJBMQSPCMFNTXJUIUIFBNPVOUPG SFTQPOTJCJMJUJFTBOEEFQFOEFODJFTWBSJPVTDPNQPOFOUTNJHIUIBWF
  67. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w*OEFOUBUJPOTQFS fi MF 
 'JOEJOHFYDFTTDPNQMFYJUZJO DPNQPOFOUT 
 6OEFSTUBOEJOHXIBUJTIBSEPSFWFO JNQPTTJCMFUPUFTU

    
 ˞&BDIOFTUFETUBUFNFOUJODSFBTFTUIFDPNQMFYJUZPGUIFTZTUFN  XIJDIDBOSFTVMUJONPSFTUBUFNBOBHFNFOUBOEBMPUNPSF EJ ffi DVMUZJOUFTUJOH
  68. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w$POEJUJPOBMTUBUFNFOUTQFSUFTU fi MF 
 6OEFSTUBOEJOHXIFUIFSDPOEJUJPOBMMPHJD JTCFJOHTFQBSBUFEJONVMUJQMFUFTUT 
 4IPXJOHDPOTJTUFODZGPSGPMMPXJOHUIF TJOHMFSFTQPOTJCJMJUZQSJODJQMF

    
 ˞5IFSFJTNPSFUIBOPOFDBTFUPUFTU XFTIPVMEPQUUPDSFBUFBOFX UFTUBOEFYQMJDJUMZUFTUBOPUIFSCSBODIPGMPHJDJOTUFBEPGJODMVEJOHBMM UIFCSBODIFTJOBTJOHMFUFTU#SFBLEPXOUFTUTXJUINVMUJQMFMPHJDBM CSBODIJOHJOUPNVMUJQMFUFTUTXJUIPOMZPOFMPHJDBMBTTFSUJPO
  69. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w$POEJUJPOBMTUBUFNFOUTQFSQSPEVDUJPO fi MF 
 6OEFSTUBOEJOHIPXDPOEJUJPOBMTBSFTQSFBE BDSPTTPVSBQQMJDBUJPO 
 ˞6UJMJ[JOHDPOEJUJPOBMTUPNBLFEFDJTJPOTJOBMMMFWFMTPGUIF BQQMJDBUJPODPNQMJDBUFTDPNNVOJDBUJPOBOEEBUB

    fl PXTCFUXFFO UIFMBZFST
  70. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w .FUIPEBOEQSPQFSUZDPVOUQFSJOUFSGBDFQSPUPDPM 
 *EFOUJGZJOHHPPEEFTJHOQSJODJQMFT EFWFMPQFSEJTDJQMJOF BOEDPOTJTUFODZ w .FUIPEBOEQSPQFSUZDPVOUQFSJOUFSGBDFQSPUPDPM PWFSUJNF

    
 *EFOUJGZJOHHPPEEFTJHOQSJODJQMFT EFWFMPQFSEJTDJQMJOF BOEDPOTJTUFODZ 
 ˞#SFBLJOHUIFDPOUSBDUUIFJOUFSGBDFP ff FSTBOEBEEJOHBEEJUJPOBMCFIBWJPSUPGBDJMJUBUF UIFJSUBTLTIPVMECFDPOTJEFSFEIBSNGVMBTJUDBOCSFBLOPUPOMZUIFJOUFSGBDF TFHSFHBUJPOCFUXFFONPEVMFTBOEDPNQPOFOUTCVUBMTPUIF-JTLPW4VCTUJUVUJPO 1SJODJQMF SFTVMUJOHJOBNPSFSJHJEBOEGSBHJMFTZTUFN
  71. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w#PPMFBO fl BHTBTQBSBNFUFSTPSQSPQFSUJFT QFSNPEVMF 
 *OEJDBUJOHXIFUIFSUIFTZTUFNDBOCFDPNF QPUFOUJBMMZVONBJOUBJOBCMFBOEVOUFTUBCMF 
 ˞8IFUIFSZPVSDPNQPOFOUTBSFNBOBHJOHUPPNVDITUBUF

    JOUFSOBMMZBOETIPVMETQMJUUIFJSSFTQPOTJCJMJUZJOUPPOFPSNPSF DPNQPOFOUTBOESFEJSFDUUIFDPOEJUJPOUPBIJHIFSMFWFM
  72. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w1SJWBUFQSPQFSUJFTDPVOUQFSQVCMJDBOE JOUFSOBMQSPQFSUJFTDPVOUJONPEVMFT 
 *OEJDBUJOHXIFUIFSUIFTZTUFNNBZ VOOFDFTTBSJMZFYQPTFJNQMFNFOUBUJPOEFUBJMT 
 ˞8IBUQFSDFOUBHFPGPVSDPNQPOFOUQSPQFSUJFTBSFWJTJCMFUPUIF SFTUPGUIFTZTUFN JOUFSOBMMZPSQVCMJDMZ

  73. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w$PNNFOUTQFSQSPEVDUJPO fi MF 
 *OEJDBUJOHJGUIFSFBSFJTTVFTUFDIEFCUXPSL UPCFEPOFPVUTJEFTIBSFEQSPKFDUNBOBHFNFOU UPPMT OPUUSBDLFEPSWJTJCMFUPUIFXJEFSUFBN 


    ˞*ODSFBTFUIFQSPCBCJMJUZPGEJWFSHJOHGSPNBTJOHMFTPVSDFPG USVUI MJLFBQSPKFDUNBOBHFNFOUUPPM XIJDISFTVMUTJOBMBDLPGGVMM USBOTQBSFODZXJUINFNCFSTPGZPVSUFBNBOEPUIFST
  74. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w$PNNFOUTQFSUFTU fi MF 
 *OEJDBUJOHQPUFOUJBMMZVOUFTUFECFIBWJPS 
 *OEJDBUJOHJGUIFSFBSFJTTVFTUFDIEFCUXPSL UPCFEPOFPVUTJEFTIBSFEQSPKFDUNBOBHFNFOU UPPMT

    OPUUSBDLFEPSWJTJCMFUPUIFXJEFSUFBN 
 ˞4JHOJGZNJTTJOHDIFDLTJOUIFTZTUFNTCFIBWJPS
  75. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w4FUVQMJOFTPGDPEFQFSUFTU fi MF 
 6OEFSTUBOEJOHJGUIFSFJTBOFYDFTTPG EFQFOEFODJFTBOEDPO fi HVSBUJPOGPSUIFTZTUFN VOEFSUFTUUPXPSL

    
 .POJUPSJOHDPOTJTUFODZXJUIHPPEEFTJHO QSBDUJDFT TVDIBTDPNQPOFOUTIBWJOHBTJOHMF SFTQPOTJCJMJUZPSDPNQPOFOUTCFJOHEFDPVQMFE GSPNPUIFSDPODSFUFDPNQPOFOUTVTJOH EFQFOEFODZJOWFSTJPO
  76. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w$PEF$PWFSBHF 
 'JOEJOHVOUFTUFEDPEFQBUIT 
 ˞"IJHIDPEFDPWFSBHFNBZJOEJDBUFEFWFMPQFSTDPOTJTUFODZGPS XSJUJOHUFTUTBMPOHXJUIUIFQSPEVDUJPODPEF#VU JUEPFTOU HVBSBOUFFUIFBCTFODFPGQSPHSBNNFSNJTUBLFTPSNJTTJOH BTTFSUJPOT

  77. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w'JMFDPVOUQFSDPNNJU 
 1PUFOUJBMMZVOEFSTUBOEJOHUIFEFWFMPQFST`MFWFMPGEJTDJQMJOF 
 'JOEJOHPVUXIFUIFSUIFTZTUFNJTCFJOHEFWFMPQFEJOTNBMMPSCJH CBUDIFT 
 1SFEJDUJOHBMFWFMPGTZTUFNSFWFSTJCJMJUZ VOEPDPTU

    
 ˞5IJTDBOTJHOJGZNPEVMBSJUZ MPPTFDPVQMJOHJOUIFDPEFCBTFBOE EFWFMPQFSEJTDJQMJOF"TNBMMWBMVFGPSUIJTSBUJPVTVBMMZEJDUBUFT UIBUEFWFMPQFSTXPSLJOTNBMMCBUDIFT GPDVTJOHPOMZPOTQFDJ fi D DPNQPOFOUTBOEBSFOPUXPSSJFEBCPVUUIFJSQMBDFJOUIFSFTUPG UIFTZTUFN
  78. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w'JMFDPVOUQFSNFSHF 
 *OEJDBUJOHXIFOPQFSBUJPOTQFFEJTBCPVUUPGBMM 
 "TTFTTJOHJGPQFSBUJPOTQFFEIBTDIBOHFEPWFSBQFSJPEPGUJNF 
 ˞"MBSHF fi MFDPVOUEFOPUFTUIBUUIFZDSFBUFCJHTJ[FECSBODIFT

    UIBUDBODBVTFEFMBZTJOUIFEFWFMPQNFOUBOESFMFBTFDZDMFT  QTZDIPMPHJDBMGBUJHVFBOECVSOPVUGPSUIFEFWFMPQFSTBOEJODSFBTF JODPTUTGPSUIF fi SN
  79. *OEJDBUPSTUPLFFQDMFBOBSDIJUFDUVSF w3FDVSSFOU fi MFDIBOHFTDPNNJUUFEPS NFSHFEUPHFUIFS 
 *EFOUJGZJOHXFBLBCTUSBDUJPOT 
 ˞*OEJDBUFTBQPUFOUJBMMZIJEEFODPVQMJOHCFUXFFODPNQPOFOUT *EFOUJGZJOH

    fi MFTUIBUPGUFODIBOHFUPHFUIFSNBZFYQPTFXFBL BCTUSBDUJPOTCFUXFFODPNQPOFOUT4VDIBGBDUNJHIUOPUCF IBSNGVMXJUIJOBNPEVMF CVUJUTBMBSNJOHXIFODSPTTJOHNPEVMF CPVOEBSJFTUIBU POUIFTVSGBDF TFFNEFDPVQMFE FHDIBOHF BOBMZUJDTBDDPSEJOHUP6*DIBOHF