From mboxrd@z Thu Jan 1 00:00:00 1970 From: CH Gowri Kumar Date: Mon, 26 May 2003 10:49:30 +0000 Subject: [Linux-ia64] run time code generation for IA-64 MIME-Version: 1 Content-Type: multipart/mixed; boundary="277917251-938803711-1053945450=:2035" Message-Id: List-Id: To: linux-ia64@vger.kernel.org This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --277917251-938803711-1053945450=:2035 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi all, I have been writing macros for the runtime code generation for IA-64. You can find the files in the attachment (ia64.tar.gz). I am facing a serious problem while calling the functions from the runtime generated code. I am able to execute the function but while returning it is dumping core. I couldn't figure out what is the mistake I am doing. This is what I am doing to generate a call statement: I have a function named "Test_Function" which I am trying to call from the generated code. For that I am doing this: IA64_FUNCTION* fp; fp = (IA64_FUNCTION*)Test_Function; target = fp->addr; Generate code such that this target address is moved into register R15 and then to a branch register b6 and generate a call statment as: br.call.sptk.many b0 =b6. Also, I am storing the GP,RP etc. in R4,R5 (as they are preserved across function calls). The IA64_dumpcode function dumps the code which have generated at runtime and seems to be work properly. Can anyone explain what is the mistake I am doing and the remedy? The attachment contains all the relavent files: bash$ make gcc ia64_codegen.c test_call.c bash$ ./a.out ....... Thanks in advance. Regards, Gowri Kumar PS: This being the first version, I haven't done anything towards exploiting parallelism. So, each instruction will effectively make a bundle with the other two slots as nops. Once I am assured of the correctness of macros, I will go for the scheduling. --277917251-938803711-1053945450=:2035 Content-Type: APPLICATION/x-gzip; name="ia64.tar.gz" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="ia64.tar.gz" H4sICHnq0T4AA2lhNjQudGFyAOxceVfbSLbvf/GnqEefzsi0AZUkb4HQUwZX ohMgehhmknn9jo+xZfC0t/aShOnu7/6qSsu95UVSTEhIHu7TWK4q3d9d6m6K pFu/P97/4WE/pumY5WJRfJtmueRo3+HnBzFQcuxSkRbFMaV22fmBFB+YL/WZ T2etCSE/3Pw2H7Qm69elzX+jn1tp/7PWb3631/cfCMOkpllynLX2p1Zsf6dE y2K9bdr0B2I+ED/a5/+5/Wf+dPacyL/Ndqvf32uTXqvkNNujjn/jDxd/3ua2 btpLS9DZua8tz9Pn0z7K/3V7fnaMFP8XMZ8u+n+5XHzy/y/x+bE3bPfnHZ9s 646+ncv1hjPiMjF4Mh8M7ox87o/c1sSfzSdDYh7k/kIL6h/99nzmG7X5sNP3 yY6kopbnttQ8vzo/vnTfnJOd7rgw9D90xwe5LXm2sTNuzK8vRvNZb+jnjfej XicfTvUO5OndMXlBDI3ITh6YEmsUub0bua473j26GcdjrU5nIs/uj4Y3ecmS mEFwckoAGTshbv5ZxFkA159Pb49b7VvfkOcWjt+c1Bvuv+qKvxcLjOcVs6Fy eko5OUmULJJSgzuSs8J8OO3dDP0OkfyRvj9UGgsW+MOOZK9925rs5JUcP8sV AuXDrcjThho6JGJZPrclztpqTQfk/ajfmsnZ7W6b/GRuk+fPyfZkWy3OSw63 Io1odG1LTP2VWyBxcDC9G7b3euJ70v+P/N7OB3KFRj5784/T5qQ3GJQcqUby +7ggvya0cHVK1LCSR/4YTmcTs6C+aPAlIcWM8Lwbf2bZheDAoWI4JH8dH+6Q VrglZv5gLPjzw59SfUrv8kCIdcYarw2aJ88MBX90VLKl1OOJWNw1tuWq5z91 tgvyQE5E6FIjwSn5Z4qGZeXxidG65+bHn/pvfx1uF6KRBSrx4Z+Kt8NDy8pM JlrVa5Pn5KeOnDaMaMHRkUVD3mg+D6gOVZs4kFZwHSxxaLAdI3VJ1Zy+bSqt SUuI3+dvvOZZU5xo0cC5PLNg5qMVNJZFWSSwmKQSmdyyDWFuYUwsQUuseCbN dsZe15u1q/OT07rRKkRcFFZtA3le6DXXaneB07BOx5Vr5u1ZbzQ0or1wrb4L csnVsDebkrn4W4h2WcqWW9hEYud86M3at4akETpSuzX1Qwauzt3L52JIU6Tr SkVuZVDlFihTrnET1kjlqgM1dD3xW7+pI40f9yvxQwgJONrKafycZeMH5Pok +IQ1oX40ZmormeG1DZXDN1CO+qExxT8fUwtajDRUS9QQ5uVtzEsUad7uyiFy PpqRd75I5IJDf+APZ74MPvlF4USCCFxv90g4uhEJlP/TCOQ4PCzmRdwzgp80 DFaVfP7w0CnlD36F06/F6cGioyOxICRgkcNDogKJFgVElh8fi/RrxNlS5i6y I4u2WYFIh44yp5poDzp9kZH/h1qV/xUicPe0LooOkdFkeTAa+0Nje382GO/P h5OR6Fem2wWy/UFJ2+sa/yUXhnEgiEpBZgxyrsAhR8QM57uhGuUpgsbe9Z2w bhC3VVmRNwIeg8T788/qhzzc3Q0SuaDbbfdHU1+RkKumIclQBkG1NSUat2R3 pA2MDkbX/+4IFZHd3Vbn36KU3X0/aL34qd8hux19pWRLFUIBVxLubiqsGKHJ kflQHP22qKF1MyM1M57P2sbffh3+rUCms46oh+RgtysrHiMeELI+NYaP87Pc /91+dozE/q9IS7RoL/R/jmgBn/q/L/HZ38mRnYWLPGSXyJhLxA9/0pLlFxm0 2pPRVITQCZndipQyaw178wEZT0ZtfzodTSQR+T+bz27Fmufqx9bxLXk5+jDp kddSd8QIdPj39rS11+tN23v+ZOjP9nrDwo1cpSab7du/37VuR6O99miQF1Qk ocvb3lRi3UxaAyIOuxPfJ9NRd/ahNfEPyN1oTtqtIZn4nZ5IJb1r0YuS3oy0 hp19wcxg1Ol175SYM1EudvxAhpk/GUzJqKt+vDy/Ii+VuH3iza/7ogw/7bX9 oUifIgiP5cj0VmSfa0VHnsElD42QB8JHgrBS1QHxe2J+Qt77k6lUnRVhhAQL JFCX0ZpJzidkNJbn5QW7d0Tm1PjUvTXig5QdkQEV7VuR28SBIClk/NDr98m1 T+ZTvzvvFyQJsZj807189ebqkrDzd+Sf7OKCnV++OxCLhcXErP/eD0j1RGbv CcpCrklrOLsT7EsKZ/WL41fiFFZzT93Ld0IIwt3L83qjQfibC8KIxy4u3eOr U3ZBvKsL702jvkdIw5ds+ZJAgoq7ykpCjR1/1ur1p5Hg74Rhp4I7kc9uW+99 YeC233sveGuR9mh8l248SaSl+mspplgMijwgvS4ZjkQRIbae2C+z0bJZ5elg 2QJxRUdcIMUquZTlj0+8fqst7NmYSwK2bRZIbTSdyZVnjBDTopTuUtssE3LV YILYfi73Y68rdmCXNFV5c/zm5GX9vPkq96MYk9ckFoblcrW62R6LlCr/z/kf xRYZku3jbfJH7kd/KDa3XBdexjkUvYzIu3u3R2is2x7O+vqQyP77g0FruDA6 6/RGS0P93rUcy83uxr7kxh8K1/8jvE5yYb4wC9ExjY+s+MiOj5z4qBgfleKj cnxUiY+qQBmBAAoFGAo4FIAoIFGAooBFAYwCmgVoFpIJ0CxAswDNAjQL0CxA swDNAjQb0GxAs5EKAc0GNBvQbECzAc0GNBvQHEBzAM0BNAdZDNAcQHMAzQE0 B9AcQCsCWhHQioBWBLQi2iCAVgS0IqAVAa0IaCVAKwFaCdBKgFYCtBLaj4BW ArQSoJUArQxoZUArA1oZ0MqAVga0Mtr+gFYGtDKgVQCtAmgVQKsAWgXQKoBW AbQK8jZAqwBaFdCqgFYFtCqgVQGtCmhVQKsCWhU5N/Zu5N4m8m8TObiJPNxE Lm4iHzeRk5vIy03k5ibC1cIKwsWBBUcWHFpwbMHBBUcXHF5QfKEowFALxzOE i2IMRUGGoihDUZihEGdeeqLdXYzI9ct4MGaqgRbGyJdo0M79JY/C7Hrh34jk IoqTgzXJgKNkwGNoHpPmsUg8FojH4vBYGB6LwmNeeRUoIxBAAQk4mIyDxTgY jIO9OJiLg7U4GIuDrbiFZAI0MBQHO3EwEwcrcTASh2TAIRlwSAYckgG3kQoB DZIBh2TAIRlwSAYckgGHZMAhGXBIBhySAXeQxQANkgGHZMAhGXBIBhySAYdk wCEZcEgGHJIBL6INAmiQDDgkAw7JgEMy4JAMOCQDDsmAQzLgkAx4Ce1HQINk wCEZcEgGHJIBh2TAIRlwSAYckgGHZMDLaPsDGiQDDsmAQzLgkAw4JAMOyYBD MuCQDDgkA15B3gZokAw4JAMOyYBDMuCQDDgkAw7JgEMy4JAMeBU5N/Zu5N4m 8m8TObiJPNxELm4iHzeRk5vIy03k5ibC1cIKwsWBBUcWHFpwbMHBBUcXHF5Q fEHJgKNkwFEy4CgZcJQMOEoGHCUDcVwOIjfvj0TzMrzxRr3hLDV+M1zNM0ge DOp5BgU9g4qeQUnPoKZnUNQzSDoMynqG6nqGCnuG0hFDpT1DtT1DxT1D1T1D 5T1D9T1DBT5DFT5DJT5DNT5DRT5DVT5DZT5DdT5DhT5DlT5DpT5DtT5DxT5D 1T5D5T5D9T5DBT9DFT9DJT9DNT9DRT9DVT9DZT9DdT9DhT9DlT9DpT9DtT9D xT9D1T9D5T9D9T9DDQBDHQBDLQBDPQBDTQBDXQBDbQBDfQBDjQBDnQBDrQBD vQBDzQBD3QBD7QBD/QBDDQFDHQFDLQFDPQFDTQFDXQFDbQFDfQFDjQFDnQFD rQFDvQFDzQFD3QFD7QFD/QFDDQJDHQJDLQJDPQJDTQJDXQJDbQJDfQJDjQJD nQJDrQJDvQJDzQJD3QJD7QJD/QJDDQPDHQPDLQPDPQPDTQPDXQPDbQPDfQPD jQPDnQPDrQPDvQPDzQPD3QPD7QPD/QPDDQTDHQTDLQTDPQTDTQTDXQTDbQTD fQTDjQTDnQTDrQTDvQTDzcTrCzPqB0R6gFEKoxRGLRi1YNSGURtGHRh1YLQI o0UYLcFoCUbLMIo01rxoHCPmkFjNGnQ8ep6QM43LNxd1NF3BJM/ZJZpCVmjy 4wskNLJCs85P2Us0h1TfPD7+B1IKMlfzSoPCgb7JvQbCwjG96V4imXH0bnq8 gZSHZ07RKTjoNet4opQLSgk2Hvd7bXUpNLWQ8FAd4cUq8WIxvXgbeDFDXsyB F8vsxSbyYmt4VaCMQAAF3M8D5/PA9TxwPA92hwfbwQPTe2BqD9zNs5BMgAaO 5oGtPXAyD1zMAwfzoFbwoFTwoFLwoFDwbKRCQIMqwYMiwYOt40GJ4EGF4EGB 4MFe8qA88KA68BxkMUCD0sCDysCDwsCDusCDssCDqsCDosCDmsCDksArog0C aFAPeFAOeFANeFAMeFALeFAKeFAJeKXwMocn/wVJ7HA/dX/X0P6uxTRrMcla zH8tZr8Wc1+Lma/BtaL65dXFefPUPX8d+V7NDNiqTVrD9i3mSX0WGTtzXcWU vAdHfTXd8Ev9PH0b/FU/zsTSt5XgSA00z9zwS/3kbvA3WMyDvwHVWvBX/ajV gr/yR61WEzSVP9WCkbOzWvA3IKmmj4PDZu6vy/hGLE2SXNyLyNtTQMvq9qfo xxn+UcM/OP6hbnoJdKhuFhNQ0T+0RLdzEqtYigcnxnmeGObP4isfD45XDXZX DV6vGmxpREFW/fbPq9OD+Ax164w8x7g6zRvyI75p/vBQUsjvUkkmFuNV/fi1 4RbUcrXezeefGSEJsXJrK17L3frpCRULiBGdRhGjatrSpq3FaVubthenHW3a WZwuatPFxemSNl1anC5r0+XF6Yo2XVmcrmrT1cVpai7pZWHBguKWNEd11dEl 3VFdeXRJe1RXH13SH9UVSJc0SHUV0iUdUl2JdEmLVFcjXdIj1RVJlzRp6Zq0 zCVV2roq7SVV2roq7eVtuLAPl1Rp66q0l1Rp66q0l1Rp66q0l1Rp66q0l1Rp 66q0l1Rp66q0l1Tp6Kp0zKUFuiYdtW33dwgLbu3zh+1RpyeiS3j3xs6+mqTy IKLDqOGJ7skTTZMneiVPtEie6Iw80RB5og/yRPvjia5HVFp5QsivuS1D/m8Y WvjKSxr5vLyFT+iB/LlmiRUuKa1fYodLnPVLnHCJvX5JMVhiVdcvKYVLEtgt h0vM9UsqwRKawEs1WELWCy1UGywRQGJFaEJLs5L1ZKVHaSVbs5L9ZKVHaSVH s5KTxUrfoIUSeCmlq7+crv5KqvpjC2nqL2rqL6ap/0uqPklpoeotK131CXot peu1nK7Xyiq9ljS9lr7j4POltjZNsPWmwaesWan8ZKVHaaWKZqXKk5UepZWq mpWq37GVvuVyi5p6h2k+2ekx2kk9r7ErL4wS9KTtlAQ3qu/vMCrGZ/6NPyHs 9IrskugKNDrEdj45aU4mE2M8kU8GT6zCxFZgjBqVghn/N7HVHC2MJ+jCkDjZ PT9OP5+uOb9xVUs7mSadfFJPBadJzHvOqtPFdsYUrPUUzlN1ZyedfHyWfvo6 6d9cpJ9rrTn3bZaT7YWTxc6ySOO2152RU7+rHtMhrNNBW6nx6jTYTe3hzELU 26O5GIhBrBjECad2F4TcWiCpzJSVaGkNUSmAjV1j1x0M/E6vNfMruyscQ+3N 3mBQiUDlcYxnCzz1+oHK0VEZHvJXHFQDo6nZYEYEjNWbZyP65sdasKvSEeQO 2xgjixRyJ20MYGUAeHsvBDsBQewHR+5gEu8D6uiBsaGQqYOgqRNjOxJbDR0d iTgfgat4YUQTEVMlCWyH6xNMFmz2DVDte6CevflHE4WDAGhZfFPORdcGNMVZ +mXPk5PwhRMWksECZy0a1YBXy9LfkQGjkQRVPEhL4WgxlCuYyC9KtrUgmlqF OYkkXM2mGTfqUbQ4Hg3G8nnBlck0eEAs+pe9M695etkcjwN9jgU/Fo6wJcP8 eBxGqnEUn021DlskIHOVTOckG536fyeTqWdlp3klcv2nSUbXSpZKa0m61bSE dKmkliRcS0oG5QwS0gw6F3Erg3wZKQWhPIOQqfTO6xsIuVpfgtQnC5lEaRMh V9JzMrkgTd3zTjYfzEIoixNmYyibF9LU7e5kd8MsxLL6YUZamfYoTd3uTlZP zE4q4y7NQjCrL9IMOz6jM2YntYmcQDC4hLq7lEFnI/IvfzJKSp8vL1dpxYyR y0orFEV0c02sE5SWdaITOvkEQis1opOrZyJ3utLuyRKuyaSrrJ4sYRKhDSRc Te5lZglpmuqzSpiNUGYJ08idZt6lNE31WXdpNkIbSLgmDmR1RJq24Z2snpiZ 0udyRefz+aKT1RlpVkoZhcxAL6s70rRt72T1x8yUMguZSi+rR9L0nZ/RJTNT 2kBIPZVWVrSicfe9kEyXWtH46kkArF1AqSilrLqEYsXbKpjNk2ck7rOTOtY0 uJPPBadq6jS0+ucTLixwH0Cd6+L5VUbIDVS6GjKu4h9ArWsRA6/dVK10g22j nHtTpW4IGMWATTX7ybBxd/EAml1ty6gHeQDNJgE+oGbXR/VN1Wp/cuRx7hVX N8G7R2DdTLx7RdZEyLUGvF9o3QTznrF1Q8j7hAD7k4OOc8/oujni/YLAJrj3 jK+JkGvseb8AuzniAyoXcFWl6yY9A+Fqz0C4mZ+BKMjHTD15Z9O3dqOKnXA3 Vnijip1+25dVSb1RJel2l2rq7S7RjSoJt7tQmn67i7XidhdX+6dFN/MTFU82 /4Ztrj2f4WZ+PuPJ5uk2T2D369pce9rDzfS0R2TzJ3uvt3cClWq6Mc10Y9JV xtSeHXFTnx15cuDvIGhrz7W4mZ9riWxekG/98KjzZPuHtv36m58j29P1eols n7SD7PQd5KzaQdozN27mZ26eosY3HDW0J3jczE/wPNk83ebFx2pz7XkgN/Pz QE82/4b9XH+6yM32dNG3Z+lH+zi3Sxcunn3PbxD5PEZI4OXhHu9yqX7Bi37P 7xDJYKcEXr7qY3gu1S9S0e/5LSLftJ30C0s085Wl79NOjzfu6deMaOJFo89n G5pqmywvG0nQajFdZaX0lF5eqTL9kgv9pGsuT9v7Pts74TUJG180pfr1D/pJ F0CezPnozKlf2qDq2kY2MzlUI6T3yzSxYf6i+yBBsU66kaN9kAC0aWS09G7T Suw2H5vKvk4ysfT+0PqkuysemwoTgkK069JVmPQKsc9b0yZckd80+lgL902k tpGPzYTpgYOmB44HeH+ba+mNn5Wp8Xtk2k26IFlM96GveyXL0js6a2VH98gU niRkcaWQejtkfaF26Iv57kNkML0dslLboW9PbV/nlZWupXcmVmpn8qTZrJrV mwQr9R9AnzSbVbN612Sl/jPjk2YzaDbsSMkuOZv3Zz31BGJwOO7fqXeCBa8I ww/1e2feu8arC0u+cyx4N5fx+zh+81j4ui4F4FKjXIje2mYYwQx58ULg/2I+ R7/L+V8o/k2L+V+s53Zef9/a72P8LrGYjasvwQhdZCS8mXml4vbPeh/3vVb7 t/2rofxaUp/VDN7YhtgN+LQUn5aCs1eA6kROsxBZUiG8TMl9S9MYMeO/a2lk EiaFhpNEg2bjg6bpI6BhJcuSQacpNJwkGjQDHx47fi22daORzoqZoJKATCMb mWRunGQykVBJZK7OJSHafJVuI5ogVEDGSiNDM5FxksjQzNxk2ng0VTeZ9l46 mUzbL4mMd+ae0yCqJotkJgYo9jYTEZpIxD23suze9TFO8pGBBE0i0WAnNEtk WSYRPPywkCM+Ui0fnF39X3tX/tu4kaXnV/uvIDLAQs6o0yqSunI0oDMxYtka y514BwsIskS1hciSVpaTzs5m//Zl8ZBYJKveR7LU487IQafdEut7R72jXpF8 dc/Rnx74mVT2gUbwgU/I8ghZkdBRefvl3U335su3cXp2QM/Z0zPj9LhCnh45 fCNCz//Ap2cH9MJwF3wZp1V1afkLhNvFh8ed+6+fJtvF5GHpiCkvXC6E1LiS fELVSGJWRiEXwpZDHGKhHMJFUAMgPJiiTcsEUURlTxAFyAFADsJFISBkfPiP dgsmKc5gf/HRXTGmTZ+3LKoeSPr/9snWPPFZsOao+E0v/Av4vySzSSEy0b8J RH9uUC4ZyCWCGfIpxTwLHoh+E225K/eWK0nIqkeMTJWXOIQthwhtQwXhIqgB JDycBY8Bp1hYIHSqgV0lDcwU1NyIRCRf3SWLvQmuUOmAAmVBWFWC+o+5vjGG 683L0jt81ejwq0Qxboad67txxCt9Ks2I1ZkHG4lis0oskg4nC7GVmmuLw2R5 UwvKm0qpGriJ/3GK0zNe5fU+7raTqch27/7Ojyab9XNt6axqBzvnn5T5RwEZ 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 ZXlERizNozJCeR6VEUr0wX1WFQ6W6SM3W2kw0hv3d1wBLMoZSQGxZA8KCGV7 UEAo3QMCYvkeFBBK+KCAUMYHBMRSPigglPNBAaHN2+htVxUYtokbv/dKI0K5 EVrkmNCmLiovtrmbRV5okzeLvNBmLyovtumbRV5o8zeLvNAmMCovtpLNIi+0 nM0ir3RN65/drX6qYPH05MwWk53jPVYQe67A/bJ5IMz/5ZO2StVyqcT//e5d 4+I/Bq3RjyV2cSE+bhBeUI9c4KL4Hwef1fln0scRcpN3lVuMeqsQ9VYB6mY+ ykyD2s38amfF1W7mVzsrrnY7H2VTg9rt/Go3i6vdzq92s7jaG/koWxrU3siv dqu42hv51W4VV7v/rEsO2raW6D7Kr3pbR3wf5Ve+rSPC51R+VUuML6D8qo4o X0D5VR1xPqfya1oifQHl13TE+gLKr+mI9jmVX9cS7wsov64j4hdQfl1HzM9J u6El5rfyK7+hI+a38iu/oSPm56Td1BLzCyi/qSPmF1B+U0fMz0l7oiXmF1D+ REfML6D8iY6Yn5P2g5aYX0D5DzpifgHlP2hZ5+ckPtWz0C+g/qmWlX4B/U+1 LPVzEp/pWesX0P9My2K/gP5nWlb7OYk7epb7BfTvaFnvF9C/o2XBn5P4XM+K v4D+51qW/AX0P9cR/4OHALOTZ3o28iPPDubmoWAOiDxymJ+FYlkg/yzo2dcv NgtaNveLzYKWHf78s6Bnm7/YLGjZ6y82C1o2/PPPgp5d/2KzoGXrv9gsaNn/ 929856Cu5w7A4U55bhaK7gftb63n56DgjlDeKdBzH6DQFGi5E1BoCrTcC8g9 BXruBhSaAi33AwpNgZY7ArmnQM89gUJToOWuQKEp0HBfYP88fw7ybS1zEHkN IDcPBSch8vZAfhaKZeTwQe7s9E09pVr0+e/cTBTMytHHxvPzUCwvF5gIPdVa wYnQUq4VnAgt9VqBidBTsBWcCC0VW8GJ0FKyFZgIPTVbwYnQUrQVnAgtVVvw lkEO8nrKtsjLCbl5KJwh9u805GehaILIOwt6Krdis6CldCs2C1pqt/yzoKd4 KzYLWqq3YrOgpXzLPwt66rdis6ClgCs2C1qe7Iq+zJKDBz1PeMXfgcnNiJYa okhZbWp54qvgpOh58kvDpGh5AkzDpGh5EqzgpOh5IkzDpGh5MkzDpGh5Qqzg pOh5UkzDpGh5YkzDpOR+cix6pu0/z8+ed4cjbfnv/jm2o13kHFs78nrhaLfe OtHDhkeHvsqH1xbtoBeyVSkH+Pv3FiuiNvjw60M7ZSlE5M3HBIKpGM1oBkyC AUYyYCtGmzQDNsGASTLQUIy2aAYaBAMWyQAb3/auFAg2YgccQs2IDdiCmpEq Yg80I1XAJtSM1BC7oBmpAbahZqSO2AfNSB1gZDSMHPSTgtFGWPFB1My0Jczw aFZNRLPY29KXwtvSYpzbB2oP9RCoq9JAHQmBkkjtAiWCtSRG5iYvzxMAdTMf ZaZB8MQLw1nJFxLczkfZ1CB44pXdrOQLCd7IR9nSIHjipdms5AsJHuaxHNRt LX5+CLS5WSjo67kVUNXi74UUUNXh87kVUNPi94UUUNPh+7kVUNfi/4UUUNeh gHCdkoN+W4sKomuc3EzkUIK7PjIGNXdBNF+uJ7vF6sObzdqtA/2mMuKRNP3e eO6tv+a8ZvVZqpVq3vorfh5NhV8UK4Ld8bwGpzAOR/JIIFo0REsB0VAMT5xn mDpeLUX8KEMJhEqK+CmGKRAjxfDEAYap49VSxM8ulECopIgfW5gC0VUMT5xY mDpeLUX8sEIJhEqK+DmFqUapmo3EKYUSBLUk8TMKpSAqWeInFKaapkqWxPmE EgS1LPHTCaUgKlniZxOmGqhKlsTJhBIEtSzxcwmlICpZ4qcSppqpSpbEmYQS BLUs8RMJpSAqWeLnEaYaqgogcRChBEEtS/wEQikIzQrhLyqAxJmDEgS1LPHD BqUgNCuEv6gAJpC/ULJMEH+hZJkg/qICeID8hZLlAfEXSpYHKL+oEKZYgqGk mUIZhhJnCqUYFcIMyzGUODMoyVDizKAso0JwsDRDieNAeYYSx4ESjQphjmUa Spw5lGoocea0OP4z4FKI5EnzUgylQImT5hUwCokSJ82nOqF/L1EKkjxqXoGi lCpx1rwSSCFX4rD5VG+k5MKqM0QuqEZD5IIqNUourF5D5IKqNkQuqHaj5MIq OEQuqI5D5IKqOe/RLzkGVtDtH2GjgEjvCp5DI3Eo51IKhVV2gFBQcQcIBdV3 hFBYiQcIBVV5gFBQoUcIhdV6gFBQuQcIJav4+K3XuvHG6KfsLMZuwG7TD8H2 dhwPdPd3feuSXcetme5Dvh5ooEj3bglOC8NpqXAaBEbyfJZUEFqoxNEsEhxK qMSpLKnmr8ZIHsiSCkILlTiLRYJDCZU4hiXV/NUYyRNYUkFooRKHr0hwKKES 566kF3EESvLUFQkMLVjizBUpEiVa4sSV9IKOQEmetyKBoUVLnLYiRaJES5y1 kl7cESjJk1YkMLRoiXNWpEiUaIlTVtILPQIlecaKBIYWLXHCihSJEi1xvkqq aVMoyYNVJDC0aIkTVaRIGFOUr1EoyTNUJDC0aInDU6RIGFOUr1EoE8zXENEm kK8hok0gX6NQHjBfQ0R7gHwNEe0By2sUzBRMbIhwUyyzIdJNsdRGwczA3IZI N8OSGyLdDMtuFIwDpjdEOgfLb4h0DpbgKJg5mOEQ6eZYikOkmwPShTusCpyU g0OlQKR8yYNDFViEgMmDQyV7MP5GlwIp5eRQBRQpZPLoUCUaIWby7FDJrgwt JlicomJiJSoqJlaoImKC5SoqJla0omJipSsiJljAomJiZSwqJlbMBrtlKiCw no1smdFotGfu980AMNIxSRnBwhaUEattQRmx8haQEaxwQRmxIheUEatzARnB UheUEat2QRmlBS/f6G1gG73CmzZn8a3e8MFXn4HDg6+NUl3y4GuOgwlT3dVX ZW76GV4OlZBvFSKPvxOa6si5SGfvipVKO7fmMzfEkpDPqfnMvbBSw0su0tnb YKXSzq35zB2wJORzaj5z86vUoJeLdPa+V6m0c2s+c8srCfmcms/c7Sp9TyQf 8ey9riTUc2s/c6crKQM59Z+5z1X6rk0+4tm7XEmo59Z/5h5XUgZy6j9zh6v0 faV8xLP3t5JQz63/zN2tpAzk1H/m3lbpO1/5iGfvbCWhnlv/mftaSRnIqf/M Xa1SA2BO4tnbWUmo59Z/5j5WUgYKqaBo/M9JPHvnKgn13PrP3LJKykAhFRSN /zmJZ29SJaGeW/+Zu1NJGSikgqLxPyfx7P2oJNRz6z9zIyopA4VUUHj9n5N6 9sMLZeRzz0Dm0wvlHBRSQuESICf17OcXysjnnoLMBxjKOSikhMJVQE7q2Y8w lJHPPQWZzzCUc1BICYULgZzUs59iKCOfewoyH2Mo56CQEopNQfjoQHbyOc4o kdLPOwnZzyhRsJBvFrKfUSK5WenfKs7OQI5DShQc5J2J7KeUKJnINxfZjymR 3FTNPRea7sgUnAs992UKzoWeuzMF5kLTPZqCc6HnTk3BudBzv6bAXGi6a1Nw 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 9mb+Nsru3vZ9joU4bou5JAG0r/5s26/+3t46PNS/d5Hejn53L3lyk8HzL8JT We99b7ZDb7YDsey9N9uuN1uCNx8+Z8HnplcD2+E34acs/jjGrU5yVZLcaKSR XI2WTie5upScN8XVmJ3769GoX/u2Gr/BYR+SXCWMdCkr0O/VI1uKkSl3VaJD 27Kht9wfVSM78pGEoN3kLRy7FlNgazp1np+jGrz7oTXa34xm+9W4fUjQrFUW lpD7kXet79UD25KBw5Z6XE8yzk36ynF9cZyng/ab99eXd4ZbVq9nbu1kPE2m 2/VzsHZsM2FZwUrDCisPK6b7x3L/2O6fqvun5v6pu38a7p/mhWFwwiX+p1R6 WT0vPqzcon65Xn244OMvLoxvvzWs+oXxv5JLzOCSmvwSK7ikKr/EDi6x5JdU /UuY4pJacIkpv6TuX2I05Zc0gksUEjWDSyretPn22RZydNs8qf/Tqt8S1G+d 1P9p1W8L6rcR9ZeHrOL+YZ/fNJgKXsJpUPBSpyezQU9mk5xMViEnk7G0yawK k1lFJ/O1TaRCeVV6lmr0LNXpWWrQLtekZ6mSNks1YZZq/7YRTxWrwoin4CWc IQWh1IhXF9RfP0U8LREPSTxyifaOIieUHvEawmQ20iZT36QptGDR6rZpRVXT RGwKIjZV9vpJ7VOhDZvWRmifdCBHwsReYedBRfXGuBy+uXV4xfmrqzW3+vTf tzjs3o47N9fd8Wh49+O43/t5vJu4Vf3OrPLKLvzdA3ULMr7bEn5mvHtn7HcK wi3Xw9fv3u13ESr73V6hgBQoD1rX/3kk0in3YA+kr++KCs1yCu1SLiq0grRC 6K6GmTZzCd3VMdMK0kqhi8+0lVNoDTOtIK0072CmeXeS3NRZYb8+HnnEtwtS L+rfxyOP+HhB6kX9/HjkEV8vSL2ovx+PfLrwP/fuL+8+RSI3VaSPnMnltI+e ypWkj5zLZbQ/QTJXkj5yNpfTPno6V5I+cj5XOtjxEzrt38fN6KSPHzel035+ 3JxO+vpxkzrt78fN6qTPHzet035/3LyeQv/uZvgp0rqloHzkrC4lffSkrqJ8 5JwuIf0JUrqK8pEzupT00RO6ivKR87nKs46fzkm/Pm42p3z7uMmc9O/j5nLK x4+bykk/P24mp3z9uImc9Pfj5nHr8Ph824xtw3fWL6udM5Nsx1/dpOZ7kT2z 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 xqAQTYFQiKpAKERXMqihOvCIG34yZx2qI4+43UeCpGtG3OwjQdJ1Im71ESDS 4CMqReatQyL6iFqhURC10CiIXggUtV+JypG56BCJQKKGQChETSAUoisCighC orIIHyWikKgtFAtRF4qF6CuGFfStiayYIusjvlwSF1DxFdN9P4UkO5RqnRRq ZvJBmZHDX1dY7bbr5XPstYg7b+4mT5PnX9b8f5yY96962ft3PSBqigmlYgdf hxfHDnUJkFkWZJYF2cyCbGZBtrIgW0rkoLVLygOEzmTrfjj5EH+M8LbvTkeJ r7Y9OlZM69UEz/4QljKEqYeYKUNM9RArZYgVG+KKfHfTvTG+9jq0JCV/dKa/ HCQP+41EOiqX+rKGyv20pse8PQl/ptFvbHyR7HvsvccUtD0u7fseX4gC8p7K R4Dn4t2r2irfCy2t7l9XW2VLS0crBaGcrX/uhW5V96+uWZVKK6HiFE1HQ8Wx V9qs6l7oVXVPtlYOWwC7f9gntV9FH1q8U5BKgWFHNsVkhvbb1D8NQv+re7gT 82katE4DT3Zf8yDv5izjcvW8275M+XPHQmIf3Px0Nd7yJMFTaHnLvAzjb7i5 8asWdO233PRiRtLL/tN68GEz+iGrBZ9Wo5+6YSOan4LPIw/0b7214llkR3DQ +rE3br+/7l71Sg8vq9nSKe+cp81ysnPKCy5Rxf+L+X/5y9DZ2vgn//vMH/Hm 3cT4rhQOu/jfkj/w22/57Bsl/5/BuQPMVfW339q1i2+i4x/c8f5VrmiNEMH0 4pzlXfrHb4+LpVOqXHwTaablK9wYzze8pRafKWMym22/CX7/sPnm/I/LVs0e 990l/N3lzfU3ibFtjwM+XJhxY/JN/JMHF8y/2kXxfznMbc12Wd6V+Z/3Vy6P v64XM8MnvXx5fuxMpo9OyfvwS85h2RCxl85KGNSazSLmVPKpfVnm33Fbe3aH L3ZlEcNTmYDSfXnadNYz52DM08fJ9kvOJVcjX5J51/U+OtOXnROSMdzFiuNe sP/exXn6vcSH/HUx57obj6cbVyz+5/yPb87/6qxmi/l58LfhOsbYG9e56fa+ 712Pf+Du8JfTz+v7eXSWm7c753k3nk6Wy6+mx6BRYZVKzbb/UnF/6jXxb/fH qpjmX9wParZVs2us7l5vVZn1F6NyDGbiPy/PO7cYM/7y4ZeXp8lWfh31/Wf6 89fFarp8mTnGF4uJ67Dc8T84q68evzj3w8gdN43+y8oPQxc8TG62blyYl77g 5525EWX36Bjz4ALx8v9afeGGjLOts3vZrtzY6Qecp8kiAApC6JecaNn7vxuu w0/dYHt+9v7KD2qJUOyfep34mMf7s7sgDRlhPuJIQhIwvpxvyivnt/mGfxUT 8Zsz9zPOjPGdEQbEC+4c62mJx7PR5T965efF/zjrefD1BZfSY98dwv/mGeps zv9VEuh+eSHQckf5crgXzjduDvUz14dN8O8PHnueAtxP3Ewz3m7dctSDvK36 f38/5MTTUobH0N/+5l92yavQcpggzs8efMB96vIuGlZCzPKHDYf9MsBwL3an 44wYdsuqwQHmqWOjcjxsd5MP3i6CN7JdOyBUcskjKOlhryQ7wC8GmnoEX8j6 XgSIRFvF935y3QkIJrmwMuKaPmhGg6K3MQNoBH8XVnf81NWNu+wruzq/yKXk p812vXOmu1Kw/rpwV6Teot5zVuM/jP8ruUa7mXxwuFsbpQvjjcHXz+dnxtmZ Ef2JXFa6KBvD25s7l9dW113ker//fHt51wv/0bvvdTz6YcC8fVntFk+O8b2z crZuXJoZfG1mfB3ESXHFFluyXXhBMow/bpA6iwD7yze+vcSD8eRh/avjshoS 8YT82ohSCdd7wTovCNFGhQfpf3VGOv2cfk4/p5/Tz+nn9HP6Of2cfk4/p5/T z+nn9HP6Of2cfk4/un7+H4OhtOMA0AIA --277917251-938803711-1053945450=:2035--