Problem:


Score : 400 points

Problem Statement

Takahashi will play a game using a piece on an array of squares numbered 1, 2, \cdots, N. Square i has an integer C_i written on it. Also, he is given a permutation of 1, 2, \cdots, N: P_1, P_2, \cdots, P_N.

Now, he will choose one square and place the piece on that square. Then, he will make the following move some number of times between 1 and K (inclusive):

In one move, if the piece is now on Square i (1 \leq i \leq N), move it to Square P_i. Here, his score increases by C_{P_i}.

Help him by finding the maximum possible score at the end of the game. (The score is 0 at the beginning of the game.)

Constraints

2 \leq N \leq 5000

1 \leq K \leq 10^9

1 \leq P_i \leq N

P_i \neq i

P_1, P_2, \cdots, P_N are all different.

-10^9 \leq C_i \leq 10^9

All values in input are integers.

Input

Input is given from Standard Input in the following format:

N K
P_1 P_2 \cdots P_N
C_1 C_2 \cdots C_N

Output

Print the maximum possible score at the end of the game.

Sample Input 1

5 2
2 4 5 1 3
3 4 -10 -8 8

Sample Output 1

8

When we start at some square of our choice and make at most two moves, we have the following options:

If we start at Square 1, making one move sends the piece to Square 2, after which the score is 4. Making another move sends the piece to Square 4, after which the score is 4 + (-8) = -4.

If we start at Square 2, making one move sends the piece to Square 4, after which the score is -8. Making another move sends the piece to Square 1, after which the score is -8 + 3 = -5.

If we start at Square 3, making one move sends the piece to Square 5, after which the score is 8. Making another move sends the piece to Square 3, after which the score is 8 + (-10) = -2.

If we start at Square 4, making one move sends the piece to Square 1, after which the score is 3. Making another move sends the piece to Square 2, after which the score is 3 + 4 = 7.

If we start at Square 5, making one move sends the piece to Square 3, after which the score is -10. Making another move sends the piece to Square 5, after which the score is -10 + 8 = -2.

The maximum score achieved is 8.

Sample Input 2

2 3
2 1
10 -7

Sample Output 2

13

Sample Input 3

3 3
3 1 2
-1000 -2000 -3000

Sample Output 3

-1000

We have to make at least one move.

Sample Input 4

10 58
9 1 6 7 8 4 3 2 10 5
695279662 988782657 -119067776 382975538 -151885171 -177220596 -169777795 37619092 389386780 980092719

Sample Output 4

29507023469

The absolute value of the answer may be enormous.



Sample input:
5 2
2 4 5 1 3
3 4 -10 -8 8


Sample output:
8

Submission status: Wrong Answer

Solution code:
# compiled by pythran
"""
#pythran export main2()
import numpy as np
i4 = np.int32
i8 = np.int64


def solve_core(a, n, u):
    cs = np.empty(n + u, i8)
    cs[0] = a[0]
    for i in range(1, n + u):
        cs[i] = cs[i - 1] + a[i]
    base = 0
    max_index = -1
    res = -1000000000
    for i in range(n):
        if max_index < i:
            max_value = -1000000000
            max_index = i
            for j in range(i, i + u):
                if cs[j] >= max_value:
                    max_value = cs[j]
                    max_index = j
        else:
            if max_value <= cs[i + u - 1]:
                max_value = cs[i + u - 1]
                max_index = i + u - 1
        res = max(res, max_value - base)
        base = cs[i]
    return res


def solve(n, k, p, c):
    mark = np.zeros_like(p)
    cwork = np.empty(n * 2, i8)

    ans = -1000000000
    for i in range(n):
        if mark[i] == 1:
            continue

        cwork[0] = c[i]
        mark[i] = 1
        m = 1
        j = p[i]
        while j != i:
            cwork[m] = c[j]
            mark[j] = 1
            m += 1
            j = p[j]

        cwork[m: 2 * m] = cwork[: m]
        if k <= m:
            res = solve_core(cwork, m, k)
        else:
            t = np.sum(cwork[: m])
            if t > 0:
                r = k // m
                s = k % m
                res = t * (r - 1) + solve_core(cwork, m, m)
                if s > 0:
                    res2 = t * r + solve_core(cwork, m, s)
                    res = max(res, res2)
            else:
                res = solve_core(cwork, m, m - 1)
        ans = max(ans, res)
    return ans


def main(file_in):
    f = open(file_in)
    n, k = [int(x) for x in f.readline().split()]
    p = np.array([int(x) - 1 for x in f.readline().split()])
    c = np.array([int(x) for x in f.readline().split()])
    ans = solve(n, k, p, c)
    print(ans)


def main2():
    main('/dev/stdin')
"""
import os, sys
p = os.path.dirname(__file__)
pymain = os.path.join(p, "a.out")
if len(sys.argv) == 1:
    import subprocess
    if p == "":
        pymain = "./" + pymain
    subprocess.call(pymain)
else:
    import gzip, base64, stat
    gz = b'H4sIAMhWP18C/+29C3hTVbY4ftL0EV5NgIpFUIIWbHmUhmcDiClt4BxJoUMrwzhiKG1KM6ZNbU+g+ETbKscQqI7jOHOduTjjqHfGe4eZQQREaHkV8MVDkIeP+oKEDhRQoSKQ/1p775OckyZQuHPn9/2/z0Czz15n77XXXnu99uPkPGa1TYvTaDj5E8dN4TC3dICF5C0MbngzVARg2Vw3+B7E3cIlQj5eUc7CWVRpB0MtpzpWTsvqZcfRfHacRZUOZOXkVKNIEzjlx6JKDXWcKuU4Y6ge0pq+nELTl89XpasY0j2J6npxrJ7fR6F+33xVysVxqlTuXzz7K2LwItYvOc1j5fIU5fFT8LVYiteND9F840MWVbqRldsYUe8nUC+R6/rHwNLZrL1YfDmk5VSpPA6jXM4F48eOcpWOdDkrPbUja7PHjxw/NrPGnTma0GRgZafPvDs03nEKmlMYDO//+YmzH/zlFsf+Ixt/+sjUlPoFVa/85kG8N4bVSYK/+mTD/J4Z3eKw5tKenAbvTYC/SfD352cmb3mx5O3t3R9vtP/j4zEHRpyx3/dh4aq6ZQ0l/e7/1ZqRvx9YtS7lhZ65tcL9azOsB2xX4osGGusTBb6Eiw73xkeH74yLDs+MgV/QRIcPjwEvTowOfyMGPClGu7fHgL8aA48pITr8cgz41Bj4m2P0a1yM8mkxyn8QY1yEGHj2xBgve4zyC2K0+z8x2r0vxrj/EIOfi2K0O0IbHV4Qo/wNMeCrY9D/pxh09okBnxuDnqkx+DkwBj3/jIF/cCz6Y8jVwRjt/jQGnt/GoN8fYxyHxGj3ixjj2DcG/MkY7ZbGoNMQ8jzqT14MPCcAPpi7gdvJ7LVct4GjcD+Dz2Xwo3EUbmH+S/YDVQxPAYOnMvhC4ENvLM/wyPZ/JuPP/P4WFT3D2LgYB6jhYgLFX87wL2XwCYxOfrka/tNEbPcmrvUZRidruJSN1+qb1PgHMbglol0O/FSNWFoyfDj6pvGc3b6wwl1prxGLq0W7nbPfM7NQzHa6a+wLimscY4VKp5hnsi4CeNGcQtE0DqDOEihd7SiuWOApE0oAaCopL662i9XFTrFGKLFaEWdtrb3KUV3jrix2OcUl9kVZBLN7TJVHtJYQbDNNWXZ7SW1t8QLnItNouK5x2ktcxTU1dnFJlcPurCxzW7HSjEJxXAmCALVpjD3fvthZ6qiE+06R0AVYzQB1VtY4qkXBZbXOLnQXsY6YKbnQnaiEjitxOYqrrXBntF2ALsOfWCw6oG6pqwBxF4pImFhe7V5sdzkqF4rldkd1tbu6YAb0AYgvthe7XO4SqGN31JY4qkSnu5JUM423292USzJl0QiYDbAxlEZWWiiyF2XZrYXj7QUzCsfYXbQf47ERl4ONBAAmENaZTCZzuLazciHDEaWpwmJsL9eEnR1DOjurylFZ4S51MB6HMI4ODTEgjI3KNKbMWVlqL3NW14h2d5kVWFJREUFcV1GNhvErcVdCOU+JaK0ooZwfK3Pe7cEW7NXFlQsd9rIKEZp6MEJQ80ZTGRVgzJUjcR3UTKh2wHgtclgrQiNJyVhQXGovKa4RsaHKxRWzgWnmSje9J0ZTnFxTiCjTmGpPpeiscFD5YdIZopSRf13jMEExDkCOciyKiq5fVGTdCxM5dnF5sdhJALtKZhaMcbWjylVcApytQAqvDxHqenEVyG6plSGBsbhe3o0nvAOjE8k6ottkaKkQmENWwL0QEIeNAHYhYnCZlgI5TDqouVOQN05JXgwrqhiFTi2AYM2ecR28s7KOlVU71AbrOsehBERIdFhnV1BVGVsCmvq/GNWaGufCSuhZ4Vhqvt3jylyemnLCTTTIERoHjqyC+jC4WlgCjWDOxNnvrlyMwzrbUeOpcODNElqszA1iw5WJDheYVWwOzLK9rNjp4oA80e3iyhzuMq5soUOs4UqIYccbYPdlWy86ap0iV+GoKKlawpWVuNw1Dq6CFgRghXuRg1tQUlEFxbFR5lMrip3QKHCcm56bax+TmcVNtwlTc+fOheuxmaPVWZNJlTVzcJUzVbCbMseoq6nK0Wv76ExT+HJ05jgyW9TC7FILaULoCmFayCdCHq+TyHccpDoCiQuV6kZqIIz+0W+s253h4sj9BIKR/otn2LWh9QkN92FiOI4rGLqkBwf1H0qS7yeSGArvV+Ffx68BbTeuLonCiklexz3L8tJjGXE4A36J5ff/9f4EXAH5K8s/QMrHcxtYXsx4VodU7gq1F8edSQzHec8983wirmgcYOU9Nzm7Id9aWXn/Shpv4VpCliKMOq2Am5SrLyxuS2CxnPzhFfBJynmxAj5GGYcr4GOV+H1h+DjlPEgBH6+AlyvgExVwOY5E+GQFPLWRwpMUsS2JoxXwOAU8XQHXKuBZCni8Ap6tgCvXrSwKuHLdhlfAk5T9VcB1ynmZAt5NAZ+vgHdX8kcB76GAVyngPRXwWgW8lwK+VAFPVsCXKeB6BbxRATco4C8o4L0V8FUKuHLe85oC3lc5T1TAUxTwdQr4DQp4kwKerZRPBbyfct1AAb9RAT+kgKcq5U0B76+UcwX8JqV+KeADFPAOBXygcl7zTBh+swKsU8BvUc4rFfBBSvlXwJXzTqMCPlgp/wr4rUr5V8BvU8q/Ap6mlH8FfIhS/hXwoUr5V8BvV8q/Ap6ulH8FPEMp/wr4HUr5V8CHKeVfAR+ulH8FfIRS/hXwkUr5V8AzlfKvgI9Syr8CblbKvwI+Win/CvgUJT/r/qnjvQkJtUaOb2gS44J7+Lptuq2h+8FxcXArOCQevvWDLHCF+XK8FWgNwmfIhcWQR9MY2EPyZzGPJjHQRPInMI+mMLCa5L/APJrAwCqSP4J5NH2BRpLfh3k0eYGlJL8b80h2oIrkt2AeTVxgPslvwDyatkAByf8d82jSAhaS/zPm0ZQFskj+D5hHExYwkvxvMY+mK2Ag+WcxjyYrwJH805hHUxU4fRnzT2DeQPpP8g9ivjfpP8lXY74P6T/J/wLzfUn/SX4B5lNI/0n+HszfQPpP8rMx34/0n+TvwvyNpP8kPxXzqaT/JD8R8/1J/0l+NOZvIv0n+WGYH0D6T/K3Yn4g6T/J34T5m0n/Sb4P5m8h/Sf57pgfRPp/CfNxmDeS/pP8hUWQH0z6T/JnMX8r6T/Jn8D8baT/JP8F5tNI/0n+COaHkP6T/D7MDyX9J/ndmL+d9J/kt2A+nfSf5DdgPoP0n+T/jvlhpP8k/2fMDyf9J/k/YH4E6T/J/xbzI0n/Sf5ZzGeS/pP805gfRfp/kYw/5rNI/0n+QcybSP9Jvhrzo0n/Sf4XmB9D+g/5gs1nnp3P+Q8AazfjWtQmzG5oAu30vwTNzd1alqkfVE9UTz8oD2Kpk4K09z5e+oKv++p0QZHQ0rTKaeH4luYskrRUDQSdvGGKaOS+JeW/USGwcOt2Amr+DvwW+64jGg9q3m0zAoKtZY1bSa1wnU2k/OOnSNJ8WctLp/lm/528Zge/97LYO4QhiWGIrL/0jvXQX85z49289LX/UWDAjoRXAaKZR0tGlm9boaY3Z05hAS99uWkNdk/6zP86cBpTLMF7B6bxDUfFdL4u1xj0DOa9k3hfroE3t4gJ/hpgLha8H9OWeOJLTE1ozH6ec99WQdpxxdrjWO2Rito26bz/JIyJkkDu7pyf5szJuTunqJB//J8dYOYEKcj7Hk7L2jTUY+H8l0BQ+Jb6tJ3MfO6oT9uD6WYUmE0YDPuPAErkYDovNfN1zQZe0vEtFhKz7bAYoLbFiNYUUuKv2uKgF+uD9PMYL9WnHcK70vK0Vo625Wdt2byutCyb9HpaB2TyG06KCUKd1agRvElYC6NXbDaBr4MGFPTcxei5k5e283VNQI+V20QokNo3oB31v/ADMsXKyLISsnhoR6ch7XhSA2sGo6QqYPr6lwAkeOdxeU+P2ZwaauyTi6Qxff1/EBzbeV+NJmfp5bt5vfUb3rcxbSlU96/LxKpJpNw9g3HcXyQ3YPT09QIBZPPeMX4D0gXU0gEdohrQ0gt0QO/FFJi0lAXvQL+O9YOEmYjbz/pD0oajnv5tk6AznW+IadCSLui5GVtqCEIrt7BWzn0PqVcuCL3/iRFd6yMgMvV2IxGD0ziB4L0byehAbX39Y3Bj02aQ8/XoLU37/KsRW10H3FqlFplXfwiJzFY6RFq+JZeKTC6KTC4bm1xZZI7y3kc4/6yOYBAl30cFEsVgp0IokWIqTC/SFGRmMA8yE/TchPV5n5Vxsx/2T2r3J0Nqk9YQ0RNIwdsEKCiECp7swALt/q87kO15aWSKiPpRxfvWkMb994xDCB1q3iemVfnXjUThpZB85Mxfb0H001NBdkfle926zekhVrx4gQnQy7cg4VvL9O1N3+gfQ3Wh49liSWXqQ8JVIeNkvvRPofmi1ia1giW7g5fuTTPYpIfTjPqGfoOYsNo1qO7t/vsYw0LjS7ozxibV6Gb44o/xUq4By68YRWgHWZPy0sCebNUh1lSh+aRWqNuuaRsTNhm8NJze32nzQpu8lMqDmhbwddt1UDQo1F3S6FcQTZYQDDRcuINqhteWBmX7815sYlKq5w28MvBeMowoIHwGmLXPhOagFmTTJnWsJ/3W5zXP9KVlh0zGIMH8rk0//XObpsOmn/p5fsNXYp+7fJO/JpONyvOkv21aq+kcdPDyDGnEZUCGgoEtiClgA3npFC8dAVb7G3FQpUMggToQFd6LjMROiclAN5Dsbz+HBfzAMeAUcGzgMUJ9IBHowPEMiv1oMgkrV6GuuQKNOEreQfnexTqb+Rt9w7E4qmw6VKzfncMBCPp/dY5h8GxXlr2gLPsAK+s8F6HyrC0xgxqKW1WGYtI5qsJjzlGJrZIldm5IYl8bTSFZKK5z/d2Go7iKaVn5Def09dqBKKvTUFYzBe99Slk9fZ7JascAFC8xTXc1aUV5SsWvKj6jTR7cdeGRbNE/5RqIxQ4RW3hLHNEBXmrxv/wdk1xEAOaRiK/9OzRLIEc2yWSTHkAZvsxLOQasvOJzlGFS3MeDINtQONEh6fjmNi3IrAZluiDU+mMw7BpZ9NomhuX7sE3ycCjPSJWUjuKdTrKAG+S8KYj9gYsOEPQKbFN6B2U9ndiTSehAd/CTKFqwmzchN3cA1cOxvpGflO55kXWKcKecz9guUIUGGQSdVkj9CKNS6t8DqQ/YNK0g9QH0hij1J4nU136LvGpBqQ8CS44jXsssaexxxAgDWy4mgxzZpHO8dML/H4SHrjQL9glGXNRhXJDwLULzkLPZvFQOnB3RTgmWDgfOQXAX5k+7/9A3KFpaOt3aqhPMn+rra1KR+8PR5LZRk/uV0uTu9P8RKrU1N2L9F6LUz7ta/RJSX21oN0+h2pAKipAaRN01iEOxczpAAWqZRxM3lpmLQtLwIoljiRIxk9jjG6ov2m+U+hLC4dnIg9O3eT1UQQ8rFXTPWcpKHXZqK2ZIjWdUNY4ra/ye1Hg4Ted/7qzSoTD6omu08yylsJhVmUs1emPaapIypd6fqVBzvOM33U47Mpd48OHIYKBPY/M6ADxPqdg3fssUe1AqNdyWrih2On5l2TK+5KVP+OZLCsXmzdv1T/0ulUU4ujga8u49E1Lp9JBKLz9DVTqdqbTgiz8VUun3mUqnyypdQGy1hHLJlLptvDreDisvcVAGcJagxAKEzVAaBugH0NrF6Jelr23Scf+8CVRhvWguvBlUx0FH1zEqmQWLpaN3+VIUOsqbd/P66XtBR3n91L18wz5eeo76nT68b/IBoqvvnu6sq+UKXU1V6mr7GSpg5UxXoTNUXeecpuqaztSV91KDI/hGtJA+kL4H4oLqaD+P6m/q6c76dyDlKvr3ZXtIfw+1d67/l6vV/2M71V8SOoGz8cdNooKfzpS3NM0iDhXqgN2guCy9H6PW1TRa1Tf8GpV3k1J5Z7ZT1ZjWrtAmWtezUYAJUj6wlOrhqD4KPezXjq71uD+5Hd0wKf4rdXGLsvjxU7T4Z6eUGhgmTRwRLWT/2ylK3H+dov57NZvX5HsnCN7pOlvGaX19C7KtuUNL3MmT61MwdLgFo+pGELFNOqJpD6cV+L87ibi2bzaGdLbkNNPZ36WgM16T1sSCLvC36Ttg/oWqq2FRciNTYUL3OnlJkjdv1fs+7wuheRhtTxnttBQatkmf8c3H4/0vk8604PRkh1VHphts2kGRorpO600pyObr6gk5Ot43dgAvneWbL9zJDz5r88V/hNJZiyRVEd2GqCZkTSCzTMOFw0Hf9FS8xqmAzWf7CMRmehUCCkihPfz5Q5h7gRY14LWBeIanTrNez4Ws0LKDG+/YZmoy7WIxwcNor2Hqg7OEcoLqubR1ZHqclzbfBvNQNHRkPOqX91JO7Yn+IKdfI5NTuQuAVPDG7+SlJOrXW+J3Us6AOOJFzkYcxpy3yfVmnBrlbCKT+ZNW07636AjtbINWljKFihPqtlwCi2UArdcI5K8FYDvi+Emg2XrfO8hm73LKJG98M4KN4iKMdhqaliQTa8prmvXL/oAFJ0FO7/t1b5SsnkClrV0XKgmpFoyqflktKwnYKwj2ItKR3Rq6OqKXHGBJeC02L90Dl4HpvUP2BMyTzZevsQF3s2zm923Se7x+5imkItvm/ZlB8OVCmHUCZXodCfIv5NBFF2C7BYdWL2whBj8UmJn24SjwOHjnz9A4azKRrJ28r1DDmw8C/oMC8Mkm/czAZ5yg6BCN+ZINsNaSQb03zaJfQYyFtB/nvPOZaKWTqVF9WjakEEFtp7RsJGPl39TGpP8rA/oFCB83EiK5RwfYpA94sA7zee9zpCz00/+fJ9CYB8gMA8Rev+KoFpn3HGmEn/QcaUTf8CuOujEdjhqhwzd5p016P4zqHX8RQXU48ButUuTKGm3SUXAk+dLWR2/npTM28yEbjE22J0Oo+yGeRxQgzjUzTE3U4M/oiZL5ME6rgJ6AQ8t60YTzcG2o/N2mpsBmMk3R8HUX4vV1vYEK067AF+ipffHtOHjzwbcd5s17CDp9HWVX/Cc09oj385oO3tysr0PtBGz7egA283e8dFrQz9yO/TSSfqY0C+bzgnQ6Xz+zRchoIkNl0/NNQl3rRVMTlkNQuMONvHfEByBTW/zyxWn5ooNejNgC3YkXzE2eD3PONWv19c9wrOmz0PQBaM6mn3UZSIT2PlrP2vse8nty6o5rhebjWtM+uV2bdID3jgWkY0HXtoAj+8jTThk5HDkRXqWqa77ED95bxusrm8r0VU15vO+Bi8SunYiDisDEywNr7jKBA89L4wM3atggAPrAF8gG5Zzjkm3wId5XcFGQ9gjNftDrJhyDnvo6Wze0CYHz3bA24Mk3b7dJ26FPMDNdQ2wZWNNT+eYWm9QC0CCf0f42lXz+El93/CJf13KRb26P87k1Fv3ak3VfJ/HnP+I17aaTSnmCoK7+FG4MkAujfJElX1jkiwL5Yr58UUUv8k4tJd+N5HsV+V5NvpvI9x7y3Uq+T8M3xHN1241Anc7zxLktSeIDKPbUUqecIJ3cAd35DnJnlZ07Dx6e2En9zMuWpccHWpa2XLQ0tcdBiv07X3csiW8+lmAKquM/bHYiaXYiNGnkzZc9/+TNy6lGolKIE9G68TDWICcXBPMBIjUZH21ionIZtRwcV8pBZt/id8PwawTzB55vwAb4HzqOodc8Ax1hiAGyibuA2FKaZxCr5Cu2IgiCRmcb9cSg8WYwZm8T95EPllEAy5hvCBkZopzYPK9f0UwCmR9AN5Ew0y5cwAP/FEiJU9uHfPDPGGdBONRj6SM6zpPgP3yMLm6ZjlFK86UfqE2QSWtAa46GJaLiKlax42u0RUejEb8yN8hmMIRO3lcEkVz6aDQz22xe6hrJ7cDkRCLOkiZSkWyDD/O+n0TKf40epxwgq/r2XYHVKpXmtc8RL8/sPL+Hr/sCpH3LRVQ/3y+YtGv58/t4zYkwFiQbXXmkfLiL/I1l+g9BTN15/lVw1QxXNj+IsPteP4iwu9S/B6Cfw98XpHQrXO0P1TgNV9vgqqcfLkA0tqPpiPe8mnOuSSvOI4MEwuMHoEFhELUsUGloepvK9Pa0nvEXm/xx8Rr92qa6Vi3f3JoAdDdii8OwjS1wlTKMtQFy7Pd8hbSC+dk5Ey52gjF69D3B/A5pURwCbYE8n7JpXycNbWDSfILXjthJ5fc9zzfUKUuCIb9hl837OhlVff1+tsi74hIbbDroOtSTcv78EXS8zR0QwO3hNTv53wjnL5E1GnopSAeF5st35g8+JWgO4prQ3IgVFogx62d0IwsrQEdQX59JNhk+sOn/eimHTKSEjMP5DcFamDscFaSd4CmalbGAcP40TidXXGCLqSuzupFwE9i6KxTKLuV/w5//Hsv59kG5QM9udG6RzWYKPZY+RCR805c0JO/3pUqKofMrtbimt1lu1zb84bTyfHO7fvkiHfqJ4/4/kipFaRZwx/oVeOgIGwAEPXDDo+6CBm1BLbMy5fqGm+PY0nkfdMLnj4aVAMLgDCL2LS2YF1q2YYQKwaDpqKxCbRNkmbVp9sG0Ur9chw1Ku20Z+wTzhza97QubN+UQToAF8ye0xfp12KL5s0cmC+bP9E9sSoKc5hO+pRmxkxXPz/SDgLqxe3jz+7w+/wL8vU+8l/nEw/626jJi70jdJ5Kwz1t4zRF9/cok4niG23w9hwswgDZpN99w7rGeNsAI95ctw/uTgC963yPksueex4bapF2s0GFec1i/rCSJxpdQaC5eQiSK8dQGmSX5wNNlvdG0AD22bqTLK3phoGmA4jBV5n0QXUL//RtHElsTlhBbRmt+w1e1KTZzR3hEHxkY2JSIZrlJo4LrV+JzPvmaizCZftSFy8wkuqnvgcGm9CnI5HdwB0QR6D5/mNfb3lGKIg/hKIpiK9mPOqdf+adEKtdy0c7S+AZOWR9NlAMCNrwBfLpnA04F2kyR8/O6FhiQ8/qV+IARrznDSz3B3m3B+P8yzLJxb8sr7u/gQ5JKPOW52ht58wePDArsTFAbPIbvA/3K/yH43oepzx5gSM/9Sgwf8A27ahug2Ud8gScTkOHniGVHrs/1CyNUJjwDJw/I7zMqfuMDEmhoVHD9ygkJKMOnBfM2ENrWkHwPZVIf8hlSi39wK1NKFsGKGAMdy9fbvsWpdjlTLSMPkw3efFhf3xQnL/h68/w6OrvD2ULD3LPBYNt+sIiCdDYfHQg4sgISv6bstTFnIkeGewVwJjDhuiiAM8kJexPh/D5BcwK9Lp0QhlhqyAs06g22wCp977wTjfrethOrELYaYU0IW42wJoTtQVgrwvYgrBX9R+A0+o4AhiknMEzpeQJdiIAu5GXiQh7BFll4FCB9wOB5O9C+hYTlvK9nALdZbcyl5DOXkgeFcpa29sxZ2nQxBxwLpBor+JYccC4CcS50Px1oyCA0ZCANwwgNw9DFCOBiPhfMW+lUpj6DbKU0Cef35GsO5ZzbqhWtxJ+dAcP7HkxgPuC1y8OuBtzy7rrPtagJYCPnK/aLvBCwSyNaiC8INnvaBZiI1HSn85PtuAsCXcTwz0vHhdecXc8Q7g1PI8aeIRUIA9T+nPdOboY5/Q6YLzzcrMOr03hlwCtU/OZUXpq8A6cMvHmLZ29g9jnlklgZWc/SfdJ5PeuM5irrWfs/Dq2H7fy4c/2tV6v/S1KfdqvOagh6RrNwzNOvbZC8m8tWL5RB2g8f0yCtEFMvW9qpswCC29iiat+ltVCyl3+vsgTqF+Q347lQm3TOn0ZuJrxXZAQyLcC9F/Y8O5+u154CvVr6UDYnJjydm9vWD/3lHFIaJpCfbcId9GBBln7TaYLL/84RsjDkLzmKRdjO1HC+LhcoSotwv3d+TN3vr4+q1tpDu+FiD1JPX/9rjm6YBvUNm8g89U663nffUbolNgfSwMt0o40sDa76CgB/hC8Z8BYCNn1Fl0nBGKUS6DQ/QAV/BHQBQh1+rEyOVOgbDrUB5GibAvIdQjpweUDdJddR2qVtR9SbdJT6+qno03wb6RL90gHQy8e34SmLn+fcmzMv574c+7ytm+dVW7hNj8HX+pYaC7fhMi5EfHcYxuqni+HGV/C1flot3MAzVf6P8caFSrjxpBtu+OFrAx6u8m/FG2FUgWoZ1Z/xRlsV3NjwANwYiDfwOJX/Gbwx2AM30uFr/dPwtWEX1qjFG1uccGMH7ub/rAJu4Gk7v1194yGXfGMa3ngKiNz0B/har1kCNy4iqpHqGhlVco0U9Y39v4AbP8MbPxyCGyj8/r8dYrv9L5LVUFyvI3LSQtcJ2XGURhJCktMVnskKjHf+Qm7qvxDjIOiE3x26coSufg5X/rWHcWCrII7bkRI6tmHCIQ0Hs8PZ8mRdR5/F3Tc/dj/UHXSIji4W3zQcG8Rzcf6dH6HgEIr6Kyh67n65jzdiPW8W7y3QhVr7JVRSHJGoP0JWojw38uwgAUR2oADzoCaEQ23lgoQm1SDgquNyVuCwpzsYdi3u27TpBUlPlJ9ENtMN8uoqXOuuyMmW6UaWplMLlKh7yBI64LCJjMybQCs52LD8sqxxHrJ+S7CiOfFNjucfb8Gsd038Kkjq3tf4C4DLbQNQW3YcDDOOlz7lpS3+Lz9C0OtsPdgFdgQMRC0jbSnHllxXk1lAkycFd7n2aNhZDP8rgK9tMtkF0dBZ92vYV3PTor5Cxk5SxnTOtM8/BdjXlsIrQODi/OmHVKzvdpiyvi8GI1W8uR34/jU0YDraNk9xYAV8EdwMeHoAz60cZTov9Qivaeca2GJ3ri56hyLPuYA9HnKXkaxSUkb2yryLmWdpebxyxGp9YKtBMCgH6tNayfjjpsPkg9QOYam50BvkchPKl/YjyvLTmBl/AHqs2P87RHscbzrZls9L2yN3/zbjCra/N6KWmukJJdyGA1cm9UeznYDbHxoA6HA/gO0L0OMqUqUOSxjpBkl/1QZJ4wFqO5cdwFlQYuuDoCnr4GuD0W4hp9VGoSJJ20xHA20cDfvZikWCvwjqEOLRF775IdIfo5VhrJVbD6DvOO/vDkj/oQn8RsbIxri7XwMF2rQElvA7XjUOr/DXOg5rPowxDg8dUIzD/+xnTSJhDxxEwkCvxJ+A9zAGxX71Rz3T0D3qqHv0PBx4g3pDATc8SDu2D6lHzIO0/qi4t+0G0gGlzcj4kHb88/1odcLYMtt+ETgCvijwj3j4ciUSfoR4WqIuLU6hvJ2g4u37+ylvd+ynvdUxa9JmUKJKZag4zRV2y+oYqocYKi502uVFdsQsRsW7WMWprGIHF64oH3RLpwfdBoc2DsexSr1YJb+i0qErtfbxPlrxw3204iF5Uw+n+hsT2TEyfcPf8FJ1lOwP++hRst/uU+xV4srCz2B8Aj/RMHFU7He+ioPzPlku2RbYgZluWlZKPs9wLw7d0nhapDY+dLeK3D0Hk6/ATXRgA30gbUtt66cq8QrORu+PY/XyMBaFUFK8RRVZitbQ8aYlgSls1pXNok1i5LJJyAnx2T46hcv2r9kbGZ6+FcqyMFXOs7q3krobCcjv2RuOJvX1u4nfxciwYbMmtP0rh2CBvXRIcvYqosrA85pQp2D0LalBcTReW+j1T8PXMJFU7+bqGzJxDenu0OED+axC6x7au3T/wT2q0xsyKs9/0Wtvqg2CCZv5GzGHzQHS6RxgsPoY4so9NJZ/ak/kBMLTImMKbUIvYK1b/HP30ACW0d9gCcr5rjbcjzWc3JWGAx/IDX/2wTXtf3/A9r8/UO9/q46/bgsP7frOQ0voAxRlH6ij64AvPLqpdERH0ZCeXBeFr/X1bysO2Ogb8PdlArNCR8XkoU1gfUz1//C+am4i4/G8Lk8ZusbhNe9TDr/+fnQO65Qcfup9+VjQI+/LcxM6tLnB8Fylaw1PYg2P6UrDyaGG49/v8nmkw+/RQdn7nkoa8DAnJfo1jZyX2fvKe7Qdg/9FuAo8FR49g2L0jPR6RvhaX79GceBR3zAER0/ohH56CP0d71F+0er0jKmxy7wLvkt5d/7d6LwzKnm3713aqNG/811lo/oGW1DOd7XhJ1nDj3al4Z+FGp717rWcDB38Lh23/u+qToayyemXPak3euc95QJJY/jxgLp/glM/L0iXFaHyp+/Rg9z3QVwsSNuFuu0Gm5ROpgZe4t2C/qO7SQyHRzxAqDv0i27B4z/YEYjHK9/Dm9tJOI33yXnkr8TBQt1FjadXztNJOcusXFsfiLwzwXXapMs26Qt/xjuyTmBk7e2xI17TKZQWpFv4um2G0DR76+aXYM7sf58Qs4NFJp/5H91NQ6ODwBK6/n23ssPlvPSNIF3kpeObfoPV22G6Y/MOJ74+j/j6R3Scvv4tus6VRpb7rbgm7PXAX74OaIZOCu/Kx+D/FDq7pK+/mbjlHTbvnXJpvmULzjT9AeyftFXB5sXvsmMJz5Kubc/XXLZpfqDzPytny/hGPt4KHP7BUD2QcJg23vNd7LGVnFPRCbjbCOJRjufgPEU5Tycv07X9nDxVwej3jA88qz6r/8M7dIhvEujjFIhMaLGSw/o5O6wGrm241XSSSvU9beN5qYUcXjvif2IXGyaooRO8+RyOk8AeuxDkxy5IvVvV2lC7i2pD1a7wwyuK2YrzHcaN10m806L/aZO+d8yTijapNM2SL01OI6O2Aqrk+xbrSAANIpltNX1lw9O7eIK+APev+LZM9frgPHKe0CadRu3KwsOE0sd83cNp82EQL4CqbnoRRGN9PGmqHeVzPSF/O4HjPFPnf/MijWZ0xOXdFo9SMIb3zsAxwnN+t+8OklPFWdHU9hc7qdou2EnVlnBeQHmRdtoyWvVPnNPSGfN8W8bXuGKfikvhOnxWhTf7ef00P9qdbqTpZlIURtpH/OYlQ/XNhEJeOgay0rqLkgFK1TMNkaRizeE2zZdQVONJeboHiMvAiPVXPBP2KXbi2RbsZHwaYjAQccMBV0jS33ZRSRqhnkTrcKshlTfvFceQ6TM5MZ5raBtO90PIXgIhl3Dj3hYyEZ8YXo+Pw8En7oBMtIugOHCJyMIOqNbJNBDrdBBDXm8mDWQnpesbUkC180EXJb8towP0UsBnxRqaYNiVhz2zohz2PB067FmUNldcHDrp+cUOYvhmSAO/5aWALeN78Rd8XXOHtLPZryWb3q1JYpVpn+mcar9G8E7+SJAmfyi0xH9EFWRHB92k2+P5EqSLzzhr81V32KQOPuM0X/d9ds3kABYEOQ635Hk+n9hYFFjsbkN/9JsDyVGjL7Aq1NM/Qc6P1W2B3h5UrteDvs4EFrIcj1mD/EAX5MEAzEwNKZuXT4W8MXS20MsbIZ8eOibs5UFdZmbJD39BPgvy2ZBngQafDXkL5LPpqukOCGqbLCC4+oYHgM350qW2IWp9/Mw/dzuuF1jZOivopvmkeDuRd7Btp6gOHVfo0Dv+oVCjbRvKK7RgsJEj/Yw5eKA26E/YHiTnxwvypdvzpcXksP9cwTeCTopsZJdYqfkNiRfx5Ch5tEg9zXtrG53m/WMbWv1t5YqVXqspqLJGDdU/qBZBw0uW57aqboRXDj/BG8SVaQH/5ttdUOSdSlwt+cLU5B+1PcbC7StQre0B2fMhefVbyXF1nKquJAOhNMDnt1ID3L5V/fTgX7fTFVlg8+2UzUaVqdq8lZqqN7G5hDZ6shonDomJ8lyqzkJrsXkVmgFSldBD5lYPbqU+eSo0Vtaoej4xFSzn0kfTweWOIxPh87z0A+99NIs4VJwbqx4/M22T/e5tWpVLS99ODdGwWC4t0kvhae2TxL/apOGCd7qRuB/8qVObrzTNoJJPL0RAxzfhb2L4uW3MUR1Vu9TXZPgd5GT8djQ3KJZSFgZgf24m7p+X4tPQ6aBD70+eR0ITfcc29oggsdDUmw8j3ryffq0tzQAGeoB6/xf98TH0x2ebZftsBfGm7jjyKUjiI1/VyBHM3eig/N83MVHx9EMxsZnPw3h92ExF5N1mXAFmHJlKamb7j0MgA/mGGfLDk/icjOC1Mre1m54H3s1rduvX3mtQrr36ttKhyVY8vKnftF9+ftP/SXPnRzfbeiniVdPJTb9FvwuMzMEnXbD1g2TxeGwaeb5pF5H2u3XCpDk6CMMb9omjBe948nhhQTMh+7mtQt006G2vtlvLGk1HSUa8kXBAzK4/Ks5uW/QPDS1yolHwThF802T5b6Ki+2ZTWG8o53aqFez5Jsq9FU24aucZKnOw4e1LMbZFvtoMNR7fhhqg3DuKZiPWb45hVVZtlrdW5mxmMtbi74FqU/CQhWu7id6bGL5nB5UIr8iS59eARajXLZhp3EzXHl9oJs80hNb70jfj9sBJT1HbY0pwbwC3WcjGBbJkfFiYntpM2fEYlrgFS0Dc0Y8W0ys45znQdoga3aFqozttMzW6UzbLUwPqv5C6C03KCQ0+jw1zGN5rt6DuJBEzJo4RvPdlY76ImrV8lVnzb6JmrXUT+p1pxFO1DVMV2c6KvE2LWGiMRnB6XoeLLEVjoyBvxHwBXZUUQquS/8mwLKZYjFEaupcVKaJFslhDiM+zGi4MioZ08tPiKgw3MQx9KAbqx1nBssZCNKktSWTPp65F57dx9OGdD8kQffbzwNG3VfPDyPIDWfmX5fJ/eTv6fBImPuh9H6JPQYowJuRBSDd48zbP4Lbp7Dw8WsTytyNmxZ+IQ2ze23Cm2I5Pb6C7h7gpTfBhFAid3O0fB1XattKtKTprvu1tKqwD3iabDYgsPDtUyAfSR5zNC2SR4rLcOQiTjXT3a/3GYJBm78MNUOyxfwiS6LsXg9CBaaEofQfGoXiYtyAfbJqRrazZ8PRp0yIj7kxJx8m+1CtI7mDyUBtaro/egmwfPnQfN6nq3lZtUpVuooYyDefWxIeBZUenYD4s3iZIcIEhsYCxeFt/HphD9wJu3oj7h1+1jdUbtCxu1gkk5O9EtwA55gXBWbP9qYZRRo4+f+Xt9cwoeVPEFm/Euul0O4Q84cM2wYjEvfYWnbmk040QCKD8no10F4Qs9r62QbUbJb1NuzYHrJB6bkf3oaS32D6Ulm5D5YLnHIzCkEiEQUPmAS25bBaYy/ah7tNBEbDpmWDRaQb4RIVngEp4EvwdG+jjPqc3EFGpxeF/fBvKA0oMyguaKFlpd28I7UR95h+5AU3fV/SJd4pe3/Ac0VFVE79iTfggbVtM0NEh6u5/cAPdEwJQQr/MMLtvzewiu80bOrE78S0Fu83rWQPoqi6+RdXiw7fwGU8L10n/LzI93k8KdLo/gv3QxJq3WLm31qv0ncRvqE50URA3xcWfEQOciuKeDnXojzIUItXme9PSxWRg9muE2cTHoVpl4ckTonyTAf2mURjYZjBL8+f1GIEkRu62K/b/16FTwPUzzyAU+KzQDnVdS5ZXjC/Avek1yPVUxDdsHVXvLLYxfRfgB4XQ3R56ZFq3QUOer1wvu9OkdcRl2qBAqo08YKSagaIFmB/atV7KnsfW+U+/CW2Op88cglWYq9yv1hG7sGK9Yr9aJ5uCWoBa3tDI62j+1yAPcQ/+RNwG/H1ihH27nj1siefpzEHxFv+tQGTbjUpYgj8ZYJb6k2IvrNL8JpWLHbj/OZwKHvCq138NDwteFvYsW972pF1huzpE9t5+k8petix7Vf6n11HZQ43wv72WRkiO9ShNeV2yt8Kbsr1thchuA/40kP+NN/9X9nb8OpW9Xbi2s73tu05lb79dd1329r/X/u/s7Q3DwgZg8LAuGoDstZ0MQMKbCgOQ/YbK3vZfd2V723/t/7G9XfYGNYZL3widA7iCvb3nDYW9fXtN1+ztENbEzW90srfd3wjb21fSw+z+e3oX2b1rTSd2P/+Ggt27/qGwt8vXUntbupba2/D0lpgwff3zhHvnBClo86bbvPN1iocz3WvZxPFpYvu25mf8Ezulw9Yk7Y5cfC4zlz2XmZtKx2EQnvgRWqbT84TeZL5hlziO95p47090fMZZXtrLN38P1M0y4FyoN4T9obAo4AbEiiX0aCe/bP/AMSO/3Bj1nNeIf6jPW4bn8wXgSYTNoSPT3j427+B86Wvh/AFe+g6PdCfP8MWP4s17HkkJkCcupQ5bRivk9St/Q7qfkpbvG5tyl2/yd2S9LW4Nne6tyNLS49krbidP4+H5fETXO19zCVe5BfNJQTr5SO+2OTbpgi3jCxvAbOYTj00X6i7HPXwPse1tt4XO30vkWSTzB4/dHj6NrRHMB0UwjWP349Hrj3npPH/+I5smiGewD0c9tjfk72RKpF8xhTx73pFPTq3rl+GxZAEfz6PPAvAt29mzAFbT0bbR4G9n+FJg6rklSB4CoOsF+BAAbz7A620nZnpTYEK0VZNvbtPXn0ByzZ89Yss3H9Iv9wSpZqzAU+kzfAMHsicBbNIRm/RZWXi9L8rzAEce9rctpPshBFcG4EIUNvMP+vp15HncGfRBgKN4xn+3TXNWvwzXSW3ms3rfag17DCCNPAZAiuyyac7olz1PipzR+3ya0EMA5Oh/P/JA0j5btwvk5H8qnvwnj/nKNH8GxZZ8Ejh1OcQjnJ+2/438PgudvYQmxVCJPlexhfLyqCkI9jc0nkdIK0f0K9uJFH1iy/hEMJ8Q9PknbN6BHXheXpBO2Mzt4u948/ePzBLMHfqV6ZcZM1+hD9lP5lu2UiIu8NL36vUf5OenwMvd8Pdp+PmKQvn5CkB3GGb5iMVmviS6bL58ysuTj+koL2sfAD4+4uInDdzz2EDCQ3ILeVg7B/j3yE9470Dg3a78hqN6aRgZnJRBVEqO6H3pAGi7IUTh96RUPAIPRT05Kv01xsnRKriB6ipIH6HG2nxDjt1q5O7mfSNPQVqYI10CQ4WbDvibi82XtP7H/oeooGg0HQ3z+4JNOpcntecEUz4m21TmTzwnyIjNC1mWxjAHv9nKfsOR/Woj/p7vqFLHolE1Yqmzkqsejj/FzI0qd1c4RlU6f+EcVeGsdJa4K0uLx4xyVC6qGVUslrhLHdX4vp5RVUvEcnflmMzsUTVO0TGyqrjk/uKFjhoCry6uZPedJaM8otNVM6qmvLjaUWqvdpRllldVcbluj6u08nbRiL8rbSxzuhxGrsg4LL240l25pMLtqTFWFlc4agCrI2PiRBnXxIkE2cSJYWyTgfaJE9lPZk+cqPzJ7Mn4a9lTjFMmToRGqotFd/XIKekZRvJr+cafFxnvMF6t7jygaeh10HTVKvhOBqhix44r6BumJu+a0MzjlPRPnEh/6P06O3AtTB12rTwdUjPRaLdXuWuM6YvLnSXlRmeNcciDngzjFKNY7qwZOaXG+aADkKrvcsKoWUbaptNdaYT/5EfES4nw/G9kZ5GjBHox2eWuXDiCUs9eTMGA0NmrylAXcMzjaKGJE9lLEjhn5aJil7PU6AL9qS52Gcvc1UYsDPgXO8VyI74MwWjKmnj7v6B3XRUlGKlOHbiGutfAq38fRfM4Y3f436tbhIYo35xhrPS4XMZKt2gkYxJRssazAC65aWimsAw1WjBc1Y5isJwLuXT4LDBONmZlGO8EtTVOZn2t9FQ4qgGRy1nhFGsmlzpKXEha+oIM4FJFcS2wZ7hxQYZxojG9C+WdlbQ8oi/OgI9x6FDjre5Fjuoyl3uxsaTcUXL/rf9y+y0Ppn0UsIEYbxTSqxunUD3Cv3SqG/idcZ3y3NVRry5ebC+uri5eIqtebIG8TpTzOBzuO+4wZhkffhjHexgMyhTMwoBQWV1Qk16ccS1yMCpccQGMbBjv5Ch4p3QJL5EXNd5/u8xUeFzXJzNQUSUzWcgIJ1LvBEUjfVroECdnTUm3g4xUOTL+5Z1wVpa4PKWOUUQGRgEyFADSGWA0OldHpWjEm1O6LEcMCXMUXa1VRTrYWZp/Po9wSJbooVSmKe6qwmsQb2UD8/7dvSN1yJt/WEVT1+uKniqXww7CXAMxwf8Nb/515EGE5ikrc1T/ywW1s4AuckNc8e8VSnypmBN854MOe1m1u8LuqK2qTqfMtxqHZvxLZHMEoOp6TTCOVUvsC5GQyZSQfydHjEO7XhOoE50LPVDOXumuriBcLLXXuJwlDuJr0Nuge7n26GLkNUYXI//fRRfFpaXX5ymgYmdPUYnUV4KnKC0Wi+Upxf+R5rmcNSIhHbNIrhEhk4umYKwPCu+oLHF0WRZIVSJDUYxZSInmkfcmmkbbp9tmTc2x2e0z7aZsGdc4gmqCMMuKb7yyXqWcaby1cpGz2l1ZARa/azXGFIrFqCOlXSputsqvy7o64qlgZxXF2XtL2Pt8bnvQonqPjwz/fgmFz2X3ZfhuBq+KgL/A4Msi4FUMvupB9Xsf17E8HtQg6c9ZGvF+yLkR5Qoiyl2l81lzil0eB2Opki7jQ2p6Q+8xeUjdnsWubk8zQDtpI3v3TNWLwSDuIjT9ZzC4MY7jTkOKz1cZVwWD8QBvhfRbfDj9pWAwTQs82BsM1kLauC8YbILUeCQYTIkHPJ8Gg/iDSo2fBYMi4oMUH249DenrCG8NBvGNHY1fBoN+yK+GNB7wtkKKZ4q5Y8HgP8kbPYJBI9IBaRWkq04Gg1kJHGc4Be2ylxvJ797RPDib09QaNAN6JukaNUkGA3t/jQH6IL9HJXpZ+n4gLJsCZeV3L6Wx91EV/EcwWIBHH5IN05JT79L3WKxbyt1506RhY9LI62iy2LtO0z8JBm/BpeupyYac5NScZGOddkVc3Em8NExN1gHAIV/jzgC+/joF+ETeRQPgujh7so690wdX29Oj3MODL9vwfVJw73mOtjU1OXVqsnFqcnpOclZd4vIEX/wK7cq4uPrkdAJOJUV07F1BQN+qz4PBm0N4fxpqEw+nvvx55zbx/An+wtYhGJOvrtymV92mNTkrRw2B4hyPMopPbh4PBldraVshfFOxSnZOsqUuaXmiL2FF/Ertk3Ha/DiEZU1VIMtBZBYczw8B10WQ28GMbqQ69A73BwtsZKSTtPj6Vq083iPY+H71u2Dwl/j+LOPjlohxm6UYN64A36OOf78PBm+AAY/PgvKd6Z6evDpRRXjZ4OiEr06k72HHcTa+HwzixkF8yhOWSN7mASPC7P1bFH5aCG34e5s7Ac+KJMAz4olotOUlr9KoaMtNjE4bPr+NOPMgjT8YDE4DPYwvfyJ6f/foVDjjtNFx7gFBQmuDO4rGj4PBi/gGudeU/YWOTU9u0tYlLCd91RrikAHKnqJ9wfeofYzjB3ZkAOLYqaSL4NgDOCg1lQoMlAot0jAQ6vX8nNFw+tppwHHjgSfl/mDQwfRhZRwUWqG1Jht98dD55Ql8ctaTiXxydl1SfrKlmjAlYuiIzWlEG+gP2xzyfqSgpicaqhTdT7mBi0n+Uw13DHp9TNPnUAF3NK6Xr4Bbk9jnWCG3I7HPnkLuSJJuWQF3WLfk+3u5fd2eA2THevTZWch19ND/vZB7rpeuroDbkvyk5q2fcTv1xwHRX3v3+e9Cbl3fG/5UyL3Xt8/yQu54iu7yLK7jhoc/uZv7tt8PUKY9Vf9UIXc5dW1fjlszImVZEffquF6nC7kXsvWnCrn2O+87C3UtvwUjfNzaHZo/Y+0Ozfxg7Q54GqYlwN1npz20bxb3Kt+nfhbXxt/6zEyuSeAv5XN/snX/Sz63Mr/PS/ncS/nf9qF9TinU79NwC8pAkDXd4WqfJpXAx3HbgZrtGv3HvUDVz0Hndsfr30vmziTo30nmlibuAsguXcJLydwfe91ypBfX3Os9jczHiU/G9XotiftlnAuycbq9SVxdvGFzEvf3+F7fJHGb438PdT9J1P0qifs6ETj+faLul0nc40nbNaz+gFR9IIG7PWVZAlc56rt47nfa7q/Ec69qD8TR+4PRKBR5NX/Tcp9pJnDc83FTQaqOxg1u1HIX4/4zRMcV8fz4+fHz4+fHz4+fHz8/fn78/Phh71MdyNZH2DpF1kDLj0z5/9FHEyPdnajOfxiRP8Py8juhW2+k4y6/C/plJ83L7zhOZ+tf8juM5Xc9y+86zmb35TUB+V3W310Ousk6XxzFJ78ru1VH8/I7sjvYffmd1v9kL8mW32Utv4P5hoj+h97Vzd6nLMf6rfHqtSj5nduhdzz3tajghj4WFd2nWdotov3LQdqfgt4WNu+geZmO0yz/ruH/rR752bps5KdfKqVrKEvHs3QaS+ewtIyli1j6JEufZ+krLF3L0h0sPcjSYyw9x9LE/jTtx9KhLB3P0mksncPSMpYuYumTLH2epa+wdC1Ld7D0IEuPsfQcSxNvYu2zdChLx7N0GkvnsLSMpYtY+iRLn2fpKyxdy9IdLD3I0mMsPcfSRGZf+7F0KEvHs3TagOjyMj03d6Ix/e4FnkrRY8zOHJuZNdLkITnTo6bszKyxGRTKlbiKKxca2f6m0ZSVCf9GjlUVzRxtvKLMaME6ZMdZosDjuKKocC0nRoXHh/RdDU8I6bkanhiyB2p4UlQ90oKWyvqnhncL6bEa3j2k72p4j5DdU8PBKqZGg/cK+Uk1PDlkL9VwPbc6KtzANT4UDd6bK3g4GrwPh0unneF9Q3ZZDU8J2WM1/AbOEhXeL6q90IK19K+MBk8N2Vs1vD+37plo8Ju41qjwAZ1gf8A1Wu5MMLqf68yHvgyeFQEfwuC4dKn8ZDP46Qj4DAZPiYDPY/AREXA3g5dHwB9n8Nci4L8kviksP4MZ/DUGN95L4ReZAzvO4PI+0hDZD2kYnp+r4TYGl/efbmbwpQyelU/hJxj8LwzO3UPht7DA4ACDNxar6THEMfwR7d7B4I2lFP4Vg7/O4EtZ+ecVDlsD8nD22fmqeGSYlpV30PKrmUN9i8ENN1P4DVkU3j+e0TOTwlcwR/46g6++m9lVFgcICRRexfgzgPXruQRKz5kIev5I4PrQvp7s//czuLy/KMPxlx8QviwCbmbwVRFwN4Ovi4D/B4NXRcB3Mbi8/ziCwb9ncHk/dhSDj0iicHnfVYbbGVzedx3N4L9icHnfNZ3Bmxlc3tcdxuDtDF7+kLr8IB2Fdzyohs9m8D0R8Ed10fVd0tHxaoqwt14GPx0B/z2DR85f1ujo+J6OGN+tBN7ZTp5geOZH4DlHyne2t7Hov6Eblu/NDYxit6OVv60bjaoj/cJ4gqezfb6zG7V+kfQXMHgknSUET2e7vaQbWqvOn+Ux4H/qhlT253ZG2PPXAd5b4V9kPu+IgWecnuOMUfzFgO7Ry0/qjvjD/pSpNXdXjPL3ETjoOxvHX8p8iFF+WQz4P2LAu8HEpHdcf64pgv5+PaKXz+6BNv8Gjmf8Wcrg1THK+2LAX4oB3xgDfiwGfGJfhHeOW5Ig9OkTB/aT6Zc8nxrUMzqe0THgv4wB/+8Y8OYYcLOejuNSRo98xiAQo/ylGHBDLwqf3z9Cv3pFL8/3ouO1Uz73weCvGrB857jxhV5UHiL14uUY+DXJMfgZAy7FgL8YA/4/MeD7k1GPwvGYgSnqiWTaXz/r71x53PXR8YzRUzsQqb8ziH24iet4Vg23xMBTFANerad4Ivn5aIzyf4sB72WIwecYcG8M+O8MVA6zmL44ZHmOUf5SDLihd3R4ZQz4ezHgXzD46pvUcqjtE718SQz46zHg22LAP44Bz+pL+bPKqbYblr7RyxfHgC/tS+VQPlcmrzP9vm9YB1X2hOGJPP+1j+EpYHjkOOo7Bi/3qe1wTkp0ehYwuCVy3gcTc7uDnI6zi8ULXI6sThBTZ8jozqAxnUCdC3UuM7YTxMyFzrPVeBbYBXtpZklVFWe/p+sn3XJHC3fljDbbS6xWa17V7BlF9muqnpdlXXT1CupjhddVZ3QX6oypEaE/1oIZJVctOhafWusSUvkYJ2XU+GthlFy1Sx2ewA49C66ZhSa7KSt87l1w2SpMVgIdozrRDpRYgazZeGssnlsVXFbrIqt11pVpI0/2mLLCT/YIheJ4+lSYMLMwyx5mprWwWCgcZ8ceX5lV2Qs8TpforKwZO9Nd6bBiyRkmk93ODuzaS6E5t2uRw17irnaUuIDkLvNirH08Pdgt3OXCDltnuwpzgCSkdCyWForsRVn2IpPdajJVO2o8LlAOAFtnFebaZxXmwZ/V3pmgsRXF+HyJcHWJsqrb6tTKBIb9KpxBVBPKPJXI5nE1VS6nCK3fFcFv5HRRiaumOnp9K61YU4VFAFBqnVDmrl5cXF2KhJVVkZGqmlWY3TWSiBLINGXjs3QuZyUOz12zw3SRQlcijBYIVb8qceauESfTNdZZKdqJyESyykXlvFC0ZdvtTjc+AAHZIuFajvl2oXzkmeiuVIk4n92FKlEOgV+9VviI+dXLmtVdKLxGLhVeO5cKr51LhdfFpcJr4FLhNXFpzjVyac61c2lOV4kvqRZrRE9ZWWYJV+qodiwEe++otosVoBxgc2s4u73UbV/oci8odtlLQXFq7MWeWq7EXQEeQ3SUZk4wmydEL2QvA92hz1fagbHVS7iy6uIKh73UU1GxBKoocnbUMlVRu33a7Jx8q906M88O6mifPvNuu5VnQD5vNmfP+9nMnHwhF+6pKpeqATVicbUYimdmTZtWaAXDnjPVBta7THS4XBbLdJswNdc+OnN05jg0IYXuMVUe0VrCbsydax+TOZazO/CJE2IXJlS6wdq7F0cUgJriBPaEvGm08kljoaRQNJnwMXm7WF0MhlYoQRcILt9sz7fTJ/oxvKhQYcwcbaJIs53uGuKx0VtGNCrMspNfebB7ahylHDTnclSqe4QOiUOyiu3sSWsHC/ZAVCwWwJQzVbCbMseQvo3OsttJ5+yAaKFYbneglABt/6rO1tQ4F1ZaZ88AB9y5t/bSGre9HLTX5YAmSl0Fi6CgaGb8touRRBTNgbbGhVp3FFcs8JRFI8AaURPpcFSL9rJiZ4QAlBAmRRGKcWUuT015pwEAnpnMIZ65FwIlMVhGhqCs2hGT/aUuiJrYCIHYioCqyunAH+8oqVoSpsgUyX4zZYCb8p/yIfYo5JqscGuMXQChmgWSV+EudUQZCSIvoqPWKUbyAoelszS4cXTBvwJXMVycXeguihhgM1dGftohEl/l4ooowmUaU+2pFJ1gIAg780yRnF9QUlEViaqo6Pr5Yo3ChKL8XNkA4TiPtxNkgEbuaTRRm43Eh5vGRkkoaS0cby+YUTjG7orkC8YtheK4EhIKllhhcPLti52ljkpiyCI6nmkyXZ/6gT9Q/DKCtaKkU4fL8AcQ1DxFeY3kMuUElfgFxaX2kuIaMYpajC1xe6Jo7ExTFiG8eIFzkQnNTY0TXA3oIwl8ocdlbqtKLyqiaaQdrTEz7tAh0R3FjovjUZlgPtZJduz2BdAecw1o9cbK/QGS7e4yO8TyCx32sgoR1PjBCD5lsfG6Zv6PAX9YCk6xugbbIAb/ahZ/rAACkNuZ/usa/ywY/2pHlau4xGGtqIjqb8oc7rJITrucC0rsJTUeO4uEr6PpCey3UaxRWlzoEGuijF2E/gMPZs+4jpat0Rh8PYM3ngweyKloB3cUe/zAWle4F0XqjH1hba29CqbX7spimGktsS/KinC910XUBIVEXZEqwlJmD0G2otqtcSUuR3E1OofRxDnAHzghRzQvxsIfZQfurlyMtMyGOWwF1snNhfJZ1x8olIDhFB3W2dE6ExZJjDBZ5xzKNZ1IokkFou92jIc6+Q1BiSCy8sIKdyWrbGcjFS48dnF5sdhZPxFjhAhHMYUK1oxTsiZGFBNbpMGHXjlS6mRUOhtFLrNmSYVYvABSMKgkLZevYLLsqK7iMgG/IxPGfKRYvJDlFlZ6MnFyXTrSWcqRXHlxTTmXWbqkEvDRVKymd9gCkypjh3sQ9hRjQXZV5RKxSbA2mRCBwDcZ5sxqNwnBMx3lbOpQXlodzgHSkhLVMibFQecBFId8jXiwKUBJCCyucJZAfbdIvmj7tC3wE1wmTHZwZvivOk83gO1pyuva8jmpbAYYGONcZmh/l501lOvL56mKGMDYaY9Y/TFF1JfPXYkMkHaV+vg83blg0C3Xl89nvcAA9zJ4QsT5Tfkzk53FjIs4r9nBAH5WMZH1XRdxbnIOOyMZF3H+s1WnPu8Zi3/3sbOWcn35XNi7bIPg0Qj64yLS+9nZTTkvnx8r6E3zTVyYfm2U/j/IeBoXcV7U0Ed9XjSSf3L/61n9qRHnT9kBptB51QRWJ7L+CsaTxIjzuq03RpxrjTH+UkT90Pk21kCBNmKfKiJ9LqK+fI6pgB3hmj0zen3589uI+vK+88tO9TnbWPSvitA/+RzAala/tbe6fOT4vRZRXz5n0fgQ2z+/SvtrI+rL5/QKHqb5PfFXbr8por58js34OJMfzZXb3wd/yYpzxvL5jvTl0fmti0g/hT+9or58biR7eXR6I+ufYPTL9eVzHhZW/7UI+iPt2XmFbinPJ/t9akVNjGjXoDAIyvblc4n+lV3rf0JE/dA5mEaarNNcuX5yRH1533vdM1duX/6kaChMri/vv+98Jnyu70r868/az4qAy/ULuvBcQLTnYFOfZecd9Fzo3OCcKPanm5J3is/8l2j6VMqV7XfvGPWPv0HTWzVXrv//AXfYr1zQvgAA'
    bin = gzip.decompress(base64.b64decode(gz))
    with open(pymain, "wb") as f:
        f.write(bin)
    os.chmod(pymain, 0o775)