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

Apache Usergrid Internal

Apache Usergrid Internal

Sungju Jin

March 12, 2014
Tweet

More Decks by Sungju Jin

Other Decks in Technology

Transcript

  1. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%
  2. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%
  3.  8IBUJT"QBDIF6TFSHSJE ↟ %FTJHOFEGPSNVMUJUFOBODZPQFSBUJPOBM QSFEJDUBCJMJUZ
 #VJMUPO+BWB +FSTFZ"QBDIF$BTTBOESB XJUI 4%,TGPSJ04 "OESPJE

    )5.-+4 OPEFKT 3VCZ  +BWB /&5 1)1nBOETPNVDINPSF ↟ IUUQTHJUIVCDPNVTFSHSJEVTFSHSJE ↟ $SFBUPS &E"OVGG IUUQXXXBOVGGDPN  ↟ 4JODF_
  4. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%
  5. 3FTPVSDF 1045 DSFBUF (&5
 SFBE 165
 VQEBUF %&-&5&
 EFMFUF JUFNT

    DSFBUF
 BOFXJUFN MJTUJUFNT CVML
 VQEBUF
 JUFNT EFMFUF
 BMMJUFNT JUFNTJQBE FSSPS TIPXJQBE VQEBUFJQBE EFMFUFJQBE #BTJD$PODFQUT
  6. DVSM91045J)"VUIPSJ[BUJPO#FBSFS\BVUI@LFZ^E \VTFSOBNFCPC FNBJMCPC!DPNQBOZDPN^IUUQT BQJEPNBJOJPNZPSHJENZBQQJEVTFST \ BDUJPOQPTU  BQQMJDBUJPODDCBFFEDB  QBSBNT\^

     QBUIVTFST  VSJIUUQTBQJEPNBJOJPNZPSHJENZBQQJEVTFST  FOUJUJFT< \ VVJEBBEDDFFEDB  UZQFVTFS  DSFBUFE  NPEJGJFE  BDUJWBUFEUSVF  FNBJMCPC!DPNQBOZDPN  QJDUVSFIUUQTXXXHSBWBUBSDPNBWBUBSBGGDDGCECG  VTFSOBNFCPC ^ >  UJNFTUBNQ  EVSBUJPO  PSHBOJ[BUJPONZPSHJE  #BTJD$PODFQUT
  7. DVSM91045J)"VUIPSJ[BUJPO#FBSFS\BVUI@LFZ^E \VTFSOBNFCPC FNBJMCPC!DPNQBOZDPN^IUUQT BQJEPNBJOJPNZPSHJENZBQQJEVTFST \ BDUJPOQPTU  BQQMJDBUJPODDCBFFEDB  QBSBNT\^

     QBUIVTFST  VSJIUUQTBQJEPNBJOJPNZPSHJENZBQQJEVTFST  FOUJUJFT< \ VVJEBBEDDFFEDB  UZQFVTFS  DSFBUFE  NPEJGJFE  BDUJWBUFEUSVF  FNBJMCPC!DPNQBOZDPN  QJDUVSFIUUQTXXXHSBWBUBSDPNBWBUBSBGGDDGCECG  VTFSOBNFCPC ^ >  UJNFTUBNQ  EVSBUJPO  PSHBOJ[BUJPONZPSHJE  #BTJD$PODFQUT
  8. DVSM91045J)"VUIPSJ[BUJPO#FBSFS\BVUI@LFZ^E \VTFSOBNFCPC FNBJMCPC!DPNQBOZDPN^IUUQT BQJEPNBJOJPNZPSHJENZBQQJEVTFST \ BDUJPOQPTU  BQQMJDBUJPODDCBFFEDB  QBSBNT\^

     QBUIVTFST  VSJIUUQTBQJEPNBJOJPNZPSHJENZBQQJEVTFST  FOUJUJFT< \ VVJEBBEDDFFEDB  UZQFVTFS  DSFBUFE  NPEJGJFE  BDUJWBUFEUSVF  FNBJMCPC!DPNQBOZDPN  QJDUVSFIUUQTXXXHSBWBUBSDPNBWBUBSBGGDDGCECG  VTFSOBNFCPC ^ >  UJNFTUBNQ  EVSBUJPO  PSHBOJ[BUJPONZPSHJE  PSHBOJ[BUJPO BQQMJDBUJPO DPMMFDUJPO #BTJD$PODFQUT
  9. 1045 IUUQTBQJEPNBJOJPEFWJDFT $SFBUFEFWJDF 1045 IUUQTBQJEPNBJOJPVTFST $SFBUFVTFS 1045 IUUQTBQJEPNBJOJPVTFST \VTFS^EFWJDFT $SFBUFEFWJDFUPVTFS

    SFMBUJPOTIJQ 1045 IUUQTBQJEPNBJOJPEFWJDFT \EFWJDF^VTFST $SFBUFVTFSUPEFWJDF SFMBUJPOTIJQ 3FMBUJPOTIJQ #BTJD$PODFQUT
  10. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%
  11. "QQMJDBUJPO"1* ↟ 5PLFO ↟ 1SFEFGJOFE$PMMFDUJPOT ↟ 6TFST (SPVQT 3PMFT "DUJWJUJFT

     %FWJDFT &WFOUT 'PMEFST "TTFUT ↟ $PMMFDUJPOT .BOBHFNFOU"1* ↟ 5PLFO ↟ "ENJO6TFST ↟ 0SHBOJ[BUJPOT $BUFHPSJFTPG"1* 3FTUGVM"1*T
  12. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%
  13. "SDIJUFDUVSF %FTJHOCBDLHSPVOE ↟ #SFXFSsTUIFPSFN $POTJTUFODZ "WBJMBCJMJUZ 1BSUJUJPOUPMFSBODF 1 " $

    3FMBUJPOBM .Z42- 
 .442-  1PTUHSFT "NB[PO%ZOBNP EFSJWBUJWFT $BTTBOESB  7PMEFNPSU  $PVDI%# 3JBL /FPK #JHUBCMF #JHUBCMFEFSJWBUJWFT .POHP%# )CBTF )ZQFSUBCMF 3FEJT
  14. "SDIJUFDUVSF %FTJHOCBDLHSPVOE ↟ #FODINBSL 8PSLMPBE"nVQEBUFIFBWZ B SFBEPQFSBUJPOT  C VQEBUFPQFSBUJPOT


    5ISPVHIQVUJOUIJT BOEBMMGJHVSFT SFQSFTFOUTUPUBMPQFSBUJPOTQFSTFDPOE 
 JODMVEJOHSFBETBOEXSJUFT 3FGFSFODFT#FODINBSLJOH$MPVE4FSWJOH4ZTUFNTXJUI:$4#
  15. "SDIJUFDUVSF %FTJHOCBDLHSPVOE 6TFS $MVTUFSTJ[F /PEFDPVOU 6TBHF /PX 'BDFCPPL  *OCPYTFBSDI

    "CBOEPOFE  .PWFEUP)#BTF $JTDP8FC&Y 6TFSGFFE  BDUJWJUZ /FUGMJY 5#  DMVTUFS  ! "QJHFF %BUBTUPSF 'PSNTQSJOH  NJMMJPOBDDPVOU XJUINSFTQPOTFT QFSEBZ  4PDJBMHSBQI EBUB 6SCBOBJSTIJQ 3BDLTQBDF 0QFO9 5XJUUFS QSFQBSJOHNPWFUP FCBZ 3FGFSFODFT IUUQQMBOFUDBTTBOESBPSH$PNQBOZ7JFX$PNQBOZ IUUQFOXJLJQFEJBPSHXJLJ"QBDIF@$BTTBOESB
  16. "SDIJUFDUVSF %FTJHOCBDLHSPVOE 4DBMBCJMJUZ *TPMBUJPO 4JNQMF 4DBMBCJMJUZ /P*TPMBUJPO $PNQMJDBUFE 4DBMBCJMJUZ *TPMBUJPO

    /PU$PNQMJDBUFE 4DBMBCJMJUZ /P*TPMBUJPO $PNQMJDBUFE 4FQBSBUF%BUBCBTF 4IBSFE%BUBCBTF 4IBSFE 4DIFNB 4FQBSBUF 4DIFNB
  17. "SDIJUFDUVSF %FTJHOCBDLHSPVOE 4DBMBCJMJUZ *TPMBUJPO 4JNQMF 4DBMBCJMJUZ /P*TPMBUJPO $PNQMJDBUFE 4DBMBCJMJUZ *TPMBUJPO

    /PU$PNQMJDBUFE 4DBMBCJMJUZ /P*TPMBUJPO $PNQMJDBUFE 4FQBSBUF%BUBCBTF 4IBSFE%BUBCBTF 4IBSFE 4DIFNB 4FQBSBUF 4DIFNB
  18. "SDIJUFDUVSF $BTTBOESB$MVTUFS /PEF /PEF /PEF /PEF /PEF /PEF /PEF /PEF

    "QBDIF6TFSHSJE 04 MJOVY FUD 8"4 "QBDIF6TFSHSJE 04 MJOVY FUD 8"4 "QBDIF6TFSHSJE 04 MJOVY FUD 8"4 "QBDIF6TFSHSJE 04 MJOVY FUD 8"4 "QBDIF6TFSHSJE 04 MJOVY FUD 8"4
  19. "SDIJUFDUVSF 6TFSHSJE $POGJHVSBUJPO $PVOUFST $PSF 4FSWJDF 3FTU 4FSWJDF <*>4FSWJDF <">"CTUSBDU4FSWJDF

    "CTUSBDU$PMMFDUJPO4FSWJDF "CTUSBDU$POOFDUJPOT4FSWJDF "CTUSBDU1BUI#BTFE
 $PMMMFDUJPO4FSWJDF "DUJWJUJFT4FSWJDF "QQMJDBUJPOT4FSWJDF "TTFUT4FSWJDF (FOFSJD$PMMFDUJPO4FSWJDF (SPVQT4FSWJDF 3PMFT4FSWJDF 6TFST4FSWJDF ServiceManagerFactory ServiceManager ServiceRequest ServiceResults
  20. "SDIJUFDUVSF 6TFSHSJE $POGJHVSBUJPO $PVOUFST $PSF 4FSWJDF 3FTU $PSF $BTTBOESB$MVTUFS /PEF

    /PEF /PEF/ /PEF/ /PEF /PEF /PEF /PEF 3FMBUJPO.BOBHFS 3FMBUJPO.BOBHFS 3FMBUJPO.BOBHFS 3FMBUJPO.BOBHFS 3FMBUJPO.BOBHFS EntityManagerFactory EntityManagerFactory.getEntityManager(UUID applicationId) &OUJUZ.BOBHFS EntityManager.getRelationManager(EntityRef entityRef) &OUJUZ'BDUPSZ 2VFVF.BOBHFS'BDUPSZ *OEFY#VDLFU-PDBUPS 4DIFNB -PDL.BOBHFS (FP*OEFY.BOBHFS 2VFSZ1SPDFTTPS $BTTBOESB4FSWJDF *OEFY#VDLFU4DBOOFS )FDUPS
  21. "SDIJUFDUVSF 6TFSHSJE $POGJHVSBUJPO $PVOUFST $PSF 4FSWJDF 3FTU 4DIFNBPO$BTTBOESB 1IZTJDBM-BZFS 6TFSHSJE

    6TFSHSJE@"QQMJDBUJPOT ,FZ4QBDFT 6TFSHSJE ↟ "QQMJDBUJPOT ↟ 1SPQFSUJFT ↟ 5PLFOT 6TFSHSJE@"QQMJDBUJPOT ↟ "QQMJDBUJPO@"HHSFHBUF@$P VOUFST ↟ "QQMJDBUJPO@3PMFT ↟ &OUJUZ@"MJBTFT ↟ &OUJUZ@$PNQPTJUF@%JDUJPOBSJFT ↟ &OUJUZ@$POOFDUJPOT ↟ &OUJUZ@$PVOUFST ↟ &OUJUZ@%JDUJPOBSJFT ↟ &OUJUZ@*E@4FUT ↟ &OUJUZ@*OEFY ↟ &OUJUZ@*OEFY@&OUSJFT ↟ &OUJUZ@1SPQFSUJFT ↟ $POTVNFS@[email protected]@ 1SPQFSUJFT ↟ &[email protected] ↟ .2@$POTVNFST ↟ .2@$PVOUFST ↟ .2@1SPQFSUZ@*OEFY ↟ .2@1SPQFSUZ@*OEFY@&OUSJFT ↟ 2VFVF@%JDUJPOBSJFT ↟ 2VFVF@*OCPY ↟ 2VFVF@1SPQFSUJFT ↟ 2VFVF@4VCTDSJCFST ↟ 2VFVF@4VCTDSJQUJPOT 6TFSHSJE 6TFSHSJE@"QQMJDBUJPOT 6TFSHSJE 6TFSHSJE@"QQMJDBUJPOT
  22. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%
  23. "O0WFSWJFXPG%BUB1SPDFTTJOH ↟ $PMMFDUJPOT ↟ 0SHBOJ[BUJPO"QQMJDBUJPO$PMMFDUJPOT ↟ 4DIFNB ↟ 6OJRVF ↟

    *OEFYFT PQUJPO GVMMUFYUJOEFYFE  ↟ "MJBT"OPUIFSMPPLVQQSPQFSUZ ↟ *OGPSNBUJPOPGBEEFEUPUIFFOUJUZJODPMMFDUJPO ↟ &OUJUZ ↟ *OGPSNBUJPOPGQSPQFSUZ ↟ 1SPQFSUZOBNF ↟ 1SPQFSUZWBMVF
  24. "O0WFSWJFXPG%BUB1SPDFTTJOH &OUJUZ4DIFNB &OUJUZ $PMMFDUJPO*OGP &OUJUZ*OGP %JDUJPOBSZ*OGP 1SPQFSUZ*OGP BMJBT1SPQFSUZ GVMMUFYU*OEFYFE JOEFYFE*O$POOFDUJPO

    T CBTJD NVUBCMF QBUI#BTFE/BNF QVCMJD7JTJCMF SFRVJSFE VOJRVF JODMVEFE*O&YQPSU
 <*>&OUJUZ3FG VVJE UZQF <*>&OUJUZ VVJE UZQF OBNF DSFBUFE NPEJGJFE QSPQFSUJFT DPOOFDUJPOT <">"CTUSBDU&OUJUZ VVJE UZQF OBNF DSFBUFE NPEJGJFE EZOBNJD@QSPQFSUJFT EZOBNJD@TFUT <">5ZQFE&OUJUZ "DUJWJUZ "QQMJDBUJPO "TTFU %FWJDF %FWJDF &WFOU 'PMEFS (SPVQ .FTTBHF 3PMF 6TFS %ZOBNJD&OUJUZ 4JNQMF&OUJUZ3FG <*>3PMF3FG <*>"TTPDJBUFE&OUJUZ3FG 4JNQMF$PMMFDUJPO3FG 4JNQMF3PMF3FG <*>$POOFDUJPO&OUJUZ3FG <*>$PMMFDUJPO3FG
  25. "O0WFSWJFXPG%BUB1SPDFTTJOH ↟ 1SFEFGJOFE$PMMFDUJPOT ↟ 6TFST (SPVQT 3PMFT "DUJWJUJFT %FWJDFT 

    &WFOUT 'PMEFST "TTFUT ↟ %ZOBNJD$PMMFDUJPOT ↟ VVJE VOJRVF SFRVJSFE  ↟ OBNF BMJBT  ↟ DSFBUFE SFRVJSFE  ↟ NPEJGJFE SFRVJSFE  ↟ … JOEFYFE GVMMUFYU*OEFYFE $PMMFDUJPOT
  26. "O0WFSWJFXPG%BUB1SPDFTTJOH 1SFEFGJOFE$PMMFDUJPOT ↟ "QQMJDBUJPO ↟ OBNF SFRVJSFE JOEFYFE BMJBT VOJRVF

     ↟ UJUMF ↟ BDDFTTUPLFOUUM ↟ EFTDSJQUJPO ↟ DPMMFDUJPOT ↟ DPVOUFST ↟ BDUJWBUFE ↟ EJTBCMFE ↟ NPEJGJFE SFRVJSFE  ↟ … JOEFYFE GVMMUFYU*OEFYFE  ↟ BMMPX0QFO3FHJTUSBUJPO SFHJTUSBUJPO3FRVJSFT&NBJM$POGJSNBUJPO  SFHJTUSBUJPO3FRVJSFT"ENJO"QQSPWBM OPUJGZ"ENJO0G/FX6TFST ↟ BDUJWJUJFT BTTFUT FWFOUT GPMEFST HSPVQT VTFST EFWJDFT $PMMFDUJPOT
  27. "O0WFSWJFXPG%BUB1SPDFTTJOH 1SFEFGJOFE$PMMFDUJPOT ↟ 6TFST ↟ VTFSOBNF SFRVJSFE JOEFYFE GVMMUFYU*OEFYFE BMJBT

    VOJRVF  ↟ FNBJM JOEFYFE VOJRVF  ↟ OBNF JOEFYFE GVMMUFYU*OEFYFE  ↟ BDUJWBUFE JOEFYFE  ↟ EFBDUJWBUFE JOEFYFE  ↟ DPOGJSNFE JOEFYFE  ↟ EJTBCMFE JOEFYFE  ↟ QJDUVSF JOEFYFE  ↟ DSFBUFE SFRVJSFE  ↟ NPEJGJFE SFRVJSFE  ↟ … JOEFYFE GVMMUFYU*OEFYFE  ↟ DPOOFDUJPOT QFSNJTTJPOT DSFEFOUJBMT HSPVQT MJOLFE$PMMFDUJPO  EFWJDFT MJOLFE$PMMFDUJPO BDUJWJUJFT MJOLFE$PMMFDUJPO GFFE MJOLFE$PMMFDUJPO  SPMFT MJOLFE$PMMFDUJPO $PMMFDUJPOT
  28. "O0WFSWJFXPG%BUB1SPDFTTJOH 1SFEFGJOFE$PMMFDUJPOT ↟ %FWJDFT ↟ OBNF SFRVJSFE JOEFYFE BMJBT VOJRVF

     ↟ DSFBUFE SFRVJSFE  ↟ NPEJGJFE SFRVJSFE  ↟ … JOEFYFE GVMMUFYU*OEFYFE  ↟ VTFST MJOLFE$PMMFDUJPO $PMMFDUJPOT
  29. "O0WFSWJFXPG%BUB1SPDFTTJOH 1SFEFGJOFE$PMMFDUJPOT ↟ (SPVQT ↟ QBUI SFRVJSFE JOEFYFE BMJBT VOJRVF

     ↟ DSFBUFE SFRVJSFE  ↟ NPEJGJFE SFRVJSFE  ↟ … JOEFYFE GVMMUFYU*OEFYFE  ↟ VTFST MJOLFE$PMMFDUJPO DPOOFDUJPOT DSFEFOUJBMT QFSNJTTJPOT  BDUJWJUJFT MJOLFE$PMMFDUJPO GFFE MJOLFE$PMMFDUJPO SPMFT MJOLFE$PMMFDUJPO $PMMFDUJPOT
  30. "O0WFSWJFXPG%BUB1SPDFTTJOH 1SFEFGJOFE$PMMFDUJPOT ↟ 3PMF ↟ OBNF SFRVJSFE JOEFYFE BMJBT VOJRVF

     ↟ SPMF/BNF JOEFYFE  ↟ UJUMF JOEFYFE  ↟ JOBDUJWJUZ JOEFYFE  ↟ DSFBUFE SFRVJSFE  ↟ NPEJGJFE SFRVJSFE  ↟ … JOEFYFE GVMMUFYU*OEFYFE  ↟ QFSNJTTJPOT ↟ VTFST MJOLFE$PMMFDUJPO  ↟ HSPVQT MJOLFE$PMMFDUJPO $PMMFDUJPOT
  31. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%
  32. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%  $SFBUFBOFOUJUZ  6QEBUFBOFOUJUZ  %FMFUFBOFOUJUZ  3FBEBOFOUJUZ
  33. )PXJUXPSLT$36% &OUJUZ.BOBHFS*NQMCBUDI$SFBUF .VUBUPS#ZUF#VGGFSN 4USJOH FOUJUZ5ZQF $MBTT"FOUJUZ$MBTT .BQ4USJOH 0CKFDUQSPQFSUJFT 66*% JNQPSU*E

    66*%UJNFTUBNQ6VJE  &OUJUZ.BOBHFS*NQMCBUDI4FU1SPQFSUZ .VUBUPS#ZUF#VGGFSCBUDI  &OUJUZFOUJUZ 4USJOHQSPQFSUZ/BNF 0CKFDUQSPQFSUZ7BMVF CPPMFBO GPSDF CPPMFBOOP3FBE 66*%UJNFTUBNQ6VJE  3FMBUJPO.BOBHFS*NQMCBUDI6QEBUF1SPQFSUZ*OEFYFT .VUBUPS#ZUF#VGGF SCBUDI 4USJOHQSPQFSUZ/BNF 0CKFDUQSPQFSUZ7BMVF CPPMFBO FOUJUZ4DIFNB)BT1SPQFSUZ CPPMFBOOP3FBE 66*%UJNFTUBNQ6VJE  3FMBUJPO.BOBHFS*NQMCBUDI4UBSU*OEFY6QEBUF .VUBUPS#ZUF#VGGFS CBUDI &OUJUZFOUJUZ 4USJOHFOUSZ/BNF 0CKFDUFOUSZ7BMVF 66*% UJNFTUBNQ6VJE CPPMFBOTDIFNB)BT1SPQFSUZ CPPMFBOJT.VMUJ7BMVF  CPPMFBOSFNPWF-JTU&OUSZ CPPMFBOGVMMUFYU*OEFYFE CPPMFBOTLJQ3FBE $PSFNFUIPETUPDSFBUFBOFOUJUZ
  34. )PXJUXPSLT$36%  1SFDPOEJUJPO ↟"MMDPNNBOETVTFECBUDI@NVUBUFJOUIF$BTTBOESBUISJGU"1* TPZPVTIPVMEDBSF UPTFUUISJGUCVGGFSTJ[F  1SFQSPDFTTJOH ↟ (FUBOBMJBTQSPQFSUZGSPNPSHVTFSHSJEQFSTJTUFODF4DIFNB

    TVDIBTrOBNFs  ↟ (FOFSBUFBDPMMFDUJPOUZQF *OGMFDUPSQMVSBMJ[F  ↟ (FOFSBUF#VDLFU*% 4JNQMF#VDLFU*E-PDBUPS CVDLFUT  ↟ (FOFSBUFDPMMFDUJPOLFZ\BQQMJDBUJPO*E^DPMMFDUJPOT\DPMMFDUJPO@OBNF^\CVDLFU*%^ ↟ 4FUEFGBVMUQSPQFSUJFT VVJE UZQF DSFBUFE NPEJGJFE  ↟ $IFDLJOHSFRVJSFEQSPQFSUJFT -PPQUISPVHIBMMUIFQSPQFSUJFT 1SPDFTTPGDSFBUJOHBOFOUJUZ
  35. )PXJUXPSLT$36%  )BOEMJOHNFUBEBUB  &OUJUZ66*%  1SPQFSUZOBNFT EJDUJPOBSZ  

    -PPQUISPVHIBMMUIFQSPQFSUJFT  $IFDLJOHBMJBTQSPQFSUZ  $IFDLJOHVOJRVFQSPQFSUZ  4BWFQSPQFSUZ 1SPDFTTPGDSFBUJOHBOFOUJUZ DPOsU
  36. )PXJUXPSLT$36%  (FU&OUJUZ*OGPGSPNPSHVTFSHSJEQFSTJTUFODF4DIFNB  7BMJEBUFWBMVF UZQFDBTUJOH   *GQSPQFSUZWBMVFJTOVMM EPEFMFUF

     *GQSPQFSUZJTNVUBUJPO TLJQUIFQSPDFTT  $IFDLSFRVJSFEQSPQFSUZ  $IFDLVOJRVFQSPQFSUZ  $IFDLBMJBTQSPQFSUZ  *OEFYJOHQSPQFSUZJGJUOFFEFE  4BWJOHSFBMEBUB 4BWFQSPQFSUZ &OUJUZ.BOBHFS*NQMCBUDI4FU1SPQFSUZ 1SPDFTTPGDSFBUJOHBOFOUJUZ DPOsU
  37. )PXJUXPSLT$36%  #BDLHSPVOE  IUUQBOVGGDPNTFDPOEBSZJOEFYFTJODBTTBOESB  IUUQBOVGGDPNDBTTBOESBTVNNJUTGQSFTFOUBUJPO  IUUQBOVGGDPNJOEFYJOHJODBTTBOESB 

    *OEFY5ZQF$0--&$5*0/ $0//&$5*0/ (&0  (FUUPLFOTCBTFEPOMVDFOF UPLFOTFQBSBUPS TQBDF   GVMMUFYU*OEFYGBMTF  ,FZtOBNFu 7BMVFt4VOHKV+JOu   GVMMUFYU*OEFYUSVF  ,FZtOBNFu 7BMVFt4VOHKV+JOu  ,FZtOBNFLFZXPSEu 7BMVFTtTVOHKV KJOu   %FMFUFBMMNBUDIJOHJOEFYJO&OUJUZ@*OEFYGSPNUIFFOUSJFTSFUSJFWFEGSPN&OUJUZ@*OEFY@&OUSJFTJOUIFQSFWJPVTTUFQ  %FMFUFBMMDPMVNOTJO&OUJUZ@*OEFY@&OUSJFTUIBUXFSFQSFWJPVTMZSFUSJFWFE  *OTFSUOFXFOUSZJO&OUJUZ@*OEFY  *OTFSUOFXFOUSZJO&OUJUZ@*OEFY@&OUSJFT 1SPDFTTPGDSFBUJOHBOFOUJUZ DPOsU *OEFYJOH
  38. $PMVNO'BNJMZ $PMVNO'BNJMZ , , , , , , , ,

    , , , , , , $PMVNO'BNJMZ , , , , , , , , , , , , , , )PXJUXPSLT$36% &OUJUZ@*E@4FUT ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU j &OUJUZ@%JDUJPOBSJFT ,FZQSPQFSUJFT ,FZDPMMFDUJPOT ,FZJOEFYFT &OUJUZ@"MJBTFT ,FZ &OUJUZ@6OJRVF ,FZ &OUJUZ@$PNQPTJUF@%JDUJPOBSJFT ,FZDPOUBJOFS@FOUJUJFT &OUJUZ@*OEFY ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU j &OUJUZ@1SPQFSUJFT ,FZ VVJE $BTTBOESBDMVTUFS $PMVNO'BNJMZ , , , , , , , , , , , , , , $PMVNO'BNJMZ , , , , , , , , , , , , , , &OUJUZ@*OEFY@&OUSJFT ,FZ 6TFSHSJEPO$BTTBOESB 1IZTJDBM-BZFS
  39. )PXJUXPSLT$36% ↟&OUJUZ@%JDUJPOBSJFT ↟ ,FZVVJE tQSPQFSUJFTu ↟ $PMVNO ↟ /BNFQSPQFSUZ/BNF 7BMVF/VMM

    ↟ ,FZVVJE DPMMFDUJPOT ↟ $PMVNO ↟ /BNFDPMMFDUJPO@OBNF 7BMVF/VMM ↟ ,FZVVJE JOEFYFT ↟ $PMVNO ↟ /BNFDPMMFDUJPO@OBNF 7BMVF/VMM ↟&OUJUZ@*E@4FUT ↟ ,FZBQQMJDBUJPO6VJEDPMMFDUJPOT
 DPMMFDUJPO/BNFCVDLFU*E ↟ $PMVNO ↟ /BNFVVJE 7BMVF/VMM ↟&OUJUZ@"MJBTFT ↟ ,FZBQQ*E BMJBT5ZQF BMJBT ↟ $PMVNO ↟ /BNFFOUJUZ*E 7BMVFFOUJUZ*E ↟ /BNFFOUJUZ5ZQF 7BMVFFOUJUZ5ZQF ↟ /BNFBMJBT5ZQF 7BMVFBMJBT5ZQF ↟ /BNFBMJBT 7BMVFBMJBT ↟&OUJUZ@6OJRVF ↟ ,FZBQQ*EDPMMFDUJPO/BNFQSPQFSUZ/BNFWBMVF ↟ $PMVNO ↟ /BNFFOUJUZ*E 7BMVF/VMM ↟&OUJUZ@$PNQPTJUF@%JDUJPOBSJFT ↟ ,FZJUFN*E DPOUBJOFS@FOUJUJFT ↟ $PMVNO ↟ /BNF-JTU BQQMJDBUJPO DPMMFDUJPO@OBNF  BQQMJDBUJPO*E 7BMVF/VMM ↟&OUJUZ@*OEFY ↟ ,FZVVJE DPMMFDUJPO/BNF QBUI CVDLFU*E ↟ $PMVNO ↟ /BNF*OEFYUZQFDPEF WBMVF VVJE UJNFTUBNQ VVJE 7BMVF/VMM ↟&OUJUZ@*OEFY@&OUSJFT ↟ ,FZFOUJUZ*E ↟ $PMVNO ↟ /BNFFOUSZ/BNF DPEF WBM UJNFTUBNQ6VJE  OBNF 7BMVF/VMM ↟&OUJUZ@1SPQFSUJFT ↟ ,FZVVJE ↟ $PMVNO ↟ /BNFQSPQFSUZ/BNF ↟ 7BMVFFOUJUZ5ZQF QSPQFSUZ/BNF QSPQFSUZ7BMVF
  40. )PXJUXPSLT$36% ,FZT ↟ BQQ*EDEEFFCEBGBC ↟ FOUJUZ*EDBFCDEDGF ↟ CVDLFU*E ↟ DPMMFDUJPO@LFZDEEFFCEBGBCDPMMFDUJPOTVTFST

    &OUJUZ@*E@4FUT ,FZDEEFFCEBGBCDPMMFDUJPOTVTFST $PMVNO/BNF7BMVFDBFCDEDGF /VMM &OUJUZ@"MJBTFT ,FZ$BTTBOESB1FSTJTUFODF6UJMTBMJBT*% DEEFFCEBGBC VTFS TVOHKV  $PMVNO/BNF7BMVFFOUJUZ*E DBFCDEDGF $PMVNO/BNF7BMVFFOUJUZ5ZQF VTFS $PMVNO/BNF7BMVFBMJBT5ZQF VTFS $PMVNO/BNF7BMVFBMJBT TVOHKV &OUJUZ@6OJRVF ,FZDEEFFCEBGBCVTFSTVTFSOBNFTVOHKV $PMVNO/BNF7BMVFDBFCDEDGF /VMM
  41. )PXJUXPSLT$36% ,FZT ↟ BQQ*EDEEFFCEBGBC ↟ FOUJUZ*EDBFCDEDGF ↟ CVDLFU*E ↟ DPMMFDUJPO@LFZDEEFFCEBGBCDPMMFDUJPOTVTFST

    &OUJUZ@*E@4FUT ,FZDEEFFCEBGBCDPMMFDUJPOTVTFST $PMVNO/BNF7BMVFDBFCDEDGF /VMM &OUJUZ@"MJBTFT ,FZ$BTTBOESB1FSTJTUFODF6UJMTBMJBT*% DEEFFCEBGBC VTFS TVOHKV  $PMVNO/BNF7BMVFFOUJUZ*E DBFCDEDGF $PMVNO/BNF7BMVFFOUJUZ5ZQF VTFS $PMVNO/BNF7BMVFBMJBT5ZQF VTFS $PMVNO/BNF7BMVFBMJBT TVOHKV &OUJUZ@6OJRVF ,FZDEEFFCEBGBCVTFSTVTFSOBNFTVOHKV $PMVNO/BNF7BMVFDBFCDEDGF /VMM
  42. )PXJUXPSLT$36% ,FZT ↟ BQQ*EDEEFFCEBGBC ↟ FOUJUZ*EDBFCDEDGF ↟ CVDLFU*E ↟ DPMMFDUJPO@LFZDEEFFCEBGBCDPMMFDUJPOTVTFST

    &OUJUZ@%JDUJPOBSJFT ,FZDEEFFCEBGBCDPMMFDUJPOT $PMVNO/BNF7BMVFDBFCDEDGF /VMM &OUJUZ@$PNQPTJUF@%JDUJPOBSJFT ,FZDBFCDEDGFDPOUBJOFS@FOUJUJFT $PMVNO/BNF7BMVF-JTUBQQMJDBUJPO VTFST DEEFFCEBGBC /VMM &OUJUZ@1SPQFSUJFT ,FZDBFCDEDGF $PMVNO/BNF7BMVFVTFSOBNF]VTFS VTFSOBNF TVOHKV
  43. )PXJUXPSLT$36% ,FZT ↟ BQQ*EDEEFFCEBGBC ↟ FOUJUZ*EDBFCDEDGF ↟ CVDLFU*E ↟ DPMMFDUJPO@LFZDEEFFCEBGBCDPMMFDUJPOTVTFST

    &OUJUZ@*OEFY ,FZDEEFFCEBGBCVTFSTVTFSOBNF $PMVNO/BNF7BMVF TVOHKV DBFCDEDGF GEGBF CDEDGF &OUJUZ@*OEFY@&OUSJFT ,FZDBFCDEDGF $PMVNO/BNF7BMVF-JTU VTFSOBNF  TVOHKV UJNFTUBNQ6VJE OBNF *OEFY$PEF #ZUFT 4USJOH 66*% */5
  44. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%  $SFBUFBOFOUJUZ  6QEBUFBOFOUJUZ  %FMFUFBOFOUJUZ  3FBEBOFOUJUZ
  45. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%  $SFBUFBOFOUJUZ  6QEBUFBOFOUJUZ  %FMFUFBOFOUJUZ  3FBEBOFOUJUZ
  46. */%&9  8IBUJT"QBDIF6TFSHSJE   #BTJD$PODFQUT  3FTUGVM"1*T  "SDIJUFDUVSF

     "O0WFSWJFXPG%BUB1SPDFTTJOH  )PXJUXPSLT$36%  $SFBUFBOFOUJUZ  6QEBUFBOFOUJUZ  %FMFUFBOFOUJUZ  3FBEBOFOUJUZ
  47. )PXJUXPSLT$36% $PMVNO'BNJMZ &OUJUZ@*E@4FUT ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU j &OUJUZ@%JDUJPOBSJFT ,FZQSPQFSUJFT

    ,FZDPMMFDUJPOT ,FZJOEFYFT &OUJUZ@"MJBTFT ,FZ &OUJUZ@6OJRVF ,FZ &OUJUZ@$PNQPTJUF@%JDUJPOBSJFT ,FZDPOUBJOFS@FOUJUJFT &OUJUZ@*OEFY ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU j &OUJUZ@1SPQFSUJFT ,FZ VVJE $BTTBOESBDMVTUFS &OUJUZ@*OEFY@&OUSJFT ,FZ 3FBEBOFOUJUZ3FUSJFWFFOUJUJFTCZ2VFSZ
  48. )PXJUXPSLT$36% $PMVNO'BNJMZ &OUJUZ@*E@4FUT ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU j &OUJUZ@%JDUJPOBSJFT ,FZQSPQFSUJFT

    ,FZDPMMFDUJPOT ,FZJOEFYFT &OUJUZ@"MJBTFT ,FZ &OUJUZ@6OJRVF ,FZ &OUJUZ@$PNQPTJUF@%JDUJPOBSJFT ,FZDPOUBJOFS@FOUJUJFT &OUJUZ@*OEFY ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU j &OUJUZ@1SPQFSUJFT ,FZ VVJE $BTTBOESBDMVTUFS &OUJUZ@*OEFY@&OUSJFT ,FZ 3FBEBOFOUJUZ3FUSJFWFFOUJUJFTCZ2VFSZ
  49.  1BSTFRVFSZQBSBNFUFSVTJOH"/5-3 SFQSFTFOU2VFSZDMBTT )PXJUXPSLT$36% PSHBOUMSSVOUJNF1BSTFS 2VFSZ'JMUFS1BSTFS 2VFSZ 3FBEBOFOUJUZ3FUSJFWFFOUJUJFTCZ2VFSZ 66*%-JUFSBM $PNNPO5SFF

    0QFSBOE #PPMFBO0QFSBOE "OE0QFSBOE (SFBUFS5IBO &RVBMJUZ0QFSBOE (SFBUFS5IBO&RVBM -FTT5IBO -FTT5IBO&RVBM /PU0QFSBOE 0S0QFSBOE 8JUIJO0QFSBOE -JUFSBM7 4USJOH-JUFSBM 1SPQFSUZ /VNFSJD-JUFSBM -POH-JUFSBM 'MPBU-JUFSBM #PPMFBO-JUFSBM
  50. )PXJUXPSLT$36% "OE/PEF /PU/PEF <">2VFSZ/PEF #PPMFBO/PEF "MM/PEF 0S/PEF 4MJDF/PEF
 2VFSZ4MJDF 8JUIJO/PEF

    /PEF7JTJUPS 4FBSDI7JTJUPS .FSHF4PSU7JTJUPS .FSHF4PSU$POOFDUJPO7JTJUPS 2VFSZ1SPDFTTPS  1BSTFRVFSZQBSBNFUFSVTJOH"/5-3 SFQSFTFOU2VFSZDMBTT   3FQSFTFOU2VFSZ/PEFGSPN2VFSZDMBTTBU2VFSZ1SPDFTTPSQSPDFTT  7JTJUOPEFTJO4FBSDI7JTJUPSWJTJUBOEUIFOGFUDIEBUBBOENFSHF TPSU 3FBEBOFOUJUZ3FUSJFWFFOUJUJFTCZ2VFSZ
  51. )PXJUXPSLT$36%  1BSTFRVFSZQBSBNFUFSVTJOH"/5-3 SFQSFTFOU2VFSZDMBTT   3FQSFTFOU2VFSZ/PEFGSPN2VFSZDMBTTBU2VFSZ1SPDFTTPSQSPDFTT  7JTJUOPEFTJO4FBSDI7JTJUPSWJTJUBOEUIFOGFUDIEBUBBOENFSHF TPSU

    3FBEBOFOUJUZ3FUSJFWFFOUJUJFTCZ2VFSZ 4MJDF/PEF 2VFSZ4MJDF 2VFSZ4MJDF BHF 2VFSZ4MJDF QSPQFSUZ/BNFBHF TUBSU3BOHF7BMVF <DPEF 
 WBMVF  JODMVTJWFGBMTF>  GJOJTIOVMM  DVSTPSOVMM  SFWFSTFEGBMTF  OPEF*E 
 DPTU HFOEFS 2VFSZ4MJDF <QSPQFSUZ/BNFHFOEFS 
 TUBSU3BOHF7BMVF <DPEF WBMVFNBO  JODMVTJWFUSVF>  GJOJTI3BOHF7BMVF <DPEF WBMVFNBO  JODMVTJWFUSVF>  DVSTPSOVMM  SFWFSTFEGBMTF  OPEF*E DPTU> FY TFMFDU XIFSFBHFBOEHFOEFSNBO FY TFMFDU XIFSFBHFBOEHFOEFSrNBOPSBHF 2VFSZ4MJDF 2VFSZ4MJDF BHF 2VFSZ4MJDF QSPQFSUZ/BNFBHF TUBSU3BOHF7BMVF <DPEF 
 WBMVF  JODMVTJWFGBMTF>  GJOJTIOVMM  DVSTPSOVMM  SFWFSTFEGBMTF  OPEF*E 
 DPTU HFOEFS 2VFSZ4MJDF <QSPQFSUZ/BNFHFOEFS 
 TUBSU3BOHF7BMVF <DPEF WBMVFNBO  JODMVTJWFUSVF>  GJOJTI3BOHF7BMVF <DPEF WBMVFNBO  JODMVTJWFUSVF>  DVSTPSOVMM  SFWFSTFEGBMTF  OPEF*E DPTU> 4MJDF/PEF 2VFSZ4MJDF 2VFSZ4MJDF BHF 2VFSZ4MJDF <QSPQFSUZ/BNFBHF  TUBSU3BOHF7BMVF <DPEF WBMVF  JODMVTJWFUSVF>  GJOJTI3BOHF7BMVF <DPEF WBMVF  JODMVTJWFUSVF>  DVSTPSOVMM  SFWFSTFEGBMTF  OPEF*E DPTU>
  52. )PXJUXPSLT$36%  1BSTFRVFSZQBSBNFUFSVTJOH"/5-3 SFQSFTFOU2VFSZDMBTT   3FQSFTFOU2VFSZ/PEFGSPN2VFSZDMBTTBU2VFSZ1SPDFTTPSQSPDFTT  7JTJUOPEFTJO4FBSDI7JTJUPSWJTJUBOEUIFOGFUDIEBUBBOENFSHF TPSU

     *GMPHJDBMPQFSBOE "/% 03 FUD JTOVMMPSEFSCZGJFMEXIFSFGJFME
 4JNQMF2VFSZ
 FMTF
 $PNQMFY2VFSZ  TFMFDU XIFSFDBUFHPSZDBUPSEFSCZDBUFHPSZEFTD4JNQMF2VFSZ  TFMFDU XIFSFDBUFHPSZDBUPSEFSCZDSFBUFEEFTD$PNQMFY 2VFSZ  TFMFDU XIFSFDBUFHPSZDBU"/%HJSMUSVFPSEFSCZDBUFHPSZEFTD $PNQMFY2VFSZ 3FBEBOFOUJUZ3FUSJFWFFOUJUJFTCZ2VFSZ
  53. )PXJUXPSLT$36% 3FBEBOFOUJUZ3FUSJFWFFOUJUJFTCZ2VFSZ ,FZBQQ*%DPMMFDUJPOQSPQFSUZCVDLFU
 …VTFSTHFOEFS… $PMVNOT *OEFYDPEF 1SPQFSUZWBMVF &OUJUZ*E 5JNF66*% 

    NBO …… j  XPNFO …… j  NBO …… j  XPNFO …… j &OUJUZ@*OEFY ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU ,FZCVDLFU j *OEFY$PEF ↟ #ZUFT ↟ 4USJOH ↟ 66*% ↟ */5 ,FZBQQ*%DPMMFDUJPOQSPQFSUZCVDLFU
 …VTFSTHFOEFS… $PMVNOT *OEFYDPEF 1SPQFSUZWBMVF &OUJUZ*E 5JNF66*%  NBO …… j  XPNFO …… j  NBO …… j  XPNFO …… j 3FUSJFWFEBUBUISPVHIDBTTBOESBDPNNBOE HFU NVMUJHFU HFU@TMJDF NVMUJHFU@TMJDF  2VFSZTFMFDU XIFSFHFOEFSNBOPSEFSCZDSFBUFEEFTD