TELKOM NIKA Indonesia n  Journal of  Electrical En gineering   Vol. 15, No. 2, August 201 5, pp. 352 ~  360   DOI: 10.115 9 1 /telkomni ka. v 15i2.808 1        352     Re cei v ed Ma y 13, 201 5; Revi sed  Jul y  4, 2015; Accept ed Jul y  20, 2 015   Three-Dimensional Application-Specific Protocol  Architecture for Wireless Sensor Networks       Mosta f a Bag houri 1 , Abde rrahmane  Ha jraoui 2 , Saad Chakk or Dep a rtment of Ph y s ics, Com m unic a tion a n d  detection s y st ems lab o rator y F a cult y   of Scie nces, Univ ersit y  of Abd e lma l e k  Essaâdi, T e toua n, Morocco   *Corres p o ndi n g  author, e-ma i l : bagh ouri.mo stafa@gma il.c o m 1 , ad_ha jra o u i@h o tmai l.co m 2 ,   saadc hakk o r@ gmail.c o m 3       A b st r a ct   Many rese archers assu me that  the distributio n of the nod es  is don e in a tw o-dime nsi o n a l   envir on me nt in  the r easo n  th at the  hei ght  o f  this n e tw ork i s  ne gli g ib le  co mp are d  to  its  w i dth an d l e n g t h.  How e ver, in t he re ality, thr ee-d i mens ion a l  (3D) de pl oyment of the w i r e less  s ensor  netw o rks is u s ed.   T herefore,  ma ny ap plic atio n s  r equ ire  3D  architectur e   such as  un de rw ater, space  commun i cati ons,   atmos p h e ric, forest or b u i l di ng. Unfort unat ely,  the  ener gy cons u m pti on a nd thr o u ghp ut in th 3 D   envir on me nt d e creas es cons i dera b ly co mpa r ed to 2D  in  w h ich w e  can t n e g lect the m  i n  s o me a ppl icatio ns.  In his pap er we app lie d the 3 D  architectur e  in LEACH  prot o c ol an d w e  prove by compute r  simu latio n  ho w   this 2 D  a ppr ox imatio n is  n o t r easo n a b le  sinc e the   lif eti m o f  3D W S N  d e c r ease  by  ab out  21 over th a n   2D W S N.     Ke y w ords :   w i reless se nso r  netw o rks, LEACH pr otoco l Energy- e ffici ency, 2D  an d  3D W S N, ne tw ork  lifeti m e         Copy right  ©  2015 In stitu t e o f  Ad van ced  En g i n eerin g and  Scien ce. All  rig h t s reser ve d .       1. Introduc tion   In the reality the physical  world  we liv e in , is a 3 D  envi-ronm ent. Therefo r e, many  appli c ation s , su ch as und e r wate r,  u nde rgrou nd,  ai rbo r ne, spa c e   co mmuni cation s,  atmo sph e ri c,  forest, b ody o r  buil d ing, of  WSN  depl oyed in th ree - di mensi onal  sp ace  (see  Figu re1 ) . A wi rele ss  sen s o r  netwo rk (WS N ) is  con s id ere d  a s  thre e-dim e nsio nal (3 D) whe n  the hei ght of deploy ed   sen s o r  no de s field is n o t n egligible  a s  com-p a re d to l ength a nd b r eadth of n e twork [1]. Ho we ver,  with the com p lexity of  the design a nd  analysi s  of  the 3D WS N, wirel e ss sen s or network in  2D   plane a r e mo re studi ed tha n  in 3D spa c e .   A 3D wi rele ss sensor n e twork i s  a set wirel e ss  sen s or no de s dist ributed i n  a 3 D  plan e.  Each sen s or  node ha s em issi on to sen s e the event s detection, su ch a s  temperature, pressu re   or vib r ation  a nd  sen d  thei r mea s u r eme n ts to wa rd  pro c e ssi ng  center called  sink [1,  2]. Du e to  the limitation  in their  battery capa city wh ich thei r repla c eme n t is  im possibl e, opti m ization  of th is  uniqu e re so u r ce  ha s be co me an im port ant issue.  No de cl uste ring  is an  effective tech niqu e for  improvin g the  ene rgy effici ency  and  prol ongin g  t he  n e twork lifetim e of a  WS N [ 3 ] and  ha s b een  widely stu d ie d in 2D WS Ns.  LEACH [3, 4]  is o ne  of the  first  proto c ol whi c use thi s  te chni que  a nd h a s be en  applie d   into  the und erwater  envi r on -ment by  doin g  so m e  chan ge s [ 5 -8]. All of  these  literatu r e s   con s id ere d  that the node s are di strib u te d in tow-di me nsio nal area.   In this pap er,  we sho w  tha t  approximate  t he 3D field i n  the 2D  envi r onm ent depl oyment  is not negli g ib le whe n  a hei ght of network is g r eate r The re st of the pape r org a n izatio n is do ne as follo ws:  Section II summari ze s the  related   work. T h ree-dimensional  wire-les s sensor  net work model  i s  pr ovided in  secti on III. The Si mu- la tio n  r e s u lts a r ca rr ie ou in  s e c t io IV.  F i n a lly w e  c o nc lud e  o u r  r e se ar ch  w o rk   an g i ve  s o me   per spe c t i v e s i n  se ct ion V .      Evaluation Warning : The document was created with Spire.PDF for Python.
TELKOM NIKA   ISSN:  2302-4 046     Thre e-Dim e n s ion a l Application-Sp ecifi c  Protocol  Architecture for  Wirel e ss… (Mostafa  Bag houri )   353   a)      b)      c)       d)  Figure 1. Exa m ples of three-dimensiona l wi reless sen s or networks:  a) underwate r, b)  underground,  c) airborne, and d) body            2. R e lated  Work  Some works  try to use th e existing  WSN cl uste ring  proto c ol  for  WSN i n  u n d e rwater  environ ment.  Refe re nce  [6] assum e d  UASNs  are  less dynam ic tha n  n o rmal  WSNs  and  prop osed  th e LEACH-L, wh ich upd ates  its state  lo cally , and  red u ced  the ove r he ad  of LEACH. In   [9], a clusteri ng schem e is propo se d in the contex t o f  routing sch e me to extend the lifetime of  UASN. Refe rence [10] de sign ed a cl uster stru ct u r without con s i derin g ene rg y problem. G u  et  al [11] have pre s ente d  a feasi b le ro utin g prot o c ol for undergro und  WSN in coa l  mine, called  LEACH-min e . In the algo rithm, all nod e s  are lo cated  in three  sid e s  of the XY p r oje c tion pl an and in the in ternal of the  rectan gula r   of the XZ  projectio n  plan e. Zhou et al [12, 13] have   deploye d  a  2 D   WSN fo coal min e , co mpari ng  to th e ra ndom  no de de ployme nt strate gy, the  strategy prop ose d  in this work can prolong t he life by two times. Ho weve r, they have  not   con s id ere d  the influen ce of  height of the netwo rk.   Gene rally, in the pra c tical  appli c ation s  of  WSN, the sen s o r  nod es need to be deployed   and  comm uni cate in th e th ree - dime nsi o nal area in t he orde r to  monitori ng th e ho stile re gi ons   su ch a s  un d e rwater, un d e rg rou nd min e , airbo r ne,  a nd body e n vironm ents. Th erefo r e, to more   approa ch to the reality situ ations, a 3 D  WSN d eploy ment is stu d ied dentally in  this pape r.  Based  on th e analy s is  a bove, we fin d  t hat few  works  on 3 D   deployme nt have be en   studied for WSNs. Driv en by this observation;  we will show by simul a tion that these  assumptio n and ap proxim ations a r e not  reas ona ble i n  some a ppli c ation s  of WSN.      3.  Three  Dimen s ional Wirel ess Senso r  Net w o r k M o dels   3.1.  Energ y  Mod e l   This study assume s a simple model  for  the radio  hardware where the transmitter  dissipates en ergy for runni ng the radio electroni cs to transmit and amplify  the  signals, and the   receiver runs the radio elec tronics for recept ion of signals [7]. Mu ltip ath fading  model ( d  power  loss) for larg e distance transmissions  and the free  space mode l ( d power loss) for proxima l   transmissio n s are conside r ed. Thus to tr ansmit an  b its  message over a  distance d , the  radio   expends:       ,        ,          ( 1 )                       ( 2 )   Evaluation Warning : The document was created with Spire.PDF for Python.
                             ISSN: 23 02-4 046                     TELKOM NI KA  Vol. 15, No. 2, August 2015 :  352 –  360   354      ,   ,   ,          ( 3 )     Where  d o  is the distance threshold for swapping ampl if ication mode ls, which can be calculated as       To receive an    message the receiver expends:                      ( 4 )     To aggregate n  data signals of length l b its the energy con s umption wa s calculated   as:                       ( 5 )     3.2. Net w o r M o del  This section describ es the network mod e l and other b a sic assumptions:  1)  N sen s ors are uniformly  distributed within a square 3 D  rectangula r  field of area    . The Base Station is positioned at the c enter of the square  regio n . The number o f   senso r  nodes N to be deployed depends spec ifically on the application.    2)  All nodes are deployed randomly.  3)  Each senso r  can sen s e the environm ent in  the 3D sphere of radius r.  4)  All sensors are homogeneo us, i.e.,  they  have the same capacities.  5)  All the senso r  nodes have  a particular id enti fier (ID) al located to the m . Each clu s ter   head coordin a tes the MAC  and routing o f  packets  within their clusters. (see Figure 2)      Figure 2. Three-dimension a l Wi reless Sensor Network model      3.3.  Optimal Nu mber of Clus ter    We assume there are   no des distributed uniformly in        3D region. If there   are   clusters, there are on  average   /  nodes per cluster. Each cluster-head dissipa tes energy  receiving sig nals from the nodes and  transmitti ng  the aggrega te signal to the base station.  Therefore, the energy dissipated in the  cl uster-head n ode during a single frame is:                          ( 6 )     Where   is the number of bits in each data messag e   is the distance from the cluster head   node to the  BS, and we ha ve assumed perfect data aggregation   The expressi on for the ene rgy spends b y  a non-cluster head is given by:                      ( 7 )     Where    is the  distance from the node to  the cluster he ad.    Evaluation Warning : The document was created with Spire.PDF for Python.
TELKOM NIKA   ISSN:  2302-4 046     Thre e-Dim e n s ion a l Application-Sp ecifi c  Protocol  Architecture for  Wirel e ss… (Mostafa  Bag houri )   355 Let  Ed   be the Expected distance of cluster h ead from the base station. Assuming  that  the nodes are uniformly distributed,   so it is calculated as follows:            , ,         ( 8 )     Where  f x, y, z  is the  probability d ensity  function of  three di mensions ran dom variable    , ,    which is uniform and given  by:                   ( 9 )     If we assume that base  station is the  cent er of th e network we can passin g  in the   spheri c al coo r dinates:        , , sin           ( 1 0 )     The area of network is asp heric with radius    3/4  .  If the density of senso r  nod es is uniform  throughout the area  then b e comes inde pendent  of   r θ  and   then:         0 . 5312          ( 1 1 )     The expected  square d  distance from th e nodes to the cluster hea d (assumed to be at  the center of  mass of t he cluster) is given by:        , , sin           ( 1 2 )     If we assum e  this area is a sphe re  with radius    3/4 and  , , is  constant for  r θ  and, (10) simplifies to        sin    /         ( 1 3 )     If  the density  of nodes is uniform throughout the cluster area, then   /  and:                    ( 1 4 )     Therefore, the total energy dissi pated in  the network per round,     , is expresse by:                     ( 1 5 )     Where    is the  energy dissip a ted in cluster which giving by:          1            ( 1 6 )     This can be calculated by:                        (17)    Therefore, the total energy dissipated  in  the network is simplified b y       2                 (18)  Evaluation Warning : The document was created with Spire.PDF for Python.
                             ISSN: 23 02-4 046                     TELKOM NI KA  Vol. 15, No. 2, August 2015 :  352 –  360   356 We can find the  optimu m  number of clus ters  by  s e tting the  d e rivative  of    with  res p ec t to c  t o  z e ro.         0             ( 1 9 )        0 .2147              ( 2 0 )     The optimal p r obability  for  becoming a cl uster-hea d ca n also be computed as:                    ( 2 1 )            Figure 3. Variation of energ y  consumption  for different  values of clusters number  c       In Figure 3, we  s h ow the  average energy c o ns umption per round  by  each s e nsor node  as a fun c tion  of the numbe r of cluste rs for two ty pes  of model, 3D  and 2 D  WSN.  Firstly, graph  of  the LEACH 3 D  mo del follo w the  sam e  o f  LEACH  2D.  Secon d ly, the  gra ph of LE ACH  3D  mod e sho w s that  th e si mulation   agre e well  with the  anal ysis  re sults. In  t he oth e r ha n d , the  3D mo del  con s um es m o re  ene rgy th an the 2 D  m o del which de pend s e s sent ially to the no  negligi b le val u e   of the net work hei ght. Ho wever, thi s   model h a a n  optimal  nu mber  of clu s t e rs le ss th an  the  other  mod e whi c ca n e x ploit advant ageo us to m i nimize  the li fetime of the  network.In this  se ction, it is  explained th e  result s of research a nd at  the sam e  time is given the  comp reh e n s i v e   discu ssi on.  Result can  be  prese n ted i n   figure s g r ap h s , table s   and   others th at m a ke  the  re ad er   unde rsta nd e a sily [2, 5]. T he discu s sion  can be ma de  in several  su b-chapte r s.      4. Simulation  Results   4.1.  Parameter Setting s   In this secti on, we  stud y the pe rform ance of  L EACH 3D  p r ot ocol unde different   scena rio s  usi ng MATLAB. We con s id er a  model illustrate in the Figure 2 with   N 100  nodes  rand omly an d uniformly  distrib u ted  in a  100m 100m 100m field. To comp are th e   perfo rman ce   of LEACH 3 D  with  LEACH 2 D  p r oto c ol, we i gno re  the effect  caused by  sig nal  colli sion a nd i n terferen ce i n  the wi rele ss chan nel. Th e radi o pa ra meters u s ed i n  our  simul a tions  are sho w n in  Table 1.               2 4 6 8 10 12 14 0. 0 4 5 0. 04 55 0. 0 4 6 0. 04 65 0. 0 4 7 0. 04 75 0. 0 4 8 0. 04 85 0. 0 4 9 0. 04 95 0. 0 5     X :  3. 59 1 Y :  0. 04 56 4 N u m b er o f  cl u s t e r s E n e r gy c o n s um pt i o n( J ) T o t al  energy  c o n s um p t i o n i n   t h net w o r k  p e r ro un d X:  2 . 9 Y:  0 . 04 57 8 L E A CH 2D L E A CH 3D Evaluation Warning : The document was created with Spire.PDF for Python.
TELKOM NIKA   ISSN:  2302-4 046     Thre e-Dim e n s ion a l Application-Sp ecifi c  Protocol  Architecture for  Wirel e ss… (Mostafa  Bag houri )   357 Table 1. Energy Model Parameters  Parameter Value  Initial Node Ener g y   0.5J  N 100  P 0.05  E   50  nJ /bit   E   5  pJ/ b it   ϵ    10 pJ/bit/m   ϵ    0.0013 pJ/bit/m   d    100 m     500 B y tes   Rounds  2000       4.1.1. Simula tion metrics   Perform a n c metrics u s ed  in the simulati on study are:   1)  Energy con s u m ption analy s is    2)  Numb er of ali v e node s per  roun d.   3)  Percentag e o f   Node death    4) Thro ugh put   5) De cre a se:                       100         ( 2 2 )     4.2. Simulation  Results   4.2.1.  Energ y  consumption ana l y s is    The perfo rma n ce of LEACH 3D is  comp ared  with  that of the original LEACH in term s of   energy a nd i s   sho w n  in   Figure 4.  Wi th the  us e o f  3D de ploy ment of  nod es, the  e nergy  con s um ption  of the net work is de crea se d. This i s   du e to the g a in  of the en erg y  dissi pated   by  height of net work. From the graph it is clea r t hat LE ACH 3 D  de crease twice th e ene rgy savi ngs  than LEACH proto c ol.       Figure 4. Energy analysi s  compa r ison of LEACH 3 D  a nd LEACH 2 D       4.2.2. Net w o r Li fe time  The  numb e of nod es aliv e for ea ch  round  of d a ta  tran smi ssi on  is  ob se rved  for th e   LEACH 2 D   a nd 3 D  protocols to  eval uat e the  lifet ime  of the  network. Fig u re  5  a nd Fi gure  show  the pe rform a nce  of LEACH 3 D   com pared to LEA C H 2D. It is ob served th at th e LEACH 3 D  is  less perfo rm  than LEACH 2D du e to energy  dissipation of individual nod e throug hout  the  netwo rk  whi c h depe nd e s sentially on t he distan ce b e t ween n ode and si nk.   0 10 20 30 40 50 60 0 250 500 750 1000 1250 1500 1750 2000 Tota l   Ene r g y   of   the   Network   (J) R o unds LEACH_3D LEACH_2D Evaluation Warning : The document was created with Spire.PDF for Python.
                             ISSN: 23 02-4 046                     TELKOM NI KA  Vol. 15, No. 2, August 2015 :  352 –  360   358     Figure 5. Nu mber of de ad  node s per  ro und  compa r i s on of LEACH  3D an d LEACH 2D    Figure 6. Nu mber of alive  node s pe r ro und  compa r i s on of LEACH  3D an d LEACH 2D    4.2.3. Through put  Referre d  to Figure 7, it  sho w  cl early   that LEACH 3D p r ovid e a poor through put  comp ared  to LEACH 2D p r otocol,  this decrea s i s  j u stified by th e low lifetime  whi c h give t he  three dim e n s i onal de ploym ent of the nod es in the net work.     Figure 7. Performa nce of the proto c ol     4.2.4. Decr eas e   Generally, we can illustrat e  t he decrease of the LEACH 3D  in the Figure 8. It’s noted  that the throu ghput d e cre a s e s  21%  as  much  than  L EACH 2 D   du e to its le ss e nergy.  Whe r e a s,  LEACH 2 D  o u tperfo rms th e FND of LE ACH 2 D  by  21% and by 28% for LND. In the other h and,  LEACH 3 D  consume s  32 % more ene rgy than LEACH 2 D .   0 10 20 30 40 50 60 70 80 90 100 110 0 250 500 750 1000 1250 1500 1750 2000 Number   of   de a d   node s R o unds LEACH_3D LEACH_2D 0 10 20 30 40 50 60 70 80 90 100 110 0 250 500 750 1000 1250 1500 1750 2000 Number   of   al i v en o d es R o unds LEACH_3D LEACH_2D 0 1000 2000 3000 4000 5000 6000 0 250 500 750 1000 1250 1500 1750 2000 Number   of   pa cke t s R o unds LEACH_3D LEACH_2D Evaluation Warning : The document was created with Spire.PDF for Python.
TELKOM NIKA   ISSN:  2302-4 046     Thre e-Dim e n s ion a l Application-Sp ecifi c  Protocol  Architecture  for Wirel e ss… (Mostafa  Bag houri )   359 Figure 8. De crea se of LEACH 3 D  comp ared to LEACH 2D.       4.3. Resul t   An aly s is  From ou r si mulation s, we obse r ved  that LEACH 3D con s um es more en ergy and  delivers less  packet s  to the base  statio n. These re sults ca n be in terpreted by the differen c e  of  distan ce b e twee n nod es i n  both situati ons  whi c h na turally cau s e s  by the ran d o m deploym e nt of  node s.       5.  Conclu sion and Futu r Work   R e c e n t ly,  3D  w i r e le ss  s e n s o r   ne tw ork s   ha ve  kno w great  prevale n t due  to thei r la rge   appli c ation s  su ch as  un d e rwater, sp ace  commu ni ca tions, atmo sp heri c , forest  or b u ildin g. T he  analytic of 3 D  WSN i s  more  compl e xity  than  the analytic in 2D WS N. Therefo r e, ma ny  resea r che s  p r oje c t the 3D WSN in 2D  WSN. In th is pape r, we de monst r ate by  simulation, that  this app roxim a tion is n o t reasona ble if the heig h of netwo rk i s  g r eater tha n  le ngth and  bre adth   of this netwo rk. We st rongl y persu ade d that proje c tion  of WSN in 2D enviro nme n t is unju s tifiable   in reason that the 3D  WSN i s  much  cl oser to our physical  word.  As  future  work, we  will  work  to  optimize  the   energy con s u m ption of  this network,  sin c e th e n u mb er  of cl uste head  in  3D  WSN  gives mo re re sult than 2 D  WSN.       Referen ces   [1]  HM Ammari, S K  Das. C o ver a ge  and  con nec tivit y   in thr ee- di mensi ona w i re less se nsor  net w o rks us in g   percolation theory IEEE Trans. Parallel Distr i b. Syst. (IEEE  TPDS) . 2009; 20(6).    [2] Kay   Romer,  Friedemann  Mattern. T he Design Spac e of W i reless Se ns or Net w orks.  IEEE Wireles s   Co mmun icati o ns.  2004; 1 1 (6) :  54-61.   [3]  W endi  R H e in zelma n , Ana n tha C h a ndrak a s an, Har i  Ba la krishn an.  En er gy efficie n t co mmu n icati o n   protoco l  for w i reless  micr ose n sor netw o rks . IEEE International Conference on S y stem  Sciences .   200 0: 1-10.   [4]  W  Heinz e lma n ,  A Cha ndr aka s an, H B a l a kri s hna n. An   ap plicati o n  spec ific prot ocol  arc h itecture  fo r   w i rel e ss micr o s ensor  net w o r ks.  IEEE T r ansactions  on W i reless  Co mmunic a tions . 20 02;  1(4): 66 0- 670.   [5]  Xi Li, Yo ng qi an W a ng, Ji ng j i n Z h ou.  An  e n e rgy-effici ent cl usterin g  a l g o rit h m for  und erw a ter ac oustic   sensor n e tw orks . Control En gin eeri ng a nd  Commun i cati o n  T e chnolo g y  ( I CCECT ), 2012 Internati ona l   Confer ence. 2 012: 71 1-7 14.   [6]  Li, S L  F a n g ,  YC Z han g.  T he study  on   clusteri ng  alg o r ithm of  the  u nderw a ter  aco u stic se nsor   netw o rks.   T he 14th Intern atio nal C onfer enc e  on Mech atron i cs and Mac h i n e Visio n  in Pr a c tice (M2VIP  200 7). 200 7.  [7]  G uangs on g Yang, Min gbo  Xi ao, En Ch e ng, Jing Z h a n g A cluster-head se lectio n  scheme for   und erw a ter a c oustic se nso r  netw o rks . Commun i cati o n s an d Mob i l e  Comp utin g  (CMC), 201 Internatio na l C onfere n ce. 20 1 0 ; 3: 188-1 91.   [8]  Liu G, Wei C.   A new  multi- path ro utin g p r otocol  bas ed  on  cl uster for  und erw a ter ac oustic se nso r   netw o rks . Internatio nal C onfer ence o n  Mult im edi a T e chnolo g y  (ICMT ) . 2011: 91-94.   [9]  P W ang,  C  Li,  J Z hen g.  D i stri buted  mi ni mu m-cost  c l uster i ng pr otoc ol f o r un derw a ter s e nsor  netw o rks   (UWSNs) . IEEE Internatio nal  Confer ence  on  Co mmunic a tio n s (ICC 200 7). 200 7: 351 0-35 15.   [10]  Salva-G a r au F ,  Stojanovic M.   Multi-cluster p r otocol for ad  hoc mo b ile u n derw a ter acou stic netw o rks O C EANS 200 3  Proceed in gs. 200 3; 1(26): 91 -98.  FND 21% LND 28% Throug hput   21% Energy 32% LEACH   3D   an d   LEACH   2D   in crease Evaluation Warning : The document was created with Spire.PDF for Python.
                             ISSN: 23 02-4 046                     TELKOM NI KA  Vol. 15, No. 2, August 2015 :  352 –  360   360 [11]  X Gu, Y Jin, Y Sun, J Yan.  Maxi mu m lifeti m e ro utin g strategi es fo r wir e less sensor networks in coal   mi ne .  In 201 0 Internatio na l C onfere n ce o n  Comp uter Engi neer ing a nd T e chno log y . 2 010 : 341-34 4.  [12]  Z C  Z hu, GB  Z hou, GZ  Chen. Ch ain-t y p e   w i re less u n dergr oun d min e  sens or net w o rks for ga s   monitori ng.  Ad vance d  Scie nc e Letters.  201 1 ;  4(2): 391-39 9 .     [13]  GB Z hou, Z C   Z hu, GZ  Chen, NN Hu.  Energy-efficie n t chain-typ e  w i rele ss sensor net w o rk for gas   mo nitori ng . In Internati o n a l Co nferenc e on Inf o rmatio n  an d Comp uting Sci ence. 20 09: 12 5-12 8.   Evaluation Warning : The document was created with Spire.PDF for Python.