VideoHelp Forum
+ Reply to Thread
Page 2 of 2
FirstFirst 1 2
Results 31 to 59 of 59
Thread
  1. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by COGNITIC View Post
    Hi, i am trying to get the keys for a movistar i've went ahead and dumped my android phone wvd, i made sure all the request looked exactly the same as the one the phone does to the app to get it, but the response is
    {"status":"UNGRANTED_REQUEST","code":400,"errorCod e":4027,"message":"Invalid request"}
    can anyone point me in the right direction to get this working?
    Yes, but not in this thread.
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  2. yes, right again. i've edit the script before ...

    now i've download again the original allhell3.py and now work, but still error

    Code:
    MPD URL? https://vod06.msf.cdn.mediaset.net/farmunica/2023/06/1346433_18876390fc7f89/dashrcenc/sd_wv_mpl.mpd
    Found pssh element: AAAAU3Bzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADMIARIQC2tmW5WpWB1VrN5YuXFmmhoNYW1hem9uaW5mbmVybyIIdGFtX3Rlc3QqAlNEMgA=
    Extracted or generated PSSH: AAAAU3Bzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADMIARIQC2tmW5WpWB1VrN5YuXFmmhoNYW1hem9uaW5mbmVybyIIdGFtX3Rlc3QqAlNEMgA=
    Next.
    1. Paste your cURL of license request.
    2. Press Ctrl-D (Linux) or Ctrl-Z (Windows) to save it.
    cURL? URL:
    Method: UNDEFINED
    Headers: {}
    Data:
    Traceback (most recent call last):
      File "C:\Program Files\Python38\lib\site-packages\httpx\_transports\default.py", line 69, in map_httpcore_exceptions
        yield
      File "C:\Program Files\Python38\lib\site-packages\httpx\_transports\default.py", line 233, in handle_request
        resp = self._pool.handle_request(req)
      File "C:\Program Files\Python38\lib\site-packages\httpcore\_sync\connection_pool.py", line 167, in handle_request
        raise UnsupportedProtocol(
    httpcore.UnsupportedProtocol: Request URL is missing an 'http://' or 'https://' protocol.
    
    The above exception was the direct cause of the following exception:
    
    Traceback (most recent call last):
      File "D:\000\hellyes\allhell3.py", line 424, in <module>
        key_results = get_key(pssh, lic_url)
      (trimmed)
    httpx.UnsupportedProtocol: Request URL is missing an 'http://' or 'https://' protocol.
    Last edited by whs912km; 2nd Jul 2024 at 03:03.
    Quote Quote  
  3. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by whs912km View Post
    yes, right again. i've edit the script before ...
    now i've download again the original allhell3.py and now work, but still error
    What do you think could be wrong? We have covered this before.
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  4. sorry to boring you, but at this point i don't want to leave things unfinished
    now, as you can see from my shot, i'm out of wks tool
    pywidevine module installed
    allhell3.py is now your original file, not edited

    i think this script does not work for my link on post 19
    Can anyone try if it really works for my link? and post here one shot
    If really works, i'll try again. at the moment i'm stuck here ...
    Quote Quote  
  5. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by cedric8528 View Post
    Yes it works
    with a VPN for me
    Cedric, thank you.
    .
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  6. yes, thank you cedric. also by me
    finally a simple and clear answer

    but ... (from your shot i can't see) have you used allhell3.py for window and chromium browser or hell3.py for FF and/or linux OS ?
    because i'm win userm chromium browser, so i can test allhell3.py

    please confim that
    Quote Quote  
  7. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by whs912km View Post
    yes, thank you cedric. also by me
    finally a simple and clear answer

    but ... (from your shot i can't see) have you used allhell3.py for window and chromium browser or hell3.py for FF and/or linux OS ?
    because i'm win userm chromium browser, so i can test allhell3.py

    please confim that
    So you expect Cedric to install Chrome? Couldn't you just confirm yourself by installing Firefox and trying your process against that? That saves everyone else's time on your problem.
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  8. yes you're right, but same issue with FF and hell3.py

    new link for test https://mediasetinfinity.mediaset.it/video/mysteriesofthemekong/decima-puntata_F310800501001001

    my steps:
    1) run hell3.py and FF
    2) add mpd link https://vod06.msf.cdn.mediaset.net/farmunica/2021/08/957668_17b8700a23f708/dashrcenc/hr_wv_mpl.mpd
    3) search lic url, then copy as curl(window), go to cmd window, hold CTRL+Z, then press enter

    Image
    [Attachment 80352 - Click to enlarge]


    4) got same error from post#32
    Last edited by whs912km; 2nd Jul 2024 at 03:04.
    Quote Quote  
  9. Works on my test page with DRM.
    FireFox, also use Which 'copy as cURL' to use? Windows - choose 'Copy as cURL (Posix)' if available which is what I did.

    proof:
    Image
    [Attachment 80355 - Click to enlarge]


    Image
    [Attachment 80354 - Click to enlarge]


    Thanks Angela.
    Last edited by Spectrumhsm; 1st Jul 2024 at 07:57.
    Quote Quote  
  10. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by whs912km View Post
    yes you're right, but same issue with FF and hell3.py
    new link for test (now the prevoius one isn't available) https://mediasetinfinity.mediaset.it/video/mysteriesofthemekong/decima-puntata_F310800501001001
    I'm weary of this.

    Everything you have complained about has been of your own making. The instructions in start.html should be good enough. But I did have a gentleman who couldn't follow instructions either; user 838 I call him. He was the first to complain 'It Doesn't Work". In the end he discovered that by following instruction carefully he could achieve a good result. I said at the beginning you needed a paradigm shift. I think you seriously need to review how you go about using new-to-you software. READ THE INSTRUCTIONS!

    I made this for him - for hell3.py and Firefox .

    You do this.
    1. You run start.html - it is in the HellYes folder. Click to open or just drag to a browser to view.
    2. You read it carefully! Do not just run your eyes over it - read the words, understand what it says. After each paragraph stop and ask yourself 'do I understand that?' If not go back if yes , go on.
    3. You do what it says; you install software into a folder called binaries and add that folder to your system's PATH (Environment Variable in Windoze)
    4. You make sure each program is installed correctly and available in PATH (Try calling each one from the command line in Terminal)
    5. You prepare to download a video
    6. Find the regex in the start.html page and copy it.
    7. Go to the website with the video you want.
    8. Load the video page.
    9. Press Shift+CTRl+C to open web developet tools.
    10. Navigate to the Network tab
    11. Enter the copied regex to the filter box.
    12. Press Ctrl+R to refresh the video page and interact to play the video
    13. The network page will display the mpd and its fetch method will be GET - that is the mpd
    14. Click on that mpd link to open a menu -select 'Copy Value' and the choose and click 'Copy url'.
      Image
      [Attachment 80134 - Click to enlarge]
    15. In a terminal window, in the HellYes folder, type 'python3 hell3.py' or just 'python hell3.py' depending on your Operating System.
    16. Enter the mpd at the prompt. Ctrl +V should paste it and you will see the mpd echoed to screen.
      Image
      [Attachment 80135 - Click to enlarge]
    17. Select the license URL its fetch method will be POST; select 'Copy Value' -> 'Copy as Curl' in the menu-boxes (posix or bash)
      Image
      [Attachment 80136 - Click to enlarge]
    18. With cURL copied go back to hell3.py and paste in response to the prompt. Before you paste (Ctrl+v) the screen looks like this:-
      Image
      [Attachment 80138 - Click to enlarge]
    19. And after you paste the screen looks like this:-
      Image
      [Attachment 80139 - Click to enlarge]
    20. Absolutely NOTHING HAPPENS ON THE SCREEN. The curl may contain gibberish which could mess up your display so it does not echo to screen.
    21. But after you press 'ENTER' the program interprets the data and produces a key
      Image
      [Attachment 80140 - Click to enlarge]
    22. You can stop here if you just need the key for use elsewhere.
    23. Or enter the name for your video to be saved as - what will you call it?
    24. Just do not use spaces in the name:- for example My_Fair_City_23_06_2024 or'video_from_RTE - you choose whatever you want here.
      Image
      [Attachment 80141 - Click to enlarge]
    25. The script responds and prepares to download but offers the download command for users who may wish to bulk download later or modify the N_m3u8DL-RE command.
    26. you can choose to stop here or continue
    27. Continuing runs the downloader
    28. The downloader pauses for you to select the video resolution you want. To accept the default choices (best video audio streams) just press ENTER.
    29. The video now downloads
      Image
      [Attachment 80143 - Click to enlarge]

    The image in your last post shows your curl is 'copy as cURL (windows). All the instructions say copy as curl (posix) or (bash).
    Image
    [Attachment 80356 - Click to enlarge]

    But what do you do??

    You've got to be a wind-up merchant; you are arent't you. No-one could make an error at every step; could they?
    Post the curl at curlconverter.com and complain
    Run the script in WKS-KEYS folder and complain
    Alter the script to import pywidevine.L3.cdm (ie WKS-KEYS) and complain
    Get confirmation the script works but complain
    Try Firefox and hell3 and complain.

    Where may I post my complaints about irresponsible and incompetent users?

    I am now out.
    Last edited by A_n_g_e_l_a; 1st Jul 2024 at 08:50.
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  11. Can you see where this is wrong?
    (venv) C:\xxx\Administrator\Downloads\Compressed\hellyes2 >py hell3.py
     __ ________
    / / ___ / / /_ /
    / _ \/ -_) / //_ <
    /_//_/\__/_/_/____/

    
    A Generic L3 Downloader:
    
    For DRM content only.

    
    Prepare three inputs.
    1. MPD URL
    2. cURL of license server request
    3. Video name


    MPD URL? https://vod.imagination.m-78.jp/video/m000/00/m0000001me/20210527111304/manifest.mpd?resolution=1080
    Found default_KID using regex: CF414520-741E-4A2D-9C48-037F8146D004
    Found pssh element: AAAAWXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADkSEM9BRS B0HkotnEgDf4FG0AQaDXdpZGV2aW5lX3Rlc3QiEEAtE6wQw0gP vkeoo+8LVuZI49yVmwY=
    Extracted or generated PSSH: AAAAWXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAADkSEM9BRS B0HkotnEgDf4FG0AQaDXdpZGV2aW5lX3Rlc3QiEEAtE6wQw0gP vkeoo+8LVuZI49yVmwY=

    Paste cURL of license server request:
    And press ENTER.
    cURL is saved but not displayed.
    cURL?
    URL:
    Method: GET
    Headers: {}
    Data:
    Traceback (most recent call last):
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_transports\default.py", line 69, in map_httpcore_exceptions
    yield
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_transports\default.py", line 233, in handle_request
    resp = self._pool.handle_request(req)
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpcore\_sync\connection_pool.py", line 167, in handle_request
    raise UnsupportedProtocol(
    httpcore.UnsupportedProtocol: Request URL is missing an 'http://' or 'https://' protocol.

    The above exception was the direct cause of the following exception:

    Traceback (most recent call last):
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\hell3.py", line 370, in <module>
    key_results = get_key(pssh, lic_url)
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\hell3.py", line 184, in get_key
    license_response = httpx.post(url=license_url, data=payload, headers=headers)
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_api.py", line 319, in post
    return request(
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_api.py", line 106, in request
    return client.request(
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_client.py", line 827, in request
    return self.send(request, auth=auth, follow_redirects=follow_redirects)
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_client.py", line 914, in send
    response = self._send_handling_auth(
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_client.py", line 942, in _send_handling_auth
    response = self._send_handling_redirects(
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_client.py", line 979, in _send_handling_redirects
    response = self._send_single_request(request)
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_client.py", line 1015, in _send_single_request
    response = transport.handle_request(request)
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_transports\default.py", line 232, in handle_request
    with map_httpcore_exceptions():
    File "C:\Users\Administrator\AppData\Local\Programs\Pyt hon\Python310\lib\contextlib.py", line 153, in __exit__
    self.gen.throw(typ, value, traceback)
    File "C:\Users\Administrator\Downloads\Compressed\helly es2\venv\lib\site-packages\httpx\_transports\default.py", line 86, in map_httpcore_exceptions
    raise mapped_exc(message) from exc
    httpx.UnsupportedProtocol: Request URL is missing an 'http://' or 'https://' protocol.


    licen:(Firefox Copy as cURL (Posix))
    curl 'xxxxx Can't watch (He does.)' -X POST -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:127.0) Gecko/20100101 Firefox/127.0' -H 'Accept: */*' -H 'Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2' -H 'Accept-Encoding: gzip, deflate, br, zstd' -H 'AcquireLicenseAssertion: wwrV2QEfo0uUrhy96KLSEsFjIvUqposUg0Qj6w2AGZVKFgedb+ 7OYOLS1QDC7HhSiZoEY2r5Kjid/CLCUUSqYOVMVEjf/X2wW0wuxkvhYEVo49ZhnPhoq4KXY3qtoxqKsMHn1U6kTF9CO7V dDDAEsV+w+QltWQOgidEgeIYjM9/Eef8aZkLxafcebzOF6b8d2uHsuipT4PdFFBoF8Uv2Wud9Vo1UQ 4ahFWxGBZh9F2MPW8y7yA0OEDgB/SzbwUdn1t8eXXUTRSsoz/A5Gs9XDzB6S4xadwMgBCYpwhh2iaT61/8DoPxWVqs5gVghHCSTU8snahVC+1ILv5gL/ZMKz4Aa0NhZrwqMUfv9nkJy/aQ0bLrlEGYr+e8ia+ohlUcJI5o5jZulzUAhptIAyO/pi3t8qwOaumRMdapyy32C+wKI3x5t/i/HtG1GFQbjNzW5CA2vGpf3Y1ks7zP7SPQoWYLfGd8ZR2I92O7tl 2bcRyU6+b9ISSIhcqSCKaTyJ7XK33HpMPtfGkTT4cNCJrODrNM MCsLhUHo9dOa45rImrMyLy3ogo77mq4mZAQ3MCQxZnqJlacUa+ jTMPXlWa7bpmcYcuthjVTszRVH5iL3/YH7S1CNmmG+WJ/2pEcaL2iips31AtC7hCp39H94Lov8fb6k4AmFz6Q8ORV6ipSSr x33IOWb43g/5AlCOsYgrDTz3FE0Qu6Cg2Z4OvNwY53v0scRLSTQSsCommBO7J Y1dgdqoh3alzzGbLMGrz6zcmekjwtCtwfAvoK8XI/9q4aeGVwcAy5e0+xjKqXui7QMwXLDKkkUh3SMO78uGfpQsgvak 223TJuU4w1CTCZrqVwqvGpVmcJ2aJGMUYohDjjfq08vtyCQDod OhCSZnLggjWgEQ+5FizPXYTsdEi4rwaMz1r8Ur/J0Ayx7mVzh48dslmhimy2iKa5vtUNVncxFNHBWb9AxFe/KUWxPV4Hivr7eJTjQPNehn+qbR2unvye5DhM9i/UhV6aC8JQCzHTQSRk0rV/PvbD8ZojbgFOlzIvAFmh9EL+S3ZsAXuX9rlPNPsvjgh4pnxJgw qR9+hbth3VWpUwXink84QZKFInH8s+v3G8IAMbpeRavflQV6tX L/K6nf2IQir8EzeBOpbEAqMeoR9lBeLZG+Nf+qTfYTZwSiw8+8jF yi1zOCDqI7yvveckArlhtXieIO4lELDFI5nA/2' -H 'Origin: https://imagination.m-78.jp' -H 'Connection: keep-alive' -H 'Referer: https://imagination.m-78.jp/' -H 'Sec-Fetch-Dest: empty' -H 'Sec-Fetch-Mode: cors' -H 'Sec-Fetch-Site: cross-site' -H 'TE: trailers' --data-raw $'\x08\x01\x12\xa3,\x12Q\nO\n9\x12\x10\xcfAE t\x1eJ-\x9cH\x03\x7f\x81F\xd0\x04\x1a\rwidevine_test"\x10 @-\x13\xac\x10\xc3H\x0f\xbeG\xa8\xa3\xef\x0bV\xe6H\x e3\xdc\x95\x9b\x06\x10\x01\x1a\x10\xc4b1\x05\r\xec \xe6\x02/\xd6\xb5\x98\x1f>\xd1\x18\x18\x01 \xd5\xe3\x8a\xb4\x060\x168\x93\xc7\xe1\x89\x03B\xb 0+\n\x14license.widevine.com\x12\x10\x17\x05\xb9\x 17\xcc\x12\x04\x86\x8b\x063:/w*\x8c\x1a\xf0(\x99\xaa*U\xf3=\xe7\xe9\x9e\xc1\xbc \xc5\xff<\x90\xa8\xacBU\x11a\xd5\x128\xbd;%\xb4\xf c\xdf`h\x8c\xff\xd8\x0e \x86\x87\xbe\xdc\xe9\xc3\xb7\xad\xbf7F\xd2Z\x14\x1 dqF\xb9\x08\xf9\xed\xa4\xe2\xf3\xb8\r\xf1\x16\xc7\ x82x3\xc9\x8f\xbaj\xe2x\\\xec\x04<\x8c\xff\x89\x8c xjf6\xbf\xa9|(\x9c\x14I\xc5\x8c\xcex\x80\xe2\x1e~1 \xe6\x9f\xb2\xf2a\x8cZ\xea\x9e\xfa\xd9nP\xab\xdff\ x9f\xd7\x02\xe4\x97~\xab\xd0O\xa9\xa7\xe1\xfc\xbd9 r"\x04\x9b\xa5\xfc\xe0cU\x01$\x1bw)<\x04\x91\xf0S\ x91z\x98h\xc0/ \x0e\xbd\x09\xd6P\xdcy\x04\xdb\xa7\x07jlJb\xc1\xfd \x15\xc4\x92\x81>\xa7\x09\x8d2Kbix(B\x16}\xda\xf1\ xd4\xd7S\xa6,\xb0p\x80\xd0+?79(\xfe\xb6dl\x89\\\x1 1\x1bu\xcf7\x00c\xbf\x93\x95\x1f\x832\x8b\xac\xeb7 \x9a\x80\x92V\x83\x14\x8btS\xa1\x9f\xf1\xa9\x85\xd 2\xeb\xb1\xc7\xa9l\'\xc9\x89B\x00%\xa3\xd9FO\xec\x e5\xf6\x96\x11\r\x82\xd9\x96\xc9\xbb\xfb^\xeb\xd0K \x9a-\xa1\xb8z)C9\xfc\x84N\x11H\xea\'\n]\x01w\x93t\xef\x8b,\xcc\xdf\xa5U\x9d\xb44\xfb\x1f\ x8c\xe8in\xe7\x1e\x92\x18\x9e3c\xffC\xd03;\x16)\x0 4.\x9d\x86\xc8O\xdbd\xa7\xce\x13\xac2\xd44d\x06\xe 5\xfb\x1c\x9e\x0e\xa5d\x11\xbd\xaf>\xeb\x8c9\xf9\x e5\x92h`a\x04\xefSOO\xf4]\xbe0}\xac\xb5C/\xac\xe8\x80\x87E\041_\xbc`\x84\xda\xfc\x171\xdf\x cax\x83\xaf\xecq\xe26\x99\xd0\xc4\xa2\x0bc\xce\x89 \xcdC\041\xd7\xc3\x88\x03q\xafxg\x02\xc0\xef?\xd2\ xe7\xael\xd6o\xed\x84\xbe\xf0[\x1a.\xd9uAX\xf4\xb4\xb5\xe1V_\xcc\x9c\x1d\xa4\xdc j0\xf0\xd4)\x00\x8f\xfclm\xe7b@\xf7\xefAlC\xdb\x02 :\x8efy\x0c\xd3\xb9\x9e`3$\x87\xde2\xcc\\ou\x11y\x aa\xb6\xa4\x19\041iz7\xbeRF`\x80C\x89\xea\x15\xcc\ xee\x91\x07\xf3\xbbP\x03I\xf9U\x01\x8d\x9b\xe9\x7f )Uv~\xec\xcc\x89\xb5EO\x97\xa0\x89\xc4\xcf\xdf\x84 \041\x8d\xbe7\x1f\x92\x90)\xf2\x91\x9b\xa3a\x12\xa 0$\xea(@\xf9\xa7\x9c\x93\x94\x1ec \x95E\x0c\xda\xcd\xc1\xabou9\x99+1/\x19\xa9\xf9\xcbh\x15\x9d~\xe8_\xec\xf2\x84b\r\x81 \x06\x80\x83a\xe9-3\x1e\x15q\x18?g\x94\x01\x81\x1a\x89\xc9\xc0p\x81\ xe6\x9b,v@\x057\xd8q\xdfO\xc89\x1b\xf3\xa9\x8a\xa8 \xe9U\xb8f\xbe\x97\xd0V\xb2\xc6.eh\xc9\x90\xaa\x92 B\xf1\x03-s\xca\xeb\x07b\xe8]\x9d\x08`\xef\xb7=\xce\xa7oX\x987\x8c\xdaj\x9es\xb 1U4X\x19\x05\x16\xd84\x11\x8e\xe4`i\x87\x89\x16\xf 9z\xd9\xa5\x97\x92Ew\\\x9df\xfc0\x1e\xc0\x96b;\xfa \xf2\x8a \x88\xdd\x9d\xe2\xe8\xbf\xab\x93\xa3b:\xa5\xa0W\xd b\xaf\x91\xda{\xbd\xa3\xa9-=-\x12\x17\x93#\xee\x9b\xb9\x03\x91\xa2\xdf\x81pk\x1 bHn*\x84\x8e/\xe2\xacK37\xc9G>\xbf\x9fh>\xb4\x9d\xc8Y1\x82\xe7\ x1f\xb2\x81\x0b\xfewGl\xee\xdfD\xee\x8e0\x0e\xb4r3 \x95s\\\xec\x9f\xb6R\xfbY\xb6\xd3\xeb\x10?\xb5\xfa \xa6\xec\x7feSE\x85\x16\xd1\xedG\x84\x95.\xc8]r\xb3\x17\x91\xfe@r=$\x1fl\x0eiVw=\n\xcc\041\xf4\x 15~_\xc1q\xf4\xe7:\xfc[\x9aR\xc3\xbe\xc7(%\x04~\xe3s\xaf\xa3\x9f\x8f\x88\ xa1@\xc57\xa0\x97\xbe\x95^.\xc5\n\x0b\xb5\xe5\xba% \xe6gh\x981\x90\x99\xc3#\x7f\xb6\041\x8b<\xca\xdc& O\x02\xd1\xbd3J\x86\xaat2\x90G\x81\xd5\xc6\x15pdoI \xca\x16|v7G\x90\xa6?\x15\xab\xa8\xb2\xa1T\x8fa\\1 \xc7\xbdN\xfaI\xe2\x87W\xde\xc5A\x94\xf7\x09G\x94\ x88\x0cf\xff?\xdc\xaf\xcc\xa2\xb3\xb1\x06b\xb0\x00 \041\xe4\xd2\xc3\xe2\x09\xa7\x19V\xe4j5\xdfm\x99\x 9d\xb7/o\xd5\xc4T7\x0c\x98\xb4\\\xd48\xfb\\3\xbe$i\xf9\xd f\xc1o\xbbB,\xa8vs8\x9c\x17\xa6\x93K\x92(\xd2\x04\ x05\xa6q\xfb\x9en\xc8\xdb\x85\xe3\x06\x0b]d\xe8\x85W7\n\x80\xae\xebO\x10\xdf7\xb2U)\x86\xb0\ '\xab\x16\xcd%\xac\xb7\xc8\xe2FkxJ\xe73\x13\x865\x 99\\\x128\xb8\xfaB\xa6\xab%q\x06\x02\xadb\xa3E\x9c \xf0\xc8\x80>\x197-s*6\x0e+Y\xed\xbf\xadou\xd2\xb4d)\xef\x96\x0ce\xc8 \xc5\xad\x94\xb8\x16\x16"\\\xf9\xe8\xef\xabi\x16*\ xc0Q\xda\xd5N\xaa\xc8\xd21C\xc0\xe5?\x00\xa40B\xaf CE?\xef9]\x10\xa6jK\x9a\xb1\x04L\xf6\x18\xbd\xc5\xd2\x1fo&\ x07\xf8\xb2w\x0b\x08T\xc55\xf3Uk\xedoi\x05\xb2\'\x ceK\x85\xcf\xa8\xb7r4\xc3.\x83/T\xca\xca\x13\xb5^\x0ck\xa4st\xb5\xaf^l\x850\x01\x 84\xc3\xbd}\xec\x19\xd6{\xe7{\xe2B\xbc\xb3y\x97\xd d\x7f\xb2\xc8\xce8\xf6\xe4\x1b4 16Y\xce7E4\xab\x06\xeb\xac\xc2qS\xf6I8\x04\xben\xf 7\x0fTT\x9e\xe5\x1dY\x8a%\x0e\xfaJK\x03\xc3k\xe7\x a5\xc6\x93\xdfmU\x81\xb5\xd7\xa2>\xd0C\x98\x05\xce[\xfcKao&0\x07K\x06\xeb\xa2\xbe\x1a;|\x84\x1a\x92\x 177\xcb\x82\xa8\x07\xd7\xd1\xdbYFI\x13}7\xfb\x0fA\ x98\xfbd\x87\xf3`\xc2\x0b\x9dS\x01\xba\x85\x04OI\x b7A\xb7\xb0v\x84n\x0b\xcew\x8e\x901(\x9f\xc9-\xc3\xbb\xa9\x0bP\xb8\xcf\xe9\xcf\xde\x89\xb9\x82\ xd9\xbb)\x06\r\xce\xb8-x\xbb8>\x81\xb5\xdc\xea4\xb6\x00?|e%R\xcd\xe8\xad\ xc9t\x0c\r\x8f\xbc\xf0\n\xac\xb9\xec\x0e\xad\xf2\x 8b\xc5\xfd\xb1\xcan\x9ao\xe9\x1a\x17M\x02\x82>\xba (9\n\xd0RIM\xef\x9f\x07\xf1#/\xb4E\xe4F\xc5\xcc\xf3\x80\xb6\x03;\x89\xcaw\xce\x e0\x08\xf8\xbd\xc5xw\xe1b\'\xb3\xffJ3\xb8o3\x8d\xd f\xf2\xa2=W\xe1\x8d\x94@\xd8BU*A\xe9\xa0\xd8y"\xcc {Al`\xb2\xb7\xc9$\xbc\n\x17^[\xc0\x1b\x0e~s\x8a\xc0L\x02F\xd5m\xc4\xe3+\x93\xf5 u\xd7z4R\x08\x12\xa6\xbc\x08:X\xc7V\xb8\x1a{~\x99I %Y\x81fX*\xdc8\xcf\xb5\xaafB\x9e {Y\x0b(b7\xcb\xa3\xc7\x17\xdbyR\x01\x10\xb5q\x1f\x 82R\xed\xe2\xf9e\x98(z\x1c\x1e+\xa2\xd2\xa6\x9c\xc d^-\xad\xa2\x97\041\x857\xf3\\Ux\xf5,7>Z\\\xf1\x94)\x ac$\x95\x09\xf9\xd0\xe2\xf4\xa3"\x10\xaa\'X%\xfbC\ x07I\xd9=\x92\x04n\n2Y\xd6\x07\x90\xd1k\xe4\xe8\x8 6\x81\xcb\x8eR\xd4G\xf2B\xd4\xc9yi>\x1f\xde\xfd\x1 4\x9c\xa8.r\xb7vm5\xea\xa3\x87\xffE\xa8\x9b\x0e\x8 0f-C@\xb0k\xc8\xef\xcb\x87)\xafG\x1c\xc3\x0c6\xdfZ\xa 0\x15\xb84\xad\xe7\x0b\x7f<\rD\xe7\xa5\x81\xf1\xc4 \xba\x82T#f\xa1\xb3\x07\x15\xf5\xbe\xd55\x18\x11\x 8d\x04{\x1f\xaa\xc3-\x14\xc4Q;\xf02h\xdd\xbd?\x7f^>\xeerLqY\xf1\xb7\\W \xdb\xbd\xf8\x05j4\xf7yj\x8a\xd9}\xd0\xec\xef\x97\ xe7\xe2O\xb2\xf0\xb2q\xa6\x1b\xff\x9e\xb1\x95\xc0\ xd6~\xb6/p-\xc6\x85G\'\xfa\xe9\x89/%nk0\x12\x09\xb9)Q\x12Y\xa5\xd8\xb2\x18E\xe9\x96\x d5]\xc5\xf8\x0f\xb5\xe14\xf6\x19\x81\xdb\xeb:\xd6\xc5 \x9aR\xf2a\xb5\x97x\x95\xe5\xe2H3\xfew\xe8`\x83\xa a~\xeb\x9b\x8a\xb6\xe4e3\xc9\x9f\x97a\xab\xf9\xe0\ x1b\x0cRu^\x93j?\x89\xd9|]\xfe\xa1\xc8\xde\xd2\xbb-hr\xae^/\x87*\xb8\xf7PL\xc3m\xa8\x91\x088l\xb5\xcfn\xcfTgt \x8c\xe6\xd2I\x1c\xfa\x96\xe5$ B\xda\xaca\xa4\xc3\xc1q\xa6P\xf8\xb1\x13\xb8\xa9\x f7\xf5o\x81\xf7\xa7Wz\x13\x8dO.\x7fX\xc9\xdd*7\xc1 m\xd5\xed\xbb*S\x880`\x03\'Cc\x19f\xca\x05M\x9a\x8 9K2\xac\xb8\x1d.{\x9a\xa5\xf2\x9d|\xb5\xcca\xfa\x8 7\x0c\xf1\x09e\x996\xf94\x07\xca\xd7\xea\xc5\n\xfa y\xdd\x92\xf1\x92\x90Ljjr\xf1\xd0z\x0b\xd0\xf9\x15/\x87W\xb9\xf8\xb8\x08\x10\xec\xb24\xf3F\xd6\xe4@\x fd@\xa9\x8dB\x0e3{\x00\xb0\xb9\xbb\xd5\xae\xf6\xa6 \xf0\xb9\xd3\xa1\xfd\xf0\xce`7\xa5\x80u\xc2\x1a\x9 f\x05\xb6~\xf2eG\x0e\x01\x8c\x99\xa2\xd9i\xef\x0b\ x0c&#U\x8a\xfcl\xd6\xfa.F\xab\x94\xde\x1fw#\xcf\xd d\xf0\xc5\x9b\x16\n\xe0\xc1B\x87=~\x13\xb6/F"\xd2\xc3\xf6\xdd\xd8v\xf9\xbe\xed\xf9\xe7\xab\xc c\xf3eF&3\xa0@\x0btm)\xcd\x87\x1b8\rP\xaf\xe0\x18\ x07Y\xba\xae\x14\xa9\xfd\xe9y\xc7\xc0y\xc1~ZEon\x0 c\x7f06l\x19\xa5\x8a3\xa9zE\xa1\x97\x1d\xb9\xae\xa 0L\xc2n\x16y\x87\xf2\x8e\xcb\xc9$\n\xab\x0fM\xbf\x cb-\x8cVVyj_\xb3W\xdd\x17\x95\x84\xa8\xbd\'\xa9\x83e\ x1e\x09G\xab\xf8M7\x0f\x86\041\xcb\xcaj\xf7\x06&\x ae\xb9+\x8c\xc5AB\xcc\xcf\xa0\x17b\xf4\xf9\x95\xba W\xc7@6\xfe\x0cwQ\x9e\xb5-O\xbc\x87\xbc\x92\xde\x17\xa0\xf3\x03\x90\x1bfC\x9 9\xf7C%8\x15\x13\xdb\x94J\xedm\xbd\x13S\xf6<\xefo\ x93\xf9\x8d\x809\x09\xc4\xe1\x12\xbd\x82\x15\xf8Fu \x1d\x9b\xfd\x95ko\x1c\xd6\xb6~\xe2[\xc3\xf6\xca\x0b\xef\xdc\xbdw\x91\xd9(\xd4f\x88p;K \x92Ti\x8f\xd2\x97\xa0\xcc\x01\x0f\xb57\xfbK\xd4\x d1\xec\x14\xde\x0eD.\xac& QL\xe9R\xd5\xcb\xd4\x19e[\xa9\xbe\xb4\xb1q\x1e~\x125 %\041\xdb+@\x0f\xfd\xe9\xfc\xd4W\x10\xc1\xee\xc3\x 82+i\xe4\xf4Jg\r\x1b0<\xf8UGq\xf8-\xb5,\x9b+TjG\xfc\xdcx\xf0,\xf3\x15;\xd8r\xfc\xfb\ xb7d5\xe40\x04\xb1\xe7k\xc4\xa9\x99\x17h_\x1d\xac\ x12\xff\x82\xc8RZ\xf5y\xed}\xab\xcc\x9a\x06va\xdfg \x15W\xe5\x83\xfe:\xd0\x86\xba\xbej\xc7\xfd\x97\x8 a\xba\xfd^\x82\x1e4\x0c\xb7\xeam|_S\xe5\xe9Sgn\x81 \x90\x18\xf0#d\x153\xbb\xd0\x82\x8f>\xfb5sr\xe7\xb 3\xec\xcf\x1c\xa6\\\xa6L\xff\x8d.\x1a>\xc8o\xa0Y\x b1\xfe\xe8y\xfc\xd6\x05\xb4\xd37l\x03s\x1c\x10[\041?\xbb=\xa8\xdb\x07~\x0f\x7f\xd37\xd4\xa5\xb6\x bcs\x12}\041\x07\x948\x96\xc25\xbe\x93\xc9\x11<\xd 5\xe2\x82\xb4\xeb\x94w\x89\x88"\xb5$\xbbd\xf8\xe1* \xe0X\x1c\xb5^\x91\xb0`v\xd9)bb\x06\xc2\x89\xe2\xb 1\x9c\x87\xa3_\x1d\x93V\xd1\x13\x0f\xd7\xc6V\xef,C u\r\x88\\#\xc5\xa6\r\xf6\xf9T-@w\x86\x06\xac\xd5\xbc\xafz\xa8\'\xb1\xb4A\xe2\x19 \x17\xfc:\x9d\\[\x16r\x8f \xff\xb5\xe0I-Y[\x1d{\xdb\xb7_\x9d<F\x01\x16\x0fXX\xd9\xc1\x86o\x9 e\xc0\xa5\xc6\x1b\x1b;\x8c\xd8Lf\x83\xc2H\xb5\xa5\ xea\x9c\xc8fz\n\xd5\x85x\xca\xe8\xad{b\xb1\xf6\x81 \xeb/~tX?i|\xd7C[\xf3\x8c\041\x86+\x1cy\xc96\xdb+\xcf\xc4\xdf\xdd\x c9\x93W\x1c\x04\xbc\xe0\xe5e\xe41$\xbeUe\x8d\xe0\x ac\xf9n\xb9\xa0g\xa0\x14\xc3\xad\xcd5V8\xe3\x84e\x fc\x08e\xa7Pc\xc2\x7f<\x07\xbd(\xd5\xfa\x8a\xacqZ\ xbd\xf9\x19:GgQg\x82#\xc4pE\041\'\xed\xa9\x83\x15\ xc2\xbf`M-F\x13p`U\xad\xd5\xf1\x80\xa9w\xba\xf2\xb3\xd3\xa8\ xcb?*\xce\xbe?\x1a\xfcL"Tf~\x9a\x8dz\x0e\x088eM\xe c\xcf\xc1v8\x8a\xc9\x8c\xc4\xea\x9a\xfa\x83\xfd/F\x90\xf3{\xe2\x0f#*\x95\xa0x\x8b\x13d\xb1\xa6J\xb e\xc8Os\xa9a\x1f\xe6\xafGU\x98z4\xe8\xf3\xf7\xbd\x a7\xd9\x83\xd1\x1c\xc7Qa\x91\xa2\xa7\r\xb2\xe7\x8d KQs-\x1b:\x8dI\xd2q\xbf\xe0\x82\xf2\xbc4\xaf\xf0bzcP*q \xd7y\xbbq|\xed\xb4n\xa9\xadfd\x10S=\xae\xd4b\xb7\ x08rs\xdb\xe4[ySV\n\xdc\xcfLq\x15\xa4\xe4\xea\x7f$p\xe0\xc1\x11u \x7f\x8ab@9\xf2\x88\x84\xc9\xb3\xe9\xef\xbd\xf8\xa 8\xe7\x19%\xf5\xcbv\xa1\x99\x89\xc8}V\xdd\xc6\x89x \x88\x046\xc7\xb0\xe6\xb8Q\x17\xe5\xa3\x05N\x10e\x 98qaq\x05\xecm\\\x06\x85\x9fu\xf9\x01\xf3e\041\x93 \x9b\xc4L\xf2\x08\xc9\xed1\xb1\x84\xf6\xdd\x81\xae :"\x8a\xfa\xfdwV\xe7\rI\x8aE\xe1b\xe6\xce\xa8;\x01 \x1c\xb4r{\xd2\xb73\xc3\x0e\x8a\x90\x02\xe9\xb2\xa e\xad+\xcf\xdf\xd0?,\xadj\xac\xedB@\xaeA\xfaxx\xe9 \xaf>\x1c"t(\xbbq\xcc\x10\xd9\xb8\x99?\x00p\xbf\n* )"\xcf\x81\xda\xdbj#\xf4\x12je\x84\x0b-\xcch\xddLb\xd2z\x04<\xef\xed\xf0\xc4\x94\x95O\xa7 \xef\xde\xd2\xfb\xe5\xe8c,\xedsoi\x1av\xc9\x95r\xc e\x1b\xdf\x947@\xbf-\xc1\x9a\x92X*]\xe69{\xeb2\xa8\xdf\xdf\x7f]c\xddB\x8d\xe6\x87\xea\xf1(\x9b\x92\\\xa5\xf0\x11\ xae\x99\xb57\xe3\xf8\x11\x9e\xd3/\xe1\xf2Ef\xbdY\xd5\xaa\n*\xcf\xf8Y\x9ew\x1f\x9dA\ x9a{\x8a\x97\xd5\xd5"Z_d\x844\x9bn\xf1\xaf\xa5\x8b }\xfb\xcc\xa0\xa6#p\xafQ\xa1\x94\xe4H\x81\xae\xe4: \xbe\xbe\xe7\xceM\xfe\xe2G?,\xedY\x05qA\xef\xaf}z\ xdc`\xe2\x18\x9a\xb5\x05\xb62\xda\xd4L\x1c\x90C\x9 7\x9c\x1eP=\x1e\xb4U\x04zk\x0f=\x16G\xbe\x8f\x13H\ x0fx\x18\xc59NB\x1d=\x96\xe9D\xa1,5\x88\xcf2\xb0\x b0\x9aZ\x06\xe2\xca\xe1\xa5ZSE\x06=\xc0O^\xd9C\x98 iX\xfaJ\xc0?X\xfbyS<\xca\x0e\xbe\xa9c\xed\xf2\xcf\ xbb\xe0~A\xb3\x87\xben\x94\xf5mX"\x1d\x95#\'\xb6\x d8\x99\x95\x86\xec\xdd|\xb7\xd5vk&3)\xe2\xa74W\x9c \x85w\xc1\x1c\x8b\xb0J\xe7-/`\x0cD\xd3\xa8\'G\xd7\xb4\x1a\xd1Q\041}9\x14^\xb2s \x9c\x02"\xe3X\x7f\x12\041\xad\x90r)\xdd\xaa\x07\x 92\x1aeT\x1d\xb4u\x1c\xb8ge^\x1bGo\x1byZtZ\n\xe5\x eb\xca\x89\x8d\xf8\x03v\x14+\x8cb\xad\xae\xec\xe3\ xe2\xfd^\xf2\xa1\xe2\xa9\xfa\xfd\x7f\xb2\r\xfe\xdc \xd3\xb1,p\x0f\xffs\xbev\x9c\x9d\x90\xf5\xaez\x84\ xad\xe2\x99\xf5\x0e\xc6-\x13\xe3D0f\x9d\x0b7\x19\xac\x17m\xea|.*\xe1\xa5\x b4\x80\x1e\041\xd2\x90\xab\x96\x8b@D\x8b"\x8c\rUW\ xcdB\xab_\n\x85\xccE\xc0\xaa8\xc1#_\x15\xc0\xfb\xd f\xb6\xd6&`Ew\x06\x09\x98\xafg\xda\x14?\x84\xb8\x1 0\x90\x84;\xed\xa2]\xc2\x0b\xfb\xf6-\xc3y\x97L\xb3\xc4\xd3\xc7(GH\xdc=\x8a\xb3\x8bP\xd b~\xccH\xdae\xa1%C\xade\xefG\xc3\xb6:\xa5\xe41\x05 \xa1)\x1b\xe7\xe5\xe0\xeeU(4O\x17\x1d\xd1F\xb8qT>= \xfa(\x1a\x9e\xbe\xec\xb9*N\xfa1\xc0\xc0\xe3{\xa5\ x80A\xdf*\xe7>\xda7L\x1ad)\xda\x14\xf9G&3n\xb5oG\x d9\xc5\xee\xd1c\x16\xebV\xea\xaf\x92p\x08\xd4M\x93 \x9a\xc4\xc4\x01\x12\x18\x9e\xcf8U\xa4\x10\xe7p/,\x17\x1e\x11"\xa3\xd7\041\x9c\xf8\xd9\x14\xa6G\xe 54g7\xc0\xab\xd6\xe3\x12\xf2\x03\xca\xcc\xca\xd3ZO \x88j\x02]\xd9\x84m\x840\x8fz?k\x11\x8a\x06\x1a>\x00\xa3\xcf j\x00\x81\xc1\xd6\x85\xe07>\xcd\x9dv\xd78\xe6p\xa0 7\x18l\xcb}\x1bD\xf4\xe7\x12\xb7\x1c~\xf3\x12\xac\ x94\xf0z\xff\xb3\xe4\x81\xa9\n\xb8\x16\xe5\x1d\xcb ZOE\x17y\xee\xc7\xbeu\x90\x12\x0f\x83}\xe5$$\x1f6N \xf4H\xe0\xd7FAq0\xe4\xd2Y\x94\x922\xea\xb2{x\xa2\ x15\xae=J\xc0o\x84\x17\x90\x03K\xbd"\xc4\xff5U\xfe \xb0\xc2\x06\x7fO\xe7pW<\xcdQ\x0f\xb6\x0b:\x07\xcc ~O\xf7N.\x16\xf0\xdd\xd6]D\xe7-kjX4t\x15\xb4\xb4\x7f5\xcb\xae\xb5\r\x19RP\x1a~y\x 9a*\x83/RXB\xb94y\x10\x9a\xd2\xdc\x85\xe0\x8cR%6\x87\xda\x cf\xb8\xce\xf9\x03\xa7\x1f\xa2\xe9\x1e\x13\xd8\xc9 ^\\\xdcA\x83\'8\x1b\xa3\xd6\x84iB\xfe\xbf\xdd\xb0`\xf2|\x 18\xf4\xeb\x1bb\xbe}X\x9e@\n#\xe6\xcfE\x06\x96\xb0 \xa0\x978\xe4\xee\xf2\x81\xaf\x88\x8d-\xc0\xbb\xf2\xee\xe1\x1cp\xb8\x16\xa6\x18#\x8a\x16 Y\041\x8aw\x02ZR%\x8f\xe6.\xcbj\x1dc<\xe4\x0bQ$\x0 3\x13\xddIj\xc0wRn\x99\xce\xbaUG1\xae\xdf~\xa4\xb6 \xbc\xb2\x90\'\x07\\\xc5h\xee\xf78\xb7\'\xa8\xeft\ x0e*\xc9\x8dB;\x85\xf0\x83\xed\xfa\xb2\x01_\xe8\x0 0\xd0\xcd\xa9b\x09YMN\xbc\xbaOH\x90\xb9\x06\xcd\xd 2ijC/\x00\xb3\xde\xfb\xe3u\xc5\xaf\xb0\xa6\xaf\x17\xc0\ x07Z\xaaC\xe2CC\xa9DN\xef\x12\x83M\xf6d\xbc\xf1\xb 98~hY\xdb\xccU*n\xe2\x910K\xdb\x95\x03^\x17\xa1&\x b5o\r\x9e\x8e\xef5b4\x1cn\xefuxt\x82J\x15\xf7\x01\ x03\x10\xa9sx\xb6B\xae\xa3J\x86Kk\xfe{\xc6kl\xe4(\ xe9\xf1\xbb\x18\x0c\xb4j\xdf\x14G\xfc\xa8\xfb\xb3\ x8b\xec\xe9\xb3g#\xf9\x18\xf3\xa66v3\xfa\x1a,\x8e\ x0f\xef\xa4\x00\xb0\xb8+"\xb0\x1a(\xe41\xbd\xa5\x9 5\x19\x12\x80\xd2\'\xc6\x9a&\xc5(\xbb\x07\x987f\xd 8\x10\x9a<\xcfS\x04\xc0K\xa5\x87\xba\x0c\x08\xdb\x f0G\xc2\xbf\xaba\xb2\x03\xb7\x93\xb3\xddS\xfd]\x05\xe8\xcck\x81\xb3cd)S\xef|\xba\xb5C\xf3\xd3\xc 4\x80&\x94\x8a\xd1_\x9d\xdc\xe5\x8c\xfb?\x86#\x8e\ x83\x84\xac\xfe;:\xa25\xb9\x9eU\xd6\x04 \x19\x8eo\x8f\xca\xfb\xbc\x18\x84]\x0f\xcbqT.\xa1f\xaf\x16w\xf6<\xb9\xd3<N\xf4\x9c\x b2\x92\xa4h\xf9\xb8\xa5\x0bQ\xff\x00\xdf\xa6\x8b\x 1d\xaa\xac\x18\xd8\xe6\xfe\x968O\x81T\x9f\xe2\xa2\ xa9U$\xde\x18&\xebW\xee\xd3^\xa9XA^\x1c\x08\xe7j\x 8b\'\x07\xf16\xb1\xcb\xa5\xdd\xa3\xfft\xab=\xe2:\x 96$z\x16\x80h\x91\xc1j\xb5)\xa2\x9a\x85+\xbeY`0\\; \x94Q\x08T\xaa\x9e\x18y\xd31*2\x15\xceA\xa1\x10f\x 87\x96[\xd3\xdb\x85\xb8\xc7#\xcf6\xa5\xb0\x98Q\xd8r\xdd\x 92\xe34\x92db\xc5\xe89\xaaQ\xfd\x11\xbf\xd9\r\xec\ xbb\xae\xe3\xdc\xceB\xe49\xaf|\xb8JF\x1d\xb7.\xf8\ xee`\xc1GrC.\xb5\x8f\xcd\xb0}\xf0\x8cj\x13\xfe\xb4 \xf4 t\x1e\\\xb7T\xb7\xd6\xed6\xecy\x88\xa3\xb3p\x91R\x 0c\x16\xaa\xd0#\xb4R\xf7*7\xa8\xba]W\xefW\xfa:\x8b\xbez\x12i\xbb\x91\xd0>]g\xa9\xcf2\x12.\xe4>\x99\xd0\xc8P\x871\x1f\xc1\x97/\xe4\xbaG\x1f\x940\\\x7fD\xab\xed\x1a;i\x91\xb0\xd fH3\x8d?9\x11\x90\xcc?{\xcf\xef\xdf9xz\x8f\x86SwP\ x060\xf5Y\x0eJ\xec\xf7\xf3\xa6\x998\xf3\x05p\xe2\x b5\xab\xac\x8f\\\x9a\xb7\x14\xef2-\xfd\x95%\x10\xe2\xb2\x08g\x09\x975\xb8\xbc\x1f\xc 5\x96\x97\x11a\x18O\x9c\x97\xd0>\xc8\x80\xa4\xb8K\ xd5\xc2\xe9\xa7\xcb;\x09\xeb\x85\x84\xb6\xee\x00=\ x83\xa1\xc4\x02E\x9b\xb8\041\xa3*\x7f~|\xaaN\xc1\x e4\xc1\xc0\xd0z(\x9c\xf5\xa7t(\xfc\xf1\xe1G\xdd4\x b6\xfb\x13\x83\x817u\xcbB\xc4\x9d\xc4\xb8\x8c\xd2L \xa4\xeb\xba)\xee`\xf0bd\xd3\x07\xd8\xa2\x00\n\x0b H}\x81\x8c\xf9\xe0\x93ck\xd9\xa8C\xed\xc2Y\xa0[\x05r\xb9d\xe9\'\x0c\xe4\xc7\x95\x93s\xea\x09l\xe0 \xba\xef\xe9\xc2&}\xc88e$^\x8a6\x80\xb7j2\xa3e\x00 9\xd2\x0eOg\xa8\xf6\xc9\x01\xfb\\,\x06*x\xa9\xe3\x e2\xb1\xfbN\x00W\xb7\xac\x17\xe4\x88\xd7\x9fUD\x00 \xc8\xc6XB^\xd7\xa6k\xd9\x86\x9fF\xdb\xe6\x08b\xf1 \'\x09\xa0\x0c\x9b\xd3\x1b\xa0cz\x09\xd6\xb6h\x00\ \\xdd\x18kf\x99\x84\n>\xe40\xe0e\x89l\xbf\x02\xba\ xda?\x89\xbaE\xf5\r\xa6\x95\x165>Y\xe6)\xca\x80\x0 bO*\xd0\x91\x9b\xd4\x1c\x17_\xc7\xd7\xa3\xa6s8\xef b\xbb\xa3\xfdS\x8f\x1d^\xbe\xb8Q\xf3\xe1\xc7x\x09L \xcb\x98\xcc\xf5*\x9dG:\x04\xbc\xbd\x94\xe0\xe9.\x c1P\x13tqw\xc8\x04c\xb6\xb1\x8aZ\x96A\xa5\xadO\x9c \xe0\x19.\xf0V\xb1\xcaV@\xdb\x00b\x00\xe3d\x0fq7J\ xe7i\xba\x94\xc5\xec\xf2\x9d\x8c\xdbT|"\xfdQDq\xce \x92J.\xaf\xa7@9S\xb0\xedqk\xf0\xcefk\x05\xd77\xa8 \xca\x1cBm\x0c\x9au\x8eA\x9d\xe3\xa3\xea\x9c\x84<\ xd5\xc8\xc2\xb8\x16\xac\xe0\xfde\x94i\xeb\x15\x8d\ x01R\xaaD"H\xcf\x07\x83|p\x0f\x08\xa3\xbcU\xc0\x1e ,\xbe\xc4\x0exA\xd0\xd0"\x10z\xd74\xa6\xe5\xa1A\xc 8\xd3\n\xbe\xf0<\x1a\x0f,*\x80\x02\x11p\xced\xac0\ x0e\xbfo\xf4\x97\xa7y\xd8|\r\xfeX\x02\xd4\xc8&#\xe 3\xf7\xa5\x8a\xe2e\xd9\x15\x1e#\xc8\x88\xb4\xb7\xb 1\xafV\xe8\xb1\xe5\xd0\'\xcd\xac\x04\x16\xe2yq\xad cE\x85\x97\xc6\x91_\x8b\xb2\xe29\x7f\x8eh\x14B\xe3 \x10\xcc\xdcL8\xb1\xdf}\xef>\xf2@A{\xc1+\xea\xe1Eg \xb3\xc8\xdb\x95\x85\x8f\xd7\x1a>\xbc\xdf\xd3\xa5\ xa1R\x97\x08\xc0J\x94\xe8\xde\xb5E@\x1a\xc3\xc4\xc 0[\x87Q\xa9\x9fHdj\xd3\x87\xbb\xbe\xa8\xe3\xd0\xfe\x ba\xcf\xa5\xd8jP\xeb\xbak\x97 <\x80*\xbe\x91|\xca\xd0\x95\xd9\xcfQ.\x02x7\'\xb7\ xfdC`=\xa6\xf7\x02\x07a\xf0\xde\x08\xa8\xd5\xf6\xd 3DAQ%\x060\xc4\xd5\x16I\xbdS-\x9f\x9e\xddU\xa1\\\041{a\xbc`\xe1\x00\xfb\x0b\xa3 \xd8\x85\xde{\xa9\x91\x8d\xd6\x1b\xb7\x8d\x86\xc1\ xcf\x08C\x1f\x98\xb7\xf0&\xf4\x96\x1e^7\xb2\xc8\x1 8\\`G\xb84Q\xbe\x98:\xa7\xa0\xb0,=\x7f\n7OJ\x0b4.1 0.2710.0\x1a\x80\x01-\xe8\xc4G\xc7u\x80\x16\x7f:\xe9\xa04\x08yk\xedb\xe 8\xc5\xe4\xd6\x94\xbbZ\xbc|\xf3\xcc\x97\xb0\x99\x9 6\x12\xcd\xb9\x15 \xfc\xc4H\xf3\x06\x13\x91\xc3\xb2\x8f\x9d\x04\x95\ x864(x\xd7\\\x96\x00\xa9\xa3\xce\xaf~%\x0co\xdd\xb aQG\x9e[@C nKp6\xa3\x9b\xf4O\xfc\x8bKD\xc5(.\x88A\x90\x9f\x1e \xc0\xd0Zf\xf6P\xc6V\x07@\xa6(?gz\xf0\x0e\xf7R\xa7 \x00\xf5\xeb\x08\xa8\xff\xa8\x13\xf0\xa0`\xb0J\x14 \x00\x00\x00\x01\x00\x00\x00\x14\x00\x05\x00\x1018 c\x93Y1\xe1\xe7'

    Image
    [Attachment 80357 - Click to enlarge]

    Image
    [Attachment 80358 - Click to enlarge]

    Image
    [Attachment 80359 - Click to enlarge]

    this path
    Can you see where this is wrong?
    Quote Quote  
  12. @Angela

    so many (too many) words for nothing

    Image
    [Attachment 80363 - Click to enlarge]


    thanxs for your explanation, but i can use python from for some years with wks tool (i've make also some script myself) so i know how to find mpd and lic url
    I've made some mistakes, i admit, and I've also edited your script (before) because I had mistakes
    and i know i need to copy lic url as curl(bash) but i use by default one browser chromium based, FF sometime only. so because with my chromium browser (not chrome...) i get error, i've tried with FF (not my browser for every day). also i don't use FF bur waterfox (fork of Firefox, deployed on github)
    and as you can see, on waterfox i can't have curl(bash) but only curl(window) or curl(posix) (and among the 2 I chose the wrong one...!)

    Understood this now, after your useless outburst, and also understood that you got wrong instructions on file start.html (which of course I opened and read before asking here in the forum)

    Image
    [Attachment 80365 - Click to enlarge]


    i know CTRL+V is paste and CTRL+Z is one operation back, it seemed weird, but i read this and ran this. Now since your last post, I finally realized my mistake which was for this misunderstanding (now i've edited also my start.html with right command CTRL+V)

    Having said that, and admittedly I'm wrong (again) with copy as curl (bash not present on waterfox as you can see from my post 39), however, i thank you for your support, for your last post, clear, even if perhaps a little polemical, and as you can see in the end i also solved all my problems
    Quote Quote  
  13. also: the same script hell3.py work also with chromium based browser, i get the key, with copy as curl(bash) and paste CRTL+V (not Z!)

    instead allhell3.py (the right script for chromium based as you can says) does not work !!
    with my chromium based browser, copy lic url as curl(bash) and paste with CRTL+V i get same error from my post 32

    with same browser and same script copy lic url as curl(bash) and paste with CRTL+Z (as your script script says) i get a mess:

    Image
    [Attachment 80366 - Click to enlarge]


    Image
    [Attachment 80367 - Click to enlarge]


    All this stuff has created confusion for me, for a tool that new one for me
    Quote Quote  
  14. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by AmorAprca View Post
    Can you see where this is wrong?
    Can you see where this is wrong?

    Yes. Instructions said use Terminal on Windows - get it from the app store. It does matter!
    Last edited by A_n_g_e_l_a; 1st Jul 2024 at 11:29.
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  15. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by whs912km View Post
    also: the same script hell3.py work also with chromium based browser, i get the key, with copy as curl(bash) and paste CRTL+V (not Z!)
    Yes. There are two scripts each is different. I've said this many times.
    Originally Posted by whs912km View Post
    instead allhell3.py (the right script for chromium based as you can says) does not work !!
    with my chromium based browser, copy lic url as curl(bash) and paste with CRTL+V i get same error from my post 32

    with same browser and same script copy lic url as curl(bash) and paste with CRTL+Z (as your script script says) i get a mess:

    All this stuff has created confusion for me, for a tool that new one for me
    Suggest flower arranging; it is much easier.
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  16. There's a python library for interacting with the clipboard.
    https://pypi.org/project/pyperclip/

    Might help with these copy/pasting issues.
    Quote Quote  
  17. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by whs912km View Post
    i know CTRL+V is paste and CTRL+Z is one operation back,
    No ctrl+v pastes, and ctrl+Z ends the input. Technically you could ctrl+V and do another ctrl+V before ending the inputs with ctrl+z. Ctrl+V and ctrl+Z are two actions not one process.
    Originally Posted by whs912km View Post
    Having said that, and admittedly I'm wrong (again)
    Yes. So many times and is all your mis-reading and misunderstanding of the information already given or you not reading at all. The fact that you charged in and put a curl through curlconverter .com is staggering. And then you tried to run it in WKS-KEYS because that's what you always do! I understand the language difficulties but google translate works well enough. Shame on you for your lack of care.

    Next time read, check you understand, and read again to make sure, But, preferably, share the love and use someone else's software. .... Please!!!
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  18. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by achilles View Post
    There's a python library for interacting with the clipboard.
    https://pypi.org/project/pyperclip/

    Might help with these copy/pasting issues.
    No, they can add extraneous characters in this instance. Use not advised.
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  19. That's just one library. There are others. You tried them all I guess.
    Quote Quote  
  20. for me work only hell3.py and not allhell3.py (with CTRL+V got error, with CTRL+Z got data mess)

    hell3.py work in my win SO and on chromium browser AND FF (or waterfox for me)
    with copy curl(bash) chromium or curl(posix) on FF
    then paste curl data with CTRL+V into cdm window and press ENTER. and i get the key
    for both browser. anyway solved from my side
    Quote Quote  
  21. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by achilles View Post
    That's just one library. There are others. You tried them all I guess.
    It was me that introduced pyperclip to VH, a year or so ago. I've used it in a number of earlier scripts and dealt with the outcome. It confused the hell out of those that enjoy confusion as a lifestyle.

    I feel that the current process is easy enough to understand without adding extra complications for the troops. Technically there may be backslashes in the copy (an escape character) and sometimes the escapes themselves get escaped - the escaped characters grow in number,
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  22. another consideration: maybe my mess is also due to the fact that i don't use the window terminal from microsoft store, but cmder, terminal from GitHub. maybe little different

    anyway, now all work fine for me too.

    thank you for your wondeful script, thanks for support, and sorry again for all my useless post (but isn't easy for everyone). cheers
    Last edited by whs912km; 2nd Jul 2024 at 03:11.
    Quote Quote  
  23. Originally Posted by A_n_g_e_l_a View Post
    Originally Posted by AmorAprca View Post
    Can you see where this is wrong?
    Can you see where this is wrong?

    Yes. Instructions said use Terminal on Windows - get it from the app store. It does matter!
    thank you
    Downloaded a terminal App in the Microsoft store.
    It runs.
    Although the error was reported later, it does not matter
    I still need to save it to another location.
    Thanks again for your program.
    Image
    [Attachment 80376 - Click to enlarge]

    Image
    [Attachment 80377 - Click to enlarge]

    I can read re's commands and use re's commands.
    It's no big deal that there is a running error in the back
    Thanks again for your program.
    Thank you!!!
    A_n_g_e_l_a!!!
    Quote Quote  
  24. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Originally Posted by AmorAprca View Post
    Thanks again for your program.
    Thank you!!!
    A_n_g_e_l_a!!!
    Some helper program is missing. Is RE actually in your Path environment variable? if it is, then check all the helper programs are installed - see list in start.html
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  25. @ AmorAprca

    you can add RE into env path as Angela says, or also edit script on m3u8dl line and add your path to RE
    only use \\ in your path, like m3u8dl = 'C:\\folder\\folder\\N_m3u8DL-RE.exe'
    and need to have also ffmpeg, mkvmerge and mp4decrypt on same folder with RE
    Quote Quote  
  26. Member
    Join Date
    Feb 2022
    Location
    Search the forum first!
    Search PM
    Sites that use one-time-only tokens

    If a site uses a one-time-only token then the browser uses it up. In normal use, that is.

    However, in the browser there is a menu item in the Web-Tools window, (shift+ctrl+c), under the network tab, that allows you to disable a particular request for a url. So if you allow the browser to load properly once, find the url for the license and then block it requesting, then Ctrl+R to reload the page, it will deliver you a license url with an unused token. Allhell3.py will work in these circumstances BUT ONLY with your own CDM. The one in the kit is an emulated CDM and will not work on heavily protected sites.

    For those boys that always assume that when a script does not work, it must be the fault of the script, kindly think again!

    For this script, technically there is absolutely no difference in the manner the script presents requests to the license server from the way the browser does. If it works in your browser, whether with or without subscription or sign-in, then it will work in the script.

    It will only fail because of operator error. Your error! Just remember that before you post.

    (I posted most of this in another thread; it seems more useful here)
    Noob Starter Pack. Just download everything DRM.
    https://files.videohelp.com/u/301890/hellyes2.zip
    Quote Quote  
  27. Originally Posted by A_n_g_e_l_a View Post
    Originally Posted by AmorAprca View Post
    Thanks again for your program.
    Thank you!!!
    A_n_g_e_l_a!!!
    Some helper program is missing. Is RE actually in your Path environment variable? if it is, then check all the helper programs are installed - see list in start.html
    Image
    [Attachment 80394 - Click to enlarge]

    Image
    [Attachment 80395 - Click to enlarge]


    I succeeded, but I don't like configuring the environment very much, which will make me feel very troublesome. I like configuring the absolute path.
    Thank you at last
    A_n_g_e_l_a!!!

    You can add the code of -mt in the place where you edit re and download it at the same time.
    The second one is whether you can write a code of-use --use-shaka-packager. I feel that some websites may have poor compatibility with mp4decrypt.
    With shaka-packager, I feel the compatibility will be better.
    The third hope is to add a --save-dir command. Of course, you don't need to change the location, but it is very troublesome to change the environment configuration, which is why I like the absolute path.
    Fourth, you can choose on --auto-select to automatically select the best stream.

    The current program is very good, and I respect other people's code programs very much. This is more like a work of art to me. I can only use or use it, and I have no right to modify it, because I respect every effort.
    This is my personal opinion.
    Thank you again.
    A_n_g_e_l_a!!!
    Quote Quote  
  28. Originally Posted by lomero View Post
    @ AmorAprca

    you can add RE into env path as Angela says, or also edit script on m3u8dl line and add your path to RE
    only use \\ in your path, like m3u8dl = 'C:\\folder\\folder\\N_m3u8DL-RE.exe'
    and need to have also ffmpeg, mkvmerge and mp4decrypt on same folder with RE
    thank you
    It's my favorite absolute path
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!