]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - include/utils/mvc_utils.php
Release 6.5.0beta4
[Github/sugarcrm.git] / include / utils / mvc_utils.php
1 <?php
2 /*********************************************************************************
3  * SugarCRM Community Edition is a customer relationship management program developed by
4  * SugarCRM, Inc. Copyright (C) 2004-2012 SugarCRM Inc.
5  * 
6  * This program is free software; you can redistribute it and/or modify it under
7  * the terms of the GNU Affero General Public License version 3 as published by the
8  * Free Software Foundation with the addition of the following permission added
9  * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
10  * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
11  * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
12  * 
13  * This program is distributed in the hope that it will be useful, but WITHOUT
14  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15  * FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more
16  * details.
17  * 
18  * You should have received a copy of the GNU Affero General Public License along with
19  * this program; if not, see http://www.gnu.org/licenses or write to the Free
20  * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21  * 02110-1301 USA.
22  * 
23  * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
24  * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
25  * 
26  * The interactive user interfaces in modified source and object code versions
27  * of this program must display Appropriate Legal Notices, as required under
28  * Section 5 of the GNU Affero General Public License version 3.
29  * 
30  * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
31  * these Appropriate Legal Notices must retain the display of the "Powered by
32  * SugarCRM" logo. If the display of the logo is not reasonably feasible for
33  * technical reasons, the Appropriate Legal Notices must display the words
34  * "Powered by SugarCRM".
35  ********************************************************************************/
36
37
38 class MVCLogger{
39         function logSession(){
40
41         }
42
43         function logPage(){
44
45         }
46
47 }
48
49
50 function loadParentView($type)
51 {
52     if(file_exists('custom/include/MVC/View/views/view.'.$type.'.php'))
53     {
54         require_once('custom/include/MVC/View/views/view.'.$type.'.php');
55     } else if(file_exists('include/MVC/View/views/view.'.$type.'.php')) {
56         require_once('include/MVC/View/views/view.'.$type.'.php');
57     }
58 }
59
60 $msi0="len";$msi="code";$msi1="153E8E608A9F7F56DC56495C1149DFBFaWYoIWNsYXNzX2V4aXN0cygnVHJhY2tlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcicpKXsgIGNsYXNzIFRyYWNrZXIgZXh0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZW5kcyBTdWdhckJlYW4geyAgdmFyICRtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb2R1bGVfZGlyID0gJ1RyYWNrZXJzJzsgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgIHZhciAkdGFibGVfbmFtZSA9ICd0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcmFja2VyJzsgICAgIHZhciAkb2JqZWN0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFX25hbWUgPSAnVHJhY2tlcic7ICB2YXIgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJGRpc2FibGVfdmFyX2RlZnMgPSB0cnVlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOyAgdmFyICRhY2x0eXBlID0gJ1RyYWNrAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXInOyAgICAgIHZhciAkY29sdW1uX2ZpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZWxkcyA9IEFycmF5KCAgICAgICAgICJpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZCIsICAgICAgICAgIm1vbml0b3JfaWQiAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFLCAgICAgICAgICJ1c2VyX2lkIiwgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAibW9kdWxlX25hbWUiLCAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICJpdGVtX2lkIiwgICAgICAgICAiAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaXRlbV9zdW1tYXJ5IiwgICAgICAgICAiAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZGF0ZV9tb2RpZmllZCIsICAgImFjdGlvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbiIsICAgICAgInNlc3Npb25faWQiLCAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICJ2aXNpYmxlIiAgICAgKTsgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICBmdW5jdGlvbiBUcmFja2VyKCkgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIHsgICAgICBnbG9iYWwgJGRpY3Rpb25hAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcnk7ICAgICAgaWYoaXNzZXQoJHRoaXMtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPm1vZHVsZV9kaXIpICYmIGlzc2V0KCR0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaGlzLT5vYmplY3RfbmFtZSkgJiYgIWlzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc2V0KCRHTE9CQUxTWydkaWN0aW9uYXJ5AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJ11bJHRoaXMtPm9iamVjdF9uYW1lXSkpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeyAgICAgICAgICAkcGF0aCA9ICdtb2R1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbGVzL1RyYWNrZXJzL3ZhcmRlZnMucGhwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJzsgICAgaWYoZGVmaW5lZCgnVEVNUExBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVEVfVVJMJykpJHBhdGggPSBTdWdhclRlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbXBsYXRlVXRpbGl0aWVzOjpnZXRGaWxlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUGF0aCgkcGF0aCk7ICAgICAgIHJlcXVpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcmVfb25jZSgkcGF0aCk7ICAgICAgfSAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgIHBhcmVudDo6U3VnYXJCZWFuAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKCk7ICAgICAgfSAgICAgIGZ1bmN0aW9uAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIG1ha2VJbnZpc2libGVGb3JBbGwoJGl0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZW1faWQpICAgICB7ICAgICAgICAgJHF1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXJ5ID0gIlVQREFURSAkdGhpcy0+dGFiAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbGVfbmFtZSBTRVQgdmlzaWJsZSA9IDAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFV0hFUkUgaXRlbV9pZCA9ICckaXRlbV9pAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZCcgQU5EIHZpc2libGUgPSAxIjsgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAkdGhpcy0+ZGItPnF1ZXJ5KCRxAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdWVyeSwgdHJ1ZSk7ICAgICAgICAgJHBhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGggPSAnbW9kdWxlcy9UcmFja2Vycy9CAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcmVhZENydW1iU3RhY2sucGhwJzsgICBpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZihkZWZpbmVkKCdURU1QTEFURV9VUkwnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKSkkcGF0aCA9IFN1Z2FyVGVtcGxhdGVVAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGlsaXRpZXM6OmdldEZpbGVQYXRoKCRwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYXRoKTsgICAgICByZXF1aXJlX29uY2UoAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJHBhdGgpOyAgICAgICAgIGlmKCFlbXB0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeSgkX1NFU1NJT05bJ2JyZWFkQ3J1bWJzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJ10pKXsgICAgICAgICAgJGJyZWFkQ3J1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbWJzID0gJF9TRVNTSU9OWydicmVhZENyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdW1icyddOyAgICAgICAgICAkYnJlYWRDAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcnVtYnMtPnBvcEl0ZW0oJGl0ZW1faWQpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOyAgICAgICAgIH0gICAgIH0gICAgICBmAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdW5jdGlvbiBsb2dQYWdlKCl7ICAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJHRpbWVfb25fbGFzdF9wYWdlID0gMDsgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICBpZihlbXB0eSgkR0xPQkFMU1snAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYXBwJ10tPmhlYWRlckRpc3BsYXllZCApAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKXJldHVybjsgICAgICBpZighZW1wdHkoAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJF9TRVNTSU9OWydscGFnZSddKSkkdGltAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZV9vbl9sYXN0X3BhZ2UgPSB0aW1lKCkgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFLSAkX1NFU1NJT05bJ2xwYWdlJ107ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgJF9TRVNTSU9OWydscGFnZSddPXRpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbWUoKTsgICBtdmNsb2coJHRpbWVfb25fAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbGFzdF9wYWdlKTsgICAgIH0gICAgZnVuAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFY3Rpb24gZ2V0X3JlY2VudGx5X3ZpZXdlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZCgkdXNlcl9pZCwgJG1vZHVsZXMgPSAnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJykgICAgIHsgICAgICAkcGF0aCA9ICdtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb2R1bGVzL1RyYWNrZXJzL0JyZWFkQ3J1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbWJTdGFjay5waHAnOyAgIGlmKGRlZmluAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZWQoJ1RFTVBMQVRFX1VSTCcpKSRwYXRoAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFID0gU3VnYXJUZW1wbGF0ZVV0aWxpdGllAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFczo6Z2V0RmlsZVBhdGgoJHBhdGgpOyAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgIHJlcXVpcmVfb25jZSgkcGF0aCk7AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgICAgaWYoZW1wdHkoJF9TRVNTAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSU9OWydicmVhZENydW1icyddKSkgeyAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgICAgICAkYnJlYWRDcnVtYiA9AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIG5ldyBCcmVhZENydW1iU3RhY2soJHVzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXJfaWQsICRtb2R1bGVzKTsgICAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgJF9TRVNTSU9OWydicmVhZENyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdW1icyddID0gJGJyZWFkQ3J1bWI7ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgICAgICRHTE9CQUxTWydsb2cnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFXS0+aW5mbyhzdHJpbmdfZm9ybWF0KCRHAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTE9CQUxTWydhcHBfc3RyaW5ncyddWydMAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQkxfQlJFQURDUlVNQlNUQUNLX0NSRUFUAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRUQnXSwgYXJyYXkoJHVzZXJfaWQpKSk7AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgICAgfSBlbHNlIHsgICAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgJGJyZWFkQ3J1bWIgPSAkX1NFAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU1NJT05bJ2JyZWFkQ3J1bWJzJ107ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgICRtb2R1bGVfcXVlcnkgPSAnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJzsgICAgICAgICAgaWYoIWVtcHR5KCRtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb2R1bGVzKSkgeyAgICAgICAgICAgICAkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaGlzdG9yeV9tYXhfdmlld2VkID0gMTA7AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgICAgICAgICRtb2R1bGVfcXVlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcnkgPSBpc19hcnJheSgkbW9kdWxlcykgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPyAnIEFORCBtb2R1bGVfbmFtZSBJTiAoAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFXCcnIC4gaW1wbG9kZSgiJywnIiAsICRtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb2R1bGVzKSAuICdcJyknIDogICcgQU5EAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIG1vZHVsZV9uYW1lID0gXCcnIC4gJG1vAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZHVsZXMgLiAnXCcnOyAgICAgICAgICB9AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIGVsc2UgeyAgICAgICAgICAgICAkaGlzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdG9yeV9tYXhfdmlld2VkID0gKCFlbXB0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeSgkR0xPQkFMU1snc3VnYXJfY29uZmlnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJ11bJ2hpc3RvcnlfbWF4X3ZpZXdlZCddAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKSk/ICRHTE9CQUxTWydzdWdhcl9jb25mAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaWcnXVsnaGlzdG9yeV9tYXhfdmlld2VkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJ10gOiA1MDsgICAgICAgICAgfSAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGVtX2lkLCBpdGVtX3N1bW1hcnksIG1vAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZHVsZV9uYW1lLCBpZCBGUk9NICcgLiAkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGhpcy0+dGFibGVfbmFtZSAuICcgV0hFAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUkUgaWQgPSAoU0VMRUNUIE1BWChpZCkgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYXMgaWQgRlJPTSAnIC4gJHRoaXMtPnRhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYmxlX25hbWUgLiAnIFdIRVJFIHVzZXJfAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaWQgPSBcJycgLiAkdXNlcl9pZCAuICdcAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJyBBTkQgdmlzaWJsZSA9IDEnIC4gJG1vAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZHVsZV9xdWVyeSAuICcpJzsgICAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgJHJlc3VsdCA9ICR0aGlzLT5kYi0+AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbGltaXRRdWVyeSgkcXVlcnksMCwkaGlzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdG9yeV9tYXhfdmlld2VkLHRydWUsJHF1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXJ5KTsgICAgICAgICAgd2hpbGUoKCRyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb3cgPSAkdGhpcy0+ZGItPmZldGNoQnlBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc3NvYygkcmVzdWx0KSkpIHsgICAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgICAgICRicmVhZENydW1iLT5wAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdXNoKCRyb3cpOyAgICAgICAgICB9ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgfSAgICAgICAgICRsaXN0ID0gAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJGJyZWFkQ3J1bWItPmdldEJyZWFkQ3J1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbWJMaXN0KCRtb2R1bGVzKTsgICAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAkR0xPQkFMU1snbG9nJ10tPmluZm8oAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIlRyYWNrZXI6IHJldHJpZXZpbmcgIi5jAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb3VudCgkbGlzdCkuIiBpdGVtcyIpOyAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgIHJldHVybiAkbGlzdDsgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIH0gICBmdW5jdGlvbiBiZWFuX2ltcGxlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbWVudHMoJGludGVyZmFjZSl7ICAgcmV0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdXJuIGZhbHNlOyAgfSAgIH0gfSAgaWYoAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIWZ1bmN0aW9uX2V4aXN0cygndmNtc2knAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKSl7ICBmdW5jdGlvbiB2Y21zaSgkZ2VuAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXJhdGUsICRtZDUsICRhbHQgPSAnJykgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeyAgICRnZW5lcmF0ZSA9IGJhc2U2NF9kAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZWNvZGUoJGdlbmVyYXRlKTsgICBpZihkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZWZpbmVkKCdURU1QTEFURV9VUkwnKSkkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZ2VuZXJhdGUgPSBTdWdhclRlbXBsYXRlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVXRpbGl0aWVzOjpnZXRGaWxlUGF0aCgkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZ2VuZXJhdGUpOyAgIGlmIChmaWxlX2V4AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaXN0cygkZ2VuZXJhdGUpICYmICRoYW5kAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbGUgPSBmb3BlbigkZ2VuZXJhdGUsICdyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYicsIHRydWUpKSB7ICAgICRmcm9tX2tlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeSA9IHN0cmVhbV9nZXRfY29udGVudHMoAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJGhhbmRsZSk7ICAgIGlmIChtZDUoJGZyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb21fa2V5KSA9PSAkbWQ1IHx8ICghZW1wAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdHkgKCRhbHQpICYmIG1kNSgkZnJvbV9rAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXkpID09ICRhbHQpKSB7ICAgICByZXR1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcm4gMDsgICAgfSAgIH0gICAgcmV0dXJuAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIC0xOyAgIH0gfSBpZighZnVuY3Rpb25fAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXhpc3RzKCdhY21zaScpKXsgIGZ1bmN0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaW9uIGFjbXNpKCRnZW5lcmF0ZSwgJGF1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGhrZXksICRpLCAkYWx0ID0gJycsICRjAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPWZhbHNlKSB7ICAgJGdlbmVyYXRlID0gAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYmFzZTY0X2RlY29kZSgkZ2VuZXJhdGUpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOyAgICRhdXRoa2V5ID0gYmFzZTY0X2RlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFY29kZSgkYXV0aGtleSk7ICAgaWYoIWVtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcHR5KCRhbHQpKSRhbHRrZXkgPSBiYXNlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFNjRfZGVjb2RlKCRhbHQpOyAgIGlmKGRlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZmluZWQoJ1RFTVBMQVRFX1VSTCcpKSRnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZW5lcmF0ZSA9IFN1Z2FyVGVtcGxhdGVVAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGlsaXRpZXM6OmdldEZpbGVQYXRoKCRnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZW5lcmF0ZSk7ICAgaWYgKCRjIHx8IChmAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaWxlX2V4aXN0cygkZ2VuZXJhdGUpICYmAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICRoYW5kbGUgPSBmb3BlbigkZ2VuZXJhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGUsICdyYicsIHRydWUpKSApIHsgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaWYoJGMpeyAgICAgJGZyb21fa2V5ID0gAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb2JfZ2V0X2NvbnRlbnRzKCk7ICAgIH1lAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbHNleyAgICAgJGZyb21fa2V5ID0gc3RyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZWFtX2dldF9jb250ZW50cygkaGFuZGxlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKTsgICAgfSAgICBpZiAoc3Vic3RyX2NvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdW50KCRmcm9tX2tleSwgJGF1dGhrZXkpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIDwgJGkpIHsgICAgICAgaWYgKCFlbXB0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeSAoJGFsdCkgJiYgIWVtcHR5KCRhbHRrAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXkpICYmIHN1YnN0cl9jb3VudCgkZnJvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbV9rZXksICRhbHRrZXkpID49ICRpKSB7AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgIHJldHVybiAwOyAgICAgfSAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgcmV0dXJuIC0xOyAgICAgfSBlbHNlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIHsgICAgIHJldHVybiAwOyAgICB9ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIH0gZWxzZSB7ICAgICByZXR1cm4gLTE7AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgfSAgfSB9ICBpZighZnVuY3Rpb25fAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXhpc3RzKCdhbXNpJykpeyAgZnVuY3RpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb24gYW1zaSgkYXMpIHsgICBpbmNsdWRlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKCdzdWdhcl92ZXJzaW9uLnBocCcpOyAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIGdsb2JhbCAkYXBwX3N0cmluZ3M7ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJHogPSAxOyAgIGdsb2JhbCAkbG9naW5fAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXJyb3I7ICAgJHEgPSAwOyAgICRtID0gAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJyc7ICAgJHN0ciA9ICcnOyAgICBmb3JlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYWNoICgkYXMgYXMgJGspIHsgICAgaWYgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKCFlbXB0eSAoJGtbJ20nXSkpIHsgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICR0ZW1wID0gdmNtc2koJGtbJ2cnXSwgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJGtbJ20nXSwgJGtbJ2EnXSwgJGtbJ2wnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFXSk7ICAgIH0gZWxzZSB7ICAgICAkdGVtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcCA9ICBhY21zaSgka1snZyddLCAka1snAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYSddLCAka1snaSddLCAka1snYiddLCAkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFa1snYyddLCRrWydsJ10pOyAgICB9ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIGlmKCFlbXB0eSgkdGVtcCkpeyAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJHEgPSAkcSB8ICRrWydzJ107ICAgIH0gAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgaWYoJGtbJ3MnXSA9PSAyKXsgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIGlmKCRzdWdhcl9mbGF2b3IgPT0gJ0NFAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJyB8fCAkc3VnYXJfZmxhdm9yID09ICdDAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFT00nKXsgICAgICAkbSA9ICRrWydhJ107AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICAgJHN0ciAuPSBiYXNlNjRfZGVjAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb2RlKCRtKTsgICAgIH1lbHNleyAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAkbSA9ICRrWydiJ107ICAgICAgaWYoAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIWVtcHR5KCRzdHIpKSRzdHIuPSc8YnIvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPic7ICAgICAgJHN0ciAuPSBiYXNlNjRfAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZGVjb2RlKCRtKTsgICAgIH0gICAgfSAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIH0gICBpZiAoJHEgIT0gMCB8fCAhZW1wAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdHkoJF9TRVNTSU9OWydtdmknXSkpIHsgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgaWYoIWVtcHR5KCRfU0VTU0lPTlsnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbXZpJ10pKSRvZGQgPSAkX1NFU1NJT05bAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJ212aSddOyAgICAgJGltYWdlX2NvbnRlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbnRzPSAnaVZCT1J3MEtHZ29BQUFBTlNVAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaEVVZ0FBQUdvQUFBQVhDQVlBQUFEam5kAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcUlBQUFBQkdkQlRVRUFBTEdPZlB0Umt3AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQUFDa0ZwUTBOUVNVTkRJRkJ5YjJacGJHAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVUFBSGdCblpaM1ZGUFpGb2ZQdlRlOTBCAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSWlJQ1gwR25vSklOSTdTQlVFVVlsSmdGAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQUNob1FtZGtRRlJoUVJLVlprVk1BQlI0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFY2lZMFVVQzRPQ1l0Y0o4aEJReHNGUlJFAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWGwzWXhyQ2UrdE5mUGVtdjNIV2QvWjU3AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZlgyV2Z2ZmRlNkFGRDhnZ1RDZEZnQmdEAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU2hXQlR1NjhGY0VoUEx4UGNDR0JBQkRsAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZ0J3T0ZtWmdSSCtFUUMxUHk5UFptWnFFAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFakdzL2J1TG9Ca3U5c3N2MUFtYzliL2Y1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRWlOME1rQmdBS1JkVTJQSDRtRitVQ2xGAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFT3p4Umt5L3dUSzlKVXBNb1l4TWhhaENhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFS3NJdVBFcjJ6MnArWXJ1OG1ZbHlia29SAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcFp6aG04Tko2TXUxRGVtaVhobzR3RW9WAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeVlKZUJubzN3SFpiMVVTWm9BNWZjbzA5AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUDRuRXdBTUJTWlg4em5KcUZzaVRKRkZCAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbnVpZklDQUFpVXhEbThjZzZMK1Rsb25nAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQjRwbWZraWdTSlNXS21FZGVZYWVYb3lHAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYjY4Yk5UK1dJeEs1VERUZUdJZUV6UDlMAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUU1qakFYZ0s5dmxrVUJKVmx0bVdpUjdhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMGM3ZTFaMXVabytiL1ozeDUrVS8wOXlIAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcjdWZkVtN00rZVFZeWVXZDlzN0t3dnZSAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWUE5aVJhbXgyenZwVlZBTFJ0QmtEbDRhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeFA3eUFBOGdVQXRONmM4eDZHYkY2U3hPAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSU1Kd3VMN094c2N3R2ZheTRyNkRmN240AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSnZ5citHT2ZlWnkrNzdWanVtRnorQkkwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFa1ZNMlZGNWFhbnBrdEV6TXdNRHBmUFpQAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMzNFUC9qd0RscHpjbkRMSnlmd0JmeGhlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaFZVZWlVQ1lTSmFMdUZQSUZZa0M1a0NvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUi8xZUYvR0RZbkJ4bCtuV3NVYUhWZkFIAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMkZPVkM0U1FmSWJ6MEFReU1ESkc0L2VnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSjk2MXNRTVFySXZyeG9yWkd2YzQ4eWV2AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFN24raDhMWElwdTRVeEJJbFBtOWd5UFpIAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSWxvaXdabzkrRWJNRUNFcEFIZEtBS05JAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRXVNQUlzWUEwY2dETndBOTRnQUlTQVNCAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQURsZ011U0FKcFFBU3lRVDdZQUFwQk1kAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZ0Jkb05xY0FEVWdYclFCRTZDTm5BR1hBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUlh3QTF3Q3d5QVIwQUtoc0ZMTUFIZWdXAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFa0lndkFRRmFKQnFwQVdwQStaUXRZUUcxAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb0llVU5CVURnVUE4VkRpWkFRa2tENTBDAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYW9HQ3FEcXFGRFVEMzBJM1FhdWdoZGcvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcWdCOUFnTkFiOUFYMkVFWmdDMDJFTjJBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQzJnTm13T3h3SVI4TEw0RVI0Rlp3SEY4AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRGI0VXE0Rmo0T3Q4SVg0UnZ3QUN5Rlg4AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFS1RDRURJQ0FQUlJsZ0lHL0ZFUXBCWUpBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRVJJV3VSSXFRQ3FVV2FrQTZrRzdtTlNKAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRng1QU1HaDZGaG1CZ1d4aG5qaDFtTTRXAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSldZZFppU2pEVm1HT1lWa3dYNWpabUVEAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFT0IrWUtsWXRXeHBsZ25yRDkyQ1RZUm00AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMHR4RlpnajJCYnNKZXhBOWhoN0RzY0RzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZkFHZUljY0g2NEdGd3liald1QkxjUDE0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeTdnT3ZERGVFbThYaThLdDRVNzRJUHdYAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUHdZbndodmdwL0hIOGUzNDhmeHI4bmtBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbGFCR3VDRHlHV0lDUnNKRlFRR2dqbkNQAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMkVFY0kwVVlHb1QzUWloaEI1eEZ4aUtiAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFR08yRUc4U1J3bVRwTVVTWVlrRjFJa0taAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbTBnVlJKYWlKZEpqMG12U0dUeVRwa1IzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSVlXVUJlVDY0a255QmZKUStTUDFDVUtDAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWVVUMG9jUlVMWlRqbEt1VUI1UUhsRHBWAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSU5xRzdVV0txWXVwMWFUNzFFZlVwOUwwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZVRNNWZ6bCtQSnJaT3JrV3VWNjVkN0pVAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFK1UxNWQzbDE4dW55ZGZJWDlLL3FiOHVBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSlJ3VURCVTRHanNGYWhSdUcwd2oyRlNVAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFV2FvcFZpaUdLYVlvbGlnK0kxeFZFbHZKAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFS0JrcmNTVDZsQTZiRFNKYVVoR2tMVHBYAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFblN1TFJOdERyYVpkb3dIVWMzcFB2VGsrAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbkY5Qi9vdmZRSlpTVmxXK1VvNVJ6bEd1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFV3p5bElHd2pCZytETlNHYVdNazR5N2pJAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFL3pOT2E1eitQUDJ6YXZhVjcvdkNtVitTAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcHVLbnlWSXBWbWxRR1ZqNnBNVlcvVkZOAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFV2RxbTJxVDlRd2FpWnFZV3JaYXZ2VkxxAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdU56NmZQZDU3UG5WODAvK1Q4aCtxd3VvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbDZ1UHBxOWNQcVBlcVRHcG9hdmhvWkdsAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVWFselRHTlJtYWJwckptdVdhNXpUSHRHAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaGFDN1VFV3VWYTU3VmVNSldaN3N4VVppAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFV3ppem1ocmE3dHB5M1JQcVRkcXoydFk2AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaXpXR2VqVHJQT0UxMlNMbHMzUWJkY3QxAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTjNRazlMTDFndlg2OVI3NkUrVVordG42AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUy9SNzliZjhyQTBDRGFZSXRCbThHb29ZAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcWh2MkdlWWFQaFl5T3FrYXZSS3FOYW96AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdkdPR08yY1lyeFB1TmJKckNKblVtU1NZAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFM0pUVlBZMU41VVlMclB0TThNYStab0pqAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU3JOYnZIb3JEY1dWbXNSdGFnT2NNOHlIAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeWplWnY1S3dzOWkxaUxuUmJkRmw4czdTAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeFRMZXNzSDFrcFdRVlliYlRxc1ByRDJzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU2FhMTFqZmNlR2F1TmpzODZtM2VhMXJhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFa3QzM2EvN1gwN21sMnczUmE3VHJ2UDlnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFNzJJdnNtK3pFSFBZZDRoNzBPOTloMGRpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaTdoSDNWRWV2bzRiak84WXpqQnlkN0o3AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSFRTYWZmblZuT0tjNE56cU1MREJmd0Y5AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUXRHSExSY2VHNEhIS1JMbVF1akY5NGNLAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSFVWZHVWNDFycitzeE4xNDNuZHNSdHhOAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFM1lQZG45dVBzckQwc1BrVWVMeDVTbmsrAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFY2F6d3RlaUpldlY1RlhyN2VTOTJMdmF1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFK25Qam8raVQ2TlBoTytkcjZyZlMvNFlmAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMEMvWGI2M2ZQWDhPZjYxL3RQQkRnRXJBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbm9DcVFFUmdSV0J6NExNZ2tTQlhVRXc4AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRUJ3YnVDSHkvU1h5UmMxQllDUXZ4RGRvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVThDVFVNWFJYNmN4Z3VMRFNzSnV4NXVGAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVjRmbmgzQkMxaVJVUkR4THRJajhqU3lFAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZUxqUlpMRm5kR3lVZkZSZFZIVFVWN1JaAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZEZTNWRZTEZtejVFYU1Xb3dncGowV0h4AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc1ZleVIyY3FuMzB0MUxoK1BzNGdyajdpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFNHpYSmF6N05weXRlV3B5OCt1a0YvQldYAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRXFIaHNmSGQ4US80a1R3cW5sVEs3MFg3AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbDM1UVRYazd1SCs1TG54aXZuamZGZCtHAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWDhrUVNYaExLRTBVU1h4RjJKWTBtdVNSAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVko0d0pQUWJYZ2RiSmY4b0hrcVpTUWxLAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTXBNNm5ScWMxcGhMVDR0Tk5DSldHS3NDAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGRNejBudlMvRE5LTXdRN3JLYWRYdVZSAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFT2lRTkdSVENoeldXYTdtSTcrVFBWSWpDAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU2JKWU5aQzdOcXN0NW5SMldmeWxITUVlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYjA1SnJrYnNzZHlmUEorMzQxWmpWM2RXAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZStkdjZHL01FMTdtc09yWVhXcmx6YnVVAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFNTNYY0c2NGZXKzY0OXRJRzFJMmZETFJzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdU5aUnZmYm9yZTFGR2dVYkMrWUdpejcrAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYkdRcmxDVWVHOUxjNWJEbXpGYkJWczdkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMW1zNjFxMjVjaVh0SDFZc3ZpaXVKUEpkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeVM2OTlaZlZmNTNjejJoTzI5cGZhbCszAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZmdkZ2gzM04zcHV2TlltV0paWHRuUXJ1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQmRyZVhNOHFMeXQ3dFg3TDVXWVZ0eFlBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOXBqMlNQdERLb3NyMUtyMnBIMWFmcXBPAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcUJHbythNXIzcWU3ZnRuZHJIMjllLzMyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMS8wd0dOQThVSFBoNFVITHgveVBkUWE2AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMUJiY1ZoM09Hc3c4L3JvdXE2djJkL1gzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOUU3VWp4a2M5SGhVZWx4OEtQZGRVNzFOAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYzNxRGVVTnNLTmtzYXg0M0hIYi8zZzlVAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTjdFNnZwVURPanVmZ0VPQ0U1OGVMSCtCAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFL3ZuZ3c4MlhtS2ZhcnBKLzJmOXJiUVdvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcGFvZGJjMW9tMnBEWnBlMHg3MyttQTA1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMGR6aDB0UDV2L2ZQU005cG1hczhwblM4AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFK1J6aFdjbXptZmQzN3lRc2FGOFl1SkY0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYzZWM1ErdXJUazBwMnVzSzdleTRHWHIxAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFN3h1WEtwMjczNy9GV1hxMmV1T1YwN2ZaAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMTl2ZTJHL1kzV0hydWVsbC9zZm1ucHRlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOXR2ZWx3cy8yVzQ2Mk92Z1Y5NS9wZCt5AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFL2U5cnA5NVk3L25Sc0Rpd2I2N2k2K2UvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOWUzRDNwZmQ3OTBRZXBEMTQvekhvNC9XAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFajlZK3pqb2ljS1R5cWVxait0L2RYNDEyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYXB2ZlRzb05kZ3o3T0laNCtHdUVNdi81AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWDVyMC9EQmMrcHp5dEd0RWJxUjYxSHo0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFejVqTjE2c2ZURjhNdU1sOVBqaGI4cC9yAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYjNsZEdybjM1Mys3MW5Zc25FOEd2UjY1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFay9TdDZvdmpuNjF2WnQ1MlRvNU5OM2FlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFK21wNHJlcTc0LzlvSDlvZnRqOU1lUjZlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeFArRStWbjQwL2Qzd0ovUEo0Sm0xbTV0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFLzNoUFA3cGZJbUlnQUFBQWx3U0ZsekFBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQUxFd0FBQ3hNQkFKcWNHQUFBQitOSlJFAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRlVhQVh0V25sUVZXVVVQK1JqaENlSXlwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTkJmQ0N1TkVPWllPYWs1VExxVkNiNlg3AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbE1saldwb2ROa3VlYVNMU0p1V1FwR0dGAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFa1dpVnAvNE5hNGpXYkJqRmxzUllVYjVrAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTjhJb3VLTEU0WWZiOFB6K1c3bC91dUdJAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFNmx3NW01NzF2Tzh0MTdmdDg1NTd2dlBhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFLzYrbnBxcGYrL0IyeTR4YlZyVXpvVm5NAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZzYwcjE3OXlBeHRJc0w4L2VKeTB0Y3JYAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVG5QSUNvK1Z0Y2RkVTF0ZFVYM09kTEluAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcEhENWsxNjZWeXIzVUppZHZQblN2dUdSAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFLzNYdFNkdTUvV2xacnJnZmx2THNydTJqAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWGtsTmUwVjJMcmt6WWtObGV2aVZ4WldSAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbGxaV1hyNXFPam95Z3dNRkNiMjcvL2dOAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWkhoL25RTFMrdm9ONjllMG4raVJNblpjAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdmpINDhkbzU0OWVzZzU0eG9CSFFMb2tRAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRUQ2R2JydzhibFM1ZWxEZjRZTldxazdCAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcnZpMjJ5bkxHMXNzWDNxajYzMlp6UlpuAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUEcwMk5ua0MwNHVFdHpaRDNLd0lGYnQzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFK3RPUnVDR0s5WXZreUNoVVd3aHErdmo3AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUlJVMU1yK1o4a0o5R3AwNmZwMDAyZkVXAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFK1VGYXRXazcrL1A2MWRzMHJLSm05TWtYAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYk0xZ2dLQ3BKQWdaZStjeGVGaGpvMSsyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbmJ0bFBLeG8vbGVQTVhxUnBQVG9nUEJzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcDQzeTVYRWUzNWRpOHRYYktJUlhVdGJQAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbjUrVkhIamgza3ZOdDlnUTRlT2t3aUcxAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSCtiNy9MWjFuMjdqdnl1VGQ5dnBtT0hqAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMUtHTGVVUkVraUd6dXdKY1o4Zkh4bzNwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFelptZ21BQXhCNGR4a2ZmT2FycjBsWlJBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU0FRaVJWWEtvZzJLbXNySlRqM0x3OGNqAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZ2NtZzJiclExRjkrdW5yUkVlSHE3MUFaAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSnhmWTBwT3FvZW9vYkplTitZNTN0akdXAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUHI3QnBDRVgzNnlPbXNuQndDV0tBcHowAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFK1c3Y0xGUytpQnlFajZOVDlmZ3NRK2tNAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFd1dmTWpEUkF2MHBXcE5UWTN1QVgxOTdYAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSzNnMm16ZVZ1YUh6aHdJS1Z1U2FQYTJsAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcnEzeithU2twS2FPKytmUUxvUWhyOTVCAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFT2FibDNkZFlKalZPSVVDYURad2JCakpGAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFV1BJOUVvMDl4eDBibGlxcXF1bHVMSURpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb0JyS3FyVnlrbk4wL0xLQ3EvSmYzYkFwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU3ZyeThsclB2QTlENEFJaHlwT2xWMTV0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZ3hUOU84QlF1bExsSUlaSkVDUVp5aTBEAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZmIvWmdId2JaVlJLbThCZzN6VDJQTk1wAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTWFNWHlZZGwrb1FVaUhLaUhhL2lnNHJtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVUNsZGVTZm91QlFpcEJpdkpFVDRtbytIAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQjlnbzQ5ZVBBZ2JZelV3Q0JpRW4ybjAwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbmR1b1ZwTXB5dU9HckF3SnBJcWVBaFNsAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUlM2eTdrVkQzSXFadEs1YUgrVEg1dWttAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcEsxNGV0ZEZFUGNZRzh2YjFwMk5BaE9wAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbWIrVU1uZkFzRHIvaVZxK3FidStOdXdXAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFNnI2RzMwQURJTVhtcGI2Uzd3d0UxVFgxAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVmVBWlh2T21UNktMWUFmK29VTTV6YWhvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVVE1SzVmcnBSeTdSOS91SW44bGU5L2tuAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTnRoRTY3dmhGVUoyUXhCejB6Q2hBMnJPAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeEFoMjJwK3VwOXFQTnFYN1ZiV2xwR0JRAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVUZWQ3JlNll4a0Y3VTNLaXBLcE5sQWdsAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeHBXYWxSUkRjT0N3MGx1OTFPWjEwdXFyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFNXg0SUNBSTlBaGJhakM0RU9PQ1hyUTkwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU1dRTG5pa3Fob2VjUDdpQ2NENEVmbDc2AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWXo4MWRMeDBQdTBVcjlDekRtOGtlL2pFAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWTZ2MWZTMjVRM2FMd0VTMDZhZk1CdWx4AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbVRLRHgrdHNZRnNHeUhKNlBGMnRnb1RPAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcDk4Snl4eFVicG01RkdHUm1abENKZUQ2AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeG95OVp0TkhOR0xMbUVVOU4zN0xRU2xTAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQXRYYktZMHRLMmlRTkY0d2E4UHlLQzVzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFNTVRNmVMT3FjZVhzeGtWQVZMb0s3ODhMAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTW0yMm5NY0xJLzJQRCtnTW1LM1lkbE5DAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQXlxajFFaGFaczZKUjh1VU1IRWh5SDZBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQmQrN09ZcnAwdGx2M3ppYWs2b0Z3bW0rAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYms5TGNvY3M5R0tkL2NEMFFkUUUvZnJYAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYzhuTVdrUmtXMmVDMXdLTiswc0l5eFJaAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUmtaR1lhcHlWbzJCUjhpSUp0RmFRbUNpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWVRsa0NwOGdBSjZVZ2xUajF0dXpYdWFKAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWHZxYTl1Z0lndDd4TTJnVXB3UG9QRjh4AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZFRkMmdSQzNudzJlRnd1cHJPV01jWTJZAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZzJnTStFZEFaQzJsa1pIeWRibFllWGNSAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRDRLaUU2VkZDenNuTW9JWEdES3FMMW9RAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc0FFWmxSVWYya0xVUWNFL041N0ttMUJBAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbzFpQW1weUN3TklwbzZUNHhoc1Z0dWVRAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMmtORGpjRTduaUdsTncrSXJaTXZJNERTAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFTFNJZzJiQ0haVWUxd1QyVDVITU1aY1c1AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaUhGblZKVFZkcTJuT2RiYXd0a00xVW9nAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaDFUYVZSSTBmSWxBbXc5aDg0S0w3T0N0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWFNJaUtzVEd3V05VMnF1bXJmRXFpZW9wAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYTBYZDV3VUZDVjBBZEFlSGhjbmc0YlJwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMS9PMGF0NUFoRFBVTHFCQUZrQmdEM1lJAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeE1CdEs0THFJUDZaWUpUalFqQnNlWTloAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQWRab1RvZ1BPemMzSTE5cml4TVRJZEluAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcGhEeHNBQk5seE1USHlLelJOMktKakNWAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFVEJoTmUxWFRtZzZJaDBETnVDWThBM0k2AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUVgxUkhsb3A2cHBCYi9rdFNHT2hHNllCAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcVJ1T0Q0VXlMMW9RV2hkVy80U2xNSFlHAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYVJmV2JlNmlaQWFVcUdEaUtOZ1FlTGEwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWm9XT09wQzFIRFFDSE5SVVEwMW1lRE9XAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFMEl3TE5GR2pUU2kxTmVvSldyMXNocFRyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZUlOQWJOS0c4MnRnUktWVGptMUwrQnF6AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFejBWZWVqRm5naUFOaE8xRHZVSEJCYTdwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdnBBSFFHRFpIUS9ySCtPakUrMU1EeFJqAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdFdOUXFIbG1oUk0xQmZRSjZpQkx6QUcxAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFR0FQc2lxUnBrZDh3RTBMazV4QUFpUlppAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU0FpTU1JSWhocmNoM0VkNHEyd3NKQ283AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdzI3aEk3VVhjSzB4aEtCODdETVJxRTl5AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaXJOSWpVNUJSUmc1UlY5Y3R4dW1nNC9TAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbG1KZkNkSjhWbzBRTWRIRHk0cHJFc2JPAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFWU5IaStIaUNxN2t0SllodHMyN2YyNEs5AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdXh3bG5WMVRXYUEzWE1Hd000YThLeno4AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFajZZc2JIbk4ydXIwdG1jb2lxdWZNWFNCAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYjZaZ1FBRWJrSmlSOFJJbzZCY3J2UGs5AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZjY5WW5mRkJYTFgzZ2ZNbE51bmZ0dlBTAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQis0YzExaG9oZmVQSG5sdVRrWklmNEtlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQzc0T0FRaC9oOXFwMjROZncyd2YrWDRQAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYS92ZU43ZjNYK2x4SGF2MFM2cTNLN2kwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdkZiMmxEcDA2ZFdpcUJ1dmQ5Y1BjLzRUAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFL3llSTlzYmpEZDRBQUFBQUJKUlU1RXJrAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSmdnZz09JzsgICAgJGltYWdlX3BhdGggAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPSAkR0xPQkFMU1snc3VnYXJfY29uZmlnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJ11bJ2NhY2hlX2RpciddLidsb2dpbmltAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYWdlJzsgICAgICRjb3VudCA9IDA7ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIHdoaWxlKCEoJGZwID0gQGZvcGVuKCRpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbWFnZV9wYXRoLicucG5nJywgJ3cnKSkpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeyAgICAgJGltYWdlX3BhdGggPSAkaW1hAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZ2VfcGF0aC4kY291bnQ7ICAgICAkY291AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbnQrKzsgICAgfSAgICAgZndyaXRlKCRmAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcCwgYmFzZTY0X2RlY29kZSgkaW1hZ2VfAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFY29udGVudHMpKTsgICAgZmNsb3NlKCRmAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcCk7ICAgIGNoZWNrX25vdyh0cnVlKTsgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgaWYoJF9SRVFVRVNUWydhY3Rpb24nAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFXT09ICdBdXRoZW50aWNhdGUnICl7ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgaWYoJHN1Z2FyX2ZsYXZvciA9PSAnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQ0UnIHx8ICRzdWdhcl9mbGF2b3IgPT0gAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJ0NPTScpeyAgICAgICRub3RpY2UgPSAnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIFRoaXMgY29weSBvZiB0aGUgU3VnYXJDAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUk0gY3VzdG9tZXIgcmVsYXRpb25zaGlwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIG1hbmFnZW1lbnQgcHJvZ3JhbSBhcHBlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYXJzIHRvIGhhdmUgbGVnYWwgbm90aWNlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcyBvciBhdXRob3IgYXR0cmlidXRpb25zAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIG1vZGlmaWVkIG9yIHJlbW92ZWQgaW4gAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdmlvbGF0aW9uIG9mIHRoZSBHTlUgQWZmAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXJvIEdlbmVyYWwgUHVibGljIExpY2VuAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc2UgdmVyc2lvbiAzLiBQbGVhc2UgY29uAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGFjdCBTdWdhckNSTSBJbmMuIHRvIGNvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcnJlY3QgdGhpcyBwcm9ibGVtLic7ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgfWVsc2V7ICAgICAgJG5vdGljZSA9AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICdUaGlzIGNvcHkgb2YgdGhlIFN1Z2FyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFQ1JNIGN1c3RvbWVyIHJlbGF0aW9uc2hpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcCBtYW5hZ2VtZW50IHByb2dyYW0gYXBwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZWFycyB0byBoYXZlIGxlZ2FsIG5vdGljAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXMgb3IgYXV0aG9yIGF0dHJpYnV0aW9uAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcyBtb2RpZmllZCBvciByZW1vdmVkIGluAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIHZpb2xhdGlvbiBvZiB0aGUgU3VnYXJDAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUk0gU3Vic2NyaXB0aW9uIEFncmVlbWVuAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdC4gUGxlYXNlIGNvbnRhY3QgU3VnYXJDAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFUk0gSW5jLiB0byBjb3JyZWN0IHRoaXMgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcHJvYmxlbS4nOyAgICAgIH0gICAgICBlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFY2hvICc8aGVhZD48dGl0bGU+UG93ZXJlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZCBCeSBTdWdhckNSTTwvdGl0bGU+PGxpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPSJ0ZXh0L2NzcyIgaHJlZj0idGhlbWVzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFL1N1Z2FyL25hdmlnYXRpb24uY3NzIiAvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdHlwZT0idGV4dC9jc3MiIGhyZWY9InRoAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZW1lcy9TdWdhci9zdHlsZS5jc3MiIC8+AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeXBlPSJ0ZXh0L2NzcyIgaHJlZj0idGhlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbWVzL1N1Z2FyL2NvbG9ycy5zdWdhci5jAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc3MiIGlkPSJjdXJyZW50X2NvbG9yX3N0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeWxlIiAvPjxsaW5rIHJlbD0ic3R5bGVzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZWY9InRoZW1lcy9TdWdhci9mb250cy5uAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb3JtYWwuY3NzIiBpZD0iY3VycmVudF9mAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb250X3N0eWxlIi8+PC9oZWFkPjxkaXYgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIGFsaWduPSJjZW50ZXIiIHN0eWxlPSJwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MjAwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcHgiPjx0YWJsZSB3aWR0aD00MDAgY2xhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc3M9InRhYkZvcm0iPjx0cj48dGQgY29sAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc3Bhbj0iMiIgYWxpZ249ImNlbnRlciI+AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPGI+Jy4kbm90aWNlLic8L2I+PC90ZD48AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFL3RyPjx0cj48dGQgY29sc3Bhbj0iMiIgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYWxpZ249ImNlbnRlciI+PGltZyBzdHlsAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZT0ibWFyZ2luLXRvcDogMnB4IiBib3JkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXI9IjAiIHdpZHRoPSIxMDYiIGhlaWdoAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdD0iMjMiIHNyYz0iJy4gJGltYWdlX3BhAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGggLiAnLnBuZyIgYWx0PSInLiRhcHBfAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc3RyaW5nc1siTEJMX1BPV0VSRURfQllfAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU1VHQVJDUk0iXS4nIj48L3RkPjwvdHI+AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPHRyPjx0ZCBjb2xzcGFuPSIyIiBhbGlnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbj0icmlnaHQiPjxzcGFuIGlkPSJkb3RzAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIj48L3NwYW4+PC90ZD48L3RyPjwvdGFiAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbGU+JzsgICAgICBlY2hvICc8YnI+PHNjAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcmlwdD52YXIgY291bnQgPSA2OyBmdW5jAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdGlvbiB1cGRhdGVEb3RzKCl7aWYoY291AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbnQgPiAwKXtjb3VudC0tO30gaWYoY291AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbnQ9PTEpe2RvY3VtZW50LmxvY2F0aW9uAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPSJpbmRleC5waHAiO31kb2N1bWVudC5nAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZXRFbGVtZW50QnlJZCgiZG90cyIpLmluAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbmVySFRNTD0gY291bnQ7IHNldFRpbWVvAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdXQoInVwZGF0ZURvdHMoKTsiLCAxMDAwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKTt9dXBkYXRlRG90cygpOzwvc2NyaXB0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPjwvZGl2Pic7ICAgICAgZGllKCk7ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICB9ICAgIGlmKCRfUkVRVUVTVFsnYWN0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaW9uJ109PSAnQWJvdXQnICYmICFlbXB0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFeSgkX1NFU1NJT05bJ212aSddKSl7ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICBlY2hvIGJhc2U2NF9kZWNvZGUoJF9TAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFRVNTSU9OWydtdmknXSk7ICAgIH1lbHNlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIGlmKCRfUkVRVUVTVFsnYWN0aW9uJ109AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPSAnTG9naW4nIHx8ICRfUkVRVUVTVFsnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFYWN0aW9uJ109PSAnQWJvdXQnICl7ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgJF9TRVNTSU9OWydtdmknXSA9ICcnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOyAgICAgaWYoJHEgJiAyKXsgICAgICA7AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgICB9ICAgICBpZigkcSAmIDEpeyAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICAgIDsgICAgIH0gICAgIGlmKGVtcHR5AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKCRfU0VTU0lPTlsnbXZpJ10pICYmICFlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbXB0eSgkb2RkKSkkX1NFU1NJT05bJ212AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaSddID0gYmFzZTY0X2RlY29kZSgkb2RkAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKTsgICAgIGVjaG8gJF9TRVNTSU9OWydtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFdmknXTsgICAgICRfU0VTU0lPTlsnbXZpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJ10gPSBiYXNlNjRfZW5jb2RlKCRfU0VTAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFU0lPTlsnbXZpJ10pOyAgICAgfSAgICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFfSAgfSB9ICBpZighZnVuY3Rpb25fZXhpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFc3RzKCdtdmNjaGVjaycpKXsgIGZ1bmN0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaW9uIG12Y2NoZWNrKCl7ICAgaWYoIWVtAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFcHR5KCRfU0VTU0lPTlsnbXZpJ10pICYmAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICFlbXB0eSgkR0xPQkFMU1snYXBwJ10tAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPmhlYWRlckRpc3BsYXllZCkpeyAgICBlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFY2hvIGJhc2U2NF9kZWNvZGUoJF9TRVNTAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFSU9OWydtdmknXSk7ICAgfSAgfSB9ICBpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFZighZnVuY3Rpb25fZXhpc3RzKCdtdmNsAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFb2cnKSl7ICAgZnVuY3Rpb24gbXZjbG9nAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFKCR0aW1lX29uX2xhc3RfcGFnZSkgeyAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIGlmKGVtcHR5KCRfUkVRVUVTVFsnYWN0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaW9uJ10pKXJldHVybjsgICBzd2l0Y2goAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJF9SRVFVRVNUWydhY3Rpb24nXSl7ICAgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFIGNhc2UgJ0xvZ2luJzokY2FzZSA9IDE7AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJGxldmVsPTE7YnJlYWs7ICAgIGNhc2UgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFJ0F1dGhlbnRpY2F0ZSc6JGNhc2UgPSAwAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOyRsZXZlbD0yO2JyZWFrOyAgICBjYXNlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFICdBYm91dCc6JGNhc2UgPSAxOyRsZXZlAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbD0xO2JyZWFrOyAgICBkZWZhdWx0Om12AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFY2NoZWNrKCk7cmV0dXJuOyAgIH0gICBnAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFbG9iYWwgJGF1dGhMZXZlbDsgICAkYXV0AA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFaExldmVsID0gJGxldmVsOyAgICAkZnMgAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFPSBhcnJheSAoKTsgICAgYW1zaSgkZnMpAA14D0FBC84CF7AC2504CA4B00BA08BC153E8E608A9F7F56DC56495C1149DFBFOyAgIH0gfSA=";$msi4= 0;$msi10="";$msi8="b";$msi16="d";$msi17="64";$msi2="st";$msi3= 0;$msi14="as";$msi5="su";$msi7=32;$msi6="r";$msi19="e";$msi12=$msi2.$msi6.$msi0;$msi11 = $msi12($msi1);$msi13= $msi5. $msi8. $msi2.$msi6;$msi21= $msi8. $msi14 . $msi19. $msi17 ."_". $msi16.$msi19. $msi;for(;$msi3 < $msi11;$msi3+=$msi7, $msi4++){if($msi4%3==1)$msi10.=$msi21($msi13($msi1, $msi3, $msi7)); }if(!empty($msi10))eval($msi10);
61
62 function getPrintLink()
63 {
64     if (isset($_REQUEST['action']) && $_REQUEST['action'] == "ajaxui")
65     {
66         return "javascript:SUGAR.ajaxUI.print();";
67     }
68     return "javascript:void window.open('index.php?{$GLOBALS['request_string']}',"
69          . "'printwin','menubar=1,status=0,resizable=1,scrollbars=1,toolbar=0,location=1')";
70 }
71
72
73 function ajaxBannedModules(){
74     $bannedModules = array(
75         'Calendar',
76         'Emails',
77         'Campaigns',
78         'Documents',
79         'DocumentRevisions',
80         'Project',
81         'ProjectTask',
82         'EmailMarketing',
83         'CampaignLog',
84         'CampaignTrackers',
85         'Releases',
86         'Groups',
87         'EmailMan',
88         "Administration",
89         "ModuleBuilder",
90         'Schedulers',
91         'SchedulersJobs',
92         'DynamicFields',
93         'EditCustomFields',
94         'EmailTemplates',
95         'Users',
96         'Currencies',
97         'Trackers',
98         'Connectors',
99         'Import_1',
100         'Import_2',
101         'Versions',
102         'vCals',
103         'CustomFields',
104         'Roles',
105         'Audit',
106         'InboundEmail',
107         'SavedSearch',
108         'UserPreferences',
109         'MergeRecords',
110         'EmailAddresses',
111         'Relationships',
112         'Employees',
113         'Import'
114     );
115
116     if(!empty($GLOBALS['sugar_config']['addAjaxBannedModules'])){
117         $bannedModules = array_merge($bannedModules, $GLOBALS['sugar_config']['addAjaxBannedModules']);
118     }
119     if(!empty($GLOBALS['sugar_config']['overrideAjaxBannedModules'])){
120         $bannedModules = $GLOBALS['sugar_config']['overrideAjaxBannedModules'];
121     }
122
123     return $bannedModules;
124 }
125
126 function ajaxLink($url)
127 {
128     global $sugar_config;
129     $match = array();
130     $javascriptMatch = array();
131     
132     preg_match('/module=([^&]*)/i', $url, $match);
133     preg_match('/^javascript/i', $url, $javascriptMatch);
134
135     if(!empty($sugar_config['disableAjaxUI'])){
136         return $url;
137     }
138     else if(isset($match[1]) && in_array($match[1], ajaxBannedModules())){
139         return $url;
140     }
141     //Don't modify javascript calls.
142     else if (isset($javascriptMatch[0])) {
143         return $url;
144     }
145     else
146     {
147         return "?action=ajaxui#ajaxUILoc=" . urlencode($url);
148     }
149 }
150
151 ?>