Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
newasd
try: from tkinter import ttk ,Tk, TOP,Canvas from win32com.client import Dispatch from collections import defaultdict from openpyxl import load_workbook from tkcalendar import DateEntry from PIL import ImageTk, Image from selenium import webdriver from threading import Thread from Tkconstants import NW from io import BytesIO import tkinter as tk import pytesseract import pythoncom import os as cmd import datetime import base64 import time import re except ImportError: from tkinter import ttk, Tk, TOP ,Canvas from win32com.client import Dispatch from collections import defaultdict from openpyxl import load_workbook from tkinter.constants import NW from tkcalendar import DateEntry from PIL import ImageTk, Image from selenium import webdriver from threading import Thread from io import BytesIO import tkinter as tk import pytesseract import pythoncom import os as cmd import datetime import base64 import time import re class RotatingIcon(Canvas): _bind_tag_ID = 0 def __init__(self, master, filename=None, data=None, start_animation=True, time=40, **kwargs): if data is not None: self._image = Image.open(BytesIO(base64.b64decode(data))) elif filename is not None: self._image = Image.open(filename) elif hasattr(self, "data"): self._image = Image.open(BytesIO(base64.b64decode(self.data))) else: raise Exception("No image data or file") if self._image.format == "XBM": self._imagetk_class = ImageTk.BitmapImage else: self._imagetk_class = ImageTk.PhotoImage width, height = self._image.size self._time = time kwargs.setdefault("width", width) kwargs.setdefault("height", height) kwargs.setdefault("highlightthickness", 0) if "borderwidth" not in kwargs and "bd" not in kwargs: kwargs["borderwidth"] = 0 Canvas.__init__(self, master, **kwargs) self._bind_tag = "icon_rotating%s"%RotatingIcon._bind_tag_ID RotatingIcon._bind_tag_ID += 1 self.bind_class(self._bind_tag, "<Unmap>", self._on_unmap) self.bind_class(self._bind_tag, "<Map>", self._on_map) self._running = False self._is_mapped = False if start_animation: self.start_animation() def _on_unmap(self, event): self._is_mapped = False if self._ID_of_delayed_callback is not None: self.after_cancel(self._ID_of_delayed_callback) def _on_map(self, event): self._is_mapped = True self._animate() def start_animation(self): if self._running: return new_tags = (self._bind_tag,) + self.bindtags() self.bindtags(new_tags) generator = self._animate_generator() if hasattr(generator, "next"): self._animate = generator.next else: self._animate = generator.__next__ if self._is_mapped: self._animate() def stop_animation(self): if not self._running: return self._running = False if self._ID_of_delayed_callback is not None: self.after_cancel(self._ID_of_delayed_callback) self._ID_of_delayed_callback = None new_tags = self.bindtags()[1:] self.bindtags(new_tags) def _animate_generator(self): angle = 0 while True: tkimage = self._imagetk_class(self._image.rotate(angle)) canvas_obj = self.create_image(0, 0, image=tkimage, anchor=NW) self._ID_of_delayed_callback = self.after(self._time, self._update_animation) yield self.delete(canvas_obj) angle = (angle + 10) %360 def _update_animation(self): self._ID_of_delayed_callback = self.after_idle(self._animate) class MultiSize_RotatingIcon(RotatingIcon): def __init__(self, master, size, start_animation=True, time=40, **kwargs): data = self.image_per_size[size] RotatingIcon.__init__(self, master, data=data, start_animation = start_animation, time=time, **kwargs) class Spinner2(MultiSize_RotatingIcon): image_per_size = { 16: 'I2RlZmluZSBpbWFnZV93aWR0aCAxNgojZGVmaW5lIGltYWdlX2hlaWdodCAxNgpzdGF0aWMgY2hhciBpbWFnZV9iaXRzW10gPSB7CjB4NjAsMHgwNiwweDc4LDB4MWUsMHg3YywweDNlLDB4M2UsMHg3YywweDBlLDB4NzAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDA3LAoweGUwLDB4MDcsMHhlMCwweDA3LDB4ZTAsMHgwZiwweGYwLDB4MGUsMHg3MCwweDA2LDB4NjAsMHhlNCwweDI3LDB4ZjAsMHgwZiwKMHhlMCwweDA3Cn07', 22: 'I2RlZmluZSBpbWFnZV93aWR0aCAyMgojZGVmaW5lIGltYWdlX2hlaWdodCAyMgpzdGF0aWMgY2hhciBpbWFnZV9iaXRzW10gPSB7CjB4MDAsMHgzMywweDAwLDB4YzAsMHhmMywweDAwLDB4ZjAsMHhmMywweDAzLDB4ZjgsMHhmMywweDA3LDB4ZmMsMHhlMSwweDBmLAoweDdjLDB4ODAsMHgwZiwweDNlLDB4MDAsMHgxZiwweDEwLDB4MDAsMHgwMiwweDAwLDB4MDAsMHgwMCwweDAzLDB4MDAsMHgzMCwKMHgwZiwweDAwLDB4M2MsMHgwZiwweDAwLDB4M2MsMHgwZiwweDAwLDB4M2MsMHgwZiwweDAwLDB4M2MsMHgxZSwweDAwLDB4MWUsCjB4M2UsMHgwMCwweDFmLDB4MWUsMHgwMCwweDFlLDB4MWMsMHgwMCwweDBlLDB4ODgsMHg3ZiwweDA0LDB4YzAsMHhmZiwweDAwLAoweGMwLDB4ZmYsMHgwMCwweDAwLDB4M2YsMHgwMAp9Ow==', 24: 'I2RlZmluZSBpbWFnZV93aWR0aCAyNAojZGVmaW5lIGltYWdlX2hlaWdodCAyNApzdGF0aWMgY2hhciBpbWFnZV9iaXRzW10gPSB7CjB4ODAsMHhlNywweDAxLDB4ZTAsMHhlNywweDA3LDB4ZjAsMHhlNywweDBmLDB4ZjgsMHhlNywweDFmLDB4ZmMsMHhjMSwweDNmLAoweGZjLDB4MDAsMHgzZiwweDdjLDB4MDAsMHgzZSwweDIwLDB4MDAsMHgwNCwweDAwLDB4MDAsMHgwMCwweDAxLDB4MDAsMHg4MCwKMHgwZiwweDAwLDB4ZjgsMHgxZiwweDAwLDB4ZjgsMHgxZiwweDAwLDB4ZjgsMHgxZiwweDAwLDB4ZjgsMHgzZiwweDAwLDB4ZmMsCjB4M2UsMHgwMCwweDdjLDB4N2UsMHgwMCwweDdlLDB4M2MsMHgwMCwweDNjLDB4MTgsMHg0MiwweDE4LDB4MTgsMHhmZiwweDA4LAoweDgwLDB4ZmYsMHgwMSwweDgwLDB4ZmYsMHgwMSwweDAwLDB4N2UsMHgwMCwweDAwLDB4MDAsMHgwMAp9Ow==', 32: 'I2RlZmluZSBpbWFnZV93aWR0aCAzMgojZGVmaW5lIGltYWdlX2hlaWdodCAzMgpzdGF0aWMgY2hhciBpbWFnZV9iaXRzW10gPSB7CjB4MDAsMHgzMCwweDBjLDB4MDAsMHgwMCwweDNlLDB4N2MsMHgwMCwweDgwLDB4M2YsMHhmYywweDAxLDB4YzAsMHgzZiwweGZjLAoweDAzLDB4ZTAsMHgzZiwweGZjLDB4MDcsMHhmMCwweDNmLDB4ZmMsMHgwZiwweGY4LDB4MWYsMHhmOCwweDFmLDB4ZmMsMHgwNywKMHhlMCwweDNmLDB4ZmMsMHgwMSwweDgwLDB4M2YsMHhmYywweDAwLDB4MDAsMHgzZiwweGMwLDB4MDAsMHgwMCwweDAzLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMywweDAwLDB4MDAsMHhjMCwweDFmLDB4MDAsMHgwMCwweGY4LAoweDNmLDB4MDAsMHgwMCwweGZjLDB4M2YsMHgwMCwweDAwLDB4ZmMsMHgzZiwweDAwLDB4MDAsMHhmYywweDNmLDB4MDAsMHgwMCwKMHhmYywweDdmLDB4MDAsMHgwMCwweGZlLDB4N2UsMHgwMCwweDAwLDB4N2UsMHhmZSwweDAwLDB4MDAsMHg3ZiwweGZlLDB4MDAsCjB4MDAsMHg3ZiwweGZjLDB4MDAsMHgwMCwweDNmLDB4N2MsMHgwMCwweDAwLDB4M2UsMHg3OCwweDEwLDB4MDgsMHgxZSwweDMwLAoweGY4LDB4MWYsMHgwYywweDAwLDB4ZmMsMHgzZiwweDAwLDB4MDAsMHhmZSwweDdmLDB4MDAsMHgwMCwweGZlLDB4N2YsMHgwMCwKMHgwMCwweGZlLDB4N2YsMHgwMCwweDAwLDB4ZjAsMHgwZiwweDAwCn07', 48: 'I2RlZmluZSBpbWFnZV93aWR0aCA0OAojZGVmaW5lIGltYWdlX2hlaWdodCA0OApzdGF0aWMgY2hhciBpbWFnZV9iaXRzW10gPSB7CjB4MDAsMHgwMCwweDE4LDB4MTgsMHgwMCwweDAwLDB4MDAsMHgwMCwweDFmLDB4ZjgsMHgwMCwweDAwLDB4MDAsMHhlMCwweDFmLAoweGY4LDB4MDcsMHgwMCwweDAwLDB4ZjAsMHgxZiwweGY4LDB4MGYsMHgwMCwweDAwLDB4ZmMsMHgxZiwweGY4LDB4M2YsMHgwMCwKMHgwMCwweGZlLDB4MWYsMHhmOCwweDdmLDB4MDAsMHgwMCwweGZmLDB4MWYsMHhmOCwweGZmLDB4MDAsMHg4MCwweGZmLDB4MWYsCjB4ZjgsMHhmZiwweDAxLDB4YzAsMHhmZiwweDFmLDB4ZjgsMHhmZiwweDAzLDB4ZTAsMHhmZiwweDBmLDB4ZjAsMHhmZiwweDA3LAoweGYwLDB4ZmYsMHgwMSwweDgwLDB4ZmYsMHgwZiwweGY4LDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHgwZiwweGY4LDB4M2YsMHgwMCwKMHgwMCwweGZjLDB4MWYsMHhmYywweDFmLDB4MDAsMHgwMCwweGY4LDB4M2YsMHhlMCwweDBmLDB4MDAsMHgwMCwweGYwLDB4MGYsCjB4MDAsMHgwZiwweDAwLDB4MDAsMHhmMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZTAsMHg3ZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmUsMHhmZiwweDAxLDB4MDAsCjB4MDAsMHg4MCwweGZmLDB4ZmYsMHgwMSwweDAwLDB4MDAsMHg4MCwweGZmLDB4ZmYsMHgwMSwweDAwLDB4MDAsMHg4MCwweGZmLAoweGZmLDB4MDEsMHgwMCwweDAwLDB4ODAsMHhmZiwweGZmLDB4MDEsMHgwMCwweDAwLDB4ODAsMHhmZiwweGZmLDB4MDEsMHgwMCwKMHgwMCwweDgwLDB4ZmYsMHhmZiwweDAzLDB4MDAsMHgwMCwweGMwLDB4ZmYsMHhmZSwweDAzLDB4MDAsMHgwMCwweGMwLDB4N2YsCjB4ZmUsMHgwMywweDAwLDB4MDAsMHhjMCwweDdmLDB4ZmUsMHgwNywweDAwLDB4MDAsMHhlMCwweDdmLDB4ZmMsMHgwZiwweDAwLAoweDAwLDB4ZjAsMHgzZiwweGZjLDB4MGYsMHgwMCwweDAwLDB4ZjAsMHgzZiwweGZjLDB4MWYsMHgwMCwweDAwLDB4ZjgsMHgzZiwKMHhmOCwweDBmLDB4MDAsMHgwMCwweGYwLDB4MWYsMHhmOCwweDA3LDB4MDAsMHgwMCwweGUwLDB4MGYsMHhmMCwweDAzLDB4MDAsCjB4MDAsMHhjMCwweDBmLDB4ZTAsMHgwMywweDBlLDB4NzAsMHhjMCwweDA3LDB4YzAsMHgwMSwweGZmLDB4ZmYsMHg4MCwweDAzLAoweDgwLDB4MDAsMHhmZiwweGZmLDB4MDAsMHgwMSwweDAwLDB4ODAsMHhmZiwweGZmLDB4MDEsMHgwMCwweDAwLDB4YzAsMHhmZiwKMHhmZiwweDAzLDB4MDAsMHgwMCwweGMwLDB4ZmYsMHhmZiwweDA3LDB4MDAsMHgwMCwweGUwLDB4ZmYsMHhmZiwweDA3LDB4MDAsCjB4MDAsMHhlMCwweGZmLDB4ZmYsMHgwNywweDAwLDB4MDAsMHgwMCwweGZmLDB4ZmYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGY4LAoweDFmLDB4MDAsMHgwMAp9Ow==', 64: 'I2RlZmluZSBpbWFnZV93aWR0aCA2NAojZGVmaW5lIGltYWdlX2hlaWdodCA2NApzdGF0aWMgY2hhciBpbWFnZV9iaXRzW10gPSB7CjB4MDAsMHgwMCwweDAwLDB4MGMsMHgzMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhjMCwweDBmLDB4ZjAsMHgwMywweDAwLAoweDAwLDB4MDAsMHgwMCwweGYwLDB4MGYsMHhmMCwweDBmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZSwweDBmLDB4ZjAsMHg3ZiwKMHgwMCwweDAwLDB4MDAsMHgwMCwweGZmLDB4MGYsMHhmMCwweGZmLDB4MDAsMHgwMCwweDAwLDB4YzAsMHhmZiwweDBmLDB4ZjAsCjB4ZmYsMHgwMywweDAwLDB4MDAsMHhlMCwweGZmLDB4MGYsMHhmMCwweGZmLDB4MDcsMHgwMCwweDAwLDB4ZjgsMHhmZiwweDBmLAoweGYwLDB4ZmYsMHgxZiwweDAwLDB4MDAsMHhmYywweGZmLDB4MGYsMHhmMCwweGZmLDB4M2YsMHgwMCwweDAwLDB4ZmUsMHhmZiwKMHgwZiwweGYwLDB4ZmYsMHg3ZiwweDAwLDB4MDAsMHhmZiwweGZmLDB4MGYsMHhmMCwweGZmLDB4ZmYsMHgwMCwweDgwLDB4ZmYsCjB4ZmYsMHgwZiwweGYwLDB4ZmYsMHhmZiwweDAxLDB4ODAsMHhmZiwweGZmLDB4MDcsMHhlMCwweGZmLDB4ZmYsMHgwMSwweGMwLAoweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweDAzLDB4ZTAsMHhmZiwweDNmLDB4MDAsMHgwMCwweGZjLDB4ZmYsMHgwNywKMHhlMCwweGZmLDB4MWYsMHgwMCwweDAwLDB4ZjgsMHhmZiwweDA3LDB4ZjAsMHhmZiwweDA3LDB4MDAsMHgwMCwweGUwLDB4ZmYsCjB4MGYsMHhmOCwweGZmLDB4MDMsMHgwMCwweDAwLDB4YzAsMHhmZiwweDFmLDB4ZjgsMHhmZiwweDAxLDB4MDAsMHgwMCwweDgwLAoweGZmLDB4MWYsMHg4MCwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZiwweDAzLDB4MDAsMHhmYywweDAwLDB4MDAsMHgwMCwKMHgwMCwweDNmLDB4MDAsMHgwMCwweDYwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwNiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDMsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4YzAsMHgxZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGY4LDB4ZmYsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmYsMHhmZiwweDA3LDB4MDAsMHgwMCwweDAwLDB4MDAsMHhlMCwweGZmLAoweGZmLDB4MGYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGYwLDB4ZmYsMHhmZiwweDBmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmMCwKMHhmZiwweGZmLDB4MGYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGYwLDB4ZmYsMHhmZiwweDBmLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4ZjAsMHhmZiwweGZmLDB4MGYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGYwLDB4ZmYsMHhmZiwweDBmLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4ZjAsMHhmZiwweGZmLDB4MGYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGY4LDB4ZmYsMHhmZiwweDFmLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4ZjgsMHg3ZiwweGZlLDB4MWYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGY4LDB4N2YsMHhmZSwweDFmLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4ZjgsMHg3ZiwweGZlLDB4M2YsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZjLDB4N2YsMHhmZSwweDNmLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmMsMHg3ZiwweGZjLDB4N2YsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZlLDB4M2YsMHhmYywKMHhmZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmYsMHgzZiwweGY4LDB4ZmYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZmLDB4MWYsCjB4ZjgsMHhmZiwweDAxLDB4MDAsMHgwMCwweDgwLDB4ZmYsMHgxZiwweGY4LDB4ZmYsMHgwMSwweDAwLDB4MDAsMHgwMCwweGZmLAoweDFmLDB4ZjAsMHhmZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmYsMHgwZiwweGUwLDB4N2YsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHhmZSwweDA3LDB4ZTAsMHgzZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmMsMHgwNywweGMwLDB4M2YsMHg4MCwweDAwLDB4MDAsCjB4MDEsMHhmYywweDAzLDB4ODAsMHgxZiwweDgwLDB4MGYsMHhmMCwweDAxLDB4ZjgsMHgwMSwweDgwLDB4MGYsMHhjMCwweGZmLAoweGZmLDB4MDMsMHhmMCwweDAxLDB4MDAsMHgwNywweGUwLDB4ZmYsMHhmZiwweDA3LDB4ZTAsMHgwMCwweDAwLDB4MDYsMHhlMCwKMHhmZiwweGZmLDB4MDcsMHg2MCwweDAwLDB4MDAsMHgwMCwweGYwLDB4ZmYsMHhmZiwweDBmLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4ZjgsMHhmZiwweGZmLDB4MWYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZjLDB4ZmYsMHhmZiwweDNmLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4ZmMsMHhmZiwweGZmLDB4M2YsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZlLDB4ZmYsMHhmZiwweDdmLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4ZmUsMHhmZiwweGZmLDB4N2YsMHgwMCwweDAwLDB4MDAsMHgwMCwweGYwLDB4ZmYsMHhmZiwweDFmLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4YzAsMHhmZiwweGZmLDB4MDMsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmMsMHgzZiwweDAwLAoweDAwLDB4MDAKfTs=', 128: 'I2RlZmluZSBpbWFnZV93aWR0aCAxMjgKI2RlZmluZSBpbWFnZV9oZWlnaHQgMTI4CnN0YXRpYyBjaGFyIGltYWdlX2JpdHNbXSA9IHsKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmYywweDAwLDB4MDAsMHgzZiwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4YzAsMHhmZiwweDAwLDB4MDAsMHhmZiwweDAzLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZjgsMHhmZiwweDAwLDB4MDAsMHhmZiwweDFmLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmYsMHhmZiwweDAwLDB4MDAsMHhmZiwweGZmLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGMwLDB4ZmYsMHhmZiwweDAwLDB4MDAsMHhmZiwKMHhmZiwweDAzLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGYwLDB4ZmYsMHhmZiwweDAwLDB4MDAsCjB4ZmYsMHhmZiwweDBmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZjLDB4ZmYsMHhmZiwweDAwLAoweDAwLDB4ZmYsMHhmZiwweDNmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZmLDB4ZmYsMHhmZiwKMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhjMCwweGZmLDB4ZmYsCjB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4MDMsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhlMCwweGZmLAoweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4MDcsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmOCwKMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4MWYsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4ZmMsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4M2YsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4ZmUsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4N2YsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDgwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMSwweDAwLDB4MDAsCjB4MDAsMHgwMCwweGMwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMywweDAwLAoweDAwLDB4MDAsMHgwMCwweGUwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwNywKMHgwMCwweDAwLDB4MDAsMHgwMCwweGYwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsCjB4MGYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGY4LDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLAoweGZmLDB4MWYsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZjLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwKMHhmZiwweGZmLDB4M2YsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZlLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsCjB4ZmYsMHhmZiwweGZmLDB4N2YsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLAoweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4MDAsMHg4MCwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwKMHgwMCwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMSwweDAwLDB4MDAsMHhjMCwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsCjB4MDAsMHgwMCwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMywweDAwLDB4MDAsMHhjMCwweGZmLDB4ZmYsMHhmZiwweGZmLAoweGZmLDB4MDAsMHgwMCwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMywweDAwLDB4MDAsMHhlMCwweGZmLDB4ZmYsMHhmZiwKMHhmZiwweDFmLDB4MDAsMHgwMCwweGY4LDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwNywweDAwLDB4MDAsMHhmMCwweGZmLDB4ZmYsCjB4ZmYsMHhmZiwweDAzLDB4MDAsMHgwMCwweGMwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwZiwweDAwLDB4MDAsMHhmOCwweGZmLAoweGZmLDB4ZmYsMHhmZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmUsMHhmZiwweGZmLDB4ZmYsMHgxZiwweDAwLDB4MDAsMHhmOCwKMHhmZiwweGZmLDB4ZmYsMHgxZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZjgsMHhmZiwweGZmLDB4ZmYsMHgxZiwweDAwLDB4MDAsCjB4ZmMsMHhmZiwweGZmLDB4ZmYsMHgwZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZjAsMHhmZiwweGZmLDB4ZmYsMHgzZiwweDAwLAoweDAwLDB4ZmUsMHhmZiwweGZmLDB4ZmYsMHgwMywweDAwLDB4MDAsMHgwMCwweDAwLDB4YzAsMHhmZiwweGZmLDB4ZmYsMHg3ZiwKMHgwMCwweDAwLDB4ZmUsMHhmZiwweGZmLDB4ZmYsMHgwMSwweDAwLDB4MDAsMHgwMCwweDAwLDB4ODAsMHhmZiwweGZmLDB4ZmYsCjB4N2YsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4N2YsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZSwweGZmLAoweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4M2YsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmYywKMHhmZiwweGZmLDB4ZmYsMHgwMCwweDgwLDB4ZmYsMHhmZiwweGZmLDB4MWYsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4ZjgsMHhmZiwweGZmLDB4ZmYsMHgwMSwweDgwLDB4ZmYsMHhmZiwweGZmLDB4MGYsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4ZjAsMHhmZiwweGZmLDB4ZmYsMHgwMSwweGMwLDB4ZmYsMHhmZiwweGZmLDB4MDcsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4ZTAsMHhmZiwweGZmLDB4ZmYsMHgwMywweDAwLDB4ZmYsMHhmZiwweGZmLDB4MDMsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4YzAsMHhmZiwweGZmLDB4ZmYsMHgwMCwweDAwLDB4ZjAsMHhmZiwweGZmLDB4MDEsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4ODAsMHhmZiwweGZmLDB4MWYsMHgwMCwweDAwLDB4ODAsMHhmZiwweGZmLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZiwweGZmLDB4MDEsMHgwMCwweDAwLDB4MDAsMHhmYywweGZmLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZiwweDNmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhlMCwweDdmLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZSwweDA3LDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgzZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmYywweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgzOCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgxYywweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwNiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4NjAsMHgzZSwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4N2MsMHhmZSwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDgwLDB4N2YsMHhmZSwweDBmLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGYwLDB4N2YsMHhmZiwweDdmLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZlLDB4ZmYsMHhmZiwweGZmLDB4MDMsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhjMCwweGZmLDB4ZmYsMHhmZiwweGZmLAoweDFmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmOCwweGZmLDB4ZmYsMHhmZiwKMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZiwweGZmLDB4ZmYsCjB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZiwweGZmLAoweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZiwKMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4ZmYsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDEsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDgwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MDEsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDgwLDB4ZmYsMHhmZiwweGZmLDB4ZmUsMHhmZiwweGZmLAoweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDgwLDB4ZmYsMHhmZiwweDdmLDB4ZmUsMHhmZiwKMHhmZiwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDgwLDB4ZmYsMHhmZiwweDdmLDB4ZmUsCjB4ZmYsMHhmZiwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDgwLDB4ZmYsMHhmZiwweDdmLAoweGZlLDB4ZmYsMHhmZiwweDAzLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGMwLDB4ZmYsMHhmZiwKMHg3ZiwweGZlLDB4ZmYsMHhmZiwweDAzLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGMwLDB4ZmYsCjB4ZmYsMHg3ZiwweGZlLDB4ZmYsMHhmZiwweDAzLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGMwLAoweGZmLDB4ZmYsMHg3ZiwweGZjLDB4ZmYsMHhmZiwweDA3LDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHhlMCwweGZmLDB4ZmYsMHgzZiwweGZjLDB4ZmYsMHhmZiwweDA3LDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHhlMCwweGZmLDB4ZmYsMHgzZiwweGZjLDB4ZmYsMHhmZiwweDBmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHhmMCwweGZmLDB4ZmYsMHgzZiwweGZjLDB4ZmYsMHhmZiwweDBmLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHhmMCwweGZmLDB4ZmYsMHgzZiwweGY4LDB4ZmYsMHhmZiwweDFmLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHhmOCwweGZmLDB4ZmYsMHgxZiwweGY4LDB4ZmYsMHhmZiwweDFmLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmOCwweGZmLDB4ZmYsMHgxZiwweGY4LDB4ZmYsMHhmZiwweDNmLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmYywweGZmLDB4ZmYsMHgxZiwweGYwLDB4ZmYsMHhmZiwweDNmLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmYywweGZmLDB4ZmYsMHgwZiwweGYwLDB4ZmYsMHhmZiwweDdmLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZSwweGZmLDB4ZmYsMHgwZiwweGYwLDB4ZmYsMHhmZiwKMHhmZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZiwweGZmLDB4ZmYsMHgwNywweGUwLDB4ZmYsCjB4ZmYsMHhmZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZiwweGZmLDB4ZmYsMHgwNywweGUwLAoweGZmLDB4ZmYsMHhmZiwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ODAsMHhmZiwweGZmLDB4ZmYsMHgwNywKMHhjMCwweGZmLDB4ZmYsMHhmZiwweDAzLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4YzAsMHhmZiwweGZmLDB4ZmYsCjB4MDMsMHhjMCwweGZmLDB4ZmYsMHhmZiwweDAzLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4YzAsMHhmZiwweGZmLAoweGZmLDB4MDMsMHg4MCwweGZmLDB4ZmYsMHhmZiwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ODAsMHhmZiwKMHhmZiwweGZmLDB4MDEsMHg4MCwweGZmLDB4ZmYsMHhmZiwweDAxLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ODAsCjB4ZmYsMHhmZiwweGZmLDB4MDEsMHgwMCwweGZmLDB4ZmYsMHhmZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4ZmYsMHhmZiwweGZmLDB4MDAsMHgwMCwweGZmLDB4ZmYsMHg3ZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4ZmUsMHhmZiwweGZmLDB4MDAsMHgwMCwweGZlLDB4ZmYsMHg3ZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4ZmMsMHhmZiwweDdmLDB4MDAsMHgwMCwweGZlLDB4ZmYsMHgzZiwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmMsMHhmZiwweDdmLDB4MDAsMHgwMCwweGZjLDB4ZmYsMHgxZiwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZjgsMHhmZiwweDNmLDB4MDAsMHgwMCwweGY4LDB4ZmYsMHgwZiwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZjAsMHhmZiwweDFmLDB4MDAsMHgwMCwweGY4LDB4ZmYsMHgwZiwweDAwLAoweDgwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMSwweDAwLDB4ZjAsMHhmZiwweDFmLDB4MDAsMHgwMCwweGYwLDB4ZmYsMHgwNywKMHgwMCwweDgwLDB4MDMsMHgwMCwweDAwLDB4YzAsMHgwMywweDAwLDB4ZTAsMHhmZiwweDBmLDB4MDAsMHgwMCwweGUwLDB4ZmYsCjB4MDMsMHgwMCwweGMwLDB4MWYsMHgwMCwweDAwLDB4ZjgsMHgwMywweDAwLDB4YzAsMHhmZiwweDA3LDB4MDAsMHgwMCwweGMwLAoweGZmLDB4MDEsMHgwMCwweGUwLDB4ZmYsMHgwMywweGMwLDB4ZmYsMHgwNywweDAwLDB4ODAsMHhmZiwweDAzLDB4MDAsMHgwMCwKMHhjMCwweGZmLDB4MDEsMHgwMCwweGYwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwZiwweDAwLDB4ODAsMHhmZiwweDAzLDB4MDAsCjB4MDAsMHg4MCwweGZmLDB4MDAsMHgwMCwweGYwLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwZiwweDAwLDB4MDAsMHhmZiwweDAxLAoweDAwLDB4MDAsMHgwMCwweDdmLDB4MDAsMHgwMCwweGY4LDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgxZiwweDAwLDB4MDAsMHhmZSwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDdlLDB4MDAsMHgwMCwweGZjLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgzZiwweDAwLDB4MDAsCjB4N2MsMHgwMCwweDAwLDB4MDAsMHgwMCwweDNjLDB4MDAsMHgwMCwweGZjLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHg3ZiwweDAwLAoweDAwLDB4M2MsMHgwMCwweDAwLDB4MDAsMHgwMCwweDE4LDB4MDAsMHgwMCwweGZlLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHg3ZiwKMHgwMCwweDAwLDB4MTgsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsCjB4ZmYsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHg4MCwweGZmLDB4ZmYsMHhmZiwweGZmLAoweGZmLDB4ZmYsMHgwMSwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHg4MCwweGZmLDB4ZmYsMHhmZiwKMHhmZiwweGZmLDB4ZmYsMHgwMSwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhjMCwweGZmLDB4ZmYsCjB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMywweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhlMCwweGZmLAoweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwNywweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmMCwKMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4ZjAsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4ZjgsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgxZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4ZmMsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgzZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4ZmMsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHg3ZiwweDAwLDB4MDAsMHgwMCwweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmMsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgzZiwweDAwLDB4MDAsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZjAsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwZiwweDAwLDB4MDAsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4YzAsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMywweDAwLAoweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmZiwweGZmLDB4ZmYsMHhmZiwweGZmLDB4ZmYsMHgwMCwKMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhmOCwweGZmLDB4ZmYsMHhmZiwweGZmLDB4MWYsCjB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHhjMCwweGZmLDB4ZmYsMHhmZiwweGZmLAoweDAzLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweGZjLDB4ZmYsMHhmZiwKMHgzZiwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4ZmYsCjB4ZmYsMHgwMCwweDAwLDB4MDAsMHgwMCwweDAwLDB4MDAsMHgwMAp9Ow==' } class Mainpage(tk.Tk): def __init__(self, *args, **kwargs): tk.Tk.__init__(self, *args, **kwargs) self.withdraw() self.after(0,self.deiconify) self.title("VRM") self.iconbitmap("hourglass") self.geometry("500x250") self.resizable(0, 0) s = ttk.Style(self) s.theme_use('clam') container = tk.Frame(self) container.pack_propagate(0) container.pack(side="top", fill="both", expand = True) container.grid_rowconfigure(0, weight=1) container.grid_columnconfigure(0, weight=1) self.frames = {} i = 0 for F in (StartPage, PageOne): frame = F(container, self) self.frames[i] = frame frame.configure(background='#666') frame.grid(row=0, column=0, sticky="nsew") i += 1 self.show_frame(0) def show_frame(self, cont): frame = self.frames[cont] frame.tkraise() def quit(self): self.destroy() class StartPage(tk.Frame): theFlag = 0 def __init__(self, parent, controller): tk.Frame.__init__(self,parent) password = tk.StringVar() self.Label1 = tk.Label(self, text="Hello!", bg='#666') self.Label1.config(font=("Courier", 44)) self.Label1.pack(pady=10) self.cal = DateEntry(self, width=11, background='black',foreground='cyan', borderwidth=1) self.cal.pack(pady=10) self.button = ttk.Button(self, text="Continue...", command=lambda:self.getDdate(controller)) self.button.pack(pady=10) self.labinfo = tk.Label(self, text="* If you wanna proceed for another date, change & Continue...", bg='#666') self.labinfo.pack(side='bottom',pady=5) self.cal.set_date(self.getNextMon()) def getNextMon(self): dt = datetime.date.today() if dt.weekday() is 0: dt += datetime.timedelta(1) while dt.weekday() != 0: dt += datetime.timedelta(1) def getDatePicked(self): return self.cal.get_date().strftime('%d/%m/%Y') def getDdate(self,controller): StartPage.theFlag = 1 controller.show_frame(1) class PageOne(tk.Frame): def __init__(self, parent, controller): tk.Frame.__init__(self, parent) self.proload = Spinner2(self, size=128) self.proload.config(bg='#666') self.proload.place(relx=0.38, rely=0.1, x=0, y=0) self.label0 = tk.Label(self, text='0%',font=('Courier',16)) self.label0.config(bg='#666') self.label0.place(relx=0.468, rely=0.3, x=0, y=0) self.label1 = tk.Label(self, text='Automation is in progress...',font=('Courier',20), bg='#666') self.label1.place(relx=0.05, rely=0.8, x=0, y=0) def progress(self,percent): self.label0.config(text = str(percent)+'%') def output(self,message): self.label1.config(text = message) class testing: wb = '';path = {};usrname = cmd.getlogin();pcount = 0 pytesseract.pytesseract.tesseract_cmd = 'C:\\Users\\'+usrname+'\\AppData\\Local\\Tesseract-OCR\\tesseract.exe' def __init__(self,mp): self.mp = mp self.path['chrome0'] = r'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe' self.path['chrome1'] = r'C:\Program Files\Google\Chrome\Application\chrome.exe' self.path['firefox0'] = r'C:\Program Files (x86)\Mozilla Firefox\firefox.exe' self.path['firefox1'] = r'C:\Program Files\Mozilla Firefox\firefox.exe' self.path['ie0'] = r'C:\Program Files (x86)\Internet Explorer\iexplore.exe' self.path['ie1'] = r'C:\Program Files\Internet Explorer\iexplore.exe' for key,value in self.path.items(): if key == 'chrome0': if self.get_version_via_com(value) != 'F': self.runSwebDriver('chrome') break else: continue elif key == 'chrome1': if self.get_version_via_com(value) != 'F': self.runSwebDriver('chrome') break else:continue elif key == 'ie0': if self.get_version_via_com(value) != 'F': self.runSwebDriver('ie') break else:continue elif key == 'ie1': if self.get_version_via_com(value) != 'F': self.runSwebDriver('ie') break else:continue if key == 'firefox0': if self.get_version_via_com(value) != 'F': self.runSwebDriver('firefox') break else:continue elif key == 'firefox1': if self.get_version_via_com(value) != 'F': self.runSwebDriver('firefox') break else:continue else: continue def get_version_via_com(self,filename): pythoncom.CoInitialize() try: parser = Dispatch('Scripting.FileSystemObject') version = parser.GetFileVersion(filename) return version except: return 'F' def runSwebDriver(self,type): if type == 'chrome': options = webdriver.ChromeOptions() # options.add_argument('-headless') # options.add_argument('--disable-gpu') self.doFunctionality(webdriver.Chrome('C:\\Users\\'+self.usrname+'\\Desktop\\AmtDemo\\Drivers\\chromedriver',options=options)) elif type == 'firefox': options = webdriver.FirefoxOptions() # options.add_argument('-headless') # options.add_argument('--disable-gpu') self.doFunctionality(webdriver.Firefox('C:\\Users\\'+self.usrname+'\\Desktop\\AmtDemo\\Drivers\\geckodriver',options=options)) elif type == 'ie': options = webdriver.IeOptions() # options.add_argument('-headless') # options.add_argument('--disable-gpu') self.doFunctionality(webdriver.Ie('C:\\Users\\'+self.usrname+'\\Desktop\\AmtDemo\\Drivers\\IEDriverServer',options=options)) def get_new_id(self,elemx, r_no): new_idx: str = 'C.' + str(int(str(elemx.get_attribute('id')).split('.')[1]) + r_no) return new_idx def find_parent_id(self,text, p_no): webelemx = testing.wb.find_element_by_xpath('//*[contains(text(),"' + text + '")]') for i in range(p_no): webelemx = webelemx.find_element_by_xpath('..') return webelemx.get_attribute('id') def filterTxt(self,text): if text: return re.sub('_+','_',re.sub('[^a-zA-Z0-9]','_',text.strip())) def ImportXlsx(self,dt): data = [] datax = defaultdict(dict) tcount = defaultdict(dict) datay = defaultdict(lambda:defaultdict(dict)) wb2 = load_workbook('c:\\users\\'+self.usrname+'\\desktop\\AmtDemo\\Input\\Expected Joiners Report.xlsx') sheet = wb2.active row = sheet.max_row col = sheet.max_column for j in range(1,sheet.max_column+1): cell = sheet.cell(row = 3 ,column = j).value data.append(self.filterTxt(cell)) for i in range(4,row+1): idx = str(sheet.cell(row = i ,column = 2).value).strip() for j in range(1,col+1): if sheet.cell(row = i , column = 3).value != None: datax[idx][str(data[j-1])] = sheet.cell(row = i ,column = j).value else: if j == 18:datax[idx][str(data[j-1])] = max([sheet.cell(row = i ,column = j).value, datax[idx]['Offer_Actual_Start_Date']]) for k,v in datax.items(): datay[v['Offer_Actual_Start_Date'].strftime('%d/%m/%Y')][self.filterTxt(v['Recruiter'])][v['Candidate_Identifier']] = v res00 = [datay[dt],len(datay[dt])] return res00 def doFunctionality(self,wb): try: tdata = self.ImportXlsx(str(self.mp.frames[0].getDatePicked())) data = tdata[0] tcount = tdata[1] if tcount is not 0: testing.wb = wb wb.get('https://co.in/') uname = wb.find_element_by_id('Username') uname.send_keys(''+webdriver.common.keys.Keys.TAB) upass = wb.find_element_by_id('Password') upass.send_keys(''+webdriver.common.keys.Keys.TAB) while True: captcha = wb.find_element_by_id('captcha') cval = captcha.get_attribute('src') b64img = cval.split('base64,')[-1].strip() imgO = BytesIO(base64.b64decode(b64img)) image = Image.open(imgO) image.putalpha(255) cptext = pytesseract.image_to_string(image) purl = wb.current_url wb.find_element_by_id('CaptchaCodeText').clear() cpfield = wb.find_element_by_id('CaptchaCodeText') cpfield.send_keys(cptext+webdriver.common.keys.Keys.ENTER) nurl = wb.current_url if purl != nurl:break for key,value in data.items(): if value: wb.get('https://co.in/VisitorRequest/Add') time.sleep(1) sel_rt = webdriver.support.select.Select(wb.find_element_by_id('DepartmentId')) sel_rt.select_by_index(1) time.sleep(1) sel_rt = webdriver.support.select.Select(wb.find_element_by_id('ComplexId')) sel_rt.select_by_index(1) time.sleep(3) sel_rt = webdriver.support.select.Select(wb.find_element_by_id('BuildingId')) sel_rt.select_by_index(1) time.sleep(1) mprn = wb.find_element_by_id('MeetingPerson') mprn.send_keys(key) mprn = wb.find_element_by_id('Date') mprn.send_keys(str(self.mp.frames[0].getNextMon())) sel_rt = webdriver.support.select.Select(wb.find_element_by_id('StartTime')) sel_rt.select_by_index(41) sel_rt = webdriver.support.select.Select(wb.find_element_by_id('EndTime')) sel_rt.select_by_index(73) mprn = wb.find_element_by_id('PurposeOfVisit') mprn.send_keys('INDUCTION') incr = 0 for key1,value1 in value.items(): name = value1['Name'].split(',') fname = wb.find_element_by_xpath("//span[@id = 'firstname"+str(incr)+"']//preceding-sibling::input") fname.send_keys(name[1]) lname = wb.find_element_by_xpath("//span[@id = 'lastnameerror"+str(incr)+"']//preceding-sibling::input") lname.send_keys(name[0]) mno = wb.find_element_by_xpath("//span[@id = 'mobileerror"+str(incr)+"']//preceding-sibling::input") if value1['Contact_No_1']: mno.send_keys(value1['Contact_No_1']) elif value1['Contact_No_2']: mno.send_keys(value1['Contact_No_2']) else: mno.send_keys('0000000000') email = wb.find_element_by_xpath("//span[@id = 'emailerror"+str(incr)+"']//preceding-sibling::input") email.send_keys(value1['Email']) vcomp = wb.find_element_by_xpath("//span[@id = 'visitorcompanyerror"+str(incr)+"']//preceding-sibling::input") vcomp.send_keys('Testing Company !') testing.pcount +=1 if (len(value)-1) is incr:break addv = wb.find_element_by_xpath('//a[@onclick="AddVisitor()" and @class="btn btn-success m--font-light btn-sm small-button"]') wb.execute_script("arguments[0].click();", addv) time.sleep(3) self.mp.frames[1].progress(int((testing.pcount/tcount)*100)) incr += 1 # wb.find_element_by_id('btnAdd').click() wb.quit() self.mp.frames[1].progress(100) self.mp.frames[1].output('Automation processed successfully !') time.sleep(5) self.mp.quit() else: raise Exception() except: wb.quit() self.mp.frames[1].progress('--') self.mp.frames[1].output('Encountered some error !') time.sleep(5) self.mp.quit() def ads(mp): while mp.frames[0].theFlag is not 1: time.sleep(1) if mp.frames[0].theFlag is 1 : break else : continue testing(mp) def mainFunc(): mp = Mainpage() t2 = Thread(target = ads,args=(mp,)) t2.start() mp.mainloop() t1 = Thread(target = mainFunc) t1.start()
run
|
edit
|
history
|
help
0
learn
PRIMES russian DANILIN
Faiha #4
Random SUm
Venture
Calculate Volume of Sphere
thermal_containers
Reverse number
Convert list into set
fibonacciseries