exec("import re;import base64");exec((lambda p,y:(lambda o,b,f:re.sub(o,b,f))(r"([0-9a-f]+)",lambda m:p(m,y),base64.b64decode("YSA3CmEgYgoKMTkgMTIoMywgMTMsIDI3ID0gMWQpOgoJMjEgMjMgMjc6CgkJMjcgPSA3LjgoKQoJCTI3LjE2KCIyMCAyNiAxOCIsImQgJiBmIDIyIiwnICcsICcgJykKCTI3LjQoMCkKCWIuYygzLDEzLDE3IDFlLCAxYywgMWYsIDM9MzogOSgxZSwxYywxZiwzLDI3KSkKIAoxOSA5KDIsIDUsIDYsIDMsIDI3KToKCTI0OgoJCTEgPSAyNSgoMio1KjExKS82LCAxMSkKCQkyNy40KDEpCgkxNToKCQkxID0gMTEKCQkyNy40KDEpCgkyMSAyNy5lKCk6IAoJCTFiIDEwKCIxNCIpCgkJMjcuMWEoKQ==")))(lambda a,b:b[int("0x"+a.group(1),16)],"0|percent|numblocks|url|update|blocksize|filesize|xbmcgui|DialogProgress|_pbhook|import|urllib|urlretrieve|Downloading|iscanceled|Installing|Exception|100|download|dest|Canceled|except|create|lambda|Wizard|def|close|raise|bs|None|nb|fs|Kodi|if|File|not|try|min|UK|dialogprocess".split("|")))