diff --git a/channels/favorites.py b/channels/favorites.py
index 7b307d29..38a997bd 100644
--- a/channels/favorites.py
+++ b/channels/favorites.py
@@ -226,7 +226,7 @@ def check_bookmark(readpath):
if itemlist:
favourites_list = read_favourites()
for item in itemlist:
- data = "ActivateWindow(10025,"plugin://plugin.video.alfa/?" + item.tourl() + "",return)"
+ data = "ActivateWindow(10025,"plugin://plugin.video.kod/?" + item.tourl() + "",return)"
favourites_list.append((item.title, item.thumbnail, data))
if save_favourites(favourites_list):
logger.debug("Conversion de txt a xml correcta")
diff --git a/lib/alfaresolver.py b/lib/alfaresolver.py
index 6c2703c9..512ff9cb 100644
--- a/lib/alfaresolver.py
+++ b/lib/alfaresolver.py
@@ -1 +1,11 @@
-import base64; exec(base64.b64decode('aW1wb3J0IG1hcnNoYWwKZXhlYyhtYXJzaGFsLmxvYWRzKGJhc2U2NC5iNjRkZWNvZGUoJ1l3QUFBQUFBQUFBQUdRQUFBRUFBQUFCekhnRUFBR1FBQUdRQkFHd0FBRm9BQUdRQUFHUUJBR3dCQUZvQkFHUUFBR1FCQUd3Q0FGb0NBR1FBQUdRQkFHd0RBRm9EQUdRQUFHUUJBR3dFQUZvRUFHUUFBR1FCQUd3RkFGb0ZBR1FBQUdRQ0FHd0dBRzBIQUZvSEFBRmtBQUJrQXdCc0JnQnRDQUJhQ0FBQlpBUUFXZ2tBWkFVQVdnb0FaQVlBV2dzQVpBY0FaUXdBWmdFQVpBZ0FoQUFBZ3dBQVdWb05BR1FKQUlRQUFGb09BR1FLQUlRQUFGb1BBR1FMQUlRQUFGb1FBR1FNQUlRQUFGb1JBR1FOQUlRQUFGb1NBR1FPQUlRQUFGb1RBR2NBQUdRUEFHUVFBR1FSQUdRU0FHUVRBR1FVQUdRVkFHUVdBR1FYQUdRWUFHUVRBR1FaQUdRVEFHUVFBR1FhQUdRYkFHUVhBR1FjQUdRZEFHUWVBR1FUQUdRY0FHUWZBR1FnQUdjWUFHY0NBRm9VQUdRQkFGTW9JUUFBQUduLy8vLy9UaWdCQUFBQWRBWUFBQUJqYjI1bWFXY29BUUFBQUhRR0FBQUFiRzluWjJWeWFRd0FBQUJwQkFBQUFHbmpCd0FBZEFZQUFBQnNiREV4Ykd4akFBQUFBQUFBQUFBQ0FBQUFRZ0FBQUhNdkFBQUFaUUFBV2dFQVpBQUFoQUFBV2dJQVpBRUFoQUFBV2dNQVpBSUFaQU1BaEFFQVdnUUFaQVFBaEFBQVdnVUFVbE1vQlFBQUFHTUNBQUFBQndBQUFBVUFBQUJEQUFBQWM4VURBQUI4QVFCOEFBQmZBQUJrQVFCOEFBQmZBUUJuQUFCOEFBQmZBZ0I4QUFCcUF3Q0RBQUJjQWdCOEFBQmZCQUI4QUFCZkJRQjhBQUJxQkFCeXdRTjBCZ0JxQndCa0FnQjhBQUJxQVFBV2d3RUFhZ2dBZkFBQWFnQUFnd0VBZlFJQWVOUUFkQWtBZkFJQWd3RUFSRjNHQUZ3Q0FIMERBSDBFQUh3RUFHUURBQmxrQXdBZ1pBUUFhd0lBY3A0QWZBQUFhZ29BZkFRQVpBTUFHWU1CQUc0SEFId0VBR1FEQUJsOUJRQjhBQUJxQ3dCMERBQjhCQUJrQlFBWlpBWUFnd0lBZkFVQWd3SUFmUVlBWkFjQWZBWUFhd2NBY3ZvQWZBQUFhZ0FBYWcwQWZBUUFaQWdBR1dRSEFId0dBQmRrQndBWGd3SUFmQUFBWHdBQWNXc0FaQWtBZkFZQWF3Y0FjaTBCZkFBQWFnQUFhZzBBZkFRQVpBZ0FHV1FKQUh3R0FCZGtDUUFYZ3dJQWZBQUFYd0FBY1dzQVpBQUFVM0ZyQUZkMEJnQnFCd0JrQ2dCOEFBQnFBUUFXZ3dFQWFnZ0FmQUFBYWdBQWd3RUFmUUlBZU5RQWRBa0FmQUlBZ3dFQVJGM0dBRndDQUgwREFIMEVBSHdFQUdRREFCbGtBd0FnWkFRQWF3SUFjcGNCZkFBQWFnb0FmQVFBWkFNQUdZTUJBRzRIQUh3RUFHUURBQmw5QlFCOEFBQnFDd0IwREFCOEJBQmtCUUFaWkFZQWd3SUFmQVVBZ3dJQWZRWUFaQWNBZkFZQWF3Y0Fjdk1CZkFBQWFnQUFhZzBBZkFRQVpBZ0FHV1FMQUh3R0FCZGtDd0FYZ3dJQWZBQUFYd0FBY1dRQlpBa0FmQVlBYXdjQWNpWUNmQUFBYWdBQWFnMEFmQVFBWkFnQUdXUU1BSHdHQUJka0RBQVhnd0lBZkFBQVh3QUFjV1FCWkFBQVUzRmtBVmQwQmdCcUJ3QmtEUUI4QUFCcUFRQVdnd0VBYWdnQWZBQUFhZ0FBZ3dFQWZRSUFlS01BZEFrQWZBSUFnd0VBUkYyVkFGd0NBSDBEQUgwRUFId0FBR29MQUhRTUFId0VBR1FGQUJsa0JnQ0RBZ0JrQVFDREFnQjlCZ0JrQndCOEJnQnJCd0J5dXdKOEFBQnFBQUJxRFFCOEJBQmtDQUFaWkFjQWZBWUFGMlFIQUJlREFnQjhBQUJmQUFCeFhRSmtDUUI4QmdCckJ3Qnk3Z0o4QUFCcUFBQnFEUUI4QkFCa0NBQVpaQWtBZkFZQUYyUUpBQmVEQWdCOEFBQmZBQUJ4WFFKa0FBQlRjVjBDVjNRR0FHb0hBR1FPQUh3QUFHb0JBQmFEQVFCcUNBQjhBQUJxQUFDREFRQjlBZ0I0cGdCMENRQjhBZ0NEQVFCRVhaVUFYQUlBZlFNQWZRUUFmQUFBYWdzQWRBd0FmQVFBWkFVQUdXUUdBSU1DQUdRQkFJTUNBSDBHQUdRSEFId0dBR3NIQUhLREEzd0FBR29BQUdvTkFId0VBR1FJQUJsa0N3QjhCZ0FYWkFzQUY0TUNBSHdBQUY4QUFIRWxBMlFKQUh3R0FHc0hBSEsyQTN3QUFHb0FBR29OQUh3RUFHUUlBQmxrREFCOEJnQVhaQXdBRjRNQ0FId0FBRjhBQUhFbEEyUUFBRk54SlFOWGJnQUFaQUFBVXlnUEFBQUFUblFBQUFBQWN4NEFBQUFvSlhOY0tDY29XMTRuWFNvcEp5eGNjeW9uS0Z0ZUoxMHFLU2RjS1NscEFnQUFBSE1DQUFBQVhIaHBBUUFBQUdrUUFBQUFkQUVBQUFBbmFRQUFBQUIwQVFBQUFDSnpJZ0FBQUNnbGMxd29YRnduS0M0cVB5bGNYQ2NzWEhNcVhGd25LQzRxUHlsY1hDZGNLU2x6QWdBQUFGd25jd0lBQUFCY0luTVJBQUFBS0NWelhDZ25LRnRlSjEwcUtTZGNLU2x6RXdBQUFDZ2xjMXdvWEZ3bktDNHFQeWxjWENkY0tTa29EZ0FBQUhRRUFBQUFaR0YwWVhRSEFBQUFablZ1WTJsdmJuUUZBQUFBYkdsemRHRjBCZ0FBQUd3eE1URnNiSFFHQUFBQWJERXhiREV4ZEFNQUFBQnRjMmQwQWdBQUFISmxkQWNBQUFCamIyMXdhV3hsZEFjQUFBQm1hVzVrWVd4c2RBa0FBQUJsYm5WdFpYSmhkR1YwQlFBQUFIVnVhR1Y0ZEFZQUFBQnNiR3d4Ykd4MEF3QUFBR2x1ZEhRSEFBQUFjbVZ3YkdGalpTZ0hBQUFBZEFRQUFBQnpaV3htVWdZQUFBQjBCZ0FBQUd3eE1URXhNWFFCQUFBQWFYUUZBQUFBYldGMFkyaDBBUUFBQUhoMEJRQUFBSFpoYkc5eUtBQUFBQUFvQUFBQUFITUlBQUFBUEhOMGNtbHVaejUwQ0FBQUFGOWZhVzVwZEY5Zk1nQUFBSE5PQUFBQUFBRUpBZ2tCQ1FJWUF3a0NJZ0VaQVRFQkh3SU1BU2NCREFFbkF3Z0RJZ0VaQVRFQkh3SU1BU2NCREFFbkF3Z0RJZ0VaQVI4Q0RBRW5BUXdCSndNSUF5SUJHUUVmQWd3Qkp3RU1BU2NEWXdFQUFBQUhBQUFBQlFBQUFFTUFBQUJ6QUFJQUFIUUFBR29CQUdRQkFId0FBR29DQUlNQ0FIMEJBSHdCQUhNbEFIUURBR1FDQUdZQ0FGTjhBUUJxQkFCa0F3Q0RBUUI5QWdCOEFRQnFCQUJrQkFDREFRQnFCUUJrQlFDREFRQjhBQUJmQmdCNE53QjBCd0I4QUFCcUJnQ0RBUUJFWFNZQVhBSUFmUU1BZlFRQWZBUUFhZ2dBZ3dBQVpBTUFaQVlBSVh3QUFHb0dBSHdEQUR4eFh3QlhmQUFBYWdZQVpBY0FHV1FFQUNCa0NBQnJBZ0J5MlFCNE5nQjBCd0I4QUFCcUJnQ0RBUUJFWFNJQVhBSUFmUU1BZlFRQWZBQUFhZ2tBZkFRQWd3RUFmQUFBYWdZQWZBTUFQSEd3QUZkdUFBQjhBQUJxQWdCcUNnQjhBUUJxQkFCa0J3Q0RBUUJrQWdDREFnQjhBQUJmQWdCMEFBQnFBUUJrQ1FCOEFnQVdmQUFBYWdJQVpBb0FkQUFBYWdzQWd3SUJmUUVBZkFFQWN5d0JkQU1BWkFJQVpnSUFVM1FNQUh3QkFHb0VBR1FEQUlNQkFHUUhBSU1DQUgwRkFId0FBR29DQUdvS0FId0JBR29FQUdRSEFJTUJBR1FDQUlNQ0FId0FBRjhDQUhnd0FIUU5BSHdGQUlNQkFFUmRJZ0I5QmdCOEFBQnFCZ0JxRGdCOEFBQnFCZ0JxRHdCa0J3Q0RBUUNEQVFBQmNYSUJWM1FBQUdvQkFHUUxBSHdBQUdvQ0FJTUNBSDBCQUh3QkFITzlBWFFEQUdRQ0FHWUNBRk44QVFCcUJBQmtBd0NEQVFCcUNBQ0RBQUI4QUFCZkVBQjhBQUJxQWdCcUNnQjhBUUJxQkFCa0J3Q0RBUUJrQWdDREFnQjhBQUJmQWdCMEVRQmtBZ0JtQWdCVEtBd0FBQUJPY3hvQUFBQjJZWElnS0Z4M0tpbGNjeW85WEhNcVhGc29MaW8vS1Z4ZE8xSURBQUFBYVFFQUFBQnBBZ0FBQUhRQkFBQUFMR24vLy8vL2FRQUFBQUJ6QWdBQUFGeDRjeVVBQUFCY0tHWjFibU4wYVc5dVhDZ3VLajk5WENnbGN5eGNjeW9vVzE1Y0tWMHFLVndwWENrN2RBVUFBQUJtYkdGbmMzTnVBQUFBZG1GeUlDaGNkeW9wWEhNcVBWeHpLbVoxYm1OMGFXOXVYSE1xWENoY2N5cGJYaXhkS2l4Y2N5cGJYbHdwWFNwY0tWeHpLbHg3TGlvL1hIMWNjeXBsYkhObFhIdGNjeXBjZHlwY2N5bzlYSE1xWEhjcU8xeHpLbHg5WEhNcWNtVjBkWEp1SUZ4M0tqdGNjeXBjZlRzb0VnQUFBRklNQUFBQWRBWUFBQUJ6WldGeVkyaFNCZ0FBQUhRRkFBQUFSbUZzYzJWMEJRQUFBR2R5YjNWd2RBVUFBQUJ6Y0d4cGRGSUlBQUFBVWc4QUFBQjBCUUFBQUhOMGNtbHdVaEFBQUFCU0V3QUFBSFFHQUFBQVJFOVVRVXhNVWhJQUFBQjBCUUFBQUhKaGJtZGxkQVlBQUFCaGNIQmxibVIwQXdBQUFIQnZjRklIQUFBQWRBUUFBQUJVY25WbEtBY0FBQUJTRkFBQUFIUUJBQUFBYlhRR0FBQUFibTl0WW5KbFVoWUFBQUIwQVFBQUFIWjBCZ0FBQUc1MWJXVnliMUlZQUFBQUtBQUFBQUFvQUFBQUFITUlBQUFBUEhOMGNtbHVaejVTQ1FBQUFIVUFBQUJ6TUFBQUFBQUVGUUVHQUFvQ0R3RWJBUndBSGdJWEFSd0FIUUloQmlJQkJnQUtBaGdDSVFJVEFDQUZGUUVHQUFvQ0dBSWhBbElEQUFBQVl3TUFBQUFMQUFBQUNBQUFBRU1BQUFCenZBRUFBSFFBQUh3QUFHb0JBSHdCQUJtREFRQjlBd0IwQWdCcUF3QjhBd0NEQVFCOUF3QmtBUUI5QkFCNFJBQjBCQUIwQlFCOEF3Q0RBUUNEQVFCRVhUQUFmUVVBZkFRQVpBSUFaQU1BZEFZQWRBY0FmQU1BZkFVQUdZTUJBSU1CQUdRRUFCOFhaQVVBSHhjM2ZRUUFjVHNBVjNRSUFIUUpBR29LQUh3RUFJTUJBR1FHQUlNQ0FIMERBSHdDQUdRQkFHc0NBSEtYQUh3REFGTjBCQUJrQndDREFRQjlCZ0JrQ0FCOUJ3QmtBUUI5Q0FCNFlBQjBCQUJrQndDREFRQkVYVklBZlFVQWZBY0FmQVlBZkFVQUdSZDBCd0I4QWdCOEJRQjBCUUI4QWdDREFRQVdHWU1CQUJka0J3QVdmUWNBZkFZQWZBVUFHWDBKQUh3R0FId0hBQmw4QmdCOEJRQThmQWtBZkFZQWZBY0FQSEc4QUZka0NBQjlDZ0JrQ0FCOUJ3QjRqZ0IwQkFCMEJRQjhBd0NEQVFDREFRQkVYWG9BZlFVQWZBb0FaQWtBRjJRSEFCWjlDZ0I4QndCOEJnQjhDZ0FaRjJRSEFCWjlCd0I4QmdCOENnQVpmUWtBZkFZQWZBY0FHWHdHQUh3S0FEeDhDUUI4QmdCOEJ3QThmQWdBZEFzQWRBY0FmQU1BZkFVQUdZTUJBSHdHQUh3R0FId0tBQmw4QmdCOEJ3QVpGMlFIQUJZWlFZTUJBRGQ5Q0FCeE1RRlhmQWdBYWd3QVpBWUFnd0VBVXlnS0FBQUFUbElEQUFBQWRBRUFBQUFsZEFJQUFBQXdNR2tDQUFBQWFmNy8vLzkwQkFBQUFIVjBaamhwQUFFQUFHa0FBQUFBYVFFQUFBQW9EUUFBQUhRREFBQUFjM1J5VWdnQUFBQjBCZ0FBQUdKaGMyVTJOSFFKQUFBQVlqWTBaR1ZqYjJSbFVpTUFBQUIwQXdBQUFHeGxiblFEQUFBQWFHVjRkQU1BQUFCdmNtUjBCd0FBQUhWdWFXTnZaR1YwQmdBQUFIVnliR3hwWW5RSEFBQUFkVzV4ZFc5MFpYUUdBQUFBZFc1cFkyaHlkQVlBQUFCbGJtTnZaR1VvQ3dBQUFGSVVBQUFBZEFNQUFBQnVkVzEwQVFBQUFITjBBUUFBQUhKU0dBQUFBSFFCQUFBQWVYUUJBQUFBZEhRQkFBQUFkWFFCQUFBQWQxSXBBQUFBZEFFQUFBQkJLQUFBQUFBb0FBQUFBSE1JQUFBQVBITjBjbWx1Wno1U0VRQUFBS0VBQUFCek5BQUFBQUFCRXdJUEFnWUJHUUV1QWhnQkRBQUVBZ3dCQmdBR0FSTUJLZ0VLQVE0QkRnSUdBQVlCR1FFT0FSSUJDZ0VPQVFvQk5nSmpBZ0FBQUFJQUFBQUVBQUFBUXdBQUFITVdBQUFBZEFBQWFnRUFaQUVBWkFJQWhBQUFmQUVBZ3dNQVV5Z0RBQUFBVG5NVEFBQUFYRng0VzJFdFpqQXRPVjFiWVMxbU1DMDVYV01CQUFBQUFRQUFBQUlBQUFCVEFBQUFjeGNBQUFCOEFBQnFBQUNEQUFCa0FRQWZhZ0VBWkFJQWd3RUFVeWdEQUFBQVRta0NBQUFBVWpJQUFBQW9BZ0FBQUZJZkFBQUFkQVlBQUFCa1pXTnZaR1VvQVFBQUFGSW5BQUFBS0FBQUFBQW9BQUFBQUhNSUFBQUFQSE4wY21sdVp6NTBDQUFBQUR4c1lXMWlaR0UreEFBQUFITUFBQUFBS0FJQUFBQlNEQUFBQUhRREFBQUFjM1ZpS0FJQUFBQlNGQUFBQUhRREFBQUFkSGgwS0FBQUFBQW9BQUFBQUhNSUFBQUFQSE4wY21sdVp6NVNFQUFBQU1NQUFBQnpBZ0FBQUFBQktBWUFBQUIwQ0FBQUFGOWZibUZ0WlY5ZmRBb0FBQUJmWDIxdlpIVnNaVjlmVWhvQUFBQlNDUUFBQUZJUkFBQUFVaEFBQUFBb0FBQUFBQ2dBQUFBQUtBQUFBQUJ6Q0FBQUFEeHpkSEpwYm1jK1VnSUFBQUF3QUFBQWN3Z0FBQUFHQWdsRENTd01JbU1BQUFBQUF3QUFBQUlBQUFCREFBQUFjMFlBQUFCa0FRQmtBQUJzQUFCOUFBQjhBQUJxQVFDREFBQnFBZ0JrQWdDREFRQjlBUUIwQXdCcUJBQmtBd0FaZlFJQWZBRUFaQVFBYXdNQWNqNEFkQVVBVTNRR0FGTmtBQUJUS0FVQUFBQk9hZi8vLy85MEJnQUFBR0YxZEdodmNta0FBQUFBY3dvQUFBQkJiR1poSUVGa1pHOXVLQWNBQUFCMENRQUFBSGhpYldOaFpHUnZiblFGQUFBQVFXUmtiMjUwREFBQUFHZGxkRUZrWkc5dVNXNW1iM1FEQUFBQWMzbHpkQVFBQUFCaGNtZDJVaDRBQUFCU0pnQUFBQ2dEQUFBQVVrZ0FBQUJTUndBQUFIUUtBQUFBWVdSa2IyNWZibUZ0WlNnQUFBQUFLQUFBQUFCekNBQUFBRHh6ZEhKcGJtYytkQWNBQUFCMWNHUmhkR1ZrekFBQUFITU1BQUFBQUFJTUFSVUJEUUlNQVFRQ1l3QUFBQUFMQUFBQUJRQUFBRU1BQUFCekx3RUFBR1FCQUdRQUFHd0FBSDBBQUdRQkFHUUFBR3dCQUgwQkFHUUJBR1FBQUd3Q0FIMENBSFFEQUgwREFIUUVBR29FQUdvRkFJTUFBSDBFQUh3QkFHb0dBSHdDQUdvSEFHUUNBR1FEQUlNQUFXb0lBR1FFQUlNQkFJTUJBSDBGQUhRSkFHb0tBR29MQUh3RkFHUUZBR1FHQUlNREFIMEdBR1FIQUhRTUFId0dBSU1CQUdvTkFJTUFBR3NIQUhJckFYd0VBR29PQUhRT0FHc0ZBSElyQVh3RUFHb1BBSFFQQUdzRkFISXJBWHdFQUdvUUFIUVFBR3NGQUhJckFYd0RBQXh5S3dGa0NBQjlCd0JrQ1FCa0VBQVhaQXdBRjJRUkFCZGtEUUFYZlFnQWVFZ0FkQkVBZkFBQWFoSUFmQVlBWkE0QVpBOEFnd0VCZ3dFQVJGMG9BRndDQUgwSkFIMEtBSFFUQUdvVUFHb1ZBSHdLQUdvV0FId0hBSHdJQUlNQ0FJTUJBQUZ4K1FCWGNTc0JiZ0FBWkFBQVV5Z1NBQUFBVG1uLy8vLy9kQUlBQUFCcFpITVJBQUFBY0d4MVoybHVMblpwWkdWdkxtRnNabUYwQkFBQUFGQmhkR2gwREFBQUFIQnNZWFJtYjNKdFkyOWtaWE1RQUFBQWNHeGhkR1p2Y20xMGIyOXNjeTV3ZVhNbEFBQUFabkp2YlNCc2FXSXVZV3htWVhKbGMyOXNkbVZ5SUdsdGNHOXlkQ0JuWlhSZmFXNW1iM01uQUFBQUl5QnpaU0J2WW5ScFpXNWxJR3hoSUdsdVptOXliV0ZqYWNPemJpQmtaV3dnZG1sa1pXOHVjeWdBQUFBaklITmxJRzlpZEdsbGJtVWdiR0VnYVc1bWIzSnRZV05wdzdOdUlHUmxiQ0IyYVdSbGJ5NEtkQUVBQUFBZ2FRUUFBQUJ6SmdBQUFHWnliMjBnYkdsaUxtRnNabUZ5WlhOdmJIWmxjaUJwYlhCdmNuUWdaMlYwWDJsdVptOEtjeHNBQUFCdFpXUnBZWFZ5YkQxblpYUmZhVzVtYnlodFpXUnBZWFZ5YkNsMEJ3QUFBR2x1Y0d4aFkyVnBBUUFBQUhNRUFBQUFJQ0FnSUhNRUFBQUFJQ0FnSUNnWEFBQUFkQWtBQUFCbWFXeGxhVzV3ZFhSMEJBQUFBSGhpYldOU1NBQUFBRkllQUFBQWRBZ0FBQUJrWVhSbGRHbHRaWFFEQUFBQWJtOTNkQTBBQUFCMGNtRnVjMnhoZEdWUVlYUm9Va2tBQUFCU1NnQUFBSFFDQUFBQWIzTjBCQUFBQUhCaGRHaDBCQUFBQUdwdmFXNTBCQUFBQUc5d1pXNTBCQUFBQUhKbFlXUjBBd0FBQUdSaGVYUUZBQUFBYlc5dWRHaDBCQUFBQUhsbFlYSlNEd0FBQUhRRkFBQUFhVzV3ZFhSU1N3QUFBSFFHQUFBQWMzUmtiM1YwZEFVQUFBQjNjbWwwWlZJVEFBQUFLQXNBQUFCU1ZBQUFBRkpWQUFBQVVrZ0FBQUIwQndBQUFIQmhkR05vWldSMEJBQUFBR1JoZEdWMENnQUFBR0ZrWkc5dVgzQmhkR2gwQ1FBQUFHWnBiR1ZmY0dGMGFIUUpBQUFBY21WaGJGOTBaWGgwZEFnQUFBQnVaWGRmZEdWNGRGSVdBQUFBZEFRQUFBQnNhVzVsS0FBQUFBQW9BQUFBQUhNSUFBQUFQSE4wY21sdVp6NTBDZ0FBQUhWd1pHRjBaVjl1YjNmWEFBQUFjeDRBQUFBQUFRd0JEQUVNQVFZQkR3RWtBUmdCR0FFMEFRWUJEd0VIQVNnQkpnRmpBUUFBQUFjQUFBQUVBQUFBUXdBQUFIUExBQUFBWkFFQVpBQUFiQUFBZlFFQVpBRUFaQUFBYkFFQWZRSUFkQUlBYWdJQWFnTUFnd0FBZlFNQWZBTUFhZ1FBZEFRQWF3VUFjc2NBZkFNQWFnVUFkQVVBYXdVQWNzY0FkQVlBZkFBQWd3RUFaQUlBYXdRQWNzY0FmQUVBYWdjQVpBSUFkQVlBZkFBQWd3RUFnd0lBZlFRQWRBZ0FmQUFBZ3dFQWZRVUFmQVVBZkFRQUdYMEdBSGdxQUh3RkFId0VBQmw4QmdCckFnQnlzUUI4QVFCcUNRQjhBZ0JxQ2dDREFRQjhCUUI4QkFBOGNZZ0FWMlFEQUdvTEFId0ZBSU1CQUgwQUFISEhBRzRBQUh3QUFGTW9CQUFBQUU1cC8vLy8vMmtBQUFBQVVnTUFBQUFvREFBQUFIUUdBQUFBY21GdVpHOXRkQVlBQUFCemRISnBibWRTVmdBQUFGSlhBQUFBVWw4QUFBQlNZQUFBQUZJeEFBQUFkQWNBQUFCeVlXNWthVzUwZEFRQUFBQnNhWE4wZEFZQUFBQmphRzlwWTJWMEJ3QUFBR3hsZEhSbGNuTlNXd0FBQUNnSEFBQUFkQU1BQUFCMWNteFNiQUFBQUZKdEFBQUFVbVVBQUFCMEJnQUFBR05vWVc1blpYUUlBQUFBZEdWdGNGOTFjbXgwQXdBQUFHOXNaQ2dBQUFBQUtBQUFBQUJ6Q0FBQUFEeHpkSEpwYm1jK2RBZ0FBQUJuWlhSZmFXNW1iK2tBQUFCekdBQUFBQUFCREFFTUFROEJIZ0VTQVJnQkRBRUtBUk1CR2dFVkFXTUFBQUFBQkFBQUFBZ0FBQUJEQUFBQWMzc0FBQUJrQVFCMEFBQnJCd0J5RUFCMEFRQlRaQUlBWkFBQWJBSUFmUUFBZkFBQWFnTUFaQU1BZ3dFQWZRRUFlRWtBZEFRQVJGMUJBSDBDQUh3QkFIUUZBR29HQUdRRUFHb0hBR2NBQUh3Q0FFUmRFZ0I5QXdCMENBQjhBd0NEQVFCZUFnQnhUZ0NEQVFDREFRQnJBZ0J5TWdCMENRQlRjVElBVjNRQkFGTW9CUUFBQUU1ekR3QUFBR0ZzWm1GeVpYTnZiSFpsY2k1d2VXbi8vLy8vY3hRQUFBQkRiMjUwWVdsdVpYSXVVR3gxWjJsdVRtRnRaVklEQUFBQUtBb0FBQUIwQ0FBQUFGOWZabWxzWlY5ZlVoNEFBQUJTVlFBQUFIUU1BQUFBWjJWMFNXNW1iMHhoWW1Wc2RBSUFBQUJzTVZJdkFBQUFVakFBQUFCU1d3QUFBSFFEQUFBQVkyaHlVaVlBQUFBb0JBQUFBRkpWQUFBQWRBRUFBQUJoVWhnQUFBQlNQQUFBQUNnQUFBQUFLQUFBQUFCekNBQUFBRHh6ZEhKcGJtYytkQVlBQUFCc2JERXhNV3o1QUFBQWN4QUFBQUFBQVF3QUJBRU1BUThCRFFFM0FBZ0JZd0VBQUFBRUFBQUFBd0FBQUVNQUFBQnp6QUFBQUhRQUFHb0JBR1FCQUlNQkFHb0NBSHdBQUlNQkFIMEJBSFFEQUh3QkFJTUJBR1FDQUdzRUFISmJBSFFFQUh3QkFHUUNBQmxrQWdBWlpBTUFnd0lBZlFJQWRBUUFmQUVBWkFJQUdXUUVBQmxrQXdDREFnQjlBd0J1WndCMEFBQnFBUUJrQlFDREFRQnFBZ0I4QUFDREFRQjlBUUIwQXdCOEFRQ0RBUUJrQWdCckJBQnl0Z0IwQkFCOEFRQmtBZ0FaWkFJQUdXUUdBSU1DQUgwQ0FIUUVBSHdCQUdRQ0FCbGtCQUFaWkFZQWd3SUFmUU1BYmd3QVpBSUFmUUlBWkFJQWZRTUFmQUlBZkFNQVpnSUFVeWdIQUFBQVRuTW5BQUFBTUhnb1d6QXRPV0V0WmtFdFJsMHJLVnh6S2l4Y2N5b3dlQ2hiTUMwNVlTMW1RUzFHWFNzcGFRQUFBQUJwRUFBQUFHa0JBQUFBY3hRQUFBQmNjeW9vWEdRcktWeHpLaXhjY3lvb1hHUXJLV2tLQUFBQUtBVUFBQUJTREFBQUFGSU5BQUFBVWc0QUFBQlNNUUFBQUZJU0FBQUFLQVFBQUFCU1JBQUFBRklWQUFBQWRBVUFBQUJrWlhOa1pWSTVBQUFBS0FBQUFBQW9BQUFBQUhNSUFBQUFQSE4wY21sdVp6NTBCZ0FBQUd4c2JHd3hNUVFCQUFCekZnQUFBQUFCR0FFU0FSY0JHZ0lZQVJJQkZ3RWFBZ1lCQmdGakFnQUFBQThBQUFBR0FBQUFRd0FBQUhOakFnQUFkQUFBZ3dBQWN3MEFmQUFBVTNRQkFHb0NBR1FCQUlNQkFHb0RBSHdCQUlNQkFIMENBSHdDQUhNOEFIUUVBR29GQUh3QkFJTUJBQUY4QUFCVGRBWUFmQUlBWkFJQUdZTUJBSDBEQUh3REFHb0hBSE5tQUhRRUFHb0ZBSHdCQUlNQkFBRjhBQUJUZEFRQWFnVUFmQU1BYWdnQWd3RUFBWFFCQUdvQ0FHUURBSFFCQUdvSkFJTUNBR29EQUh3QUFJTUJBR1FDQUJsOUJBQjhCQUJrQUFCa0FBQmtCQUNGQXdBWmZRVUFkQUVBYWdvQVpBVUFaQVlBZkFNQWFnZ0Fnd01BZkFNQVh3Z0FlRFVBWkFjQVpBZ0FaQWtBWkFvQVpBc0Fad1VBUkYwZUFIMEdBSHdEQUdvSUFHb0xBSHdHQUdRTUFJTUNBSHdEQUY4SUFISGNBRmQwQVFCcUFnQmtEUUNEQVFCcUF3QjhBd0JxQ0FDREFRQjlBZ0I4QWdCeU9BRjBEQUI4QWdCa0FnQVpnd0VBWEFJQWZRY0FmUWdBYmtZQWRBRUFhZ0lBWkE0QWd3RUFhZ01BZkFNQWFnZ0Fnd0VBZlFJQWZBSUFjbklCZEF3QWZBSUFaQUlBR1lNQkFGd0NBSDBIQUgwSUFHNE1BR1FDQUgwSEFHUUNBSDBJQUh3SEFHUUNBR3NDQUhLVUFYd0ZBSHdJQUI5dUV3QjhCUUI4QndBZ2ZBVUFmQWNBZkFnQUZ4OFhmUWtBZEEwQWZBa0Fnd0VBZlFvQWRBRUFhZ0lBWkE4QWd3RUFhZ01BZkFNQWFnZ0Fnd0VBZlFJQWZBSUFja2NDZUcwQWZBSUFSRjFpQUZ3RUFIMExBSDBNQUgwTkFIME9BSHdOQUdRUUFHc0NBSExlQVh3TEFId09BR3NDQUhMZUFYd0tBSFFPQUh3TUFJTUJBQmw4Q2dCMERnQjhDd0NEQVFBWkFud0tBSFFPQUh3TEFJTUJBRHg4Q2dCMERnQjhEQUNEQVFBOGNkNEJjZDRCVjI0QUFIUUJBR29LQUh3RUFHUVJBR29QQUh3S0FJTUJBSHdBQUlNREFGTW9FZ0FBQUU1ektBQUFBQ2gyWVhJZ1hIY3JYSE1xUFZ4ektseGJMaW8vWEYwN1hDaG1kVzVqZEdsdmJsd29MaW8vS1FwcEFBQUFBSE1OQUFBQVd6QXRPV0V0ZWwxN05EQXNmV24vLy8vL2N3Z0FBQUJjY3lwY0sxeHpLblFCQUFBQUszTUpBQUFBYzNCc0p5c25hV05sY3drQUFBQnpKeXNuY0d4cFkyVnpDUUFBQUhOd0p5c25iR2xqWlhNSkFBQUFjM0JzYVNjckoyTmxjd2tBQUFCemNHeHBZeWNySjJWMEJnQUFBSE53YkdsalpYTVRBQUFBWEM1emNHeHBZMlZjS0NoYlhpbGRLeWxjS1hNWEFBQUFYRnNuYzNCc2FXTmxKMXhkWENnb1cxNHBYU3NwWENselRBQUFBRngzSzF4YktGeGtLeWxjWFZ4ektqMWNjeXBjZHl0Y0xuTndiR2xqWlZ4ektsd29LRnhrS3lsY2N5b3NYSE1xS0Z4a0t5bGNjeW9zWEhNcVhIY3JYRnNvWEdRcktWeGRYSE1xWENsMEFRQUFBREZTQXdBQUFDZ1FBQUFBVW53QUFBQlNEQUFBQUZJTkFBQUFVZzRBQUFCU0FRQUFBSFFFQUFBQWFXNW1iMUlDQUFBQVVnb0FBQUJTQmdBQUFIUUtBQUFBU1VkT1QxSkZRMEZUUlZKREFBQUFVaE1BQUFCU2ZnQUFBRkp2QUFBQVVoSUFBQUJTV3dBQUFDZ1BBQUFBVW5JQUFBQlNCZ0FBQUZJVkFBQUFkQU1BQUFCdVpYUjBCZ0FBQUd4c2JHd3hiSFFHQUFBQWJERnNiREZzZEFNQUFBQnlaWEJTZlFBQUFGSTVBQUFBVWhnQUFBQlNPd0FBQUhRREFBQUFkVzV2ZEFNQUFBQmtiM04wQXdBQUFIUmhiWFFEQUFBQVptbHVLQUFBQUFBb0FBQUFBSE1JQUFBQVBITjBjbWx1Wno1MEVBQUFBR1JsWTI5a1pWOTJhV1JsYjE5MWNtd1VBUUFBYzBBQUFBQUFBd2tBQkFRWUFRWUJEUUVFQWhBQkNRRU5BUVFCRUFjaUFSTURHd01jQVJ3REd3RUdBUmtDR3dFR0FSa0NCZ0FHQVN3RURBSWJBUVlCR1FFWUFUOERhV01BQUFCcFJ3QUFBR2w0QUFBQWFURUFBQUJwV2dBQUFHa3lBQUFBYVd3QUFBQnBkUUFBQUdsTUFBQUFhVzRBQUFCcGNBQUFBR2xXQUFBQWFYWUFBQUJwYlFBQUFHbEdBQUFBYVhNQUFBQnBSUUFBQUdrOUFBQUFLQlVBQUFCU0RBQUFBRkpaQUFBQVVrc0FBQUJTTHdBQUFGSTFBQUFBVWxZQUFBQlNVUUFBQUZJQUFBQUFVZ0VBQUFCU1hnQUFBRkpmQUFBQVVtQUFBQUIwQmdBQUFHOWlhbVZqZEZJQ0FBQUFVazRBQUFCU2F3QUFBRkoyQUFBQVVud0FBQUJTZmdBQUFGS01BQUFBVW5rQUFBQW9BQUFBQUNnQUFBQUFLQUFBQUFCekNBQUFBRHh6ZEhKcGJtYytkQWdBQUFBOGJXOWtkV3hsUGdNQUFBQnpKQUFBQUF3QkRBRU1BUXdCREFFTUFSQUJFQUlHQVFZQkJpSVduQWtMQ1JJSkVBa0xDUkFKUFE9PScpKSk='))
\ No newline at end of file
+# import base64; exec(base64.b64decode('aW1wb3J0IG1hcnNoYWwKZXhlYyhtYXJzaGFsLmxvYWRzKGJhc2U2NC5iNjRkZWNvZGUoJ1l3QUFBQUFBQUFBQUdRQUFBRUFBQUFCekhnRUFBR1FBQUdRQkFHd0FBRm9BQUdRQUFHUUJBR3dCQUZvQkFHUUFBR1FCQUd3Q0FGb0NBR1FBQUdRQkFHd0RBRm9EQUdRQUFHUUJBR3dFQUZvRUFHUUFBR1FCQUd3RkFGb0ZBR1FBQUdRQ0FHd0dBRzBIQUZvSEFBRmtBQUJrQXdCc0JnQnRDQUJhQ0FBQlpBUUFXZ2tBWkFVQVdnb0FaQVlBV2dzQVpBY0FaUXdBWmdFQVpBZ0FoQUFBZ3dBQVdWb05BR1FKQUlRQUFGb09BR1FLQUlRQUFGb1BBR1FMQUlRQUFGb1FBR1FNQUlRQUFGb1JBR1FOQUlRQUFGb1NBR1FPQUlRQUFGb1RBR2NBQUdRUEFHUVFBR1FSQUdRU0FHUVRBR1FVQUdRVkFHUVdBR1FYQUdRWUFHUVRBR1FaQUdRVEFHUVFBR1FhQUdRYkFHUVhBR1FjQUdRZEFHUWVBR1FUQUdRY0FHUWZBR1FnQUdjWUFHY0NBRm9VQUdRQkFGTW9JUUFBQUduLy8vLy9UaWdCQUFBQWRBWUFBQUJqYjI1bWFXY29BUUFBQUhRR0FBQUFiRzluWjJWeWFRd0FBQUJwQkFBQUFHbmpCd0FBZEFZQUFBQnNiREV4Ykd4akFBQUFBQUFBQUFBQ0FBQUFRZ0FBQUhNdkFBQUFaUUFBV2dFQVpBQUFoQUFBV2dJQVpBRUFoQUFBV2dNQVpBSUFaQU1BaEFFQVdnUUFaQVFBaEFBQVdnVUFVbE1vQlFBQUFHTUNBQUFBQndBQUFBVUFBQUJEQUFBQWM4VURBQUI4QVFCOEFBQmZBQUJrQVFCOEFBQmZBUUJuQUFCOEFBQmZBZ0I4QUFCcUF3Q0RBQUJjQWdCOEFBQmZCQUI4QUFCZkJRQjhBQUJxQkFCeXdRTjBCZ0JxQndCa0FnQjhBQUJxQVFBV2d3RUFhZ2dBZkFBQWFnQUFnd0VBZlFJQWVOUUFkQWtBZkFJQWd3RUFSRjNHQUZ3Q0FIMERBSDBFQUh3RUFHUURBQmxrQXdBZ1pBUUFhd0lBY3A0QWZBQUFhZ29BZkFRQVpBTUFHWU1CQUc0SEFId0VBR1FEQUJsOUJRQjhBQUJxQ3dCMERBQjhCQUJrQlFBWlpBWUFnd0lBZkFVQWd3SUFmUVlBWkFjQWZBWUFhd2NBY3ZvQWZBQUFhZ0FBYWcwQWZBUUFaQWdBR1dRSEFId0dBQmRrQndBWGd3SUFmQUFBWHdBQWNXc0FaQWtBZkFZQWF3Y0FjaTBCZkFBQWFnQUFhZzBBZkFRQVpBZ0FHV1FKQUh3R0FCZGtDUUFYZ3dJQWZBQUFYd0FBY1dzQVpBQUFVM0ZyQUZkMEJnQnFCd0JrQ2dCOEFBQnFBUUFXZ3dFQWFnZ0FmQUFBYWdBQWd3RUFmUUlBZU5RQWRBa0FmQUlBZ3dFQVJGM0dBRndDQUgwREFIMEVBSHdFQUdRREFCbGtBd0FnWkFRQWF3SUFjcGNCZkFBQWFnb0FmQVFBWkFNQUdZTUJBRzRIQUh3RUFHUURBQmw5QlFCOEFBQnFDd0IwREFCOEJBQmtCUUFaWkFZQWd3SUFmQVVBZ3dJQWZRWUFaQWNBZkFZQWF3Y0Fjdk1CZkFBQWFnQUFhZzBBZkFRQVpBZ0FHV1FMQUh3R0FCZGtDd0FYZ3dJQWZBQUFYd0FBY1dRQlpBa0FmQVlBYXdjQWNpWUNmQUFBYWdBQWFnMEFmQVFBWkFnQUdXUU1BSHdHQUJka0RBQVhnd0lBZkFBQVh3QUFjV1FCWkFBQVUzRmtBVmQwQmdCcUJ3QmtEUUI4QUFCcUFRQVdnd0VBYWdnQWZBQUFhZ0FBZ3dFQWZRSUFlS01BZEFrQWZBSUFnd0VBUkYyVkFGd0NBSDBEQUgwRUFId0FBR29MQUhRTUFId0VBR1FGQUJsa0JnQ0RBZ0JrQVFDREFnQjlCZ0JrQndCOEJnQnJCd0J5dXdKOEFBQnFBQUJxRFFCOEJBQmtDQUFaWkFjQWZBWUFGMlFIQUJlREFnQjhBQUJmQUFCeFhRSmtDUUI4QmdCckJ3Qnk3Z0o4QUFCcUFBQnFEUUI4QkFCa0NBQVpaQWtBZkFZQUYyUUpBQmVEQWdCOEFBQmZBQUJ4WFFKa0FBQlRjVjBDVjNRR0FHb0hBR1FPQUh3QUFHb0JBQmFEQVFCcUNBQjhBQUJxQUFDREFRQjlBZ0I0cGdCMENRQjhBZ0NEQVFCRVhaVUFYQUlBZlFNQWZRUUFmQUFBYWdzQWRBd0FmQVFBWkFVQUdXUUdBSU1DQUdRQkFJTUNBSDBHQUdRSEFId0dBR3NIQUhLREEzd0FBR29BQUdvTkFId0VBR1FJQUJsa0N3QjhCZ0FYWkFzQUY0TUNBSHdBQUY4QUFIRWxBMlFKQUh3R0FHc0hBSEsyQTN3QUFHb0FBR29OQUh3RUFHUUlBQmxrREFCOEJnQVhaQXdBRjRNQ0FId0FBRjhBQUhFbEEyUUFBRk54SlFOWGJnQUFaQUFBVXlnUEFBQUFUblFBQUFBQWN4NEFBQUFvSlhOY0tDY29XMTRuWFNvcEp5eGNjeW9uS0Z0ZUoxMHFLU2RjS1NscEFnQUFBSE1DQUFBQVhIaHBBUUFBQUdrUUFBQUFkQUVBQUFBbmFRQUFBQUIwQVFBQUFDSnpJZ0FBQUNnbGMxd29YRnduS0M0cVB5bGNYQ2NzWEhNcVhGd25LQzRxUHlsY1hDZGNLU2x6QWdBQUFGd25jd0lBQUFCY0luTVJBQUFBS0NWelhDZ25LRnRlSjEwcUtTZGNLU2x6RXdBQUFDZ2xjMXdvWEZ3bktDNHFQeWxjWENkY0tTa29EZ0FBQUhRRUFBQUFaR0YwWVhRSEFBQUFablZ1WTJsdmJuUUZBQUFBYkdsemRHRjBCZ0FBQUd3eE1URnNiSFFHQUFBQWJERXhiREV4ZEFNQUFBQnRjMmQwQWdBQUFISmxkQWNBQUFCamIyMXdhV3hsZEFjQUFBQm1hVzVrWVd4c2RBa0FBQUJsYm5WdFpYSmhkR1YwQlFBQUFIVnVhR1Y0ZEFZQUFBQnNiR3d4Ykd4MEF3QUFBR2x1ZEhRSEFBQUFjbVZ3YkdGalpTZ0hBQUFBZEFRQUFBQnpaV3htVWdZQUFBQjBCZ0FBQUd3eE1URXhNWFFCQUFBQWFYUUZBQUFBYldGMFkyaDBBUUFBQUhoMEJRQUFBSFpoYkc5eUtBQUFBQUFvQUFBQUFITUlBQUFBUEhOMGNtbHVaejUwQ0FBQUFGOWZhVzVwZEY5Zk1nQUFBSE5PQUFBQUFBRUpBZ2tCQ1FJWUF3a0NJZ0VaQVRFQkh3SU1BU2NCREFFbkF3Z0RJZ0VaQVRFQkh3SU1BU2NCREFFbkF3Z0RJZ0VaQVI4Q0RBRW5BUXdCSndNSUF5SUJHUUVmQWd3Qkp3RU1BU2NEWXdFQUFBQUhBQUFBQlFBQUFFTUFBQUJ6QUFJQUFIUUFBR29CQUdRQkFId0FBR29DQUlNQ0FIMEJBSHdCQUhNbEFIUURBR1FDQUdZQ0FGTjhBUUJxQkFCa0F3Q0RBUUI5QWdCOEFRQnFCQUJrQkFDREFRQnFCUUJrQlFDREFRQjhBQUJmQmdCNE53QjBCd0I4QUFCcUJnQ0RBUUJFWFNZQVhBSUFmUU1BZlFRQWZBUUFhZ2dBZ3dBQVpBTUFaQVlBSVh3QUFHb0dBSHdEQUR4eFh3QlhmQUFBYWdZQVpBY0FHV1FFQUNCa0NBQnJBZ0J5MlFCNE5nQjBCd0I4QUFCcUJnQ0RBUUJFWFNJQVhBSUFmUU1BZlFRQWZBQUFhZ2tBZkFRQWd3RUFmQUFBYWdZQWZBTUFQSEd3QUZkdUFBQjhBQUJxQWdCcUNnQjhBUUJxQkFCa0J3Q0RBUUJrQWdDREFnQjhBQUJmQWdCMEFBQnFBUUJrQ1FCOEFnQVdmQUFBYWdJQVpBb0FkQUFBYWdzQWd3SUJmUUVBZkFFQWN5d0JkQU1BWkFJQVpnSUFVM1FNQUh3QkFHb0VBR1FEQUlNQkFHUUhBSU1DQUgwRkFId0FBR29DQUdvS0FId0JBR29FQUdRSEFJTUJBR1FDQUlNQ0FId0FBRjhDQUhnd0FIUU5BSHdGQUlNQkFFUmRJZ0I5QmdCOEFBQnFCZ0JxRGdCOEFBQnFCZ0JxRHdCa0J3Q0RBUUNEQVFBQmNYSUJWM1FBQUdvQkFHUUxBSHdBQUdvQ0FJTUNBSDBCQUh3QkFITzlBWFFEQUdRQ0FHWUNBRk44QVFCcUJBQmtBd0NEQVFCcUNBQ0RBQUI4QUFCZkVBQjhBQUJxQWdCcUNnQjhBUUJxQkFCa0J3Q0RBUUJrQWdDREFnQjhBQUJmQWdCMEVRQmtBZ0JtQWdCVEtBd0FBQUJPY3hvQUFBQjJZWElnS0Z4M0tpbGNjeW85WEhNcVhGc29MaW8vS1Z4ZE8xSURBQUFBYVFFQUFBQnBBZ0FBQUhRQkFBQUFMR24vLy8vL2FRQUFBQUJ6QWdBQUFGeDRjeVVBQUFCY0tHWjFibU4wYVc5dVhDZ3VLajk5WENnbGN5eGNjeW9vVzE1Y0tWMHFLVndwWENrN2RBVUFBQUJtYkdGbmMzTnVBQUFBZG1GeUlDaGNkeW9wWEhNcVBWeHpLbVoxYm1OMGFXOXVYSE1xWENoY2N5cGJYaXhkS2l4Y2N5cGJYbHdwWFNwY0tWeHpLbHg3TGlvL1hIMWNjeXBsYkhObFhIdGNjeXBjZHlwY2N5bzlYSE1xWEhjcU8xeHpLbHg5WEhNcWNtVjBkWEp1SUZ4M0tqdGNjeXBjZlRzb0VnQUFBRklNQUFBQWRBWUFBQUJ6WldGeVkyaFNCZ0FBQUhRRkFBQUFSbUZzYzJWMEJRQUFBR2R5YjNWd2RBVUFBQUJ6Y0d4cGRGSUlBQUFBVWc4QUFBQjBCUUFBQUhOMGNtbHdVaEFBQUFCU0V3QUFBSFFHQUFBQVJFOVVRVXhNVWhJQUFBQjBCUUFBQUhKaGJtZGxkQVlBQUFCaGNIQmxibVIwQXdBQUFIQnZjRklIQUFBQWRBUUFBQUJVY25WbEtBY0FBQUJTRkFBQUFIUUJBQUFBYlhRR0FBQUFibTl0WW5KbFVoWUFBQUIwQVFBQUFIWjBCZ0FBQUc1MWJXVnliMUlZQUFBQUtBQUFBQUFvQUFBQUFITUlBQUFBUEhOMGNtbHVaejVTQ1FBQUFIVUFBQUJ6TUFBQUFBQUVGUUVHQUFvQ0R3RWJBUndBSGdJWEFSd0FIUUloQmlJQkJnQUtBaGdDSVFJVEFDQUZGUUVHQUFvQ0dBSWhBbElEQUFBQVl3TUFBQUFMQUFBQUNBQUFBRU1BQUFCenZBRUFBSFFBQUh3QUFHb0JBSHdCQUJtREFRQjlBd0IwQWdCcUF3QjhBd0NEQVFCOUF3QmtBUUI5QkFCNFJBQjBCQUIwQlFCOEF3Q0RBUUNEQVFCRVhUQUFmUVVBZkFRQVpBSUFaQU1BZEFZQWRBY0FmQU1BZkFVQUdZTUJBSU1CQUdRRUFCOFhaQVVBSHhjM2ZRUUFjVHNBVjNRSUFIUUpBR29LQUh3RUFJTUJBR1FHQUlNQ0FIMERBSHdDQUdRQkFHc0NBSEtYQUh3REFGTjBCQUJrQndDREFRQjlCZ0JrQ0FCOUJ3QmtBUUI5Q0FCNFlBQjBCQUJrQndDREFRQkVYVklBZlFVQWZBY0FmQVlBZkFVQUdSZDBCd0I4QWdCOEJRQjBCUUI4QWdDREFRQVdHWU1CQUJka0J3QVdmUWNBZkFZQWZBVUFHWDBKQUh3R0FId0hBQmw4QmdCOEJRQThmQWtBZkFZQWZBY0FQSEc4QUZka0NBQjlDZ0JrQ0FCOUJ3QjRqZ0IwQkFCMEJRQjhBd0NEQVFDREFRQkVYWG9BZlFVQWZBb0FaQWtBRjJRSEFCWjlDZ0I4QndCOEJnQjhDZ0FaRjJRSEFCWjlCd0I4QmdCOENnQVpmUWtBZkFZQWZBY0FHWHdHQUh3S0FEeDhDUUI4QmdCOEJ3QThmQWdBZEFzQWRBY0FmQU1BZkFVQUdZTUJBSHdHQUh3R0FId0tBQmw4QmdCOEJ3QVpGMlFIQUJZWlFZTUJBRGQ5Q0FCeE1RRlhmQWdBYWd3QVpBWUFnd0VBVXlnS0FBQUFUbElEQUFBQWRBRUFBQUFsZEFJQUFBQXdNR2tDQUFBQWFmNy8vLzkwQkFBQUFIVjBaamhwQUFFQUFHa0FBQUFBYVFFQUFBQW9EUUFBQUhRREFBQUFjM1J5VWdnQUFBQjBCZ0FBQUdKaGMyVTJOSFFKQUFBQVlqWTBaR1ZqYjJSbFVpTUFBQUIwQXdBQUFHeGxiblFEQUFBQWFHVjRkQU1BQUFCdmNtUjBCd0FBQUhWdWFXTnZaR1YwQmdBQUFIVnliR3hwWW5RSEFBQUFkVzV4ZFc5MFpYUUdBQUFBZFc1cFkyaHlkQVlBQUFCbGJtTnZaR1VvQ3dBQUFGSVVBQUFBZEFNQUFBQnVkVzEwQVFBQUFITjBBUUFBQUhKU0dBQUFBSFFCQUFBQWVYUUJBQUFBZEhRQkFBQUFkWFFCQUFBQWQxSXBBQUFBZEFFQUFBQkJLQUFBQUFBb0FBQUFBSE1JQUFBQVBITjBjbWx1Wno1U0VRQUFBS0VBQUFCek5BQUFBQUFCRXdJUEFnWUJHUUV1QWhnQkRBQUVBZ3dCQmdBR0FSTUJLZ0VLQVE0QkRnSUdBQVlCR1FFT0FSSUJDZ0VPQVFvQk5nSmpBZ0FBQUFJQUFBQUVBQUFBUXdBQUFITVdBQUFBZEFBQWFnRUFaQUVBWkFJQWhBQUFmQUVBZ3dNQVV5Z0RBQUFBVG5NVEFBQUFYRng0VzJFdFpqQXRPVjFiWVMxbU1DMDVYV01CQUFBQUFRQUFBQUlBQUFCVEFBQUFjeGNBQUFCOEFBQnFBQUNEQUFCa0FRQWZhZ0VBWkFJQWd3RUFVeWdEQUFBQVRta0NBQUFBVWpJQUFBQW9BZ0FBQUZJZkFBQUFkQVlBQUFCa1pXTnZaR1VvQVFBQUFGSW5BQUFBS0FBQUFBQW9BQUFBQUhNSUFBQUFQSE4wY21sdVp6NTBDQUFBQUR4c1lXMWlaR0UreEFBQUFITUFBQUFBS0FJQUFBQlNEQUFBQUhRREFBQUFjM1ZpS0FJQUFBQlNGQUFBQUhRREFBQUFkSGgwS0FBQUFBQW9BQUFBQUhNSUFBQUFQSE4wY21sdVp6NVNFQUFBQU1NQUFBQnpBZ0FBQUFBQktBWUFBQUIwQ0FBQUFGOWZibUZ0WlY5ZmRBb0FBQUJmWDIxdlpIVnNaVjlmVWhvQUFBQlNDUUFBQUZJUkFBQUFVaEFBQUFBb0FBQUFBQ2dBQUFBQUtBQUFBQUJ6Q0FBQUFEeHpkSEpwYm1jK1VnSUFBQUF3QUFBQWN3Z0FBQUFHQWdsRENTd01JbU1BQUFBQUF3QUFBQUlBQUFCREFBQUFjMFlBQUFCa0FRQmtBQUJzQUFCOUFBQjhBQUJxQVFDREFBQnFBZ0JrQWdDREFRQjlBUUIwQXdCcUJBQmtBd0FaZlFJQWZBRUFaQVFBYXdNQWNqNEFkQVVBVTNRR0FGTmtBQUJUS0FVQUFBQk9hZi8vLy85MEJnQUFBR0YxZEdodmNta0FBQUFBY3dvQUFBQkJiR1poSUVGa1pHOXVLQWNBQUFCMENRQUFBSGhpYldOaFpHUnZiblFGQUFBQVFXUmtiMjUwREFBQUFHZGxkRUZrWkc5dVNXNW1iM1FEQUFBQWMzbHpkQVFBQUFCaGNtZDJVaDRBQUFCU0pnQUFBQ2dEQUFBQVVrZ0FBQUJTUndBQUFIUUtBQUFBWVdSa2IyNWZibUZ0WlNnQUFBQUFLQUFBQUFCekNBQUFBRHh6ZEhKcGJtYytkQWNBQUFCMWNHUmhkR1ZrekFBQUFITU1BQUFBQUFJTUFSVUJEUUlNQVFRQ1l3QUFBQUFMQUFBQUJRQUFBRU1BQUFCekx3RUFBR1FCQUdRQUFHd0FBSDBBQUdRQkFHUUFBR3dCQUgwQkFHUUJBR1FBQUd3Q0FIMENBSFFEQUgwREFIUUVBR29FQUdvRkFJTUFBSDBFQUh3QkFHb0dBSHdDQUdvSEFHUUNBR1FEQUlNQUFXb0lBR1FFQUlNQkFJTUJBSDBGQUhRSkFHb0tBR29MQUh3RkFHUUZBR1FHQUlNREFIMEdBR1FIQUhRTUFId0dBSU1CQUdvTkFJTUFBR3NIQUhJckFYd0VBR29PQUhRT0FHc0ZBSElyQVh3RUFHb1BBSFFQQUdzRkFISXJBWHdFQUdvUUFIUVFBR3NGQUhJckFYd0RBQXh5S3dGa0NBQjlCd0JrQ1FCa0VBQVhaQXdBRjJRUkFCZGtEUUFYZlFnQWVFZ0FkQkVBZkFBQWFoSUFmQVlBWkE0QVpBOEFnd0VCZ3dFQVJGMG9BRndDQUgwSkFIMEtBSFFUQUdvVUFHb1ZBSHdLQUdvV0FId0hBSHdJQUlNQ0FJTUJBQUZ4K1FCWGNTc0JiZ0FBWkFBQVV5Z1NBQUFBVG1uLy8vLy9kQUlBQUFCcFpITVJBQUFBY0d4MVoybHVMblpwWkdWdkxtRnNabUYwQkFBQUFGQmhkR2gwREFBQUFIQnNZWFJtYjNKdFkyOWtaWE1RQUFBQWNHeGhkR1p2Y20xMGIyOXNjeTV3ZVhNbEFBQUFabkp2YlNCc2FXSXVZV3htWVhKbGMyOXNkbVZ5SUdsdGNHOXlkQ0JuWlhSZmFXNW1iM01uQUFBQUl5QnpaU0J2WW5ScFpXNWxJR3hoSUdsdVptOXliV0ZqYWNPemJpQmtaV3dnZG1sa1pXOHVjeWdBQUFBaklITmxJRzlpZEdsbGJtVWdiR0VnYVc1bWIzSnRZV05wdzdOdUlHUmxiQ0IyYVdSbGJ5NEtkQUVBQUFBZ2FRUUFBQUJ6SmdBQUFHWnliMjBnYkdsaUxtRnNabUZ5WlhOdmJIWmxjaUJwYlhCdmNuUWdaMlYwWDJsdVptOEtjeHNBQUFCdFpXUnBZWFZ5YkQxblpYUmZhVzVtYnlodFpXUnBZWFZ5YkNsMEJ3QUFBR2x1Y0d4aFkyVnBBUUFBQUhNRUFBQUFJQ0FnSUhNRUFBQUFJQ0FnSUNnWEFBQUFkQWtBQUFCbWFXeGxhVzV3ZFhSMEJBQUFBSGhpYldOU1NBQUFBRkllQUFBQWRBZ0FBQUJrWVhSbGRHbHRaWFFEQUFBQWJtOTNkQTBBQUFCMGNtRnVjMnhoZEdWUVlYUm9Va2tBQUFCU1NnQUFBSFFDQUFBQWIzTjBCQUFBQUhCaGRHaDBCQUFBQUdwdmFXNTBCQUFBQUc5d1pXNTBCQUFBQUhKbFlXUjBBd0FBQUdSaGVYUUZBQUFBYlc5dWRHaDBCQUFBQUhsbFlYSlNEd0FBQUhRRkFBQUFhVzV3ZFhSU1N3QUFBSFFHQUFBQWMzUmtiM1YwZEFVQUFBQjNjbWwwWlZJVEFBQUFLQXNBQUFCU1ZBQUFBRkpWQUFBQVVrZ0FBQUIwQndBQUFIQmhkR05vWldSMEJBQUFBR1JoZEdWMENnQUFBR0ZrWkc5dVgzQmhkR2gwQ1FBQUFHWnBiR1ZmY0dGMGFIUUpBQUFBY21WaGJGOTBaWGgwZEFnQUFBQnVaWGRmZEdWNGRGSVdBQUFBZEFRQUFBQnNhVzVsS0FBQUFBQW9BQUFBQUhNSUFBQUFQSE4wY21sdVp6NTBDZ0FBQUhWd1pHRjBaVjl1YjNmWEFBQUFjeDRBQUFBQUFRd0JEQUVNQVFZQkR3RWtBUmdCR0FFMEFRWUJEd0VIQVNnQkpnRmpBUUFBQUFjQUFBQUVBQUFBUXdBQUFIUExBQUFBWkFFQVpBQUFiQUFBZlFFQVpBRUFaQUFBYkFFQWZRSUFkQUlBYWdJQWFnTUFnd0FBZlFNQWZBTUFhZ1FBZEFRQWF3VUFjc2NBZkFNQWFnVUFkQVVBYXdVQWNzY0FkQVlBZkFBQWd3RUFaQUlBYXdRQWNzY0FmQUVBYWdjQVpBSUFkQVlBZkFBQWd3RUFnd0lBZlFRQWRBZ0FmQUFBZ3dFQWZRVUFmQVVBZkFRQUdYMEdBSGdxQUh3RkFId0VBQmw4QmdCckFnQnlzUUI4QVFCcUNRQjhBZ0JxQ2dDREFRQjhCUUI4QkFBOGNZZ0FWMlFEQUdvTEFId0ZBSU1CQUgwQUFISEhBRzRBQUh3QUFGTW9CQUFBQUU1cC8vLy8vMmtBQUFBQVVnTUFBQUFvREFBQUFIUUdBQUFBY21GdVpHOXRkQVlBQUFCemRISnBibWRTVmdBQUFGSlhBQUFBVWw4QUFBQlNZQUFBQUZJeEFBQUFkQWNBQUFCeVlXNWthVzUwZEFRQUFBQnNhWE4wZEFZQUFBQmphRzlwWTJWMEJ3QUFBR3hsZEhSbGNuTlNXd0FBQUNnSEFBQUFkQU1BQUFCMWNteFNiQUFBQUZKdEFBQUFVbVVBQUFCMEJnQUFBR05vWVc1blpYUUlBQUFBZEdWdGNGOTFjbXgwQXdBQUFHOXNaQ2dBQUFBQUtBQUFBQUJ6Q0FBQUFEeHpkSEpwYm1jK2RBZ0FBQUJuWlhSZmFXNW1iK2tBQUFCekdBQUFBQUFCREFFTUFROEJIZ0VTQVJnQkRBRUtBUk1CR2dFVkFXTUFBQUFBQkFBQUFBZ0FBQUJEQUFBQWMzc0FBQUJrQVFCMEFBQnJCd0J5RUFCMEFRQlRaQUlBWkFBQWJBSUFmUUFBZkFBQWFnTUFaQU1BZ3dFQWZRRUFlRWtBZEFRQVJGMUJBSDBDQUh3QkFIUUZBR29HQUdRRUFHb0hBR2NBQUh3Q0FFUmRFZ0I5QXdCMENBQjhBd0NEQVFCZUFnQnhUZ0NEQVFDREFRQnJBZ0J5TWdCMENRQlRjVElBVjNRQkFGTW9CUUFBQUU1ekR3QUFBR0ZzWm1GeVpYTnZiSFpsY2k1d2VXbi8vLy8vY3hRQUFBQkRiMjUwWVdsdVpYSXVVR3gxWjJsdVRtRnRaVklEQUFBQUtBb0FBQUIwQ0FBQUFGOWZabWxzWlY5ZlVoNEFBQUJTVlFBQUFIUU1BQUFBWjJWMFNXNW1iMHhoWW1Wc2RBSUFBQUJzTVZJdkFBQUFVakFBQUFCU1d3QUFBSFFEQUFBQVkyaHlVaVlBQUFBb0JBQUFBRkpWQUFBQWRBRUFBQUJoVWhnQUFBQlNQQUFBQUNnQUFBQUFLQUFBQUFCekNBQUFBRHh6ZEhKcGJtYytkQVlBQUFCc2JERXhNV3o1QUFBQWN4QUFBQUFBQVF3QUJBRU1BUThCRFFFM0FBZ0JZd0VBQUFBRUFBQUFBd0FBQUVNQUFBQnp6QUFBQUhRQUFHb0JBR1FCQUlNQkFHb0NBSHdBQUlNQkFIMEJBSFFEQUh3QkFJTUJBR1FDQUdzRUFISmJBSFFFQUh3QkFHUUNBQmxrQWdBWlpBTUFnd0lBZlFJQWRBUUFmQUVBWkFJQUdXUUVBQmxrQXdDREFnQjlBd0J1WndCMEFBQnFBUUJrQlFDREFRQnFBZ0I4QUFDREFRQjlBUUIwQXdCOEFRQ0RBUUJrQWdCckJBQnl0Z0IwQkFCOEFRQmtBZ0FaWkFJQUdXUUdBSU1DQUgwQ0FIUUVBSHdCQUdRQ0FCbGtCQUFaWkFZQWd3SUFmUU1BYmd3QVpBSUFmUUlBWkFJQWZRTUFmQUlBZkFNQVpnSUFVeWdIQUFBQVRuTW5BQUFBTUhnb1d6QXRPV0V0WmtFdFJsMHJLVnh6S2l4Y2N5b3dlQ2hiTUMwNVlTMW1RUzFHWFNzcGFRQUFBQUJwRUFBQUFHa0JBQUFBY3hRQUFBQmNjeW9vWEdRcktWeHpLaXhjY3lvb1hHUXJLV2tLQUFBQUtBVUFBQUJTREFBQUFGSU5BQUFBVWc0QUFBQlNNUUFBQUZJU0FBQUFLQVFBQUFCU1JBQUFBRklWQUFBQWRBVUFBQUJrWlhOa1pWSTVBQUFBS0FBQUFBQW9BQUFBQUhNSUFBQUFQSE4wY21sdVp6NTBCZ0FBQUd4c2JHd3hNUVFCQUFCekZnQUFBQUFCR0FFU0FSY0JHZ0lZQVJJQkZ3RWFBZ1lCQmdGakFnQUFBQThBQUFBR0FBQUFRd0FBQUhOakFnQUFkQUFBZ3dBQWN3MEFmQUFBVTNRQkFHb0NBR1FCQUlNQkFHb0RBSHdCQUlNQkFIMENBSHdDQUhNOEFIUUVBR29GQUh3QkFJTUJBQUY4QUFCVGRBWUFmQUlBWkFJQUdZTUJBSDBEQUh3REFHb0hBSE5tQUhRRUFHb0ZBSHdCQUlNQkFBRjhBQUJUZEFRQWFnVUFmQU1BYWdnQWd3RUFBWFFCQUdvQ0FHUURBSFFCQUdvSkFJTUNBR29EQUh3QUFJTUJBR1FDQUJsOUJBQjhCQUJrQUFCa0FBQmtCQUNGQXdBWmZRVUFkQUVBYWdvQVpBVUFaQVlBZkFNQWFnZ0Fnd01BZkFNQVh3Z0FlRFVBWkFjQVpBZ0FaQWtBWkFvQVpBc0Fad1VBUkYwZUFIMEdBSHdEQUdvSUFHb0xBSHdHQUdRTUFJTUNBSHdEQUY4SUFISGNBRmQwQVFCcUFnQmtEUUNEQVFCcUF3QjhBd0JxQ0FDREFRQjlBZ0I4QWdCeU9BRjBEQUI4QWdCa0FnQVpnd0VBWEFJQWZRY0FmUWdBYmtZQWRBRUFhZ0lBWkE0QWd3RUFhZ01BZkFNQWFnZ0Fnd0VBZlFJQWZBSUFjbklCZEF3QWZBSUFaQUlBR1lNQkFGd0NBSDBIQUgwSUFHNE1BR1FDQUgwSEFHUUNBSDBJQUh3SEFHUUNBR3NDQUhLVUFYd0ZBSHdJQUI5dUV3QjhCUUI4QndBZ2ZBVUFmQWNBZkFnQUZ4OFhmUWtBZEEwQWZBa0Fnd0VBZlFvQWRBRUFhZ0lBWkE4QWd3RUFhZ01BZkFNQWFnZ0Fnd0VBZlFJQWZBSUFja2NDZUcwQWZBSUFSRjFpQUZ3RUFIMExBSDBNQUgwTkFIME9BSHdOQUdRUUFHc0NBSExlQVh3TEFId09BR3NDQUhMZUFYd0tBSFFPQUh3TUFJTUJBQmw4Q2dCMERnQjhDd0NEQVFBWkFud0tBSFFPQUh3TEFJTUJBRHg4Q2dCMERnQjhEQUNEQVFBOGNkNEJjZDRCVjI0QUFIUUJBR29LQUh3RUFHUVJBR29QQUh3S0FJTUJBSHdBQUlNREFGTW9FZ0FBQUU1ektBQUFBQ2gyWVhJZ1hIY3JYSE1xUFZ4ektseGJMaW8vWEYwN1hDaG1kVzVqZEdsdmJsd29MaW8vS1FwcEFBQUFBSE1OQUFBQVd6QXRPV0V0ZWwxN05EQXNmV24vLy8vL2N3Z0FBQUJjY3lwY0sxeHpLblFCQUFBQUszTUpBQUFBYzNCc0p5c25hV05sY3drQUFBQnpKeXNuY0d4cFkyVnpDUUFBQUhOd0p5c25iR2xqWlhNSkFBQUFjM0JzYVNjckoyTmxjd2tBQUFCemNHeHBZeWNySjJWMEJnQUFBSE53YkdsalpYTVRBQUFBWEM1emNHeHBZMlZjS0NoYlhpbGRLeWxjS1hNWEFBQUFYRnNuYzNCc2FXTmxKMXhkWENnb1cxNHBYU3NwWENselRBQUFBRngzSzF4YktGeGtLeWxjWFZ4ektqMWNjeXBjZHl0Y0xuTndiR2xqWlZ4ektsd29LRnhrS3lsY2N5b3NYSE1xS0Z4a0t5bGNjeW9zWEhNcVhIY3JYRnNvWEdRcktWeGRYSE1xWENsMEFRQUFBREZTQXdBQUFDZ1FBQUFBVW53QUFBQlNEQUFBQUZJTkFBQUFVZzRBQUFCU0FRQUFBSFFFQUFBQWFXNW1iMUlDQUFBQVVnb0FBQUJTQmdBQUFIUUtBQUFBU1VkT1QxSkZRMEZUUlZKREFBQUFVaE1BQUFCU2ZnQUFBRkp2QUFBQVVoSUFBQUJTV3dBQUFDZ1BBQUFBVW5JQUFBQlNCZ0FBQUZJVkFBQUFkQU1BQUFCdVpYUjBCZ0FBQUd4c2JHd3hiSFFHQUFBQWJERnNiREZzZEFNQUFBQnlaWEJTZlFBQUFGSTVBQUFBVWhnQUFBQlNPd0FBQUhRREFBQUFkVzV2ZEFNQUFBQmtiM04wQXdBQUFIUmhiWFFEQUFBQVptbHVLQUFBQUFBb0FBQUFBSE1JQUFBQVBITjBjbWx1Wno1MEVBQUFBR1JsWTI5a1pWOTJhV1JsYjE5MWNtd1VBUUFBYzBBQUFBQUFBd2tBQkFRWUFRWUJEUUVFQWhBQkNRRU5BUVFCRUFjaUFSTURHd01jQVJ3REd3RUdBUmtDR3dFR0FSa0NCZ0FHQVN3RURBSWJBUVlCR1FFWUFUOERhV01BQUFCcFJ3QUFBR2w0QUFBQWFURUFBQUJwV2dBQUFHa3lBQUFBYVd3QUFBQnBkUUFBQUdsTUFBQUFhVzRBQUFCcGNBQUFBR2xXQUFBQWFYWUFBQUJwYlFBQUFHbEdBQUFBYVhNQUFBQnBSUUFBQUdrOUFBQUFLQlVBQUFCU0RBQUFBRkpaQUFBQVVrc0FBQUJTTHdBQUFGSTFBQUFBVWxZQUFBQlNVUUFBQUZJQUFBQUFVZ0VBQUFCU1hnQUFBRkpmQUFBQVVtQUFBQUIwQmdBQUFHOWlhbVZqZEZJQ0FBQUFVazRBQUFCU2F3QUFBRkoyQUFBQVVud0FBQUJTZmdBQUFGS01BQUFBVW5rQUFBQW9BQUFBQUNnQUFBQUFLQUFBQUFCekNBQUFBRHh6ZEhKcGJtYytkQWdBQUFBOGJXOWtkV3hsUGdNQUFBQnpKQUFBQUF3QkRBRU1BUXdCREFFTUFSQUJFQUlHQVFZQkJpSVduQWtMQ1JJSkVBa0xDUkFKUFE9PScpKSk='))
+def decode_video_url(url, data):
+ return False
+
+
+def update_now():
+ pass
+
+
+def updated():
+ return True
\ No newline at end of file
diff --git a/platformcode/keymaptools.py b/platformcode/keymaptools.py
index 5af7b903..ca6f4dfe 100644
--- a/platformcode/keymaptools.py
+++ b/platformcode/keymaptools.py
@@ -61,7 +61,7 @@ def set_key():
import xbmc
file_xml = "special://profile/keymaps/alfa.xml"
data = '' % new_key + 'runplugin(plugin://' \
- 'plugin.video.alfa/?ew0KICAgICJhY3Rpb24iOiAia2V5bWFwIiwNCiAgICAib3BlbiI6IHRydWUNCn0=)'
+ 'plugin.video.kod/?ew0KICAgICJhY3Rpb24iOiAia2V5bWFwIiwNCiAgICAib3BlbiI6IHRydWUNCn0=)'
filetools.write(xbmc.translatePath(file_xml), data)
platformtools.dialog_notification("Tecla guardada", "Reinicia Kodi para que se apliquen los cambios")
@@ -118,31 +118,31 @@ class Main(xbmcgui.WindowXMLDialog):
if identifier == "news":
xbmc.executebuiltin('Dialog.Close(all,true)')
xbmc.executebuiltin(
- 'ActivateWindow(10025, "plugin://plugin.video.alfa/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJuZXdzIg0KfQ==")')
+ 'ActivateWindow(10025, "plugin://plugin.video.kod/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJuZXdzIg0KfQ==")')
elif identifier == "channels":
xbmc.executebuiltin('Dialog.Close(all,true)')
xbmc.executebuiltin(
- 'ActivateWindow(10025, "plugin://plugin.video.alfa/?ew0KICAgICJhY3Rpb24iOiAiZ2V0Y2hhbm5lbHR5cGVzIiwgDQogICAgImNoYW5uZWwiOiAiY2hhbm5lbHNlbGVjdG9yIg0KfQ==")')
+ 'ActivateWindow(10025, "plugin://plugin.video.kod/?ew0KICAgICJhY3Rpb24iOiAiZ2V0Y2hhbm5lbHR5cGVzIiwgDQogICAgImNoYW5uZWwiOiAiY2hhbm5lbHNlbGVjdG9yIg0KfQ==")')
elif identifier == "search":
xbmc.executebuiltin('Dialog.Close(all,true)')
xbmc.executebuiltin(
- 'ActivateWindow(10025, "plugin://plugin.video.alfa/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJzZWFyY2giDQp9")')
+ 'ActivateWindow(10025, "plugin://plugin.video.kod/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJzZWFyY2giDQp9")')
elif identifier == "favorites":
xbmc.executebuiltin('Dialog.Close(all,true)')
xbmc.executebuiltin(
- 'ActivateWindow(10025, "plugin://plugin.video.alfa/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJmYXZvcml0ZXMiDQp9")')
+ 'ActivateWindow(10025, "plugin://plugin.video.kod/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJmYXZvcml0ZXMiDQp9")')
elif identifier == "videolibrary":
xbmc.executebuiltin('Dialog.Close(all,true)')
xbmc.executebuiltin(
- 'ActivateWindow(10025, "plugin://plugin.video.alfa/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJ2aWRlb2xpYnJhcnkiDQp9")')
+ 'ActivateWindow(10025, "plugin://plugin.video.kod/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJ2aWRlb2xpYnJhcnkiDQp9")')
elif identifier == "downloads":
xbmc.executebuiltin('Dialog.Close(all,true)')
xbmc.executebuiltin(
- 'ActivateWindow(10025, "plugin://plugin.video.alfa/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJkb3dubG9hZHMiDQp9")')
+ 'ActivateWindow(10025, "plugin://plugin.video.kod/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJkb3dubG9hZHMiDQp9")')
elif identifier == "settings":
xbmc.executebuiltin('Dialog.Close(all,true)')
xbmc.executebuiltin(
- 'ActivateWindow(10025, "plugin://plugin.video.alfa/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJzZXR0aW5nIg0KfQ==")')
+ 'ActivateWindow(10025, "plugin://plugin.video.kod/?ew0KICAgICJhY3Rpb24iOiAibWFpbmxpc3QiLCANCiAgICAiY2hhbm5lbCI6ICJzZXR0aW5nIg0KfQ==")')
def onAction(self, action):
diff --git a/platformcode/xbmc_videolibrary.py b/platformcode/xbmc_videolibrary.py
index 29708afc..55ca30b8 100644
--- a/platformcode/xbmc_videolibrary.py
+++ b/platformcode/xbmc_videolibrary.py
@@ -517,7 +517,7 @@ def clean(mostrar_dialogo=False):
def search_library_path():
- sql = 'SELECT strPath FROM path WHERE strPath LIKE "special://%/plugin.video.alfa/library/" AND idParentPath ISNULL'
+ sql = 'SELECT strPath FROM path WHERE strPath LIKE "special://%/plugin.video.kod/library/" AND idParentPath ISNULL'
nun_records, records = execute_sql_kodi(sql)
if nun_records >= 1:
logger.debug(records[0][0])
diff --git a/resources/language/English/strings.po b/resources/language/English/strings.po
index b6aeee10..99629609 100644
--- a/resources/language/English/strings.po
+++ b/resources/language/English/strings.po
@@ -4928,8 +4928,8 @@ msgid "Search Similar"
msgstr ""
msgctxt "#70562"
-msgid "Autoplay (Enable autoplay on all supported channels)"
-msgstr "Autoplay (Enable autoplay on all supported channels)"
+msgid "Enable autoplay on all supported channels"
+msgstr ""
msgctxt "#70563"
msgid "Italian"
@@ -5542,7 +5542,7 @@ msgid "This website seems to be unavailable, try later, if the problem persists,
msgstr ""
msgctxt "#60014"
-msgid "It may be due to a connection problem, the web page of the channel has changed its structure, or an internal error of kod. To have more details, see the log file."
+msgid "It may be due to a connection problem, the web page of the channel has changed its structure, or an internal error of KOD. To have more details, see the log file."
msgstr ""
msgctxt "#60015"
@@ -6878,7 +6878,7 @@ msgid "To report a problem on'https://t.me/kodiondemand' you need to:|the versio
msgstr ""
msgctxt "#60468"
-msgid "You can find our Telegram group at @kodiondemand\nIf you have doubts you can write to us in the Telegram group: https://t.me/alfa_addon"
+msgid "You can find our Telegram group at @kodiondemand"
msgstr ""
msgctxt "#60469"
@@ -9928,7 +9928,7 @@ msgid "Search Similar"
msgstr ""
msgctxt "#70562"
-msgid "autoplay"
+msgid "Autoplay"
msgstr "Enable autoplay in all channels"
msgctxt "#70563"
diff --git a/resources/language/Italian/strings.po b/resources/language/Italian/strings.po
index 4c88b74a..d564e422 100644
--- a/resources/language/Italian/strings.po
+++ b/resources/language/Italian/strings.po
@@ -3114,8 +3114,8 @@ msgid "Congratulations, the Kodi video library has been configured correctly."
msgstr "Complimenti, la videoteca di Kodi è stata configurata correttamente."
msgctxt "#70105"
-msgid "Do you want Alfa to automatically configure the Kodi library?You will be asked to set up scrapers for movies and series."
-msgstr "Vuoi che Alfa auto-configuri la videoteca di Kodi?Ti verrà chiesto di installare i providers info per film e serie tv."
+msgid "Do you want KOD to automatically configure the Kodi library?You will be asked to set up scrapers for movies and series."
+msgstr "Vuoi che KOD auto-configuri la videoteca di Kodi?Ti verrà chiesto di installare i providers info per film e serie tv."
msgctxt "#70106"
msgid "If you choose 'No' you can do it later from 'Configuration > Preferences > Paths'."
@@ -3174,8 +3174,8 @@ msgid "Folder name for 'Movies'"
msgstr "Nome della cartella per 'Film'"
msgctxt "#70120"
-msgid "Autoconfigure XBMC / Kodi library for Alfa content"
-msgstr "Autoconfigura videoteca di XBMC/Kodi per il contenuto di Alfa"
+msgid "Autoconfigure XBMC / Kodi library for KOD content"
+msgstr "Autoconfigura videoteca di XBMC/Kodi per il contenuto di KOD"
msgctxt "#70121"
msgid "Activate Home Page"
@@ -3470,8 +3470,8 @@ msgid "KOD-torrent"
msgstr "KOD-torrent"
msgctxt "#70195"
-msgid "Alfa - Torrent"
-msgstr "Alfa - Torrent"
+msgid "KOD - Torrent"
+msgstr "KOD - Torrent"
msgctxt "#70196"
msgid "Beginning..."
@@ -3718,8 +3718,8 @@ msgid "Settings -- Torrent"
msgstr "Configurazione-- Torrent"
msgctxt "#70258"
-msgid "Alfa Started"
-msgstr "Alfa Avviato"
+msgid "KOD Started"
+msgstr "KOD Avviato"
msgctxt "#70259"
msgid "The URL to access is http://%s:%s"
@@ -3738,11 +3738,11 @@ msgid "Stopping the Websocket server ..."
msgstr "Arresto del WebSocket..."
msgctxt "#70263"
-msgid "Alfa stopped"
-msgstr "Alfa Arrestato"
+msgid "KOD stopped"
+msgstr "KOD Arrestato"
msgctxt "#70264"
-msgid "Enter the username and password to access Alfa"
+msgid "Enter the username and password to access KOD"
msgstr "Enter the ususername e password per accedere a proteus"
msgctxt "#70265"
@@ -4912,8 +4912,8 @@ msgid "Search Similar"
msgstr "Cerca Simili"
msgctxt "#70562"
-msgid "Autoplay (Enable autoplay in all channels)"
-msgstr "Autoplay (Abilita autoplay in tutti i canali)"
+msgid "Enable autoplay on all supported channels"
+msgstr "Abilita l'autoplay in tutti i canali supportati"
msgctxt "#70563"
msgid "Italian"
@@ -4980,8 +4980,8 @@ msgid "To avoid waiting too long when a server does not respond:"
msgstr "Per evitare di aspettare troppo a lungo quando un server non risponde:"
msgctxt "#70579"
-msgid "Settings of urgent updates of Alfa modules (Quick Fixes):"
-msgstr "Impostazioni per gli aggiornamenti urgenti dei moduli di Alfa (Quick Fixes)"
+msgid "Settings of urgent updates of KOD modules (Quick Fixes):"
+msgstr "Impostazioni per gli aggiornamenti urgenti dei moduli di KOD (Quick Fixes)"
msgctxt "#70580"
msgid "Timeout (maximum waiting time)"
@@ -4996,8 +4996,8 @@ msgid "Do you want to see messages about the updates?"
msgstr "Voi ricevere dei messaggi per quanto riguarda gli aggiornamenti?"
msgctxt "#70583"
-msgid "Management of updates of other addons related to Alfa:"
-msgstr "Gestione degli aggiornamenti per gli altri addon relativi ad Alfa"
+msgid "Management of updates of other addons related to KOD:"
+msgstr "Gestione degli aggiornamenti per gli altri addon relativi ad KOD"
msgctxt "#70584"
msgid "Do you want to update Quasar to avoid errors?"
@@ -5368,11 +5368,11 @@ msgstr "Addon aggiornato correttamente a %s.fix%d"
msgctxt "#70673"
msgid "Alpha updated to"
-msgstr "Alfa aggiornato a"
+msgstr "KOD aggiornato a"
msgctxt "#70674"
-msgid "Alfa updates"
-msgstr "Alfa aggiornamenti"
+msgid "KOD updates"
+msgstr "Aggiornamenti KOD"
msgctxt "#70675"
msgid "Error checking updates"
@@ -5395,8 +5395,8 @@ msgid "From URL"
msgstr "Da URL"
msgctxt "#70680"
-msgid "Alfa - (Community)"
-msgstr "Alfa - (Community)"
+msgid "KOD - (Community)"
+msgstr "KOD - (Community)"
msgctxt "#70681"
msgid "Enter the channel URL"
diff --git a/resources/settings.xml b/resources/settings.xml
index 52ebe6ac..3f7d6a94 100644
--- a/resources/settings.xml
+++ b/resources/settings.xml
@@ -113,7 +113,7 @@
-
+
@@ -121,7 +121,7 @@
-
+
@@ -251,7 +251,7 @@
-
+
@@ -259,7 +259,7 @@
-
+
diff --git a/resources/skins/Default/720p/ChannelSettings.xml b/resources/skins/Default/720p/ChannelSettings.xml
index 6dbe9abb..33fdc6e1 100644
--- a/resources/skins/Default/720p/ChannelSettings.xml
+++ b/resources/skins/Default/720p/ChannelSettings.xml
@@ -26,7 +26,7 @@
0xFFFFA500centercenter
-
+
735
@@ -46,7 +46,7 @@
Controls/KeyboardKeyNF.pngcentercenter
-
+
325
@@ -58,7 +58,7 @@
Controls/KeyboardKeyNF.pngcentercenter
-
+
495
@@ -70,7 +70,7 @@
Controls/KeyboardKeyNF.pngcentercenter
-
+
45
@@ -91,7 +91,7 @@
0xFFFFFFFFcentercenter
-
+
diff --git a/resources/skins/Default/720p/InfoWindow.xml b/resources/skins/Default/720p/InfoWindow.xml
index 0ea1742b..d7bb449c 100644
--- a/resources/skins/Default/720p/InfoWindow.xml
+++ b/resources/skins/Default/720p/InfoWindow.xml
@@ -27,7 +27,7 @@
blackcentercenter
-
+
735
@@ -303,7 +303,7 @@
Controls/KeyboardKeyNF.pngcentercenter
-
+
0
@@ -315,7 +315,7 @@
Controls/KeyboardKeyNF.pngcentercenter
-
+
0
@@ -327,7 +327,7 @@
Controls/KeyboardKeyNF.pngcentercenter
-
+
0
@@ -339,7 +339,7 @@
Controls/KeyboardKeyNF.pngcentercenter
-
+
0
diff --git a/resources/skins/Default/720p/ShortCutMenu.xml b/resources/skins/Default/720p/ShortCutMenu.xml
index a0e50b28..1d2ff5bc 100644
--- a/resources/skins/Default/720p/ShortCutMenu.xml
+++ b/resources/skins/Default/720p/ShortCutMenu.xml
@@ -36,7 +36,7 @@
96970
font20_title
-
+
leftcenterblack
diff --git a/resources/skins/Default/media/side_menu/bg0.png b/resources/skins/Default/media/side_menu/bg0.png
index 04a0d87a..8a40dd7f 100644
Binary files a/resources/skins/Default/media/side_menu/bg0.png and b/resources/skins/Default/media/side_menu/bg0.png differ
diff --git a/resources/skins/Default/media/side_menu/logo.png b/resources/skins/Default/media/side_menu/logo.png
index d17f20f8..7e77062a 100644
Binary files a/resources/skins/Default/media/side_menu/logo.png and b/resources/skins/Default/media/side_menu/logo.png differ
diff --git a/resources/skins/Default/media/side_menu/selected0.png b/resources/skins/Default/media/side_menu/selected0.png
index d181b63a..dbc32379 100644
Binary files a/resources/skins/Default/media/side_menu/selected0.png and b/resources/skins/Default/media/side_menu/selected0.png differ