/**
 *Submitted for verification at Etherscan.io on 2021-05-26
*/

/**
 *Submitted for verification at Etherscan.io on 2021-05-25
*/

/**
 *Submitted for verification at Etherscan.io on 2021-05-25
*/

/**
 *Submitted for verification at Etherscan.io on 2020-08-14
*/

pragma solidity ^0.5.0;
// ----------------------------------------------------------------------------
// 
// Hugo Troll- $MyHugo here to save his family from MOON
//
// Total supply: 1,234,568,907,777,780 $MyHugo
//   
//    Liquidity: 40%
//    Burned: 50%
// 
//    Marketing: 5%
//    Initial Liquidity Offering: 5%
//    TEAM     :00000000000%
//
//    Website — http://hugo-troll.com
//
//    Telegram — https://t.me/HugoTroll
//
// ----------------------------------------------------------------------------
//  . .  .  . .  . .. .  . .  . .  .  . .    .IDP    .  . .  . .. .  . .  . . 
//                                       :QBBgr                             
//          i:                  EB      BBB:                                
//           EisQ7                :BB    BB.   iLggb:                         
//          5r  .BL                 BB  BQ  vBBQBZbP7                         
//          s1Jr :B.                 B. Q :BQr                                
//           jPQ: Pb                ::27Xv2                        .::.       
//            .7R :B                LXdEPi irKq5:                r7r7vP7      
//              is QY          qK.vQDDBBgjPP2.                 .K.:DSrBr      
//               X.7g         .S BBBBBQBBBBBQBJu              :Z rBbrP7       
//               .X.B       v7Ds  MIMsM.YQgBB7 BB1           .g 7BB1Y.        
//                X:br    s.PBBr7  v5.i v72u  iQBBP          Q iBr.           
//.               iU7K   .XvBB2sd:L.      2  JrSBBBPi.      M:.B:             
//                 E.g  :SSBB:.KRE.       :uSP1iLBBM12i    1s Bs              
//  .              K:5..rsBBr.77vSQ7    iLY2Xv...MBBgi:.  id PP               
//                 BY:s rZBq ...  .I: rBBDu7iii:.vQBQqL  .g Jg                
//.               .BK 55EQB.YJ5Kbu.    .:::.  .:.:BQBIr. d iQ                 
//                vPB .BQBgii.  .qM.  vZjJ2dI:....BBBMJr2 :B                  
//               .YIB. JBB.       5: vX     JQ7:: ZBBQPr .BX                  
//               u:BBr JM         ii.S       :Br:.1BBB  .BBU                  
//               UrBBU:Q.    RQ iXL.vS. .     7M:.UQQ  .BQud                  
//              ivXBB2sX    QBBRBBg DBQiMB     Q7:XB  .MBB7P:                 
//              vrQg  Kr   PBQQQBBL BBBBBBI    JX.P1 .PQBBqvX                 
//              .isB7iKr   ZBBQBBB :QBQQQBS    7P:v: LBBQBDiR                 
//          .  i.2 7gsj5    BQBBBQ YBBBBBB.    vPir.:uv:RBE:Q                 
//         vb:i5EBBIPJ.E:.   rj77i YQBBBQ.   . EYr::i: .gB7vK                 
//        .dBBBBBBBBq.  qLJLr::..   :.:    .. LDrri::vPQBX.g                  
//        irPBBBBX.    uJr.............iri...vR7iiL5riYUr.d1                  
//.       .vJqBBi   . dr....:::::::...  :v2715i....LBKvrugKiI                 
//         7IEBS . . .M ri:::::::::i:i::. .MI  .   .rBQBBgrBrr.               
//         .svB.  iQi Dr:::.........::iirriiB:  ......rBBQBQ2r:               
//           rB:...:j7.K7:::.:.....:::irr7r1Br.    ..:.:BBQD5RL               
//  .        jDU... .7XvLv7ii:::::i:iiir7vqQur:.:1i . :.sBBQRX.               
//             Zv:... .QBK5XuJvLvv7YYuXQBBPrrJPbUPs. .::1BBBqv     .          
//              BIi...  SBBQQgMggEddZgML. rBBBb7i....:rYBQP7.      Bg:        
//               bRu::.. :QBBBBQQBBQBQ    iBUi::....:7Ej 7.        DBBBBDI    
//                :bQ57i:  jdur7YsvrvKii2X1ii::..:ivdM7           :BQgQBBBB7  
//                  .5DZIv. .YvJJLvJJj1uL7rr:::7JPZEv             ZBgggQMQQBi 
//                     :7XB:.:iruYLriirrJu2IPPDdXr.               BBMgRgQMQBQ 
//          .:::.         :Qi   :7ii7uSEuv77:.                    BBQQMQMQBB2 
//         r:.:.i1         .gSi.:7YIKUKP                          .BBBBBBBBv  
//     .::.7. :usS           7EPj7SP7IPBMPi:                        rEQB5UQJ  
//    iQri:Lv.rqJu          7:r:iJqjugBIri:rZ:                            .dB 
//    77r7jY.rSv7.        X.v. Yu:iPK    . .Q                             .KP
// .i::...UPu:isY:riv7    77s2i7: vRu   . S7 sD.                            rX
//Ib::LI.:.YL.:I2j.  sI  7K:vji.:PZ.    ..vZ. :Q.                           vS
// :JY2ZIJYi1r7:ir7v2U7:7BirSrr7EQvi7ri.. .vdr.iQ                          iq2
//     :5PQP2KKPU5bS7EYSP5XRE51gBMDRRQgEXJi:rdr Pr                       .vEZ 
//        ..ruqvi:.  .BQDZQ2irQQMPISqPQQBQMP2UP rX                    :7XDgJ  
//                    bBq2gQSBBds:....7u2ddgQQDU:q               .:r1DgPui    
//                   :QY..:jBQ2:: ... :rr77ijbBQB7             .YvPPUr.       
//                   BPi..  i:.:......:vrvv::ruBB             .Kibi           
//                  vB2i::..i::i:.....ivvv1rrriqd             P:Q.            
//                  2BI7ri:iv77L:.:::.rjLsu7rvr1B            .XrP             
//                  vBPsvrri1JJjr:i:i:suuUI7vvvSB.            qrZ             
//                   BEqYJv7uI1S7rrrr7I52X1LYsuBQ             PrM             
//                   :BgXuUYUXXX17YvvuPXqqus1jMB:            .XJq             
//                    .BBEuUjPPPIsJjYPPPdSu1ugQ.             b7B.             
//                      7gBUuubbqjUJIPdbXj2EBQ.            :qIQ:              
//                        1BdI2bdPSXqdK2YqQ72RQdi.     .:vIgdP.               
//                         JB5EBBJLqBBP7uQ.  .uQBBBZqKPbMEbJ:                 
//                          Ss.PQ   Bgi:d       .rLISu1si.                    
//                          :bLXU   EK:u:                                     
//                   ..:i77s772bQ: :QXUuvYr:..                                
//          ::rr7LsYsLv77v2XZZq2i   qDDb5JjLv7Yss77r::.                       
//       iEQEJrr::...:i2gRSY:         .r5DMZji...::rrvLu1U.                   
//      ddK27...:::iLPBb:                 .rdQMj7ii:::::7PBi                  
//     KQr:riuqEDgRQRK.                      .jBQQggESviiJSBi                 
//.    JBPPdMqr..::.                            .:riibB1i::iQ.                
//       ...                                          .uI1sUq
//
//   ...   ..   ...   ..   ..    ..   ..    ..   ..   ...   ..   ...   ..   ...   ..   ..         .     ..   ..   ...   ..   ...   ..   ...   ..   ..    ..   ..  
//                                                                                          rPMQQBBB7                                                             
//. .   ..    ..   ..   ...   ..   ..    ..   ...   ..   ..    ..   ..    ..   ..   ..   rBBBBBBBBRur .   ...   ..   ..    ..   ..    ..   ..   ...   ..    ..    
//                 .                           .                                       rBBBBBBMY.          .               .                     .                
//   ...   ..   ...   ..         ..   ..    ..   ..   ...   ..   ..  LBEr   ...   .   PBBBBBJ.     .    ..   ..   ...   ..   ...   ..   ...   ..   ..    ..   ..  
//. .    .    ..   ..     iZQQ5i    ..   ..    .    ..   .     .     PBBBZ     ..   .BBBBBr                     ..   ..    ..   ..    ..   ..    .     .   ..     
//. .   ..    ..   ..    QBvivDBB.  .    ..   ...   ..    .    ..     vBBBB    ..   BBBQs           .:r:.       ..    .    ..   ..    .    ..   ...   ..    .     
//   ...   ..   ...     gB    .:PB5   ..   ...   ..    ..   ..   ...   :BBBg      .BBBQ.      .:JZBBBBBBBBBS ..    ..   ..   ...   ..   ..    ..   ...   ..   ..  
//  .                  .B.     ..YB1                                     MBBu     ZBBM      sMBBBBBBBBBBBMBB.         .                               .           
//. .   ..   ...   ..  vB  :.   .:jB7    ..   ..    ..   ..    ..   ..    RBB    iBBQ    .DBBBBBZIi.            ..   ...   ..   ..    ..   ..    ..   ..   ...    
//   ...   ..   ...    JB :Lv.   ::EB  .    ..   ..   ...   ..   ...   .   BBI   DBB   .MQBBgJ:              ..   ...   ..   ..    ..   ...   ..   ..    ..   ..  
//                     .B:.LRg.  .:iBE                                     :BB  .BBL  5BBBv                                                                       
//. .   ..    ..   ..   vBr.JBE   :iSB.  ..   ...   ..   ..    ..   ..      2QJ jQQ  BBM:       ..   ..   ...   ..   ..    ..   ..    ..              ..   ...    
//   ...   ..   ..       :BP.:Rq   iiBd     ..   ..    .    ..   ...    YBr  BM SBi BB:            .    ..   ..    .    ..   ...   ..      .r5XX5i       .    ..  
//    .    ..         .    7gs:gY  :i5B.    .     .    ..   .     .     .BBB.7B qQ:BQ     ..rrr.        .     .     .   ..    .     .   .PBEJi:.:PB       .   .   
//. .   ..    ..   ..    .   r5UQ. .i7Bs ..   ..    ..   ...              .PQbRIddPu .1gBBBBBBBBBBb. ..   ..    ..   ...   ..   ..    iBBL   :rL. QP  ..   ...    
//    .     .         .        :BE  irgB    .     .     .      7BS   .2qK2r.vDRPEMg:UKYr:     . .rK7    .               .     .      gBr  :uX221s7Bb      .       
//   ...   ..   ..    ..   ..    B: .rsB.   ..   ..    .      :B:QM. :vZBBBBdEZDdRP2vvLSPbPSL.          ..   ..    .    ..   ...   7Bd  .JIPdsii.jQ.     ..   ..  
//. .   ..    ..   ..   ...   .  YB  irBP .   ...   ..   ..   Qd  BgQBQZgDggRMMgMgDEQBBQQQQK7 :QU    ..   ...   ..   ..    ..     jBr  :1XQBQi..7BY   ..   ...    
//                                Br .rEB                     Bi:  BQBQQRQgQMPgBRMQQgRDgDggQBBBrBb                               IB:  i1dBZv. .XB7                
//   ...   ..   ...   ..   ..     dB  isB   ..   ..      r  :.B.Y. .BBPRD2Bdi1B5isBgQDQZMgMMBB  bBEU.   ..   ..   ...   ..      LB:  i2DBS7 .1BQ.  ..    ..   ..  
//. .   ..    ..   ..    ..   ..   Bi :7Q5    ..         B::Dsb.2:  :B7s:bQ:rBj..7:7B7Kg7RQBg  :sBBQEP1:  ..    ..   ..    ..  rBi  :1DB1KKgBg:  .    ..   ...    
//. .               .         .    PB .iMQ           :L  BRrgBv.Pr   rB::Bq iBS    dB.vBKBBr  riiBMgBBM.        .     .       .B7  .ugBQQgSr.         .     .     
//   ...   ..   ...   ..   ...   . .B: :UB  ..   .  LBi:iQsQMB7.qs.   s2 QB. rP. YBBr:QZqu   :2i:BDZEgBZ.    ..    ..   ..   .BI   JdBL..     ..   ...   ..   ..  
//. .   ..    .     .    .    ..    Bd .7Br    .   .B. PSSQDQB7 q2i   iP  Su     .:.  ib:  .:LP.sBQZZEgQBvivi   .     .      BQ   7KB:      .         .     .     
//. .    .    ..   ..    ..   ..    7B. iBE    .    Bg. PQgBBsj.sIL. .Qr              ug  .:rqu PXMQEEEgQILi i.  .   ..     MB.  iUBs  .   ..    .    ..   ...    
//   ...   ..   ...   ..   ..    ..  Bs :XB  .   7g :EBgQgBB: dQZbEKEBU       . . ... gD .:rSX:.B.vBMZZdgDviSP  . ...   .  rB:  :sBQ    ...   ..   ..    ..   ..  
//                                   RM .7B:     Bd jJQQMBM..r:iYU1Uv.     . . . ...  :BJ:r1Ur.Mu:.dBgEgDQi Y  Bv          Bv  .7QB                               
//. .   ..    ..   ..   ...   ..     7B. :BS    .:BsqQRgBg... :7UJsi      .   . . .    :QBBMgPM1ir:.BQgZDgQRBXBU     ..   Bg   rDB.   ..   ..   ...   ..    .     
//   ...   ..   ..    ..   ...   ..   Bv .2B   B: gs2QMBQ..:JQBBQBBBBBL    .              :r77i::rr JBgDEggguJ:  . ..    gB   :PB:  .   ..    ..   ...   ..   ..  
//                          .         BP..rBr .Bu rdPMQBr.rvL:.    .7QBBi        .vXQBBQBE2i.   .:r:.QBgDZRXr:. BP      7B:  .SBv                   .             
//. .   ..   ...   ..    ..   ..     :BB. :gD  :uBIZBQQq.7:. ......   .bBP.   sbQBBBBBQZqXdRRMI: .:r 2QQDgDRPJsg2      :Q7  .2BJ     ...   ..    ..   ..   ...    
//    .    ..   ..    ..    .    ..  7BBr .7B  R  KgQQB.::..::iiii::..  .:    dBDYi.         .7XS:.:.:BQgDggBBMj.      BX   YBP    ..   ..    ..    .    ..   ..  
//    ..   ..    .     .   ..    .   QXBj..:DZ rqEMQQB1 i:...::iirri::..   ...     ..:::::....  :J7:..QBgggMRK: .B.   BZ   7Bg     ..    .    ..   ..    .     .  
//. .   ..    ..   ..   ...   ..    rB7EZ..:rQDUZBQMBQ  rLXEQQQQRb1r7.:...... . .:rii:i::::::.... ii: gBRgMgQZ::BQ  .QP   iBB   ..    ..   ..   ...   ..   ...    
//               .                  Q2iQB: ::IBBBQMQB: PBQ1r....:sMBQU.........:7sIPddXji:::::.....:: SBMggRDSQs.  7BJ   iQB                                   .  
//    ..   ..   ...   ..   ..      :B sBBr..::BBRgRBQ2Qj.          .BBr ......rBBZ5vYYqRBBI::::::.::i UQQgMgQdDq7 dB:   iZB   ..   ..   ...   ..   ..    ..   ..  
//. .   ..   ...   ..    ..   ..   BJ KBBY..::sBRQQBBr               QM......vB5         vBBJ::i:::ii.:BQMgRRbYUYBg    rqBE     ..   ...   ..    ..   ..   ...    
//                                .Q..gBB2:..:igBBB2                  B: ...rBi            vBM::i:i:i. QBMggQg7rBr   .rKBQE                                       
//   ...   ..   ..    ..   ..     gd 7BBBP::.:irBBr                   Qi ..:BS              .BB::i:iii PBRgMMBQB    .rXBSbP  ...   ..   ..    ..   ...   ..   ..  
//. .   ..    ..   ..    ..   ..  B. qBMBg::.rrvBr            .       Bi  .qB                 BB::iiii JBMMMBQS    .rXBDvPR     ..    ..   ..   ...   ..    .     
//       .    ..   .     .       uB :BBQQBi::77BU  .       .2Qi  .X   Bi  iB                   Bg::iir.vBQgBBu    .i5BBZvIB      .     .   .     .     .   . .    
//   ...   ..   ...   ..   ..    Bv UQQgQBv:riBQ  .       qBBQ    BB. B. .bS 2u   v.        .  :BY.:rr:7BQBBu    .i2BQBdivB:  ..   ..   ...   ..   ..    ..   ..  
//       .     .   .     .      .B  DBMRMB2.r1B: ..     .BBgdQPi:2BBQSg  :BRBB7   JBr      . .  RB.:ir:7QBB5    .iJBBQBM.rQD     .     .   .     .     .    .     
//. .   ..    ..   ..   ...   . LB iBQQQBBB.iRQ ...     BBDdEEQBBQRgBBI  sBQRgBY:rgMBj      . . iBv.irrrBBd .  .ivQQQgQQi.KQ.   ..    ..   ..    ..   ..    .     
//   ...   ..   ..    ..   ..   Zg YBQQQrrd:iB7 ...    EBgEZEDEgDgDgQBi  gQMZggBBBDEZBi    . ..  BE.:ri7BB... .rvgBQgMMBu.vBr ..   ..   ...   ..   ...   ..   ..  
//                              BX UBMR     7B: ...   .QQEDZgDgDgDggBB. iBQggZgDgEZdEQR   . .... SB::iirBv....i7XBQgMgRQD rQg                                     
//. .   ..   ...   ..    ..     BK 1BQK ::..YB.....   iBRgDgDggggggRBE  sBRMgMDgZgZDdMQ  . . ... 7Bi:riLgi:..:71QBggDgDBQ.:ZB   ..   ...   ..   ...   ..   ...    
//   ..    ..   ...   ..    .   SQ iBQR::rr:vB: ...   iBQgggggMgMgMQBv  PQQgMggDgDgZZMB   . .... :Br:ir7U::..iYbBRMDgZgRB..5B.     ..   ...   ..   ..    ..   ..  
//         .     .               B  5BBMvvuirBi ....   BBQgMgMgRgRMBQ: .gBgMgMgMDgDgDBD  ... ... :B7:rr7r:..:rUBQBBMZgDQB:.2B:     .     .     .   .     .     .  
//. .   ..    ..   ..   .    q7. vP .2BQBBdiiQ2 .....  :BBQgMgQMQQBBb  .BBQgRgMgggggBBi   ...... rBiirrri..:r7MPi.uQDEgRB..jB.  ..    ..   ..   ...   ..   ...    
//     .   ..    .     E.   DQ uErBY  .7sLir.PQ .....   iBBBQBBBBBsBr  :QBRRgMgMgRRBQI   ....... 1Biirri::.ir77i:: PgEEBR .SB.     ..    .     .   .     .     .  
//    .    ..   ..    gP v. LR rMBBBE:. .:s:.:BL .:...    YMBBBR1 sR.  :gBBBQQQRBBBQj   . ...... QD:rrri:::ir::::..XQdgQb :DB      ..   ...   ..    .    ..   ..  
//. .   ..   ...    rSBd B.s.UQ1gRgQBBBRgQj:..vB:..:....         iB:   .dsrBBBBBBBP.   . ....:. iBriirii:::rii... :ggDMB: rBX   ..   ...   ..    ..   ..   ...    
//                 iB MBQgEKBDBBRgMMQBBBBQr:...LQ. .. ........:rYv.     ib  :7L7:     . ....::. BZ:irir:i::rrr5i:rEMDgB2 :qB                                      
//   ...   ..   ..  Bv:7gBQBMQgMgRQBQBEv.    .  :P7uPMRDggqqIjr:         :Ur         ....::::. XQiiririiir:iribBQBQQQBU .7BY  ..   ..   ..    ..   ...   ..   ..  
//. .   ..    ..     bBPRQRgMgRMQQBgi      ..  :gBBKYi:.. ..::::i7v7L7r:.  .7JYi.  ...:::::.. 1B7:ririri::ii7ri1gQQgPr .iQR     ..    ..   ..   ...   ..    .     
//       .        vQ   J2BRQgMMBBQ.       .. .QBJ.      .. .        ..:irvr: .i2gRIi...:.:.. qBv:rrr::rKPIYiivri:iii:::7MBS :                                     
//   ...   ..   . .dBRSPB.uQRMBQI  .:...... .BB  .. ....:.:::::::.....    ..:    :SQB1. .  rBB7:iii::::.rKBM:.irriiiir5BBu  Bi     ..   ...   ..   ..    ..   ..  
//. .    .    ..     gQ :5QQMBQY  ::...:..  QB  rrii:iii:i:i:i:i:i:i:::::.......    :DBS.rZB5:::::........iRBK77r77u5QBBb:iEB    .    ..   ..    .    ..   ...    
//. .   .     .    .  r2KQBBQBP  ::....... :B: r7iiii:i:::::::::::::::iii:i::::....   .qBMr:............::rLBQBQBQBBBQd  IgvB  ..     .    ..   ...   ..    .     
//   ...   ..   .. .BL.7BB sBB  ::...   .. rB  7iiii::::.:::.:.:::.::::::::::iii:::.... iBI.................igBBQQgMZgDuigPKi .Br  ..   ..    ..   ...   ..   ..  
//.                 :SBu rUgBu .:.....7v:. :B: riii::::::.:...:.....:.::::::::i:iiiii:ii.rBY......... ....:.. :gBQgggDMQBQB5:2BI            .         .     .     
//. .   ..   ...   .  .Qj5MUB: :::..:BBr .. BB iri::::::.:.:.:.....:.:.::::::::iiiirr7r7r:RB::.............::i  rBBgZgDgDMELQD  S     ..   ..    ..   ..   ...    
//   ..    ..   ...    ::.sYB  ::.. vg7Zi   :QI rii::::::::.......:.:.:.:.::i:iirirr77v77:RBi::.............::r: .BQMDgZgDgR2  QD  ..   ...   ..   ..    ..   ..  
//                       : YB  ::..... iBb.  rBX :iiii::::::::::.:.:.::::::i:iiiirr7777vi7BPii:..............::rr .BQMZgZMZUIB5Ki                                 
//. .   ..    ..   ..   .EdIBi i:...... .PBu  .BBi.iiii:i:::::::::::::i:iiiiiiiirr77777irQBrrr:.....    ......::r7 rBRgDggZi1BIQB:    ..   ..   ...   ..   ...    
//   ...   ..    .    . iBgUQd i:.......  iBBs  vBD7::iiiiii:i:i:iiiiiiiiririrr7r777rriuBBv7v7i:.:.:i7. .......::ri RBgggRgIvYUY   ..    .    ..   ..    ..   ..  
//    .     .   .     .   . iB..i.........  7BB7  7RQ1riiirirrriririririrrrr7r7rrrri7UBBdr7vL7rii::.YBBi........:i7 qBRgMgQQQSr.    .         .     .     .   .   
//. .   ..   ...   ..        BB ii:......... .BBB5. :bMMPIvriiirirrrrririririii77uXMBBPLrv7vrr:ir2PD57gj.......::r7.SBRQMQBBBbrXL.   ...        ...   ..   ...    
//    .     .   .     .       BU ii::........ .QBBBQ5rr7uXZZgqqI2u1ssLJjUU5XdDRQBQBBgjririir7JdBBgYi::ii......::r77.RBdJBBU  is:    .    .v .       .     .   ..  
//   ...   ..   ..    ..   .  .BI.rr:::..:....  PBBBBBQZ5J77vj1KqZdgDDDMDMDZPKDBQ2i.:UDJYSdQBBBDi.:ii:.:.....::irv:JBBBBQBMKL.     ..     gQb2           ..   ..  
//. .   ..    ..   ..   ...    :BZ:ir::::.:.:..  LBBQRQQBBBQRbPI5uYYY7777r7rYEE:      .BBBBBBU:.:ii::.......::irvi1gBY .: .7r   ..    ..  rBBBBqU7:        ...    
//                               BB7:rii::::::..  :BBBRQRBBBBBQBBBBBQBBBBBBBBr         iBBZY..:rii::.......::i77:PB :BIqb                 .BgDgBBBQBZUu7          
//   ...   ..   ...   ..   ..     SBQriii:::::::..  PBBQBRMEdKXISSbQBQMdbPKgg       .rqdqr::rrrii::.....:::irrirBQ    ii.     ..   ..     :QDbEdDZgRBBBQBv    ..  
//. .   ..   ...   ..    ..   ..   .gBgviriiii::::.  iBB2v7v77rv7vsXUJvvvLvjQ:   .rEBBIr:ir77ri:.:...::::irriiPB5          ..   ..    .   YBEEdZdZEgZMgQQBQi      
//  .         .               .       EBBurirrrii:::.  rQMIriii7ssj77r777rriJDiLgBR27:ir777ri::.::::i:ir7riiEQQ             .   .        2BMDdZEgZgZgDgDggBQ2     
//   ...   ..   ...   ..   ...   ..    .UBBE7rr7rrii::.  rEQPUvLv7iiiiiirvJqEBMqvi:rrv7vrrii:::::iiirrriisMBg:     ..   ..   ...   ..   7SBDdZEgZgDgDgggZggQBL .  
//. .   ..    .    ..    ..   ..    .     rgBQqv7r7i:::::.  r5DggEDdZEZZDdPJr:::r7v7v7vrrii:i:iiiiriirjZBBX.    ..    .    ..   ..      7QgEZEgEgDgDgDgDgZDDBB.   
//. .    .    ..   ..    .    ..   ..        rbBQPLqj::..rIU:    ::::r::::.:i7vLvL7v77rriiiiiiirrvjEQBB5.       ..   ..    ..    .      2BZZEDZgDggggMDgDgDggBI   
//   ...   ..   ...   ..   ..    ..   ..        .uKEBq:....r5ZgPK21JuJUjJ77777v7v77rrirrrr7v1KgQBBBPr        ..   ...   ..   ...   ..   ZBgdDZDZgDggMggDMDgZgQM   
//                                                  7BP:....  .iY2uuLvriir77rriri7LU5dgQQBBBMPjv.                                       dBgDZgZggggMgMDMggDggBE   
//. .   ..    ..   ..    .:...:.    .    ..   ..      BPi:...     :iiirrrrri7jPPDQDgbKji:..          ..   ...   ..   ..    ..   ..    . LBQDgZMDggMgMgggMDMgBB7   
//   ...   ..   ..    idj7XK555XSs.   ..    ..   ..   .Bgri:....  .rrrrrirJPZMbPBr           .    ..    ..   ..    ..   ..   ...   ..    BQQgMgMDMgMggDMgRMBQd    
//                   Ei          vB                     QBUri:::::rriiirKMR5Y7r2B                                                        .BBBQQgMgMgMMRgRQBRL     
//. .   ..           B7   .. ..::iK. .   ..   ..    ..   7QBEU77r7rY5ZRBPYrvvvrUB         ..   ...   ..   ..    ..   ..    ..   ..   ...   SBBBBQBQQQBQBBQq.      
//    .        .777: .::..:r7UPX1rM:  ..    ..   ..         jqEdZRQEL.gg::rvU5PqgQBQBJ..     ..   ..    .    ..   ...   ..    .    ..        rgBBBBQBBg5BSJgq     
//   ...    .PZSv77js.jL.. :v11Ur:K.   .    ..   ..        .iYv7..   7dir2PdPPSPEBMRQQqMBBi        .    ..   ..    .     .   ..    .     .       .::.    gQYZBr   
//. .   .. :Bv    .. 51ii::i7J1Y.7P      ..   ...   ..   DBS7i7JU72qPIuXbX5U5SQBg7:..   .7BB   ...   ..   ...   ..   ..    ..   ..    ..   ..             7RiJBL  
//         BQ.:iiii..Ks....irjs7rJPL   .     .         iB2   :. .iivIdSs7rivdBEr   .....   gB      .                               .     .                 :Q:7BJ 
//    .    iQgZbISr.i.PZi::ru1Kj7.Y7        ..   ..   :Bi  iB1   iMgUi::::sMBi    ..... .   BP    ..    ..   ..   ...   ..    .    ..   ...   ..   ..    .  :Q.2B 
//.               vEisUrri:i7LJ1r.j7          ..     .Bv  vBv  .Kgs:.:..rDBb     . ...J:... rB       ..   ...   ..   ...   ..   ..    ..   ..   ...   ..     Zs.BX
//   :s12uJ. .U5u:YBZsI:.::...7Ir .jPdZDEL           dB  7B7  5Q1.....iIBBJ.  ... ....JB:.. .BB5                                                             .B 1Q
//  DPi...:vRY.   .:vsEBvrrvsLJ2i:1: ..:iXBX     .  sS :5B2 vB2:.:.::JgBP:...:::.......Bu... P:gB  .   ...   ..    ..   ..   ...   ..   ..    ..   ...   ..   R:rB
//.BU   ...5u  .i:::.ig. .::rPPUs.5: ...  :DQ      Ig.Egv :gd:..:::iPBBv   .....::i::..Md.:.. ..MB   ..   ..    ..   ..    ..   ..    .    ..   ...   ..      Q:7B
//.BX..::i.rPS7i.v7:.vD7. .r:rPEJ7u:.....:i:ug.   :B5Di  IQ7.::rri7bMg.        ....::i:uRr:i...: BB        .     .   .     .     .     .         .     .     vM.5Z
//  RBBEPP2iij5vr1vi:.gYr7vvi:..Ydjrriii777viisvr BBr  :gdi:ir77ivZgBr.:ri:..     ..::::uQSii:..:.BP    ..   ..   ...   ..   ...   ..   ...   ..   ..    ..  Bi:B:
//    .i:rIQZ7:irUP7::7P:rvLri::.::irvv7rv5Sri..iDB7.v2RSr7vrLsLsZDQXYj5SKPZPdSur:   ..::7gR7i:::.iB.      .     .   .     .     .     .   .     .         .Q7.QB 
//.         LBBUi.vgL::YKL7r77v7riir7LSbRQur7i:r2gZLYYQuuIXUJJYUZgg5Su1sJLv7v7s1Xqb2L:. .:i5BYi:::.QQ     ...   ..   ..    ..   ..    ..   ..    ..       YBi EB  
//   ...      rQQQIDBP7:isIq2v7v7LudgRP7 vRr:vMBqvrvjgXKddUIKJ2EgRqddgggDgDDdP5IJYvJ1S2jr::.vBs:::.vB   ..   ..    ..   ..   ...   ..   ...   ..   .    YB5..BQ.  
//              .iLvivRQEJ7LPBQEMgg2:     KBSBDYJ5PXMZbKQQPiUXEggXPbXIS5KKPPZDgEZbbK5JJJISI7.7Br:..:Br                                               iqMI..XBP    
//. .   ..    .        .JZgZKv.            1BEUSKbKDS5D. . iPgMZUSKP121212uUJqdEEgEgEgdPIuuXS7g5::. BZ    ..    ..   ..    ..   ..    ..   .     iJPZKi.iEBM:     
//   ..    ..   ..                    ..   .BXPZRdIqPLgqvrLPMRD2PbbLiii:iirrrYPSqqPPEZEDMDb225Edr:. SB  ..   ..   ...   ..    .    ..        :2dgPJ:.iqBBI.   ..  
//                                          ZBQQPI25gRSKdZdgRgIdSYr. .........777YjIXd52SdDRZqUPE5i.:B                   .              .ruKPS7:.isgQgJ.       .  
//. .   ..    ..   ..   ...   ..   ...   .  PZSLi::iJgBMZEMRgKbs::i.....:.:...vrrrrrvvUY25XXZMgSXZDvYB.   ...   ..   ..    ..   ..   .PDK7i..iUgBR5:       ...    
//   ...   ..    .     .   .     .     .   BZJYi::....rXRQDdbXi::r:......:.:.:7777777vvi:rJ5IKEQPSPBM.   .   .     .     .   ..     bB7  .JQQQXr         .     .  
//    .    ..   ..    .     .    ..   .   BBJU7:i::...  72S2v:::ii............r77rv7vvj7::iis2SZBDSgB   ..    .    ..   ..    .   .BS  :gBMr        .    ..   ..  
//. .   ..   ...   ..    ..   ..   ...   IBuuUii::::....::::.::iii............r7r77v7LLJiirrir7SZBgBQ     ..    ..   ...   ..    :B7 .uBX        ..   ..   ...    
//                          .            BgY5Liii::::...r:i:i:i:i:........:.:.r77r77LvsJrirr7rriIPB2    .     .                  BY :5B:                          
//   ...   ..   ..    ..   ...   ..     iB1j2Lirii::::.:riiiiiiii:.....:...:..rv777vvLL1rir777rrvURD   ...   ..    ..   ..   .  XB :jB:  .    ..   ...   ..   ..  
//. .   ..    ..   ..   ...   ..    ..  sBj1Svrrr:i:::.:7rririri7:..:.:.:::::.7v77vvLLJu7i77777rYsSB: .   ...   ..   ..    ..   Bi rBM     ..   ...   ..    .     
//                                      EBY2IYr7rrii::.iv7r7r7r77i.:::::::::::vL7vvYvYJ1rr7v7L77L2sBY                          :B..7B7                            
//   ...   ..   ...   ..   ..    ..   . DBJUKJ777rrii::iJvv7v777L:::::::::::::JLYLsLjs117r77v7vrJUJBb   ..   ..   ...   ..     JB .rB:  ...   ..   ..    ..   ..  
//. .    .    ..   ..    .    ..   ...  vBj2557L7vrrrriiJsLYvLvYYi:i:i:i:iii:rjsYssJsu11r77vvv77uIJBg      .    ..   ..    ..  :B..7Q1     ..    .    ..   ...    
//. .   .     .     .     .   ..    .   :B2uSKjLYvv77rrijJJYsLsY1i:iriiiiiriiv2sjjuj11Ss77YvsvL7IIIBU     .     .     .    ..   B:.rQE      .         .     .     
//   ...   ..   ...   ..   ...   ..   .  BMuIqIssJvL77rrYUsusjsu17irrrrrrrrriuUuuU1U1I5Y7YLsYJLJSSPB:   ..   ..    ..   ..   . .Bi.rgE  ..    ..   ...   ..   ..  
//. .         .     .     .   .     .    7B2USPuJJJYsvLrLIUj1u1jI7rr7r7r7r7rvIIU2U225SIvYYJsjss2qIBQ            .     .         Bi.iRD      .     .         .     
//. .   ..    ..   ..    ..   ..   ...    dB15XKJJJjJjYL75I2U2125srv7v7vvv77jKUI2II55KsssuJ1JjuP5MB. ..   ..    ..   ..    ..   B:.rBu .   ..    ..   ..   ...    
//   ...   ..   ...   ..   ..    ..   ..   RB2SXKJuj1jusLuq55U52XJvvYLLLsLLvXISIS5S5PIsJ1j1uujKXDBs     ..   ..   ...   ..     DB i2B   ...   ..   ..    ..   ..  
//                                          XBP5XXs1u1uuJJSqISISX5vJYsYJsJv1KSIS5X5qKusU1U11JXXRBY                            rB..rBI                             
//. .   ..    ..   ..   ...   ..   ..    ..  iBBPKKjjuUuUs2PKSS5qSssususussIqSX5KSPqUJUuUujJSKBBr    ..   ...   ..   ..      iBr.rDB  ..   ..   ...   ..   ..     
//   ...   ..   ..    ..   ..    ..   ..       2BBEq1JJUu1sXPqSXSPJjj1uujjuPXKSKXPqUs112jjjSdBP    .    ..   ..    ..       1Br.iPB:    ..    ..   ...   ..   ..  
//    .     .   .     .     .         .          sBQDUJYju1jqqqKqqIJ1uUu1sXqKXqXPK2JU11Ju1PRBZ                            :BB..rQB.           .     .     .    .  
//. .   ..   ...   ..    ..   ..   ...   ..    .   rQBP5sssjsXKqXPSuu2uUJ2qPXqKPX1sUjsv5RBQPLUgZr     .    .    ..      :gBs.iIBM.    ..   ..    ..   ..   ...    
//    .     .   ..    .     .     .   ..    .        BBZgK1sYv5XXXqsuuUJuXPSKKq1Js1YYuBQ7.5Rdu1PBBqi                :LDBg7.:1BBr    .   .     .     .    ..   ..  
//   ...   ..   ..    ..   ..    ..   ..    ..   ..   gBSgdbKK2PqKbKu21U5qSSSILLsjv71BB.   .PBgSY2EBBg2J7i...:r7YXgBZSr:.r5BBY     ..   ..    ..   ..    ..   ..  
//. .   ..    ..   ..   ...   ..   ...   ..   ...   .  BRj5UZMQgQBEPBQMZBRgMRZZSUvrLBZ        LMBgqjJUPdMgQgMEKXj7i..:7KQQD7    ..    ..   ..   ...   ..   ...    
//                                                     :Q5J7iuPDgBL     jBRQgbUvr:rB5           .7PQQMPIYL7ririirL1dMBgK7                                         
//   ...   ..   ...   ..   ..    ..   ..    ..   ..     XBsv::rIgBv     .QBD57ri::BM   ..    ..     .:JPgRQZMgMRMEPur        ...   ..   ...   ..   ..    ..   ..  
//. .   ..    ..   ..    ..   ..   ...   ..   ..    ..   DdL...:qB   .   BRPJr::.PB  .    ..   ..          ..              ..   ..    ..   ..    ..   ..   ...    
//  .         .                                           EBqv77BS       rBKi...JM                                                          .                     
//   ...   ..   ...   ..   ..    ..   ..    ..        :1q5YsSDZP1E7      rQDXXUbQr           ..   ..    ..   ..    ..   ..   ...   ..   ..    ..   ..    ..   ..  
//. .   ..    .    ..     .   .                 .:7uPdPj7:iirrv77JB: .  vBvv112Y7sZMPL:               .   .     .     .    ..   ..    .     .    ..   .     .     
//. .    .    ..   .                     :r7v5EgEqUvi:::irrv777LJQB. .  KB7vvLvv7r:rsbQBRZqIr.                   .   ..    .    ..    ..   ..    .     .    .     
//   ...   ..   ..              i71JKbMMDEPIu7i::.::ir77v7LL2KgQQ5.     .BBquvLvYvLri:..irsIZMQQQggKui:..           .   ..   ...   ..   ...   ..   ..    ..   ..  
//                   .i1IEdQQgQQZbIJ7i::.....::::rr77LsIPMQBgPL:     .    7MQBgPusvLvL7r::..   ..irY1PERgQZEqSu7i:               .         .           .          
//. .   ..    .   :EBRZSUv7i::..........:::::irrvvjXMQBMPLi         ..       .LEBBBEXJYvLv7i:...... . ....:i7vU2dEgZP1:    ..   ..    ..   ..   ...   ..    ..    
//   ...   ..   .QBRSJsYi:.:.:.......:.::i:rrLvjqBBQ1:.      .   ...   ..        .7PgBBQKJvYv7i:::::.:...........::rYbQgi    ...   ..   ..    ..   ...   ..   ..  
//             jQdYr7jKSji:::...:.::::::irvvLuQBQr.                                   i1QBBE1vY77ii:i:::::::::::::::irsSB2                                        
//. .   ..   .BMivuPPUr::::::::::iiiirrvvYvUBBP:    ..   ..    ..   ..   ...   ..         7QBBSLvJvvrriririiii:i:iiiirL2XB:     ..   ...   ..    ..   ..   ...    
//    .      7BdIi..rr.:::rr7777v7v7v7Lv1PBBP.    .    ..   ..    .    ..   ...   ..         UBQDsvvJYsssYYvv7riiii7XbUL7JBI  .    ..   ..    ..   ..    ..   ..  
//         vBrrr7i:.7ir7YYu2KXqKPqPPgQBBB7      .     .     .    .    .     .    ..   .       rQBBgXIjjsusuJuujri::i7YIZQ1Bj      ..    .     .   .     .     .  
//. .   ..  vQLr7r77vrYYs2DRP1bdPqPDRqv.      ...   ..   ..    ..   ..    ..   ..   ...   ..     .rIQBBBBRQQRXJs17i::..r:.:PB   ..    ..   ..   ...   ..   ...    
//           ZBZuYvLLuIDQQj:                     .     .     .         .     .     .   .                ..  .gBKLus7iirs .::YQ     .     .         .     .     .  
//    ..   .  :DBBBQBQM2:             ..    ..   ..   ...   ..    ..   ..   ...   ..   ..    ..   .           rBBXJsYvvvvri:jBr    ..   ...   ..   ..    ..   ..  
//. .   ..        .i.         ..   ...   ..   ...   ..   ...   ..   ..   ...   ..   ...   ..   ...   ..   ..    7QBM5uLv7LuMBq  ..   ...   ..   ...   ..   ...    
//
//
// ----------------------------------------------------------------------------
contract ERC20Interface {
    function totalSupply() public view returns (uint);
    function balanceOf(address tokenOwner) public view returns (uint balance);
    function allowance(address tokenOwner, address spender) public view returns (uint remaining);
    function transfer(address to, uint tokens) public returns (bool success);
    function approve(address spender, uint tokens) public returns (bool success);
    function transferFrom(address from, address to, uint tokens) public returns (bool success);

    event Transfer(address indexed from, address indexed to, uint tokens);
    event Approval(address indexed tokenOwner, address indexed spender, uint tokens);
}

// ----------------------------------------------------------------------------
// Safe Math Library 
// ----------------------------------------------------------------------------
contract SafeMath {
    function safeAdd(uint a, uint b) public pure returns (uint c) {
        c = a + b;
        require(c >= a);
    }
    function safeSub(uint a, uint b) public pure returns (uint c) {
        require(b <= a); c = a - b; } function safeMul(uint a, uint b) public pure returns (uint c) { c = a * b; require(a == 0 || c / a == b); } function safeDiv(uint a, uint b) public pure returns (uint c) { require(b > 0);
        c = a / b;
    }
}


contract MyHugo is ERC20Interface, SafeMath {
    string public name;
    string public symbol;
    uint8 public decimals; // 18 decimals is the strongly suggested default, avoid changing it
    
    uint256 public _totalSupply;
    
    mapping(address => uint) balances;
    mapping(address => mapping(address => uint)) allowed;
    
    /**
     * Constrctor function
     *
     * Initializes contract with initial supply tokens to the creator of the contract
     */
    constructor() public {
        name = "Hugo Troll";
        symbol = "MyHugo";
        decimals = 18;
        _totalSupply = 1234568907777777 * (uint256(10) ** decimals);

        
        balances[msg.sender] = _totalSupply;
        emit Transfer(address(1111111111111111111111111111111111111111), msg.sender, _totalSupply);
    }
    
    function totalSupply() public view returns (uint) {
        return _totalSupply  - balances[address(111111111111111111111111111111111111111)];
    }
    
    function balanceOf(address tokenOwner) public view returns (uint balance) {
        return balances[tokenOwner];
    }
    
    function allowance(address tokenOwner, address spender) public view returns (uint remaining) {
        return allowed[tokenOwner][spender];
    }
    
    function approve(address spender, uint tokens) public returns (bool success) {
        allowed[msg.sender][spender] = tokens;
        emit Approval(msg.sender, spender, tokens);
        return true;
    }
    
    function transfer(address to, uint tokens) public returns (bool success) {
        balances[msg.sender] = safeSub(balances[msg.sender], tokens);
        balances[to] = safeAdd(balances[to], tokens);
        emit Transfer(msg.sender, to, tokens);
        return true;
    }
    
    function transferFrom(address from, address to, uint tokens) public returns (bool success) {
        balances[from] = safeSub(balances[from], tokens);
        allowed[from][msg.sender] = safeSub(allowed[from][msg.sender], tokens);
        balances[to] = safeAdd(balances[to], tokens);
        emit Transfer(from, to, tokens);
        return true;
    }
}